oh. and koda's revision too
authornemo
Sun, 26 Dec 2010 15:29:04 -0500
changeset 4703 58d926024040
parent 4702 8d58de712738 (diff)
parent 4701 7ed88cfc99b1 (current diff)
child 4704 a07dfebaa497
oh. and koda's revision too
--- a/ChangeLog.txt	Sun Dec 26 19:30:51 2010 +0100
+++ b/ChangeLog.txt	Sun Dec 26 15:29:04 2010 -0500
@@ -1,6 +1,31 @@
 + features
 * bugfixes
 
+0.9.14 -> 0.9.15:
+ + Ability to create, save and load hand drawn maps
+ + New maps: Capture the Flag (Blizzard) Map
+ + New themes: Christmas
+ + Snowflakes on Christmas/Snow themes accumulates on the ground
+ + New game modifiers: No wind, More wind
+ + New missions: Dangerous ducklings, Diver, Spooky tree, Teamwork
+ + New weapons: Mudball, Drill strike
+ + Many more Lua hooks
+ + Readytimer
+ + Ability to edit seed
+ + Ability to select gameplay scripts
+ + New gameplay scripts: Capture the Flag, No jumping, Random weapon
+ + New Lua unified translation framework
+ + Code refactoring
+ + Max teams upped to 8
+ + Cosmetic enhancements to Napalm strike
+ + Selecting a game scheme selects the corresponding weapon set
+ + Dust when drills dig
+ + New hats: beaver, porkey, sheep
+ + Add density property to Gears
+ + Reworked management of schemes and weapon sets
+ + Explosions detach rope from land
+ + Allow hog speech when not your turn
+
 0.9.13 -> 0.9.14:
  + New audio tracks
  + New forts: EvilChicken, Tank
--- a/doc/Release.txt	Sun Dec 26 19:30:51 2010 +0100
+++ b/doc/Release.txt	Sun Dec 26 15:29:04 2010 -0500
@@ -8,4 +8,5 @@
 8. Make packages
 9. Test packages
 10. Upload (hedgewars.org, fireforge.net, gna.org (rsync --delete  -avr --rsh="ssh" . unc0rr@download.gna.org:/upload/hedgewars))
