Enable birdy. Has egg bombing. Eggs should possibly have a dX component. No poison yet, no egg sprite.
--- a/QTfrontend/hwconsts.cpp.in Thu Mar 25 23:03:21 2010 +0000
+++ b/QTfrontend/hwconsts.cpp.in Fri Mar 26 00:26:32 2010 +0000
@@ -31,10 +31,10 @@
QStringList * mapList;
QString * cDefaultAmmoStore = new QString(
- "9391929422199121032235111001201000000211"
- "0404000441400444645644444774776112211144"
- "0000000000000205500000040007004000000000"
- "1311111312111111123114111111111111111211"
+ "93919294221991210322351110012010000002111"
+ "04040004414004446456444447747761122111441"
+ "00000000000002055000000400070040000000001"
+ "13111113121111111231141111111111111112111"
);
int cAmmoNumber = cDefaultAmmoStore->size() / 4;
@@ -42,30 +42,30 @@
QList< QPair<QString, QString> >()
<< qMakePair(QString("Default"), *cDefaultAmmoStore)
<< qMakePair(QString("Crazy"), QString(
- "9999999999999999992999999999999999299999"
- "1111111111111111111111111111111111111111"
- "0000000000000000000000000000000000000000"
- "1311111312111111123114111111111111111211"))
+ "99999999999999999929999999999999992999991"
+ "11111111111111111111111111111111111111111"
+ "00000000000000000000000000000000000000001"
+ "13111113121111111231141111111111111112111"))
<< qMakePair(QString("Pro mode"), QString(
- "9090009000000000000009000000000000000000"
- "0000000000000000000000000000000000000000"
- "0000000000000205500000040007004000000000"
- "1111111111111111111111111111111111111111"))
+ "90900090000000000000090000000000000000001"
+ "00000000000000000000000000000000000000001"
+ "00000000000002055000000400070040000000001"
+ "11111111111111111111111111111111111111111"))
<< qMakePair(QString("Shoppa"), QString(
- "0000009900000000000000000000000000000000"
- "4444410044244402210112121222422000000002"
- "0000000000000000000000000000000000000000"
- "1111111111111111111111111111111111111111"))
+ "00000099000000000000000000000000000000001"
+ "44444100442444022101121212224220000000021"
+ "00000000000000000000000000000000000000001"
+ "11111111111111111111111111111111111111111"))
<< qMakePair(QString("Basketball"),QString(
- "0000009000000900000000000000000000000000"
- "0000000000000000000000000000000000000000"
- "0000000000000005500000040007004000000000"
- "1111111111111111111111111111111111111111"))
+ "00000090000009000000000000000000000000001"
+ "00000000000000000000000000000000000000001"
+ "00000000000000055000000400070040000000001"
+ "11111111111111111111111111111111111111111"))
<< qMakePair(QString("Minefield"), QString(
- "0000009900090000000300000000000000000000"
- "0000000000000000000000000000000000000000"
- "0000000000000205500000040007004000000000"
- "1111111111111111111111111111111111111111"))
+ "00000099000900000003000000000000000000001"
+ "00000000000000000000000000000000000000001"
+ "00000000000002055000000400070040000000001"
+ "11111111111111111111111111111111111111111"))
;
QColor * color1 = new QColor(221, 0, 0);
--- a/hedgewars/HHHandlers.inc Thu Mar 25 23:03:21 2010 +0000
+++ b/hedgewars/HHHandlers.inc Fri Mar 26 00:26:32 2010 +0000
@@ -191,8 +191,8 @@
amNapalm: AddGear(Ammo^[CurSlot, CurAmmo].Pos, 0, gtAirAttack, 2, _0, _0, 0);
amDrill: FollowGear:= AddGear(hwRound(X), hwRound(Y), gtDrill, 0, xx*Power/cPowerDivisor, yy*Power/cPowerDivisor, 0);
amBallgun: CurAmmoGear:= AddGear(hwRound(X), hwRound(Y), gtBallgun, 0, xx * _0_5, yy * _0_5, 0);
- //amJetpack: CurAmmoGear:= AddGear(hwRound(X), hwRound(Y), gtJetpack, 0, _0, _0, 0);
- amJetpack: CurAmmoGear:= AddGear(hwRound(X), hwRound(Y) - 120, gtBirdy, 0, _0, _0, 0);
+ amJetpack: CurAmmoGear:= AddGear(hwRound(X), hwRound(Y), gtJetpack, 0, _0, _0, 0);
+ amBirdy: CurAmmoGear:= AddGear(hwRound(X), hwRound(Y) - 120, gtBirdy, 0, _0, _0, 0);
amLowGravity: begin
PlaySound(sndLowGravity);
cGravity:= cMaxWindSpeed / 2
--- a/hedgewars/uAIAmmoTests.pas Thu Mar 25 23:03:21 2010 +0000
+++ b/hedgewars/uAIAmmoTests.pas Fri Mar 26 00:26:32 2010 +0000
@@ -90,7 +90,8 @@
(proc: nil; flags: 0), // amVampiric
(proc: nil; flags: 0), // amSniperRifle
(proc: nil; flags: 0), // amJetpack
- (proc: @TestMolotov; flags: 0) // amMolotov
+ (proc: @TestMolotov; flags: 0), // amMolotov
+ (proc: nil; flags: 0) // amBirdy
);
const BadTurn = Low(LongInt) div 4;
--- a/hedgewars/uConsts.pas Thu Mar 25 23:03:21 2010 +0000
+++ b/hedgewars/uConsts.pas Fri Mar 26 00:26:32 2010 +0000
@@ -121,7 +121,7 @@
amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake,
amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun,
amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime,
- amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov);
+ amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy);
THWFont = (fnt16, fntBig, fntSmall, CJKfnt16, CJKfntBig, CJKfntSmall);
@@ -1689,7 +1689,6 @@
ammoprop_NoCrosshair or
ammoprop_DontHold or
ammoprop_Utility or
- //ammoprop_Utility;
ammoprop_AltAttack;
Count: 1;
InitialCount: 1;
@@ -1725,6 +1724,30 @@
isDamaging: true;
SkipTurns: 0;
PosCount: 1;
+ PosSprite: sprWater),
+ (NameId: sidBirdy;
+ NameTex: nil;
+ Probability: 20;
+ NumberInCase: 1;
+ Ammo: (Propz: ammoprop_NoRoundEndHint or
+ ammoprop_ForwMsgs or
+ ammoprop_NoCrosshair or
+ ammoprop_DontHold or
+ ammoprop_Utility;
+ Count: 1;
+ InitialCount: 1;
+ NumPerTurn: 1;
+ Timer: 0;
+ Pos: 0;
+ AmmoType: amBirdy;
+ AttackVoice: sndNone);
+ Slot: 5;
+ TimeAfterTurn: 3000;
+ minAngle: 0;
+ maxAngle: 0;
+ isDamaging: false;
+ SkipTurns: 0;
+ PosCount: 1;
PosSprite: sprWater)
);
--- a/hedgewars/uLocale.pas Thu Mar 25 23:03:21 2010 +0000
+++ b/hedgewars/uLocale.pas Fri Mar 26 00:26:32 2010 +0000
@@ -28,7 +28,7 @@
sidKamikaze, sidCake, sidSeduction, sidWatermelon,
sidHellishBomb, sidDrill, sidBallgun, sidNapalm, sidRCPlane,
sidLowGravity, sidExtraDamage, sidInvulnerable, sidExtraTime,
- sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, sidMolotov);
+ sidLaserSight, sidVampiric, sidSniperRifle, sidJetpack, sidMolotov, sidBirdy);
TMsgStrId = (sidStartFight, sidDraw, sidWinner, sidVolume, sidPaused,
sidConfirm, sidSuddenDeath, sidRemaining, sidFuel, sidSync,
--- a/hedgewars/uMisc.pas Thu Mar 25 23:03:21 2010 +0000
+++ b/hedgewars/uMisc.pas Fri Mar 26 00:26:32 2010 +0000
@@ -657,18 +657,18 @@
// int, longint longword and byte
CursorMovementX := 0;
CursorMovementY := 0;
- GameTicks := 0;
+ GameTicks := 0;
TrainingTimeInc := 10000;
TrainingTimeInD := 500;
TrainingTimeInM := 5000;
TrainingTimeMax := 60000;
TimeTrialStartTime := 0;
TimeTrialStopTime := 0;
- cWaterLine := LAND_HEIGHT;
+ cWaterLine := LAND_HEIGHT;
cGearScrEdgesDist := 240;
cHealthDecrease := 0;
- GameFlags := 0;
+ GameFlags := 0;
TrainingFlags := 0;
TurnTimeLeft := 0;
cSuddenDTurns := 15;
@@ -677,7 +677,7 @@
cTemplateFilter := 0;
cHedgehogTurnTime := 45000;
- cMinesTime := 3000;
+ cMinesTime := 3000;
cMaxAIThinkTime := 9000;
cCloudsNumber := 9;
@@ -688,7 +688,7 @@
cBits := 32;
cTagsMask := 0;
KBnum := 0;
- InitStepsFlags := 0;
+ InitStepsFlags := 0;
RealTicks := 0;
AttackBar := 0; // 0 - none, 1 - just bar at the right-down corner, 2 - like in WWP
@@ -698,40 +698,40 @@
zoom := 2.0;
ZoomValue := 2.0;
cBitsStr := '32';
- WeaponTooltipTex := nil;
+ WeaponTooltipTex:= nil;
// booleans
- cLaserSighting := false;
+ cLaserSighting := false;
cVampiric := false;
cArtillery := false;
- flagMakeCapture := false;
- bBetweenTurns := false;
- bWaterRising := false;
- isCursorVisible := false;
- isTerminated := false;
+ flagMakeCapture := false;
+ bBetweenTurns := false;
+ bWaterRising := false;
+ isCursorVisible := false;
+ isTerminated := false;
isInLag := false;
isPaused := false;
- isMusicEnabled := false;
- isInMultiShoot := false;
+ isMusicEnabled := false;
+ isInMultiShoot := false;
isSpeed := false;
- fastUntilLag := false;
+ fastUntilLag := false;
cVSyncInUse := true;
- isSoundEnabled := true;
+ isSoundEnabled := true;
isSEBackup := true;
// init flags
- recordFileName := '';
+ recordFileName := '';
cShowFPS := false;
cCaseFactor := 5; {0..9}
- cLandAdditions := 4;
+ cLandAdditions := 4;
cExplosives := 2;
cFullScreen := false;
- cReducedQuality := false;
- cLocaleFName := 'en.txt';
+ cReducedQuality := false;
+ cLocaleFName := 'en.txt';
cSeed := '';
cInitVolume := 50;
- cVolumeDelta := 0;
- cTimerInterval := 8;
+ cVolumeDelta := 0;
+ cTimerInterval := 8;
cHasFocus := true;
cInactDelay := 1250;
cAltDamage := true;
--- a/share/hedgewars/Data/Locale/en.txt Thu Mar 25 23:03:21 2010 +0000
+++ b/share/hedgewars/Data/Locale/en.txt Fri Mar 26 00:26:32 2010 +0000
@@ -41,6 +41,7 @@
00:38=Sniper Rifle
00:39=Flying Saucer
00:40=Molotov Cocktail
+00:41=Birdy
01:00=Let's fight!
01:01=Round draw