equal
deleted
inserted
replaced
2380 |
2380 |
2381 PlaySound(sndSwitchHog); |
2381 PlaySound(sndSwitchHog); |
2382 |
2382 |
2383 repeat |
2383 repeat |
2384 CurrentTeam^.CurrHedgehog := Succ(CurrentTeam^.CurrHedgehog) mod (CurrentTeam^.HedgehogsNumber); |
2384 CurrentTeam^.CurrHedgehog := Succ(CurrentTeam^.CurrHedgehog) mod (CurrentTeam^.HedgehogsNumber); |
2385 until (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear <> nil) and (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear^.Damage = 0) and (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Effects[heFrozen]=0); |
2385 until (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear <> nil) and |
|
2386 (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Gear^.Damage = 0) and |
|
2387 (CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog].Effects[heFrozen]=0); |
2386 |
2388 |
2387 SwitchCurrentHedgehog(@CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog]); |
2389 SwitchCurrentHedgehog(@CurrentTeam^.Hedgehogs[CurrentTeam^.CurrHedgehog]); |
2388 AmmoMenuInvalidated:= true; |
2390 AmmoMenuInvalidated:= true; |
2389 |
2391 |
2390 HHGear := CurrentHedgehog^.Gear; |
2392 HHGear := CurrentHedgehog^.Gear; |
5072 Target.X:= NoPointX; |
5074 Target.X:= NoPointX; |
5073 LastDamage:= nil; |
5075 LastDamage:= nil; |
5074 X:= Hedgehog^.Gear^.X; |
5076 X:= Hedgehog^.Gear^.X; |
5075 Y:= Hedgehog^.Gear^.Y; |
5077 Y:= Hedgehog^.Gear^.Y; |
5076 //unfreeze all semifrozen hogs - make this generic hog cleanup |
5078 //unfreeze all semifrozen hogs - make this generic hog cleanup |
|
5079 (* |
5077 iter := GearsList; |
5080 iter := GearsList; |
5078 while iter <> nil do |
5081 while iter <> nil do |
5079 begin |
5082 begin |
5080 if (iter^.Kind = gtHedgehog) and |
5083 if (iter^.Kind = gtHedgehog) and |
5081 (iter^.Hedgehog^.Effects[heFrozen] and $FF = 0) then |
5084 (iter^.Hedgehog^.Effects[heFrozen] and $FF = 0) then |
5082 iter^.Hedgehog^.Effects[heFrozen]:= 0; |
5085 iter^.Hedgehog^.Effects[heFrozen]:= 0; |
5083 iter:= iter^.NextGear |
5086 iter:= iter^.NextGear |
5084 end |
5087 end |
|
5088 *) |
5085 end; |
5089 end; |
5086 end; |
5090 end; |
5087 |
5091 |
5088 |
5092 |
5089 function isLanscapeEdge(weight:Longint):boolean; |
5093 function isLanscapeEdge(weight:Longint):boolean; |
5241 if hogs.size > 0 then |
5245 if hogs.size > 0 then |
5242 for i:= 0 to hogs.size - 1 do |
5246 for i:= 0 to hogs.size - 1 do |
5243 begin |
5247 begin |
5244 if hogs.ar^[i] <> HHGear then |
5248 if hogs.ar^[i] <> HHGear then |
5245 begin |
5249 begin |
5246 if GameTicks mod 10 = 0 then |
5250 if GameTicks mod 5 = 0 then |
5247 if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] < 256 then |
5251 if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] < 256 then |
5248 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] := hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] + 1 |
5252 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] := hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] + 1 |
5249 else if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] = 256 then |
5253 else if hogs.ar^[i]^.Hedgehog^.Effects[heFrozen] = 256 then |
|
5254 begin |
5250 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen]:= 100000; |
5255 hogs.ar^[i]^.Hedgehog^.Effects[heFrozen]:= 100000; |
|
5256 hogs.ar^[i]^.Active:= true |
|
5257 end; |
5251 end; |
5258 end; |
5252 end; |
5259 end; |
5253 inc(Pos) |
5260 inc(Pos) |
5254 end |
5261 end |
5255 else if (t > 400) and ((gY > cWaterLine) or |
5262 else if (t > 400) and ((gY > cWaterLine) or |