87 end; |
87 end; |
88 end; |
88 end; |
89 |
89 |
90 procedure DeleteGear(Gear: PGear); forward; |
90 procedure DeleteGear(Gear: PGear); forward; |
91 procedure doMakeExplosion(X, Y, Radius: integer; Mask: LongWord); forward; |
91 procedure doMakeExplosion(X, Y, Radius: integer; Mask: LongWord); forward; |
92 procedure AmmoShove(Ammo: PGear; Power: integer); forward; |
92 procedure AmmoShove(Ammo: PGear; Damage, Power: integer); forward; |
93 function CheckGearNear(Gear: PGear; Kind: TGearType; rX, rY: integer): PGear; forward; |
93 function CheckGearNear(Gear: PGear; Kind: TGearType; rX, rY: integer): PGear; forward; |
94 procedure SpawnBoxOfSmth; forward; |
94 procedure SpawnBoxOfSmth; forward; |
95 procedure AfterAttack; forward; |
95 procedure AfterAttack; forward; |
96 procedure FindPlace(Gear: PGear; withFall: boolean; Left, Right: integer); forward; |
96 procedure FindPlace(Gear: PGear; withFall: boolean; Left, Right: integer); forward; |
97 |
97 |
495 then DrawSprite(sprMineOff , Round(Gear.X) - 8 + WorldDx, Round(Gear.Y) - 8 + WorldDy, trunc(Gear.DirAngle), Surface) |
495 then DrawSprite(sprMineOff , Round(Gear.X) - 8 + WorldDx, Round(Gear.Y) - 8 + WorldDy, trunc(Gear.DirAngle), Surface) |
496 else DrawSprite(sprMineOn , Round(Gear.X) - 8 + WorldDx, Round(Gear.Y) - 8 + WorldDy, trunc(Gear.DirAngle), Surface); |
496 else DrawSprite(sprMineOn , Round(Gear.X) - 8 + WorldDx, Round(Gear.Y) - 8 + WorldDy, trunc(Gear.DirAngle), Surface); |
497 gtDynamite: DrawSprite2(sprDynamite, Round(Gear.X) - 16 + WorldDx, Round(Gear.Y) - 25 + WorldDy, Gear.Tag and 1, Gear.Tag shr 1, Surface); |
497 gtDynamite: DrawSprite2(sprDynamite, Round(Gear.X) - 16 + WorldDx, Round(Gear.Y) - 25 + WorldDy, Gear.Tag and 1, Gear.Tag shr 1, Surface); |
498 gtCase: case Gear.Pos of |
498 gtCase: case Gear.Pos of |
499 posCaseAmmo : DrawSprite(sprCase, Round(Gear.X) - 16 + WorldDx, Round(Gear.Y) - 16 + WorldDy, 0, Surface); |
499 posCaseAmmo : DrawSprite(sprCase, Round(Gear.X) - 16 + WorldDx, Round(Gear.Y) - 16 + WorldDy, 0, Surface); |
500 posCaseHealth: DrawSprite(sprFAid, Round(Gear.X) - 16 + WorldDx, Round(Gear.Y) - 16 + WorldDy, (GameTicks shr 6) and $F, Surface); |
500 posCaseHealth: DrawSprite(sprFAid, Round(Gear.X) - 24 + WorldDx, Round(Gear.Y) - 24 + WorldDy, (GameTicks shr 6) mod 13, Surface); |
501 end; |
501 end; |
502 end; |
502 end; |
503 Gear:= Gear.NextGear |
503 Gear:= Gear.NextGear |
504 end; |
504 end; |
505 end; |
505 end; |