hedgewars/uGearsHedgehog.pas
branchwebgl
changeset 8096 453917e94e55
parent 8026 4a4f21070479
parent 8051 f26422ef0333
child 8330 aaefa587e277
--- a/hedgewars/uGearsHedgehog.pas	Wed Nov 14 00:23:29 2012 +0100
+++ b/hedgewars/uGearsHedgehog.pas	Thu Nov 22 00:41:53 2012 +0100
@@ -103,6 +103,13 @@
             LoadHedgehogHat(HHGear^.Hedgehog^, 'Reserved/chef')
         else if prevAmmo = amKnife then
             LoadHedgehogHat(HHGear^.Hedgehog^, Hat);
+        end;
+    // Try again in the next slot
+    if CurAmmoType = prevAmmo then 
+        begin
+        if slot >= cMaxSlotIndex then slot:= 0 else inc(slot);
+        HHGear^.MsgParam:= slot;
+        ChangeAmmo(HHGear)
         end
     end
 end;
@@ -641,9 +648,10 @@
                         gi := GearsList;
                         while gi <> nil do
                             begin
-                            if gi^.Kind = gtGenericFaller then
+                            if (gi^.Kind = gtGenericFaller) and (gi^.State and gstInvisible <> 0) then
                                 begin
                                 gi^.Active:= true;
+                                gi^.State:= gi^.State or gstTmpFlag;
                                 gi^.X:= int2hwFloat(GetRandom(rightX-leftX)+leftX);
                                 gi^.Y:= int2hwFloat(GetRandom(LAND_HEIGHT-topY)+topY);
                                 gi^.dX:= _90-(GetRandomf*_360);