首先为问题标题道歉,我不知道该怎么命名。
无论如何,我正在开发一款游戏,其中可以有许多玩家,每个玩家都可以拥有许多宠物。我已经开发了游戏的主要结构,例如玩家类、宠物类和一个主类.. 从那里我一直在研究 GUI,在那里我询问有多少玩家,以及每个玩家想要多少宠物.. 在哪里我陷入困境的是如何为每个玩家创建宠物。
我创建了一个非常基本的表单,要求玩家选择一种宠物类型,给它一个名字,然后创建宠物。
public void createPets( final Player player){
//various buttons,comboBox and labels go here
//layout managers
//add it all to a frame
JButton jbCreatePet = new JButton("Create Pet");
jbCreatePet.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String name = jtfName.toString();
if (cbSpecies.getSelectedIndex() == 0){
Alien alien = new Alien();
alien.setName(name);
player.getAllPets.add(alien);
}
else if(cbSpecies.getSelectedIndex() == 1){
create other pet2
}
else{
create other pet3
}
}
});
player is a Player object passed into the method using a for loop..
for (Player player: allPlayers){
createPets(player);
}
现在我知道使用 for 循环是不正确的,例如表单将简单地跳到最后一个玩家,其他玩家都不会创建宠物..
所以我有几个问题:
当我将创建的宠物分配到所有宠物的玩家列表中时,eclipse 告诉我必须最终创建它。我有点理解为什么,但我想知道的是,将玩家参数设为最终是否意味着我无法为其他游戏创建宠物,只有第一个玩家..
我如何向每个玩家展示我的表格,例如游戏中的 2 个玩家都有 2 只宠物,玩家 1 选择一个宠物并给它一个名字然后创建它,然后他会被告知他需要创建另一个宠物(表格再次显示)所以他创建了另一个宠物,然后它的玩家 2s 轮流选择并创建 2 个宠物......我想我想弄清楚如何在正确的时间将正确的玩家参数传递给 createPet 方法......
如果您希望我澄清其他任何事情,请告诉我...
非常感谢谁能帮我解决这个问题!!!!