# HG changeset patch
# User Wuzzy <Wuzzy2@mail.ru>
# Date 1561368315 -7200
# Node ID a0bb57d3d2722ee42d09d20b79ae1f38616918b9
# Parent  7d41e78891234accd97d3ac7e983bd11e4f3b895
Fix buggy kamikaze when hog took damage during short waiting phase at start

diff -r 7d41e7889123 -r a0bb57d3d272 ChangeLog.txt
--- a/ChangeLog.txt	Sun Jun 23 16:14:27 2019 +0200
+++ b/ChangeLog.txt	Mon Jun 24 11:25:15 2019 +0200
@@ -40,6 +40,7 @@
  * Fix hog floating when switching to moving hog
  * Fix jump key not being ignored after placing girder or target
  * Explode hog instantly when taking damage while dying
+ * Fix buggy hog when hog took damage during "idle" phase in kamikaze attack
 
 Styles and schemes:
  + The Specialists: Unlock game scheme
diff -r 7d41e7889123 -r a0bb57d3d272 hedgewars/uGearsHandlersMess.pas
--- a/hedgewars/uGearsHandlersMess.pas	Sun Jun 23 16:14:27 2019 +0200
+++ b/hedgewars/uGearsHandlersMess.pas	Mon Jun 24 11:25:15 2019 +0200
@@ -3614,9 +3614,20 @@
 end;
 
 procedure doStepKamikazeIdle(Gear: PGear);
+var HHGear: PGear;
 begin
     AllInactive := false;
     dec(Gear^.Timer);
+    HHGear := Gear^.Hedgehog^.Gear;
+    if (HHGear = nil) or (HHGear^.Damage <> 0) then
+        begin
+        if (HHGear <> nil) then
+            AfterAttack;
+        ClearHitOrder();
+        ClearProximityCache();
+        DeleteGear(Gear);
+        exit;
+        end;
     if Gear^.Timer = 0 then
         begin
         Gear^.Pos := 1;