equal
deleted
inserted
replaced
1422 //////////////////////////////////////////////////////////////////////////////// |
1422 //////////////////////////////////////////////////////////////////////////////// |
1423 procedure doStepMine(Gear: PGear); |
1423 procedure doStepMine(Gear: PGear); |
1424 var vg: PVisualGear; |
1424 var vg: PVisualGear; |
1425 dxdy: hwFloat; |
1425 dxdy: hwFloat; |
1426 begin |
1426 begin |
|
1427 if Gear^.Health = 0 then dxdy:= hwAbs(Gear^.dX)+hwAbs(Gear^.dY); |
1427 if (Gear^.State and gstMoving) <> 0 then |
1428 if (Gear^.State and gstMoving) <> 0 then |
1428 begin |
1429 begin |
1429 DeleteCI(Gear); |
1430 DeleteCI(Gear); |
1430 doStepFallingGear(Gear); |
1431 doStepFallingGear(Gear); |
1431 if (Gear^.State and gstMoving) = 0 then |
1432 if (Gear^.State and gstMoving) = 0 then |
1439 end |
1440 end |
1440 else if (GameTicks and $3F) = 25 then |
1441 else if (GameTicks and $3F) = 25 then |
1441 doStepFallingGear(Gear); |
1442 doStepFallingGear(Gear); |
1442 if (Gear^.Health = 0) then |
1443 if (Gear^.Health = 0) then |
1443 begin |
1444 begin |
1444 dxdy:= hwAbs(Gear^.dX)+hwAbs(Gear^.dY); |
|
1445 if (dxdy > _0_4) and (Gear^.State and gstCollision <> 0) then |
1445 if (dxdy > _0_4) and (Gear^.State and gstCollision <> 0) then |
1446 inc(Gear^.Damage, hwRound(dxdy * _50)); |
1446 inc(Gear^.Damage, hwRound(dxdy * _50)); |
1447 |
1447 |
1448 if ((GameTicks and $FF) = 0) and (Gear^.Damage > random(30)) then |
1448 if ((GameTicks and $FF) = 0) and (Gear^.Damage > random(30)) then |
1449 begin |
1449 begin |