hedgewars/uGearsList.pas
changeset 8145 6408c0ba4ba1
parent 7754 e81dc9bef8b8
child 8161 0b8beacff8a5
equal deleted inserted replaced
8143:3f2ba6debbdd 8145:6408c0ba4ba1
    33 
    33 
    34 uses uRandom, uUtils, uConsts, uVariables, uAmmos, uTeams, uStats,
    34 uses uRandom, uUtils, uConsts, uVariables, uAmmos, uTeams, uStats,
    35     uTextures, uScript, uRenderUtils, uAI, uCollisions,
    35     uTextures, uScript, uRenderUtils, uAI, uCollisions,
    36     uGearsRender, uGearsUtils, uDebug;
    36     uGearsRender, uGearsUtils, uDebug;
    37 
    37 
       
    38 const
       
    39     GearKindAmmoTypeMap : array [TGearType] of TAmmoType = (    
       
    40 (*          gtFlame *)   amNothing
       
    41 (*       gtHedgehog *) , amNothing
       
    42 (*           gtMine *) , amMine
       
    43 (*           gtCase *) , amNothing
       
    44 (*     gtExplosives *) , amNothing
       
    45 (*        gtGrenade *) , amGrenade
       
    46 (*          gtShell *) , amBazooka
       
    47 (*          gtGrave *) , amNothing
       
    48 (*            gtBee *) , amBee
       
    49 (*    gtShotgunShot *) , amShotgun
       
    50 (*     gtPickHammer *) , amPickHammer
       
    51 (*           gtRope *) , amRope
       
    52 (*     gtDEagleShot *) , amDEagle
       
    53 (*       gtDynamite *) , amDynamite
       
    54 (*    gtClusterBomb *) , amClusterBomb
       
    55 (*        gtCluster *) , amClusterBomb
       
    56 (*         gtShover *) , amBaseballBat  // Shover is only used for baseball bat right now
       
    57 (*      gtFirePunch *) , amFirePunch
       
    58 (*    gtATStartGame *) , amNothing
       
    59 (*   gtATFinishGame *) , amNothing
       
    60 (*      gtParachute *) , amParachute
       
    61 (*      gtAirAttack *) , amAirAttack
       
    62 (*        gtAirBomb *) , amAirAttack
       
    63 (*      gtBlowTorch *) , amBlowTorch
       
    64 (*         gtGirder *) , amGirder
       
    65 (*       gtTeleport *) , amTeleport
       
    66 (*       gtSwitcher *) , amSwitch
       
    67 (*         gtTarget *) , amNothing
       
    68 (*         gtMortar *) , amMortar
       
    69 (*           gtWhip *) , amWhip
       
    70 (*       gtKamikaze *) , amKamikaze
       
    71 (*           gtCake *) , amCake
       
    72 (*      gtSeduction *) , amSeduction
       
    73 (*     gtWatermelon *) , amWatermelon
       
    74 (*     gtMelonPiece *) , amWatermelon
       
    75 (*    gtHellishBomb *) , amHellishBomb
       
    76 (*        gtWaterUp *) , amNothing
       
    77 (*          gtDrill *) , amDrill
       
    78 (*        gtBallGun *) , amBallgun
       
    79 (*           gtBall *) , amBallgun
       
    80 (*        gtRCPlane *) , amRCPlane
       
    81 (*gtSniperRifleShot *) , amSniperRifle
       
    82 (*        gtJetpack *) , amJetpack
       
    83 (*        gtMolotov *) , amMolotov
       
    84 (*          gtBirdy *) , amBirdy
       
    85 (*            gtEgg *) , amBirdy
       
    86 (*         gtPortal *) , amPortalGun
       
    87 (*          gtPiano *) , amPiano
       
    88 (*        gtGasBomb *) , amGasBomb
       
    89 (*    gtSineGunShot *) , amSineGun
       
    90 (*   gtFlamethrower *) , amFlamethrower
       
    91 (*          gtSMine *) , amSMine
       
    92 (*    gtPoisonCloud *) , amNothing
       
    93 (*         gtHammer *) , amHammer
       
    94 (*      gtHammerHit *) , amHammer
       
    95 (*    gtResurrector *) , amResurrector
       
    96 (*    gtPoisonCloud *) , amNothing
       
    97 (*       gtSnowball *) , amSnowball
       
    98 (*          gtFlake *) , amNothing
       
    99 (*      gtStructure *) , amStructure  // TODO - This will undoubtedly change once there is more than one structure
       
   100 (*        gtLandGun *) , amLandGun
       
   101 (*         gtTardis *) , amTardis
       
   102 (*         gtIceGun *) , amIceGun
       
   103 (*        gtAddAmmo *) , amNothing
       
   104 (*  gtGenericFaller *) , amNothing
       
   105 (*          gtKnife *) , amKnife
       
   106     );
       
   107 
       
   108 
    38 var GCounter: LongWord = 0; // this does not get re-initialized, but should be harmless
   109 var GCounter: LongWord = 0; // this does not get re-initialized, but should be harmless
       
   110 
       
   111 const
       
   112     cUsualZ = 500;
       
   113     cOnHHZ = 2000;
    39 
   114 
    40 procedure InsertGearToList(Gear: PGear);
   115 procedure InsertGearToList(Gear: PGear);
    41 var tmp, ptmp: PGear;
   116 var tmp, ptmp: PGear;
    42 begin
   117 begin
    43     tmp:= GearsList;
   118     tmp:= GearsList;