-11. Post news
+11. Post news (hedgewars.org, hedgewars forum, fireforge.net, gna.org, happypenguin, etc.)
+12. Make tag (svn copy svn+ssh://unc0rr@svn.fireforge.net/svnroot/hedgewars/branches/0.9.7 svn+ssh://unc0rr@svn.fireforge.net/svnroot/hedgewars/tags/0.9.7 -m "Tag for 0.9.7 release")
\ No newline at end of file
--- a/gameServer/HWProtoInRoomState.hs	Sun Dec 26 19:30:51 2010 +0100
+++ b/gameServer/HWProtoInRoomState.hs	Sun Dec 26 15:29:04 2010 -0500
@@ -37,7 +37,7 @@
 handleCmd_inRoom clID clients rooms ("ADD_TEAM" : name : color : grave : fort : voicepack : flag : difStr : hhsInfo)
     | length hhsInfo == 15 && clientProto client < 30 = handleCmd_inRoom clID clients rooms ("ADD_TEAM" : name : color : grave : fort : voicepack : " " : flag : difStr : hhsInfo)
     | length hhsInfo /= 16 = [ProtocolError "Corrupted hedgehogs info"]
-    | length (teams room) == 6 = [Warning "too many teams"]
+    | length (teams room) == 8 = [Warning "too many teams"]
     | canAddNumber <= 0 = [Warning "too many hedgehogs"]
     | isJust findTeam = [Warning "There's already a team with same name in the list"]
     | gameinprogress room = [Warning "round in progress"]
--- a/hedgewars/GSHandlers.inc	Sun Dec 26 19:30:51 2010 +0100
+++ b/hedgewars/GSHandlers.inc	Sun Dec 26 15:29:04 2010 -0500
@@ -1038,7 +1038,7 @@
     if (Gear^.Timer mod 47) = 0 then
         begin
         // ok. this was an attempt to turn off dust if not actually drilling land.  I have no idea why it isn't working as expected
-        //if ((y + 12 and LAND_HEIGHT_MASK) = 0) and ((x and LAND_WIDTH_MASK) = 0) and (Land[y + 12, x] > 255) then 
+        if (( (y + 12) and LAND_HEIGHT_MASK) = 0) and ((x and LAND_WIDTH_MASK) = 0) and (Land[y + 12, x] > 255) then 
             for i:= 0 to 1 do
                 AddVisualGear(x - 5 + Random(10), y + 12, vgtDust);
 
--- a/hedgewars/uLandGraphics.pas	Sun Dec 26 19:30:51 2010 +0100
+++ b/hedgewars/uLandGraphics.pas	Sun Dec 26 15:29:04 2010 -0500
@@ -199,7 +199,7 @@
                LandPixels[t div 2, i div 2]:= LandBackPixel(i, t)
            end
        else
-           if ((Land[t, i] and lfObject) <> 0) or disableLandBack then
+           if ((Land[t, i] and lfObject) <> 0) or (disableLandBack and ((Land[t, i] and lfIndestructible) = 0)) then
                if (cReducedQuality and rqBlurryLand) = 0 then
                    LandPixels[t, i]:= 0
                else
@@ -217,7 +217,7 @@
                LandPixels[t div 2, i div 2]:= LandBackPixel(i, t)
            end
        else
-           if ((Land[t, i] and lfObject) <> 0) or disableLandBack then
+           if ((Land[t, i] and lfObject) <> 0) or (disableLandBack and ((Land[t, i] and lfIndestructible) = 0)) then
                if (cReducedQuality and rqBlurryLand) = 0 then
                    LandPixels[t, i]:= 0
                else
@@ -235,7 +235,7 @@
                LandPixels[t div 2, i div 2]:= LandBackPixel(i, t)
            end
        else
-           if ((Land[t, i] and lfObject) <> 0) or disableLandBack then
+           if ((Land[t, i] and lfObject) <> 0) or (disableLandBack and ((Land[t, i] and lfIndestructible) = 0)) then
                if (cReducedQuality and rqBlurryLand) = 0 then
                    LandPixels[t, i]:= 0
                else
@@ -253,7 +253,7 @@
                LandPixels[t div 2, i div 2]:= LandBackPixel(i, t)
            end
        else
-           if ((Land[t, i] and lfObject) <> 0) or disableLandBack then
+           if ((Land[t, i] and lfObject) <> 0) or (disableLandBack and ((Land[t, i] and lfIndestructible) = 0)) then
               if (cReducedQuality and rqBlurryLand) = 0 then
                   LandPixels[t, i]:= 0
               else
@@ -415,7 +415,7 @@
                 else
                     LandPixels[ty div 2, tx div 2]:= LandBackPixel(tx, ty)
             else
-                if ((Land[ty, tx] and lfObject) <> 0) or disableLandBack then
+                if ((Land[ty, tx] and lfObject) <> 0) or (disableLandBack and ((Land[ty, tx] and lfIndestructible) = 0)) then
                     if (cReducedQuality and rqBlurryLand) = 0 then
                         LandPixels[ty, tx]:= 0
                     else
@@ -527,7 +527,7 @@
                 else
                     LandPixels[ty div 2, tx div 2]:= LandBackPixel(tx, ty)
             else
-              if ((Land[ty, tx] and lfObject) <> 0) or disableLandBack then
+              if ((Land[ty, tx] and lfObject) <> 0) or (disableLandBack and ((Land[ty, tx] and lfIndestructible) = 0)) then
                 if (cReducedQuality and rqBlurryLand) = 0 then
                 LandPixels[ty, tx]:= 0
                 else
Binary file share/hedgewars/Data/Graphics/missions.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Graphics/missions.svg	Sun Dec 26 15:29:04 2010 -0500
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.0 r9654"
+   width="32"
+   height="160"
+   sodipodi:docname="missions.svg"
+   inkscape:export-filename="/mnt/y/src/hedgewars/share/hedgewars/Data/Graphics/missions.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6" />
+  <sodipodi:namedview
+     pagecolor="#000000"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="1"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1035"
+     inkscape:window-height="801"
+     id="namedview4"
+     showgrid="false"
+     inkscape:zoom="1.4142135"
+     inkscape:cx="35.985891"
+     inkscape:cy="87.849309"
+     inkscape:window-x="274"
+     inkscape:window-y="0"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg2" />
+  <image
+     width="32"
+     height="64"
+     xlink:href="data:image/png;base64,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 "
+     id="image10" />
+  <image
+     id="image2995"
+     xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACUAAAAgCAYAAACVU7GwAAAABHNCSVQICAgIfAhkiAAABJNJREFU WIXFmF1sFFUUgL87258t7baBtbTYPxpJSozNViEhxioPTRWk1AhY+Wk0SiCpv936gBp8UZ5MtPhC 06hRHgyRSHzAEo0xRmljhbS2ShpIoIqFNJFObFbL1m1nrw93Zmd2O/tbxJPc3Llnz7nzzTn3njs7 QkoJgL/UwzKkFWgGBoGvs3HUQ8YSXd5ySEw5BexwjMeALmA41wmXC9WZAATQBPTpvdF7c51UWwbQ KqDPGry6RVJcaIP5g1r7/wHVBZQANFZBT6vkQLN0/v727YYKAEeswRttEo8GPY9I7iiJ2TT4g9re 2wkVS1vLeknLegkCin1waEdctN7xB7WSpe63HmozcD+AR1NRAsADFMPTj0vqK2O2lag0/2dQ9cAu 4Kil6NgoaawCBFAI+MBTBkcOxq8tf1Db7w9qTZneSCQpng3ABtT23mC2MqdBcSH8+FqUNWVAPrAS KAdWAAuwrUtj+KLrPUfMNmb1esiIpILaiVov5emeprtFqtQJoBioMLHzAAmjI9D6csaJOAd06SFj 1A3qj2RAdX4IVKt0BWrggbsk3nygAFWxygEvChJgAcbPw8hPgvFJGJ8S/HI9NZgeMjYlQjUDZwHW rYamask9VdBUA4EaSanXZRoNVakqgFLUYrdEAjfNx/wTWFTq8SkYuya4cB3GplQfsY+/Qj1kRJzH TLN10dYo7V3lBuIx+wJUyooSgMBe/KUmUBgwILAWArUSJAxdkXT0a2BDeSD+7Bu0Lo5+I/AVQXer tAE8ZstDLex8VLpWmHBu4gF8Zh8GFuw2ehk6P9SYX4hZj+ghI+wG9QmwD+CtLwSlZfDsVqme2ALJ cwBasAJ3EaaPD7UZDNUmrsCeYxqhcMxSx1HP3ErCaaDNGvS/Itn1qLRhkgFkKL9eg+0vaEzfiKlu Ag/rIWPIUrjt2e2YCx7guV7Bl0PilgBN34Cd3XFAEmhzAiWDAngI+BnAiMIzbwrODgs1RY4yM6uA rk7HqbfqIePbRNtU1e0pYBIgsgi7XxdMXCQnsMgCdPRoXPotTt2ufxz9ys0+FdQ48ASq0jAfgemr AiLZgxXkkwj0pH48epq/3e3TnQOjqNIHQJ1XQgi1rbMEq1sTN7zAX+Y8OUAB1FoX1V5gFlVzsoSq roxzqLUqfC5Qlah6zWofeDVU+hazh0qIVH0q/3RQ9bFJ/Q6tIOvyUFURN6xNYpYRlJ26ldL2cNSs +X/gg1OCTXs0Dr0rnDUoTurujBvWu1spSfe/z47UKhPEPGJCcwqm/6RgZlbZXP5d8NHngo4tkhf3 SRrW2hNVV0gc4U0ZqYyhav2ABjNheO99wfEBwVx4qYMRhRNnBCfOCLZtlnR3Su6722VNpZB06Yu9 VBhR6PlU0PiSxrHPlgBdAnYDPziVA98JWg9otD+vMTEp8Np/Viv9Qa0o2U2TvaNbshf15pBMxoDD +snoAHPAPPi7tCbUiX8whd+I3hvdCMD+pdswHRTA98CDCbpzwGFSf2FZZ8L1JOingceA8+D+1SUT KFARa0ZFZhCYSGWcIOUmnPWpqA+I7VE3qH8BqQVoftFh258AAAAASUVORK5CYII= "
+     height="32"
+     width="37"
+     transform="translate(-2.849091,128)" />
+  <g
+     id="g3012"
+     transform="translate(3.526751,56.553389)">
+    <rect
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,22.125649)"
+       y="88.945457"
+       x="-40.261818"
+       height="35"
+       width="35"
+       id="rect2998"
+       style="opacity:0.25;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       style="opacity:0.25;color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3000"
+       width="35"
+       height="35"
+       x="-40.261818"
+       y="88.945457"
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-9.8744506)" />
+    <rect
+       style="opacity:0.25;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3002"
+       width="35"
+       height="35"
+       x="-40.261818"
+       y="88.945457"
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-41.87455)" />
+    <rect
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-105.87475)"
+       y="88.945457"
+       x="-40.261818"
+       height="35"
+       width="35"
+       id="rect3004"
+       style="opacity:0.25;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-73.933131)"
+       y="88.945457"
+       x="-40.261818"
+       height="35"
+       width="35"
+       id="rect3006"
+       style="opacity:0.25;color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    <rect
+       style="opacity:0.25;color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3008"
+       width="35"
+       height="35"
+       x="-40.261818"
+       y="88.945457"
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-137.87485)" />
+    <rect
+       style="opacity:0.25;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="rect3010"
+       width="35"
+       height="35"
+       x="-40.261818"
+       y="88.945457"
+       transform="matrix(0.91428571,0,0,0.91428571,-6.7159462,-169.87495)" />
+  </g>
+  <g
+     transform="translate(10.202908,47.269491)"
+     style="font-size:40px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#ffd200;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+     id="text3032">
+    <path
+       d="m 15.008966,57.838889 c -2.3e-5,2.466685 -0.538616,4.060811 -1.894194,5.467417 -1.054946,1.094657 -2.303221,1.89304 -3.417418,2.888389 -1.3887681,1.240633 -1.8022524,2.151037 -1.8022524,4.521446 0,1.718757 -6.5358094,1.427418 -6.5633568,0 -0.00582,-0.301783 -0.05,-0.583326 -0.05,-0.85 1e-7,-2.533323 0.6717945,-3.740325 1.8678617,-5.409835 0.4039444,-0.563839 1.8283618,-1.49799 3.6593592,-3.067417 1.2023381,-1.030576 2.3,-2.429147 2.3,-3.5625 0,-1.633311 -0.9833482,-2.45 -2.95,-2.45 -1.1000118,0 -2.8107328,0.297552 -4.15,0.85 -1.32754865,0.547614 -2.2951374,1.530825 -3.00000002,2.2625 -1.92487248,1.998093 -4.28738218,-3.008672 -3.04999998,-4.7 1.9555342,-2.672941 5.3333248,-3.8 9.6,-3.8 2.6999845,0 4.8973613,0.620316 6.6000003,1.85 1.897364,1.370318 2.849977,3.36669 2.85,6 m -8.3591072,20.8 c -0.5518911,0.552235 -1.3601607,0.947998 -2.1408931,0.95 -0.7898695,0.002 -1.616293,-0.387535 -2.170848,-0.95 -0.5966823,-0.605193 -0.9922789,-1.500131 -0.988987,-2.35 0.00323,-0.834533 0.4064749,-1.702393 0.988987,-2.3 0.5561006,-0.570511 1.3741506,-1.002113 2.170848,-1 0.7876395,0.0021 1.5872817,0.439737 2.1408931,1 0.5914971,0.598604 1.0376637,1.458463 1.041039,2.3 0.00344,0.856748 -0.4354103,1.743994 -1.041039,2.35 z"
+       style="font-size:50px;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ffd200;fill-opacity:1;stroke:none;font-family:Blue Highway;-inkscape-font-specification:Blue Highway Bold"
+       id="path3037"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="ssssssssssssssssaaaaaaaaa" />
+  </g>
+  <path
+     style="font-size:50px;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ff9c00;fill-opacity:1;stroke:none;font-family:Blue Highway;-inkscape-font-specification:Blue Highway Bold"
+     d="M 15.75,33.1875 C 11.483325,33.1875 8.1117842,34.327059 6.15625,37 5.028237,38.541836 6.8909916,42.82865 8.6875,42.0625 8.0444122,40.856972 7.7704917,39.232528 8.375,38.40625 10.330534,35.733309 13.702075,34.625 17.96875,34.625 c 1.955092,0 3.631493,0.322395 5.0625,0.96875 C 22.823618,35.402875 22.61217,35.23379 22.375,35.0625 20.672361,33.832816 18.449984,33.1875 15.75,33.1875 z M 18.0625,38.5 c -0.36442,0 -0.787239,0.06124 -1.25,0.125 1.665883,0.119721 2.5,0.903015 2.5,2.40625 0,1.133353 -1.110162,2.531924 -2.3125,3.5625 -1.830997,1.569427 -3.252306,2.498661 -3.65625,3.0625 C 12.147683,49.32576 11.5,50.529177 11.5,53.0625 c 0,0.266674 0.02543,0.573217 0.03125,0.875 0.0106,0.549281 0.99272,0.899475 2.1875,1.0625 -0.01384,-0.169434 -0.03125,-0.342106 -0.03125,-0.5 0,-2.533323 0.678933,-3.73674 1.875,-5.40625 0.403944,-0.563839 1.825253,-1.524323 3.65625,-3.09375 1.202338,-1.030576 2,-2.804147 2,-3.9375 0,-1.633311 -1.189598,-3.5625 -3.15625,-3.5625 z m -3.34375,17.6875 c -0.796697,-0.0021 -1.631399,0.429489 -2.1875,1 -0.582512,0.597607 -0.96552,1.477967 -0.96875,2.3125 -0.0033,0.849869 0.372068,1.738557 0.96875,2.34375 0.437274,0.443511 1.063363,0.753702 1.6875,0.875 -0.490318,-0.578134 -0.867683,-1.273279 -0.90625,-2 -0.04423,-0.833366 0.417488,-1.683643 1,-2.28125 0.556101,-0.570512 1.35955,-0.99997 2.15625,-1 0.216333,-8e-6 0.441721,0.0441 0.65625,0.09375 -0.09179,-0.117261 -0.179304,-0.240579 -0.28125,-0.34375 -0.360664,-0.364997 -0.814342,-0.638112 -1.3125,-0.8125 -0.216821,-0.04117 -0.436191,-0.09985 -0.625,-0.15625 -0.04206,-0.0037 -0.08293,-0.02996 -0.125,-0.03125 -0.02023,-6.23e-4 -0.04228,5.4e-5 -0.0625,0 z"
+     id="path3062"
+     inkscape:connector-curvature="0"
+     transform="translate(0,64.05818)" />
+  <g
+     id="g3029"
+     transform="translate(0.177849,64.05818)">
+    <path
+       d="m 11.303256,19.777238 c -0.03334,0.33335 -0.211103,1.313662 -0.2,2.95 l 0.03499,5.156745 C 11.15092,29.751896 5.868348,29.631926 5.8554955,27.6982 l -0.033619,-5.058136 c -0.00821,-1.235092 -0.1724587,-2.214142 -0.2,-2.95 L 5.2166164,8.8621882 C 5.1452969,6.9566491 11.942601,6.8898624 11.828856,9.1826235 L 11.303252,19.777238 M 10.475624,36.052449 C 9.9512694,36.590344 9.1763118,36.97929 8.4251706,36.98741 7.571138,36.996642 6.668651,36.585565 6.0714109,35.975023 c -0.5908326,-0.603991 -0.9531814,-1.505086 -0.95,-2.35 0.00312,-0.829485 0.3773402,-1.699903 0.95,-2.3 0.5338724,-0.559451 1.3271485,-0.982489 2.1004527,-0.984961 0.8456366,-0.0027 1.7124043,0.457898 2.3037604,1.062387 0.584611,0.597594 0.996737,1.464011 1,2.3 0.0033,0.8513 -0.405757,1.740412 -1,2.35 z"
+       style="font-weight:bold;fill:#ffd200;fill-opacity:1;stroke:none;marker:none;-inkscape-font-specification:Blue Highway Bold"
+       id="path3005"
+       inkscape:connector-curvature="0"
+       sodipodi:nodetypes="sssssssssaaaaaaaaa"
+       transform="matrix(0.99836317,0.05719244,-0.05719244,0.99836317,8.584569,-6.7971157)" />
+    <path
+       style="font-weight:bold;fill:#ff9c00;fill-opacity:1;stroke:none;marker:none;-inkscape-font-specification:Blue Highway Bold"
+       d="M 15.625,1.125 C 14.438815,1.2272908 13.482917,1.6288129 13.46875,2.34375 L 13.25,13.1875 c -0.01459,0.736229 0.09369,1.70396 0.03125,2.9375 l -0.25,5.0625 c -0.04178,0.825355 0.904644,1.349212 2,1.5625 l 0.25,-4.9375 C 15.343691,16.57896 15.235411,15.611229 15.25,14.875 L 15.46875,4.03125 C 15.492135,2.8511455 18.103432,2.5359468 20.03125,3 20.099847,1.6183348 17.571739,0.95712267 15.625,1.125 z m -0.4375,22.84375 c -0.77218,-0.04176 -1.591255,0.315748 -2.15625,0.84375 -0.606043,0.566363 -1.043195,1.422051 -1.09375,2.25 -0.0515,0.843349 0.288428,1.769456 0.84375,2.40625 0.390629,0.44794 0.917913,0.777885 1.5,0.96875 -0.340694,-0.613055 -0.563593,-1.3216 -0.53125,-2 0.0395,-0.82855 0.487707,-1.683637 1.09375,-2.25 0.564995,-0.528002 1.385861,-0.91088 2.15625,-0.84375 0.237058,0.02066 0.462552,0.06891 0.6875,0.15625 -0.08149,-0.120517 -0.156589,-0.236641 -0.25,-0.34375 -0.331037,-0.379581 -0.776742,-0.719615 -1.25,-0.9375 -0.126241,-0.05171 -0.264005,-0.09341 -0.375,-0.15625 -0.206086,-0.06414 -0.413898,-0.08233 -0.625,-0.09375 z"
+       transform="translate(-0.17784887,0)"
+       id="path3077"
+       inkscape:connector-curvature="0" />
+    <path
+       transform="matrix(0.99836317,0.05719244,-0.05719244,0.99836317,8.584569,-6.7971157)"
+       sodipodi:nodetypes="sssssssssaaaaaaaaa"
+       inkscape:connector-curvature="0"
+       id="path3007"
+       style="font-weight:bold;color:#000000;fill:none;stroke:#120d02;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;-inkscape-font-specification:Blue Highway Bold"
+       d="m 11.303256,19.777238 c -0.03334,0.33335 -0.211103,1.313662 -0.2,2.95 l 0.03499,5.156745 C 11.15092,29.751896 5.868348,29.631926 5.8554955,27.6982 l -0.033619,-5.058136 c -0.00821,-1.235092 -0.1724587,-2.214142 -0.2,-2.95 L 5.2166164,8.8621882 C 5.1452969,6.9566491 11.942601,6.8898624 11.828856,9.1826235 L 11.303252,19.777238 M 10.475624,36.052449 C 9.9512694,36.590344 9.1763118,36.97929 8.4251706,36.98741 7.571138,36.996642 6.668651,36.585565 6.0714109,35.975023 c -0.5908326,-0.603991 -0.9531814,-1.505086 -0.95,-2.35 0.00312,-0.829485 0.3773402,-1.699903 0.95,-2.3 0.5338724,-0.559451 1.3271485,-0.982489 2.1004527,-0.984961 0.8456366,-0.0027 1.7124043,0.457898 2.3037604,1.062387 0.584611,0.597594 0.996737,1.464011 1,2.3 0.0033,0.8513 -0.405757,1.740412 -1,2.35 z" />
+  </g>
+  <g
+     id="g3039"
+     style="font-size:40px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;color:#000000;fill:none;stroke:#120d02;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans"
+     transform="translate(10.202908,47.269491)">
+    <path
+       sodipodi:nodetypes="ssssssssssssssssaaaaaaaaa"
+       inkscape:connector-curvature="0"
+       id="path3041"
+       style="font-size:50px;font-variant:normal;font-weight:bold;font-stretch:normal;color:#000000;fill:none;stroke:#120d02;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Blue Highway;-inkscape-font-specification:Blue Highway Bold"
+       d="m 15.008966,57.838889 c -2.3e-5,2.466685 -0.538616,4.060811 -1.894194,5.467417 -1.054946,1.094657 -2.303221,1.89304 -3.417418,2.888389 -1.3887681,1.240633 -1.8022524,2.151037 -1.8022524,4.521446 0,1.718757 -6.5358094,1.427418 -6.5633568,0 -0.00582,-0.301783 -0.05,-0.583326 -0.05,-0.85 1e-7,-2.533323 0.6717945,-3.740325 1.8678617,-5.409835 0.4039444,-0.563839 1.8283618,-1.49799 3.6593592,-3.067417 1.2023381,-1.030576 2.3,-2.429147 2.3,-3.5625 0,-1.633311 -0.9833482,-2.45 -2.95,-2.45 -1.1000118,0 -2.8107328,0.297552 -4.15,0.85 -1.32754865,0.547614 -2.2951374,1.530825 -3.00000002,2.2625 -1.92487248,1.998093 -4.28738218,-3.008672 -3.04999998,-4.7 1.9555342,-2.672941 5.3333248,-3.8 9.6,-3.8 2.6999845,0 4.8973613,0.620316 6.6000003,1.85 1.897364,1.370318 2.849977,3.36669 2.85,6 m -8.3591072,20.8 c -0.5518911,0.552235 -1.3601607,0.947998 -2.1408931,0.95 -0.7898695,0.002 -1.616293,-0.387535 -2.170848,-0.95 -0.5966823,-0.605193 -0.9922789,-1.500131 -0.988987,-2.35 0.00323,-0.834533 0.4064749,-1.702393 0.988987,-2.3 0.5561006,-0.570511 1.3741506,-1.002113 2.170848,-1 0.7876395,0.0021 1.5872817,0.439737 2.1408931,1 0.5914971,0.598604 1.0376637,1.458463 1.041039,2.3 0.00344,0.856748 -0.4354103,1.743994 -1.041039,2.35 z" />
+  </g>
+</svg>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Maps/Blizzard/CMakeLists.txt	Sun Dec 26 15:29:04 2010 -0500
@@ -0,0 +1,7 @@
+install(FILES
+	map.png
+	map.cfg
+	mask.png
+	preview.png
+	DESTINATION ${SHAREPATH}Data/Maps/Blizzard)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/share/hedgewars/Data/Maps/Blizzard/map.cfg	Sun Dec 26 15:29:04 2010 -0500
@@ -0,0 +1,1 @@
+Snow
Binary file share/hedgewars/Data/Maps/Blizzard/map.png has changed
Binary file share/hedgewars/Data/Maps/Blizzard/mask.png has changed
Binary file share/hedgewars/Data/Maps/Blizzard/preview.png has changed
--- a/share/hedgewars/Data/Maps/CMakeLists.txt	Sun Dec 26 19:30:51 2010 +0100
+++ b/share/hedgewars/Data/Maps/CMakeLists.txt	Sun Dec 26 15:29:04 2010 -0500
@@ -4,6 +4,7 @@
 	Basketball
 	Bath
 	Battlefield
