From 0cd7da8d0dbac1ff16db2cb23819c6061e2ec6de Mon Sep 17 00:00:00 2001 From: Deiz Date: Sat, 1 Sep 2012 10:43:05 +0000 Subject: [PATCH] A C-style for loop is needed for this to iterate as expected. This was SVN commit r12576. --- .../mods/public/simulation/ai/qbot-wc/military.js | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/binaries/data/mods/public/simulation/ai/qbot-wc/military.js b/binaries/data/mods/public/simulation/ai/qbot-wc/military.js index b7040dd24f..c9aa2f4e3f 100755 --- a/binaries/data/mods/public/simulation/ai/qbot-wc/military.js +++ b/binaries/data/mods/public/simulation/ai/qbot-wc/military.js @@ -543,7 +543,7 @@ MilitaryAttackManager.prototype.update = function(gameState, queues, events) { //if (gameState.defcon() >= 3) { if (1) { for (attackType in this.upcomingAttacks) { - for (i in this.upcomingAttacks[attackType]) { + for (var i = 0; i < this.upcomingAttacks[attackType].length; ++i) { var attack = this.upcomingAttacks[attackType][i]; @@ -563,20 +563,17 @@ MilitaryAttackManager.prototype.update = function(gameState, queues, events) { attack.Abort(gameState, this); //this.abortedAttacks.push(attack); - i--; - this.upcomingAttacks[attackType].splice(i,1); + this.upcomingAttacks[attackType].splice(i--,1); } else if (updateStep === 2) { debug ("Military Manager: Starting " +attack.getType() +" plan " +attack.getName()); attack.StartAttack(gameState,this); this.startedAttacks[attackType].push(attack); - i--; - this.upcomingAttacks[attackType].splice(i-1,1); + this.upcomingAttacks[attackType].splice(i--,1); } } else { debug ("Military Manager: Starting " +attack.getType() +" plan " +attack.getName()); this.startedAttacks[attackType].push(attack); - i--; - this.upcomingAttacks[attackType].splice(i-1,1); + this.upcomingAttacks[attackType].splice(i--,1); } } } @@ -593,8 +590,7 @@ MilitaryAttackManager.prototype.update = function(gameState, queues, events) { attack.Abort(gameState); //this.abortedAttacks.push(attack); - this.startedAttacks[attackType].splice(i,1); - i--; + this.startedAttacks[attackType].splice(i--,1); } } }