# HG changeset patch # User unc0rr # Date 1221745145 0 # Node ID 903058d382c7102cd158b0ca51ecf5d17c82db8d # Parent 86318e7714c578055b53a3266e8fd2e54b062a40 Add watermelon weapon (without proper sprites yet) diff -r 86318e7714c5 -r 903058d382c7 QTfrontend/hwconsts.cpp.in --- a/QTfrontend/hwconsts.cpp.in Thu Sep 18 12:40:46 2008 +0000 +++ b/QTfrontend/hwconsts.cpp.in Thu Sep 18 13:39:05 2008 +0000 @@ -29,7 +29,7 @@ QStringList * Themes; QStringList * mapList; -QString * cDefaultAmmoStore = new QString("eammstore 9391929422199121032235111"); +QString * cDefaultAmmoStore = new QString("eammstore 93919294221991210322351111"); QColor * color1 = new QColor( 0, 255, 255); QColor * color2 = new QColor(255, 127, 127); diff -r 86318e7714c5 -r 903058d382c7 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/GSHandlers.inc Thu Sep 18 13:39:05 2008 +0000 @@ -137,7 +137,16 @@ begin dX:= rndSign(GetRandom * _0_1); dY:= (GetRandom - _3) * _0_08; - AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtCluster, 0, dX, dY, 0); + AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtCluster, 0, dX, dY, 25); + end + end; + gtWatermelon: begin + doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 75, EXPLAutoSound); + for i:= 0 to 5 do + begin + dX:= rndSign(GetRandom * _0_1); + dY:= (GetRandom - _3) * _0_08; + AddGear(hwRound(Gear^.X), hwRound(Gear^.Y), gtCluster, 0, dX, dY, 75); end end end; @@ -157,7 +166,7 @@ doStepFallingGear(Gear); if (Gear^.State and gstCollision) <> 0 then begin - doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 25, EXPLAutoSound); + doMakeExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), Gear^.Timer, EXPLAutoSound); DeleteGear(Gear); exit end; diff -r 86318e7714c5 -r 903058d382c7 hedgewars/HHHandlers.inc --- a/hedgewars/HHHandlers.inc Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/HHHandlers.inc Thu Sep 18 13:39:05 2008 +0000 @@ -166,7 +166,8 @@ CurAmmoGear:= AddGear(hwRound(X) + hwSign(dX) * 3, hwRound(Y), gtCake, 0, xx, _0, 0); PlaySound(sndLaugh, false) end; - amSeduction: FollowGear:= AddGear(hwRound(X), hwRound(Y), gtSeduction, 0, xx, yy); + amSeduction: FollowGear:= AddGear(hwRound(X), hwRound(Y), gtSeduction, 0, xx, yy, 0); + amWatermelon: FollowGear:= AddGear(hwRound(X), hwRound(Y), gtWatermelon, 0, xx*Power/cPowerDivisor, yy*Power/cPowerDivisor, Ammo^[CurSlot, CurAmmo].Timer); end; uStats.AmmoUsed(Ammo^[CurSlot, CurAmmo].AmmoType); diff -r 86318e7714c5 -r 903058d382c7 hedgewars/uAIAmmoTests.pas --- a/hedgewars/uAIAmmoTests.pas Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/uAIAmmoTests.pas Thu Sep 18 13:39:05 2008 +0000 @@ -69,7 +69,8 @@ (proc: @TestMortar; flags: 0), // amMortar (proc: nil; flags: 0), // amKamikaze (proc: nil; flags: 0), // amCake - (proc: nil; flags: 0) // amSeduction + (proc: nil; flags: 0), // amSeduction + (proc: nil; flags: 0) // amBanana ); const BadTurn = Low(LongInt) div 4; diff -r 86318e7714c5 -r 903058d382c7 hedgewars/uConsts.pas --- a/hedgewars/uConsts.pas Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/uConsts.pas Thu Sep 18 13:39:05 2008 +0000 @@ -56,7 +56,7 @@ gtFirePunch, gtATStartGame, gtATSmoothWindCh, gtATFinishGame, gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, gtGirder, gtTeleport, gtSmallDamage, gtSwitcher, gtTarget, gtMortar, - gtWhip, gtKamikaze, gtCake, gtSeduction); + gtWhip, gtKamikaze, gtCake, gtSeduction, gtWatermelon); TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire); @@ -75,7 +75,7 @@ amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch, amWhip, amBaseballBat, amParachute, amAirAttack, amMineStrike, amBlowTorch, amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, - amSeduction); + amSeduction, amWatermelon); THWFont = (fnt16, fntBig, fntSmall); @@ -814,7 +814,7 @@ PosSprite: sprAmAirplane), (NameId: sidMineStrike; NameTex: nil; - Probability: 400; + Probability: 300; NumberInCase: 1; Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_NeedTarget or @@ -853,7 +853,7 @@ PosSprite: sprWater), (NameId: sidGirder; NameTex: nil; - Probability: 400; + Probability: 300; NumberInCase: 3; Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_NeedTarget or @@ -874,7 +874,7 @@ PosSprite: sprAmGirder), (NameId: sidTeleport; NameTex: nil; - Probability: 400; + Probability: 300; NumberInCase: 1; Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_NoCrosshair or @@ -990,6 +990,26 @@ isDamaging: true; SkipTurns: 0; PosCount: 1; + PosSprite: sprWater), + (NameId: sidWatermelon; + NameTex: nil; + Probability: 200; + NumberInCase: 1; + Ammo: (Propz: ammoprop_Timerable or + ammoprop_Power or + ammoprop_AltUse; + Count: 1; + NumPerTurn: 0; + Timer: 3000; + Pos: 0; + AmmoType: amWatermelon); + Slot: 1; + TimeAfterTurn: 3000; + minAngle: 0; + maxAngle: 0; + isDamaging: true; + SkipTurns: 0; + PosCount: 1; PosSprite: sprWater) ); diff -r 86318e7714c5 -r 903058d382c7 hedgewars/uGears.pas --- a/hedgewars/uGears.pas Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/uGears.pas Thu Sep 18 13:39:05 2008 +0000 @@ -139,7 +139,8 @@ @doStepWhip, @doStepKamikaze, @doStepCake, - @doStepSeduction + @doStepSeduction, + @doStepBomb ); procedure InsertGearToList(Gear: PGear); @@ -207,6 +208,11 @@ Result^.Elasticity:= _0_6; Result^.Friction:= _0_96; end; + gtWatermelon: begin + Result^.Radius:= 4; + Result^.Elasticity:= _0_8; + Result^.Friction:= _0_995; + end; gtHedgehog: begin Result^.Radius:= cHHRadius; Result^.Elasticity:= _0_35; @@ -315,7 +321,7 @@ Result^.Radius:= 20 end; gtCake: begin - Result^.Health:= 4096; + Result^.Health:= 2048; Result^.Radius:= 7; Result^.Z:= cOnHHZ; if hwSign(dX) > 0 then Result^.Angle:= 1 else Result^.Angle:= 3 diff -r 86318e7714c5 -r 903058d382c7 hedgewars/uLocale.pas --- a/hedgewars/uLocale.pas Thu Sep 18 12:40:46 2008 +0000 +++ b/hedgewars/uLocale.pas Thu Sep 18 13:39:05 2008 +0000 @@ -23,7 +23,7 @@ sidDynamite, sidBaseballBat, sidFirePunch, sidSeconds, sidParachute, sidAirAttack, sidMineStrike, sidBlowTorch, sidGirder, sidTeleport, sidSwitch, sidMortar, sidWhip, - sidKamikaze, sidCake, sidSeduction); + sidKamikaze, sidCake, sidSeduction, sidWatermelon); TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused, sidConfirm, sidSuddenDeath); diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/bg.txt --- a/share/hedgewars/Data/Locale/bg.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/bg.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Камикадзе 00:24=Cake 00:25=Seduction +00:26=Watermelon bomb 01:00=Бой! 01:01=Равен рунд diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/de.txt --- a/share/hedgewars/Data/Locale/de.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/de.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze 00:24=Cake 00:25=Seduction +00:26=Watermelon bomb 01:00=Auf in die Schlacht! 01:01=Unentschieden diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/en.txt --- a/share/hedgewars/Data/Locale/en.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/en.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze 00:24=Cake 00:25=Seduction +00:26=Watermelon bomb 01:00=Let's fight! 01:01=Round draw diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/es.txt --- a/share/hedgewars/Data/Locale/es.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/es.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze 00:24=Tarta 00:25=Seducción +00:26=Watermelon bomb 01:00=Luchad! 01:01=Empate diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/fr.txt --- a/share/hedgewars/Data/Locale/fr.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/fr.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze 00:24=Gateau 00:25=Seduction +00:26=Watermelon bomb 01:00=C'est parti! 01:01=Round ex aequo diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/it.txt --- a/share/hedgewars/Data/Locale/it.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/it.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Attacco Kamikaze 00:24=Torta 00:25=Seduzione +00:26=Watermelon bomb 01:00=Combattiamo! 01:01=Round in parità diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/pl.txt --- a/share/hedgewars/Data/Locale/pl.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/pl.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze 00:24=Ciasto 00:25=Uwodzenie +00:26=Watermelon bomb 01:00=Walczmy! 01:01=Remis diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/ru.txt --- a/share/hedgewars/Data/Locale/ru.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/ru.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Камикадзе 00:24=Торт 00:25=Соблазнение +00:26=Арбузная бомба 01:00=Вперёд к победе! 01:01=Ничья diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/sk.txt --- a/share/hedgewars/Data/Locale/sk.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/sk.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikadze 00:24=Cake 00:25=Seduction +00:26=Watermelon bomb 01:00=Do boja! 01:01=Remíza diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/sv.txt --- a/share/hedgewars/Data/Locale/sv.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/sv.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Kamikaze (självmord) 00:24=Tårta 00:25=Seduction +00:26=Watermelon bomb 01:00=Nu kör vi! 01:01=Oavgjort diff -r 86318e7714c5 -r 903058d382c7 share/hedgewars/Data/Locale/uk.txt --- a/share/hedgewars/Data/Locale/uk.txt Thu Sep 18 12:40:46 2008 +0000 +++ b/share/hedgewars/Data/Locale/uk.txt Thu Sep 18 13:39:05 2008 +0000 @@ -26,6 +26,7 @@ 00:23=Камікадзе 00:24=Торт 00:25=Зваблення +00:26=Watermelon bomb 01:00=Уперед до перемоги! 01:01=Нічия