hedgewars/uAI.pas
changeset 7416 2f2f78fc65a3
parent 7375 16ae2e1c9005
child 7426 55b49cc1f33a
child 7433 c7fff3e61d49
equal deleted inserted replaced
7414:a9f18c66ce34 7416:2f2f78fc65a3
   189                         if (Ammoz[a].Ammo.Propz and ammoprop_AttackingPut) = 0 then
   189                         if (Ammoz[a].Ammo.Propz and ammoprop_AttackingPut) = 0 then
   190                             begin
   190                             begin
   191                             AddAction(BestActions, aia_attack, aim_push, 650 + random(300), 0, 0);
   191                             AddAction(BestActions, aia_attack, aim_push, 650 + random(300), 0, 0);
   192                             AddAction(BestActions, aia_attack, aim_release, ap.Power, 0, 0);
   192                             AddAction(BestActions, aia_attack, aim_release, ap.Power, 0, 0);
   193                             end;
   193                             end;
   194                             
   194 
       
   195                     if (Ammoz[a].Ammo.Propz and ammoprop_Track) <> 0 then
       
   196                         begin
       
   197                         AddAction(BestActions, aia_waitAmmoXY, 0, 12, ap.ExplX, ap.ExplY);
       
   198                         AddAction(BestActions, aia_attack, aim_push, 1, 0, 0);
       
   199                         AddAction(BestActions, aia_attack, aim_release, 7, 0, 0);
       
   200                         end;
       
   201 
   195                     if ap.ExplR > 0 then
   202                     if ap.ExplR > 0 then
   196                         AddAction(BestActions, aia_AwareExpl, ap.ExplR, 10, ap.ExplX, ap.ExplY);
   203                         AddAction(BestActions, aia_AwareExpl, ap.ExplR, 10, ap.ExplX, ap.ExplY);
   197                     end
   204                     end
   198             end;
   205             end;
   199         if a = High(TAmmoType) then
   206         if a = High(TAmmoType) then
   474                 StartThink(Gear);
   481                 StartThink(Gear);
   475                 StartTicks:= GameTicks
   482                 StartTicks:= GameTicks
   476                 
   483                 
   477             end else
   484             end else
   478                 begin
   485                 begin
   479                 (*
   486                 {if not scoreShown then
   480                 if not scoreShown then
       
   481                     begin
   487                     begin
   482                     if BestActions.Score > 0 then ParseCommand('/say Expected score = ' + inttostr(BestActions.Score div 1024), true);
   488                     if BestActions.Score > 0 then ParseCommand('/say Expected score = ' + inttostr(BestActions.Score div 1024), true);
   483                     scoreShown:= true
   489                     scoreShown:= true
   484                     end;*)
   490                     end;}
   485                 ProcessAction(BestActions, Gear)
   491                 ProcessAction(BestActions, Gear)
   486                 end
   492                 end
   487         else if ((GameTicks - StartTicks) > cMaxAIThinkTime)
   493         else if ((GameTicks - StartTicks) > cMaxAIThinkTime)
   488             or (TurnTimeLeft <= cStopThinkTime) then
   494             or (TurnTimeLeft <= cStopThinkTime) then
   489                 StopThinking:= true
   495                 StopThinking:= true