我正试图在javascript中制作一个回合制游戏,但是我在迭代玩家的单位插槽时遇到了很多麻烦。
1)玩家可以有8个老虎机,所以我做了:
this.army = [
{
amount: 2000,
name: 'monster',
atk: 500,
def: 600,
spd: 10,
hp: 500,
},
{
amount: 1500,
name: 'vampyre',
atk: 700,
def: 300,
spd: 40,
hp: 650,
},
{
amount: 200,
name: 'ghost',
tier: 'frontline',
atk: 500,
def: 600,
spd: 25,
hp: 500,
}
];
2)敌人也有类似的东西。 3)我确实创建了一个战斗队列(基于单位spd):
battleFollowing = function(attacker, defender) {
var armyList = attacker.army.concat(defender.army);
var orderedList = armyList.sort( function(a, b) {
var a1 = a.spd, b1 = b.spd;
if (a1 === b1) return 0;
return a1 > b1 ? -1 : 1;
});
return orderedList;
}
但是这样,指挥官军队的命令与原来的安排不一样。如何定义原始槽索引以使用array.splice()函数删除死槽?
抱歉我的英文不好。