equal
deleted
inserted
replaced
267 or TestCollisionYwithGear(Gear, -1)) then |
267 or TestCollisionYwithGear(Gear, -1)) then |
268 begin |
268 begin |
269 Gear.dY:= -0.15; |
269 Gear.dY:= -0.15; |
270 Gear.dX:= Sign(Gear.dX) * 0.15; |
270 Gear.dX:= Sign(Gear.dX) * 0.15; |
271 Gear.State:= Gear.State or gstFalling or gstHHJumping |
271 Gear.State:= Gear.State or gstFalling or gstHHJumping |
272 end |
272 end else exit |
273 end |
273 end |
274 end; |
274 end; |
275 |
275 |
276 repeat |
276 repeat |
277 if Gear.Y + cHHRadius >= cWaterLine then exit; |
277 if Gear.Y + cHHRadius >= cWaterLine then exit; |
332 inc(GoInfo.Ticks); |
332 inc(GoInfo.Ticks); |
333 Gear.dY:= Gear.dY + cGravity; |
333 Gear.dY:= Gear.dY + cGravity; |
334 if Gear.dY > 0.40 then |
334 if Gear.dY > 0.40 then |
335 begin |
335 begin |
336 Goinfo.FallPix:= 0; |
336 Goinfo.FallPix:= 0; |
337 HHJump(AltGear, jmpLJump, GoInfo); |
337 HHJump(AltGear, jmpLJump, GoInfo); // try ljump enstead of fall with damage |
338 exit |
338 exit |
339 end; |
339 end; |
340 Gear.Y:= Gear.Y + Gear.dY; |
340 Gear.Y:= Gear.Y + Gear.dY; |
341 if round(Gear.Y) > pY then inc(GoInfo.FallPix); |
341 if round(Gear.Y) > pY then inc(GoInfo.FallPix); |
342 if TestCollisionYwithGear(Gear, 1) then |
342 if TestCollisionYwithGear(Gear, 1) then |
343 begin |
343 begin |
344 inc(GoInfo.Ticks, 300); |
344 inc(GoInfo.Ticks, 300); |
345 Gear.State:= Gear.State and not (gstFalling or gstHHJumping); |
345 Gear.State:= Gear.State and not (gstFalling or gstHHJumping); |
346 Gear.dY:= 0; |
346 Gear.dY:= 0; |
347 Result:= true; |
347 Result:= true; |
348 HHJump(AltGear, jmpLJump, GoInfo); |
348 HHJump(AltGear, jmpLJump, GoInfo); // try ljump instead of fall |
349 exit |
349 exit |
350 end; |
350 end; |
351 continue |
351 continue |
352 end; |
352 end; |
353 if (Gear.Message and gm_Left )<>0 then Gear.dX:= -1.0 else |
353 if (Gear.Message and gm_Left )<>0 then Gear.dX:= -1.0 else |