+	Blizzard
 	Blox
 	Bubbleflow
 	Cake
--- a/share/hedgewars/Data/Maps/CTF_Blizzard/map.lua	Sun Dec 26 19:30:51 2010 +0100
+++ b/share/hedgewars/Data/Maps/CTF_Blizzard/map.lua	Sun Dec 26 15:29:04 2010 -0500
@@ -49,30 +49,19 @@
 -- removed poisoning of flag carriers
 -- removed health adjustments for flag carriers due to aforementioned poisons
 
---------------
---game text
---------------
-
-local caption = {
-	["en"] = "CTF: Blizzard v0.4"
-	}
-
-local subcaption = {
-	["en"] = "by Mikade"
-	}
+---------
+-- 0.5
+---------
 
-local goal = {
-	["en"] = "Capture the enemy flag."
-	}
+-- added translation support, hopefully
+-- added ctf rules
+-- added effects to the teleporters
+-- added aura round spawning area
+-- changed the aura around the flag carrier / flag to an aura and added some support for this
+-- changed things so the seed is no longer always the same...
 
--- To handle missing texts we define a small wrapper function that
--- we'll use to retrieve text.
-local function loc(text)
-	if text == nil then return "**missing**"
-	elseif text[L] == nil then return text["en"]
-	else return text[L]
-	end
-end
+
+loadfile(GetDataPath() .. "Scripts/Locale.lua")()
 
 ---------------------------------------------------------------
 ----------lots of bad variables and things
