rearrange quality flags a little, disable snow rendering on rqLowRes
authorkoda
Sun, 02 Jan 2011 19:30:16 +0100
changeset 4809 9c7d5f802618
parent 4808 7c3e5b52344a
child 4810 76315fdfb7a5
rearrange quality flags a little, disable snow rendering on rqLowRes
QTfrontend/gameuiconfig.cpp
hedgewars/uConsts.pas
hedgewars/uGears.pas
hedgewars/uStore.pas
hedgewars/uVisualGears.pas
--- a/QTfrontend/gameuiconfig.cpp	Sun Jan 02 18:12:16 2011 +0100
+++ b/QTfrontend/gameuiconfig.cpp	Sun Jan 02 19:30:16 2011 +0100
@@ -183,7 +183,7 @@
     quint32 rqNoBackground = 0x00000004;  // don't draw background
     quint32 rqSimpleRope = 0x00000008;  // avoid drawing rope
     quint32 rq2DWater = 0x00000010;  // disabe 3D water effect
-    quint32 rqFancyBoom = 0x00000020;  // no fancy explosion effects
+    quint32 rqAntiBoom = 0x00000020;  // no fancy explosion effects
     quint32 rqKillFlakes = 0x00000040;  // no flakes
     quint32 rqSlowMenu = 0x00000080;  // ammomenu appears with no animation
     quint32 rqPlainSplash = 0x00000100;  // no droplets
@@ -204,15 +204,15 @@
         break;
       case 2:
         result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater |
-                  rqFancyBoom | rqSlowMenu;
+                  rqAntiBoom | rqSlowMenu;
         break;
       case 1:
         result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater |
-                  rqFancyBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank;
+                  rqAntiBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank;
         break;
       case 0:
         result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater |
-                  rqFancyBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank |
+                  rqAntiBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank |
                   rqNoBackground | rqClampLess;
         break;
       default:
--- a/hedgewars/uConsts.pas	Sun Jan 02 18:12:16 2011 +0100
+++ b/hedgewars/uConsts.pas	Sun Jan 02 19:30:16 2011 +0100
@@ -69,7 +69,7 @@
     rqNoBackground= $00000004;  // don't draw background
     rqSimpleRope  = $00000008;  // draw rope using lines only
     rq2DWater     = $00000010;  // disable 3D water effect
-    rqFancyBoom   = $00000020;  // no fancy explosion effects
+    rqAntiBoom    = $00000020;  // no fancy explosion effects
     rqKillFlakes  = $00000040;  // no flakes
     rqSlowMenu    = $00000080;  // ammomenu appears with no animation
     rqPlainSplash = $00000100;  // no droplets
--- a/hedgewars/uGears.pas	Sun Jan 02 18:12:16 2011 +0100
+++ b/hedgewars/uGears.pas	Sun Jan 02 19:30:16 2011 +0100
@@ -1125,10 +1125,10 @@
 if (GameFlags and gfArtillery) <> 0 then
     cArtillery:= true;
 
-if not hasBorder and ((Theme = 'Snow') or (Theme = 'Christmas')) then
+if not hasBorder and ((Theme = 'Snow') or (Theme = 'Christmas')) and ((cReducedQuality and rqLowRes) = 0) then
     begin
     for i:= 0 to Pred(vobCount*2) do
-        AddGear(GetRandom(LAND_WIDTH+1024)-512, LAND_HEIGHT - GetRandom(1024), gtFlake, 0, _0, _0, 0);
+        AddGear(GetRandom(LAND_WIDTH+1024)-512, LAND_HEIGHT - GetRandom(LAND_HEIGHT div 2), gtFlake, 0, _0, _0, 0);
     disableLandBack:= true
     end
 end;
--- a/hedgewars/uStore.pas	Sun Jan 02 18:12:16 2011 +0100
+++ b/hedgewars/uStore.pas	Sun Jan 02 19:30:16 2011 +0100
@@ -274,7 +274,9 @@
 for ii:= Low(TSprite) to High(TSprite) do
     with SpritesData[ii] do
         // FIXME - add a sprite attribute
-        if ((cReducedQuality and rqNoBackground) = 0) or (not (ii in [sprSky, sprSkyL, sprSkyR, sprHorizont, sprHorizontL, sprHorizontR, sprFlake, sprSplash, sprDroplet, sprSDSplash, sprSDDroplet]) or (((Theme = 'Snow') or (Theme = 'Christmas')) and ((ii = sprFlake) or (ii = sprSDFlake)))) then // FIXME: hack
+        if ((cReducedQuality and rqNoBackground) = 0) or // FIXME: should check for both rqNoBackground and rqKillFlakes
+            (not (ii in [sprSky, sprSkyL, sprSkyR, sprHorizont, sprHorizontL, sprHorizontR, sprFlake, sprSplash, sprDroplet, sprSDSplash, sprSDDroplet]) or
+            (((Theme = 'Snow') or (Theme = 'Christmas')) and ((ii = sprFlake) or (ii = sprSDFlake)))) then // FIXME: hack; also should checked against rqLowRes
         begin
             if AltPath = ptNone then
                 if ii in [sprHorizontL, sprHorizontR, sprSkyL, sprSkyR] then // FIXME: hack
@@ -307,7 +309,8 @@
                 else
                 begin
                     Texture:= Surface2Tex(tmpsurf, false);
-                    if ((ii = sprWater) or (ii = sprSDWater)) and ((cReducedQuality and (rq2DWater or rqClampLess)) = 0) then // HACK: We should include some sprite attribute to define the texture wrap directions
+                    // HACK: We should include some sprite attribute to define the texture wrap directions
+                    if ((ii = sprWater) or (ii = sprSDWater)) and ((cReducedQuality and (rq2DWater or rqClampLess)) = 0) then
                         glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
                 end;
                 glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_PRIORITY, priority);
--- a/hedgewars/uVisualGears.pas	Sun Jan 02 18:12:16 2011 +0100
+++ b/hedgewars/uVisualGears.pas	Sun Jan 02 19:30:16 2011 +0100
@@ -113,7 +113,7 @@
         exit
         end;
 
-if ((cReducedQuality and rqFancyBoom) <> 0) and
+if ((cReducedQuality and rqAntiBoom) <> 0) and
    not Critical and
    not (Kind in
    [vgtTeamHealthSorter,
@@ -429,7 +429,7 @@
                     DrawCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex)
                     end
         end;
-            if (cReducedQuality and rqFancyBoom) = 0 then
+            if (cReducedQuality and rqAntiBoom) = 0 then
                 case Gear^.Kind of
                     vgtSmoke: DrawSprite(sprSmoke, round(Gear^.X) + WorldDx - 11, round(Gear^.Y) + WorldDy - 11, 7 - Gear^.Frame);
                     vgtSmokeWhite: DrawSprite(sprSmokeWhite, round(Gear^.X) + WorldDx - 11, round(Gear^.Y) + WorldDy - 11, 7 - Gear^.Frame);
@@ -458,7 +458,7 @@
                              DrawRotatedTextureF(SpritesData[sprBigExplosion].Texture, 0.85 * (-power(2, -10 * Int(Gear^.Timer)/250) + 1) + 0.4, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, 0, 1, 385, 385, Gear^.Angle);
                              end;
             end;
-        if (cReducedQuality and rqFancyBoom) = 0 then
+        if (cReducedQuality and rqAntiBoom) = 0 then
             case Gear^.Kind of
                 vgtExplPart: DrawSprite(sprExplPart, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
                 vgtExplPart2: DrawSprite(sprExplPart2, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);