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,iVBORw0KGgoAAAANSUhEUgAAACAAAABACAYAAAB7jnWuAAAABHNCSVQICAgIfAhkiAAACEtJREFU aIHtmGtsVOcRhp/vnLNeX7C9a7vGd3MzxtilXAWlqR23GChKaNyopEoVKjVqg6qkatU/ufxAShWl pGqbBkVqlLRqiSGUqqUVpQnBDaHIdcDC5Q4GAwZfMAZ7116vvd7dc6Y/zpq114sJUVOjiFcaab/b zDtzzjczZxUgTCG0qTR+n8B9Ap9tAg4HZLkUSk2+z7hbxdOSYeYMgwQH9PdZtHdbhE0wreieGbka JaUa2VkKz3XhRItFR48VV19cAs4E0BSEwhA2o/OuNMWKcp3Hi4TSJGHnkOL0dQenzoTpuiEkOWHx fIOF82D9dIsFKcLBBYo/TtMwjtm6pmcpnIZCaXDmkjmeQEoSLJ1vkJ4BShSeXuFKt0Wv1/Zy6ed1 Hl4jbLhq4fyPUPQj+O0FhfeGRtcNk+QkRUamourLJqt/YHu8bodwxaHRcVUjPQ2KcyE/B/oC0Naj ogQMHSpKDAoL4HvzLMp9wt/CGgcGdM6fVJxsNUlJAE0D51t29j4V0ug8Hw3/4JBw86bQ0KRwv6TQ TcW7+zSu9tgRdaXCw2ssvrRSSH5aOOzQbAKFORrBoJCaAmtXCZXP2Bof+qlJX5Jw8bTG8Ahcahf+ vk9x4ycaDyyDpiOKpuNw9JxJSiL4A3CiJUxeloHUKHr64L3fw5m2MKnJioI8DV2HrFxBwuDzCkai E5Yt1DCDEByBcy2KnS9p5GSBx4TGv2icbLVfhIsdJje9GjOLFNkuixmFkJKsmFOoUVKk0XFd6PcL udlQkid80KYRCkNKkiJkCoODiivt0NyoaClUtDZaGOWzdR5dLLgKhLo9Ou9/KBzL0lj+BaF2rcWD K4TWNp30VCjMFfq8iuEAZLphdhE4ExTrqnQqv2jS2KRoaNb4XKaQnyuEw0L5XEVlhs6pc7C4HNZU Wvxpr8a2o0LYAmOaU1H9jonz58Kv+jSOnAqTk6lISzFYPSSsWGLx130GZSXwnQ0mR5oVzac0RGDu bIvifI3qlcIj37Qozlc4EnRWV1k4EmBRhbB0oYkAb2zTebzWRNeFQ0cULa0mSoExMCz0+yB8RTFn BrR36xTmKAxd6OqBdV8V1jxokeWGZSuFTBfkTrdIcAjpafDdb1nkThcYgqWLhdnFJu5sAQXLFgoC DA3Dj79vMq9MeHunjncAJNKFKHeakkdqNeYXwDdqLH7ztk6CA9ZWmyQ6YckC4WYfhMOQW4TdvphA YuT3EAz4oM+jGBiE/gFFKAxOp5CeCvPmCIZhGxwJKF58VWfPB8LZSyamBQqQjDTFghKN1160SEsD y4S8HCHBAZaAZdmKL7QpOq+Bd0Bx4bKivUsRGLF55OcI2RmQkiy40m3v/ENw7qKG2yXUPGDiThPe 2G7w3iGLy51WNBP2DQiXO4W33tF54Zkw2QVAGNDh0nnFuVbFteuKQBCysrJZsvLrfPvpH+JwgJHg irjhwBKDhn9/xNySWaQl+xE0DGcenuuNtJ77Jw0fvYl/OMhIcHzmlVFZUWHIH17RxHNcyfG9mjz/ lCFPPeaQXzyrS/32HOnv+p1YoRty7FizOJ1O0XVdqqqqRESkufmoVFZWiq7rUl5eLiKWiFjy/HPP SU3NKjlz+ogc2PuC1Kw0JDkxanNcKr7SbbHvQ0UgoEidJswvEebPy6Si6s903swlMbMAZSTQ23uC RYsWsXDhArZseQUQlFL09vZSXV3N/vf/gYQuoRDmzErH759Leno2e/71a3w+u8aMQhHTFVfM0VlQ qiifa1Fd8xDLV73Jq1vr2Lx5M+vXr2d73TZAsKwgvr6jWOJELMESCxEBMQkHPYwMtYEMoqkwmjLo 9Qzz2i9fpukEnL1s3ipyE6rh+SsmadMM3C5FYfEiNCODhoYGtry8mdVfmUVP+z5OHd1J46HddF4b ZmAQRoIQDtnuKKXQlKAiv8NhCATBNwidPcLVbmtc6Z4QAbCrYtlMncceXcai8hGSkxUnjx+n62Ya HV0mHZ1+PAPg9Qn+YSEYhJAZvduaFlVsmjASFEZCsVYmIQB2dSzO1ZiepWGGbC/8AWFwyMI/DCMh wYxpRD4JbksAQKmoV58WJiXw/8Bntyu+T+A+gY+Lu/wySgW+BlQBBUBeZL4L6AAOAu8CvrvSKneW UoFdAgGxU5OI2y1SXm6L2y235u09uyJnPo7uSRcTBbYKhEQpkdpakbo6EY9HJsDjsddqa0WUEoFQ 5GziJyWQL9AkIFJUJFJfP9Ho7VBfb5+xI9IU0XVXBPIFOgREnnxSpL//4xsfRX+/fdYm0TEZiXhh tz3fseMOVvx+WybBjh1jIxH3ccRObL3leVzs3y+ycaNIRYWIrttSUWHP7d8f90g0ElvvRKBUICRF RXHC7vOJbNo09nWPL5s22XtjHof9ToTi3Y6xg12iVJwXzucTKS29s/FRKS2dQKK+fvR27LodgVSB gNTWxonh7TzXInK7SMSgtnY0T6TGI7BBwL7LE575BA8R2Y1IV0R2R+Zi98W8E3V1o0sb4hF4XSBO ktm4caLxbkS8MdIdh8TGjeNUeTyjS6/fIjCmGBXgdoPLFZOom5vHj3+G/WEai8TI2iRnXS5wu21b oxhDII+8PMZjaAjOnmXc7uVxjI9i+XiNnD1r6xgD20bU0JSX4zEEuujqillNToaysujYAg5Pou1w ZM8oyspsHWNg24gaGkOgA48HvN4YpYsXjx8/CwTiGA9E1iY56/WCx2PbikPgIAB798YoeeKJ8eMW 7H7kADAUkQORuZbJz0Z1Hxw3f68koilPxfdEMZrycnxPNCRT3pLdE03p2McxZW157O34dD5M7vIf kv/9p9n9v2j+Cwn+wnSyymInAAAAAElFTkSuQmCC "
+ 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