@@ -85,6 +74,7 @@
 local roundsCounter = 0	-- used to determine when to spawn more crates
 						-- currently every 6 TURNS, should this work
 						-- on ROUNDS instead?
+local effectTimer = 0
 
 --------------------------
 -- hog and team tracking variales
@@ -115,9 +105,22 @@
 local FTTC = 0 -- flag thief tracker counter
 --local fThiefsHealed = false
 
+local fSpawnC = {}
 local fCirc = {} -- flag/carrier marker circles
 local fCol = {} -- colour of the clans
 
+local vCircX = {}
+local vCircY = {}
+local vCircMinA = {}
+local vCircMaxA = {}
+local vCircType = {}
+local vCircPulse = {}
+local vCircFuckAll = {}
+local vCircRadius = {}
+local vCircWidth = {}
+local vCircCol = {}
+
+
 --------------------------------
 --zone and teleporter variables
 --------------------------------
@@ -138,6 +141,25 @@
 ------------------------
 -- see on gameTick also
 
+function ManageTeleporterEffects()
+	effectTimer = effectTimer + 1
+	if effectTimer > 50 then -- 100
+		effectTimer = 0
+		
+		for i = 0,1 do		
+			eX = 10 + zXMin[i] + GetRandom(zWidth[i]-10)
+			eY = 50 + zYMin[i] + GetRandom(zHeight[i]-110)
+
+	-- steam and smoke and DUST look good, smokering looks trippy 
+	-- smoketrace and eviltrace are not effected by wind?
+	-- chunk is a LR falling gear
+			tempE = AddVisualGear(eX, eY, vgtDust, 0, false)		
+			g1, g2, g3, g4, g5, g6, g7, g8, g9, g10 = GetVisualGearValues(tempE)
+			SetVisualGearValues(tempE, eX, eY, g3, g4, g5, g6, g7, g8, g9, fCol[i])
+		end
+	end 
+end
+
 function CreateZone(xMin, yMin, width, height)
 
 
