hedgewars/uConsts.pas
changeset 263 36379e6abcdd
parent 211 558476056205
child 267 bf7c1503f569
--- a/hedgewars/uConsts.pas	Thu Nov 23 19:48:39 2006 +0000
+++ b/hedgewars/uConsts.pas	Thu Nov 23 20:10:42 2006 +0000
@@ -33,19 +33,19 @@
                    sprMineOn, sprCase, sprFAid, sprDynamite, sprPower,
                    sprClusterBomb, sprClusterParticle, sprFlame, sprHorizont,
                    sprSky, sprAMBorders, sprAMSlot, sprAMSlotName, sprAMAmmos,
-                   sprAMSlotKeys, sprAMSelection, sprFinger);
+                   sprAMSlotKeys, sprAMSelection, sprFinger, sprAirBomb);
      TGearType  = (gtCloud, gtAmmo_Bomb, gtHedgehog, gtAmmo_Grenade, gtHealthTag,
                    gtGrave, gtUFO, gtShotgunShot, gtPickHammer, gtRope,
                    gtSmokeTrace, gtExplosion, gtMine, gtCase, gtDEagleShot, gtDynamite,
                    gtTeamHealthSorter, gtClusterBomb, gtCluster, gtShover, gtFlame,
                    gtFirePunch, gtATStartGame, gtATSmoothWindCh, gtATFinishGame,
-                   gtParachute);
+                   gtParachute, gtAirAttack, gtAirBomb);
      TGearsType = set of TGearType;
      TSound     = (sndGrenadeImpact, sndExplosion, sndThrowPowerUp, sndThrowRelease, sndSplash,
                    sndShotgunReload, sndShotgunFire, sndGraveImpact, sndMineTick);
      TAmmoType  = (amGrenade, amClusterBomb, amBazooka, amUFO, amShotgun, amPickHammer,
                    amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch,
-                   amBaseballBat, amParachute);
+                   amBaseballBat, amParachute, amAirAttack);
      THWFont    = (fnt16, fntBig);
      TCapGroup  = (capgrpGameState, capgrpAmmoinfo, capgrpNetSay, capgrpVolume);
      THHFont    = record
@@ -77,7 +77,7 @@
       msgGettingConfig     = 'Getting game config...';
 
 const
-      cNetProtoVersion = 1;
+      cNetProtoVersion = 2;
 
       MAXNAMELEN = 32;
 
@@ -134,7 +134,7 @@
       gm_HJump  = $00000080;
       gm_Destroy= $00000100;
 
-      cMaxSlotIndex       = 7;
+      cMaxSlotIndex       = 8;
       cMaxSlotAmmoIndex   = 1;
 
       ammoprop_Timerable    = $00000001;
@@ -144,6 +144,7 @@
       ammoprop_AttackInFall = $00000010;
       ammoprop_AttackInJump = $00000020;
       ammoprop_NoCrosshair  = $00000040;
+      ammoprop_AttackingPut = $00000080;
       AMMO_INFINITE = High(LongWord);
 
       EXPLAllDamageInRadius = $00000001;
@@ -249,7 +250,8 @@
                      (FileName:     'Ammos'; Path: ptAmmoMenu; Width:  32; Height: 32; hasAlpha: false),// sprAMAmmos
                      (FileName:  'SlotKeys'; Path: ptAmmoMenu; Width:  32; Height: 32; hasAlpha: false),// sprAMSlotKeys
                      (FileName: 'Selection'; Path: ptAmmoMenu; Width:  32; Height: 32; hasAlpha: false),// sprAMSelection
-                     (FileName:    'Finger'; Path: ptGraphics; Width:  32; Height: 48; hasAlpha: false) // sprFinger
+                     (FileName:    'Finger'; Path: ptGraphics; Width:  32; Height: 48; hasAlpha: false),// sprFinger
+                     (FileName:   'AirBomb'; Path: ptGraphics; Width:  32; Height: 32; hasAlpha: false) // sprAirBomb
                      );
       Soundz: array[TSound] of record
                                        FileName: String[31];
