Some tweaks by nemo
authorunc0rr
Sun, 15 Mar 2009 12:59:52 +0000
changeset 1892 fddc1201df25
parent 1891 47e832a88cbd
child 1893 85c61bc5e160
Some tweaks by nemo
hedgewars/GSHandlers.inc
hedgewars/hwengine.dpr
hedgewars/uConsts.pas
hedgewars/uGears.pas
hedgewars/uLandGraphics.pas
--- a/hedgewars/GSHandlers.inc	Sun Mar 15 12:58:23 2009 +0000
+++ b/hedgewars/GSHandlers.inc	Sun Mar 15 12:59:52 2009 +0000
@@ -687,6 +687,7 @@
 		begin
 		Message:= Message and not gm_Attack;
 		State:= State or gstMoving;
+		State:= State and not gstWinner;
 		end;
 	DeleteGear(Gear)
 	end;
--- a/hedgewars/hwengine.dpr	Sun Mar 15 12:58:23 2009 +0000
+++ b/hedgewars/hwengine.dpr	Sun Mar 15 12:59:52 2009 +0000
@@ -189,7 +189,7 @@
 {$ENDIF}
 
 case ParamCount of
-16: begin
+ 16: begin
      val(ParamStr(2), cScreenWidth);
      val(ParamStr(3), cScreenHeight);
      cInitWidth:= cScreenWidth;
@@ -216,9 +216,24 @@
      GameType:= gmtLandPreview;
      if ParamStr(3) <> 'landpreview' then OutError(errmsgShouldntRun, true);
      end;
-  2: begin
+ 14: begin
      PathPrefix:= ParamStr(1);
      recordFileName:= ParamStr(2);
+     val(ParamStr(3), cScreenWidth);
+     val(ParamStr(4), cScreenHeight);
+     cInitWidth:= cScreenWidth;
+     cInitHeight:= cScreenHeight;
+     cBitsStr:= ParamStr(5);
+     val(cBitsStr, cBits);
+     cFullScreen:= ParamStr(6) = '1';
+     isSoundEnabled:= ParamStr(7) = '1';
+     cLocaleFName:= ParamStr(8);
+     val(ParamStr(9), cInitVolume);
+     val(ParamStr(10), cTimerInterval);
+     cShowFPS:= ParamStr(11) = '1';
+     cAltDamage:= ParamStr(12) = '1';
+     isMusicEnabled:= ParamStr(13) = '1';
+     cReducedQuality:= ParamStr(14) = '1';
      for p:= Succ(Low(TPathType)) to High(TPathType) do
          if p <> ptMapCurrent then Pathz[p]:= PathPrefix + '/' + Pathz[p]
      end;
--- a/hedgewars/uConsts.pas	Sun Mar 15 12:58:23 2009 +0000
+++ b/hedgewars/uConsts.pas	Sun Mar 15 12:59:52 2009 +0000
@@ -1180,6 +1180,7 @@
 			NumberInCase: 1;
 			Ammo: (Propz: ammoprop_NoCrosshair or
 						  ammoprop_DontHold or
+						  ammoprop_AltUse or
                           ammoprop_Utility;
 					Count: 1;
 					NumPerTurn: 0;
@@ -1200,6 +1201,7 @@
 			NumberInCase: 1;
 			Ammo: (Propz: ammoprop_NoCrosshair or
 						  ammoprop_DontHold or
+						  ammoprop_AltUse or
                           ammoprop_Utility;
 					Count: 1;
 					NumPerTurn: 0;
@@ -1220,6 +1222,7 @@
 			NumberInCase: 1;
 			Ammo: (Propz: ammoprop_NoCrosshair or
 						  ammoprop_DontHold or
+						  ammoprop_AltUse or
                           ammoprop_Utility;
 					Count: 1;
 					NumPerTurn: 0;
@@ -1240,6 +1243,7 @@
 			NumberInCase: 1;
 			Ammo: (Propz: ammoprop_NoCrosshair or
 						  ammoprop_DontHold or
+						  ammoprop_AltUse or
                           ammoprop_Utility;
 					Count: 1;
 					NumPerTurn: 0;
@@ -1260,6 +1264,7 @@
 			NumberInCase: 1;
 			Ammo: (Propz: ammoprop_NoCrosshair or
 						  ammoprop_DontHold or
+						  ammoprop_AltUse or
                           ammoprop_Utility;
 					Count: 1;
 					NumPerTurn: 0;
--- a/hedgewars/uGears.pas	Sun Mar 15 12:58:23 2009 +0000
+++ b/hedgewars/uGears.pas	Sun Mar 15 12:59:52 2009 +0000
@@ -505,7 +505,6 @@
 	stChDmg: if CheckNoDamage then inc(step) else step:= stDelay;
 	stSweep: if SweepDirty then
 				begin
-				SetAllToActive;
 				step:= stChDmg
 				end else inc(step);
 	stTurnReact: begin
@@ -671,7 +670,8 @@
 	defaultPos:= false
 	end else
 
-if (Gear^.State and gstWinner) <> 0 then
+if ((Gear^.State and gstWinner) <> 0) and 
+   ((CurAmmoGear = nil) or (CurAmmoGear^.Kind <> gtPickHammer)) then
 	begin
 	DrawHedgehog(sx, sy,
 			hwSign(Gear^.dX),
@@ -749,7 +749,10 @@
 						0);
 				defaultPos:= false
 				end;
-			gtPickHammer,
+			gtPickHammer: begin
+                defaultPos:= false;
+                dec(sy,20);
+                end;
 			gtTeleport: defaultPos:= false;
 			gtWhip: begin
 				DrawRotatedF(sprWhip,
--- a/hedgewars/uLandGraphics.pas	Sun Mar 15 12:58:23 2009 +0000
+++ b/hedgewars/uLandGraphics.pas	Sun Mar 15 12:59:52 2009 +0000
@@ -423,7 +423,7 @@
 				ny:= Y + i;
 				nx:= X + j;
 				if ((ny and LAND_HEIGHT_MASK) = 0) and ((nx and LAND_WIDTH_MASK) = 0) then
-					if Land[ny, nx] <> 0 then
+					if Land[ny, nx] > 255 then
 						inc(c);
 				end;