@@ -179,14 +201,15 @@
 		winner = "Blue"
 	end
 
-	if fCaptures[teamID] == 3 then
+	if fCaptures[teamID] == 2 then
 		for i = 0, (numhhs-1) do
 			if GetHogClan(hhs[i]) == alt then
 				SetEffect(hhs[i], heResurrectable, false)
 				SetHealth(hhs[i],0)
 			end
 		end
-		ShowMission("GAME OVER!", "Victory for the " .. winner .. " Team!", "Hooray!", 0, 0)
+		--ShowMission("GAME OVER!", "Victory for the " .. winner .. " Team!", "Hooray!", 0, 0)
+		ShowMission(loc("GAME OVER!"), loc("Victory for the ") .. GetHogTeamName(CurrentHedgehog), loc("Hooray!"), 0, 0)
 	end
 
 end
@@ -200,7 +223,7 @@
 			--fGear[i] = SpawnHealthCrate(fSpawnX[i],fSpawnY[i])
 			fNeedsRespawn[i] = false
 			fIsMissing[i] = false -- new, this should solve problems of a respawned flag being "returned" when a player tries to score
-			AddCaption("Flag respawned!")
+			AddCaption(loc("Flag respawned!"))
 		end
 
 	end
@@ -234,7 +257,10 @@
 				fIsMissing[bbq] = false
 				fNeedsRespawn[bbq] = true
 				fCaptures[wtf] = fCaptures[wtf] +1					--fCaptures[wtf]