@@ -274,7 +276,8 @@
                                   TimeAfterTurn: Longword;
                                   end = (
                                   (NameId: sidGrenade;
-                                   Ammo: (Propz: ammoprop_Timerable or ammoprop_Power;
+                                   Ammo: (Propz: ammoprop_Timerable or
+                                                 ammoprop_Power;
                                           Count: AMMO_INFINITE;
                                           NumPerTurn: 0;
                                           Timer: 3000;
@@ -282,7 +285,8 @@
                                    Slot: 1;
                                    TimeAfterTurn: 3000),
                                   (NameId: sidClusterBomb;
-                                   Ammo: (Propz: ammoprop_Timerable or ammoprop_Power;
+                                   Ammo: (Propz: ammoprop_Timerable or
+                                                 ammoprop_Power;
                                           Count: 5;
                                           NumPerTurn: 0;
                                           Timer: 3000;
@@ -298,7 +302,8 @@
                                    Slot: 0;
                                    TimeAfterTurn: 3000),
                                   (NameId: sidUFO;
-                                   Ammo: (Propz: ammoprop_Power or ammoprop_NeedTarget;
+                                   Ammo: (Propz: ammoprop_Power or
+                                                 ammoprop_NeedTarget;
                                           Count: 2;
                                           NumPerTurn: 0;
                                           Timer: 0;
@@ -314,12 +319,15 @@
                                    Slot: 2;
                                    TimeAfterTurn: 3000),
                                   (NameId: sidPickHammer;
-                                   Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_AttackInFall or ammoprop_AttackInJump;
+                                   Ammo: (Propz: ammoprop_ForwMsgs or
+                                                 ammoprop_AttackInFall or
+                                                 ammoprop_AttackInJump or
+                                                 ammoprop_NoCrosshair;
                                           Count: 2;
                                           NumPerTurn: 0;
                                           Timer: 0;
                                           AmmoType: amPickHammer);
-                                   Slot: 5;
+                                   Slot: 6;
                                    TimeAfterTurn: 0),
                                   (NameId: sidSkip;
                                    Ammo: (Propz: 0;
@@ -327,15 +335,17 @@
                                           NumPerTurn: 0;
                                           Timer: 0;
                                           AmmoType: amSkip);
-                                   Slot: 7;
+                                   Slot: 8;
                                    TimeAfterTurn: 0),
                                   (NameId: sidRope;
-                                   Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_AttackInFall or ammoprop_AttackInJump;
+                                   Ammo: (Propz: ammoprop_ForwMsgs or
+                                                 ammoprop_AttackInFall or
+                                                 ammoprop_AttackInJump;
                                           Count: 5;
                                           NumPerTurn: 0;
                                           Timer: 0;
                                           AmmoType: amRope);
-                                   Slot: 6;
+                                   Slot: 7;
                                    TimeAfterTurn: 0),
                                   (NameId: sidMine;
                                    Ammo: (Propz: ammoprop_NoCrosshair;
@@ -354,7 +364,9 @@
                                    Slot: 2;
                                    TimeAfterTurn: 3000),
                                    (NameId: sidDynamite;
-                                    Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_AttackInJump or ammoprop_AttackInFall;
+                                    Ammo: (Propz: ammoprop_NoCrosshair or
+                                                  ammoprop_AttackInJump or
+                                                  ammoprop_AttackInFall;
                                            Count: 1;
                                            NumPerTurn: 0;
                                            Timer: 0;
@@ -362,7 +374,10 @@
                                     Slot: 4;
                                     TimeAfterTurn: 5000),
                                    (NameId: sidFirePunch;
-                                    Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_ForwMsgs or ammoprop_AttackInJump or ammoprop_AttackInFall;
+                                    Ammo: (Propz: ammoprop_NoCrosshair or
+                                                  ammoprop_ForwMsgs or
+                                                  ammoprop_AttackInJump or
+                                                  ammoprop_AttackInFall;
                                            Count: AMMO_INFINITE;
                                            NumPerTurn: 0;
                                            Timer: 0;
@@ -378,12 +393,24 @@
                                     Slot: 3;
                                     TimeAfterTurn: 5000),
                                   (NameId: sidParachute;
-                                   Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_AttackInJump or ammoprop_AttackInFall;
+                                   Ammo: (Propz: ammoprop_ForwMsgs or
+                                                 ammoprop_AttackInJump or
+                                                 ammoprop_AttackInFall;
                                           Count: 2;
                                           NumPerTurn: 0;
                                           Timer: 0;
                                           AmmoType: amParachute);
-                                   Slot: 6;
+                                   Slot: 7;
+                                   TimeAfterTurn: 0),
+                                  (NameId: sidAirAttack;
+                                   Ammo: (Propz: ammoprop_NoCrosshair or
+                                                 ammoprop_NeedTarget or
+                                                 ammoprop_AttackingPut;
+                                          Count: 3;
+                                          NumPerTurn: 0;
+                                          Timer: 0;
+                                          AmmoType: amAirAttack);
+                                   Slot: 5;
                                    TimeAfterTurn: 0));
 
 implementation