Changeset 108 for pycodeshooter/trunk/shooter/trooper.js
- Timestamp:
- 01/17/12 01:34:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pycodeshooter/trunk/shooter/trooper.js
r106 r108 32 32 this.colIdx = 0; 33 33 34 this.update = function(enem y) {34 this.update = function(enemies) { 35 35 this.size += this.speed; 36 36 37 // judge bullet 38 var delIdx = new Array(); 39 for (var i = 0; i < enemy.bullets.length; i++) { 40 if (touch(this.x, this.y, this.size, 41 enemy.bullets[i].x, enemy.bullets[i].y, enemy.bullets[i].size)) 42 delIdx.push(i); 43 } 44 enemy.delBullet(delIdx); 45 46 // judge enemy 47 if (touch(this.x, this.y, this.size, enemy.x, enemy.y, enemy.size) && enemy.life > 0) 48 enemy.life--; 37 for (var ei = 0; ei < enemies.length; ei++) { 38 var enemy = enemies[ei]; 39 var delIdx = new Array(); 40 41 // judge bullet 42 for (var i = 0; i < enemy.bullets.length; i++) { 43 if (touch(this.x, this.y, this.size, 44 enemy.bullets[i].x, enemy.bullets[i].y, enemy.bullets[i].size)) 45 delIdx.push(i); 46 } 47 enemy.delBullet(delIdx); 48 49 // judge enemy 50 if (touch(this.x, this.y, this.size, enemy.x, enemy.y, enemy.size) && enemy.life > 0) 51 enemy.life--; 52 } 49 53 }; 50 54 … … 121 125 }; 122 126 123 this.update = function(enemy) { 124 var delIdx = null; 125 127 this.update = function(enemies) { 126 128 // update my action 127 this.actList.update(this, enem y);129 this.actList.update(this, enemies); 128 130 129 131 // update bomb 130 132 if (this.bomb) { 131 this.bomb.update(enem y);133 this.bomb.update(enemies); 132 134 if (this.bomb.vanished()) 133 135 this.bomb = null; … … 135 137 136 138 // update/delete my bullets 137 delIdx = new Array(); 138 for (var i = 0; i < this.bullets.length; i++) { 139 this.bullets[i].next(); 140 141 if (this.bullets[i].vanished()) 142 delIdx.push(i); 143 } 144 this.delBullet(delIdx); 145 146 // judge/delete hit bullets 147 delIdx = new Array(); 148 for (var i = 0; i < enemy.bullets.length; i++) { 149 if (touch(this.x, this.y, this.hitSize, 150 enemy.bullets[i].x, enemy.bullets[i].y, enemy.bullets[i].size)) 151 delIdx.push(i); 152 } 153 enemy.delBullet(delIdx); 154 155 // update life 156 if (delIdx.length > 0 && this.life > 0) 157 this.life--; 139 { 140 var delIdx = new Array(); 141 for (var i = 0; i < this.bullets.length; i++) { 142 this.bullets[i].next(); 143 144 if (this.bullets[i].vanished()) 145 delIdx.push(i); 146 } 147 this.delBullet(delIdx); 148 } 149 150 // update/delete enemies' bullets 151 { 152 var hit = false; 153 154 for (var ei = 0; ei < enemies.length; ei++) { 155 var enemy = enemies[ei]; 156 var delIdx = new Array(); 157 158 // judge/delete hit bullets 159 for (var i = 0; i < enemy.bullets.length; i++) { 160 if (touch(this.x, this.y, this.hitSize, 161 enemy.bullets[i].x, enemy.bullets[i].y, enemy.bullets[i].size)) 162 delIdx.push(i); 163 } 164 165 enemy.delBullet(delIdx); 166 167 if (delIdx.length > 0) 168 hit = true; 169 } 170 171 // update my life 172 if (hit && this.life > 0) 173 this.life--; 174 } 158 175 }; 159 176
Note: See TracChangeset
for help on using the changeset viewer.