hedgewars/uGearsHedgehog.pas
branchicegun
changeset 8563 4d9d8287e601
parent 8560 134a098235fa
child 8574 684169401a2f
equal deleted inserted replaced
8560:134a098235fa 8563:4d9d8287e601
   693 
   693 
   694 procedure HedgehogStep(Gear: PGear);
   694 procedure HedgehogStep(Gear: PGear);
   695 var PrevdX: LongInt;
   695 var PrevdX: LongInt;
   696     CurWeapon: PAmmo;
   696     CurWeapon: PAmmo;
   697 begin
   697 begin
   698 if Gear^.Hedgehog^.Effects[heFrozen] > 0 then exit;
       
   699 CurWeapon:= GetCurAmmoEntry(Gear^.Hedgehog^);
   698 CurWeapon:= GetCurAmmoEntry(Gear^.Hedgehog^);
   700 if ((Gear^.State and (gstAttacking or gstMoving)) = 0) then
   699 if ((Gear^.State and (gstAttacking or gstMoving)) = 0) then
   701     begin
   700     begin
   702     if isCursorVisible then
   701     if isCursorVisible then
   703         with Gear^.Hedgehog^ do
   702         with Gear^.Hedgehog^ do
  1202 else
  1201 else
  1203     begin
  1202     begin
  1204     if Gear^.Timer = 0 then
  1203     if Gear^.Timer = 0 then
  1205         begin
  1204         begin
  1206         Gear^.State:= Gear^.State and (not (gstWait or gstLoser or gstWinner or gstAttacked or gstNotKickable or gstHHChooseTarget));
  1205         Gear^.State:= Gear^.State and (not (gstWait or gstLoser or gstWinner or gstAttacked or gstNotKickable or gstHHChooseTarget));
  1207         Gear^.Active:= false;
  1206         if Gear^.Hedgehog^.Effects[heFrozen] = 0 then Gear^.Active:= false;
  1208         AddGearCI(Gear);
  1207         AddGearCI(Gear);
  1209         exit
  1208         exit
  1210         end
  1209         end
  1211     else dec(Gear^.Timer)
  1210     else dec(Gear^.Timer)
  1212     end;
  1211     end;
  1226 if (Gear^.Message and gmDestroy) <> 0 then
  1225 if (Gear^.Message and gmDestroy) <> 0 then
  1227     begin
  1226     begin
  1228     DeleteGear(Gear);
  1227     DeleteGear(Gear);
  1229     exit
  1228     exit
  1230     end;
  1229     end;
  1231 
  1230 if Gear^.Hedgehog^.Effects[heFrozen] > 0 then 
       
  1231     begin
       
  1232     if Gear^.Hedgehog^.Effects[heFrozen] > 256 then
       
  1233         dec(Gear^.Hedgehog^.Effects[heFrozen])
       
  1234     else if GameTicks mod 10 = 0 then
       
  1235         dec(Gear^.Hedgehog^.Effects[heFrozen])
       
  1236     end;
  1232 if (Gear^.State and gstHHDriven) = 0 then
  1237 if (Gear^.State and gstHHDriven) = 0 then
  1233     doStepHedgehogFree(Gear)
  1238     doStepHedgehogFree(Gear)
  1234 else
  1239 else
  1235     begin
  1240     begin
  1236     with Gear^.Hedgehog^ do
  1241     with Gear^.Hedgehog^ do