gpt4 book ai didi

java - 管理游戏中的数据

转载 作者:行者123 更新时间:2023-11-30 05:04:23 25 4
gpt4 key购买 nike

我正在研究口袋妖怪克隆,我想在其中包含口袋妖怪和攻击。我最初的想法是采用面向对象的方式并创建一些抽象类,并让 pokemon 扩展这些类(一个通用 pokemon,每个类型一个)。我的困境是,我认为拥有 151 个类(class)不是一个好主意,似乎太多了,难以管理。我需要每个神奇宝贝(如果你不熟悉神奇宝贝,请将它们视为敌人)拥有自己的图像、统计数据、名称和其他杂项。细节。有没有一种方法能够以更简洁的方式表示所有 151 个神奇宝贝,同时仍然坚持面向对象编程?我在表示攻击时也遇到了同样的问题(大约有 100 个),每个攻击都有一个图像/动画、不同的效果、不同的名称等。

最佳答案

听起来这更像是一个资源管理问题而不是面向对象的问题。我将创建一个通用的 pokemon 对象,然后使用外部资源(从 Java 开始,可能是 XML 或 JSON)来填充成员。您甚至可以使用某种形式的对象绑定(bind)(JAXB、GSON 等)来自动化该过程。一切都取决于您想要的复杂程度/自动化程度。我倾向于手动尝试,学习自动执行任务的方法,并改进原始任务。

super 简单的例子:

class Pokemon
{
private String name; // assume getters/setters
private List<Attack> attackList;
}

XML 文件:

<pokemon>
<name>Charizard</name>
<attacks>
<attack dmg="50">Some name for an attack</attack>
...
</attacks>
</pokemon>

伪代码:

Load XML file
For each pokemon entry in xml
Create a new Pokemon object, set the fields
Add to list of pokemon
Continue with Game stuff

关于java - 管理游戏中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5613890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com