hedgewars/uGears.pas
changeset 876 d5b6e0ae5755
parent 874 964c0d5b3604
child 878 45bff6dadfce
equal deleted inserted replaced
875:226d0de2fb68 876:d5b6e0ae5755
   507 	aangle:= Gear^.Angle * 180 / cMaxAngle - 90;
   507 	aangle:= Gear^.Angle * 180 / cMaxAngle - 90;
   508 
   508 
   509 	if CurAmmoGear <> nil then
   509 	if CurAmmoGear <> nil then
   510 	begin
   510 	begin
   511 		case CurAmmoGear^.Kind of
   511 		case CurAmmoGear^.Kind of
   512 			gtShotgunShot: DrawRotated(sprHandShotgun, hx, hy, hwSign(Gear^.dX), aangle);
   512 			gtShotgunShot: if (CurAmmoGear^.State and gstAnimation <> 0) then
       
   513 					DrawRotated(sprShotgun, hx, hy, hwSign(Gear^.dX), aangle)
       
   514 				else
       
   515 					DrawRotated(sprHandShotgun, hx, hy, hwSign(Gear^.dX), aangle);
       
   516 			gtDEagleShot: DrawRotated(sprDEagle, hx, hy, hwSign(Gear^.dX), aangle);
   513 			gtRope: begin
   517 			gtRope: begin
   514 				if Gear^.X < CurAmmoGear^.X then
   518 				if Gear^.X < CurAmmoGear^.X then
   515 					begin
   519 					begin
   516 					dAngle:= 0;
   520 					dAngle:= 0;
   517 					m:= 1
   521 					m:= 1
   536 						0);
   540 						0);
   537 				end;
   541 				end;
   538 			gtShover: DrawRotated(sprHandBaseball, hx, hy, hwSign(Gear^.dX), aangle + 180);
   542 			gtShover: DrawRotated(sprHandBaseball, hx, hy, hwSign(Gear^.dX), aangle + 180);
   539 			gtPickHammer,
   543 			gtPickHammer,
   540 			gtTeleport: defaultPos:= false;
   544 			gtTeleport: defaultPos:= false;
       
   545 		end;
       
   546 
       
   547 		case CurAmmoGear^.Kind of
       
   548 			gtShotgunShot,
       
   549 			gtDEagleShot,
       
   550 			gtShover: begin
       
   551 				DrawHedgehog(hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) - 3 + WorldDy,
       
   552 						hwSign(Gear^.dX),
       
   553 						0,
       
   554 						4,
       
   555 						0);
       
   556 				defaultPos:= false
       
   557 			end
   541 		end
   558 		end
   542 	end else
   559 	end else
   543 
   560 
   544 	if ((Gear^.State and gstHHJumping) <> 0) then
   561 	if ((Gear^.State and gstHHJumping) <> 0) then
   545 		begin
   562 		begin
   579 			amDEagle: DrawRotated(sprHandDEagle, hx, hy, hwSign(Gear^.dX), aangle);
   596 			amDEagle: DrawRotated(sprHandDEagle, hx, hy, hwSign(Gear^.dX), aangle);
   580 			amBlowTorch: DrawRotated(sprHandBlowTorch, hx, hy, hwSign(Gear^.dX), aangle);
   597 			amBlowTorch: DrawRotated(sprHandBlowTorch, hx, hy, hwSign(Gear^.dX), aangle);
   581 		end;
   598 		end;
   582 
   599 
   583 		case amt of
   600 		case amt of
   584 			amBazooka,
       
   585 			amRope,
       
   586 			amShotgun,
       
   587 			amDEagle,
       
   588 			amBaseballBat: DrawHedgehog(hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) - 3 + WorldDy,
       
   589 						hwSign(Gear^.dX),
       
   590 						0,
       
   591 						4,
       
   592 						0);
       
   593 			amAirAttack,
   601 			amAirAttack,
   594 			amMineStrike: DrawRotated(sprHandAirAttack, hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) + WorldDy, hwSign(Gear^.dX), 0);
   602 			amMineStrike: DrawRotated(sprHandAirAttack, hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) + WorldDy, hwSign(Gear^.dX), 0);
   595 			amPickHammer: DrawHedgehog(hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) - 3 + WorldDy,
   603 			amPickHammer: DrawHedgehog(hwRound(Gear^.X) + 1 + WorldDx, hwRound(Gear^.Y) - 3 + WorldDy,
   596 						hwSign(Gear^.dX),
   604 						hwSign(Gear^.dX),
   597 						1,
   605 						1,