hedgewars/GSHandlers.inc
changeset 2025 692308790912
parent 2024 2985f3bd18b7
child 2029 51e164a40b41
equal deleted inserted replaced
2024:2985f3bd18b7 2025:692308790912
   771 	procedure DeleteMe;
   771 	procedure DeleteMe;
   772 	begin
   772 	begin
   773 	with HHGear^ do
   773 	with HHGear^ do
   774 		begin
   774 		begin
   775 		Message:= Message and not gm_Attack;
   775 		Message:= Message and not gm_Attack;
   776 		State:= State or gstMoving;
   776 		State:= (State or gstMoving) and not gstWinner;
   777 		State:= State and not gstWinner;
       
   778 		end;
   777 		end;
   779 	DeleteGear(Gear)
   778 	DeleteGear(Gear)
   780 	end;
   779 	end;
   781 
   780 
   782 	procedure WaitCollision;
   781 	procedure WaitCollision;
   952 if (HHGear^.State and gstMoving) <> 0 then
   951 if (HHGear^.State and gstMoving) <> 0 then
   953 if TestCollisionYwithGear(HHGear, 1) then
   952 if TestCollisionYwithGear(HHGear, 1) then
   954 	begin
   953 	begin
   955 	CheckHHDamage(HHGear);
   954 	CheckHHDamage(HHGear);
   956 	HHGear^.dY:= _0;
   955 	HHGear^.dY:= _0;
   957 	HHGear^.State:= HHGear^.State and not (gstMoving or gstHHJumping);
   956 	HHGear^.State:= HHGear^.State and not (gstMoving or gstHHJumping or gstHHHJump);
   958 	end else
   957 	end else
   959 	begin
   958 	begin
   960 	if TestCollisionXwithGear(HHGear, hwSign(HHGear^.dX)) then SetLittle(HHGear^.dX);
   959 	if TestCollisionXwithGear(HHGear, hwSign(HHGear^.dX)) then SetLittle(HHGear^.dX);
   961 	HHGear^.X:= HHGear^.X + HHGear^.dX;
   960 	HHGear^.X:= HHGear^.X + HHGear^.dX;
   962 	HHGear^.Y:= HHGear^.Y + HHGear^.dY;
   961 	HHGear^.Y:= HHGear^.Y + HHGear^.dY;