diff -r b994afa40326 -r 0570d4b22187 hedgewars/uAI.pas --- a/hedgewars/uAI.pas Thu Feb 27 12:48:27 2014 +0400 +++ b/hedgewars/uAI.pas Fri Feb 28 13:55:16 2014 +0400 @@ -415,7 +415,7 @@ switchCount:= HHHasAmmo(PGear(Me)^.Hedgehog^, amSwitch) else switchCount:= 0; -if ((Me^.State and gstAttacked) = 0) or isInMultiShoot then +if ((Me^.State and gstAttacked) = 0) or isInMultiShoot or bonuses.activity then if Targets.Count > 0 then begin // iterate over current team hedgehogs @@ -452,19 +452,23 @@ or BestActions.isWalkingToABetterPlace; if (StartTicks > GameTicks - 1500) and (not StopThinking) then - SDL_Delay(1000); + SDL_Delay(700); if (BestActions.Score < -1023) and (not BestActions.isWalkingToABetterPlace) then begin BestActions.Count:= 0; - AddAction(BestActions, aia_Skip, 0, 250, 0, 0); + + FillBonuses(false); + + if not bonuses.activity then + AddAction(BestActions, aia_Skip, 0, 250, 0, 0); end; end else SDL_Delay(100) else begin BackMe:= Me^; - i:= 12; + i:= 4; while (not StopThinking) and (BestActions.Count = 0) and (i > 0) do begin @@ -480,7 +484,7 @@ Actions.Pos:= 0; Actions.Score:= 0; Walk(@WalkMe, Actions); - dec(i); + if not bonuses.activity then dec(i); if not StopThinking then SDL_Delay(100) end