hedgewars/uConsts.pas
changeset 1259 0c660c3d98a4
parent 1242 4aca5f7b2504
child 1261 903058d382c7
equal deleted inserted replaced
1258:2a9843339910 1259:0c660c3d98a4
    21 uses SDLh, GL, uLocale;
    21 uses SDLh, GL, uLocale;
    22 {$INCLUDE options.inc}
    22 {$INCLUDE options.inc}
    23 {$INCLUDE proto.inc}
    23 {$INCLUDE proto.inc}
    24 type
    24 type
    25 
    25 
    26      TGameState = (gsLandGen, gsStart, gsGame, gsChat, gsConfirm, gsExit);
    26 	TGameState = (gsLandGen, gsStart, gsGame, gsChat, gsConfirm, gsExit);
    27 
    27 
    28      TGameType  = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview);
    28 	TGameType = (gmtLocal, gmtDemo, gmtNet, gmtSave, gmtLandPreview);
    29 
    29 
    30      TPathType  = (ptNone, ptData, ptGraphics, ptThemes, ptCurrTheme, ptTeams, ptMaps,
    30 	TPathType = (ptNone, ptData, ptGraphics, ptThemes, ptCurrTheme, ptTeams, ptMaps,
    31                    ptMapCurrent, ptDemos, ptSounds, ptGraves, ptFonts, ptForts,
    31 			ptMapCurrent, ptDemos, ptSounds, ptGraves, ptFonts, ptForts,
    32                    ptLocale, ptAmmoMenu, ptHedgehog, ptVoices, ptHats);
    32 			ptLocale, ptAmmoMenu, ptHedgehog, ptVoices, ptHats);
    33 
    33 
    34      TSprite    = (sprWater, sprCloud, sprBomb, sprBigDigit, sprFrame,
    34 	TSprite = (sprWater, sprCloud, sprBomb, sprBigDigit, sprFrame,
    35                    sprLag, sprArrow, sprGrenade, sprTargetP, sprUFO,
    35 			sprLag, sprArrow, sprGrenade, sprTargetP, sprUFO,
    36                    sprSmokeTrace, sprRopeHook, sprExplosion50, sprMineOff,
    36 			sprSmokeTrace, sprRopeHook, sprExplosion50, sprMineOff,
    37                    sprMineOn, sprCase, sprFAid, sprDynamite, sprPower,
    37 			sprMineOn, sprCase, sprFAid, sprDynamite, sprPower,
    38                    sprClusterBomb, sprClusterParticle, sprFlame, sprHorizont,
    38 			sprClusterBomb, sprClusterParticle, sprFlame, sprHorizont,
    39                    sprSky, sprAMBorders, sprAMSlot, sprAMSlotName, sprAMAmmos,
    39 			sprSky, sprAMBorders, sprAMSlot, sprAMSlotName, sprAMAmmos,
    40                    sprAMSlotKeys, sprAMSelection, sprFinger, sprAirBomb,
    40 			sprAMSlotKeys, sprAMSelection, sprFinger, sprAirBomb,
    41                    sprAirplane, sprAmAirplane, sprAmGirder, sprHHTelepMask,
    41 			sprAirplane, sprAmAirplane, sprAmGirder, sprHHTelepMask,
    42                    sprSwitch, sprParachute, sprTarget, sprRopeNode,
    42 			sprSwitch, sprParachute, sprTarget, sprRopeNode,
    43                    sprQuestion, sprPowerBar, sprWindBar, sprWindL, sprWindR,
    43 			sprQuestion, sprPowerBar, sprWindBar, sprWindL, sprWindR,
    44                    sprFlake, sprHandRope, sprHandBazooka, sprHandShotgun,
    44 			sprFlake, sprHandRope, sprHandBazooka, sprHandShotgun,
    45                    sprHandDEagle, sprHandAirAttack, sprHandBaseball, sprPHammer,
    45 			sprHandDEagle, sprHandAirAttack, sprHandBaseball, sprPHammer,
    46                    sprHandBlowTorch, sprBlowTorch, sprTeleport, sprHHDeath,
    46 			sprHandBlowTorch, sprBlowTorch, sprTeleport, sprHHDeath,
    47                    sprShotgun, sprDEagle, sprHHIdle, sprMortar, sprTurnsLeft,
    47 			sprShotgun, sprDEagle, sprHHIdle, sprMortar, sprTurnsLeft,
    48                    sprKamikaze, sprWhip, sprKowtow, sprSad, sprWave,
    48 			sprKamikaze, sprWhip, sprKowtow, sprSad, sprWave,
    49                    sprHurrah, sprLemonade, sprExplPart, sprExplPart2,
    49 			sprHurrah, sprLemonade, sprExplPart, sprExplPart2,
    50                    sprCakeWalk, sprCakeDown, sprAMAmmosBW);
    50 			sprCakeWalk, sprCakeDown, sprAMAmmosBW);
    51 
    51 
    52      TGearType  = (gtAmmo_Bomb, gtHedgehog, gtAmmo_Grenade, gtHealthTag,
    52 	TGearType = (gtAmmo_Bomb, gtHedgehog, gtAmmo_Grenade, gtHealthTag,
    53                    gtGrave, gtUFO, gtShotgunShot, gtPickHammer, gtRope,
    53 			gtGrave, gtUFO, gtShotgunShot, gtPickHammer, gtRope,
    54                    gtSmokeTrace, gtExplosion, gtMine, gtCase, gtDEagleShot, gtDynamite,
    54 			gtSmokeTrace, gtExplosion, gtMine, gtCase, gtDEagleShot, gtDynamite,
    55                    gtTeamHealthSorter, gtClusterBomb, gtCluster, gtShover, gtFlame,
    55 			gtTeamHealthSorter, gtClusterBomb, gtCluster, gtShover, gtFlame,
    56                    gtFirePunch, gtATStartGame, gtATSmoothWindCh, gtATFinishGame,
    56 			gtFirePunch, gtATStartGame, gtATSmoothWindCh, gtATFinishGame,
    57                    gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, gtGirder,
    57 			gtParachute, gtAirAttack, gtAirBomb, gtBlowTorch, gtGirder,
    58                    gtTeleport, gtSmallDamage, gtSwitcher, gtTarget, gtMortar,
    58 			gtTeleport, gtSmallDamage, gtSwitcher, gtTarget, gtMortar,
    59                    gtWhip, gtKamikaze, gtCake);
    59 			gtWhip, gtKamikaze, gtCake, gtSeduction);
    60 
    60 
    61      TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire);
    61 	TVisualGearType = (vgtFlake, vgtCloud, vgtExplPart, vgtExplPart2, vgtFire);
    62 
    62 
    63      TGearsType = set of TGearType;
    63 	TGearsType = set of TGearType;
    64 
    64 
    65      TSound     = (sndGrenadeImpact, sndExplosion, sndThrowPowerUp, sndThrowRelease,
    65 	TSound = (sndGrenadeImpact, sndExplosion, sndThrowPowerUp, sndThrowRelease,
    66                    sndSplash, sndShotgunReload, sndShotgunFire, sndGraveImpact,
    66 			sndSplash, sndShotgunReload, sndShotgunFire, sndGraveImpact,
    67                    sndMineTick, sndPickhammer, sndGun, sndUFO, sndJump1, sndJump2,
    67 			sndMineTick, sndPickhammer, sndGun, sndUFO, sndJump1, sndJump2,
    68                    sndJump3, sndYesSir, sndLaugh, sndIllGetYou, sndIncoming,
    68 			sndJump3, sndYesSir, sndLaugh, sndIllGetYou, sndIncoming,
    69                    sndMissed, sndStupid, sndFirstBlood, sndBoring, sndByeBye,
    69 			sndMissed, sndStupid, sndFirstBlood, sndBoring, sndByeBye,
    70                    sndSameTeam, sndNutter, sndReinforce, sndTraitor, sndRegret,
    70 			sndSameTeam, sndNutter, sndReinforce, sndTraitor, sndRegret,
    71                    sndEnemyDown, sndCoward, sndHurry, sndWatchIt, sndKamikaze,
    71 			sndEnemyDown, sndCoward, sndHurry, sndWatchIt, sndKamikaze,
    72                    sndCake, sndOw1, sndOw4);
    72 			sndCake, sndOw1, sndOw4);
    73 
    73 
    74      TAmmoType  = (amGrenade, amClusterBomb, amBazooka, amUFO, amShotgun, amPickHammer,
    74 	TAmmoType  = (amGrenade, amClusterBomb, amBazooka, amUFO, amShotgun, amPickHammer,
    75                    amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch, amWhip,
    75 			amSkip, amRope, amMine, amDEagle, amDynamite, amFirePunch, amWhip,
    76                    amBaseballBat, amParachute, amAirAttack, amMineStrike, amBlowTorch,
    76 			amBaseballBat, amParachute, amAirAttack, amMineStrike, amBlowTorch,
    77                    amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake,
    77 			amGirder, amTeleport, amSwitch, amMortar, amKamikaze, amCake,
    78                    amSeduction);
    78 			amSeduction);
    79 
    79 
    80      THWFont    = (fnt16, fntBig, fntSmall);
    80 	THWFont = (fnt16, fntBig, fntSmall);
    81 
    81 
    82      TCapGroup  = (capgrpGameState, capgrpAmmoinfo, capgrpNetSay, capgrpVolume);
    82 	TCapGroup = (capgrpGameState, capgrpAmmoinfo, capgrpNetSay, capgrpVolume);
    83 
    83 
    84      TStatInfoType = (siGameResult, siMaxStepDamage, siMaxStepKills, siKilledHHs);
    84 	TStatInfoType = (siGameResult, siMaxStepDamage, siMaxStepKills, siKilledHHs);
    85 
    85 
    86      TWave = (waveRollup, waveSad,waveWave, waveHurrah, waveLemonade);
    86 	TWave = (waveRollup, waveSad,waveWave, waveHurrah, waveLemonade);
    87 
    87 
    88      THHFont    = record
    88 	THHFont = record
    89                   Handle: PTTF_Font;
    89 			Handle: PTTF_Font;
    90                   Height: LongInt;
    90 			Height: LongInt;
    91                   style: LongInt;
    91 			style: LongInt;
    92                   Name: string[19];
    92 			Name: string[19];
    93                   end;
    93 			end;
    94 
    94 
    95      PAmmo = ^TAmmo;
    95 	PAmmo = ^TAmmo;
    96      TAmmo = record
    96 	TAmmo = record
    97              Propz: LongWord;
    97 			Propz: LongWord;
    98              Count: LongWord;
    98 			Count: LongWord;
    99              NumPerTurn: LongWord;
    99 			NumPerTurn: LongWord;
   100              Timer: LongWord;
   100 			Timer: LongWord;
   101              Pos: LongWord;
   101 			Pos: LongWord;
   102              AmmoType: TAmmoType;
   102 			AmmoType: TAmmoType;
   103              end;
   103 			end;
   104      TTexture = record
   104 	TTexture = record
   105                 id: GLuint;
   105 			id: GLuint;
   106                 w, h: LongInt;
   106 			w, h: LongInt;
   107                 end;
   107 			end;
   108      PTexture = ^TTexture;
   108 	PTexture = ^TTexture;
   109 
   109 
   110 
   110 
   111 const
   111 const
   112       errmsgCreateSurface   = 'Error creating SDL surface';
   112 	errmsgCreateSurface   = 'Error creating SDL surface';
   113       errmsgTransparentSet  = 'Error setting transparent color';
   113 	errmsgTransparentSet  = 'Error setting transparent color';
   114       errmsgUnknownCommand  = 'Unknown command';
   114 	errmsgUnknownCommand  = 'Unknown command';
   115       errmsgUnknownVariable = 'Unknown variable';
   115 	errmsgUnknownVariable = 'Unknown variable';
   116       errmsgIncorrectUse    = 'Incorrect use';
   116 	errmsgIncorrectUse    = 'Incorrect use';
   117       errmsgShouldntRun     = 'This program shouldn''t be run manually';
   117 	errmsgShouldntRun     = 'This program shouldn''t be run manually';
   118       errmsgWrongNumber     = 'Wrong parameters number';
   118 	errmsgWrongNumber     = 'Wrong parameters number';
   119 
   119 
   120       msgLoading           = 'Loading ';
   120 	msgLoading           = 'Loading ';
   121       msgOK                = 'ok';
   121 	msgOK                = 'ok';
   122       msgFailed            = 'failed';
   122 	msgFailed            = 'failed';
   123       msgGettingConfig     = 'Getting game config...';
   123 	msgGettingConfig     = 'Getting game config...';
   124 
   124 
   125 const
   125 const
   126 	cMaxPower     = 1500;
   126 	cMaxPower     = 1500;
   127 	cMaxAngle     = 2048;
   127 	cMaxAngle     = 2048;
   128 	cPowerDivisor = 1500;
   128 	cPowerDivisor = 1500;
   266 			'Graphics/Hedgehog',             // ptHedgehog
   266 			'Graphics/Hedgehog',             // ptHedgehog
   267 			'Sounds/voices',                 // ptVoices
   267 			'Sounds/voices',                 // ptVoices
   268 			'Graphics/Hats'                  // ptHats
   268 			'Graphics/Hats'                  // ptHats
   269 			);
   269 			);
   270 
   270 
   271       SpritesData: array[TSprite] of record
   271 	SpritesData: array[TSprite] of record
   272                      FileName: String[14];
   272 			FileName: String[14];
   273                      Path, AltPath: TPathType;
   273 			Path, AltPath: TPathType;
   274                      Texture: PTexture;
   274 			Texture: PTexture;
   275                      Surface: PSDL_Surface;
   275 			Surface: PSDL_Surface;
   276                      Width, Height: LongInt;
   276 			Width, Height: LongInt;
   277                      saveSurf: boolean;
   277 			saveSurf: boolean;
   278                      end = (
   278 			end = (
   279                      (FileName:  'BlueWater'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
   279 			(FileName:  'BlueWater'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
   280                       Width: 256; Height: 32; saveSurf: false),// sprWater
   280 			Width: 256; Height: 32; saveSurf: false),// sprWater
   281                      (FileName:     'Clouds'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
   281 			(FileName:     'Clouds'; Path: ptCurrTheme;AltPath: ptGraphics; Texture: nil; Surface: nil;
   282                       Width: 256; Height:128; saveSurf: false),// sprCloud
   282 			Width: 256; Height:128; saveSurf: false),// sprCloud
   283                      (FileName:       'Bomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   283 			(FileName:       'Bomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   284                       Width:   8; Height:  8; saveSurf: false),// sprBomb
   284 			Width:   8; Height:  8; saveSurf: false),// sprBomb
   285                      (FileName:  'BigDigits'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   285 			(FileName:  'BigDigits'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   286                       Width:  32; Height: 32; saveSurf: false),// sprBigDigit
   286 			Width:  32; Height: 32; saveSurf: false),// sprBigDigit
   287                      (FileName:      'Frame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   287 			(FileName:      'Frame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   288                       Width:   4; Height: 32; saveSurf: false),// sprFrame
   288 			Width:   4; Height: 32; saveSurf: false),// sprFrame
   289                      (FileName:        'Lag'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   289 			(FileName:        'Lag'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   290                       Width:  65; Height: 65; saveSurf: false),// sprLag
   290 			Width:  65; Height: 65; saveSurf: false),// sprLag
   291                      (FileName:      'Arrow'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   291 			(FileName:      'Arrow'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   292                       Width:  16; Height: 16; saveSurf: false),// sprCursor
   292 			Width:  16; Height: 16; saveSurf: false),// sprCursor
   293                      (FileName:    'Grenade'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   293 			(FileName:    'Grenade'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   294                       Width:  16; Height: 16; saveSurf: false),// sprGrenade
   294 			Width:  16; Height: 16; saveSurf: false),// sprGrenade
   295                      (FileName:    'Targetp'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   295 			(FileName:    'Targetp'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   296                       Width:  32; Height: 32; saveSurf: false),// sprTargetP
   296 			Width:  32; Height: 32; saveSurf: false),// sprTargetP
   297                      (FileName:        'UFO'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   297 			(FileName:        'UFO'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   298                       Width:  32; Height: 32; saveSurf: false),// sprUFO
   298 			Width:  32; Height: 32; saveSurf: false),// sprUFO
   299                      (FileName: 'SmokeTrace'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   299 			(FileName: 'SmokeTrace'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   300                       Width:  32; Height: 32; saveSurf: false),// sprSmokeTrace
   300 			Width:  32; Height: 32; saveSurf: false),// sprSmokeTrace
   301                      (FileName:   'RopeHook'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   301 			(FileName:   'RopeHook'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   302                       Width:  16; Height: 16; saveSurf: false),// sprRopeHook
   302 			Width:  16; Height: 16; saveSurf: false),// sprRopeHook
   303                      (FileName:     'Expl50'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   303 			(FileName:     'Expl50'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   304                       Width:  64; Height: 64; saveSurf: false),// sprExplosion50
   304 			Width:  64; Height: 64; saveSurf: false),// sprExplosion50
   305                      (FileName:    'MineOff'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   305 			(FileName:    'MineOff'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   306                       Width:   8; Height:  8; saveSurf: false),// sprMineOff
   306 			Width:   8; Height:  8; saveSurf: false),// sprMineOff
   307                      (FileName:     'MineOn'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   307 			(FileName:     'MineOn'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   308                       Width:   8; Height:  8; saveSurf: false),// sprMineOn
   308 			Width:   8; Height:  8; saveSurf: false),// sprMineOn
   309                      (FileName:       'Case'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   309 			(FileName:       'Case'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   310                       Width:  32; Height: 32; saveSurf: false),// sprCase
   310 			Width:  32; Height: 32; saveSurf: false),// sprCase
   311                      (FileName:   'FirstAid'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   311 			(FileName:   'FirstAid'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   312                       Width:  48; Height: 48; saveSurf: false),// sprFAid
   312 			Width:  48; Height: 48; saveSurf: false),// sprFAid
   313                      (FileName:   'dynamite'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   313 			(FileName:   'dynamite'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   314                       Width:  32; Height: 32; saveSurf: false),// sprDynamite
   314 			Width:  32; Height: 32; saveSurf: false),// sprDynamite
   315                      (FileName:      'Power'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   315 			(FileName:      'Power'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   316                       Width:  32; Height: 32; saveSurf: false),// sprPower
   316 			Width:  32; Height: 32; saveSurf: false),// sprPower
   317                      (FileName:     'ClBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   317 			(FileName:     'ClBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   318                       Width:  16; Height: 16; saveSurf: false),// sprClusterBomb
   318 			Width:  16; Height: 16; saveSurf: false),// sprClusterBomb
   319                      (FileName: 'ClParticle'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   319 			(FileName: 'ClParticle'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   320                       Width:  16; Height: 16; saveSurf: false),// sprClusterParticle
   320 			Width:  16; Height: 16; saveSurf: false),// sprClusterParticle
   321                      (FileName:      'Flame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   321 			(FileName:      'Flame'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   322                       Width:  16; Height: 16; saveSurf: false),// sprFlame
   322 			Width:  16; Height: 16; saveSurf: false),// sprFlame
   323                      (FileName:   'horizont'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
   323 			(FileName:   'horizont'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
   324                       Width:   0; Height:  0; saveSurf: false),// sprHorizont
   324 			Width:   0; Height:  0; saveSurf: false),// sprHorizont
   325                      (FileName:        'Sky'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
   325 			(FileName:        'Sky'; Path: ptCurrTheme;AltPath: ptNone; Texture: nil; Surface: nil;
   326                       Width:   0; Height:  0; saveSurf: false),// sprSky
   326 			Width:   0; Height:  0; saveSurf: false),// sprSky
   327                      (FileName:  'BrdrLines'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   327 			(FileName:  'BrdrLines'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   328                       Width: 202; Height:  1; saveSurf: false),// sprAMBorders
   328 			Width: 202; Height:  1; saveSurf: false),// sprAMBorders
   329                      (FileName:       'Slot'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   329 			(FileName:       'Slot'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   330                       Width: 202; Height: 33; saveSurf: false),// sprAMSlot
   330 			Width: 202; Height: 33; saveSurf: false),// sprAMSlot
   331                      (FileName:   'AmmoName'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   331 			(FileName:   'AmmoName'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   332                       Width: 202; Height: 33; saveSurf: false),// sprAMSlotName
   332 			Width: 202; Height: 33; saveSurf: false),// sprAMSlotName
   333                      (FileName:      'Ammos'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   333 			(FileName:      'Ammos'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   334                       Width:  32; Height: 32; saveSurf: false),// sprAMAmmos
   334 			Width:  32; Height: 32; saveSurf: false),// sprAMAmmos
   335                      (FileName:   'SlotKeys'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   335 			(FileName:   'SlotKeys'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   336                       Width:  32; Height: 32; saveSurf: false),// sprAMSlotKeys
   336 			Width:  32; Height: 32; saveSurf: false),// sprAMSlotKeys
   337                      (FileName:  'Selection'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   337 			(FileName:  'Selection'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   338                       Width:  32; Height: 32; saveSurf: false),// sprAMSelection
   338 			Width:  32; Height: 32; saveSurf: false),// sprAMSelection
   339                      (FileName:     'Finger'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   339 			(FileName:     'Finger'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   340                       Width:  32; Height: 48; saveSurf: false),// sprFinger
   340 			Width:  32; Height: 48; saveSurf: false),// sprFinger
   341                      (FileName:    'AirBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   341 			(FileName:    'AirBomb'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   342                       Width:  16; Height: 16; saveSurf: false),// sprAirBomb
   342 			Width:  16; Height: 16; saveSurf: false),// sprAirBomb
   343                      (FileName:   'Airplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   343 			(FileName:   'Airplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   344                       Width: 125; Height: 42; saveSurf: false),// sprAirplane
   344 			Width: 125; Height: 42; saveSurf: false),// sprAirplane
   345                      (FileName: 'amAirplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   345 			(FileName: 'amAirplane'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   346                       Width:  64; Height: 32; saveSurf: false),// sprAmAirplane
   346 			Width:  64; Height: 32; saveSurf: false),// sprAmAirplane
   347                      (FileName:   'amGirder'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   347 			(FileName:   'amGirder'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   348                       Width: 160; Height:160; saveSurf:  true),// sprAmGirder
   348 			Width: 160; Height:160; saveSurf:  true),// sprAmGirder
   349                      (FileName:     'hhMask'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   349 			(FileName:     'hhMask'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   350                       Width:  32; Height: 32; saveSurf:  true),// sprHHTelepMask
   350 			Width:  32; Height: 32; saveSurf:  true),// sprHHTelepMask
   351                      (FileName:     'Switch'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   351 			(FileName:     'Switch'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   352                       Width:  32; Height: 32; saveSurf: false),// sprSwitch
   352 			Width:  32; Height: 32; saveSurf: false),// sprSwitch
   353                      (FileName:  'Parachute'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   353 			(FileName:  'Parachute'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   354                       Width:  48; Height: 48; saveSurf: false),// sprParachute
   354 			Width:  48; Height: 48; saveSurf: false),// sprParachute
   355                      (FileName:     'Target'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   355 			(FileName:     'Target'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   356                       Width:  32; Height: 32; saveSurf: false),// sprTarget
   356 			Width:  32; Height: 32; saveSurf: false),// sprTarget
   357                      (FileName:   'RopeNode'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   357 			(FileName:   'RopeNode'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   358                       Width:   6; Height:  6; saveSurf: false),// sprRopeNode
   358 			Width:   6; Height:  6; saveSurf: false),// sprRopeNode
   359                      (FileName:   'thinking'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   359 			(FileName:   'thinking'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   360                       Width:  32; Height: 32; saveSurf: false),// sprQuestion
   360 			Width:  32; Height: 32; saveSurf: false),// sprQuestion
   361                      (FileName:   'PowerBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   361 			(FileName:   'PowerBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   362                       Width: 256; Height: 32; saveSurf: false),// sprPowerBar
   362 			Width: 256; Height: 32; saveSurf: false),// sprPowerBar
   363                      (FileName:    'WindBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   363 			(FileName:    'WindBar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   364                       Width: 151; Height: 17; saveSurf: false),// sprWindBar
   364 			Width: 151; Height: 17; saveSurf: false),// sprWindBar
   365                      (FileName:      'WindL'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   365 			(FileName:      'WindL'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   366                       Width:  80; Height: 13; saveSurf: false),// sprWindL
   366 			Width:  80; Height: 13; saveSurf: false),// sprWindL
   367                      (FileName:      'WindR'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   367 			(FileName:      'WindR'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   368                       Width:  80; Height: 13; saveSurf: false),// sprWindR
   368 			Width:  80; Height: 13; saveSurf: false),// sprWindR
   369                      (FileName:      'Flake'; Path:ptCurrTheme; AltPath: ptNone; Texture: nil; Surface: nil;
   369 			(FileName:      'Flake'; Path:ptCurrTheme; AltPath: ptNone; Texture: nil; Surface: nil;
   370                       Width:  64; Height: 64; saveSurf: false),// sprFlake
   370 			Width:  64; Height: 64; saveSurf: false),// sprFlake
   371                      (FileName:     'amRope'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   371 			(FileName:     'amRope'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   372                       Width:  32; Height: 32; saveSurf: false),// sprHandRope
   372 			Width:  32; Height: 32; saveSurf: false),// sprHandRope
   373                      (FileName:  'amBazooka'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   373 			(FileName:  'amBazooka'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   374                       Width:  32; Height: 32; saveSurf: false),// sprHandBazooka
   374 			Width:  32; Height: 32; saveSurf: false),// sprHandBazooka
   375                      (FileName:  'amShotgun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   375 			(FileName:  'amShotgun'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   376                       Width:  64; Height: 64; saveSurf: false),// sprHandShotgun
   376 			Width:  64; Height: 64; saveSurf: false),// sprHandShotgun
   377                      (FileName:   'amDEagle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   377 			(FileName:   'amDEagle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   378                       Width:  64; Height: 64; saveSurf: false),// sprHandDEagle
   378 			Width:  64; Height: 64; saveSurf: false),// sprHandDEagle
   379                      (FileName:'amAirAttack'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   379 			(FileName:'amAirAttack'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   380                       Width:  32; Height: 32; saveSurf: false),// sprHandAirAttack
   380 			Width:  32; Height: 32; saveSurf: false),// sprHandAirAttack
   381                      (FileName: 'amBaseball'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   381 			(FileName: 'amBaseball'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   382                       Width:  32; Height: 32; saveSurf: false),// sprHandBaseball
   382 			Width:  32; Height: 32; saveSurf: false),// sprHandBaseball
   383                      (FileName:     'Hammer'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   383 			(FileName:     'Hammer'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   384                       Width:  32; Height: 64; saveSurf: false),// sprPHammer
   384 			Width:  32; Height: 64; saveSurf: false),// sprPHammer
   385                      (FileName: 'amBTorch_i'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   385 			(FileName: 'amBTorch_i'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   386                       Width:  32; Height: 32; saveSurf: false),// sprHandBlowToch
   386 			Width:  32; Height: 32; saveSurf: false),// sprHandBlowToch
   387                      (FileName: 'amBTorch_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   387 			(FileName: 'amBTorch_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   388                       Width:  32; Height: 32; saveSurf: false),// sprBlowToch
   388 			Width:  32; Height: 32; saveSurf: false),// sprBlowToch
   389                      (FileName:   'Teleport'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   389 			(FileName:   'Teleport'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   390                       Width:  64; Height: 32; saveSurf: false),// sprTeleport
   390 			Width:  64; Height: 32; saveSurf: false),// sprTeleport
   391                      (FileName:    'HHDeath'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   391 			(FileName:    'HHDeath'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   392                       Width:  32; Height: 64; saveSurf: false),// sprHHDeath
   392 			Width:  32; Height: 64; saveSurf: false),// sprHHDeath
   393                      (FileName:'amShotgun_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   393 			(FileName:'amShotgun_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   394                       Width:  64; Height: 64; saveSurf: false),// sprShotgun
   394 			Width:  64; Height: 64; saveSurf: false),// sprShotgun
   395                      (FileName: 'amDEagle_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   395 			(FileName: 'amDEagle_w'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   396                       Width:  64; Height: 64; saveSurf: false),// sprDEagle
   396 			Width:  64; Height: 64; saveSurf: false),// sprDEagle
   397                      (FileName:       'Idle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   397 			(FileName:       'Idle'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   398                       Width:  32; Height: 32; saveSurf: false),// sprHHIdle
   398 			Width:  32; Height: 32; saveSurf: false),// sprHHIdle
   399                      (FileName:     'Mortar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   399 			(FileName:     'Mortar'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   400                       Width:  16; Height: 16; saveSurf: false),// sprMortar
   400 			Width:  16; Height: 16; saveSurf: false),// sprMortar
   401                      (FileName:  'TurnsLeft'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   401 			(FileName:  'TurnsLeft'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   402                       Width:  16; Height: 16; saveSurf: false),// sprTurnsLeft
   402 			Width:  16; Height: 16; saveSurf: false),// sprTurnsLeft
   403                      (FileName: 'amKamikaze'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   403 			(FileName: 'amKamikaze'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   404                       Width: 256; Height: 32; saveSurf: false),// sprKamikaze
   404 			Width: 256; Height: 32; saveSurf: false),// sprKamikaze
   405                      (FileName:     'amWhip'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   405 			(FileName:     'amWhip'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   406                       Width: 128; Height: 32; saveSurf: false),// sprWhip
   406 			Width: 128; Height: 32; saveSurf: false),// sprWhip
   407                      (FileName:     'Kowtow'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   407 			(FileName:     'Kowtow'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   408                       Width:  32; Height: 32; saveSurf: false),// sprKowtow
   408 			Width:  32; Height: 32; saveSurf: false),// sprKowtow
   409                      (FileName:        'Sad'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   409 			(FileName:        'Sad'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   410                       Width:  32; Height: 32; saveSurf: false),// sprSad
   410 			Width:  32; Height: 32; saveSurf: false),// sprSad
   411                      (FileName:       'Wave'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   411 			(FileName:       'Wave'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   412                       Width:  64; Height: 32; saveSurf: false),// sprWave
   412 			Width:  64; Height: 32; saveSurf: false),// sprWave
   413                      (FileName:     'Hurrah'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   413 			(FileName:     'Hurrah'; Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   414                       Width:  32; Height: 32; saveSurf: false),// sprHurrah
   414 			Width:  32; Height: 32; saveSurf: false),// sprHurrah
   415                      (FileName:'ILoveLemonade';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   415 			(FileName:'ILoveLemonade';Path: ptHedgehog; AltPath: ptNone; Texture: nil; Surface: nil;
   416                       Width: 128; Height: 32; saveSurf: false),// sprLemonade
   416 			Width: 128; Height: 32; saveSurf: false),// sprLemonade
   417                      (FileName:   'ExplPart'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   417 			(FileName:   'ExplPart'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   418                       Width:  32; Height: 32; saveSurf: false),// sprExplPart
   418 			Width:  32; Height: 32; saveSurf: false),// sprExplPart
   419                      (FileName:  'ExplPart2'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   419 			(FileName:  'ExplPart2'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   420                       Width:  32; Height: 32; saveSurf: false),// sprExplPart2
   420 			Width:  32; Height: 32; saveSurf: false),// sprExplPart2
   421                      (FileName:  'Cake_walk'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   421 			(FileName:  'Cake_walk'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   422                       Width:  64; Height: 64; saveSurf: false),// sprCakeWalk
   422 			Width:  64; Height: 64; saveSurf: false),// sprCakeWalk
   423                      (FileName:  'Cake_down'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   423 			(FileName:  'Cake_down'; Path: ptGraphics; AltPath: ptNone; Texture: nil; Surface: nil;
   424                       Width:  64; Height: 64; saveSurf: false),// sprCakeDown
   424 			Width:  64; Height: 64; saveSurf: false),// sprCakeDown
   425                      (FileName:   'Ammos_bw'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   425 			(FileName:   'Ammos_bw'; Path: ptAmmoMenu; AltPath: ptNone; Texture: nil; Surface: nil;
   426                       Width:  32; Height: 32; saveSurf: false) // sprAMAmmosBW
   426 			Width:  32; Height: 32; saveSurf: false) // sprAMAmmosBW
   427                      );
   427 			);
   428 
   428 
   429 	Wavez: array [TWave] of record
   429 	Wavez: array [TWave] of record
   430 			Sprite: TSprite;
   430 			Sprite: TSprite;
   431 			FramesCount: Longword;
   431 			FramesCount: Longword;
   432 			cmd: String[20];
   432 			cmd: String[20];
   436 			(Sprite:     sprWave; FramesCount: 16; cmd: '/wave'),
   436 			(Sprite:     sprWave; FramesCount: 16; cmd: '/wave'),
   437 			(Sprite:   sprHurrah; FramesCount: 14; cmd: '/hurrah'),
   437 			(Sprite:   sprHurrah; FramesCount: 14; cmd: '/hurrah'),
   438 			(Sprite: sprLemonade; FramesCount: 24; cmd: '/ilovelotsoflemonade')
   438 			(Sprite: sprLemonade; FramesCount: 24; cmd: '/ilovelotsoflemonade')
   439 			);
   439 			);
   440 
   440 
   441       Soundz: array[TSound] of record
   441 	Soundz: array[TSound] of record
   442                 FileName: String[19];
   442 			FileName: String[19];
   443                 Path    : TPathType;
   443 			Path    : TPathType;
   444                 id      : PMixChunk;
   444 			id      : PMixChunk;
   445                 lastChan: LongInt;
   445 			lastChan: LongInt;
   446                 end = (
   446 			end = (
   447                 (FileName: 'grenadeimpact.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGrenadeImpact
   447 			(FileName: 'grenadeimpact.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGrenadeImpact
   448                 (FileName:     'explosion.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndExplosion
   448 			(FileName:     'explosion.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndExplosion
   449                 (FileName:  'throwpowerup.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndThrowPowerUp
   449 			(FileName:  'throwpowerup.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndThrowPowerUp
   450                 (FileName:  'throwrelease.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndThrowRelease
   450 			(FileName:  'throwrelease.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndThrowRelease
   451                 (FileName:        'splash.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndSplash
   451 			(FileName:        'splash.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndSplash
   452                 (FileName: 'shotgunreload.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndShotgunReload
   452 			(FileName: 'shotgunreload.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndShotgunReload
   453                 (FileName:   'shotgunfire.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndShotgunFire
   453 			(FileName:   'shotgunfire.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndShotgunFire
   454                 (FileName:   'graveimpact.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGraveImpact
   454 			(FileName:   'graveimpact.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGraveImpact
   455                 (FileName:      'minetick.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndMineTicks
   455 			(FileName:      'minetick.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndMineTicks
   456                 (FileName:    'pickhammer.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndPickhammer
   456 			(FileName:    'pickhammer.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndPickhammer
   457                 (FileName:           'gun.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGun
   457 			(FileName:           'gun.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndGun
   458                 (FileName:           'ufo.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndUFO
   458 			(FileName:           'ufo.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndUFO
   459                 (FileName:         'Jump1.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump1
   459 			(FileName:         'Jump1.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump1
   460                 (FileName:         'Jump2.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump2
   460 			(FileName:         'Jump2.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump2
   461                 (FileName:         'Jump3.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump3
   461 			(FileName:         'Jump3.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndJump3
   462                 (FileName:        'Yessir.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndYesSir
   462 			(FileName:        'Yessir.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndYesSir
   463                 (FileName:         'Laugh.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndLaugh
   463 			(FileName:         'Laugh.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndLaugh
   464                 (FileName:     'Illgetyou.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndIllGetYou
   464 			(FileName:     'Illgetyou.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndIllGetYou
   465                 (FileName:      'Incoming.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndIncoming
   465 			(FileName:      'Incoming.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndIncoming
   466                 (FileName:        'Missed.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndMissed
   466 			(FileName:        'Missed.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndMissed
   467                 (FileName:        'Stupid.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndStupid
   467 			(FileName:        'Stupid.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndStupid
   468                 (FileName:    'Firstblood.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndFirstBlood
   468 			(FileName:    'Firstblood.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndFirstBlood
   469                 (FileName:        'Boring.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndBoring
   469 			(FileName:        'Boring.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndBoring
   470                 (FileName:        'Byebye.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndByeBye
   470 			(FileName:        'Byebye.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndByeBye
   471                 (FileName:      'Sameteam.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndSameTeam
   471 			(FileName:      'Sameteam.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndSameTeam
   472                 (FileName:        'Nutter.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndNutter
   472 			(FileName:        'Nutter.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndNutter
   473                 (FileName:'Reinforcements.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndReinforce
   473 			(FileName:'Reinforcements.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndReinforce
   474                 (FileName:       'Traitor.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndTraitor
   474 			(FileName:       'Traitor.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndTraitor
   475                 (FileName:'Youllregretthat.ogg';Path: ptVoices; id: nil; lastChan: 0),// sndRegret
   475 			(FileName:'Youllregretthat.ogg';Path: ptVoices; id: nil; lastChan: 0),// sndRegret
   476                 (FileName:     'Enemydown.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndEnemyDown
   476 			(FileName:     'Enemydown.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndEnemyDown
   477                 (FileName:        'Coward.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndCoward
   477 			(FileName:        'Coward.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndCoward
   478                 (FileName:         'Hurry.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndHurry
   478 			(FileName:         'Hurry.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndHurry
   479                 (FileName:       'Watchit.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndWatchIt
   479 			(FileName:       'Watchit.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndWatchIt
   480                 (FileName:      'Kamikaze.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndKamikaze
   480 			(FileName:      'Kamikaze.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndKamikaze
   481                 (FileName:         'cake2.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndCake
   481 			(FileName:         'cake2.ogg'; Path: ptSounds; id: nil; lastChan: 0),// sndCake
   482                 (FileName:           'Ow1.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndOw1
   482 			(FileName:           'Ow1.ogg'; Path: ptVoices; id: nil; lastChan: 0),// sndOw1
   483                 (FileName:           'Ow4.ogg'; Path: ptVoices; id: nil; lastChan: 0) // sndOw4
   483 			(FileName:           'Ow4.ogg'; Path: ptVoices; id: nil; lastChan: 0) // sndOw4
   484                 );
   484 			);
   485 
   485 
   486       Ammoz: array [TAmmoType] of record
   486 	Ammoz: array [TAmmoType] of record
   487                                   NameId: TAmmoStrId;
   487 			NameId: TAmmoStrId;
   488                                   NameTex: PTexture;
   488 			NameTex: PTexture;
   489                                   Probability, NumberInCase: Longword;
   489 			Probability, NumberInCase: Longword;
   490                                   Ammo: TAmmo;
   490 			Ammo: TAmmo;
   491                                   Slot: 0..cMaxSlotIndex;
   491 			Slot: 0..cMaxSlotIndex;
   492                                   TimeAfterTurn: Longword;
   492 			TimeAfterTurn: Longword;
   493                                   minAngle, maxAngle: Longword;
   493 			minAngle, maxAngle: Longword;
   494                                   isDamaging: boolean;
   494 			isDamaging: boolean;
   495                                   SkipTurns: Longword;
   495 			SkipTurns: Longword;
   496                                   PosCount: Longword;
   496 			PosCount: Longword;
   497                                   PosSprite: TSprite;
   497 			PosSprite: TSprite;
   498                                   end = (
   498 			end = (
   499                                   (NameId: sidGrenade;
   499 			(NameId: sidGrenade;
   500                                    NameTex: nil;
   500 			NameTex: nil;
   501                                    Probability: 0;
   501 			Probability: 0;
   502                                    NumberInCase: 1;
   502 			NumberInCase: 1;
   503                                    Ammo: (Propz: ammoprop_Timerable or
   503 			Ammo: (Propz: ammoprop_Timerable or
   504                                                  ammoprop_Power or
   504 							ammoprop_Power or
   505                                                  ammoprop_AltUse;
   505 							ammoprop_AltUse;
   506                                           Count: AMMO_INFINITE;
   506 					Count: AMMO_INFINITE;
   507                                           NumPerTurn: 0;
   507 					NumPerTurn: 0;
   508                                           Timer: 3000;
   508 					Timer: 3000;
   509                                           Pos: 0;
   509 					Pos: 0;
   510                                           AmmoType: amGrenade);
   510 					AmmoType: amGrenade);
   511                                    Slot: 1;
   511 			Slot: 1;
   512                                    TimeAfterTurn: 3000;
   512 			TimeAfterTurn: 3000;
   513                                    minAngle: 0;
   513 			minAngle: 0;
   514                                    maxAngle: 0;
   514 			maxAngle: 0;
   515                                    isDamaging: true;
   515 			isDamaging: true;
   516                                    SkipTurns: 0;
   516 			SkipTurns: 0;
   517                                    PosCount: 1;
   517 			PosCount: 1;
   518                                    PosSprite: sprWater),
   518 			PosSprite: sprWater),
   519                                   (NameId: sidClusterBomb;
   519 			(NameId: sidClusterBomb;
   520                                    NameTex: nil;
   520 			NameTex: nil;
   521                                    Probability: 100;
   521 			Probability: 100;
   522                                    NumberInCase: 3;
   522 			NumberInCase: 3;
   523                                    Ammo: (Propz: ammoprop_Timerable or
   523 			Ammo: (Propz: ammoprop_Timerable or
   524                                                  ammoprop_Power or
   524 							ammoprop_Power or
   525                                                  ammoprop_AltUse;
   525 							ammoprop_AltUse;
   526                                           Count: 5;
   526 					Count: 5;
   527                                           NumPerTurn: 0;
   527 					NumPerTurn: 0;
   528                                           Timer: 3000;
   528 					Timer: 3000;
   529                                           Pos: 0;
   529 					Pos: 0;
   530                                           AmmoType: amClusterBomb);
   530 					AmmoType: amClusterBomb);
   531                                    Slot: 1;
   531 			Slot: 1;
   532                                    TimeAfterTurn: 3000;
   532 			TimeAfterTurn: 3000;
   533                                    minAngle: 0;
   533 			minAngle: 0;
   534                                    maxAngle: 0;
   534 			maxAngle: 0;
   535                                    isDamaging: true;
   535 			isDamaging: true;
   536                                    SkipTurns: 0;
   536 			SkipTurns: 0;
   537                                    PosCount: 1;
   537 			PosCount: 1;
   538                                    PosSprite: sprWater),
   538 			PosSprite: sprWater),
   539                                   (NameId: sidBazooka;
   539 			(NameId: sidBazooka;
   540                                    NameTex: nil;
   540 			NameTex: nil;
   541                                    Probability: 0;
   541 			Probability: 0;
   542                                    NumberInCase: 1;
   542 			NumberInCase: 1;
   543                                    Ammo: (Propz: ammoprop_Power or
   543 			Ammo: (Propz: ammoprop_Power or
   544                                                  ammoprop_AltUse;
   544 							ammoprop_AltUse;
   545                                           Count: AMMO_INFINITE;
   545 					Count: AMMO_INFINITE;
   546                                           NumPerTurn: 0;
   546 					NumPerTurn: 0;
   547                                           Timer: 0;
   547 					Timer: 0;
   548                                           Pos: 0;
   548 					Pos: 0;
   549                                           AmmoType: amBazooka);
   549 					AmmoType: amBazooka);
   550                                    Slot: 0;
   550 			Slot: 0;
   551                                    TimeAfterTurn: 3000;
   551 			TimeAfterTurn: 3000;
   552                                    minAngle: 0;
   552 			minAngle: 0;
   553                                    maxAngle: 0;
   553 			maxAngle: 0;
   554                                    isDamaging: true;
   554 			isDamaging: true;
   555                                    SkipTurns: 0;
   555 			SkipTurns: 0;
   556                                    PosCount: 1;
   556 			PosCount: 1;
   557                                    PosSprite: sprWater),
   557 			PosSprite: sprWater),
   558                                   (NameId: sidUFO;
   558 			(NameId: sidUFO;
   559                                    NameTex: nil;
   559 			NameTex: nil;
   560                                    Probability: 100;
   560 			Probability: 100;
   561                                    NumberInCase: 1;
   561 			NumberInCase: 1;
   562                                    Ammo: (Propz: ammoprop_Power or
   562 			Ammo: (Propz: ammoprop_Power or
   563                                                  ammoprop_NeedTarget or
   563 							ammoprop_NeedTarget or
   564                                                  ammoprop_DontHold;
   564 							ammoprop_DontHold;
   565                                           Count: 2;
   565 					Count: 2;
   566                                           NumPerTurn: 0;
   566 					NumPerTurn: 0;
   567                                           Timer: 0;
   567 					Timer: 0;
   568                                           Pos: 0;
   568 					Pos: 0;
   569                                           AmmoType: amUFO);
   569 					AmmoType: amUFO);
   570                                    Slot: 0;
   570 			Slot: 0;
   571                                    TimeAfterTurn: 3000;
   571 			TimeAfterTurn: 3000;
   572                                    minAngle: 0;
   572 			minAngle: 0;
   573                                    maxAngle: 0;
   573 			maxAngle: 0;
   574                                    isDamaging: true;
   574 			isDamaging: true;
   575                                    SkipTurns: 0;
   575 			SkipTurns: 0;
   576                                    PosCount: 1;
   576 			PosCount: 1;
   577                                    PosSprite: sprWater),
   577 			PosSprite: sprWater),
   578                                   (NameId: sidShotgun;
   578 			(NameId: sidShotgun;
   579                                    NameTex: nil;
   579 			NameTex: nil;
   580                                    Probability: 0;
   580 			Probability: 0;
   581                                    NumberInCase: 1;
   581 			NumberInCase: 1;
   582                                    Ammo: (Propz: ammoprop_ForwMsgs;
   582 			Ammo: (Propz: ammoprop_ForwMsgs;
   583                                           Count: AMMO_INFINITE;
   583 					Count: AMMO_INFINITE;
   584                                           NumPerTurn: 1;
   584 					NumPerTurn: 1;
   585                                           Timer: 0;
   585 					Timer: 0;
   586                                           Pos: 0;
   586 					Pos: 0;
   587                                           AmmoType: amShotgun);
   587 					AmmoType: amShotgun);
   588                                    Slot: 2;
   588 			Slot: 2;
   589                                    TimeAfterTurn: 3000;
   589 			TimeAfterTurn: 3000;
   590                                    minAngle: 0;
   590 			minAngle: 0;
   591                                    maxAngle: 0;
   591 			maxAngle: 0;
   592                                    isDamaging: true;
   592 			isDamaging: true;
   593                                    SkipTurns: 0;
   593 			SkipTurns: 0;
   594                                    PosCount: 1;
   594 			PosCount: 1;
   595                                    PosSprite: sprWater),
   595 			PosSprite: sprWater),
   596                                   (NameId: sidPickHammer;
   596 			(NameId: sidPickHammer;
   597                                    NameTex: nil;
   597 			NameTex: nil;
   598                                    Probability: 0;
   598 			Probability: 0;
   599                                    NumberInCase: 1;
   599 			NumberInCase: 1;
   600                                    Ammo: (Propz: ammoprop_ForwMsgs or
   600 			Ammo: (Propz: ammoprop_ForwMsgs or
   601                                                  ammoprop_AttackInMove or
   601 							ammoprop_AttackInMove or
   602                                                  ammoprop_NoCrosshair or
   602 							ammoprop_NoCrosshair or
   603                                                  ammoprop_DontHold;
   603 							ammoprop_DontHold;
   604                                           Count: 2;
   604 					Count: 2;
   605                                           NumPerTurn: 0;
   605 					NumPerTurn: 0;
   606                                           Timer: 0;
   606 					Timer: 0;
   607                                           Pos: 0;
   607 					Pos: 0;
   608                                           AmmoType: amPickHammer);
   608 					AmmoType: amPickHammer);
   609                                    Slot: 6;
   609 			Slot: 6;
   610                                    TimeAfterTurn: 0;
   610 			TimeAfterTurn: 0;
   611                                    minAngle: 0;
   611 			minAngle: 0;
   612                                    maxAngle: 0;
   612 			maxAngle: 0;
   613                                    isDamaging: false;
   613 			isDamaging: false;
   614                                    SkipTurns: 0;
   614 			SkipTurns: 0;
   615                                    PosCount: 1;
   615 			PosCount: 1;
   616                                    PosSprite: sprWater),
   616 			PosSprite: sprWater),
   617                                   (NameId: sidSkip;
   617 			(NameId: sidSkip;
   618                                    NameTex: nil;
   618 			NameTex: nil;
   619                                    Probability: 0;
   619 			Probability: 0;
   620                                    NumberInCase: 1;
   620 			NumberInCase: 1;
   621                                    Ammo: (Propz: ammoprop_DontHold;
   621 			Ammo: (Propz: ammoprop_DontHold;
   622                                           Count: AMMO_INFINITE;
   622 					Count: AMMO_INFINITE;
   623                                           NumPerTurn: 0;
   623 					NumPerTurn: 0;
   624                                           Timer: 0;
   624 					Timer: 0;
   625                                           Pos: 0;
   625 					Pos: 0;
   626                                           AmmoType: amSkip);
   626 					AmmoType: amSkip);
   627                                    Slot: 8;
   627 			Slot: 8;
   628                                    TimeAfterTurn: 0;
   628 			TimeAfterTurn: 0;
   629                                    minAngle: 0;
   629 			minAngle: 0;
   630                                    maxAngle: 0;
   630 			maxAngle: 0;
   631                                    isDamaging: false;
   631 			isDamaging: false;
   632                                    SkipTurns: 0;
   632 			SkipTurns: 0;
   633                                    PosCount: 1;
   633 			PosCount: 1;
   634                                    PosSprite: sprWater),
   634 			PosSprite: sprWater),
   635                                   (NameId: sidRope;
   635 			(NameId: sidRope;
   636                                    NameTex: nil;
   636 			NameTex: nil;
   637                                    Probability: 100;
   637 			Probability: 100;
   638                                    NumberInCase: 3;
   638 			NumberInCase: 3;
   639                                    Ammo: (Propz: ammoprop_ForwMsgs or
   639 			Ammo: (Propz: ammoprop_ForwMsgs or
   640                                                  ammoprop_AttackInMove or
   640 							ammoprop_AttackInMove or
   641                                                  ammoprop_DontHold or
   641 							ammoprop_DontHold or
   642                                                  ammoprop_AltAttack;
   642 							ammoprop_AltAttack;
   643                                           Count: 5;
   643 					Count: 5;
   644                                           NumPerTurn: 0;
   644 					NumPerTurn: 0;
   645                                           Timer: 0;
   645 					Timer: 0;
   646                                           Pos: 0;
   646 					Pos: 0;
   647                                           AmmoType: amRope);
   647 					AmmoType: amRope);
   648                                    Slot: 7;
   648 			Slot: 7;
   649                                    TimeAfterTurn: 0;
   649 			TimeAfterTurn: 0;
   650                                    minAngle: 0;
   650 			minAngle: 0;
   651                                    maxAngle: cMaxAngle div 2;
   651 			maxAngle: cMaxAngle div 2;
   652                                    isDamaging: false;
   652 			isDamaging: false;
   653                                    SkipTurns: 0;
   653 			SkipTurns: 0;
   654                                    PosCount: 1;
   654 			PosCount: 1;
   655                                    PosSprite: sprWater),
   655 			PosSprite: sprWater),
   656                                   (NameId: sidMine;
   656 			(NameId: sidMine;
   657                                    NameTex: nil;
   657 			NameTex: nil;
   658                                    Probability: 100;
   658 			Probability: 100;
   659                                    NumberInCase: 1;
   659 			NumberInCase: 1;
   660                                    Ammo: (Propz: ammoprop_NoCrosshair or
   660 			Ammo: (Propz: ammoprop_NoCrosshair or
   661                                                  ammoprop_AttackInMove or
   661 							ammoprop_AttackInMove or
   662                                                  ammoprop_DontHold or
   662 							ammoprop_DontHold or
   663                                                  ammoprop_AltUse;
   663 							ammoprop_AltUse;
   664                                           Count: 2;
   664 					Count: 2;
   665                                           NumPerTurn: 0;
   665 					NumPerTurn: 0;
   666                                           Timer: 0;
   666 					Timer: 0;
   667                                           Pos: 0;
   667 					Pos: 0;
   668                                           AmmoType: amMine);
   668 					AmmoType: amMine);
   669                                    Slot: 4;
   669 			Slot: 4;
   670                                    TimeAfterTurn: 5000;
   670 			TimeAfterTurn: 5000;
   671                                    minAngle: 0;
   671 			minAngle: 0;
   672                                    maxAngle: 0;
   672 			maxAngle: 0;
   673                                    isDamaging: true;
   673 			isDamaging: true;
   674                                    SkipTurns: 0;
   674 			SkipTurns: 0;
   675                                    PosCount: 1;
   675 			PosCount: 1;
   676                                    PosSprite: sprWater),
   676 			PosSprite: sprWater),
   677                                   (NameId: sidDEagle;
   677 			(NameId: sidDEagle;
   678                                    NameTex: nil;
   678 			NameTex: nil;
   679                                    Probability: 100;
   679 			Probability: 100;
   680                                    NumberInCase: 2;
   680 			NumberInCase: 2;
   681                                    Ammo: (Propz: 0;
   681 			Ammo: (Propz: 0;
   682                                           Count: 3;
   682 					Count: 3;
   683                                           NumPerTurn: 3;
   683 					NumPerTurn: 3;
   684                                           Timer: 0;
   684 					Timer: 0;
   685                                           Pos: 0;
   685 					Pos: 0;
   686                                           AmmoType: amDEagle);
   686 					AmmoType: amDEagle);
   687                                    Slot: 2;
   687 			Slot: 2;
   688                                    TimeAfterTurn: 3000;
   688 			TimeAfterTurn: 3000;
   689                                    minAngle: 0;
   689 			minAngle: 0;
   690                                    maxAngle: 0;
   690 			maxAngle: 0;
   691                                    isDamaging: true;
   691 			isDamaging: true;
   692                                    SkipTurns: 0;
   692 			SkipTurns: 0;
   693                                    PosCount: 1;
   693 			PosCount: 1;
   694                                    PosSprite: sprWater),
   694 			PosSprite: sprWater),
   695                                   (NameId: sidDynamite;
   695 			(NameId: sidDynamite;
   696                                    NameTex: nil;
   696 			NameTex: nil;
   697                                    Probability: 100;
   697 			Probability: 100;
   698                                    NumberInCase: 1;
   698 			NumberInCase: 1;
   699                                    Ammo: (Propz: ammoprop_NoCrosshair or
   699 			Ammo: (Propz: ammoprop_NoCrosshair or
   700                                                  ammoprop_AttackInMove or
   700 							ammoprop_AttackInMove or
   701                                                  ammoprop_DontHold or
   701 							ammoprop_DontHold or
   702                                                  ammoprop_AltUse;
   702 							ammoprop_AltUse;
   703                                           Count: 1;
   703 					Count: 1;
   704                                           NumPerTurn: 0;
   704 					NumPerTurn: 0;
   705                                           Timer: 0;
   705 					Timer: 0;
   706                                           Pos: 0;
   706 					Pos: 0;
   707                                           AmmoType: amDynamite);
   707 					AmmoType: amDynamite);
   708                                    Slot: 4;
   708 			Slot: 4;
   709                                    TimeAfterTurn: 5000;
   709 			TimeAfterTurn: 5000;
   710                                    minAngle: 0;
   710 			minAngle: 0;
   711                                    maxAngle: 0;
   711 			maxAngle: 0;
   712                                    isDamaging: true;
   712 			isDamaging: true;
   713                                    SkipTurns: 0;
   713 			SkipTurns: 0;
   714                                    PosCount: 1;
   714 			PosCount: 1;
   715                                    PosSprite: sprWater),
   715 			PosSprite: sprWater),
   716                                   (NameId: sidFirePunch;
   716 			(NameId: sidFirePunch;
   717                                    NameTex: nil;
   717 			NameTex: nil;
   718                                    Probability: 0;
   718 			Probability: 0;
   719                                    NumberInCase: 1;
   719 			NumberInCase: 1;
   720                                    Ammo: (Propz: ammoprop_NoCrosshair or
   720 			Ammo: (Propz: ammoprop_NoCrosshair or
   721                                                  ammoprop_ForwMsgs or
   721 							ammoprop_ForwMsgs or
   722                                                  ammoprop_AttackInMove;
   722 							ammoprop_AttackInMove;
   723                                           Count: AMMO_INFINITE;
   723 					Count: AMMO_INFINITE;
   724                                           NumPerTurn: 0;
   724 					NumPerTurn: 0;
   725                                           Timer: 0;
   725 					Timer: 0;
   726                                           Pos: 0;
   726 					Pos: 0;
   727                                           AmmoType: amFirePunch);
   727 					AmmoType: amFirePunch);
   728                                    Slot: 3;
   728 			Slot: 3;
   729                                    TimeAfterTurn: 3000;
   729 			TimeAfterTurn: 3000;
   730                                    MinAngle: 0;
   730 			MinAngle: 0;
   731                                    maxAngle: 0;
   731 			maxAngle: 0;
   732                                    isDamaging: true;
   732 			isDamaging: true;
   733                                    SkipTurns: 0;
   733 			SkipTurns: 0;
   734                                    PosCount: 1;
   734 			PosCount: 1;
   735                                    PosSprite: sprWater),
   735 			PosSprite: sprWater),
   736                                   (NameId: sidWhip;
   736 			(NameId: sidWhip;
   737                                    NameTex: nil;
   737 			NameTex: nil;
   738                                    Probability: 0;
   738 			Probability: 0;
   739                                    NumberInCase: 1;
   739 			NumberInCase: 1;
   740                                    Ammo: (Propz: ammoprop_NoCrosshair;
   740 			Ammo: (Propz: ammoprop_NoCrosshair;
   741                                           Count: AMMO_INFINITE;
   741 					Count: AMMO_INFINITE;
   742                                           NumPerTurn: 0;
   742 					NumPerTurn: 0;
   743                                           Timer: 0;
   743 					Timer: 0;
   744                                           Pos: 0;
   744 					Pos: 0;
   745                                           AmmoType: amWhip);
   745 					AmmoType: amWhip);
   746                                    Slot: 3;
   746 			Slot: 3;
   747                                    TimeAfterTurn: 3000;
   747 			TimeAfterTurn: 3000;
   748                                    MinAngle: 0;
   748 			MinAngle: 0;
   749                                    maxAngle: 0;
   749 			maxAngle: 0;
   750                                    isDamaging: true;
   750 			isDamaging: true;
   751                                    SkipTurns: 0;
   751 			SkipTurns: 0;
   752                                    PosCount: 1;
   752 			PosCount: 1;
   753                                    PosSprite: sprWater),
   753 			PosSprite: sprWater),
   754                                   (NameId: sidBaseballBat;
   754 			(NameId: sidBaseballBat;
   755                                    NameTex: nil;
   755 			NameTex: nil;
   756                                    Probability: 100;
   756 			Probability: 100;
   757                                    NumberInCase: 1;
   757 			NumberInCase: 1;
   758                                    Ammo: (Propz: ammoprop_DontHold;
   758 			Ammo: (Propz: ammoprop_DontHold;
   759                                           Count: 1;
   759 					Count: 1;
   760                                           NumPerTurn: 0;
   760 					NumPerTurn: 0;
   761                                           Timer: 0;
   761 					Timer: 0;
   762                                           Pos: 0;
   762 					Pos: 0;
   763                                           AmmoType: amBaseballBat);
   763 					AmmoType: amBaseballBat);
   764                                    Slot: 3;
   764 			Slot: 3;
   765                                    TimeAfterTurn: 5000;
   765 			TimeAfterTurn: 5000;
   766                                    minAngle: 0;
   766 			minAngle: 0;
   767                                    maxAngle: cMaxAngle div 2;
   767 			maxAngle: cMaxAngle div 2;
   768                                    isDamaging: true;
   768 			isDamaging: true;
   769                                    SkipTurns: 2;
   769 			SkipTurns: 2;
   770                                    PosCount: 1;
   770 			PosCount: 1;
   771                                    PosSprite: sprWater),
   771 			PosSprite: sprWater),
   772                                   (NameId: sidParachute;
   772 			(NameId: sidParachute;
   773                                    NameTex: nil;
   773 			NameTex: nil;
   774                                    Probability: 100;
   774 			Probability: 100;
   775                                    NumberInCase: 1;
   775 			NumberInCase: 1;
   776                                    Ammo: (Propz: ammoprop_ForwMsgs or
   776 			Ammo: (Propz: ammoprop_ForwMsgs or
   777                                                  ammoprop_AttackInMove or
   777 							ammoprop_AttackInMove or
   778                                                  ammoprop_NoCrosshair or
   778 							ammoprop_NoCrosshair or
   779                                                  ammoprop_DontHold or
   779 							ammoprop_DontHold or
   780                                                  ammoprop_AltAttack;
   780 							ammoprop_AltAttack;
   781                                           Count: 2;
   781 					Count: 2;
   782                                           NumPerTurn: 0;
   782 					NumPerTurn: 0;
   783                                           Timer: 0;
   783 					Timer: 0;
   784                                           Pos: 0;
   784 					Pos: 0;
   785                                           AmmoType: amParachute);
   785 					AmmoType: amParachute);
   786                                    Slot: 7;
   786 			Slot: 7;
   787                                    TimeAfterTurn: 0;
   787 			TimeAfterTurn: 0;
   788                                    minAngle: 0;
   788 			minAngle: 0;
   789                                    maxAngle: 0;
   789 			maxAngle: 0;
   790                                    isDamaging: false;
   790 			isDamaging: false;
   791                                    SkipTurns: 0;
   791 			SkipTurns: 0;
   792                                    PosCount: 1;
   792 			PosCount: 1;
   793                                    PosSprite: sprWater),
   793 			PosSprite: sprWater),
   794                                   (NameId: sidAirAttack;
   794 			(NameId: sidAirAttack;
   795                                    NameTex: nil;
   795 			NameTex: nil;
   796                                    Probability: 100;
   796 			Probability: 100;
   797                                    NumberInCase: 1;
   797 			NumberInCase: 1;
   798                                    Ammo: (Propz: ammoprop_NoCrosshair or
   798 			Ammo: (Propz: ammoprop_NoCrosshair or
   799                                                  ammoprop_NeedTarget or
   799 							ammoprop_NeedTarget or
   800                                                  ammoprop_AttackingPut or
   800 							ammoprop_AttackingPut or
   801                                                  ammoprop_DontHold;
   801 							ammoprop_DontHold;
   802                                           Count: 1;
   802 					Count: 1;
   803                                           NumPerTurn: 0;
   803 					NumPerTurn: 0;
   804                                           Timer: 0;
   804 					Timer: 0;
   805                                           Pos: 0;
   805 					Pos: 0;
   806                                           AmmoType: amAirAttack);
   806 					AmmoType: amAirAttack);
   807                                    Slot: 5;
   807 			Slot: 5;
   808                                    TimeAfterTurn: 0;
   808 			TimeAfterTurn: 0;
   809                                    minAngle: 0;
   809 			minAngle: 0;
   810                                    maxAngle: 0;
   810 			maxAngle: 0;
   811                                    isDamaging: true;
   811 			isDamaging: true;
   812                                    SkipTurns: 5;
   812 			SkipTurns: 5;
   813                                    PosCount: 2;
   813 			PosCount: 2;
   814                                    PosSprite: sprAmAirplane),
   814 			PosSprite: sprAmAirplane),
   815                                   (NameId: sidMineStrike;
   815 			(NameId: sidMineStrike;
   816                                    NameTex: nil;
   816 			NameTex: nil;
   817                                    Probability: 400;
   817 			Probability: 400;
   818                                    NumberInCase: 1;
   818 			NumberInCase: 1;
   819                                    Ammo: (Propz: ammoprop_NoCrosshair or
   819 			Ammo: (Propz: ammoprop_NoCrosshair or
   820                                                  ammoprop_NeedTarget or
   820 							ammoprop_NeedTarget or
   821                                                  ammoprop_AttackingPut or
   821 							ammoprop_AttackingPut or
   822                                                  ammoprop_DontHold;
   822 							ammoprop_DontHold;
   823                                           Count: 1;
   823 					Count: 1;
   824                                           NumPerTurn: 0;
   824 					NumPerTurn: 0;
   825                                           Timer: 0;
   825 					Timer: 0;
   826                                           Pos: 0;
   826 					Pos: 0;
   827                                           AmmoType: amMineStrike);
   827 					AmmoType: amMineStrike);
   828                                    Slot: 5;
   828 			Slot: 5;
   829                                    TimeAfterTurn: 0;
   829 			TimeAfterTurn: 0;
   830                                    minAngle: 0;
   830 			minAngle: 0;
   831                                    maxAngle: 0;
   831 			maxAngle: 0;
   832                                    isDamaging: true;
   832 			isDamaging: true;
   833                                    SkipTurns: 5;
   833 			SkipTurns: 5;
   834                                    PosCount: 2;
   834 			PosCount: 2;
   835                                    PosSprite: sprAmAirplane),
   835 			PosSprite: sprAmAirplane),
   836                                   (NameId: sidBlowTorch;
   836 			(NameId: sidBlowTorch;
   837                                    NameTex: nil;
   837 			NameTex: nil;
   838                                    Probability: 100;
   838 			Probability: 100;
   839                                    NumberInCase: 2;
   839 			NumberInCase: 2;
   840                                    Ammo: (Propz: ammoprop_ForwMsgs;
   840 			Ammo: (Propz: ammoprop_ForwMsgs;
   841                                           Count: 1;
   841 					Count: 1;
   842                                           NumPerTurn: 0;
   842 					NumPerTurn: 0;
   843                                           Timer: 0;
   843 					Timer: 0;
   844                                           Pos: 0;
   844 					Pos: 0;
   845                                           AmmoType: amBlowTorch);
   845 					AmmoType: amBlowTorch);
   846                                    Slot: 6;
   846 			Slot: 6;
   847                                    TimeAfterTurn: 3000;
   847 			TimeAfterTurn: 3000;
   848                                    minAngle: 768;
   848 			minAngle: 768;
   849                                    maxAngle: 1280;
   849 			maxAngle: 1280;
   850                                    isDamaging: false;
   850 			isDamaging: false;
   851                                    SkipTurns: 0;
   851 			SkipTurns: 0;
   852                                    PosCount: 1;
   852 			PosCount: 1;
   853                                    PosSprite: sprWater),
   853 			PosSprite: sprWater),
   854                                   (NameId: sidGirder;
   854 			(NameId: sidGirder;
   855                                    NameTex: nil;
   855 			NameTex: nil;
   856                                    Probability: 400;
   856 			Probability: 400;
   857                                    NumberInCase: 3;
   857 			NumberInCase: 3;
   858                                    Ammo: (Propz: ammoprop_NoCrosshair or
   858 			Ammo: (Propz: ammoprop_NoCrosshair or
   859                                                  ammoprop_NeedTarget or
   859 							ammoprop_NeedTarget or
   860                                                  ammoprop_AttackingPut or
   860 							ammoprop_AttackingPut or
   861                                                  ammoprop_DontHold;
   861 							ammoprop_DontHold;
   862                                           Count: 1;
   862 					Count: 1;
   863                                           NumPerTurn: 0;
   863 					NumPerTurn: 0;
   864                                           Timer: 0;
   864 					Timer: 0;
   865                                           Pos: 0;
   865 					Pos: 0;
   866                                           AmmoType: amGirder);
   866 					AmmoType: amGirder);
   867                                    Slot: 6;
   867 			Slot: 6;
   868                                    TimeAfterTurn: 3000;
   868 			TimeAfterTurn: 3000;
   869                                    minAngle: 0;
   869 			minAngle: 0;
   870                                    maxAngle: 0;
   870 			maxAngle: 0;
   871                                    isDamaging: false;
   871 			isDamaging: false;
   872                                    SkipTurns: 0;
   872 			SkipTurns: 0;
   873                                    PosCount: 8;
   873 			PosCount: 8;
   874                                    PosSprite: sprAmGirder),
   874 			PosSprite: sprAmGirder),
   875                                   (NameId: sidTeleport;
   875 			(NameId: sidTeleport;
   876                                    NameTex: nil;
   876 			NameTex: nil;
   877                                    Probability: 400;
   877 			Probability: 400;
   878                                    NumberInCase: 1;
   878 			NumberInCase: 1;
   879                                    Ammo: (Propz: ammoprop_ForwMsgs or
   879 			Ammo: (Propz: ammoprop_ForwMsgs or
   880                                                  ammoprop_NoCrosshair or
   880 							ammoprop_NoCrosshair or
   881                                                  ammoprop_NeedTarget or
   881 							ammoprop_NeedTarget or
   882                                                  ammoprop_AttackingPut or
   882 							ammoprop_AttackingPut or
   883                                                  ammoprop_DontHold;
   883 							ammoprop_DontHold;
   884                                           Count: 2;
   884 					Count: 2;
   885                                           NumPerTurn: 0;
   885 					NumPerTurn: 0;
   886                                           Timer: 0;
   886 					Timer: 0;
   887                                           Pos: 0;
   887 					Pos: 0;
   888                                           AmmoType: amTeleport);
   888 					AmmoType: amTeleport);
   889                                    Slot: 7;
   889 			Slot: 7;
   890                                    TimeAfterTurn: 0;
   890 			TimeAfterTurn: 0;
   891                                    minAngle: 0;
   891 			minAngle: 0;
   892                                    maxAngle: 0;
   892 			maxAngle: 0;
   893                                    isDamaging: false;
   893 			isDamaging: false;
   894                                    SkipTurns: 0;
   894 			SkipTurns: 0;
   895                                    PosCount: 1;
   895 			PosCount: 1;
   896                                    PosSprite: sprWater),
   896 			PosSprite: sprWater),
   897                                   (NameId: sidSwitch;
   897 			(NameId: sidSwitch;
   898                                    NameTex: nil;
   898 			NameTex: nil;
   899                                    Probability: 100;
   899 			Probability: 100;
   900                                    NumberInCase: 1;
   900 			NumberInCase: 1;
   901                                    Ammo: (Propz: ammoprop_ForwMsgs or
   901 			Ammo: (Propz: ammoprop_ForwMsgs or
   902                                                  ammoprop_NoCrosshair or
   902 							ammoprop_NoCrosshair or
   903                                                  ammoprop_DontHold;
   903 							ammoprop_DontHold;
   904                                           Count: 3;
   904 					Count: 3;
   905                                           NumPerTurn: 0;
   905 					NumPerTurn: 0;
   906                                           Timer: 0;
   906 					Timer: 0;
   907                                           Pos: 0;
   907 					Pos: 0;
   908                                           AmmoType: amSwitch);
   908 					AmmoType: amSwitch);
   909                                    Slot: 8;
   909 			Slot: 8;
   910                                    TimeAfterTurn: 0;
   910 			TimeAfterTurn: 0;
   911                                    minAngle: 0;
   911 			minAngle: 0;
   912                                    maxAngle: 0;
   912 			maxAngle: 0;
   913                                    isDamaging: false;
   913 			isDamaging: false;
   914                                    SkipTurns: 0;
   914 			SkipTurns: 0;
   915                                    PosCount: 1;
   915 			PosCount: 1;
   916                                    PosSprite: sprWater),
   916 			PosSprite: sprWater),
   917                                   (NameId: sidMortar;
   917 			(NameId: sidMortar;
   918                                    NameTex: nil;
   918 			NameTex: nil;
   919                                    Probability: 100;
   919 			Probability: 100;
   920                                    NumberInCase: 5;
   920 			NumberInCase: 5;
   921                                    Ammo: (Propz: 0;
   921 			Ammo: (Propz: 0;
   922                                           Count: 4;
   922 					Count: 4;
   923                                           NumPerTurn: 0;
   923 					NumPerTurn: 0;
   924                                           Timer: 0;
   924 					Timer: 0;
   925                                           Pos: 0;
   925 					Pos: 0;
   926                                           AmmoType: amMortar);
   926 					AmmoType: amMortar);
   927                                    Slot: 1;
   927 			Slot: 1;
   928                                    TimeAfterTurn: 3000;
   928 			TimeAfterTurn: 3000;
   929                                    minAngle: 0;
   929 			minAngle: 0;
   930                                    maxAngle: 0;
   930 			maxAngle: 0;
   931                                    isDamaging: true;
   931 			isDamaging: true;
   932                                    SkipTurns: 0;
   932 			SkipTurns: 0;
   933                                    PosCount: 1;
   933 			PosCount: 1;
   934                                    PosSprite: sprWater),
   934 			PosSprite: sprWater),
   935                                   (NameId: sidKamikaze;
   935 			(NameId: sidKamikaze;
   936                                    NameTex: nil;
   936 			NameTex: nil;
   937                                    Probability: 100;
   937 			Probability: 100;
   938                                    NumberInCase: 1;
   938 			NumberInCase: 1;
   939                                    Ammo: (Propz: ammoprop_ForwMsgs or
   939 			Ammo: (Propz: ammoprop_ForwMsgs or
   940                                                  ammoprop_DontHold;
   940 							ammoprop_DontHold;
   941                                           Count: 1;
   941 					Count: 1;
   942                                           NumPerTurn: 0;
   942 					NumPerTurn: 0;
   943                                           Timer: 0;
   943 					Timer: 0;
   944                                           Pos: 0;
   944 					Pos: 0;
   945                                           AmmoType: amKamikaze);
   945 					AmmoType: amKamikaze);
   946                                    Slot: 3;
   946 			Slot: 3;
   947                                    TimeAfterTurn: 0;
   947 			TimeAfterTurn: 0;
   948                                    minAngle: 0;
   948 			minAngle: 0;
   949                                    maxAngle: 0;
   949 			maxAngle: 0;
   950                                    isDamaging: true;
   950 			isDamaging: true;
   951                                    SkipTurns: 0;
   951 			SkipTurns: 0;
   952                                    PosCount: 1;
   952 			PosCount: 1;
   953                                    PosSprite: sprWater),
   953 			PosSprite: sprWater),
   954                                   (NameId: sidCake;
   954 			(NameId: sidCake;
   955                                    NameTex: nil;
   955 			NameTex: nil;
   956                                    Probability: 100;
   956 			Probability: 100;
   957                                    NumberInCase: 1;
   957 			NumberInCase: 1;
   958                                    Ammo: (Propz: ammoprop_ForwMsgs or
   958 			Ammo: (Propz: ammoprop_ForwMsgs or
   959                                                  ammoprop_NoCrosshair or
   959 							ammoprop_NoCrosshair or
   960                                                  ammoprop_DontHold;
   960 							ammoprop_DontHold;
   961                                           Count: 1;
   961 					Count: 1;
   962                                           NumPerTurn: 0;
   962 					NumPerTurn: 0;
   963                                           Timer: 0;
   963 					Timer: 0;
   964                                           Pos: 0;
   964 					Pos: 0;
   965                                           AmmoType: amCake);
   965 					AmmoType: amCake);
   966                                    Slot: 4;
   966 			Slot: 4;
   967                                    TimeAfterTurn: 0;
   967 			TimeAfterTurn: 0;
   968                                    minAngle: 0;
   968 			minAngle: 0;
   969                                    maxAngle: 0;
   969 			maxAngle: 0;
   970                                    isDamaging: true;
   970 			isDamaging: true;
   971                                    SkipTurns: 0;
   971 			SkipTurns: 0;
   972                                    PosCount: 1;
   972 			PosCount: 1;
   973                                    PosSprite: sprWater),
   973 			PosSprite: sprWater),
   974                                   (NameId: sidSeduction;
   974 			(NameId: sidSeduction;
   975                                    NameTex: nil;
   975 			NameTex: nil;
   976                                    Probability: 100;
   976 			Probability: 100;
   977                                    NumberInCase: 1;
   977 			NumberInCase: 1;
   978                                    Ammo: (Propz: ammoprop_ForwMsgs or
   978 			Ammo: (Propz: ammoprop_ForwMsgs or
   979                                                  ammoprop_NoCrosshair or
   979 							ammoprop_NoCrosshair or
   980                                                  ammoprop_DontHold;
   980 							ammoprop_DontHold;
   981                                           Count: 1;
   981 					Count: 1;
   982                                           NumPerTurn: 0;
   982 					NumPerTurn: 0;
   983                                           Timer: 0;
   983 					Timer: 0;
   984                                           Pos: 0;
   984 					Pos: 0;
   985                                           AmmoType: amSeduction);
   985 					AmmoType: amSeduction);
   986                                    Slot: 2;
   986 			Slot: 2;
   987                                    TimeAfterTurn: 0;
   987 			TimeAfterTurn: 0;
   988                                    minAngle: 0;
   988 			minAngle: 0;
   989                                    maxAngle: 0;
   989 			maxAngle: 0;
   990                                    isDamaging: true;
   990 			isDamaging: true;
   991                                    SkipTurns: 0;
   991 			SkipTurns: 0;
   992                                    PosCount: 1;
   992 			PosCount: 1;
   993                                    PosSprite: sprWater)
   993 			PosSprite: sprWater)
   994                                   );
   994 			);
   995 
   995 
   996 var CountTexz: array[1..9] of PTexture;
   996 var CountTexz: array[1..9] of PTexture;
   997 
   997 
   998 implementation
   998 implementation
   999 
   999