hedgewars/uConsts.pas
branchexperimental3D
changeset 4812 f924be23ffb4
parent 4343 19cbea33e4d2
parent 4809 9c7d5f802618
child 4844 20b81fafd236
equal deleted inserted replaced
4347:0ddb100fea61 4812:f924be23ffb4
    19 {$INCLUDE "options.inc"}
    19 {$INCLUDE "options.inc"}
    20 
    20 
    21 unit uConsts;
    21 unit uConsts;
    22 interface
    22 interface
    23 
    23 
    24 uses    SDLh, uFloat, uLocale, GLunit;
    24 uses    SDLh, uFloat, GLunit;
    25 
       
    26 
    25 
    27 {$INCLUDE "config.inc"}
    26 {$INCLUDE "config.inc"}
    28 
    27 
    29 // typed const is a variable despite const qualifier
       
    30 // in freepascal you may actually use var for the same purpose
       
    31 
       
    32 type
       
    33     HwColor4f = record
       
    34         r, g, b, a: byte
       
    35         end;
       
    36 
       
    37     TGameState = (gsLandGen, gsStart, gsGame, gsChat, gsConfirm, gsExit);
       
    38 
       
    39     TGameType = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview, gmtSyntax);
       
    40 
       
    41     TPathType = (ptNone, ptData, ptGraphics, ptThemes, ptCurrTheme, ptTeams, ptMaps,
       
    42             ptMapCurrent, ptDemos, ptSounds, ptGraves, ptFonts, ptForts,
       
    43             ptLocale, ptAmmoMenu, ptHedgehog, ptVoices, ptHats, ptFlags, ptMissionMaps);
       
    44 
       
    45     TSprite = (sprWater, sprCloud, sprBomb, sprBigDigit, sprFrame,
       
    46             sprLag, sprArrow, sprBazookaShell, sprTargetP, sprBee,
       
    47             sprSmokeTrace, sprRopeHook, sprExplosion50, sprMineOff,
       
    48             sprMineOn, sprMineDead, sprCase, sprFAid, sprDynamite, sprPower,
       
    49             sprClusterBomb, sprClusterParticle, sprFlame, sprHorizont,
       
    50             sprHorizontL, sprHorizontR, sprSky, sprSkyL,
       
    51             sprSkyR, sprAMBorderHorizontal, sprAMBorderVertical, sprAMSlot, sprAMAmmos,
       
    52             sprAMSlotKeys, sprAMCorners, sprFinger, sprAirBomb,
       
    53             sprAirplane, sprAmAirplane, sprAmGirder, sprHHTelepMask,
       
    54             sprSwitch, sprParachute, sprTarget, sprRopeNode,
       
    55             sprQuestion, sprPowerBar, sprWindBar, sprWindL, sprWindR,
       
    56             sprFlake, sprHandRope, sprHandBazooka, sprHandShotgun,
       
    57             sprHandDEagle, sprHandAirAttack, sprHandBaseball, sprPHammer,
       
    58             sprHandBlowTorch, sprBlowTorch, sprTeleport, sprHHDeath,
       
    59             sprShotgun, sprDEagle, sprHHIdle, sprMortar, sprTurnsLeft,
       
    60             sprKamikaze, sprWhip, sprKowtow, sprSad, sprWave,
       
    61             sprHurrah, sprLemonade, sprShrug, sprJuggle, sprExplPart, sprExplPart2,
       
    62             sprCakeWalk, sprCakeDown, sprAMAmmosBW, sprWatermelon,
       
    63             sprEvilTrace, sprHellishBomb, sprSeduction, sprDress,
       
    64             sprCensored, sprDrill, sprHandDrill, sprHandBallgun, sprBalls,
       
    65             sprPlane, sprHandPlane, sprUtility, sprInvulnerable, sprVampiric, sprGirder,
       
    66             sprSpeechCorner, sprSpeechEdge, sprSpeechTail,
       
    67             sprThoughtCorner, sprThoughtEdge, sprThoughtTail,
       
    68             sprShoutCorner, sprShoutEdge, sprShoutTail,
       
    69             sprSniperRifle, sprBubbles, sprJetpack, sprHealth, sprHandMolotov, sprMolotov,
       
    70             sprSmoke, sprSmokeWhite, sprShell, sprDust, sprExplosives, sprExplosivesRoll,
       
    71             sprAmTeleport, sprSplash, sprDroplet, sprBirdy, sprHandCake, sprHandConstruction,
       
    72             sprHandGrenade, sprHandMelon, sprHandMortar, sprHandSkip, sprHandCluster,
       
    73             sprHandDynamite, sprHandHellish, sprHandMine, sprHandSeduction, sprHandVamp,
       
    74             sprBigExplosion, sprSmokeRing, sprBeeTrace, sprEgg, sprTargetBee, sprHandBee,
       
    75             sprFeather, sprPiano, sprHandSineGun, sprPortalGun, sprPortal,
       
    76             sprCheese, sprHandCheese, sprHandFlamethrower, sprChunk, sprNote,
       
    77             sprSMineOff, sprSMineOn, sprHandSMine, sprHammer,
       
    78             sprHandResurrector, sprCross, sprAirDrill, sprNapalmBomb,
       
    79             sprBulletHit
       
    80             );
       
    81 
       
    82     // Gears that interact with other Gears and/or Land
       
    83     TGearType = (gtBomb, gtHedgehog, gtShell, gtGrave, gtBee, // 4
       
    84             gtShotgunShot, gtPickHammer, gtRope, gtMine, gtCase, // 9
       
    85             gtDEagleShot, gtDynamite, gtClusterBomb, gtCluster, gtShover, // 14
       
    86             gtFlame, gtFirePunch, gtATStartGame, gtATSmoothWindCh, // 18
       
    87             gtATFinishGame, gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, // 23
       
    88             gtGirder, gtTeleport, gtSwitcher, gtTarget, gtMortar, // 28
       
    89             gtWhip, gtKamikaze, gtCake, gtSeduction, gtWatermelon, gtMelonPiece, // 34
       
    90             gtHellishBomb, gtWaterUp, gtDrill, gtBallGun, gtBall, gtRCPlane, // 40
       
    91             gtSniperRifleShot, gtJetpack, gtMolotov, gtExplosives, gtBirdy, // 45
       
    92             gtEgg, gtPortal, gtPiano, gtGasBomb, gtSineGunShot, gtFlamethrower, // 51
       
    93             gtSMine, gtPoisonCloud, gtHammer, gtHammerHit, gtResurrector, // 56
       
    94             gtNapalmBomb); // 57
       
    95 
       
    96     // Gears that are _only_ of visual nature (e.g. background stuff, visual effects, speechbubbles, etc.)
       
    97     TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire,
       
    98             vgtSmallDamageTag, vgtTeamHealthSorter, vgtSpeechBubble, vgtBubble,
       
    99             vgtSteam, vgtAmmo, vgtSmoke, vgtSmokeWhite, vgtHealth, vgtShell,
       
   100             vgtDust, vgtSplash, vgtDroplet, vgtSmokeRing, vgtBeeTrace, vgtEgg,
       
   101             vgtFeather, vgtHealthTag, vgtSmokeTrace, vgtEvilTrace, vgtExplosion,
       
   102             vgtBigExplosion, vgtChunk, vgtNote, vgtLineTrail,
       
   103             vgtBulletHit);
       
   104 
       
   105     TGearsType = set of TGearType;
       
   106 
       
   107     TDamageSource = (dsUnknown, dsFall, dsBullet, dsExplosion, dsShove, dsPoison);
       
   108 
       
   109     TSound = (sndNone,
       
   110             sndGrenadeImpact, sndExplosion, sndThrowPowerUp, sndThrowRelease,
       
   111             sndSplash, sndShotgunReload, sndShotgunFire, sndGraveImpact,
       
   112             sndMineTick, sndPickhammer, sndGun, sndBee, sndJump1, sndJump2,
       
   113             sndJump3, sndYesSir, sndLaugh, sndIllGetYou, sndIncoming,
       
   114             sndMissed, sndStupid, sndFirstBlood, sndBoring, sndByeBye,
       
   115             sndSameTeam, sndNutter, sndReinforce, sndTraitor, sndRegret,
       
   116             sndEnemyDown, sndCoward, sndHurry, sndWatchIt, sndKamikaze,
       
   117             sndCake, sndOw1, sndOw2, sndOw3, sndOw4, sndFirePunch1, sndFirePunch2,
       
   118             sndFirePunch3, sndFirePunch4, sndFirePunch5, sndFirePunch6,
       
   119             sndMelon, sndHellish, sndYoohoo, sndRCPlane, sndWhipCrack,
       
   120             sndRideOfTheValkyries, sndDenied, sndPlaced, sndBaseballBat,
       
   121             sndVaporize, sndWarp, sndSuddenDeath, sndMortar, sndShutter,
       
   122             sndHomerun, sndMolotov, sndCover, sndUhOh, sndOops,
       
   123             sndNooo, sndHello, sndRopeShot, sndRopeAttach, sndRopeRelease,
       
   124             sndSwitchHog, sndVictory, sndSniperReload, sndSteps, sndLowGravity,
       
   125             sndHellishImpact1, sndHellishImpact2, sndHellishImpact3, sndHellishImpact4,
       
   126             sndMelonImpact, sndDroplet1, sndDroplet2, sndDroplet3, sndEggBreak, sndDrillRocket,
       
   127             sndPoisonCough, sndPoisonMoan, sndBirdyLay, sndWhistle, sndBeeWater,
       
   128             sndPiano0, sndPiano1, sndPiano2, sndPiano3, sndPiano4, sndPiano5, sndPiano6, sndPiano7, sndPiano8,
       
   129             sndSkip, sndSineGun, sndOoff1, sndOoff2, sndOoff3, sndWhack,
       
   130             sndComeonthen, sndParachute, sndBump, sndResurrector);
       
   131 
       
   132     TAmmoType  = (amNothing, amGrenade, amClusterBomb, amBazooka, amBee, amShotgun, amPickHammer, // 6
       
   133             amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch, amWhip, // 13
       
   134             amBaseballBat, amParachute, amAirAttack, amMineStrike, amBlowTorch, // 18
       
   135             amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake, // 24
       
   136             amSeduction, amWatermelon, amHellishBomb, amNapalm, amDrill, amBallgun, // 30
       
   137             amRCPlane, amLowGravity, amExtraDamage, amInvulnerable, amExtraTime, // 35
       
   138             amLaserSight, amVampiric, amSniperRifle, amJetpack, amMolotov, amBirdy, amPortalGun, // 42
       
   139             amPiano, amGasBomb, amSineGun, amFlamethrower, amSMine, amHammer, // 48
       
   140             amResurrector, amDrillStrike);
       
   141 
       
   142     TCrateType = (HealthCrate, AmmoCrate, UtilityCrate);
       
   143 
       
   144     THWFont = (fnt16, fntBig, fntSmall {$IFNDEF IPHONEOS}, CJKfnt16, CJKfntBig, CJKfntSmall{$ENDIF});
       
   145 
       
   146     TCapGroup = (capgrpGameState, capgrpAmmoinfo, capgrpVolume,
       
   147             capgrpMessage, capgrpAmmostate);
       
   148 
       
   149     TStatInfoType = (siGameResult, siMaxStepDamage, siMaxStepKills, siKilledHHs,
       
   150             siClanHealth, siTeamStats, siPlayerKills, siMaxTeamDamage,
       
   151             siMaxTeamKills, siMaxTurnSkips );
       
   152 
       
   153     TWave = (waveRollup, waveSad, waveWave, waveHurrah, waveLemonade, waveShrug, waveJuggle);
       
   154 
       
   155     TRenderMode = (rmDefault, rmLeftEye, rmRightEye);
       
   156     TStereoMode = (smNone, smRedCyan, smCyanRed, smRedBlue, smBlueRed, smRedGreen, smGreenRed, smHorizontal, smVertical, smAFR);
       
   157 
       
   158     THHFont = record
       
   159             Handle: PTTF_Font;
       
   160             Height: LongInt;
       
   161             style: LongInt;
       
   162             Name: string[21];
       
   163             end;
       
   164 
       
   165     PAmmo = ^TAmmo;
       
   166     TAmmo = record
       
   167             Propz: LongWord;
       
   168             Count: LongWord;
       
   169 (* Using for place hedgehogs mode, but for any other situation where the initial count would be needed I guess.
       
   170 For example, say, a mode where the weaponset is reset each turn, or on sudden death *)
       
   171             NumPerTurn: LongWord;
       
   172             Timer: LongWord;
       
   173             Pos: LongWord;
       
   174             AmmoType: TAmmoType;
       
   175             AttackVoice: TSound;
       
   176             end;
       
   177 
       
   178     TVertex2f = record
       
   179         X, Y: GLfloat;
       
   180         end;
       
   181 
       
   182     TVertex2i = record
       
   183         X, Y: GLint;
       
   184         end;
       
   185 
       
   186     PTexture = ^TTexture;
       
   187     TTexture = record
       
   188             id: GLuint;
       
   189             w, h, scale: LongInt;
       
   190             rx, ry: GLfloat;
       
   191             priority: GLfloat;
       
   192             vb, tb: array [0..3] of TVertex2f;
       
   193             PrevTexture, NextTexture: PTexture;
       
   194             end;
       
   195 
       
   196     THogEffect = (heInvulnerable, heResurrectable, hePoisoned, heResurrected);
       
   197 
       
   198     TScreenFade = (sfNone, sfInit, sfToBlack, sfFromBlack, sfToWhite, sfFromWhite);
       
   199 const
    28 const
   200     sfMax = 1000;
    29     sfMax = 1000;
   201     cDefaultParamNum = 17;
    30     cDefaultParamNum = 17;
   202 
    31 
   203     // message constants
    32     // message constants
   234     rqLowRes      = $00000001;  // use half land array
    63     rqLowRes      = $00000001;  // use half land array
   235     rqBlurryLand  = $00000002;  // downscaled terrain
    64     rqBlurryLand  = $00000002;  // downscaled terrain
   236     rqNoBackground= $00000004;  // don't draw background
    65     rqNoBackground= $00000004;  // don't draw background
   237     rqSimpleRope  = $00000008;  // draw rope using lines only
    66     rqSimpleRope  = $00000008;  // draw rope using lines only
   238     rq2DWater     = $00000010;  // disable 3D water effect
    67     rq2DWater     = $00000010;  // disable 3D water effect
   239     rqFancyBoom   = $00000020;  // no fancy explosion effects
    68     rqAntiBoom    = $00000020;  // no fancy explosion effects
   240     rqKillFlakes  = $00000040;  // no flakes
    69     rqKillFlakes  = $00000040;  // no flakes
   241     rqSlowMenu    = $00000080;  // ammomenu appears with no animation
    70     rqSlowMenu    = $00000080;  // ammomenu appears with no animation
   242     rqPlainSplash = $00000100;  // no droplets
    71     rqPlainSplash = $00000100;  // no droplets
   243     rqClampLess   = $00000200;  // don't clamp textures
    72     rqClampLess   = $00000200;  // don't clamp textures
   244     rqTooltipsOff = $00000400;  // tooltips are not drawn
    73     rqTooltipsOff = $00000400;  // tooltips are not drawn
   268     cMaxPower     = 1500;
    97     cMaxPower     = 1500;
   269     cMaxAngle     = 2048;
    98     cMaxAngle     = 2048;
   270     cPowerDivisor = 1500;
    99     cPowerDivisor = 1500;
   271 
   100 
   272     MAXNAMELEN = 192;
   101     MAXNAMELEN = 192;
       
   102     MAXROPEPOINTS = 3840;
   273 
   103 
   274     // some opengl headers do not have these macros
   104     // some opengl headers do not have these macros
   275     GL_BGR              = $80E0;
   105     GL_BGR              = $80E0;
   276     GL_BGRA             = $80E1;
   106     GL_BGRA             = $80E1;
   277     GL_CLAMP_TO_EDGE    = $812F;
   107     GL_CLAMP_TO_EDGE    = $812F;
   280     cSendCursorPosTime  : LongWord = 50;
   110     cSendCursorPosTime  : LongWord = 50;
   281     cVisibleWater       : LongInt = 128;
   111     cVisibleWater       : LongInt = 128;
   282     cCursorEdgesDist    : LongInt = 100;
   112     cCursorEdgesDist    : LongInt = 100;
   283     cTeamHealthWidth    : LongInt = 128;
   113     cTeamHealthWidth    : LongInt = 128;
   284     cWaterOpacity       : byte = $80;
   114     cWaterOpacity       : byte = $80;
       
   115     cSDWaterOpacity     : byte = $80;
   285 
   116 
   286     cifRandomize = $00000001;
   117     cifRandomize = $00000001;
   287     cifTheme     = $00000002;
   118     cifTheme     = $00000002;
   288     cifMap       = $00000002; // either theme or map (or map+theme)
   119     cifMap       = $00000002; // either theme or map (or map+theme)
   289     cifAllInited = cifRandomize or cifTheme or cifMap;
   120     cifAllInited = cifRandomize or cifTheme or cifMap;
   290 
   121 
   291     cTransparentColor: Longword = $00000000;
   122     cTransparentColor: Longword = $00000000;
   292 
   123 
   293     cMaxTeams        = 6;
   124     cMaxTeams        = 8;
   294     cMaxHHIndex      = 7;
   125     cMaxHHIndex      = 7;
   295     cMaxHHs          = 48;
   126     cMaxHHs          = 48;
   296     cMaxSpawnPoints  = 1024;
   127     cMaxSpawnPoints  = 1024;
   297 
   128 
   298     cMaxEdgePoints = 16384;
   129     cMaxEdgePoints = 16384;
   325     cZoomDelta = 0.25;
   156     cZoomDelta = 0.25;
   326 {$ENDIF}
   157 {$ENDIF}
   327 
   158 
   328     cSendEmptyPacketTime = 1000;
   159     cSendEmptyPacketTime = 1000;
   329     trigTurns = $80000001;
   160     trigTurns = $80000001;
   330 
       
   331     // Training Flags
       
   332     tfNone          = $00000000;
       
   333     tfTimeTrial     = $00000001;
       
   334     tfRCPlane       = $00000002;
       
   335     tfSpawnTargets  = $00000004;
       
   336     tfIgnoreDelays  = $00000008;
       
   337     tfTargetRespawn = $00000010;
       
   338 
   161 
   339     gfAny                = $FFFFFFFF;
   162     gfAny                = $FFFFFFFF;
   340     gfOneClanMode        = $00000001;           // used in trainings
   163     gfOneClanMode        = $00000001;           // used in trainings
   341     gfMultiWeapon        = $00000002;           // used in trainings
   164     gfMultiWeapon        = $00000002;           // used in trainings
   342     gfSolidLand          = $00000004;
   165     gfSolidLand          = $00000004;
   358     gfDisableLandObjects = $00040000;
   181     gfDisableLandObjects = $00040000;
   359     gfAISurvival         = $00080000;
   182     gfAISurvival         = $00080000;
   360     gfInfAttack          = $00100000;
   183     gfInfAttack          = $00100000;
   361     gfResetWeps          = $00200000;
   184     gfResetWeps          = $00200000;
   362     gfPerHogAmmo         = $00400000;
   185     gfPerHogAmmo         = $00400000;
   363     gfDisableWind        = $00800000;           // only lua for now
   186     gfDisableWind        = $00800000;
   364     gfMoreWind           = $01000000;
   187     gfMoreWind           = $01000000;
   365     // NOTE: When adding new game flags, ask yourself
   188     // NOTE: When adding new game flags, ask yourself
   366     // if a "game start notice" would be useful. If so,
   189     // if a "game start notice" would be useful. If so,
   367     // add one in uWorld.pas - look for "AddGoal".
   190     // add one in uWorld.pas - look for "AddGoal".
   368 
   191 
   443     htTeamName    = $01;
   266     htTeamName    = $01;
   444     htName        = $02;
   267     htName        = $02;
   445     htHealth      = $04;
   268     htHealth      = $04;
   446     htTransparent = $08;
   269     htTransparent = $08;
   447 
   270 
   448     cHHFileName = 'Hedgehog';
   271 
   449     cCHFileName = 'Crosshair';
       
   450     cThemeCFGFilename = 'theme.cfg';
       
   451 
       
   452     FontBorder = 2;
       
   453     cPathz: array[TPathType] of shortstring = (
       
   454         '',                              // ptNone
       
   455         '',                              // ptData
       
   456         'Graphics',                      // ptGraphics
       
   457         'Themes',                        // ptThemes
       
   458         'Themes/avematan',               // ptCurrTheme
       
   459         'Teams',                         // ptTeams
       
   460         'Maps',                          // ptMaps
       
   461         '',                              // ptMapCurrent
       
   462         'Demos',                         // ptDemos
       
   463         'Sounds',                        // ptSounds
       
   464         'Graphics/Graves',               // ptGraves
       
   465         'Fonts',                         // ptFonts
       
   466         'Forts',                         // ptForts
       
   467         'Locale',                        // ptLocale
       
   468         'Graphics/AmmoMenu',             // ptAmmoMenu
       
   469         'Graphics/Hedgehog',             // ptHedgehog
       
   470         'Sounds/voices',                 // ptVoices
       
   471         'Graphics/Hats',                 // ptHats
       
   472         'Graphics/Flags',                // ptFlags
       
   473         'Missions/Maps'                  // ptMissionMaps
       
   474     );
       
   475 
       
   476     cTagsMasks : array[0..15] of byte = (7, 0, 0, 0, 15, 6, 4, 5, 0, 0, 0, 0, 0, 14, 12, 13);
       
   477     cTagsMasksNoHealth: array[0..15] of byte = (3, 2, 11, 1, 0, 0, 0, 0, 0, 10, 0, 9, 0, 0, 0, 0);
       
   478 
       
   479     Fontz: array[THWFont] of THHFont = (
       
   480             (Handle: nil;
       
   481             Height: 12;
       
   482             style: TTF_STYLE_NORMAL;
       
   483             Name: 'DejaVuSans-Bold.ttf'),
       
   484             (Handle: nil;
       
   485             Height: 24;
       
   486             style: TTF_STYLE_NORMAL;
       
   487             Name: 'DejaVuSans-Bold.ttf'),
       
   488             (Handle: nil;
       
   489             Height: 10;
       
   490             style: TTF_STYLE_NORMAL;
       
   491             Name: 'DejaVuSans-Bold.ttf')
       
   492             {$IFNDEF IPHONEOS}, // remove chinese fonts for now
       
   493             (Handle: nil;
       
   494             Height: 12;
       
   495             style: TTF_STYLE_NORMAL;
       
   496             Name: 'wqy-zenhei.ttc'),
       
   497             (Handle: nil;
       
   498             Height: 24;
       
   499             style: TTF_STYLE_NORMAL;
       
   500             Name: 'wqy-zenhei.ttc'),
       
   501             (Handle: nil;
       
   502             Height: 10;
       
   503             style: TTF_STYLE_NORMAL;
       
   504             Name: 'wqy-zenhei.ttc')
       
   505             {$ENDIF}
       
   506             );
       
   507 
       
   508     SpritesData: array[TSprite] of record
       
   509             FileName: String[16];
       
   510             Path, AltPath: TPathType;
       
   511             Texture: PTexture;
       
   512             Surface: PSDL_Surface;
       
   513             Width, Height, imageWidth, imageHeight: LongInt;
       
   514             saveSurf: boolean;
       
   515             priority: GLfloat;
       
   516             getDimensions, getImageDimensions: boolean;
       
   517             end = (
       
   518             (FileName:  'BlueWater'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   519             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: true; getImageDimensions: true),// sprWater
       
   520             (FileName:     'Clouds'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   521             Width: 256; Height:128; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprCloud
       
   522             (FileName:       'Bomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   523             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBomb
       
   524             (FileName:  'BigDigits'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   525             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBigDigit
       
   526             (FileName:      'Frame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   527             Width:   4; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprFrame
       
   528             (FileName:        'Lag'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   529             Width:  65; Height: 65; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprLag
       
   530             (FileName:      'Arrow'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   531             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprCursor
       
   532             (FileName:'BazookaShell'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   533             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBazookaShell
       
   534             (FileName:    'Targetp'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   535             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTargetP
       
   536             (FileName:        'Bee'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   537             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBee
       
   538             (FileName: 'SmokeTrace'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   539             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprSmokeTrace
       
   540             (FileName:   'RopeHook'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   541             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprRopeHook
       
   542             (FileName:     'Expl50'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   543             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprExplosion50
       
   544             (FileName:    'MineOff'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   545             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMineOff
       
   546             (FileName:     'MineOn'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   547             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMineOn
       
   548             (FileName:     'MineDead'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   549             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMineDead
       
   550             (FileName:       'Case'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   551             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprCase
       
   552             (FileName:   'FirstAid'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   553             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprFAid
       
   554             (FileName:   'dynamite'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   555             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprDynamite
       
   556             (FileName:      'Power'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   557             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprPower
       
   558             (FileName:     'ClBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   559             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprClusterBomb
       
   560             (FileName: 'ClParticle'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   561             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprClusterParticle
       
   562             (FileName:      'Flame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   563             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprFlame
       
   564             (FileName:   'horizont'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   565             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprHorizont
       
   566             (FileName:  'horizontL'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   567             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprHorizont
       
   568             (FileName:  'horizontR'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   569             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprHorizont
       
   570             (FileName:        'Sky'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   571             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprSky
       
   572             (FileName:       'SkyL'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   573             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprSky
       
   574             (FileName:       'SkyR'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
       
   575             Width:   0; Height:  0; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: true; getImageDimensions: true),// sprSky
       
   576             (FileName:  'BorderHorizontal'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   577             Width: 33; Height:  2; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLow; getDimensions: false; getImageDimensions: true),// sprAMBorderHorizontal
       
   578             (FileName:  'BorderVertical'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   579             Width: 2; Height: 33; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLow; getDimensions: false; getImageDimensions: true),// sprAMBorderVertical
       
   580             (FileName:   'Slot'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   581             Width: 33; Height: 33; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAMSlot
       
   582             (FileName:      'Ammos'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   583             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAMAmmos
       
   584             (FileName:   'SlotKeys'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   585             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAMSlotKeys
       
   586             (FileName:  'Corners'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   587             Width:  2; Height: 2; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAMCorners
       
   588             (FileName:     'Finger'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   589             Width:  32; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprFinger
       
   590             (FileName:    'AirBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   591             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAirBomb
       
   592             (FileName:   'Airplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   593             Width: 254; Height: 101; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAirplane
       
   594             (FileName: 'amAirplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   595             Width:  64; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAmAirplane
       
   596             (FileName:   'amGirder'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   597             Width: 160; Height:160; imageWidth: 0; imageHeight: 0; saveSurf:  true; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAmGirder
       
   598             (FileName:     'hhMask'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   599             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf:  true; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHHTelepMask
       
   600             (FileName:     'Switch'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   601             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSwitch
       
   602             (FileName:  'Parachute'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   603             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprParachute
       
   604             (FileName:     'Target'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   605             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTarget
       
   606             (FileName:   'RopeNode'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   607             Width:   6; Height:  6; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprRopeNode
       
   608             (FileName:   'thinking'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   609             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprQuestion
       
   610             (FileName:   'PowerBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   611             Width: 256; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPowerBar
       
   612             (FileName:    'WindBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   613             Width: 151; Height: 17; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWindBar
       
   614             (FileName:      'WindL'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   615             Width:  80; Height: 13; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWindL
       
   616             (FileName:      'WindR'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   617             Width:  80; Height: 13; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWindR
       
   618             (FileName:      'Flake'; Path:ptCurrTheme; AltPath: ptNone; Texture: nil; Surface: nil;
       
   619             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprFlake
       
   620             (FileName:     'amRope'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   621             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandRope
       
   622             (FileName:  'amBazooka'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   623             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandBazooka
       
   624             (FileName:  'amShotgun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   625             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandShotgun
       
   626             (FileName:   'amDEagle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   627             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandDEagle
       
   628             (FileName:'amAirAttack'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   629             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandAirAttack
       
   630             (FileName: 'amBaseball'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   631             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandBaseball
       
   632             (FileName:     'Hammer'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   633             Width:  32; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPHammer
       
   634             (FileName: 'amBTorch_i'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   635             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandBlowTorch
       
   636             (FileName: 'amBTorch_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   637             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBlowTorch
       
   638             (FileName:   'Teleport'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   639             Width:  64; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTeleport
       
   640             (FileName:    'HHDeath'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   641             Width:  32; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprHHDeath
       
   642             (FileName:'amShotgun_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   643             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprShotgun
       
   644             (FileName: 'amDEagle_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   645             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprDEagle
       
   646             (FileName:       'Idle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   647             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprHHIdle
       
   648             (FileName:     'Mortar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   649             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMortar
       
   650             (FileName:  'TurnsLeft'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   651             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTurnsLeft
       
   652             (FileName: 'amKamikaze'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   653             Width: 256; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprKamikaze
       
   654             (FileName:     'amWhip'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   655             Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWhip
       
   656             (FileName:     'Kowtow'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   657             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprKowtow
       
   658             (FileName:        'Sad'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   659             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprSad
       
   660             (FileName:       'Wave'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   661             Width:  64; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprWave
       
   662             (FileName:     'Hurrah'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   663             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprHurrah
       
   664             (FileName:'ILoveLemonade';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   665             Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprLemonade
       
   666             (FileName:      'Shrug'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   667             Width: 32;  Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprShrug
       
   668             (FileName:     'Juggle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   669             Width: 32;  Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprJuggle
       
   670             (FileName:   'ExplPart'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   671             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprExplPart
       
   672             (FileName:  'ExplPart2'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   673             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprExplPart2
       
   674             (FileName:  'Cake_walk'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   675             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprCakeWalk
       
   676             (FileName:  'Cake_down'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   677             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprCakeDown
       
   678             (FileName:   'Ammos_bw'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
       
   679             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprAMAmmosBW
       
   680             (FileName: 'Watermelon'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   681             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprWatermelon
       
   682             (FileName:  'EvilTrace'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   683             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprEvilTrace
       
   684             (FileName:'HellishBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   685             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHellishBomb
       
   686             (FileName:  'Seduction'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   687             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSeduction
       
   688             (FileName:    'HHDress'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   689             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprDress
       
   690             (FileName:   'Censored'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   691             Width:  64; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprCensored
       
   692             (FileName:      'Drill'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   693             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprDrill
       
   694             (FileName:    'amDrill'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   695             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandDrill
       
   696             (FileName:  'amBallgun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   697             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandBallgun
       
   698             (FileName:      'Balls'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   699             Width:  32; Height: 20; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprBalls
       
   700             (FileName:    'RCPlane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   701             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPlane
       
   702             (FileName:  'amRCPlane'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   703             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandPlane
       
   704             (FileName:    'Utility'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   705             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprUtility
       
   706             (FileName:'Invulnerable';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   707             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprInvulnerable
       
   708             (FileName:   'Vampiric'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   709             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprVampiric
       
   710             (FileName:   'amGirder'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   711             Width: 512; Height:512; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprGirder
       
   712             (FileName:'SpeechCorner';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   713             Width:  12; Height: 9; imageWidth: 0; imageHeight: 0; saveSurf:  true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprSpeechCorner
       
   714             (FileName: 'SpeechEdge'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   715             Width:  25; Height: 9; imageWidth: 0; imageHeight: 0; saveSurf:  true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprSpeechEdge
       
   716             (FileName: 'SpeechTail'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   717             Width:  25; Height: 26; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprSpeechTail
       
   718             (FileName:'ThoughtCorner';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   719             Width:  49; Height: 37; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprThoughtCorner
       
   720             (FileName:'ThoughtEdge'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   721             Width:  23; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprThoughtEdge
       
   722             (FileName:'ThoughtTail'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   723             Width:  45; Height: 65; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprThoughtTail
       
   724             (FileName:'ShoutCorner'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   725             Width:  34; Height: 23; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprShoutCorner
       
   726             (FileName:  'ShoutEdge'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   727             Width:  30; Height: 20; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprShoutEdge
       
   728             (FileName:  'ShoutTail'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   729             Width:  30; Height: 37; imageWidth: 0; imageHeight: 0; saveSurf: true; priority: tpLowest; getDimensions: false; getImageDimensions: true),// sprShoutTail
       
   730             (FileName:'amSniperRifle';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   731             Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSniperRifle
       
   732             (FileName:    'Bubbles'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   733             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprBubbles
       
   734             (FileName:  'amJetpack'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   735             Width: 64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprJetpack
       
   736             (FileName:  'Health'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   737             Width: 16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprHealth
       
   738             (FileName:  'amMolotov'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   739             Width: 32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),//sprHandMolotov
       
   740             (FileName:  'Molotov'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   741             Width: 16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprMolotov
       
   742             (FileName: 'Smoke'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   743             Width:  22; Height: 22; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprSmoke
       
   744             (FileName: 'SmokeWhite'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   745             Width:  22; Height: 22; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprSmokeWhite
       
   746             (FileName: 'Shells'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   747             Width:  8; Height: 8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpLow; getDimensions: false; getImageDimensions: true),// sprShell
       
   748             (FileName: 'Dust'; Path: ptCurrTheme; AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   749             Width:  22; Height: 22; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprDust
       
   750             (FileName: 'Explosives'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   751             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprExplosives
       
   752             (FileName: 'ExplosivesRoll'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   753             Width:  48; Height: 48; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprExplosivesRoll
       
   754             (FileName: 'amTeleport'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   755             Width:  64; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprAmTeleport
       
   756             (FileName: 'Splash'; Path: ptCurrTheme; AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   757             Width:  80; Height: 50; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSplash
       
   758             (FileName: 'Droplet'; Path: ptCurrTheme; AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   759             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprDroplet
       
   760             (FileName: 'Birdy'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   761             Width:  75; Height: 75; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBirdy
       
   762             (FileName:  'amCake'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   763             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandCake
       
   764             (FileName:  'amConstruction'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   765             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandConstruction
       
   766             (FileName:  'amGrenade'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   767             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandGrenade
       
   768             (FileName:  'amMelon'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   769             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandMelon
       
   770             (FileName:  'amMortar'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   771             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandMortar
       
   772             (FileName:  'amSkip'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   773             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandSkip
       
   774             (FileName:  'amCluster'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   775             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandCluster
       
   776             (FileName:  'amDynamite'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   777             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandDynamite
       
   778             (FileName:  'amHellish'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   779             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandHellish
       
   780             (FileName:  'amMine'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   781             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandMine
       
   782             (FileName:  'amSeduction'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   783             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandSeduction
       
   784             (FileName:  'amVamp'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   785             Width:  128; Height: 128; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandVamp
       
   786             (FileName:  'BigExplosion'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   787             Width:  385; Height: 385; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprBigExplosion
       
   788             (FileName:  'SmokeRing'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   789             Width:  200; Height: 200; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSmokeRing
       
   790             (FileName:  'BeeTrace'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   791             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHigh; getDimensions: false; getImageDimensions: true),// sprBeeTrace
       
   792             (FileName:  'Egg'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   793             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprEgg
       
   794             (FileName:  'TargetBee'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   795             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprTargetBee
       
   796             (FileName:  'amBee'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   797             Width:  128; Height: 128; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandBee
       
   798             (FileName:  'Feather'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   799             Width:  15; Height: 25; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpHighest; getDimensions: false; getImageDimensions: true),// sprFeather
       
   800             (FileName:  'Piano'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   801             Width:  128; Height: 128; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPiano
       
   802             (FileName:  'amSineGun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   803             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandSineGun
       
   804             (FileName:  'amPortalGun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   805             Width: 128; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPortalGun
       
   806             (FileName:  'Portal'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   807             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprPortal
       
   808             (FileName:  'cheese'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   809             Width:  16; Height: 16; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprCheese
       
   810             (FileName:  'amCheese'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   811             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandCheese
       
   812             (FileName:  'amFlamethrower'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   813             Width:  128; Height: 128; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandFlamethrower
       
   814             (FileName:  'Chunk'; Path: ptCurrTheme; AltPath: ptGraphics; Texture: nil; Surface: nil;
       
   815             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprChunk
       
   816             (FileName:  'Note'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   817             Width:  32; Height: 32; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprNote
       
   818             (FileName:   'SMineOff'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   819             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSMineOff
       
   820             (FileName:    'SMineOn'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
       
   821             Width:   8; Height:  8; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprSMineOn
       
   822             (FileName:   'amSMine'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   823             Width:  64; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true),// sprHandSMine
       
   824             (FileName:  'amHammer'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
       
   825             Width: 128; Height: 64; imageWidth: 0; imageHeight: 0; saveSurf: false; priority: tpMedium; getDimensions: false; getImageDimensions: true), // sprWhip
       
   826             (FileName: 'amResurrector'; Path: ptHedgehog; AltPath: ptNone;
       
   827                 Texture: nil; Surface: nil; Width: 32; Height: 32;
       
   828                 imageWidth: 0; imageHeight: 0; saveSurf: false; priority:
       
   829                 tpMedium; getDimensions: false; getImageDimensions: true),
       
   830             //sprHandResurrector
       
   831             (FileName: 'Cross'; Path: ptGraphics; altPath: ptNone;
       
   832                 Texture: nil; Surface: nil; Width: 108; Height: 138;
       
   833                 imageWidth: 0; imageHeight: 0; saveSurf: false; priority:
       
   834                 tpMedium; getDimensions: false; getImageDimensions: true),
       
   835             //sprCross
       
   836             (FileName:  'AirDrill'; Path: ptGraphics; AltPath: ptNone;
       
   837                 Texture: nil; Surface: nil; Width:  16; Height: 16;
       
   838                 imageWidth: 0; imageHeight: 0; saveSurf: false; priority:
       
   839                 tpMedium; getDimensions: false; getImageDimensions: true),
       
   840             // sprAirDrill
       
   841             (FileName:  'NapalmBomb'; Path: ptGraphics; AltPath: ptNone;
       
   842                 Texture: nil; Surface: nil; Width:  16; Height: 16;
       
   843                 imageWidth: 0; imageHeight: 0; saveSurf: false; priority:
       
   844                 tpMedium; getDimensions: false; getImageDimensions: true),
       
   845             // sprNapalmBomb
       
   846             (FileName:  'BulletHit'; Path: ptGraphics; AltPath: ptNone;
       
   847                 Texture: nil; Surface: nil; Width:  32; Height: 32;
       
   848                 imageWidth: 0; imageHeight: 0; saveSurf: false; priority:
       
   849                 tpMedium; getDimensions: false; getImageDimensions: true)
       
   850             // sprNapalmBomb
       
   851             );
       
   852 
       
   853 
       
   854     Wavez: array [TWave] of record
       
   855             Sprite: TSprite;
       
   856             FramesCount: Longword;
       
   857             Interval: Longword;
       
   858             cmd: String[20];
       
   859             Voice: TSound;
       
   860             VoiceDelay: LongWord;
       
   861             end = (
       
   862             (Sprite:   sprKowtow; FramesCount: 12; Interval: 125; cmd: '/rollup'; Voice: sndNone; VoiceDelay: 0),
       
   863             (Sprite:      sprSad; FramesCount: 14; Interval: 125; cmd: '/sad'; Voice: sndNone; VoiceDelay: 0),
       
   864             (Sprite:     sprWave; FramesCount: 16; Interval: 125; cmd: '/wave'; Voice: sndHello; VoiceDelay: 5),
       
   865             (Sprite:   sprHurrah; FramesCount: 14; Interval: 125; cmd: '/hurrah'; Voice: sndNone; VoiceDelay: 0),
       
   866             (Sprite: sprLemonade; FramesCount: 24; Interval: 125; cmd: '/ilovelotsoflemonade'; Voice: sndNone; VoiceDelay: 0),
       
   867             (Sprite:    sprShrug; FramesCount: 24; Interval: 125; cmd: '/shrug'; Voice: sndNone; VoiceDelay: 0),
       
   868             (Sprite:   sprJuggle; FramesCount: 49; Interval:  38; cmd: '/juggle'; Voice: sndNone; VoiceDelay: 0)
       
   869             );
       
   870 
       
   871     Soundz: array[TSound] of record
       
   872             FileName: String[25];
       
   873             Path    : TPathType;
       
   874             end = (
       
   875             (FileName:                         ''; Path: ptNone  ),// sndNone
       
   876             (FileName:        'grenadeimpact.ogg'; Path: ptSounds),// sndGrenadeImpact
       
   877             (FileName:            'explosion.ogg'; Path: ptSounds),// sndExplosion
       
   878             (FileName:         'throwpowerup.ogg'; Path: ptSounds),// sndThrowPowerUp
       
   879             (FileName:         'throwrelease.ogg'; Path: ptSounds),// sndThrowRelease
       
   880             (FileName:               'splash.ogg'; Path: ptSounds),// sndSplash
       
   881             (FileName:        'shotgunreload.ogg'; Path: ptSounds),// sndShotgunReload
       
   882             (FileName:          'shotgunfire.ogg'; Path: ptSounds),// sndShotgunFire
       
   883             (FileName:          'graveimpact.ogg'; Path: ptSounds),// sndGraveImpact
       
   884             (FileName:             'minetick.ogg'; Path: ptSounds),// sndMineTicks
       
   885             (FileName:           'pickhammer.ogg'; Path: ptSounds),// sndPickhammer
       
   886             (FileName:                  'gun.ogg'; Path: ptSounds),// sndGun
       
   887             (FileName:                  'bee.ogg'; Path: ptSounds),// sndBee
       
   888             (FileName:                'Jump1.ogg'; Path: ptVoices),// sndJump1
       
   889             (FileName:                'Jump2.ogg'; Path: ptVoices),// sndJump2
       
   890             (FileName:                'Jump3.ogg'; Path: ptVoices),// sndJump3
       
   891             (FileName:               'Yessir.ogg'; Path: ptVoices),// sndYesSir
       
   892             (FileName:                'Laugh.ogg'; Path: ptVoices),// sndLaugh
       
   893             (FileName:            'Illgetyou.ogg'; Path: ptVoices),// sndIllGetYou
       
   894             (FileName:             'Incoming.ogg'; Path: ptVoices),// sndIncoming
       
   895             (FileName:               'Missed.ogg'; Path: ptVoices),// sndMissed
       
   896             (FileName:               'Stupid.ogg'; Path: ptVoices),// sndStupid
       
   897             (FileName:           'Firstblood.ogg'; Path: ptVoices),// sndFirstBlood
       
   898             (FileName:               'Boring.ogg'; Path: ptVoices),// sndBoring
       
   899             (FileName:               'Byebye.ogg'; Path: ptVoices),// sndByeBye
       
   900             (FileName:             'Sameteam.ogg'; Path: ptVoices),// sndSameTeam
       
   901             (FileName:               'Nutter.ogg'; Path: ptVoices),// sndNutter
       
   902             (FileName:       'Reinforcements.ogg'; Path: ptVoices),// sndReinforce
       
   903             (FileName:              'Traitor.ogg'; Path: ptVoices),// sndTraitor
       
   904             (FileName:      'Youllregretthat.ogg'; Path: ptVoices),// sndRegret
       
   905             (FileName:            'Enemydown.ogg'; Path: ptVoices),// sndEnemyDown
       
   906             (FileName:               'Coward.ogg'; Path: ptVoices),// sndCoward
       
   907             (FileName:                'Hurry.ogg'; Path: ptVoices),// sndHurry
       
   908             (FileName:              'Watchit.ogg'; Path: ptVoices),// sndWatchIt
       
   909             (FileName:             'Kamikaze.ogg'; Path: ptVoices),// sndKamikaze
       
   910             (FileName:                'cake2.ogg'; Path: ptSounds),// sndCake
       
   911             (FileName:                  'Ow1.ogg'; Path: ptVoices),// sndOw1
       
   912             (FileName:                  'Ow2.ogg'; Path: ptVoices),// sndOw2
       
   913             (FileName:                  'Ow3.ogg'; Path: ptVoices),// sndOw3
       
   914             (FileName:                  'Ow4.ogg'; Path: ptVoices),// sndOw4
       
   915             (FileName:           'Firepunch1.ogg'; Path: ptVoices),// sndFirepunch1
       
   916             (FileName:           'Firepunch2.ogg'; Path: ptVoices),// sndFirepunch2
       
   917             (FileName:           'Firepunch3.ogg'; Path: ptVoices),// sndFirepunch3
       
   918             (FileName:           'Firepunch4.ogg'; Path: ptVoices),// sndFirepunch4
       
   919             (FileName:           'Firepunch5.ogg'; Path: ptVoices),// sndFirepunch5
       
   920             (FileName:           'Firepunch6.ogg'; Path: ptVoices),// sndFirepunch6
       
   921             (FileName:                'Melon.ogg'; Path: ptVoices),// sndMelon
       
   922             (FileName:              'Hellish.ogg'; Path: ptSounds),// sndHellish
       
   923             (FileName:               'Yoohoo.ogg'; Path: ptSounds),// sndYoohoo
       
   924             (FileName:              'rcplane.ogg'; Path: ptSounds),// sndRCPlane
       
   925             (FileName:            'whipcrack.ogg'; Path: ptSounds),// sndWhipCrack
       
   926             (FileName:'ride_of_the_valkyries.ogg'; Path: ptSounds),// sndRideOfTheValkyries
       
   927             (FileName:               'denied.ogg'; Path: ptSounds),// sndDenied
       
   928             (FileName:               'placed.ogg'; Path: ptSounds),// sndPlaced
       
   929             (FileName:          'baseballbat.ogg'; Path: ptSounds),// sndBaseballBat
       
   930             (FileName:                'steam.ogg'; Path: ptSounds),// sndVaporize
       
   931             (FileName:                 'warp.ogg'; Path: ptSounds),// sndWarp
       
   932             (FileName:          'suddendeath.ogg'; Path: ptSounds),// sndSuddenDeath
       
   933             (FileName:               'mortar.ogg'; Path: ptSounds),// sndMortar
       
   934             (FileName:         'shutterclick.ogg'; Path: ptSounds),// sndShutter
       
   935             (FileName:              'homerun.ogg'; Path: ptSounds),// sndHomerun
       
   936             (FileName:              'molotov.ogg'; Path: ptSounds),// sndMolotov
       
   937             (FileName:            'Takecover.ogg'; Path: ptVoices),// sndCover
       
   938             (FileName:                'Uh-oh.ogg'; Path: ptVoices),// sndUhOh
       
   939             (FileName:                 'Oops.ogg'; Path: ptVoices),// sndOops
       
   940             (FileName:                 'Nooo.ogg'; Path: ptVoices),// sndNooo
       
   941             (FileName:                'Hello.ogg'; Path: ptVoices),// sndHello
       
   942             (FileName:             'ropeshot.ogg'; Path: ptSounds),// sndRopeShot
       
   943             (FileName:           'ropeattach.ogg'; Path: ptSounds),// sndRopeAttach
       
   944             (FileName:          'roperelease.ogg'; Path: ptSounds),// sndRopeRelease
       
   945             (FileName:            'switchhog.ogg'; Path: ptSounds),// sndSwitchHog
       
   946             (FileName:              'victory.ogg'; Path: ptVoices),// sndVictory
       
   947             (FileName:         'sniperreload.ogg'; Path: ptSounds),// sndSniperReload
       
   948             (FileName:                'steps.ogg'; Path: ptSounds),// sndSteps
       
   949             (FileName:           'lowgravity.ogg'; Path: ptSounds),// sndLowGravity
       
   950             (FileName:           'hell_growl.ogg'; Path: ptSounds),// sndHellishImpact1
       
   951             (FileName:            'hell_ooff.ogg'; Path: ptSounds),// sndHellishImpact2
       
   952             (FileName:              'hell_ow.ogg'; Path: ptSounds),// sndHellishImpact3
       
   953             (FileName:             'hell_ugh.ogg'; Path: ptSounds),// sndHellishImpact4
       
   954             (FileName:          'melonimpact.ogg'; Path: ptSounds),// sndMelonImpact
       
   955             (FileName:             'Droplet1.ogg'; Path: ptSounds),// sndDroplet1
       
   956             (FileName:             'Droplet2.ogg'; Path: ptSounds),// sndDroplet2
       
   957             (FileName:             'Droplet3.ogg'; Path: ptSounds),// sndDroplet3
       
   958             (FileName:                  'egg.ogg'; Path: ptSounds),// sndEggBreak
       
   959             (FileName:             'drillgun.ogg'; Path: ptSounds),// sndDrillRocket
       
   960             (FileName:          'PoisonCough.ogg'; Path: ptVoices),// sndPoisonCough
       
   961             (FileName:           'PoisonMoan.ogg'; Path: ptVoices),// sndPoisonMoan
       
   962             (FileName:             'BirdyLay.ogg'; Path: ptSounds),// sndBirdyLay
       
   963             (FileName:              'Whistle.ogg'; Path: ptSounds),// sndWhistle
       
   964             (FileName:             'beewater.ogg'; Path: ptSounds),// sndBeeWater
       
   965             (FileName:                   '1C.ogg'; Path: ptSounds),// sndPiano0
       
   966             (FileName:                   '2D.ogg'; Path: ptSounds),// sndPiano1
       
   967             (FileName:                   '3E.ogg'; Path: ptSounds),// sndPiano2
       
   968             (FileName:                   '4F.ogg'; Path: ptSounds),// sndPiano3
       
   969             (FileName:                   '5G.ogg'; Path: ptSounds),// sndPiano4
       
   970             (FileName:                   '6A.ogg'; Path: ptSounds),// sndPiano5
       
   971             (FileName:                   '7B.ogg'; Path: ptSounds),// sndPiano6
       
   972             (FileName:                   '8C.ogg'; Path: ptSounds),// sndPiano7
       
   973             (FileName:                   '9D.ogg'; Path: ptSounds),// sndPiano8
       
   974             (FileName:                 'skip.ogg'; Path: ptSounds),// sndSkip
       
   975             (FileName:          'shotgunfire.ogg'; Path: ptSounds),// sndSineGun
       
   976             (FileName:                'Ooff1.ogg'; Path: ptVoices),// sndOoff1
       
   977             (FileName:                'Ooff2.ogg'; Path: ptVoices),// sndOoff2
       
   978             (FileName:                'Ooff3.ogg'; Path: ptVoices),// sndOoff3
       
   979             (FileName:            'whipcrack.ogg'; Path: ptSounds),// sndWhack
       
   980             (FileName:           'Comeonthen.ogg'; Path: ptVoices),// sndComeonthen
       
   981             (FileName:            'parachute.ogg'; Path: ptSounds),// sndParachute
       
   982             (FileName:                 'bump.ogg'; Path: ptSounds),// sndBump
       
   983             (FileName: 'hogchant3.ogg'; Path: ptSounds) // sndResurrector
       
   984             );
       
   985 
       
   986     Ammoz: array [TAmmoType] of record
       
   987             NameId: TAmmoStrId;
       
   988             NameTex: PTexture;
       
   989             Probability, NumberInCase: Longword;
       
   990             Ammo: TAmmo;
       
   991             Slot: 0..cMaxSlotIndex;
       
   992             TimeAfterTurn: Longword;
       
   993             minAngle, maxAngle: Longword;
       
   994             isDamaging: boolean;
       
   995             SkipTurns: Longword;
       
   996             PosCount: Longword;
       
   997             PosSprite: TSprite;
       
   998             ejectX, ejectY: Longint;
       
   999             end = (
       
  1000             (NameId: sidNothing;
       
  1001             NameTex: nil;
       
  1002             Probability: 0;
       
  1003             NumberInCase: 0;
       
  1004             Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_DontHold or ammoprop_Effect;
       
  1005                 Count: AMMO_INFINITE;
       
  1006                 NumPerTurn: 0;
       
  1007                 Timer: 0;
       
  1008                 Pos: 0;
       
  1009                 AmmoType: amNothing;
       
  1010                 AttackVoice: sndNone);
       
  1011             Slot: 0;
       
  1012             TimeAfterTurn: 0;
       
  1013             minAngle: 0;
       
  1014             maxAngle: 0;
       
  1015             isDamaging: false;
       
  1016             SkipTurns: 9999;
       
  1017             PosCount: 1;
       
  1018             PosSprite: sprWater;
       
  1019             ejectX: 0;
       
  1020             ejectY: 0),
       
  1021 
       
  1022 // Grenade
       
  1023             (NameId: sidGrenade;
       
  1024             NameTex: nil;
       
  1025             Probability: 0;
       
  1026             NumberInCase: 1;
       
  1027             Ammo: (Propz: ammoprop_Timerable or ammoprop_Power or ammoprop_AltUse;
       
  1028                 Count: AMMO_INFINITE;
       
  1029                 NumPerTurn: 0;
       
  1030                 Timer: 3000;
       
  1031                 Pos: 0;
       
  1032                 AmmoType: amGrenade;
       
  1033                 AttackVoice: sndCover);
       
  1034             Slot: 1;
       
  1035             TimeAfterTurn: 3000;
       
  1036             minAngle: 0;
       
  1037             maxAngle: 0;
       
  1038             isDamaging: true;
       
  1039             SkipTurns: 0;
       
  1040             PosCount: 1;
       
  1041             PosSprite: sprWater;
       
  1042             ejectX: 0;
       
  1043             ejectY: 0),
       
  1044 
       
  1045 // ClusterBomb
       
  1046             (NameId: sidClusterBomb;
       
  1047             NameTex: nil;
       
  1048             Probability: 100;
       
  1049             NumberInCase: 3;
       
  1050             Ammo: (Propz: ammoprop_Timerable or ammoprop_Power or ammoprop_AltUse;
       
  1051                 Count: 5;
       
  1052                 NumPerTurn: 0;
       
  1053                 Timer: 3000;
       
  1054                 Pos: 0;
       
  1055                 AmmoType: amClusterBomb;
       
  1056                 AttackVoice: sndCover);
       
  1057             Slot: 1;
       
  1058             TimeAfterTurn: 3000;
       
  1059             minAngle: 0;
       
  1060             maxAngle: 0;
       
  1061             isDamaging: true;
       
  1062             SkipTurns: 0;
       
  1063             PosCount: 1;
       
  1064             PosSprite: sprWater;
       
  1065             ejectX: 0;
       
  1066             ejectY: 0),
       
  1067 
       
  1068 // Bazooka
       
  1069             (NameId: sidBazooka;
       
  1070             NameTex: nil;
       
  1071             Probability: 0;
       
  1072             NumberInCase: 1;
       
  1073             Ammo: (Propz: ammoprop_Power or ammoprop_AltUse;
       
  1074                 Count: AMMO_INFINITE;
       
  1075                 NumPerTurn: 0;
       
  1076                 Timer: 0;
       
  1077                 Pos: 0;
       
  1078                 AmmoType: amBazooka;
       
  1079                 AttackVoice: sndNone);
       
  1080             Slot: 0;
       
  1081             TimeAfterTurn: 3000;
       
  1082             minAngle: 0;
       
  1083             maxAngle: 0;
       
  1084             isDamaging: true;
       
  1085             SkipTurns: 0;
       
  1086             PosCount: 1;
       
  1087             PosSprite: sprWater;
       
  1088             ejectX: 0; //20;
       
  1089             ejectY: -6),
       
  1090 
       
  1091 // Bee
       
  1092             (NameId: sidBee;
       
  1093             NameTex: nil;
       
  1094             Probability: 100;
       
  1095             NumberInCase: 1;
       
  1096             Ammo: (Propz: ammoprop_Power or ammoprop_NeedTarget or ammoprop_DontHold;
       
  1097                 Count: 2;
       
  1098                 NumPerTurn: 0;
       
  1099                 Timer: 0;
       
  1100                 Pos: 0;
       
  1101                 AmmoType: amBee;
       
  1102                 AttackVoice: sndNone);
       
  1103             Slot: 0;
       
  1104             TimeAfterTurn: 3000;
       
  1105             minAngle: 0;
       
  1106             maxAngle: 0;
       
  1107             isDamaging: true;
       
  1108             SkipTurns: 0;
       
  1109             PosCount: 1;
       
  1110             PosSprite: sprWater;
       
  1111             ejectX: 0; //16;
       
  1112             ejectY: 0),
       
  1113 
       
  1114 // Shotgun
       
  1115             (NameId: sidShotgun;
       
  1116             NameTex: nil;
       
  1117             Probability: 0;
       
  1118             NumberInCase: 1;
       
  1119             Ammo: (Propz: ammoprop_ForwMsgs;
       
  1120                 Count: AMMO_INFINITE;
       
  1121                 NumPerTurn: 1;
       
  1122                 Timer: 0;
       
  1123                 Pos: 0;
       
  1124                 AmmoType: amShotgun;
       
  1125                 AttackVoice: sndNone);
       
  1126             Slot: 2;
       
  1127             TimeAfterTurn: 3000;
       
  1128             minAngle: 0;
       
  1129             maxAngle: 0;
       
  1130             isDamaging: true;
       
  1131             SkipTurns: 0;
       
  1132             PosCount: 1;
       
  1133             PosSprite: sprWater;
       
  1134             ejectX: 0; //26;
       
  1135             ejectY: -6),
       
  1136 
       
  1137 // PickHammer
       
  1138             (NameId: sidPickHammer;
       
  1139             NameTex: nil;
       
  1140             Probability: 0;
       
  1141             NumberInCase: 1;
       
  1142             Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_AttackInMove or ammoprop_NoCrosshair or ammoprop_DontHold;
       
  1143                 Count: 2;
       
  1144                 NumPerTurn: 0;
       
  1145                 Timer: 0;
       
  1146                 Pos: 0;
       
  1147                 AmmoType: amPickHammer;
       
  1148                 AttackVoice: sndNone);
       
  1149             Slot: 6;
       
  1150             TimeAfterTurn: 0;
       
  1151             minAngle: 0;
       
  1152             maxAngle: 0;
       
  1153             isDamaging: false;
       
  1154             SkipTurns: 0;
       
  1155             PosCount: 1;
       
  1156             PosSprite: sprWater;
       
  1157             ejectX: 0;
       
  1158             ejectY: 0),
       
  1159 
       
  1160 // Skip
       
  1161             (NameId: sidSkip;
       
  1162             NameTex: nil;
       
  1163             Probability: 0;
       
  1164             NumberInCase: 1;
       
  1165             Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_DontHold;
       
  1166                 Count: AMMO_INFINITE;
       
  1167                 NumPerTurn: 0;
       
  1168                 Timer: 0;
       
  1169                 Pos: 0;
       
  1170                 AmmoType: amSkip;
       
  1171                 AttackVoice: sndNone);
       
  1172             Slot: 9;
       
  1173             TimeAfterTurn: 0;
       
  1174             minAngle: 0;
       
  1175             maxAngle: 0;
       
  1176             isDamaging: false;
       
  1177             SkipTurns: 0;
       
  1178             PosCount: 1;
       
  1179             PosSprite: sprWater;
       
  1180             ejectX: 0;
       
  1181             ejectY: 0),
       
  1182 
       
  1183 // Rope
       
  1184             (NameId: sidRope;
       
  1185             NameTex: nil;
       
  1186             Probability: 100;
       
  1187             NumberInCase: 3;
       
  1188             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1189                           ammoprop_ForwMsgs or
       
  1190                           ammoprop_AttackInMove or
       
  1191                           ammoprop_Utility or
       
  1192                           ammoprop_AltAttack;
       
  1193                     Count: 5;
       
  1194                     NumPerTurn: 0;
       
  1195                     Timer: 0;
       
  1196                     Pos: 0;
       
  1197                     AmmoType: amRope;
       
  1198                     AttackVoice: sndNone);
       
  1199             Slot: 7;
       
  1200             TimeAfterTurn: 0;
       
  1201             minAngle: 0;
       
  1202             maxAngle: cMaxAngle div 2;
       
  1203             isDamaging: false;
       
  1204             SkipTurns: 0;
       
  1205             PosCount: 1;
       
  1206             PosSprite: sprWater;
       
  1207             ejectX: 0;
       
  1208             ejectY: 0),
       
  1209 
       
  1210 // Mine
       
  1211             (NameId: sidMine;
       
  1212             NameTex: nil;
       
  1213             Probability: 100;
       
  1214             NumberInCase: 1;
       
  1215             Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_AttackInMove or ammoprop_DontHold or ammoprop_AltUse;
       
  1216                 Count: 2;
       
  1217                 NumPerTurn: 0;
       
  1218                 Timer: 0;
       
  1219                 Pos: 0;
       
  1220                 AmmoType: amMine;
       
  1221                 AttackVoice: sndLaugh);
       
  1222             Slot: 4;
       
  1223             TimeAfterTurn: 5000;
       
  1224             minAngle: 0;
       
  1225             maxAngle: 0;
       
  1226             isDamaging: true;
       
  1227             SkipTurns: 0;
       
  1228             PosCount: 1;
       
  1229             PosSprite: sprWater;
       
  1230             ejectX: 0;
       
  1231             ejectY: 0),
       
  1232 
       
  1233 // DEagle
       
  1234             (NameId: sidDEagle;
       
  1235             NameTex: nil;
       
  1236             Probability: 20;
       
  1237             NumberInCase: 2;
       
  1238             Ammo: (Propz: 0;
       
  1239                 Count: 3;
       
  1240                 NumPerTurn: 3;
       
  1241                 Timer: 0;
       
  1242                 Pos: 0;
       
  1243                 AmmoType: amDEagle;
       
  1244                 AttackVoice: sndNone);
       
  1245             Slot: 2;
       
  1246             TimeAfterTurn: 3000;
       
  1247             minAngle: 0;
       
  1248             maxAngle: 0;
       
  1249             isDamaging: true;
       
  1250             SkipTurns: 0;
       
  1251             PosCount: 1;
       
  1252             PosSprite: sprWater;
       
  1253             ejectX: 0; //23;
       
  1254             ejectY: -6),
       
  1255 
       
  1256 // Dynamite
       
  1257             (NameId: sidDynamite;
       
  1258             NameTex: nil;
       
  1259             Probability: 100;
       
  1260             NumberInCase: 1;
       
  1261             Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_AttackInMove or ammoprop_DontHold or ammoprop_AltUse;
       
  1262                 Count: 1;
       
  1263                 NumPerTurn: 0;
       
  1264                 Timer: 0;
       
  1265                 Pos: 0;
       
  1266                 AmmoType: amDynamite;
       
  1267                 AttackVoice: sndLaugh);
       
  1268             Slot: 4;
       
  1269             TimeAfterTurn: 5000;
       
  1270             minAngle: 0;
       
  1271             maxAngle: 0;
       
  1272             isDamaging: true;
       
  1273             SkipTurns: 0;
       
  1274             PosCount: 1;
       
  1275             PosSprite: sprWater;
       
  1276             ejectX: 0;
       
  1277             ejectY: 0),
       
  1278 
       
  1279 // FirePunch
       
  1280             (NameId: sidFirePunch;
       
  1281             NameTex: nil;
       
  1282             Probability: 0;
       
  1283             NumberInCase: 1;
       
  1284             Ammo: (Propz: ammoprop_NoCrosshair or ammoprop_ForwMsgs or ammoprop_AttackInMove;
       
  1285                 Count: AMMO_INFINITE;
       
  1286                 NumPerTurn: 0;
       
  1287                 Timer: 0;
       
  1288                 Pos: 0;
       
  1289                 AmmoType: amFirePunch;
       
  1290                 AttackVoice: sndNone);
       
  1291             Slot: 3;
       
  1292             TimeAfterTurn: 3000;
       
  1293             MinAngle: 0;
       
  1294             maxAngle: 0;
       
  1295             isDamaging: true;
       
  1296             SkipTurns: 0;
       
  1297             PosCount: 1;
       
  1298             PosSprite: sprWater;
       
  1299             ejectX: 0;
       
  1300             ejectY: 0),
       
  1301 
       
  1302 // Whip
       
  1303             (NameId: sidWhip;
       
  1304             NameTex: nil;
       
  1305             Probability: 0;
       
  1306             NumberInCase: 1;
       
  1307             Ammo: (Propz: ammoprop_NoCrosshair;
       
  1308                 Count: AMMO_INFINITE;
       
  1309                 NumPerTurn: 0;
       
  1310                 Timer: 0;
       
  1311                 Pos: 0;
       
  1312                 AmmoType: amWhip;
       
  1313                 AttackVoice: sndNone);
       
  1314             Slot: 3;
       
  1315             TimeAfterTurn: 3000;
       
  1316             MinAngle: 0;
       
  1317             maxAngle: 0;
       
  1318             isDamaging: true;
       
  1319             SkipTurns: 0;
       
  1320             PosCount: 1;
       
  1321             PosSprite: sprWater;
       
  1322             ejectX: 0;
       
  1323             ejectY: 0),
       
  1324 
       
  1325 // BaseballBat
       
  1326             (NameId: sidBaseballBat;
       
  1327             NameTex: nil;
       
  1328             Probability: 100;
       
  1329             NumberInCase: 1;
       
  1330             Ammo: (Propz: ammoprop_DontHold;
       
  1331                 Count: 1;
       
  1332                 NumPerTurn: 0;
       
  1333                 Timer: 0;
       
  1334                 Pos: 0;
       
  1335                 AmmoType: amBaseballBat;
       
  1336                 AttackVoice: sndNone);
       
  1337             Slot: 3;
       
  1338             TimeAfterTurn: 5000;
       
  1339             minAngle: 0;
       
  1340             maxAngle: cMaxAngle div 2;
       
  1341             isDamaging: true;
       
  1342             SkipTurns: 2;
       
  1343             PosCount: 1;
       
  1344             PosSprite: sprWater;
       
  1345             ejectX: 0;
       
  1346             ejectY: 0),
       
  1347 
       
  1348 // Parachute
       
  1349             (NameId: sidParachute;
       
  1350             NameTex: nil;
       
  1351             Probability: 100;
       
  1352             NumberInCase: 1;
       
  1353             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1354                           ammoprop_ForwMsgs or
       
  1355                           ammoprop_AttackInMove or
       
  1356                           ammoprop_NoCrosshair or
       
  1357                           ammoprop_DontHold or
       
  1358                           ammoprop_Utility or
       
  1359                           ammoprop_AltAttack;
       
  1360                 Count: 2;
       
  1361                 NumPerTurn: 0;
       
  1362                 Timer: 0;
       
  1363                 Pos: 0;
       
  1364                 AmmoType: amParachute;
       
  1365                 AttackVoice: sndNone);
       
  1366             Slot: 7;
       
  1367             TimeAfterTurn: 0;
       
  1368             minAngle: 0;
       
  1369             maxAngle: 0;
       
  1370             isDamaging: false;
       
  1371             SkipTurns: 0;
       
  1372             PosCount: 1;
       
  1373             PosSprite: sprWater;
       
  1374             ejectX: 0;
       
  1375             ejectY: 0),
       
  1376 
       
  1377 // AirAttack
       
  1378             (NameId: sidAirAttack;
       
  1379             NameTex: nil;
       
  1380             Probability: 100;
       
  1381             NumberInCase: 1;
       
  1382             Ammo: (Propz: ammoprop_NoCrosshair or
       
  1383                             ammoprop_NeedTarget or
       
  1384                             ammoprop_AttackingPut or
       
  1385                             ammoprop_DontHold or
       
  1386                             ammoprop_NotBorder;
       
  1387                 Count: 1;
       
  1388                 NumPerTurn: 0;
       
  1389                 Timer: 0;
       
  1390                 Pos: 0;
       
  1391                 AmmoType: amAirAttack;
       
  1392                 AttackVoice: sndIncoming);
       
  1393             Slot: 5;
       
  1394             TimeAfterTurn: 0;
       
  1395             minAngle: 0;
       
  1396             maxAngle: 0;
       
  1397             isDamaging: true;
       
  1398             SkipTurns: 5;
       
  1399             PosCount: 2;
       
  1400             PosSprite: sprAmAirplane;
       
  1401             ejectX: 0;
       
  1402             ejectY: 0),
       
  1403 
       
  1404 // MineStrike
       
  1405             (NameId: sidMineStrike;
       
  1406             NameTex: nil;
       
  1407             Probability: 200;
       
  1408             NumberInCase: 1;
       
  1409             Ammo: (Propz: ammoprop_NoCrosshair or
       
  1410                             ammoprop_NeedTarget or
       
  1411                             ammoprop_AttackingPut or
       
  1412                             ammoprop_DontHold or
       
  1413                             ammoprop_NotBorder;
       
  1414                 Count: 1;
       
  1415                 NumPerTurn: 0;
       
  1416                 Timer: 0;
       
  1417                 Pos: 0;
       
  1418                 AmmoType: amMineStrike;
       
  1419                 AttackVoice: sndIncoming);
       
  1420             Slot: 5;
       
  1421             TimeAfterTurn: 0;
       
  1422             minAngle: 0;
       
  1423             maxAngle: 0;
       
  1424             isDamaging: true;
       
  1425             SkipTurns: 5;
       
  1426             PosCount: 2;
       
  1427             PosSprite: sprAmAirplane;
       
  1428             ejectX: 0;
       
  1429             ejectY: 0),
       
  1430 
       
  1431 // BlowTorch
       
  1432             (NameId: sidBlowTorch;
       
  1433             NameTex: nil;
       
  1434             Probability: 100;
       
  1435             NumberInCase: 2;
       
  1436             Ammo: (Propz: ammoprop_ForwMsgs;
       
  1437                 Count: 1;
       
  1438                 NumPerTurn: 0;
       
  1439                 Timer: 0;
       
  1440                 Pos: 0;
       
  1441                 AmmoType: amBlowTorch;
       
  1442                 AttackVoice: sndNone);
       
  1443             Slot: 6;
       
  1444             TimeAfterTurn: 3000;
       
  1445             minAngle: 768;
       
  1446             maxAngle: 1280;
       
  1447             isDamaging: false;
       
  1448             SkipTurns: 0;
       
  1449             PosCount: 1;
       
  1450             PosSprite: sprWater;
       
  1451             ejectX: 0;
       
  1452             ejectY: 0),
       
  1453 
       
  1454 // Girder
       
  1455             (NameId: sidGirder;
       
  1456             NameTex: nil;
       
  1457             Probability: 150;
       
  1458             NumberInCase: 3;
       
  1459             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1460                           ammoprop_NoCrosshair or
       
  1461                           ammoprop_NeedTarget or
       
  1462                           ammoprop_Utility or
       
  1463                           ammoprop_AttackingPut;
       
  1464                     Count: 1;
       
  1465                     NumPerTurn: 0;
       
  1466                     Timer: 0;
       
  1467                     Pos: 0;
       
  1468                     AmmoType: amGirder;
       
  1469                     AttackVoice: sndNone);
       
  1470             Slot: 6;
       
  1471             TimeAfterTurn: 3000;
       
  1472             minAngle: 0;
       
  1473             maxAngle: 0;
       
  1474             isDamaging: false;
       
  1475             SkipTurns: 0;
       
  1476             PosCount: 8;
       
  1477             PosSprite: sprAmGirder;
       
  1478             ejectX: 0;
       
  1479             ejectY: 0),
       
  1480 
       
  1481 // Teleport
       
  1482             (NameId: sidTeleport;
       
  1483             NameTex: nil;
       
  1484             Probability: 200;
       
  1485             NumberInCase: 1;
       
  1486             Ammo: (Propz: ammoprop_ForwMsgs or
       
  1487                           ammoprop_NoCrosshair or
       
  1488                           ammoprop_NeedTarget or
       
  1489                           ammoprop_AttackingPut or
       
  1490                           ammoprop_Utility or
       
  1491                           ammoprop_DontHold;
       
  1492                 Count: 2;
       
  1493                 NumPerTurn: 0;
       
  1494                 Timer: 0;
       
  1495                 Pos: 0;
       
  1496                 AmmoType: amTeleport;
       
  1497                 AttackVoice: sndNone);
       
  1498             Slot: 7;
       
  1499             TimeAfterTurn: 0;
       
  1500             minAngle: 0;
       
  1501             maxAngle: 0;
       
  1502             isDamaging: false;
       
  1503             SkipTurns: 0;
       
  1504             PosCount: 2;
       
  1505             PosSprite: sprAmTeleport;
       
  1506             ejectX: 0;
       
  1507             ejectY: 0),
       
  1508 
       
  1509 // Switch
       
  1510             (NameId: sidSwitch;
       
  1511             NameTex: nil;
       
  1512             Probability: 100;
       
  1513             NumberInCase: 1;
       
  1514             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1515                           ammoprop_ForwMsgs or
       
  1516                           ammoprop_NoCrosshair or
       
  1517                           ammoprop_Utility or
       
  1518                           ammoprop_DontHold;
       
  1519                     Count: 3;
       
  1520                     NumPerTurn: 0;
       
  1521                     Timer: 0;
       
  1522                     Pos: 0;
       
  1523                     AmmoType: amSwitch;
       
  1524                     AttackVoice: sndNone);
       
  1525             Slot: 9;
       
  1526             TimeAfterTurn: 0;
       
  1527             minAngle: 0;
       
  1528             maxAngle: 0;
       
  1529             isDamaging: false;
       
  1530             SkipTurns: 0;
       
  1531             PosCount: 1;
       
  1532             PosSprite: sprWater;
       
  1533             ejectX: 0;
       
  1534             ejectY: 0),
       
  1535 
       
  1536 // Mortar
       
  1537             (NameId: sidMortar;
       
  1538             NameTex: nil;
       
  1539             Probability: 100;
       
  1540             NumberInCase: 4;
       
  1541             Ammo: (Propz: 0;
       
  1542                 Count: 4;
       
  1543                 NumPerTurn: 0;
       
  1544                 Timer: 0;
       
  1545                 Pos: 0;
       
  1546                 AmmoType: amMortar;
       
  1547                 AttackVoice: sndNone);
       
  1548             Slot: 0;
       
  1549             TimeAfterTurn: 3000;
       
  1550             minAngle: 0;
       
  1551             maxAngle: 0;
       
  1552             isDamaging: true;
       
  1553             SkipTurns: 0;
       
  1554             PosCount: 1;
       
  1555             PosSprite: sprWater;
       
  1556             ejectX: 0; //20;
       
  1557             ejectY: -6),
       
  1558 
       
  1559 // Kamikaze
       
  1560             (NameId: sidKamikaze;
       
  1561             NameTex: nil;
       
  1562             Probability: 100;
       
  1563             NumberInCase: 1;
       
  1564             Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_DontHold or ammoprop_AttackInMove;
       
  1565                 Count: 1;
       
  1566                 NumPerTurn: 0;
       
  1567                 Timer: 0;
       
  1568                 Pos: 0;
       
  1569                 AmmoType: amKamikaze;
       
  1570                 AttackVoice: sndNone);
       
  1571             Slot: 3;
       
  1572             TimeAfterTurn: 0;
       
  1573             minAngle: 0;
       
  1574             maxAngle: 0;
       
  1575             isDamaging: true;
       
  1576             SkipTurns: 0;
       
  1577             PosCount: 1;
       
  1578             PosSprite: sprWater;
       
  1579             ejectX: 0;
       
  1580             ejectY: 0),
       
  1581 
       
  1582 // Cake
       
  1583             (NameId: sidCake;
       
  1584             NameTex: nil;
       
  1585             Probability: 100;
       
  1586             NumberInCase: 1;
       
  1587             Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_NoCrosshair or ammoprop_DontHold;
       
  1588                 Count: 1;
       
  1589                 NumPerTurn: 0;
       
  1590                 Timer: 0;
       
  1591                 Pos: 0;
       
  1592                 AmmoType: amCake;
       
  1593                 AttackVoice: sndLaugh);
       
  1594             Slot: 4;
       
  1595             TimeAfterTurn: 0;
       
  1596             minAngle: 0;
       
  1597             maxAngle: 0;
       
  1598             isDamaging: true;
       
  1599             SkipTurns: 4;
       
  1600             PosCount: 1;
       
  1601             PosSprite: sprWater;
       
  1602             ejectX: 0;
       
  1603             ejectY: 0),
       
  1604 
       
  1605 // Seduction
       
  1606             (NameId: sidSeduction;
       
  1607             NameTex: nil;
       
  1608             Probability: 100;
       
  1609             NumberInCase: 1;
       
  1610             Ammo: (Propz: ammoprop_ForwMsgs or ammoprop_DontHold;
       
  1611                 Count: 1;
       
  1612                 NumPerTurn: 0;
       
  1613                 Timer: 0;
       
  1614                 Pos: 0;
       
  1615                 AmmoType: amSeduction;
       
  1616                 AttackVoice: sndNone);
       
  1617             Slot: 3;
       
  1618             TimeAfterTurn: 0;
       
  1619             minAngle: 0;
       
  1620             maxAngle: 0;
       
  1621             isDamaging: false;
       
  1622             SkipTurns: 0;
       
  1623             PosCount: 1;
       
  1624             PosSprite: sprWater;
       
  1625             ejectX: 0;
       
  1626             ejectY: 0),
       
  1627 
       
  1628 // Watermelon
       
  1629             (NameId: sidWatermelon;
       
  1630             NameTex: nil;
       
  1631             Probability: 400;
       
  1632             NumberInCase: 1;
       
  1633             Ammo: (Propz: ammoprop_Timerable or ammoprop_Power or ammoprop_AltUse;
       
  1634                 Count: 0;
       
  1635                 NumPerTurn: 0;
       
  1636                 Timer: 3000;
       
  1637                 Pos: 0;
       
  1638                 AmmoType: amWatermelon;
       
  1639                 AttackVoice: sndMelon);
       
  1640             Slot: 1;
       
  1641             TimeAfterTurn: 3000;
       
  1642             minAngle: 0;
       
  1643             maxAngle: 0;
       
  1644             isDamaging: true;
       
  1645             SkipTurns: 0;
       
  1646             PosCount: 1;
       
  1647             PosSprite: sprWater;
       
  1648             ejectX: 0;
       
  1649             ejectY: 0),
       
  1650 
       
  1651 // HellishBomb ("Hellish Hand-Grenade")
       
  1652             (NameId: sidHellishBomb;
       
  1653             NameTex: nil;
       
  1654             Probability: 400;
       
  1655             NumberInCase: 1;
       
  1656             Ammo: (Propz:  ammoprop_Power or ammoprop_AltUse;
       
  1657                 Count: 0;
       
  1658                 NumPerTurn: 0;
       
  1659                 Timer: 5000;
       
  1660                 Pos: 0;
       
  1661                 AmmoType: amHellishBomb;
       
  1662                 AttackVoice: sndNone);
       
  1663             Slot: 1;
       
  1664             TimeAfterTurn: 3000;
       
  1665             minAngle: 0;
       
  1666             maxAngle: 0;
       
  1667             isDamaging: true;
       
  1668             SkipTurns: 0;
       
  1669             PosCount: 1;
       
  1670             PosSprite: sprWater;
       
  1671             ejectX: 0;
       
  1672             ejectY: 0),
       
  1673 
       
  1674 // Napalm
       
  1675             (NameId: sidNapalm;
       
  1676             NameTex: nil;
       
  1677             Probability: 100;
       
  1678             NumberInCase: 1;
       
  1679             Ammo: (Propz: ammoprop_NoCrosshair or
       
  1680                             ammoprop_NeedTarget or
       
  1681                             ammoprop_AttackingPut or
       
  1682                             ammoprop_DontHold or
       
  1683                             ammoprop_NotBorder;
       
  1684                 Count: 1;
       
  1685                 NumPerTurn: 0;
       
  1686                 Timer: 0;
       
  1687                 Pos: 0;
       
  1688                 AmmoType: amNapalm;
       
  1689                 AttackVoice: sndIncoming);
       
  1690             Slot: 5;
       
  1691             TimeAfterTurn: 0;
       
  1692             minAngle: 0;
       
  1693             maxAngle: 0;
       
  1694             isDamaging: true;
       
  1695             SkipTurns: 7;
       
  1696             PosCount: 2;
       
  1697             PosSprite: sprAmAirplane;
       
  1698             ejectX: 0;
       
  1699             ejectY: 0),
       
  1700 
       
  1701 // Drill ("Drill Rocket")
       
  1702             (NameId: sidDrill;
       
  1703             NameTex: nil;
       
  1704             Probability: 300;
       
  1705             NumberInCase: 1;
       
  1706             Ammo: (Propz: ammoprop_Power or ammoprop_AltUse;
       
  1707                 Count: AMMO_INFINITE;
       
  1708                 NumPerTurn: 0;
       
  1709                 Timer: 0;
       
  1710                 Pos: 0;
       
  1711                 AmmoType: amDrill;
       
  1712                 AttackVoice: sndNone);
       
  1713             Slot: 0;
       
  1714             TimeAfterTurn: 3000;
       
  1715             minAngle: 0;
       
  1716             maxAngle: 0;
       
  1717             isDamaging: true;
       
  1718             SkipTurns: 0;
       
  1719             PosCount: 1;
       
  1720             PosSprite: sprDrill;
       
  1721             ejectX: 0; //20;
       
  1722             ejectY: -6),
       
  1723 
       
  1724 // Ballgun
       
  1725             (NameId: sidBallgun;
       
  1726             NameTex: nil;
       
  1727             Probability: 400;
       
  1728             NumberInCase: 1;
       
  1729             Ammo: (Propz:  ammoprop_ForwMsgs or ammoprop_DontHold;
       
  1730                 Count: AMMO_INFINITE;
       
  1731                 NumPerTurn: 0;
       
  1732                 Timer: 5001;
       
  1733                 Pos: 0;
       
  1734                 AmmoType: amBallgun;
       
  1735                 AttackVoice: sndNone);
       
  1736             Slot: 4;
       
  1737             TimeAfterTurn: 0;
       
  1738             minAngle: 0;
       
  1739             maxAngle: 0;
       
  1740             isDamaging: true;
       
  1741             SkipTurns: 0;
       
  1742             PosCount: 1;
       
  1743             PosSprite: sprWater;
       
  1744             ejectX: 0; //20;
       
  1745             ejectY: -3),
       
  1746 
       
  1747 // RC-Plane
       
  1748             (NameId: sidRCPlane;
       
  1749             NameTex: nil;
       
  1750             Probability: 200;
       
  1751             NumberInCase: 1;
       
  1752             Ammo: (Propz: ammoprop_ForwMsgs{ or
       
  1753                             ammoprop_DontHold or
       
  1754                             ammoprop_AltAttack};
       
  1755                 Count: 1;
       
  1756                 NumPerTurn: 0;
       
  1757                 Timer: 0;
       
  1758                 Pos: 0;
       
  1759                 AmmoType: amRCPlane;
       
  1760                 AttackVoice: sndNone);
       
  1761             Slot: 4;
       
  1762             TimeAfterTurn: 0;
       
  1763             minAngle: 0;
       
  1764             maxAngle: 0;
       
  1765             isDamaging: true;
       
  1766             SkipTurns: 4;
       
  1767             PosCount: 1;
       
  1768             PosSprite: sprWater;
       
  1769             ejectX: 0;
       
  1770             ejectY: 0),
       
  1771 
       
  1772 // LowGravity
       
  1773             (NameId: sidLowGravity;
       
  1774             NameTex: nil;
       
  1775             Probability: 20;
       
  1776             NumberInCase: 1;
       
  1777             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1778                           ammoprop_NoCrosshair or
       
  1779                           ammoprop_DontHold or
       
  1780                           ammoprop_AltUse or
       
  1781                           ammoprop_Utility or
       
  1782                           ammoprop_Effect;
       
  1783                     Count: 1;
       
  1784                     NumPerTurn: 0;
       
  1785                     Timer: 0;
       
  1786                     Pos: 0;
       
  1787                     AmmoType: amLowGravity;
       
  1788                     AttackVoice: sndNone);
       
  1789             Slot: 9;
       
  1790             TimeAfterTurn: 0;
       
  1791             minAngle: 0;
       
  1792             maxAngle: 0;
       
  1793             isDamaging: false;
       
  1794             SkipTurns: 0;
       
  1795             PosCount: 1;
       
  1796             PosSprite: sprWater;
       
  1797             ejectX: 0;
       
  1798             ejectY: 0),
       
  1799 
       
  1800 // ExtraDamage
       
  1801             (NameId: sidExtraDamage;
       
  1802             NameTex: nil;
       
  1803             Probability: 15;
       
  1804             NumberInCase: 1;
       
  1805             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1806                           ammoprop_NoCrosshair or
       
  1807                           ammoprop_DontHold or
       
  1808                           ammoprop_AltUse or
       
  1809                           ammoprop_Utility or
       
  1810                           ammoprop_Effect;
       
  1811                     Count: 1;
       
  1812                     NumPerTurn: 0;
       
  1813                     Timer: 0;
       
  1814                     Pos: 0;
       
  1815                     AmmoType: amExtraDamage;
       
  1816                     AttackVoice: sndNone);
       
  1817             Slot: 9;
       
  1818             TimeAfterTurn: 0;
       
  1819             minAngle: 0;
       
  1820             maxAngle: 0;
       
  1821             isDamaging: false;
       
  1822             SkipTurns: 0;
       
  1823             PosCount: 1;
       
  1824             PosSprite: sprWater;
       
  1825             ejectX: 0;
       
  1826             ejectY: 0),
       
  1827 
       
  1828 // Invulnerable
       
  1829             (NameId: sidInvulnerable;
       
  1830             NameTex: nil;
       
  1831             Probability: 20;
       
  1832             NumberInCase: 1;
       
  1833             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1834                           ammoprop_NoCrosshair or
       
  1835                           ammoprop_DontHold or
       
  1836                           ammoprop_AltUse or
       
  1837                           ammoprop_Utility or
       
  1838                           ammoprop_Effect;
       
  1839                     Count: 1;
       
  1840                     NumPerTurn: 0;
       
  1841                     Timer: 0;
       
  1842                     Pos: 0;
       
  1843                     AmmoType: amInvulnerable;
       
  1844                     AttackVoice: sndNone);
       
  1845             Slot: 8;
       
  1846             TimeAfterTurn: 0;
       
  1847             minAngle: 0;
       
  1848             maxAngle: 0;
       
  1849             isDamaging: false;
       
  1850             SkipTurns: 0;
       
  1851             PosCount: 1;
       
  1852             PosSprite: sprWater;
       
  1853             ejectX: 0;
       
  1854             ejectY: 0),
       
  1855 
       
  1856 // ExtraTime
       
  1857             (NameId: sidExtraTime;
       
  1858             NameTex: nil;
       
  1859             Probability: 30;
       
  1860             NumberInCase: 1;
       
  1861             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1862                           ammoprop_NoCrosshair or
       
  1863                           ammoprop_DontHold or
       
  1864                           ammoprop_AltUse or
       
  1865                           ammoprop_Utility or
       
  1866                           ammoprop_Effect;
       
  1867                     Count: 1;
       
  1868                     NumPerTurn: 0;
       
  1869                     Timer: 0;
       
  1870                     Pos: 0;
       
  1871                     AmmoType: amExtraTime;
       
  1872                     AttackVoice: sndNone);
       
  1873             Slot: 9;
       
  1874             TimeAfterTurn: 0;
       
  1875             minAngle: 0;
       
  1876             maxAngle: 0;
       
  1877             isDamaging: false;
       
  1878             SkipTurns: 0;
       
  1879             PosCount: 1;
       
  1880             PosSprite: sprWater;
       
  1881             ejectX: 0;
       
  1882             ejectY: 0),
       
  1883 
       
  1884 // LaserSight
       
  1885             (NameId: sidLaserSight;
       
  1886             NameTex: nil;
       
  1887             Probability: 15;
       
  1888             NumberInCase: 1;
       
  1889             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1890                           ammoprop_NoCrosshair or
       
  1891                           ammoprop_DontHold or
       
  1892                           ammoprop_AltUse or
       
  1893                           ammoprop_Utility or
       
  1894                           ammoprop_Effect;
       
  1895                     Count: 1;
       
  1896                     NumPerTurn: 0;
       
  1897                     Timer: 0;
       
  1898                     Pos: 0;
       
  1899                     AmmoType: amLaserSight;
       
  1900                     AttackVoice: sndNone);
       
  1901             Slot: 8;
       
  1902             TimeAfterTurn: 0;
       
  1903             minAngle: 0;
       
  1904             maxAngle: 0;
       
  1905             isDamaging: false;
       
  1906             SkipTurns: 0;
       
  1907             PosCount: 1;
       
  1908             PosSprite: sprWater;
       
  1909             ejectX: 0;
       
  1910             ejectY: 0),
       
  1911 
       
  1912 // Vampiric
       
  1913             (NameId: sidVampiric;
       
  1914             NameTex: nil;
       
  1915             Probability: 15;
       
  1916             NumberInCase: 1;
       
  1917             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1918                           ammoprop_NoCrosshair or
       
  1919                           ammoprop_DontHold or
       
  1920                           ammoprop_AltUse or
       
  1921                           ammoprop_Utility or
       
  1922                           ammoprop_Effect;
       
  1923                     Count: 1;
       
  1924                     NumPerTurn: 0;
       
  1925                     Timer: 0;
       
  1926                     Pos: 0;
       
  1927                     AmmoType: amVampiric;
       
  1928                     AttackVoice: sndNone);
       
  1929             Slot: 8;
       
  1930             TimeAfterTurn: 0;
       
  1931             minAngle: 0;
       
  1932             maxAngle: 0;
       
  1933             isDamaging: false;
       
  1934             SkipTurns: 0;
       
  1935             PosCount: 1;
       
  1936             PosSprite: sprWater;
       
  1937             ejectX: 0;
       
  1938             ejectY: 0),
       
  1939 
       
  1940 // SniperRifle
       
  1941             (NameId: sidSniperRifle;
       
  1942             NameTex: nil;
       
  1943             Probability: 20;
       
  1944             NumberInCase: 2;
       
  1945             Ammo: (Propz: 0;
       
  1946                 Count: 2;
       
  1947                 NumPerTurn: 1;
       
  1948                 Timer: 0;
       
  1949                 Pos: 0;
       
  1950                 AmmoType: amSniperRifle;
       
  1951                 AttackVoice: sndNone);
       
  1952             Slot: 2;
       
  1953             TimeAfterTurn: 3000;
       
  1954             minAngle: 0;
       
  1955             maxAngle: 0;
       
  1956             isDamaging: true;
       
  1957             SkipTurns: 0;
       
  1958             PosCount: 1;
       
  1959             PosSprite: sprWater;
       
  1960             ejectX: 0; //40;
       
  1961             ejectY: -5),
       
  1962 
       
  1963 // Jetpack ("Flying Saucer")
       
  1964             (NameId: sidJetpack;
       
  1965             NameTex: nil;
       
  1966             Probability: 20;
       
  1967             NumberInCase: 1;
       
  1968             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  1969                           ammoprop_ForwMsgs or
       
  1970                           ammoprop_AttackInMove or
       
  1971                           ammoprop_NoCrosshair or
       
  1972                           ammoprop_DontHold or
       
  1973                           ammoprop_Utility or
       
  1974                           ammoprop_AltAttack;
       
  1975                 Count: 1;
       
  1976                 NumPerTurn: 0;
       
  1977                 Timer: 0;
       
  1978                 Pos: 0;
       
  1979                 AmmoType: amJetpack;
       
  1980                 AttackVoice: sndNone);
       
  1981             Slot: 7;
       
  1982             TimeAfterTurn: 3000;
       
  1983             minAngle: 0;
       
  1984             maxAngle: 0;
       
  1985             isDamaging: false;
       
  1986             SkipTurns: 0;
       
  1987             PosCount: 1;
       
  1988             PosSprite: sprWater;
       
  1989             ejectX: 0;
       
  1990             ejectY: 0),
       
  1991 
       
  1992 // Molotov
       
  1993             (NameId: sidMolotov;
       
  1994             NameTex: nil;
       
  1995             Probability: 0;
       
  1996             NumberInCase: 1;
       
  1997             Ammo: (Propz: ammoprop_Power or ammoprop_AltUse;
       
  1998                 Count: AMMO_INFINITE;
       
  1999                 NumPerTurn: 0;
       
  2000                 Timer: 3000;
       
  2001                 Pos: 0;
       
  2002                 AmmoType: amMolotov;
       
  2003                 AttackVoice: sndNone);
       
  2004             Slot: 1;
       
  2005             TimeAfterTurn: 3000;
       
  2006             minAngle: 0;
       
  2007             maxAngle: 0;
       
  2008             isDamaging: true;
       
  2009             SkipTurns: 0;
       
  2010             PosCount: 1;
       
  2011             PosSprite: sprWater;
       
  2012             ejectX: 0;
       
  2013             ejectY: 0),
       
  2014 
       
  2015 // Birdy
       
  2016             (NameId: sidBirdy;
       
  2017             NameTex: nil;
       
  2018             Probability: 20;
       
  2019             NumberInCase: 1;
       
  2020             Ammo: (Propz: ammoprop_ForwMsgs or
       
  2021                           ammoprop_NoCrosshair or
       
  2022                           ammoprop_DontHold;
       
  2023                 Count: 1;
       
  2024                 NumPerTurn: 0;
       
  2025                 Timer: 0;
       
  2026                 Pos: 0;
       
  2027                 AmmoType: amBirdy;
       
  2028                 AttackVoice: sndNone);
       
  2029             Slot: 7;
       
  2030             TimeAfterTurn: 3000;
       
  2031             minAngle: 0;
       
  2032             maxAngle: 0;
       
  2033             isDamaging: true;
       
  2034             SkipTurns: 0;
       
  2035             PosCount: 1;
       
  2036             PosSprite: sprWater;
       
  2037             ejectX: 0;
       
  2038             ejectY: 0),
       
  2039 
       
  2040 // PortalGun
       
  2041             (NameId: sidPortalGun;
       
  2042             NameTex: nil;
       
  2043             Probability: 20;
       
  2044             NumberInCase: 1;
       
  2045             Ammo: (Propz: ammoprop_NoRoundEnd or
       
  2046                           ammoprop_AttackInMove or
       
  2047                           ammoprop_DontHold or
       
  2048                           ammoprop_Utility;
       
  2049                 Count: 1;
       
  2050                 NumPerTurn: 3;
       
  2051                 Timer: 0;
       
  2052                 Pos: 0;
       
  2053                 AmmoType: amPortalGun;
       
  2054                 AttackVoice: sndNone);
       
  2055             Slot: 6;
       
  2056             TimeAfterTurn: 0;
       
  2057             minAngle: 0;
       
  2058             maxAngle: 0;
       
  2059             isDamaging: false;
       
  2060             SkipTurns: 0;
       
  2061             PosCount: 1;
       
  2062             PosSprite: sprWater;
       
  2063             ejectX: -5; //29;
       
  2064             ejectY: -7),
       
  2065 
       
  2066 // Piano
       
  2067             (NameId: sidPiano;
       
  2068             NameTex: nil;
       
  2069             Probability: 100;
       
  2070             NumberInCase: 1;
       
  2071             Ammo: (Propz: ammoprop_NoCrosshair or
       
  2072                             ammoprop_NeedTarget or
       
  2073                             ammoprop_AttackingPut or
       
  2074                             ammoprop_DontHold or
       
  2075                             ammoprop_NotBorder;
       
  2076                 Count: 1;
       
  2077                 NumPerTurn: 0;
       
  2078                 Timer: 0;
       
  2079                 Pos: 0;
       
  2080                 AmmoType: amPiano;
       
  2081                 AttackVoice: sndIncoming);
       
  2082             Slot: 5;
       
  2083             TimeAfterTurn: 0;
       
  2084             minAngle: 0;
       
  2085             maxAngle: 0;
       
  2086             isDamaging: true;
       
  2087             SkipTurns: 7;
       
  2088             PosCount: 1;
       
  2089             PosSprite: sprWater;
       
  2090             ejectX: 0;
       
  2091             ejectY: 0),
       
  2092 
       
  2093 // GasBomb
       
  2094             (NameId: sidGasBomb;
       
  2095             NameTex: nil;
       
  2096             Probability: 0;
       
  2097             NumberInCase: 1;
       
  2098             Ammo: (Propz: ammoprop_Timerable or ammoprop_Power or ammoprop_AltUse;
       
  2099                 Count: AMMO_INFINITE;
       
  2100                 NumPerTurn: 0;
       
  2101                 Timer: 3000;
       
  2102                 Pos: 0;
       
  2103                 AmmoType: amGasBomb;
       
  2104                 AttackVoice: sndCover);
       
  2105             Slot: 1;
       
  2106             TimeAfterTurn: 3000;
       
  2107             minAngle: 0;
       
  2108             maxAngle: 0;
       
  2109             isDamaging: true;
       
  2110             SkipTurns: 0;
       
  2111             PosCount: 1;
       
  2112             PosSprite: sprWater;
       
  2113             ejectX: 0;
       
  2114             ejectY: 0),
       
  2115 
       
  2116 // SineGun
       
  2117             (NameId: sidSineGun;
       
  2118             NameTex: nil;
       
  2119             Probability: 20;
       
  2120             NumberInCase: 2;
       
  2121             Ammo: (Propz: ammoprop_AttackInMove;
       
  2122                 Count: 1;
       
  2123                 NumPerTurn: 0;
       
  2124                 Timer: 0;
       
  2125                 Pos: 0;
       
  2126                 AmmoType: amSineGun;
       
  2127                 AttackVoice: sndNone);
       
  2128             Slot: 2;
       
  2129             TimeAfterTurn: 0;
       
  2130             minAngle: 0;
       
  2131             maxAngle: 0;
       
  2132             isDamaging: true;
       
  2133             SkipTurns: 0;
       
  2134             PosCount: 1;
       
  2135             PosSprite: sprWater;
       
  2136             ejectX: 0;
       
  2137             ejectY: 0),
       
  2138 
       
  2139 // Flamethrower
       
  2140             (NameId: sidFlamethrower;
       
  2141             NameTex: nil;
       
  2142             Probability: 20;
       
  2143             NumberInCase: 1;
       
  2144             Ammo: (Propz:  ammoprop_ForwMsgs or ammoprop_DontHold;
       
  2145                 Count: 1;
       
  2146                 NumPerTurn: 0;
       
  2147                 Timer: 5001;
       
  2148                 Pos: 0;
       
  2149                 AmmoType: amFlamethrower;
       
  2150                 AttackVoice: sndNone);
       
  2151             Slot: 2;
       
  2152             TimeAfterTurn: 0;
       
  2153             minAngle: 0;
       
  2154             maxAngle: 0;
       
  2155             isDamaging: true;
       
  2156             SkipTurns: 0;
       
  2157             PosCount: 1;
       
  2158             PosSprite: sprWater;
       
  2159             ejectX: 0; //20;
       
  2160             ejectY: -3),
       
  2161 
       
  2162 // Sticky Mine
       
  2163             (NameId: sidSMine;
       
  2164             NameTex: nil;
       
  2165             Probability: 100;
       
  2166             NumberInCase: 1;
       
  2167             Ammo: (Propz: ammoprop_Power; //FIXME: enable multishoot at altuse, until then removed ammoprop_AltUse
       
  2168                 Count: 1;
       
  2169                 NumPerTurn: 1;
       
  2170                 Timer: 0;
       
  2171                 Pos: 0;
       
  2172                 AmmoType: amSMine;
       
  2173                 AttackVoice: sndLaugh);
       
  2174             Slot: 4;
       
  2175             TimeAfterTurn: 5000;
       
  2176             minAngle: 0;
       
  2177             maxAngle: 0;
       
  2178             isDamaging: true;
       
  2179             SkipTurns: 0;
       
  2180             PosCount: 1;
       
  2181             PosSprite: sprWater;
       
  2182             ejectX: 0;
       
  2183             ejectY: 0),
       
  2184 
       
  2185 // Hammer
       
  2186             (NameId: sidHammer;
       
  2187             NameTex: nil;
       
  2188             Probability: 0;
       
  2189             NumberInCase: 1;
       
  2190             Ammo: (Propz: ammoprop_NoCrosshair;
       
  2191                 Count: 1;
       
  2192                 NumPerTurn: 0;
       
  2193                 Timer: 0;
       
  2194                 Pos: 0;
       
  2195                 AmmoType: amHammer;
       
  2196                 AttackVoice: sndNone);
       
  2197             Slot: 3;
       
  2198             TimeAfterTurn: 1000;
       
  2199             MinAngle: 0;
       
  2200             maxAngle: 0;
       
  2201             isDamaging: true;
       
  2202             SkipTurns: 0;
       
  2203             PosCount: 1;
       
  2204             PosSprite: sprWater;
       
  2205             ejectX: 0;
       
  2206             ejectY: 0),
       
  2207 
       
  2208 // Ressurrector
       
  2209         (NameId: sidResurrector;
       
  2210             NameTex: nil;
       
  2211             Probability: 0;
       
  2212             NumberInCase: 1;
       
  2213             Ammo: (Propz: ammoprop_NoCrosshair or 
       
  2214                           ammoprop_Utility or
       
  2215                           ammoprop_NoRoundEnd;
       
  2216                 Count: 1;
       
  2217                 NumPerTurn: 0;
       
  2218                 Timer: 0;
       
  2219                 Pos: 0;
       
  2220                 AmmoType: amResurrector;
       
  2221                 AttackVoice: sndNone);
       
  2222             Slot: 8;
       
  2223             TimeAfterTurn: 3000;
       
  2224             minAngle: 0;
       
  2225             maxAngle: 0;
       
  2226             isDamaging: true;
       
  2227             SkipTurns: 0;
       
  2228             PosCount: 1;
       
  2229             PosSprite: sprWater;
       
  2230             ejectX: 0;
       
  2231             ejectY: 0),
       
  2232 
       
  2233 // DrillStrike
       
  2234             (NameId: sidDrillStrike;
       
  2235             NameTex: nil;
       
  2236             Probability: 200;
       
  2237             NumberInCase: 1;
       
  2238             Ammo: (Propz: ammoprop_NoCrosshair or
       
  2239                             ammoprop_NeedTarget or
       
  2240                             ammoprop_AttackingPut or
       
  2241                             ammoprop_DontHold or
       
  2242                             ammoprop_NotBorder;
       
  2243                 Count: 1;
       
  2244                 NumPerTurn: 0;
       
  2245                 Timer: 0;
       
  2246                 Pos: 0;
       
  2247                 AmmoType: amDrillStrike;
       
  2248                 AttackVoice: sndIncoming);
       
  2249             Slot: 5;
       
  2250             TimeAfterTurn: 0;
       
  2251             minAngle: 0;
       
  2252             maxAngle: 0;
       
  2253             isDamaging: true;
       
  2254             SkipTurns: 6;
       
  2255             PosCount: 2;
       
  2256             PosSprite: sprAmAirplane;
       
  2257             ejectX: 0;
       
  2258             ejectY: 0)
       
  2259         );
       
  2260 
       
  2261 
       
  2262 
       
  2263     conversionFormat: TSDL_PixelFormat = (
       
  2264         palette: nil;
       
  2265         BitsPerPixel : 32;
       
  2266         BytesPerPixel: 4;
       
  2267         Rloss : 0;
       
  2268         Gloss : 0;
       
  2269         Bloss : 0;
       
  2270         Aloss : 0;
       
  2271 {$IFDEF ENDIAN_LITTLE}
       
  2272         Rshift: 0;
       
  2273         Gshift: 8;
       
  2274         Bshift: 16;
       
  2275         Ashift: 24;
       
  2276 {$ELSE}
       
  2277         Rshift: 24;
       
  2278         Gshift: 16;
       
  2279         Bshift: 8;
       
  2280         Ashift: 0;
       
  2281 {$ENDIF}
       
  2282         RMask : RMask;
       
  2283         GMask : GMask;
       
  2284         BMask : BMask;
       
  2285         AMask : AMask;
       
  2286         colorkey: 0;
       
  2287         alpha : 255
       
  2288     );
       
  2289 
   272 
  2290 implementation
   273 implementation
  2291 
   274 
  2292 end.
   275 end.