-				ShowMission("You have SCORED!!", "Red Team: " .. fCaptures[0], "Blue Team: " .. fCaptures[1], -amBazooka, 0)
+				
+				--ShowMission(loc("You have SCORED!!"), "Red Team: " .. fCaptures[0], "Blue Team: " .. fCaptures[1], -amBazooka, 0)
+				ShowMission(loc("You have SCORED!!"), GetHogTeamName(CurrentHedgehog) .. ": " .. fCaptures[wtf], loc("Opposing Team: ") .. fCaptures[bbq], 0, 0)
+
 				PlaySound(sndVictory)
 				--SetEffect(fThief[bbq], hePoisoned, false)
 				fThief[bbq] = nil -- player no longer has the enemy flag
@@ -248,9 +274,9 @@
 				-- NEW ADDIITON, does this work? Should make it possible to return your flag and then score in the same turn
 				if fIsMissing[wtf] == true then
 					HandleRespawns() -- this will set fIsMissing[wtf] to false :)
-					AddCaption("Flag returned!")
+					AddCaption(loc("Flag returned!"))
 				elseif fIsMissing[wtf] == false then
-					AddCaption("That was pointless. The flag will respawn next round.")
+					AddCaption(loc("That was pointless.") .. loc("The flag will respawn next round."))
 				end
 
 				--fIsMissing[wtf] = false
