234 if (Gear^.State and gsttmpFlag) <> 0 then |
234 if (Gear^.State and gsttmpFlag) <> 0 then |
235 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 20, -50); |
235 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 20, -50); |
236 // avoid mines unless they are very likely to be duds, or are duds. also avoid if they are about to blow |
236 // avoid mines unless they are very likely to be duds, or are duds. also avoid if they are about to blow |
237 gtMine: begin |
237 gtMine: begin |
238 if (Gear^.State and gstMoving) <> 0 then bonuses.activity:= true; |
238 if (Gear^.State and gstMoving) <> 0 then bonuses.activity:= true; |
239 |
239 |
240 if ((Gear^.State and gstAttacking) = 0) and (((cMineDudPercent < 90) and (Gear^.Health <> 0)) |
240 if ((Gear^.State and gstAttacking) = 0) and (((cMineDudPercent < 90) and (Gear^.Health <> 0)) |
241 or (isAfterAttack and (Gear^.Health = 0) and (Gear^.Damage > 30))) then |
241 or (isAfterAttack and (Gear^.Health = 0) and (Gear^.Damage > 30))) then |
242 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 50, -50) |
242 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 50, -50) |
243 else if (Gear^.State and gstAttacking) <> 0 then |
243 else if (Gear^.State and gstAttacking) <> 0 then |
244 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 100, -50); // mine is on |
244 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 100, -50); // mine is on |
264 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 150, -75); |
264 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 150, -75); |
265 end; |
265 end; |
266 |
266 |
267 gtHedgehog: |
267 gtHedgehog: |
268 begin |
268 begin |
269 if (ThinkingHH <> Gear) |
269 if (ThinkingHH <> Gear) |
270 and (((Gear^.State and (gstMoving or gstDrowning or gstHHDeath)) <> 0) |
270 and (((Gear^.State and (gstMoving or gstDrowning or gstHHDeath)) <> 0) |
271 or (Gear^.Health = 0) |
271 or (Gear^.Health = 0) |
272 or (Gear^.Damage >= Gear^.Health)) |
272 or (Gear^.Damage >= Gear^.Health)) |
273 then begin |
273 then begin |
274 bonuses.activity:= true; |
274 bonuses.activity:= true; |
275 end; |
275 end; |
276 |
276 |
277 if Gear^.Damage >= Gear^.Health then |
277 if Gear^.Damage >= Gear^.Health then |
278 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 60, -25) |
278 AddBonus(hwRound(Gear^.X), hwRound(Gear^.Y), 60, -25) |
279 else |
279 else |
280 if isAfterAttack |
280 if isAfterAttack |
281 and (ThinkingHH^.Hedgehog <> Gear^.Hedgehog) |
281 and (ThinkingHH^.Hedgehog <> Gear^.Hedgehog) |