equal
deleted
inserted
replaced
2265 //////////////////////////////////////////////////////////////////////////////// |
2265 //////////////////////////////////////////////////////////////////////////////// |
2266 procedure doStepTeleportAfter(Gear: PGear); |
2266 procedure doStepTeleportAfter(Gear: PGear); |
2267 var |
2267 var |
2268 HHGear: PGear; |
2268 HHGear: PGear; |
2269 begin |
2269 begin |
2270 Gear^.Hedgehog^.Unplaced := false; |
|
2271 HHGear := Gear^.Hedgehog^.Gear; |
2270 HHGear := Gear^.Hedgehog^.Gear; |
2272 HHGear^.Y := HHGear^.Y + HHGear^.dY; |
2271 doStepHedgehogMoving(HHGear); |
2273 HHGear^.X := HHGear^.X + HHGear^.dX; |
2272 // if not infattack mode wait for hedgehog finish falling to collect cases |
2274 // hedgehog falling to collect cases |
2273 if ((GameFlags and gfInfAttack) <> 0) |
2275 HHGear^.dY := HHGear^.dY + cGravity; |
2274 or ((HHGear^.State and gstMoving) = 0) |
2276 if (TestCollisionYwithGear(HHGear, 1) <> 0) |
2275 or (Gear^.Hedgehog^.Gear^.Damage > 0) |
2277 or CheckGearDrowning(HHGear) then |
2276 or ((HHGear^.State and gstDrowning) = 1) then |
2278 begin |
2277 begin |
2279 DeleteGear(Gear); |
2278 DeleteGear(Gear); |
2280 AfterAttack |
2279 AfterAttack |
2281 end |
2280 end |
2282 end; |
2281 end; |
2283 |
2282 |
2284 procedure doStepTeleportAnim(Gear: PGear); |
2283 procedure doStepTeleportAnim(Gear: PGear); |
2285 begin |
2284 begin |
|
2285 if (Gear^.Hedgehog^.Gear^.Damage > 0) then |
|
2286 begin |
|
2287 DeleteGear(Gear); |
|
2288 AfterAttack; |
|
2289 end; |
2286 inc(Gear^.Timer); |
2290 inc(Gear^.Timer); |
2287 if Gear^.Timer = 65 then |
2291 if Gear^.Timer = 65 then |
2288 begin |
2292 begin |
2289 Gear^.Timer := 0; |
2293 Gear^.Timer := 0; |
2290 inc(Gear^.Pos); |
2294 inc(Gear^.Pos); |
2324 Gear^.X := HHGear^.X; |
2328 Gear^.X := HHGear^.X; |
2325 Gear^.Y := HHGear^.Y; |
2329 Gear^.Y := HHGear^.Y; |
2326 HHGear^.X := int2hwFloat(Gear^.Target.X); |
2330 HHGear^.X := int2hwFloat(Gear^.Target.X); |
2327 HHGear^.Y := int2hwFloat(Gear^.Target.Y); |
2331 HHGear^.Y := int2hwFloat(Gear^.Target.Y); |
2328 HHGear^.State := HHGear^.State or gstMoving; |
2332 HHGear^.State := HHGear^.State or gstMoving; |
|
2333 Gear^.Hedgehog^.Unplaced := false; |
|
2334 isCursorVisible := false; |
2329 playSound(sndWarp) |
2335 playSound(sndWarp) |
2330 end; |
2336 end; |
2331 Gear^.Target.X:= NoPointX |
2337 Gear^.Target.X:= NoPointX |
2332 end; |
2338 end; |
2333 |
2339 |