当玩家想要在竞技场中互相争斗时,我正在努力制定武器武器限制。
我的组合有效但我的'所有武器'都不起作用。武器限制是你选择允许哪些武器&哪些不是。
代码:
public static final WeaponCombination[] WEAPON_COMBINATIONS;
static {
WEAPON_COMBINATIONS = new WeaponCombination[] {
new WeaponCombination("@cya@All", (Weapon[]) null),
new WeaponCombination("@red@Whip + Staff of Gods", new Weapon(300), new Weapon(302)),
new WeaponCombination("@red@Swords Only", new Weapon(306, 308, 310, 312)),
new WeaponCombination("@red@Axe's Only", new Weapon(360, 362, 364, 366)) };
}
我忘了我的武器类:
package rezzion.model.minigames.duel;
public class Weapon {
private int[] items;
public Weapon(int... items) {
this.items = items;
}
public int[] getItems() {
return items;
}
}
全部应该考虑游戏中所有id的每件武器(1-3905)。任何人都知道为什么(Weapons [])null不起作用? 我真的不想将所有3905 id输入到一个字符串中......
答案 0 :(得分:0)
(Weapon[]) null
意味着您发送的参数将为空。因此,WeaponCombination
类中的构造函数将是(String, null)
而不是(String, Weapon...)
。这意味着你实际上没有将任何武器传递到课堂上。一个可能的解决方法是检查WeaponCombination
课程中的null,如果你得到它,那么你应该包括所有的武器。或者你可以循环遍历for循环中的所有项id并以这种方式创建一个武器阵列