@@ -266,7 +292,7 @@
 					end
 				end
 
-				AddCaption("Flag captured!")
+				AddCaption(loc("Flag captured!"))
 
 			else --below line doesnt usually get called
 				AddCaption("Hmm... that wasn't supposed to happen...")
@@ -285,7 +311,7 @@
 				fGear[wtf] = nil
 				fIsMissing[wtf] = true
 				fNeedsRespawn[wtf] = true
-				AddCaption("Boom! The flag will respawn next round.")
+				AddCaption(loc("Boom!") .. " " .. loc("The flag will respawn next round."))
 			end
 
 		end
@@ -298,7 +324,7 @@
 		fGear[wtf] = nil
 		fIsMissing[wtf] = true
 		fNeedsRespawn[wtf] = true
-		AddCaption("The flag will respawn next round.")
+		AddCaption(loc("The flag will respawn next round."))
 	end
 
 end
@@ -326,12 +352,15 @@
 	
 	for i = 0, 1 do
 		if fIsMissing[i] == false then -- draw a circle at the flag's spawning place
-			SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, 33, 2, fCol[i])
+			--SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], 20, 200, 0, 0, 100, 33, 2, fCol[i])
+			SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
 		elseif (fIsMissing[i] == true) and (fNeedsRespawn[i] == false) then
 			if fThief[i] ~= nil then -- draw circle round flag carrier
