我正在使用Perl的RPG库,并希望使每个部分尽可能互换。我目前正在创建Map子系统并将继续到Character子系统。我应该如何处理角色和地图之间的交互?在角色扮演库中将角色与地图分离
$character->move('left'); # Character encapsulates a Map
或者类似的东西
$runtime->moveCharacter('left'); # Runtime encapsulates both Map and Character
它似乎并不像一个地图应该是一个字的一部分,但它似乎尴尬并非如此。
另外,我应该如何区分地图的瓦片的图形元素和角色的外观与其基础数据?或者在这种情况下,数据的图形方面的一部分?
我知道我正在反思这一点,并希望使这个系统更灵活,而不是完全过度工程化。谢谢!
谢谢,这非常有帮助!所以对于Tile对象,我可以有Map :: Tile :: Graphical :: GTK,Map :: Tile :: Graphical :: Qt等抽象的Map :: Tile类,它们是具体的类和Map :: Tile: :文本是另一个具体的类?然后在地图中确保添加的每个图块类型都是相同的? (我真的需要刷新设计模式)。 –