hedgewars/HHHandlers.inc
changeset 799 71ba310da909
parent 790 a6f442173822
child 800 e95f16b7ec80
equal deleted inserted replaced
798:02753868d459 799:71ba310da909
   210          or   TestCollisionYwithGear(Gear, -1)) then
   210          or   TestCollisionYwithGear(Gear, -1)) then
   211          begin
   211          begin
   212          Gear^.dY:= -_0_15;
   212          Gear^.dY:= -_0_15;
   213          Gear^.dX:= SignAs(_0_15, Gear^.dX);
   213          Gear^.dX:= SignAs(_0_15, Gear^.dX);
   214          Gear^.State:= Gear^.State or gstMoving or gstHHJumping;
   214          Gear^.State:= Gear^.State or gstMoving or gstHHJumping;
       
   215          PlaySound(sndJump1, false);
   215          exit
   216          exit
   216          end;
   217          end;
   217       end;
   218       end;
   218 
   219 
   219    if ((Gear^.Message and gm_HJump ) <> 0) then
   220    if ((Gear^.Message and gm_HJump ) <> 0) then
   223       if not TestCollisionYwithGear(Gear, -1) then
   224       if not TestCollisionYwithGear(Gear, -1) then
   224          begin
   225          begin
   225          Gear^.dY:= -_0_2;
   226          Gear^.dY:= -_0_2;
   226          SetLittle(Gear^.dX);
   227          SetLittle(Gear^.dX);
   227          Gear^.State:= Gear^.State or gstMoving or gstHHJumping;
   228          Gear^.State:= Gear^.State or gstMoving or gstHHJumping;
       
   229          PlaySound(sndJump3, false);
   228          exit
   230          exit
   229          end;
   231          end;
   230       end;
   232       end;
   231 
   233 
   232    PrevdX:= hwSign(Gear^.dX);
   234    PrevdX:= hwSign(Gear^.dX);
   429       ((Gear^.State and gstHHHJump) = 0) then
   431       ((Gear^.State and gstHHHJump) = 0) then
   430       if (not (hwAbs(Gear^.dX) > cLittle)) and (Gear^.dY < -_0_02) then
   432       if (not (hwAbs(Gear^.dX) > cLittle)) and (Gear^.dY < -_0_02) then
   431          begin
   433          begin
   432          Gear^.State:= Gear^.State or gstHHHJump or gstMoving;
   434          Gear^.State:= Gear^.State or gstHHHJump or gstMoving;
   433          Gear^.dY:= -_0_25;
   435          Gear^.dY:= -_0_25;
   434          Gear^.dX:= -SignAs(_0_02, Gear^.dX)
   436          Gear^.dX:= -SignAs(_0_02, Gear^.dX);
       
   437          PlaySound(sndJump2, false)
   435          end;
   438          end;
   436    Gear^.Message:= Gear^.Message and not (gm_LJump or gm_HJump);
   439    Gear^.Message:= Gear^.Message and not (gm_LJump or gm_HJump);
   437 
   440 
   438    if ((Gear^.State and gstHHJumping) <> 0) and
   441    if ((Gear^.State and gstHHJumping) <> 0) and
   439       TestCollisionXwithGear(Gear, hwSign(Gear^.dX)) then SetLittle(Gear^.dX);
   442       TestCollisionXwithGear(Gear, hwSign(Gear^.dX)) then SetLittle(Gear^.dX);