6261 iter^.State:= iter^.State or gstFrozen; |
6261 iter^.State:= iter^.State or gstFrozen; |
6262 AddCI(iter) |
6262 AddCI(iter) |
6263 end |
6263 end |
6264 else if iter^.Kind = gtAirMine then |
6264 else if iter^.Kind = gtAirMine then |
6265 begin |
6265 begin |
6266 ForcePlaceOnLand(hwRound(iter^.X)-16, hwRound(iter^.Y)-16, sprFrozenAirMine, 0, lfIce, $FFFFFFFF, false, false, false); |
6266 iter^.Damage:= 0; |
6267 iter^.State:= gstFrozen or gstInvisible; |
6267 iter^.State:= iter^.State or gstFrozen; |
|
6268 if (hwRound(iter^.X) < RightX) and (hwRound(iter^.X) > 0) and |
|
6269 (hwRound(iter^.Y) < LAND_HEIGHT) and (hwRound(iter^.Y) > 0) then |
|
6270 begin |
|
6271 iter^.X:= int2hwFloat(min(RightX-16,max(hwRound(iter^.X), 16))); |
|
6272 iter^.Y:= int2hwFloat(min(LAND_HEIGHT-16,max(hwRound(iter^.Y),16))); |
|
6273 ForcePlaceOnLand(hwRound(iter^.X)-16, hwRound(iter^.Y)-16, sprFrozenAirMine, 0, lfIce, $FFFFFFFF, false, false, false); |
|
6274 iter^.State:= iter^.State or gstInvisible |
|
6275 end |
6268 end |
6276 end |
6269 else // gtExplosives |
6277 else // gtExplosives |
6270 begin |
6278 begin |
6271 iter^.State:= iter^.State or gstFrozen; |
6279 iter^.State:= iter^.State or gstFrozen; |
6272 iter^.Health:= iter^.Health + cBarrelHealth |
6280 iter^.Health:= iter^.Health + cBarrelHealth |