gpt4 book ai didi

java - 随机向下移动类层次结构

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:07:24 27 4
gpt4 key购买 nike

我目前正在开发一个“元素掉落”系统,其中元素(及其属性)是在杀死敌人时随机生成的。我当前的系统是类的层次结构,Item 是根父类(super class)。每个类都具有所有子类共有的特定属性。

理想情况下,在放下一个项目时,程序会随机选择该项目的一个属性并相应地向下移动层次结构树。例如流程如下:

| 随机选择的属性确定树中的路径:

项目 |元素类型 -> 可装备 |装备类型 -> 武器 |武器类型 -> 等

示例代码:

abstract class Item 
{
private Type itemType;
private String itemName;
private int itemLevel;
private Rarity itemRarity;
private boolean questItem;
private int itemPrice;

public Item(String name)
{
itemType = Type.randomize();
itemName = name;
itemLevel = randomizeLevel(pLvl, eLvl);
itemRarity = Rarity.randomize(bonus, pLvl, eLvl, iLvl);
questItem = false;
itemPrice = determinePrice();
}
}

Type 是一个枚举,决定层次结构中的下一个级别。有了这个系统,我不知道如何让程序确定下一个级别,然后继续执行。

我遇到的问题是,我已经意识到,为了让它起作用,我必须从层次结构的底部向上工作。有没有一种方法可以让我从上到下工作,这意味着我可以从一个基本的 Item 类开始,然后按程序向下工作(使用我创建的随机选择属性的方法)。

如果没有,是否有具体的方法来实现这个系统?

最佳答案

您可以从枚举类中获取所有枚举的列表 - 顺序是它们声明的顺序,因此如果您以层次结构顺序声明它们,您可以根据需要遍历列表。相关的 oracle 文档在这里:

https://docs.oracle.com/javase/tutorial/reflect/special/enumMembers.html

关于java - 随机向下移动类层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34405497/

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