-				SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], 20, 200, 0, 0, 100, 33, 2, fCol[i])
+				--SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], 20, 200, 0, 0, 100, 33, 2, fCol[i])
+				SetVisualGearValues(fCirc[i], fThiefX[i], fThiefY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
 			elseif fThief[i] == nil then -- draw cirle round dropped flag
-				SetVisualGearValues(fCirc[i], GetX(fGear[i]), GetY(fGear[i]), 20, 200, 0, 0, 100, 33, 2, fCol[i])
+				--SetVisualGearValues(fCirc[i], GetX(fGear[i]), GetY(fGear[i]), 20, 200, 0, 0, 100, 33, 2, fCol[i])
+				SetVisualGearValues(fCirc[i], GetX(fGear[i]),GetY(fGear[i]), vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
 			end
 		end
 		
@@ -466,21 +495,21 @@
 
 		r = GetRandom(8)
 		if r == 0 then
-			SpawnAmmoCrate(0,0,amSwitch)
+			SpawnUtilityCrate(0,0,amSwitch)
 		elseif r == 1 then
-			SpawnAmmoCrate(0,0,amTeleport)
+			SpawnUtilityCrate(0,0,amTeleport)
 		elseif r == 2 then
-			SpawnAmmoCrate(0,0,amJetpack)
+			SpawnUtilityCrate(0,0,amJetpack)
 		elseif r == 3 then
 			SpawnUtilityCrate(0,0,amExtraTime)
 		elseif r == 4 then
-			SpawnAmmoCrate(0,0,amGirder)
+			SpawnUtilityCrate(0,0,amGirder)
 		elseif r == 5 then
 			SpawnAmmoCrate(0,0,amDynamite)
 		elseif r == 6 then
 			SpawnAmmoCrate(0,0,amFlamethrower)
 		elseif r == 7 then
-			SpawnAmmoCrate(0,0,amPortalGun)
+			SpawnUtilityCrate(0,0,amPortalGun)
 		end
 
 	end
@@ -494,7 +523,6 @@
 function onGameInit()
 
 	-- Things we don't modify here will use their default values.
-	Seed = 0 -- The base number for the random number generator
 	GameFlags = gfDivideTeams -- Game settings and rules
 	TurnTime = 30000 -- (was 30) The time the player has to move each round (in ms)
 	CaseFreq = 0 -- The frequency of crate drops
@@ -503,7 +531,7 @@
 	Explosives = 0 -- The number of explosives being placed
 	Delay = 10 -- The delay between each round
 	SuddenDeathTurns = 99 -- suddendeath is off, effectively
-	Map = "CTF_Blizzard" -- The map to be played
+	Map = "Blizzard" -- The map to be played
 	Theme = "Snow" -- The theme to be used "Nature"
 
 end
@@ -511,7 +539,9 @@
 
 function onGameStart()
 
-	ShowMission(loc(caption), loc(subcaption), loc(goal), 0, 0)
+	--ShowMission(loc(caption), loc(subcaption), loc(goal), 0, 0)
+	ShowMission(loc("CTF_BLIZZARD") .. " 0.5", loc("by mikade"), loc(" - Return the enemy flag to your base to score | - First team to 3 captures wins | - You may only score when your flag is in your base | - Hogs will drop the flag if killed, or drowned | - Dropped flags may be returned or recaptured | - Hogs respawn when killed"), 0, 0)
+
 
 	-- initialize teleporters
 	redTel = CreateZone(342,1316,42,449)	-- red teleporter
@@ -556,10 +586,27 @@
 	for i = 0, 1 do
 		fGear[i] = SpawnAmmoCrate(fSpawnX[i],fSpawnY[i],amSkip)
 		fCirc[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
-		fCol[i] = GetClanColor(i)		
+		fCol[i] = GetClanColor(i)	
+
+		fSpawnC[i] = AddVisualGear(fSpawnX[i],fSpawnY[i],vgtCircle,0,true)
+		SetVisualGearValues(fSpawnC[i], fSpawnX[i],fSpawnY[i], 10, 200, 1, 10, 0, 300, 5, fCol[i])		
+		
+	
 		fIsMissing[i] = false
 		fNeedsRespawn[i] = false
 		fCaptures[i] = 0
+
+		vCircMinA[i] = 20
+		vCircMaxA[i] = 255
+		vCircType[i] = 1
+		vCircPulse[i] = 10
+		vCircFuckAll[i] = 0
+		vCircRadius[i] = 150
+		vCircWidth[i] = 5
+		vCircCol[i] = fCol[i]
+
+		SetVisualGearValues(fCirc[i], fSpawnX[i],fSpawnY[i], vCircMinA[i], vCircMaxA[i], vCircType[i], vCircPulse[i], vCircFuckAll[i], vCircRadius[i], vCircWidth[i], vCircCol[i])
+
 	end
 
 end
@@ -612,6 +659,7 @@
 	end
 
 	HandleCircles()
+	ManageTeleporterEffects()
 
 end
 
@@ -641,7 +689,7 @@
 
 	SetAmmo(amParachute, 9, 0, 0, 0)
 	SetAmmo(amRope, 9, 0, 0, 0)
-	SetAmmo(amTeleport, 0, 0, 0, 1)
+	SetAmmo(amTeleport, 1, 0, 0, 1)
 	SetAmmo(amJetpack, 1, 0, 0, 1)
 
 	SetAmmo(amSwitch, 2, 0, 0, 1)
Binary file share/hedgewars/Data/Maps/CTF_Blizzard/map.png has changed
--- a/share/hedgewars/Data/Maps/Control/map.lua	Sun Dec 26 19:30:51 2010 +0100
+++ b/share/hedgewars/Data/Maps/Control/map.lua	Sun Dec 26 15:29:04 2010 -0500
@@ -24,6 +24,12 @@
 
 -- added translation support
 
+--------
+-- 0.4
+--------
+
+-- added scaling scoring based on clans: 300 points to win - 25 per team in game
+
 -----------------
 --script begins
 -----------------
@@ -37,6 +43,7 @@
 ------------------ "Oh well, they probably have the memory"
 
 local gameWon = false
+local pointLimit = 300
 
 local vCirc = {}
 local vCircCount = 0
@@ -279,8 +286,7 @@
 
 function onGameStart()
 
-	ShowMission(loc("CONTROL v0.3"), loc("by mikade"), loc("Control pillars to score points."), 0, 0)
-
+	
 
 	-- build zones
 	cPoint[0] = CreateZone(571,47,120,80)
@@ -318,7 +324,9 @@
 	--new improved placement schematics aw yeah
 	RebuildTeamInfo()
 
-
+	for i = 0, (numTeams-1) do
+		pointLimit = pointLimit - 25
+	end
 	--SetGearPosition(hhs[0], 631, 82)
 	--SetGearPosition(hhs[1], 1088, 684)
 	--SetGearPosition(hhs[2], 381, 1569)
@@ -337,6 +345,9 @@
 		--AddCaption(zz) -- number of times it took to work
 	end
 
+	ShowMission(loc("CONTROL v0.3"), loc("by mikade"), loc("Control pillars to score points.") .. "|" .. loc("Goal:") .. " " .. pointLimit .. " " .. loc("points"), 0, 0)
+
+
 end
 
 
@@ -350,7 +361,7 @@
 	if gameWon == false then
 	
 		for i = 0, (numTeams-1) do
-			if teamScore[i] >= 150 then
+			if teamScore[i] >= pointLimit then --150
 				gameWon = true
 				winnerClan = i			
 			end