Counts

endoom0
graphics0
lumps339
maps1
palettes0

Totals (across maps)

Things667
Linedefs26888
Sectors5681
Monsters0
Items0
Raw model (for completeness)
{
  "meta": {
    "id": "120818cc-991d-4319-a9c3-2aceb0d5f093",
    "sha1": "468c056b1afe627692ac58cef0378c5931d49793",
    "sha256": "a8cea5c926a09212b627728825fd5672f7e2a0b955909d3e88d220073d5b598f",
    "filenames": [
      "strongholditemsv3.pk3",
      "StrongholdItemsV3.pk3"
    ],
    "additional": {
      "engines": [
        "GZDOOM"
      ],
      "iwad": [
        "DOOM2"
      ],
      "filename": null,
      "added": "2013-04-19 09:51:40",
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false,
      "name": null,
      "description": null,
      "maps": null,
      "graphicOverrides": null,
      "screenshots": {
        "MAP99": "MAP99.png"
      },
      "palettes": null,
      "categories": null
    },
    "flags": {
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false
    },
    "added": "2013-04-19 09:51:40",
    "file": {
      "type": "PK3",
      "size": 3723347,
      "url": "https://wadarchive2.nyc3.digitaloceanspaces.com/468c056b1afe627692ac58cef0378c5931d49793/468c056b1afe627692ac58cef0378c5931d49793.pk3.gz",
      "corrupt": false
    },
    "content": {
      "maps": [
        "MAP99"
      ],
      "counts": {
        "endoom": 0,
        "graphics": 0,
        "lumps": 339,
        "maps": 1,
        "palettes": 0
      },
      "engines_guess": [
        "GZDOOM"
      ],
      "iwads_guess": [
        "DOOM2"
      ]
    },
    "text_files": [
      {
        "source": "pk3",
        "name": "actors/weapons/dec_items.txt",
        "contents": "/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// MARINE REINFORCEMENTS ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nActor MarineItem : CustomInventory 25003\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up some marine reinforcements.\"\n  inventory.maxamount 10\n  Tag \"Marine Reinforcements\"\n  inventory.icon MARIA0\n  +INVENTORY.INVBAR\n  +GHOST\n  Scale 0.75\n  States\n  {\n  Spawn:\n   \tMARP A -1 BRIGHT\n    \tStop\n  Use:\n        TNT1 A 1 A_SpawnItem(\"TeleportFog\", 64, 16, 0, 1)\n        TNT1 A 0 A_Jump(128, 4)\n        TNT1 A 0 A_Jump(128, 2)\n        TNT1 A 0 A_SpawnItem(\"STMarineShotgun\", 64, 16, 0, 1)\n        TNT1 A 0 A_SpawnItem(\"STMarineChaingun\", 64, 16, 0, 1)\n        TNT1 A 0 A_Jump(128, 6)\n\t\tTNT1 A 0 A_Jump(32, 4)\n\t\tTNT1 A 0 A_Jump(256, 1, 2)\n        TNT1 A 0 A_SpawnItem(\"STMarineSSG\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_SpawnItem(\"STMarineAutoShotgun\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_SpawnItem(\"STMarineFlamer\", 64, 16, 0, 1)\n        TNT1 A 0 A_Jump(128, 4)\n\t\tTNT1 A 0 A_Jump(96, 2)\n        TNT1 A 0 A_SpawnItem(\"STMarineRocket\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_SpawnItem(\"STMarineHRL\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_Jump(96, 4)\n\t\tTNT1 A 0 A_Jump(256, 1, 2)\n        TNT1 A 0 A_SpawnItem(\"STMarinePlasma\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_SpawnItem(\"STMarineRailgun\", 64, 16, 0, 1)\n\t\tTNT1 A 0 A_SpawnItem(\"STMarineRepeater\", 64, 16, 0, 1)\n  \tStop\n  }\n}\n\nactor STMarineShotgun : MarineShotgun 12851\n{\n//$Category Stronghold_Marines\n    SeeSound \"marine/sight\"\n    ActiveSound \"marine/active\"\n    DeathSound \"marine/death\"\n    PainSound \"marine/pain\"\n    MeleeSound \"marine/punch\"\n\tObituary \"%o was shot down like a clay pigeon.\"\n    health 300\n    -ACTIVATEMCROSS\n    +NORADIUSDMG\n    +GHOST\n\t+NOTIMEFREEZE\n\tStates\n\t{\n\tRaise:\n\t  stop\n\t}\n}\n\nactor STMarineChaingun : MarineChaingun 12852\n{\n//$Category Stronghold_Marines\n    SeeSound \"marine/sight\"\n    ActiveSound \"marine/active\"\n    DeathSound \"marine/death\"\n    PainSound \"marine/pain\"\n    MeleeSound \"marine/punch\"\n\tObituary \"%o was ventilated by a chaingun-toting marine.\"\n    health 300\n    -ACTIVATEMCROSS\n    +NORADIUSDMG\n    +GHOST\n\t+NOTIMEFREEZE\n\tStates\n\t{\n\tRaise:\n\t  stop\n\t}\n}\n\nactor STMarineSSG : MarineSSG 12853\n{\n//$Category Stronghold_Marines\n    SeeSound \"marine/sight\"\n    ActiveSound \"marine/active\"\n    DeathSound \"marine/death\"\n    PainSound \"marine/pain\"\n    MeleeSound \"marine/punch\"\n\tObituary \"%o downed a devastating dosage of double-barrelled death.\"\n    health 300\n    -ACTIVATEMCROSS\n    +NORADIUSDMG\n    +GHOST\n\t+NOTIMEFREEZE\n\tStates\n\t{\n\tRaise:\n\t  stop\n\t}\n}\n\nactor STMarineRocket : MarineRocket 12854\n{\n//$Category Stronghold_Marines\n    SeeSound \"marine/sight\"\n    ActiveSound \"marine/active\"\n    DeathSound \"marine/death\"\n    PainSound \"marine/pain\"\n    MeleeSound \"marine/punch\"\n\tObituary \"%o boarded the express train to oblivion on a marine's rocket.\"\n    health 600\n    -ACTIVATEMCROSS\n    +NORADIUSDMG\n    +GHOST\n\t+NOTIMEFREEZE\n    States\n    {\n\tMissile:\n\t  PLAY E 8\n\t  PLAY F 6 Bright A_M_FireMissile\n\t  PLAY A 0 A_Jump(96, \"See\")\n\t  Loop\n\tRaise:\n\t  stop\n    }\n}\n\nactor STMarinePlasma : MarinePlasma 12855\n{\n//$Category Stronghold_Marines\n    SeeSound \"marine/sight\"\n    ActiveSound \"marine/active\"\n    DeathSound \"marine/death\"\n    PainSound \"marine/pain\"\n    MeleeSound \"marine/punch\"\n\tObituary \"%o was atomized by a steady stream of blazing plasma.\"\n    health 200\n    -ACTIVATEMCROSS\n    +NORADIUSDMG\n    +GHOST\n\t+NOTIMEFREEZE\n\tStates\n\t{\n\tRaise:\n\t  stop\n\t}\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// SENTRY ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor Sentry 12856\n{\n//$Category Stronghold_Marines\n\tmass 9999999999\n        damagefactor \"overmindfactor\", 10\n        radius 16\n\theight 16\n\thealth 300\n        maxstepheight 512\n        maxdropoffheight 512\n\t-solid\n\t+shootable\n\t+noblood\n\t+friendly\n\t+lookallaround\n\t+missilemore\n\t+missileevenmore\n        +NORADIUSDMG\n\tspeed 0\n\n\tstates\n \t{\n\n \tspawn:\n \t\tDGUN A 4 a_look\n \t\tloop\n\n \tsee:\n \t\tDGUN A 4 A_chase\n \t\tloop\n \tmissile:\n \t\tDGUN A 4 A_facetarget\n \t\tDGUN B 4 A_custommissile(\"SentryPlasma\", 16, -10, 0)\n \t\tDGUN C 4 A_custommissile(\"SentryPlasma\", 16, 10, 0)\n \t\tDGUN A 7 A_CPosRefire //was A 4\n \t\tloop\n \tdeath:\n \t\tTNT1 A 4\n \t\tstop\n \t}\n\n}\n\nactor SentryPlasma\n{\n\tradius 1\n\theight 2\n\tspeed 20\n        damage 3\n        scale 0.3\n\tdamagetype \"bossfactor\"\n\t+DONTBLAST\n        +THRUGHOST\n\tprojectile\n        translation \"192:207=208:223\",\"240:246=223:223\"\n        SeeSound \"weapons/repfir\"\n        DeathSound \"weapons/railf1\"\n\tstates\n \t{\n \tspawn:\n   \t\tPLSS AB 4 Bright\n   \t\tloop\n \tDeath:\n   \t\tPLSE ABCDE 4 Bright\n                TNT1 A 0\n  \t\tStop\n \t}\n}\n\nactor SentryItem : CustomInventory 25004\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up a deployable sentry turret.\"\n  inventory.maxamount 5\n  inventory.icon SENIA0\n  Tag \"Sentry Turret\"\n  +INVENTORY.INVBAR\n  scale 0.75\n   states\n  {\n  Spawn:\n   \t\tSENP A -1 BRIGHT\n    \tstop\n  use:\n  \t\tTNT1 A 1 A_PlaySound(\"DSSTPLAC\", CHAN_AUTO, 0.7)\n\t\tTNT1 A 1 A_SpawnItem(\"ItemFog\", 64, 16, 0, 1)\n                TNT1 A 1 a_spawnitem(\"Sentry\", 64, 0, 0, 1)\n  \t\tstop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BARREL SPAWNER ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor BarrelItem : CustomInventory 25005\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up a portable barrel.\"\n  inventory.maxamount 10\n  inventory.icon BARIA0\n  Tag \"Barrel\"\n  +INVENTORY.INVBAR\n  scale 0.75\n  states\n  {\n  Spawn:\n   \tBARP A -1 BRIGHT\n    \tstop\n  Use:\n        TNT1 A 1 A_SpawnItem(\"ItemFog\", 64, 16, 0, 1)\n        TNT1 A 0 A_SpawnItem(\"ExplosiveBarrelTimer\", 64, 16, 0, 1)\n  \tstop\n  }\n}\n\nactor ExplosiveBarrelTimer\n{\n  obituary \"%o went boom.\"\n  health 20\n  radius 10\n  height 34\n  deathsound \"world/barrelx\"\n  speed 0\n  MONSTER\n  +SOLID\n  +SHOOTABLE\n  +NOBLOOD\n  +DONTGIB\n  +NOICEDEATH\n  +FRIENDLY\n  +NORADIUSDMG\n  states\n  {\n  Spawn:\n    BAR1 A 35 A_ChangeFlag(\"INVULNERABLE\",1)\n    BAR1 A 0 A_ChangeFlag(\"INVULNERABLE\",0)\n    BAR1 AB 6 A_Look\n    Goto Spawn+2\n    loop\n  See:\n    BAR1 AB 2 A_Chase\n    loop\n  Melee:\n    BAR1 ABABABABABABABABABABABABABABABABAB 6\n    goto Death\n  Death:\n    BEXP A 5 bright\n    BEXP B 5 bright A_Scream\n    BEXP C 5 bright\n    BEXP D 10 bright A_Explode\n    BEXP E 10 bright\n    stop\n  }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// COINS ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor CoinItem : CustomInventory 25006\n{\n//$Category Stronghold_Items\n\tConversationID 300\n\tgravity 0.6\n\tinventory.pickupmessage \"Picked up a coin.\"\n\tinventory.maxamount 100000\n\tinventory.icon SACKA0\n\tTag \"Credits\"\n\t+INVENTORY.KEEPDEPLETED\n\tstates\n\t{\n\tSpawn:\n\t\tCOIN A 1500\n\t\tCOIN A 2 A_FadeOut\n\t\tgoto Spawn+1\n\tUse:\n//TODO: Make it so it drops 10 or so coins\n\t\tTNT1 A 0 A_SpawnItem(\"CoinItem\", 64, 16, 0, 0)\n\t\tstop\n\t}\n}\n\n// Item that monsters give player when they die. An ACS script gives the player the equal amount in CoinItem.\nactor AwardItem : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\tinventory.maxamount 1000000\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// LIFES ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor LifeItem : CustomInventory 25926\n{\n//$Category Stronghold_Items\n  scale 0.75\n  inventory.pickupmessage \"Picked up an extra life!\"\n  inventory.maxamount 9\n  inventory.icon HERIA0\n  Tag \"Lives (Multiplayer Use Only)\"\n  +INVENTORY.INVBAR\n  +INVENTORY.KEEPDEPLETED\n  +INVENTORY.UNDROPPABLE\n  states\n  {\n  Spawn:\n   \tHERP A -1 Bright\n    \tstop\n  Use:\n        TNT1 A 0 ACS_ExecuteWithResult(897, 0, 0, 0) // Allows the script to fail\n  \tstop\n  }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// JAILTRACKER //////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// Player is given this when they're in jail\nactor JailTracker : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tinventory.maxamount 1\n}\n\n// Player is given one of these per each player in jail\nactor JailTrackerAllPlayers : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tinventory.maxamount 10000\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// MONSTERTRACKER ///////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/*\n// Player is given one of these for each of the number of monsters left to kill this wave\nactor MonsterTracker : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tinventory.maxamount 10000\n}\n*/\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// WAVETRACKER //////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/*\n// Player is given one of these for each of the number of monsters left to kill this wave\nactor WaveTracker : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tinventory.maxamount 10000\n}\n\nactor HUDCredits : Inventory // Displays top bar when in Intermission\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tInventory.MaxAmount 1\n}  */\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// THRUSTDUMMY //////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// Used for scripts that thrust player to detect when he's not where he should be\nactor ThrustDummy : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.INTERHUBSTRIP\n\tInventory.MaxAmount 1\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// SUPER SHIELD ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor SuperShield : BasicArmorPickup 10716\n{\n//$Category Stronghold_Items\n  armor.savepercent 100.0\n  armor.saveamount 300\n  inventory.icon \"ARMXA0\"\n  inventory.pickupmessage \"Picked up the super shield!\"\n  states\n  {\n  Spawn:\n    ARMX AB 3 Bright\n    loop\n  }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// PORTABLE MEDICINE ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor PSuperMedKit : HealthPickup 12791\n{\n//$Category Stronghold_Items\n  health 100\n  inventory.maxamount 10\n  inventory.icon \"PMH2A0\"\n  inventory.pickupmessage \"Picked up a portable super medkit.\"\n  Tag \"Portable Super Medkit\"\n  +COUNTITEM\n  states\n  {\n  Spawn:\n    PM02 A -1\n    stop\n  }\n}\n\nactor PMedKit : HealthPickup 12792\n{\n//$Category Stronghold_Items\n  health 25\n  inventory.maxamount 10\n  inventory.icon \"PMH1A0\"\n  inventory.pickupmessage \"Picked up a portable medkit.\"\n  Tag \"Portable Medkit\"\n  +COUNTITEM\n  states\n  {\n  Spawn:\n    PM01 ABCD 2\n    loop\n  }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// POWER UPS ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// TIME FREEZER //////////////////////////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\nactor TimeFreezerItem : PowerupGiver 12793\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up a time freeze sphere.\"\n inventory.icon \"FRZIA0\"\n inventory.maxamount 1\n inventory.usesound \"pickups/slowmo\"\n powerup.color \"00 33 FF\" 0.10\n powerup.type \"TimeFreezer\"\n powerup.duration 1050\n Tag \"Time Freeze\"\n +INVENTORY.FANCYPICKUPSOUND\n +INVENTORY.INVBAR\n states\n {\n Spawn:\n   FRZP A -1 BRIGHT\n   stop\n }\n}\n\nactor TimeFreezerPickup : PowerupGiver 24027\n{\n//$Category Stronghold_Items\n SpawnID 229\n scale 0.75\n inventory.pickupmessage \"Time freeze!\"\n inventory.icon \"TIMEA0\"\n inventory.maxamount 10\n inventory.usesound \"pickups/slowmo\"\n powerup.color \"00 33 FF\" 0.10\n powerup.type \"TimeFreezer\"\n powerup.duration 1050\n +INVENTORY.FANCYPICKUPSOUND\n +INVENTORY.AUTOACTIVATE\n states\n {\n Spawn:\n   TIME ABCD 4 BRIGHT\n   loop\n }\n}\n\n///////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// QUAD DAMAGE ////////////////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerQuadDamage : PowerDamage\n{\ndamagefactor \"normal\", 4\ninventory.icon \"DOOMA0\"\n}\n\nactor QuadDamageItem : PowerupGiver 12794\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up a quad damage sphere.\"\n powerup.color RedMap\n inventory.maxamount 3\n inventory.usesound \"pickups/slowmo\"\n inventory.icon \"DAMIA0\"\n powerup.type QuadDamage\n powerup.duration 1050\n Tag \"Quad Damage\"\n +INVENTORY.FANCYPICKUPSOUND\n   states\n {\n Spawn:\n   DAMP A -1 BRIGHT\n   stop\n }\n}\n\nactor QuadDamagePowerup : PowerupGiver 24028\n{\n//$Category Stronghold_Items\n SpawnID 228\n scale 0.75\n inventory.pickupmessage \"Doomsphere!\"\n powerup.color RedMap\n inventory.usesound \"pickups/slowmo\"\n inventory.icon \"DOOMA0\"\n powerup.type QuadDamage\n powerup.duration 1050\n +INVENTORY.FANCYPICKUPSOUND\n +INVENTORY.AUTOACTIVATE\n   states\n {\n Spawn:\n   DOOM ABCD 4 BRIGHT\n   loop\n }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// INVULNERABILITY ///////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor InvulnerabilityItem : PowerupGiver 12795\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up an invulnerability sphere.\"\n inventory.icon \"INVIA0\"\n inventory.maxamount 2\n inventory.usesound \"pickups/slowmo\"\n powerup.color InverseMap\n powerup.type \"Invulnerable\"\n powerup.duration 1575\n Tag \"Invulnerability\"\n +INVENTORY.FANCYPICKUPSOUND\n states\n {\n Spawn:\n   INVP A -1 BRIGHT\n   stop\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// MAX ARMOR+ //////////////////////////////////////////////////////////////////////////////////////////////////\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nACTOR MaxArmorBonus2 : BasicArmorBonus 12796\n{\n//$Category Stronghold_Items\n\tRadius 20\n\tHeight 16\n\tInventory.Pickupmessage \"Picked up a max armor bonus.\"\n\tArmor.Savepercent 33.33333\n\tArmor.Saveamount 5\n\tArmor.Maxsaveamount 200\n\tArmor.MaxBonus 5\n\tArmor.MaxBonusMax 50\n\t+COUNTITEM\n\t+INVENTORY.ALWAYSPICKUP\n\tstates\n\t{\n\tSpawn:\n\t\tBON4 ABCDCB 6 BRIGHT\n\t\tloop\n\t}\n}\n\n// The following is a hack separating the above into two actors, with one that stays in the player's inventory,\n// so that the game can count how many the player has. This ultimately wasn't needed so I've commented it out just\n// in case this ever becomes a problem. Make sure to comment out the above if you use this.\n/*\nACTOR MaxArmorBonus2 : CustomInventory 12796\n{\n\tRadius 20\n\tHeight 16\n\tInventory.Pickupmessage \"Picked up a max armor bonus.\"\n\t+COUNTITEM\n\t+INVENTORY.UNDROPPABLE\n\t+INVENTORY.ALWAYSPICKUP\n\tstates\n\t{\n\tSpawn:\n\t\tBON4 ABCDCB 6 BRIGHT\n\t\tloop\n\tPickup:\n\t\tTNT1 A 0 A_GiveInventory (\"MaxArmorBonus2real\")\n\t\tTNT1 A 0 A_GiveInventory (\"MaxArmorBonus2counter\")\n\t\tstop\n\tUse:\t// Dummy use state to make item stay in inventory\n\t\tTNT1 A 0\n\t\tfail\n\t}\n}\n\nACTOR MaxArmorBonus2real : BasicArmorBonus\n{\n\tArmor.Savepercent 33.33333\n\tArmor.Saveamount 5\n\tArmor.Maxsaveamount 200\n\tArmor.MaxBonus 5\n\tArmor.MaxBonusMax 50\n\t+INVENTORY.ALWAYSPICKUP\n}\n*/\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// MAX HEALTH+ /////////////////////////////////////////////////////////////////////////////////////////////////\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nACTOR MaxHealthBonus2 : UpgradeStamina 12797\n{\n//$Category Stronghold_Items\nRadius 20\nHeight 16\nInventory.Pickupmessage \"Picked up a max health bonus.\"\nInventory.Amount 5\nInventory.MaxAmount 300\n+COUNTITEM\n+INVENTORY.ALWAYSPICKUP\nstates\n  {\n  Spawn:\n    BON3 ABCDCB 6 BRIGHT\n    loop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// REGENERATION //////////////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor RegenerationItem : PowerupGiver 24031\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up a regeneration sphere.\"\n inventory.icon \"RESIA0\"\n inventory.maxamount 3\n inventory.usesound \"pickups/slowmo\"\n powerup.color \"FF 00 AE\" 0.10\n powerup.type \"Regeneration\"\n powerup.duration 1575\n Tag \"Regeneration\"\n +INVENTORY.FANCYPICKUPSOUND\n states\n {\n Spawn:\n   RESP A -1 BRIGHT\n   stop\n }\n}\n\n///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BARRIER ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor WallItem : CustomInventory 12798\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up a barrier kit.\"\n  inventory.pickupsound \"misc/p_pkup\"\n  inventory.maxamount 3\n  inventory.icon WALIA0\n  Tag \"Barrier Kit\"\n  +INVENTORY.INVBAR\n  scale 0.75\n   states\n  {\n  Spawn:\n   \t\tWALP A -1 BRIGHT\n    \tstop\n  use:\n  \t\tTNT1 A 0 A_SpawnItemEx(\"WallSpawner\",64,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)\n\t\tstop\n  }\n}\n\nactor WallSpawner\n{\n  +ISMONSTER\n  +NOBLOCKMAP\n  Radius 4\n  Height 4\n  States\n  {\n  Spawn:\n  \t\tTNT1 A 0\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  60, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  50, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  40, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  30, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  20, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  10, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  0,  32, 0, 0, 0, 0, 90,  SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -10, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -20, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -30, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  \t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -40, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -50, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n\t\tTNT1 A 1 A_SpawnItemEx(\"WallPlaced\",  -60, 32, 0, 0, 0, 0, 90, SXF_SETMASTER | SXF_NOCHECKPOSITION, 0)\n  SpawnLoop:\n\t\tTNT1 A 1\n  \t\tLoop\n  }\n}\n\nactor WallBolt\n{\n  PROJECTILE\n  +NOCLIP\n  Speed 1\n  Damage 0\n  RenderStyle Add\n  Alpha 1.0\n  Scale 0.33\n  States\n  {\n  Spawn:\n    WLXP A 1 A_FadeOut(0.025)\n\tLoop\n  }\n}\n\nactor WallBolt2 : WallBolt\n{\n  States\n  {\n  Spawn:\n    WLXP B 1 A_FadeOut(0.025)\n\tLoop\n  }\n}\n\nactor WallPlaced\n{\n\thealth 200\n\tmass 0x7fffffff\n\tradius 8\n\theight 128\n\tspeed 0\n\tscale 0.5\n\tdamage 0\n\t+FRIENDLY\n\t+DONTBLAST\n\t+SOLID\n\t+SHOOTABLE\n\t+NOBLOOD\n\t+NORADIUSDMG\n\t+ISMONSTER\n\tDeathSound \"WallItem/Explode\"\n\tstates\n \t{\n \tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 A_JumpIfInventory(\"WallTimer\",4200,3)\n\t\tTNT1 A 0 A_SpawnItemEx(\"RedSparkleRandom\",random(-10.0,10.0),0,0,0,0,random(0.05,2.00),0,128,192)\n\t\tTNT1 A 1 A_GiveInventory(\"WallTimer\",1)\n  \t\tLoop\n\t    TNT1 A 1 A_Die\n\t\tWait\n \tDeath:\n \t\tTNT1 A 0 A_Scream\n\t\tTNT1 A 0 A_KillSiblings\n\t\tTNT1 AAAA 0 A_CustomMissile(\"WallBolt\",random(10,50),0,random(0,360),2,random(-15,15))\n\t\tTNT1 AAAA 0 A_CustomMissile(\"WallBolt2\",random(10,50),0,random(0,360),2,random(-15,15))\n \t\tStop\n  \t}\n}\n\nactor WallTimer : Inventory\n{\n  Inventory.MaxAmount 4200\n}\n\nactor RedSparkle\n{\n  height 2\n  radius 1\n  speed 1.0\n  +MISSILE +NOINTERACTION\n  renderstyle Add\n  alpha 0.9\n  translation \"80:96=175:191\"\n  states\n  {\n  Spawn:\n    PTCL ABCABCABCABCABCABC 2 bright\n  Death:\n    PTCL ABC 2 bright A_FadeOut (0.1)\n    loop\n  }\n}\n\nactor RedSparkleRandom : RandomSpawner\n{\n  DropItem \"RedSparkleTiny\"\n  DropItem \"RedSparkleSmall\"\n  DropItem \"RedSparkleMedium\"\n}\n\nactor RedSparkleTiny   : RedSparkle { scale 0.125 }\nactor RedSparkleSmall  : RedSparkle { scale 0.2 }\nactor RedSparkleMedium : RedSparkle { scale 0.4 }\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// RANDOM WEAPON ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor RandomWeaponItem : CustomInventory 25023\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up a random weapon sphere.\"\n  inventory.maxamount 3\n  inventory.icon WEPIA0\n  Tag \"Random Weapon\"\n  +INVENTORY.INVBAR\n  scale 0.75\n  states\n  {\n  Spawn:\n   \tWEPP A -1 BRIGHT\n    \tstop\n  Use:\n        TNT1 A 0 A_Jump(64, 21)\n        TNT1 A 0 A_Jump(64, 19)\n        TNT1 A 0 A_Jump(64, 17)\n        TNT1 A 0 A_Jump(64, 15)\n        TNT1 A 0 A_Jump(64, 13)\n        TNT1 A 0 A_Jump(64, 11)\n        TNT1 A 0 A_Jump(64, 9)\n        TNT1 A 0 A_Jump(64, 7)\n        TNT1 A 0 A_Jump(64, 5)\n        TNT1 A 0 A_Jump(64, 3)\n        TNT1 A 0 A_Jump(64, 1)\n\tTNT1 A 0 A_GiveInventory(\"DEBFG9000\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"Pyrocannon\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"Devastator\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"Repeater\", 4)\n  \tstop\n        TNT1 A 0 A_GiveInventory(\"Flamer\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"Railgun\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"StunnerRifle\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"DEPlasmaRifle\", 4)\n  \tstop\n        TNT1 A 0 A_GiveInventory(\"DERLauncher\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"HRL\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"LandMineLayer\", 4)\n  \tstop\n\tTNT1 A 0 A_GiveInventory(\"Autoshotgun\", 4)\n  \tstop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// AUTO DRONE ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nACTOR AutoDroneItem : CustomInventory 24025\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up an autodrone.\"\n  inventory.maxamount 2\n  inventory.icon DRNIA0\n  Tag \"Autodrone\"\n  +INVENTORY.INVBAR\n  scale 0.75\n  states\n  {\n  Spawn:\n   \tDRNP A -1 BRIGHT\n    \tstop\n  Use:\n       TNT1 A 0 A_JumpIfInventory(\"ForceCubeTimerRight\",1,3)\n       TNT1 A 0 A_GiveInventory(\"ForceCubeTimerRight\",1)\n       TNT1 A 0 A_SpawnItemEx(\"ForceCube1Right\",0,0,0,0,0,0,0,33,0)\n       Stop\n       TNT1 A 0 A_JumpIfInventory(\"ForceCubeTimerLeft\",1,3)\n       TNT1 A 0 A_GiveInventory(\"ForceCubeTimerLeft\",1)\n       TNT1 A 0 A_SpawnItemEx(\"ForceCube1Left\",0,0,0,0,0,0,0,33,0)\n       Stop\n       TNT1 A 0\n       Loop\n   }\n}\n\nACTOR ForceCube1Right\n{\n    Radius 0\n    Height 0\n    +NOTIMEFREEZE\n    States\n    {\n    Spawn:\n        TNT1 A 0\n        TNT1 A 0 A_SpawnItemEx(\"ForceCubeGiverRight\",0,0,0,0,0,0,0,33,0)\n        Stop\n    }\n}\n\nACTOR ForceCube1Left\n{\n    Radius 0\n    Height 0\n    +NOTIMEFREEZE\n    States\n    {\n    Spawn:\n        TNT1 A 0\n        TNT1 A 0 A_SpawnItemEx(\"ForceCubeGiverLeft\",0,0,0,0,0,0,0,33,0)\n        Stop\n    }\n}\n\nACTOR ForceCube2Right : CustomInventory\n{\n    +AUTOACTIVATE\n    +NOTIMEFREEZE\n    States\n    {\n    Pickup:\n        TNT1 A 0 A_SpawnItemEx(\"RightCube\",28,16,36,0,0,0,0,33,0)\n        Stop\n    }\n}\n\nACTOR ForceCube2Left : CustomInventory\n{\n    States\n    {\n    Pickup:\n        TNT1 A 0 A_SpawnItemEx(\"LeftCube\",28,-16,36,0,0,0,0,33,0)\n        Stop\n    }\n}\n\nACTOR ForceCubeTimerLeft : CustomInventory\n{\n   +NOTIMEFREEZE\n   +INVENTORY.INTERHUBSTRIP\n   States\n   {\n   Use:\n       TNT1 A 0\n       Stop\n   }\n}\n\nACTOR ForceCubeTimerRight : CustomInventory\n{\n   +NOTIMEFREEZE\n   +INVENTORY.INTERHUBSTRIP\n   States\n   {\n   Use:\n       TNT1 A 0\n       Stop\n   }\n}\n\nACTOR ForceCubeTimer2 : Inventory\n{\n    +NOTIMEFREEZE\n    Inventory.Amount 1\n    Inventory.MaxAmount 4200\n    States\n    {\n    Spawn:\n        TNT1 A 0\n        Stop\n    }\n}\n\nACTOR ForceCubeGiverRight\n{\n    Health 1000000000\n    Radius 0\n    Height 0\n    Speed 0\n    +NONSHOOTABLE\n    +MISSILEMORE\n    +MISSILEEVENMORE\n    +NOTIMEFREEZE\n    MinMissileChance 0\n    States\n    {\n    Spawn:\n        TNT1 A 1 A_Look\n        Loop\n    See:\n        TNT1 A 1 A_Chase\n        Loop\n    Missile:\n        TNT1 A 0 A_JumpIfInTargetInventory(\"ForceCubeTimerRight\",1,2)\n        TNT1 A 0 A_Jump(256,\"Death\")\n        TNT1 A 0 A_JumpIfInventory(\"ForceCubeTimer2\",4200,\"Death\")\n        TNT1 A 0 A_GiveInventory(\"ForceCubeTimer2\",1)\n        TNT1 A 1 A_GiveToTarget(\"ForceCube2Right\",1)\n        Loop\n    Death:\n        TNT1 A 0 A_TakeFromTarget(\"ForceCubeTimerRight\",1)\n        Stop\n    }\n}\n\nACTOR ForceCubeGiverLeft\n{\n    Health 1000000000\n    Radius 0\n    Height 0\n    Speed 0\n    +NONSHOOTABLE\n    +MISSILEMORE\n    +MISSILEEVENMORE\n    +NOTIMEFREEZE\n    MinMissileChance 0\n    States\n    {\n    Spawn:\n        TNT1 A 1 A_Look\n        Loop\n    See:\n        TNT1 A 1 A_Chase\n        Loop\n    Missile:\n        TNT1 A 0 A_JumpIfInTargetInventory(\"ForceCubeTimerLeft\",1,2)\n        TNT1 A 0 A_Jump(256,\"Death\")\n        TNT1 A 0 A_JumpIfInventory(\"ForceCubeTimer2\",4200,\"Death\")\n        TNT1 A 0 A_GiveInventory(\"ForceCubeTimer2\",1)\n        TNT1 A 1 A_GiveToTarget(\"ForceCube2Left\",1)\n        Loop\n    Death:\n        TNT1 A 0 A_TakeFromTarget(\"ForceCubeTimerLeft\",1)\n        Stop\n    }\n}\n\nACTOR RightCube\n{\n    Radius 0\n    Height 0\n    Speed 0\n    Scale 0.1\n    +FRIENDLY\n    +NOGRAVITY\n    +NOTIMEFREEZE\n    +MISSILEMORE\n    +MISSILEEVENMORE\n    MinMissileChance 0\n    States\n    {\n    Spawn:\n    \tDRON AA 1 A_LookEx(2,0,800,0,135,\"See\")\n        Stop\n    See:\n\tDRON A 0 A_Jump(240,3) // the higher the number, the less frequent it attacks\n        DRON A 1 A_CustomMissile(\"AutoDroneBall\",8,0,0,0)\n        TNT1 A 0 A_PlaySound(\"ForceCube/Fire\")\n        DRON A 1\n        Stop\n    }\n}\n\nACTOR LeftCube\n{\n    Radius 0\n    Height 0\n    Speed 0\n    Scale 0.1\n    +FRIENDLY\n    +NOGRAVITY\n    +NOTIMEFREEZE\n    +MISSILEMORE\n    +MISSILEEVENMORE\n    MinMissileChance 0\n    States\n    {\n    Spawn:\n    \tDRON AA 1 A_LookEx(2,0,800,0,135,\"See\")\n        Stop\n    See:\n\tDRON A 0 A_Jump(240,3) // the higher the number, the less frequent it attacks\n        DRON A 1 A_CustomMissile(\"AutoDroneBall\",8,0,0,0)\n        TNT1 A 0 A_PlaySound(\"ForceCube/Fire\")\n        DRON A 1\n        Stop\n    }\n}\n\nACTOR AutoDroneBall\n{\n   Radius 8\n   Height 8\n   Speed 20\n   Damage 48\n   PROJECTILE\n   RENDERSTYLE ADD\n   ALPHA 0.90\n   Scale 0.2\n   damagetype \"bossfactor\"\n   +NOTIMEFREEZE\n   +THRUGHOST\n   SeeSound \"weapons/devbal\"\n   DeathSound \"weapons/devex2\"\n   States\n   {\n   Spawn:\n      DBA2 AB 4 Bright\n      Loop\n   Death:\n      DBA2 C 4 Bright\n      DBA2 DE 4 Bright\n      Stop\n   }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// SMARTBOMB ////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor SmartBombItem : CustomInventory 24026\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up the smart bomb!\"\n  inventory.maxamount 1\n  inventory.icon SMAIA0\n  Tag \"Smart Bomb\"\n  +INVENTORY.INVBAR\n  scale 0.75\n  states\n  {\n  Spawn:\n   \tSMAP A -1 BRIGHT\n    \tstop\n  Use:\n        TNT1 A 1 A_SpawnItemEx(\"SmartBombGrenade\", 0, 0, 32, 0, 10, 6, 90)\n        stop\n  }\n}\n\nactor SmartBombGrenade\n{\n\tprojectile\n\t-nogravity\n\t+hexenbounce\n\t+bounceonactors\n\t+canbouncewater\n\t+noexplodefloor\n\t+slidesonwalls\n\t-noteleport\n\tbouncefactor 0.6\n\tpainsound \"\"\n        damagetype \"corefriendly\"\n\tobituary \"%o got blinded by %k.\"\n        speed 6\n\tradius 2\n\theight 2\n\tdamage 0\n        States\n        {\n         Spawn:\n          UVGR ABCD 1\n          UVGR ABCD 2\n          UVGR ABCD 4\n          UVGR A 16 A_Stop\n          UVGR A 0 A_PlaysoundEx(\"UVCharge\",\"voice\",0,1)\n          UVGR A 0 A_SpawnItemEx(\"smallestlightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR A 0 A_SpawnItemEx(\"smallerlightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR E 170 BRIGHT A_SpawnItemEx(\"smalllightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR E 0 BRIGHT A_SpawnItemEx(\"Blindinglightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR E 0 BRIGHT A_SpawnItemEx(\"MoreBlindinglightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR E 0 BRIGHT A_SpawnItemEx(\"MostBlindinglightemmit\", 0, 0, 0, 0, 0, 0, 0, 128)\n          UVGR E 0 BRIGHT A_CustomMissile(\"LightRailer\", 0, 0, 0)\n          UVGR E 0 BRIGHT Radius_Quake(9,17,0,64,0)\n          UVGR E 1 BRIGHT A_SpawnItemEx(\"RingLightemmit1\", 0, 0, 0, 0, 0, 0, 0, 128)\n\t  UVGR E 1 BRIGHT A_SpawnItemEx(\"RingLightemmit2\", 0, 0, 0, 0, 0, 0, 0, 128)\n\t  UVGR E 1 BRIGHT A_SpawnItemEx(\"RingLightemmit3\", 0, 0, 0, 0, 0, 0, 0, 128)\n\t  UVGR E 1 BRIGHT A_SpawnItemEx(\"RingLightemmit4\", 0, 0, 0, 0, 0, 0, 0, 128)\n\t  UVGR E 1 BRIGHT A_SpawnItemEx(\"RingLightemmit5\", 0, 0, 0, 0, 0, 0, 0, 128)\n          TNT1 A 15\n          stop\n\t\t}\n}\n\nactor smalllightemmit\n{\n radius 0\n height 0\n Renderstyle ADD\n alpha 0.75\n scale 0.5\n States\n {\n   Spawn:\n    WHFL A 170 BRIGHT\n    WHFL A 1 BRIGHT A_Fadeout(0.05)\n    goto spawn+1\n }\n}\n\nactor smallerlightemmit : smalllightemmit\n{\nscale 0.35\n}\n\nactor smallestlightemmit : smalllightemmit\n{\nscale 0.2\n}\n\nactor Blindinglightemmit : smalllightemmit\n{\n alpha 0.5\n scale 1.0\n States\n {\n  Spawn:\n   WHFL A 50 BRIGHT\n   WHFL A 1 BRIGHT A_Fadeout(0.05)\n   goto spawn+1\n}\n}\n\nactor moreBlindinglightemmit : Blindinglightemmit\n{\n scale 0.75\n}\n\nactor mostBlindinglightemmit : Blindinglightemmit\n{\n scale 0.5\n}\n\nactor Lightrailer\n{\n    +MissileMore\n    +LOOKALLAROUND\n    obituary \"%o got blinded a smart bomb!\"\n    reactiontime 25\n    MinMissileChance 0\n    damagetype \"corefriendly\"\n    Speed 0\n    Radius 0\n    Height 0\n    States\n    {\n    Spawn:\n        TNT1 A 0 A_Changeflag(\"FRIENDLY\", 1)\n        TNT1 A 1 A_Look\n        TNT1 A 0 A_Changeflag(\"FRIENDLY\", 0)\n        TNT1 A 1 A_Look\n        TNT1 A 0 A_Changeflag(\"FRIENDLY\", 1)\n        TNT1 A 1 A_Look\n        TNT1 A 0 A_Changeflag(\"FRIENDLY\", 0)\n        TNT1 A 1 A_Look\n        Stop\n    See:\n        TNT1 A 1 A_Facetarget\n        TNT1 A 1 A_CustomRailgun (200, 0, NONE, WHITE, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, GREY, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, GREY, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, WHITE, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, GREY, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, GREY, 1)\n        TNT1 A 0 A_CustomRailgun (200, 0, NONE, WHITE, 1)\n        TNT1 A 0 A_Countdown\n        goto spawn\n    }\n}\n\nactor RingLightemmit1\n{\n radius 0\n height 0\n Renderstyle ADD\n alpha 0.5\n scale 5.0\n States\n{\nSpawn:\n WHFL B 2 BRIGHT\n stop\n}\n}\n\nactor ringlightemmit2 : ringlightemmit1\n{\n alpha 0.4\n scale 6.0\n}\n\nactor ringlightemmit3 : ringlightemmit1\n{\n alpha 0.3\n scale 7.0\n}\n\nactor ringlightemmit4 : ringlightemmit1\n{\n alpha 0.2\n scale 8.0\n}\n\nactor ringlightemmit5 : ringlightemmit1\n{\n alpha 0.1\n scale 9.0\n}\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// VAMPIRISM / DRAIN /////////////////////////////////////////////////////////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor DrainItem : PowerupGiver 24040\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up a vampirism sphere.\"\n inventory.icon \"VAMIA0\"\n inventory.maxamount 3\n inventory.usesound \"pickups/slowmo\"\n powerup.color \"AA 00 00\" 0.20\n powerup.type \"Drain\"\n powerup.duration 1575\n Tag \"Vampirism\"\n +INVENTORY.FANCYPICKUPSOUND\n states\n {\n Spawn:\n   VAMP A -1 BRIGHT\n   stop\n }\n}\n\n///////////////////////////////////////////////////////////////////////////////////////////////////////\n// PROTECTION /////////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerQuarterDamage : PowerProtection\n{\ndamagefactor \"normal\", 0.25\ninventory.icon \"MEGAA0\"\n}\n\nactor ProtectionItem : PowerupGiver 24041\n{\n//$Category Stronghold_Items\n scale 0.75\n inventory.pickupmessage \"Picked up a protection sphere.\"\n inventory.icon \"PROIA0\"\n inventory.maxamount 3\n inventory.usesound \"pickups/slowmo\"\n powerup.color \"FF AA 00\" 0.10\n powerup.type QuarterDamage\n powerup.duration 1575\n Tag \"Protection\"\n +INVENTORY.FANCYPICKUPSOUND\n states\n {\n Spawn:\n   PROP A -1 BRIGHT\n   stop\n }\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////////////\n// MORPHPOWERUP /////////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////////////\n\nACTOR MorphPlayerItem : PowerUpGiver 24042\n{\n//$Category Stronghold_Items\n scale 0.75\n Inventory.PickupMessage \"Picked up a morph sphere.\"\n inventory.usesound \"pickups/slowmo\"\n inventory.maxamount 2\n inventory.icon \"MORIA0\"\n Powerup.Type MorphPlayer\n Powerup.Duration 1575\n Tag \"Morpher\"\n +INVENTORY.FANCYPICKUPSOUND\n states\n {\n Spawn:\n   MORP A -1 BRIGHT\n   stop\n }\n}\n\nACTOR PowerMorphPlayer : PowerMorph\n{\n\tPowerMorph.PlayerClass \"MorphedPlayer\"\n\tPowerMorph.MorphStyle (MRF_FULLHEALTH|MRF_ADDSTAMINA|MRF_WHENINVULNERABLE|MRF_NEWTIDBEHAVIOUR|MRF_LOSEACTUALWEAPON)\n}\n\n/////////////////////////////////////////////////////////////////////////////////////////////////\n// I WIN BUTTON - POWERUP ///////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerOSPDamage : PowerDamage {\n  damagefactor \"normal\", 4\n}\nactor PowerOSPSpeed : PowerSpeed {\n  Speed 2.0\n}\n\nactor OSPInv : PowerupGiver {\n  +INVENTORY.AUTOACTIVATE\n  +INVENTORY.ALWAYSPICKUP\n  Inventory.MaxAmount 0\n  Powerup.Duration 350\n  Powerup.Type \"Invulnerable\"\n  Powerup.Color GoldMap\n  States\n  {\n  Spawn:\n    MEGA A 6\n    Loop\n  }\n}\nactor OSPQuad : PowerupGiver {\n  +INVENTORY.AUTOACTIVATE\n  +INVENTORY.ALWAYSPICKUP\n  Inventory.MaxAmount 0\n  Powerup.Duration 350\n  Powerup.Type \"OSPDamage\"\n  Powerup.color \"FF 00 00\",0.35\n  States\n  {\n  Spawn:\n    MEGA A 6\n    Loop\n  }\n}\nactor OSPSpeed : PowerupGiver {\n  +INVENTORY.AUTOACTIVATE\n  +INVENTORY.ALWAYSPICKUP\n  Inventory.MaxAmount 0\n  Powerup.Duration 350\n  Powerup.Type \"OSPSpeed\"\n  States\n  {\n  Spawn:\n    MEGA A 6\n    Loop\n  }\n}\nactor OSPPower : PowerupGiver {\n  +INVENTORY.AUTOACTIVATE\n  +INVENTORY.ALWAYSPICKUP\n  Inventory.MaxAmount 0\n  Powerup.Duration 350\n  Powerup.Type \"WeaponLevel2\"\n  States\n  {\n  Spawn:\n    MEGA A 6\n    Loop\n  }\n}\n\nactor OSPHealth : Health {\n  Inventory.Amount 100\n  Inventory.MaxAmount 100\n  States\n  {\n  Spawn:\n    SOUL A 6\n    Loop\n  }\n}\n\nactor IWinButtonItem : CustomInventory 23475\n{\n//$Category Stronghold_Items\n  inventory.maxamount 1\n  Inventory.Icon IWBIA0\n  Inventory.PickupMessage \"You got the I Win Button. Yay!\"\n  +INVENTORY.INVBAR\n  Tag \"I Win Button\"\n  states\n  {\n    Spawn:\n      IWBP A -1 BRIGHT\n      stop\n    Use:\n      TNT1 A 0 A_GiveInventory(\"OSPInv\")\n      TNT1 A 0 A_GiveInventory(\"OSPQuad\")\n      TNT1 A 0 A_GiveInventory(\"OSPSpeed\")\n      TNT1 A 0 A_GiveInventory(\"OSPPower\")\n      TNT1 A 0 A_GiveInventory(\"OSPHealth\")\n      stop\n  }\n}"
      },
      {
        "source": "pk3",
        "name": "actors/weapons/dec_pwr.txt",
        "contents": "//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// POWERUP    ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor WeaponPowerItem : CustomInventory 25007\n{\n//$Category Stronghold_Items\n  inventory.pickupmessage \"Picked up a weapon powerup kit.\"\n  inventory.maxamount 3\n  inventory.icon POWIA0\n  tag \"Weapon Powerup Kit\"\n  +INVENTORY.INVBAR\n  scale 0.75\n  states\n  {\n  Spawn:\n   \tPOWP A -1 BRIGHT\n    \tstop\n  Pickup:\n  \tTNT1 A 1 A_PlaySound(\"pickup\")\n  \tstop\n  Use:\n        TNT1 A 1 A_GiveInventory(\"WeaponPowerUpGiver\")\n  \tstop\n  }\n}\n\nactor WeaponPowerupGiver : PowerupGiver\n{\n  powerup.color \"80 00 ff\",0.1\n  powerup.duration 2100 //60 seconds\n  powerup.type WeaponLevel2\n  +INVENTORY.ALWAYSPICKUP\n  +INVENTORY.AUTOACTIVATE\n  inventory.maxamount 0\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////  PISTOL    ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerPistol : DoomWeapon\n{\n  Weapon.SelectionOrder 1900\n  Weapon.AmmoUse 1\n  Weapon.AmmoGive 20\n  Weapon.AmmoType \"Clip\"\n  Weapon.SisterWeapon \"DEPistol\"\n  +POWERED_UP\n  Obituary \"$OB_MPPISTOL\" // \"%o was tickled by %k's pea shooter.\"\n  attacksound \"weapons/pistol\"\n  +WEAPON.WIMPY_WEAPON\n  Inventory.Pickupmessage \"$PICKUP_PISTOL_DROPPED\" // \"Picked up a pistol.\"\n  Tag \"Pistol\"\n  States\n  {\n  Ready:\n    PISG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    PISG A 1 A_Lower\n    Loop\n  Select:\n    PISG A 1 A_Raise\n    Loop\n  Fire:\n    PISG A 2\n\tPISG B 3 A_FirePistol\n    PISG C 2\n    PISG B 5 A_ReFire\n    Goto Ready\n  Flash:\n    PISF A 3 Bright A_Light1\n    Goto LightDone\n    PISF A 0 Bright A_Light0\n    Goto LightDone\n  Spawn:\n    PIST A -1\n    Stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////  SHOTGUN   ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerShotgun : DoomWeapon\n{\n  Weapon.SelectionOrder 1300\n  Weapon.AmmoUse 1\n  Weapon.AmmoGive 8\n  Weapon.AmmoType \"Shell\"\n  Weapon.SisterWeapon \"DEShotgun\"\n  +POWERED_UP\n  attacksound \"weapons/shotgf\"\n  Inventory.PickupMessage \"$GOTSHOTGUN\" // \"You got the shotgun!\"\n  Obituary \"%o got pummeled by %k's shotgun.\" // \"%o chewed on %k's boomstick.\"\n  Tag \"Shotgun\"\n  States\n  {\n  Ready:\n    SHTG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    SHTG A 1 A_Lower\n    Loop\n  Select:\n    SHTG A 1 A_Raise\n    Loop\n  Hold:\n  Fire:\n    SHTG A 3\n    SHTG E 0 A_GunFlash\n    SHTG E 2 A_FireBullets (1.5, 0.5, 10, 5, \"BulletPuff\")\n    SHTG F 3\n    SHTG G 2\n    SHTG BCDCB 2\n    SHTG A 1 A_ReFire\n    goto Ready\n  Flash:\n    TNT1 A 4 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    stop\n  Spawn:\n    SHOT A -1\n    Stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// CHAINGUN   ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerChaingun : DoomWeapon\n{\n   Weapon.SelectionOrder 700\n   Weapon.AmmoUse 1\n   Weapon.AmmoGive 20\n   Weapon.AmmoType \"Clip\"\n   Weapon.SisterWeapon \"DEChaingun\"\n   +POWERED_UP\n   attacksound \"weapons/chngun\"\n   Inventory.PickupMessage \"$GOTCHAINGUN\" // \"You got the chaingun\"\n   Obituary \"$OB_MPCHAINGUN\" // \"%o was mowed down by %k's chaingun.\"\n   Tag \"Chaingun\"\n   States\n   {\n   Ready:\n     CHGG A 1 A_WeaponReady\n     Loop\n   Deselect:\n     CHGG A 1 A_Lower\n     Loop\n   Select:\n     CHGG A 1 A_Raise\n     Loop\n   Spawn:\n     MGUN A -1\n     Stop\n   Fire:\n     CHGG C 2 Bright A_GunFlash\n     CHGG D 2 Bright A_FireBullets (1,1.1,1,5,\"BulletPuff\")\n     CHGG E 2 Bright A_GunFlash\n     CHGG F 2 Bright A_FireBullets (3,2.1,1,5,\"BulletPuff\")\n     CHGG A 0 A_Refire\n     // Yes, I know the \"cooldown\" that's in the \"hold\" state is not here,\n     // it's not needed. This is intentional.\n     goto Ready\n   Hold:\n     CHGG C 1 Bright A_GunFlash\n     CHGG D 1 Bright A_FireBullets (6,3.1,1,5,\"BulletPuff\")\n     CHGG E 1 Bright A_GunFlash\n     CHGG F 1 Bright A_FireBullets (6,3.1,1,5,\"BulletPuff\")\n     CHGG A 2 A_Refire\n     CHGG B 2\n     CHGG A 2\n     CHGG B 2\n     goto Ready\n   Flash:\n     TNT1 A 2 bright A_Light1\n     TNT1 A 2 bright A_Light2\n     TNT1 A 0 bright A_Light0\n     stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// ROCKET LAUNCHER //////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerRLauncher : RocketLauncher\n{\n   Weapon.SisterWeapon \"DERLauncher\"\n   Tag \"Rocket Launcher\"\n\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      LAUN A -1\n      Loop\n   Ready:\n      MISG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      MISG A 0 A_Lower\n      MISG A 1 A_Lower\n      Loop\n   Select:\n      MISG A 0 A_Raise\n      MISG A 1 A_Raise\n      Loop\n   Fire:\n      MISF A 4 Bright A_GunFlash\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,1,-1,-1)\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,1,-1)\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,-1,1)\n      MISF B 2 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,1,1)\n      MISF CD 5 Bright\n      MISG A 0 A_Refire\n      Goto Ready\n   Hold:\n      MISF A 4 Bright A_GunFlash\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,1,-1,-1)\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,1,-1)\n      MISF B 5 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,-1,1)\n      MISF B 2 Bright A_FireCustomMissile(\"PowerRocket2\",0,0,1,1)\n      MISF CD 5 Bright\n      MISG A 0 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 4 A_Light1\n      TNT1 A 17 A_Light2\n      TNT1 A 5 A_Light1\n      TNT1 A 5 A_Light0\n      stop\n   }\n}\n\nactor PowerRocket2\n{\n  obituary \"%o rode %k's rocket.\"\n  radius 11\n  height 8\n  speed 30\n  damage 35\n  seesound \"weapons/rocklf\"\n  deathsound \"weapons/rocklx\"\n  scale 0.5\n  translation \"128:151=[192,192,192]:[64,64,64]\",\"48:79=[255,255,255]:[0,0,0]\",\"112:127=[255,255,255]:[0,0,0]\"\n  PROJECTILE\n  Damagetype \"Normal\"\n  +RANDOMIZE\n  +ROCKETTRAIL\n  +THRUGHOST\n  +SeekerMissile\n  states\n  {\n  Spawn:\n    MISL A 0 bright A_SeekerMissile(10,2)\n    MISL A 0 bright A_BishopMissileWeave\n    MISL A 1 bright A_BishopMissileWeave\n    loop\n  Death:\n    MISL B 0 bright A_SetTranslucent (0.67,1)\n    MISL B 8 bright A_Explode(96,128)\n    MISL C 6 bright\n    MISL D 4 bright\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// PLASMA RIFLE /////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerPlasmaRifle : PlasmaRifle\n{\n   weapon.ammouse 2\n   Weapon.SisterWeapon \"DEPlasmaRifle\"\n   Tag \"Plasma Rifle\"\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      PLAS A -1\n      Loop\n   Ready:\n      PLSG ABC 3 Bright A_WeaponReady\n      Loop\n   Deselect:\n      PLSG E 0 A_Lower\n      PLSG E 1 A_Lower\n      Loop\n   Select:\n      PLSG E 0 A_Raise\n      PLSG E 1 A_Raise\n      Loop\n   Fire:\n      PLSG F 1 Bright A_GunFlash\n      PLSG F 1 Bright A_FireCustomMissile(\"PowerPlasmaBall\",0,1,0,0)\n      PLSG G 1 Bright\n      PLSG H 1 Bright\n      PLSG D 20 A_Refire\n      Goto Ready\n   Hold:\n      PLSG F 1 Bright A_GunFlash\n      PLSG F 1 Bright A_FireCustomMissile(\"PowerPlasmaBall\",0,1,0,0)\n      PLSG G 1 Bright\n      PLSG H 1 Bright\n      PLSG D 20 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nactor PowerPlasmaBall\n{\n  Radius 22.75\n  Height 14\n  Speed 25\n  Damage 9\n  Scale 0.8\n  Projectile\n  +RANDOMIZE\n  +DOOMBOUNCE\n  Bouncecount 5\n  RenderStyle Add\n  Alpha 0.75\n  SeeSound \"weapons/plasmaf\"\n  DeathSound \"weapons/plasmax\"\n  Obituary \"$OB_MPPLASMARIFLE\"\n  States\n  {\n  Spawn:\n    PLSE A 6 bright\n    loop\n  Death:\n    PLSE ABCDE 4 bright\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////  BFG9000   ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\n// Unlike it's unpowered counterpart, it really really sucks to use this at close\n// range now. That's the price you pay for being tough. ;)\n\nactor PowerBFG9000 : BFG9000\n{\n  weapon.ammouse 5\n  Weapon.SisterWeapon \"DEBFG9000\"\n  Tag \"BFG 9000\"\n  +POWERED_UP\n  States\n  {\n  Spawn:\n    BFUG A -1\n    stop\n  Ready:\n      BFGG ABCD 3 Bright A_WeaponReady\n      loop\n  Deselect:\n      BFGG E 0 A_Lower\n      BFGG E 1 A_Lower\n      loop\n  Select:\n      BFGG E 0 A_Raise\n      BFGG E 1 A_Raise\n      loop\n  Fire:\n      BFGG F 1 Bright\n      BFGG H 1 Bright\n      BFGG J 1 Bright\n      BFGG K 0 Bright A_GunFlash\n      BFGG L 1 Bright A_FireCustomMissile (\"PowerBFGBall\",0,1,0,0)\n      BFGG N 1 Bright\n      BFGG E 7 Bright A_ReFire\n      goto Ready\n  Hold:\n      BFGG F 1 Bright\n      BFGG H 1 Bright\n      BFGG J 1 Bright\n      BFGG K 0 Bright A_GunFlash\n      BFGG L 1 Bright A_FireCustomMissile (\"PowerBFGBall\",0,1,0,0)\n      BFGG N 1 Bright\n      BFGG E 7 Bright A_ReFire\n      goto Ready\n   Flash:\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light2\n      TNT1 A 3 A_Light1\n      TNT1 A 0 A_Light0\n    stop\n  }\n}\n\n// This is a weaker version of the BFG that gets rapidfired. Instead of tracers, it simply explodes. Note that it foils boss immunity to explosions, and it WILL hurt the shooter.\nactor PowerBFGBall\n{\n  SeeSound \"weapons/bfg_fire\"\n  DeathSound \"weapons/bfg_hum\"\n  Radius 13\n  Height 8\n  Speed 35\n  Damage 20\n  Renderstyle Add\n  Scale 0.6\n  Alpha 0.75\n  Projectile\n  +RANDOMIZE\n  +EXTREMEDEATH\n  +FORCERADIUSDMG\n  Obituary \"$OB_MPBFG_BOOM\" // \"%o was splintered by %k's BFG.\"\n  //SuicideObituary \"%k couldn't handle the overwhelming power.\"\n  States\n  {\n  Spawn:\n    BFS1 AB 4 bright\n    loop\n  Death:\n    BFE1 A 3 bright A_Explode(128,196)\n    BFE1 BCDEF 3 bright\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// SUPER SHOTGUN ////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerSuperShotgun : SuperShotgun\n{\n  Weapon.SisterWeapon \"DESuperShotgun\"\n  +POWERED_UP\n  obituary \"%o was splattered by %k's super shotgun.\"\n  Tag \"Super Shotgun\"\n  radius 20\n  height 16\n  attacksound \"weapons/sshotf\"\n  inventory.pickupmessage \"You got the super shotgun!\"\n  weapon.selectionorder 400\n  weapon.kickback 100\n  weapon.ammotype \"Shell\"\n  weapon.ammouse 2\n  weapon.ammogive 8\n  Damagetype \"Normal\"\n  states\n  {\n  Ready:\n    SHT2 A 1 A_WeaponReady\n    loop\n  Deselect:\n    SHT2 A 0 A_Lower\n    SHT2 A 1 A_Lower\n    loop\n  Select:\n    SHT2 A 0 A_Raise\n    SHT2 A 1 A_Raise\n    loop\n  Fire:\n  Hold:\n    SHT2 A 3\n    SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",0,1,0,0)\n    SHT2 A 0 A_GunFlash\n    SHT2 M 0 A_PlayWeaponSound (\"weapons/sshotf\")\n    SHT2 MMMMMMMMMMMMMMMMMMM 0 A_FireCustomMissile (\"SSGRipper\",random(-11.2,11.2),0,0,random(-7.1,7.1))\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-4.00,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-3.55,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-3.11,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-2.66,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-2.22,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-1.77,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-1.33,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-0.88,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",-0.44,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",0.00,0,0,0) // middle\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",0.44,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",0.88,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",1.33,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",1.77,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",2.22,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",2.66,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",3.11,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",3.55,0,0,0)\n    //SHT2 M 0 A_FireCustomMissile (\"SSGRipper\",4.00,0,0,0)\n    SHT2 M 2 Bright\n    SHT2 N 3 Bright\n    SHT2 O 2 Bright\n    SHT2 B 3\n    SHT2 C 4\n    SHT2 D 4 A_CheckReload\n    SHT2 C 3\n    SHT2 E 3 A_PlayWeaponSound (\"weapons/sshoto\")\n    SHT2 F 3\n    SHT2 G 4\n    SHT2 H 4\n    SHT2 I 3 A_PlayWeaponSound (\"weapons/sshotl\")\n    SHT2 J 3\n    SHT2 K 3\n    SHT2 L 4\n    SHT2 E 0 A_PlayWeaponSound (\"weapons/sshotc\")\n    SHT2 E 6 A_ReFire\n    SHT2 A 5 A_ReFire\n    goto Ready\n  Flash:\n    TNT1 A 2 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 2 bright A_Light1\n    TNT1 A 0 bright A_Light0\n    stop\n  Spawn:\n    SGN2 A -1\n    stop\n  }\n}\n\nACTOR SSGRipper {\n  Radius 13\n  Height 8\n  Speed 500\n  Damage 5\n  Projectile\n  +RIPPER\n  +NOEXTREMEDEATH\n  +INVISIBLE\n  Obituary \"%o was splattered by %k's super shotgun.\"\n  States\n  {\n  Spawn:\n    //PUFF A 1 bright\n    TNT1 A 1\n    loop\n  Death:\n    //PUFF BCD 4 bright\n    TNT1 A 1 A_SpawnItemEx(\"BulletPuff\",0,0,0,0,0,1,160,128)\n    stop\n  }\n}\n\n////////////////////////////////////////////////////////\n/////////////////////////// FIST ///////////////////////\n////////////////////////////////////////////////////////\nactor PowerFist : Weapon\n{\n  Weapon.SisterWeapon \"DEFist\"\n  Tag \"Fist\"\n  +POWERED_UP\n  obituary \"%o chewed on %k's fist.\"\n  weapon.selectionorder 3700\n  weapon.kickback 100\n  +WEAPON.WIMPY_WEAPON\n  +WEAPON.MELEEWEAPON\n  states\n  {\n  Ready:\n    PUNG A 1 A_WeaponReady\n    loop\n  Deselect:\n    PUNG A 0 A_Lower\n    PUNG A 1 A_Lower\n    loop\n  Select:\n    PUNG A 0 A_Raise\n    PUNG A 1 A_Raise\n    loop\n  Fire:\n    PUNG B 4\n    PUNG C 4 A_CustomPunch(20,0,0,\"ElectricalPuff\",0)\n    PUNG D 5\n    PUNG C 4\n    PUNG B 5 A_ReFire\n    goto Ready\n  }\n}\n\nactor ElectricalPuff\n{\n  +NOBLOCKMAP\n  +NOGRAVITY\n  +ALLOWPARTICLES\n  +RANDOMIZE\n  RenderStyle Translucent\n  Alpha 0.5\n  VSpeed 0.25\n  Scale 0.5\n  Mass 5\n  SeeSound \"weapons/plasmax\"\n  AttackSound \"weapons/plasmax\"\n  States\n  {\n  Spawn:\n    PLSE ABCDE 4 bright\n    stop\n  }\n}\n\n////////////////////////////////////////////////////////\n////////////////// CHAINSAW ////////////////////////////\n////////////////////////////////////////////////////////\nactor PowerChainsaw : Weapon\n{\n  obituary \"%o was mowed over by %k's chainsaw.\"\n  radius 20\n  height 16\n  inventory.pickupmessage \"A chainsaw!  Find some meat!\"\n  weapon.selectionorder 2200\n  weapon.upsound \"weapons/sawup\"\n  weapon.readysound \"weapons/sawidle\"\n  Weapon.SisterWeapon \"DEChainsaw\"\n  Tag \"Chainsaw\"\n  +POWERED_UP\n  +WEAPON.MELEEWEAPON\n  states\n  {\n  Ready:\n    SAWG CD 4 A_WeaponReady\n    loop\n  Deselect:\n    SAWG C 0 A_Lower\n    SAWG C 1 A_Lower\n    loop\n  Select:\n    SAWG C 0 A_Raise\n    SAWG C 1 A_Raise\n    loop\n  Fire:\n    SAWG AABBAABBAABB 1 A_Saw\n    SAWG CCDDCCDDCCDD 1 A_Saw\n    SAWG B 0 A_ReFire\n    goto Ready\n  Spawn:\n    CSAW A -1\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// DEVASTATOR ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerDevastator : Weapon\n{\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the Devastator, Hell yeah!\"\n   Obituary \"%o was desintergrated by %k's Devastator.\"\n   Weapon.AmmoType \"Cell\"\n   Weapon.AmmoGive 60\n   Weapon.AmmoUse 60\n   Weapon.SisterWeapon \"Devastator\"\n   Tag \"Devastator\"\n   +POWERED_UP\n   Damagetype \"Normal\"\n   +WEAPON.EXPLOSIVE\n   +WEAPON.BFG\n   +WEAPON.NOAUTOFIRE\n   States\n   {\n   Spawn:\n      WDEV A -1\n      Loop\n   Ready:\n      DEVG A 2 A_WeaponReady\n      Loop\n   Deselect:\n      DEVG A 0 A_Lower\n      DEVG A 1 A_Lower\n      Loop\n   Select:\n      DEVG A 0 A_Raise\n      DEVG A 1 A_Raise\n      Loop\n   Fire:\n      DEVG B 5 A_PlayWeaponSound(\"weapons/devchr\")\n      DEVG CDEF 5 Bright\n      DEVG A 0 A_Refire\n      DEVG J 2 Bright A_GunFlash\n      DEVG J 1 Bright A_Playsound(\"weapons/devfir\")\n      DEVG K 5 Bright A_FireCustomMissile (\"DevastatorBall\",0,1,0,0)\n      DEVG L 3 Bright\n      Goto Ready\n   Hold:\n      DEVG G 1 Bright A_PlayWeaponSound(\"weapons/devfch\")\n      DEVG G 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG H 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG G 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG H 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 2 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 0 A_Refire\n      DEVG J 2 Bright A_GunFlash\n      DEVG J 1 Bright A_Playsound(\"weapons/devfir\")\n      DEVG K 5 Bright A_FireCustomMissile (\"DevastatorBall\",0,1,0,0)\n      DEVG L 3 Bright\n      Goto Ready\n   Flash:\n      TNT1 A 2 A_Light1\n      TNT1 A 5 A_Light2\n      TNT1 A 4 A_Light1\n      TNT1 A 2 A_Light0\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// RAILGUN    ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerRailGun : Weapon\n{\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the railgun!\"\n   Obituary \"%o was railed by %k.\"\n   Damagetype \"Normal\"\n   Tag \"Railgun\"\n   Weapon.AmmoType \"Cell\"\n   Weapon.AmmoGive 40\n   Weapon.AmmoUse 5\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      WRAL A -1\n      Loop\n   Ready:\n   \t  RAIG A 2 A_WeaponReady\n\t  Loop\n\t  RSCP A 2 Bright A_WeaponReady(1)\n\t  Goto Ready+1\n   Deselect:\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 0 A_ZoomFactor(1)\n      RAIG A 0 A_Lower\n      RAIG A 1 A_Lower\n      Loop\n   Select:\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 0 A_ZoomFactor(1,ZOOM_INSTANT)\n      RAIG A 0 A_Raise\n      RAIG A 1 A_Raise\n      Loop\n   Fire:\n      RAIG A 0 A_JumpIfInventory(\"RailgunScope\",1,\"ZoomFire\")\n      RAIG A 0 A_JumpIfInventory(\"RailCharge\",2,22)\n      RAIG A 0 A_JumpIfInventory(\"RailCharge\",1,10)\n      RAIG B 6 A_PlayWeaponSound(\"weapons/railch\")\n      RAIG B 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RAIG B 0 A_Refire\n      RAIG E 3 Bright A_GunFlash\n      RAIG E 1 A_PlayWeaponSound(\"weapons/railf1\")\n      RAIG F 6 Bright A_RailAttack(200,0,1,\"FF 00 00\",\"FF FF FF\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n      RAIG C 6 Bright\n      RAIG C 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RAIG C 0 A_Refire\n      RAIG G 3 Bright A_GunFlash\n      RAIG G 1 A_PlayWeaponSound(\"weapons/railf2\")\n      RAIG H 0 Bright A_RailAttack(0,0,1,\"FF FF 00\",\"FF FF FF\")\n      RAIG H 6 Bright A_RailAttack(400,0,1,\"FF FF 00\",\"FF 45 00\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n      RAIG D 6 Bright\n      RAIG D 6 Bright\n      RAIG D 0 A_Refire\n      RAIG I 3 Bright A_GunFlash\n      RAIG I 1 A_PlayWeaponSound(\"weapons/railf3\")\n      RAIG J 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"00 45 FF\")\n      RAIG J 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"FF FF FF\")\n      RAIG J 4 Bright A_RailAttack(600,0,1,\"00 00 FF\",\"00 FF 00\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n   ZoomFire:\n\t  RSCP A 0 Bright A_JumpIfInventory(\"RailCharge\",2,19)\n      RSCP A 0 Bright A_JumpIfInventory(\"RailCharge\",1,9)\n      RSCP A 6 Bright A_PlayWeaponSound(\"weapons/railch\")\n      RSCP A 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf1\")\n      RSCP A 6 Bright A_RailAttack(200,0,1,\"FF 00 00\",\"FF FF FF\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n      RSCP A 6 Bright\n      RSCP A 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf2\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"FF FF 00\",\"FF FF FF\")\n      RSCP A 6 Bright A_RailAttack(400,0,1,\"FF FF 00\",\"FF 45 00\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n      RSCP A 12 Bright\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf3\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"00 45 FF\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"FF FF FF\")\n      RSCP A 4 Bright A_RailAttack(600,0,1,\"00 00 FF\",\"00 FF 00\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n   AltFire:\n      RSCP A 0 Bright A_JumpIfInventory(\"RailgunScope\",1,3)\n\t  RSCP A 0 Bright A_GiveInventory(\"RailgunScope\",1)\n\t  RSCP A 8 Bright A_ZoomFactor(3)\n\t  Goto Ready+1\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 8 A_ZoomFactor(1)\n\t  Goto Ready\n   Flash:\n      TNT1 A 4 A_Light1\n      TNT1 A 4 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 0 A_Light0\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// HOMING ROCKET LAUNCHER ///////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerHRL : Weapon\n{\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the Homing-Rocket Launcher!\"\n   Obituary \"%o couldn't dodge %k's homing rockets.\"\n   Weapon.AmmoType \"RocketAmmo\"\n   Weapon.AmmoGive 4\n   Weapon.AmmoUse 2\n   Weapon.SisterWeapon \"HRL\"\n   Tag \"Homing Rocket Launcher\"\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      WHRL A -1\n      Loop\n   Ready:\n      HRLG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      HRLG A 0 A_Lower\n      HRLG A 1 A_Lower\n      Loop\n   Select:\n      HRLG A 0 A_Raise\n      HRLG A 1 A_Raise\n      Loop\n   Fire:\n      HRLG A 4\n      HRLG C 0 Bright A_GunFlash\n      HRLG C 5 Bright\n      HRLG D 0 Bright A_FireCustomMissile (\"PowerHomRocket1\",4,1,0,4.5)\n      HRLG D 0 Bright A_FireCustomMissile (\"PowerHomRocket1\",-4,0,0,4.5)\n      HRLG D 0 Bright A_FireCustomMissile (\"PowerHomRocket1\",3.7,0,3,0)\n      HRLG D 0 Bright A_FireCustomMissile (\"PowerHomRocket1\",-4.3,0,3,0)\n      HRLG D 0 Bright A_FireCustomMissile (\"PowerHomRocket1\",4.3,0,-3,0)\n      HRLG D 6 Bright A_FireCustomMissile (\"PowerHomRocket1\",-3.7,0,-3,0)\n      HRLG E 5 Bright\n      HRLG F 4 Bright\n      HRLG B 3 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 5 A_Light1\n      TNT1 A 6 A_Light2\n      TNT1 A 5 A_Light1\n      TNT1 A 0 A_Light0\n      stop\n   }\n}\n\nACTOR PowerHomRocket1\n{\n   Radius 4\n   Height 5.5\n   Scale 0.5\n   Speed 35\n   Damage 8\n   PROJECTILE\n   DeathSound \"weapons/hrlexp\"\n   ExplosionDamage 64\n   ExplosionRadius 96\n   Damagetype \"Normal\"\n   +SeekerMissile\n   +Rockettrail\n   +THRUGHOST\n   SeeSound \"weapons/hrlfir\"\n   States\n   {\n   Spawn:\n      MISL A 1 Bright A_SeekerMissile (45,35)\n      MISL A 1 Bright A_SeekerMissile (30,25)\n      goto Spawn+1\n   Death:\n      MISL B 0 Bright A_SetTranslucent (0.67,1)\n      MISL C 8 Bright A_Explode\n      MISL D 5 Bright\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// PYRO CANNON //////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerPyroCannon : Weapon\n{\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the PyroCannon ProtoType!\"\n   Obituary \"%o was incinerated by %k's Pyrocannon.\"\n   Tag \"Pyro Cannon\"\n   Weapon.AmmoType \"Gas\"\n   Weapon.AmmoGive 48\n   Weapon.AmmoUse 16\n   Weapon.SisterWeapon \"PyroCannon\"\n   +WEAPON.EXPLOSIVE\n   +WEAPON.BFG\n   +WEAPON.DONTBOB\n   +WEAPON.STAFF2_KICKBACK\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      WPYR A -1\n      Loop\n   Ready:\n      PYRG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      PYRG A 0 A_Lower\n      PYRG A 1 A_Lower\n      Loop\n   Select:\n      PYRG A 0 A_Raise\n      PYRG A 1 A_Raise\n      Loop\n   Fire:\n      PYRG A 5\n      PYRG B 8 Bright A_GunFlash\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG DEFG 5 Bright\n      PYRG A 5 A_Refire\n      Goto Ready\n   Hold:\n      PYRG A 5\n      PYRG B 8 Bright A_GunFlash\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG C 3 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG DEFG 5 Bright\n      PYRG A 5 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 8 A_Light1\n      TNT1 A 10 A_Light2\n      TNT1 A 15 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// AUTO SHOTGUN /////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor PowerAutoShotgun : Weapon\n{\n  +AMMO_OPTIONAL\n  obituary \"%o got blasted away by %k's autoshotgun.\"\n  radius 20\n  height 16\n  Inventory.Pickupmessage \"You got the automatic shotgun!\"\n  Tag \"Autoshotgun\"\n  weapon.selectionorder 700\n  Weapon.AmmoType1 \"Shell\"\n  Weapon.AmmoType2 \"ASGClip\"\n  Weapon.AmmoGive1 16\n  Weapon.AmmoGive2 16\n  Weapon.AmmoUse 1\n  Weapon.SisterWeapon \"AutoShotgun\"\n  +POWERED_UP\n  AttackSound \"weapons/asgfir\"\n  Damagetype \"Normal\"\n  states\n  {\n  Spawn:\n    WASG A -1\n    stop\n  Ready:\n\tASGG A 0 A_JumpIfInventory(\"ASGClip\",20,2)\n\tASGG A 0 A_JumpIfInventory(\"Shell\",1,2)\n\tASGG A 1 A_WeaponReady(8)\n\tLoop\n    ASGG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    ASGG A 0 A_Lower\n    ASGG A 1 A_Lower\n    loop\n  Select:\n    ASGG A 0 A_Raise\n    ASGG A 1 A_Raise\n    loop\n  Fire:\n  Hold:\n    ASGG A 0 A_JumpIfInventory(\"ASGClip\",1,29)\n    ASGG A 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG A 2 A_PlayWeaponSound(\"Weapons/asgout\")\n    Goto Ready\n    ASGG BCDEF 3\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgout\")\n    ASGG HIJ 3\n    ASGG k 15\n    ASGG JIH 3\n    ASGG G 0 A_TakeInventory(\"Shell\",1)\n    ASGG G 0 A_GiveInventory(\"ASGClip\",1)\n    ASGG G 0 A_JumpIfInventory(\"ASGClip\",20,2)\n    ASGG G 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG G 0\n    Goto Hold+22\n    ASGG G 0\n    Goto Hold+16\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgin\")\n    ASGG FEDCB 3\n    ASGG A 8 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    goto Ready\n    ASGG A 1\n    ASGG L 0 A_GunFlash\n    ASGG A 0 A_TakeInventory(\"ASGClip\",1)\n    ASGG L 2 A_FireBullets(5,4,7,5,\"BulletPuff\",0)\n    ASGG M 3\n    ASGG N 2\n    ASGG A 4 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    ASGG A 0\n    ASGG A 0 A_ReFire\n    goto Ready\n  AltFire:\n    ASGG BCDEF 3\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgout\")\n    ASGG HIJ 3\n    ASGG K 15\n    ASGG JIH 3\n    ASGG G 0 A_TakeInventory(\"Shell\",1)\n    ASGG G 0 A_GiveInventory(\"ASGClip\",1)\n    ASGG G 0 A_JumpIfInventory(\"ASGClip\",20,2)\n    ASGG G 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG G 0\n    Goto AltFire+19\n    ASGG G 0\n    Goto AltFire+13\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgin\")\n    ASGG FEDCB 3\n    ASGG A 8 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    Goto Ready\n  Flash:\n    TNT1 A 4 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// REPEATER /////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerRepeater : Weapon\n{\n   spawnid 236\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the plasma repeater!\"\n   Obituary \"%o was disintegrated by %k's repeater.\"\n   Weapon.AmmoType1 \"Cell\"\n   Weapon.AmmoGive 20\n   Weapon.AmmoUse 1\n   Weapon.SisterWeapon \"Repeater\"\n   +POWERED_UP\n   +WEAPON.EXPLOSIVE\n   AttackSound \"weapons/repfir\"\n   Tag \"Plasma Repeater\"\n   States\n   {\n   Spawn:\n      WREP A -1\n      Loop\n   Ready:\n      REPG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      REPG A 0 A_Lower\n      REPG A 1 A_Lower\n      Loop\n   Select:\n      REPG A 0 A_Raise\n      REPG A 1 A_Raise\n      Loop\n   Fire:\n      REPG A 4 A_PlaySound(\"weapons/repidl\")\n      REPG BCD 4\n      REPG ABCD 3\n      REPG ABCD 2\n      REPG E 0 Bright A_Gunflash\n      REPG E 1 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG F 1 Bright\n      REPG G 1 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG H 1 Bright\n      REPG A 0 A_Refire\n      REPG A 2 A_PlaySound(\"weapons/repstp\")\n      REPG BCD 2\n      REPG ABCD 3\n      REPG ABCD 4\n      Goto Ready\n   Hold:\n      REPG E 0 Bright A_Gunflash\n      REPG E 1 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG F 1 Bright\n      REPG G 1 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG H 1 Bright\n      REPG A 0 A_Refire\n      REPG A 2 A_PlaySound(\"weapons/repstp\")\n      REPG BCD 2\n      REPG ABCD 3\n      REPG ABCD 4\n      REPG ABCD 5\n      Goto Ready\n   Flash:\n      TNT1 A 2 A_Light2\n      TNT1 A 2 A_Light1\n      TNT1 A 0 A_Light0\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// MINE LAYER ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerLandMineLayer : Weapon\n{\n   Inventory.PickupMessage \"You got some Landmines!\"\n   Inventory.PickupSound \"misc/w_pkup\"\n   Weapon.AmmoType \"Mines\"\n   Weapon.AmmoGive 5\n   Weapon.AmmoUse 1\n   Weapon.AmmoType2 \"Mines\"\n   Weapon.AmmoUse2 1\n   Weapon.SisterWeapon \"LandMineLayer\"\n   Tag \"Land Mines\"\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      MINE A -1\n      Loop\n   Ready:\n      LAYR A 1 A_WeaponReady\n      Loop\n   Deselect:\n      LAYR A 0 A_Lower\n      LAYR A 1 A_Lower\n      Loop\n   Select:\n      LAYR A 0 A_Raise\n      LAYR A 1 A_Raise\n      Loop\n   AltFire:\n      LAYR B 8 A_PlaySound(\"weapons/minebeep\")\n      LAYD ABCDE 1\n      TNT1 A 10\n      LAYT A 1 A_PlaySound(\"weapons/minethrow\")\n      LAYT BCDEFGH 1\n      LAYT I 1 A_FireCustomMissile(\"PowerLandmine2\",0,1,0,8)\n      LAYT I 1 A_FireCustomMissile(\"PowerLandmine2\",-7,0,0,8)\n      LAYT I 1 A_FireCustomMissile(\"PowerLandmine2\",7,0,0,8)\n      LAYT JKLMNOPQR 1\n      TNT1 A 10\n      LAYU ABCDE 1\n      LAYR A 6\n      Goto Ready\n   Fire:\n      LAYR B 8 A_PlaySound(\"weapons/minebeep\")\n      LAYD ABCDE 1\n      TNT1 A 10\n      TNT1 A 19 A_FireCustomMissile(\"PowerLandmine3\",0,1,0,0)\n      LAYU ABCDE 1\n      LAYR A 6\n      Goto Ready\n   }\n}\n\nACTOR PowerLandmineA\n{\n   Radius 8 //was 5\n   Height 5\n   Mass 1000000\n   Health 20\n   Damage 20\n   SeeSound \"weapons/tink\"\n   ExplosionDamage 768\n   ExplosionRadius 240\n   DONTHURTSHOOTER\n   Speed 0\n   +NOBLOOD\n   -SHOOTABLE\n   +MISSILE\n   +THRUGHOST\n   States\n   {\n   Spawn:\n      MINE A 0 A_Gravity\n      MINE AB 5\n      Loop\n   Death:\n      MISL B 0 A_PlaySound(\"weapons/mineexpl\")\n      MISL B 8 A_Explode\n      MISL C 6\n      MISL D 4\n      Stop\n   }\n}\n\nACTOR PowerLandmineB : PowerLandmineA\n{\n   ExplosionDamage 256\n   ExplosionRadius 160\n}\n\nACTOR PowerLandmine2\n{\n   Radius 8 //was 5\n   Height 5\n   Mass 1000000\n   Health 20\n   Damage 10\n   SeeSound \"weapons/tink\"\n   DONTHURTSHOOTER\n   Speed 15\n   +NOBLOOD\n   -SHOOTABLE\n   +MISSILE\n   +DOOMBOUNCE\n   +THRUGHOST\n   States\n   {\n   Spawn:\n      MINE A 0 A_Gravity\n      MINE AB 5\n      Loop\n   Death:\n      MINE A 0 A_SpawnItem(\"PowerLandmineB\")\n      Stop\n   }\n}\n\nACTOR PowerLandmine3 : PowerLandmine2\n{\n   Speed 2\n   States\n   {\n   Spawn:\n      MINE A 0 A_Gravity\n      MINE AB 5\n      Loop\n   Death:\n      MINE A 0 A_SpawnItem(\"PowerLandmineA\")\n      Stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// STUNNER RIFLE ////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerStunnerRifle : PlasmaRifle\n{\n   Weapon.AmmoUse 5\n   Weapon.SisterWeapon \"StunnerRifle\"\n   Tag \"Stunner Rifle\"\n   +POWERED_UP\n   States\n   {\n   Spawn:\n      STPP A -1\n      Loop\n   Ready:\n      STPO ABC 3 Bright A_WeaponReady\n      Loop\n   Deselect:\n      STPO E 0 A_Lower\n      STPO E 1 A_Lower\n      Loop\n   Select:\n      STPO E 0 A_Raise\n      STPO E 1 A_Raise\n      Loop\n   Fire:\n      STPO F 0 Bright A_GunFlash\n      STPO F 3 Bright A_FireCustomMissile(\"PowerStunnerBall\",0,1,0,0)\n      STPO GH 3 Bright\n      STPO D 16\n      STPO D 6 A_ReFire\n      Goto Ready\n   Flash:\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nactor PowerStunnerBall\n{\n  spawnid 10\n  radius 6\n  height 8\n  speed 20\n  scale 0.45\n  damagetype Stunner\n  damage 1\n  renderstyle Add\n  seesound \"weapons/stunner/shot\"\n  deathsound \"weapons/stunner/hit\"\n  translation \"192:207=250:254\"\n  PROJECTILE\n  +RANDOMIZE\n  +RIPPER\n  +SEEKERMISSILE\n  // [SP] The following flag is being removed for Skulltag compatibility.\n  // +SCREENSEEKER\n  states\n  {\n  Spawn:\n    STPR A 0 A_BishopMissileWeave\n\tSTPR A 0 A_Tracer2\n\tSTPR A 0 A_SpawnItemEx(\"StunnerBallFX\",0,0,0,0,0,0,0,128)\n\tSTPR A 1 Bright\n    loop\n  Death:\n    PLSE ABCDE 4 bright\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// FLAMER ///////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PowerFlamer : Weapon\n{\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the flamethrower! Time for a BBQ!\"\n   Obituary \"%o was BBQed by %k's flamethrower.\"\n   Weapon.AmmoType \"Gas\"\n   Weapon.AmmoGive 48\n   Weapon.AmmoUse 1\n   Weapon.SisterWeapon \"Flamer\"\n   Tag \"Flamethrower\"\n   +POWERED_UP\n   +WEAPON.EXPLOSIVE\n   States\n   {\n   Spawn:\n      WFLM A -1\n      Loop\n   Ready:\n      FLMG A 3 A_WeaponReady\n      Loop\n   Deselect:\n      FLMG A 0 A_Lower\n      FLMG A 1 A_Lower\n      Loop\n   Select:\n      FLMG A 0 A_Raise\n      FLMG A 1 A_Raise\n      Loop\n   Fire:\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 2 Bright A_Refire\n      Goto Ready\n   Hold:\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 0 Bright A_GunFlash\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,0,random(-4,4),0)\n      FLMG A 1 Bright A_FireCustomMissile(\"PowerFTFire\",0,1,random(-4,4),0)\n      FLMG A 2 Bright A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 2 A_Light1\n      TNT1 A 2 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nACTOR PowerFTFire\n{\n   Radius 2\n   Height 4\n   Speed 16\n   Damage 2\n   Translation Ice\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Ice\n   ALPHA 0.67\n   Scale 0.67\n   SeeSound \"weapons/flamer\"\n   DeathSound \"weapons/scorch\"\n   DONTHURTSHOOTER\n   +THRUGHOST\n   States\n   {\n   Spawn:\n      TNT1 A 2 Bright\n      STEM ABCD 2 Bright A_Explode(7,8,0)\n      STEM D 0 Bright A_Lowgravity\n      STEM EFG 2 Bright A_Explode(8,16,0)\n      STEM HIJ 2 Bright A_Explode(7,32,0)\n      STEM KJI 2 Bright A_Explode(8,64,0)\n      STEM HGFEDCBA 1 Bright\n      stop\n   Death:\n      STEM J 1 Bright A_Explode(7,32,0)\n      STEM I 1 Bright A_Explode(8,64,0)\n      STEM HGECA 1 Bright\n      stop\n   }\n}"
      },
      {
        "source": "pk3",
        "name": "actors/weapons/dec_weapons.txt",
        "contents": "Actor StrongholdPlayer : DoomPlayer replaces DoomPlayer\n{\n\tDamageFactor \"MarineAlly\", 0\n\tPlayer.StartItem \"LifeItem\", 5   // starting lives\n\tPlayer.StartItem \"CoinItem\", 1200 // starting money\n\tPlayer.StartItem \"DEPistol\", 1\n\tPlayer.StartItem \"DEFist\"\n\tPlayer.StartItem \"Clip\", 50\n\t+GHOST\t\t\t// Fixing the Coop-Mine Problem\n\t-TELESTOMP\t\t// No more telefrags in coop games\n}\n\n////////////////////////////////////////////////////////\n////////////////// CHAINSAW ////////////////////////////\n////////////////////////////////////////////////////////\nactor DEChainsaw : Weapon replaces Chainsaw\n{\n  spawnid 32\n  obituary \"%o was mowed over by %k's chainsaw.\"\n  radius 20\n  height 16\n  inventory.pickupmessage \"A chainsaw! Find some meat!\"\n  weapon.selectionorder 2200\n  weapon.upsound \"weapons/sawup\"\n  weapon.readysound \"weapons/sawidle\"\n  Weapon.SisterWeapon \"PowerChainsaw\"\n  Decal BulletChip\n  +WEAPON.MELEEWEAPON\n  +GHOST\n  states\n  {\n  Ready:\n    SAWG CD 4 A_WeaponReady\n    loop\n  Deselect:\n    SAWG C 0 A_Lower\n    SAWG C 1 A_Lower\n    loop\n  Select:\n    SAWG C 0 A_Raise\n    SAWG C 1 A_Raise\n    loop\n  Fire:\n    SAWG AABB 2 A_Saw\n    SAWG B 0 A_ReFire\n    goto Ready\n  Spawn:\n    CSAW A -1\n    stop\n  }\n}\n\n////////////////////////////////////////////////////////\n/////////////////////////// FIST ///////////////////////\n////////////////////////////////////////////////////////\nactor DEFist : Weapon replaces Fist\n{\n  obituary \"%o chewed on %k's fist.\"\n  weapon.selectionorder 3700\n  weapon.kickback 100\n  Weapon.SisterWeapon \"PowerFist\"\n  +WEAPON.WIMPY_WEAPON\n  +WEAPON.MELEEWEAPON\n  Tag \"Fist\"\n  states\n  {\n  Ready:\n    PUNG A 1 A_WeaponReady\n    loop\n  Deselect:\n    PUNG A 0 A_Lower\n    PUNG A 1 A_Lower\n    loop\n  Select:\n    PUNG A 0 A_Raise\n    PUNG A 1 A_Raise\n    loop\n  Fire:\n    PUNG B 4\n    PUNG C 4 A_Punch\n    PUNG D 5\n    PUNG C 4\n    PUNG B 5 A_ReFire\n    goto Ready\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// DEVASTATOR ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nActor DevPuff\n{\n   Radius 3\n   Height 3\n   RENDERSTYLE ADD\n   ALPHA 0.75\n   +ALWAYSPUFF\n   +PUFFONACTORS\n   +NOGRAVITY\n   DeathSound \"weapons/buzz\"\n   States\n   {\n   Spawn:\n      DLIT JKLJKLJKL 3 Bright\n      stop\n   Crash:\n      TNT1 A 1 Bright\n      stop\n   }\n}\n\nACTOR Devastator : Weapon 20101\n{\n//$Category Stronghold_Weapons\n   spawnid 242\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the devastator! Hell yeah!\"\n   Obituary \"%o was desintergrated by %k's Devastator.\"\n   Weapon.AmmoType \"Cell\"\n   Weapon.AmmoGive 60\n   Weapon.AmmoUse 60\n   Weapon.SisterWeapon \"PowerDevastator\"\n   Damagetype \"Normal\"\n   Tag \"Devastator\"\n   +WEAPON.EXPLOSIVE\n   +WEAPON.BFG\n   +WEAPON.NOAUTOFIRE\n   States\n   {\n   Spawn:\n      WDEV A -1\n      Loop\n   Ready:\n      DEVG A 2 A_WeaponReady\n      Loop\n   Deselect:\n      DEVG A 0 A_Lower\n      DEVG A 1 A_Lower\n      Loop\n   Select:\n      DEVG A 0 A_Raise\n      DEVG A 1 A_Raise\n      Loop\n   Fire:\n      DEVG B 10 A_PlayWeaponSound(\"weapons/devchr\")\n      DEVG CDEF 10 Bright\n      DEVG A 0 A_Refire\n      DEVG J 4 Bright A_GunFlash\n      DEVG J 1 Bright A_Playsound(\"weapons/devfir\")\n      DEVG K 10 Bright A_FireCustomMissile (\"DevastatorBall\",0,1,0,0)\n      DEVG L 7 Bright\n      Goto Ready\n   Hold:\n      DEVG G 1 Bright A_PlayWeaponSound(\"weapons/devfch\")\n      DEVG G 3 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG H 4 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 4 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG G 4 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG H 4 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 4 Bright A_FireBullets(4,4,2,6,\"DevPuff\",0,64)\n      DEVG I 0 A_Refire\n      DEVG J 4 Bright A_GunFlash\n      DEVG J 1 Bright A_Playsound(\"weapons/devfir\")\n      DEVG K 10 Bright A_FireCustomMissile (\"DevastatorBall\",0,1,0,0)\n      DEVG L 7 Bright\n      Goto Ready\n   Flash:\n      TNT1 A 5 A_Light1\n      TNT1 A 10 A_Light2\n      TNT1 A 7 A_Light1\n      TNT1 A 5 A_Light0\n      stop\n   }\n}\n\nACTOR DevastatorBall\n{\n   Radius 12\n   Height 8\n   Speed 30\n   Damage 256\n   PROJECTILE\n   ExplosionRadius 256\n   ExplosionDamage 320\n   RENDERSTYLE ADD\n   ALPHA 0.90\n   Damagetype \"Normal\"\n   +THRUGHOST\n   DeathSound \"weapons/devexp\"\n   Decal DevastatorLightning\n   States\n   {\n   Spawn:\n      DBAL AB 4 Bright\n      DBAL A 4 Bright A_Explode (128,128,1)\n      DBAL A 0 Bright A_Jump (160,3)\n      DBAL AAA 0 Bright A_CustomMissile(\"LiteShot\",0,0,Random(0,360))\n      DBAL B 4 Bright A_Explode (128,128,1)\n      DBAL B 0 Bright A_Jump (160,3)\n      DBAL BBB 0 Bright A_CustomMissile(\"LiteShot\",0,0,Random(0,360))\n      Goto Spawn+2\n   Death:\n      DBAL C 5 Bright\n      DBAL D 5 Bright A_Explode\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,18,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,36,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,54,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,72,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,90,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,108,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,126,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,144,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,144,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,162,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,180,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,196,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,216,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,234,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,252,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,270,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,288,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,306,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,324,2)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,342,2)\n      DBAL EFG 5 Bright A_Explode\n      DBAL HI 3 Bright\n      stop\n   }\n}\n\n/* ACTOR DevastatorBall\n{\n   Radius 12\n   Height 8\n   Speed 30\n   Damage 100\n   PROJECTILE\n   ExplosionRadius 256\n   ExplosionDamage 360\n   RENDERSTYLE ADD\n   ALPHA 0.90\n   Damagetype lightning\n   +THRUGHOST\n   +FORCERADIUSDMG\n   +FORCEXYBILLBOARD\n   DeathSound \"weapons/devexp\"\n   States\n   {\n   Spawn:\n      DBAL AB 4 Bright\n      DBAL A 4 Bright A_Explode (128,128,0)\n      DBAL A 0 Bright\n      DBAL AAA 0 Bright A_SpawnItem(\"DevShooter\")\n      DBAL B 4 Bright A_Explode (128,128,0)\n      DBAL B 0 Bright\n      DBAL BBB 0 Bright A_SpawnItem(\"DevShooter\")\n      Goto Spawn+2\n   Death:\n      DBAL C 5 Bright\n      DBAL D 5 Bright A_Explode\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,18,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,36,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,54,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,72,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,90,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,108,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,126,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,144,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,144,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,162,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,180,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,196,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,216,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,234,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,252,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,270,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,288,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,306,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,324,6)\n      DBAL D 0 Bright A_CustomMissile(\"DevastatorBall2\",0,0,342,6)\n      DBAL EFG 5 Bright A_Explode\n      DBAL HI 3 Bright\n      stop\n   }\n} */\n\nACTOR DevastatorBall2\n{\n   Radius 8\n   Height 8\n   Speed 10\n   Damage 10\n   PROJECTILE\n   RENDERSTYLE ADD\n   ALPHA 0.90\n   Damagetype lightning\n   Decal DoomImpScorch\n   +THRUGHOST\n   +FORCEXYBILLBOARD\n   SeeSound \"weapons/devbal\"\n   DeathSound \"weapons/devex2\"\n   States\n   {\n   Spawn:\n      DBA2 AB 4 Bright\n      Loop\n   Death:\n      DBA2 C 1 Bright\n      DBA2 C 3 Bright A_Explode(64,64,0)\n      DBA2 DE 4 Bright\n      Stop\n   }\n}\n\nactor DevShooter\n{\n   Radius 8\n   Height 8\n   MONSTER\n   Speed 0\n   +FRIENDLY\n   +NOGRAVITY\n   +NOCLIP\n   States\n   {\n   Spawn:\n      TNT1 A 0 A_Look\n   See:\n      TNT1 A 0 A_Chase\n   Missile:\n      TNT1 A 0 A_FaceTarget\n      TNT1 A 0 A_CustomMissile(\"LiteShot\",0,0,0,0)\n      Stop\n    }\n}\n\nACTOR LiteShot\n{\n   Radius 8\n   Height 12\n   Speed 32\n   Damage 10\n   PROJECTILE\n   RENDERSTYLE ADD\n   ALPHA 0.85\n   Damagetype lightning\n   +THRUGHOST\n   +RIPPER\n   +FORCEXYBILLBOARD\n   SeeSound \"weapons/devlit\"\n   DeathSound \"weapons/devzap\"\n   States\n   {\n   Spawn:\n      DLIT AAABBBCCC 1 Bright A_SpawnItemEx(\"LiteTrail\",0,0,0,0,0,0,0,0,128)\n      Loop\n   Death:\n      DLIT DEFGHIJKLMNO 1 Bright\n      Stop\n   }\n}\n\nACTOR LiteTrail\n{\n   Radius 1\n   Height 1\n   PROJECTILE\n   RENDERSTYLE ADD\n   ALPHA 0.67\n   +FORCEXYBILLBOARD\n   States\n   {\n   Spawn:\n      DLIT ABC 3 Bright\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// RAILGUN    ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR RailGun : Weapon 20102\n{\n//$Category Stronghold_Weapons\n   spawnid 241\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the railgun!\"\n   Obituary \"%o was railed by %k.\"\n   Damagetype \"Normal\"\n   Weapon.AmmoType \"Cell\"\n   Weapon.AmmoGive 40\n   Weapon.AmmoUse 5\n   Decal RailScorch\n   Tag \"Railgun\"\n   States\n   {\n   Spawn:\n      WRAL A -1\n      Loop\n   Ready:\n\t  RAIG A 2 A_WeaponReady\n\t  Loop\n\t  RSCP A 2 Bright A_WeaponReady(1)\n\t  Goto Ready+1\n   Deselect:\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 0 A_ZoomFactor(1)\n      RAIG A 0 A_Lower\n      RAIG A 1 A_Lower\n      Loop\n   Select:\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 0 A_ZoomFactor(1,ZOOM_INSTANT)\n      RAIG A 0 A_Raise\n      RAIG A 1 A_Raise\n      Loop\n   Fire:\n      RAIG A 0 A_JumpIfInventory(\"RailgunScope\",1,\"ZoomFire\")\n      RAIG A 0 A_JumpIfInventory(\"RailCharge\",2,22)\n      RAIG A 0 A_JumpIfInventory(\"RailCharge\",1,10)\n      RAIG B 6 A_PlayWeaponSound(\"weapons/railch\")\n      RAIG B 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RAIG B 0 A_Refire\n      RAIG E 3 Bright A_GunFlash\n      RAIG E 1 A_PlayWeaponSound(\"weapons/railf1\")\n      RAIG F 6 Bright A_RailAttack(100,0,1,\"FF 00 00\",\"FF FF FF\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n      RAIG C 6 Bright\n      RAIG C 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RAIG C 0 A_Refire\n      RAIG G 3 Bright A_GunFlash\n      RAIG G 1 A_PlayWeaponSound(\"weapons/railf2\")\n      RAIG H 0 Bright A_RailAttack(0,0,1,\"FF FF 00\",\"FF FF FF\")\n      RAIG H 6 Bright A_RailAttack(200,0,1,\"FF FF 00\",\"FF 45 00\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n      RAIG D 6 Bright\n      RAIG D 6 Bright\n      RAIG D 0 A_Refire\n      RAIG I 3 Bright A_GunFlash\n      RAIG I 1 A_PlayWeaponSound(\"weapons/railf3\")\n      RAIG J 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"00 45 FF\")\n      RAIG J 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"FF FF FF\")\n      RAIG J 4 Bright A_RailAttack(300,0,1,\"00 00 FF\",\"00 FF 00\")\n      RAIG A 4\n      RAIG K 15\n      RAIG A 0 A_TakeInventory(\"RailCharge\",3)\n      Goto Ready\n   ZoomFire:\n\t  RSCP A 0 Bright A_JumpIfInventory(\"RailCharge\",2,19)\n      RSCP A 0 Bright A_JumpIfInventory(\"RailCharge\",1,9)\n      RSCP A 6 Bright A_PlayWeaponSound(\"weapons/railch\")\n      RSCP A 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf1\")\n      RSCP A 6 Bright A_RailAttack(100,0,1,\"FF 00 00\",\"FF FF FF\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n      RSCP A 6 Bright\n      RSCP A 6 Bright A_GiveInventory(\"RailCharge\",1)\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf2\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"FF FF 00\",\"FF FF FF\")\n      RSCP A 6 Bright A_RailAttack(200,0,1,\"FF FF 00\",\"FF 45 00\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n      RSCP A 12 Bright\n      RSCP A 0 Bright A_Refire\n      RSCP A 3 Bright A_GunFlash\n      RSCP A 1 Bright A_PlayWeaponSound(\"weapons/railf3\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"00 45 FF\")\n      RSCP A 0 Bright A_RailAttack(0,0,1,\"00 00 FF\",\"FF FF FF\")\n      RSCP A 4 Bright A_RailAttack(300,0,1,\"00 00 FF\",\"00 FF 00\")\n      RSCP A 19 Bright\n      RSCP A 0 Bright A_TakeInventory(\"RailCharge\",3)\n      Goto Ready+1\n   AltFire:\n      RSCP A 0 Bright A_JumpIfInventory(\"RailgunScope\",1,3)\n\t  RSCP A 0 Bright A_GiveInventory(\"RailgunScope\",1)\n\t  RSCP A 8 Bright A_ZoomFactor(3)\n\t  Goto Ready+1\n\t  RAIG A 0 A_TakeInventory(\"RailgunScope\",1)\n\t  RAIG A 8 A_ZoomFactor(1)\n\t  Goto Ready\n   Flash:\n      TNT1 A 4 A_Light1\n      TNT1 A 4 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 0 A_Light0\n      Stop\n   }\n}\n\nACTOR RailCharge : Ammo\n{\n   Inventory.MaxAmount 3\n   Ammo.BackpackAmount 0\n   Ammo.BackpackMaxAmount 3\n}\n\nACTOR RailgunScope : Ammo\n{\n   Inventory.MaxAmount 1\n   Ammo.BackpackAmount 0\n   Ammo.BackpackMaxAmount 1\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// HOMING ROCKET LAUNCHER ///////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR HRL : Weapon 20103\n{\n//$Category Stronghold_Weapons\n   spawnid 240\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the homing rocket launcher!\"\n   Obituary \"%o couldn't dodge %k's homing rockets.\"\n   Weapon.AmmoType \"RocketAmmo\"\n   Weapon.AmmoGive 4\n   Weapon.AmmoUse 1\n   Weapon.SisterWeapon \"PowerHRL\"\n   Tag \"Homing Rocket Launcher\"\n   States\n   {\n   Spawn:\n      WHRL A -1\n      Loop\n   Ready:\n      HRLG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      HRLG A 0 A_Lower\n      HRLG A 1 A_Lower\n      Loop\n   Select:\n      HRLG A 0 A_Raise\n      HRLG A 1 A_Raise\n      Loop\n   Fire:\n      HRLG A 4\n      HRLG C 0 Bright A_GunFlash\n      HRLG C 5 Bright\n      HRLG D 0 Bright A_FireCustomMissile (\"HomRocket1\",-4,1,0,0)\n      HRLG D 6 Bright A_FireCustomMissile (\"HomRocket1\",4,1,0,0)\n      HRLG E 5 Bright\n      HRLG F 4 Bright\n      HRLG B 3 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 5 A_Light1\n      TNT1 A 6 A_Light2\n      TNT1 A 5 A_Light1\n      TNT1 A 0 A_Light0\n      stop\n   }\n}\n\nACTOR HomRocket1\n{\n   Radius 8\n   Height 11\n   Speed 30\n   Damage 15\n   PROJECTILE\n   DeathSound \"weapons/hrlexp\"\n   ExplosionDamage 128\n   ExplosionRadius 128\n   Damagetype \"Normal\"\n   +SeekerMissile\n   +Rockettrail\n   +THRUGHOST\n   SeeSound \"weapons/hrlfir\"\n   Decal Scorch\n   States\n   {\n   Spawn:\n      HMIS A 4 Bright A_SeekerMissile (25,35)\n      HMIS A 4 Bright\n      HMIS A 2 Bright A_SeekerMissile (10,25)\n      HMIS A 2 Bright\n      goto Spawn+2\n   Death:\n      MISL B 0 Bright A_SetTranslucent (0.67,1)\n      MISL C 8 Bright A_Explode\n      MISL D 5 Bright\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// ROCKET LAUNCHER //////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR DERLauncher : RocketLauncher replaces RocketLauncher\n{\n   Weapon.SisterWeapon \"PowerRLauncher\"\n   Tag \"Rocket Launcher\"\n   States\n   {\n   Spawn:\n      LAUN A -1\n      Loop\n   Ready:\n      MISG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      MISG A 0 A_Lower\n      MISG A 1 A_Lower\n      Loop\n   Select:\n      MISG A 0 A_Raise\n      MISG A 1 A_Raise\n      Loop\n   Fire:\n      MISF A 4 Bright A_GunFlash\n      MISF B 5 Bright A_FireCustomMissile(\"Rocket2\",0,1,0,0)\n      MISF CD 5 Bright\n      MISG A 0 A_Refire\n      Goto Ready\n   Hold:\n      MISF A 4 Bright A_GunFlash\n      MISF B 5 Bright A_FireCustomMissile(\"Rocket2\",0,1,0,0)\n      MISF CD 5 Bright\n      MISG A 0 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 4 A_Light1\n      TNT1 A 5 A_Light2\n      TNT1 A 5 A_Light1\n      TNT1 A 5 A_Light0\n      stop\n   }\n}\n\nactor Rocket2 replaces Rocket\n{\n  obituary \"%o rode %k's rocket.\"\n  radius 11\n  height 8\n  speed 20\n  damage 20\n  seesound \"weapons/rocklf\"\n  deathsound \"weapons/rocklx\"\n  Decal Scorch\n  PROJECTILE\n  Damagetype \"Normal\"\n  +RANDOMIZE\n  +ROCKETTRAIL\n  -THRUGHOST\n  states\n  {\n  Spawn:\n    MISL A 1 bright\n    loop\n  Death:\n    MISL B 0 bright A_SetTranslucent (0.67,1)\n    MISL B 8 bright A_Explode\n    MISL C 6 bright\n    MISL D 4 bright\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// PLASMA RIFLE /////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR DEPlasmaRifle : PlasmaRifle replaces PlasmaRifle\n{\n   Weapon.SisterWeapon \"PowerPlasmaRifle\"\n   Tag \"Plasma Rifle\"\n   States\n   {\n   Spawn:\n      PLAS A -1\n      Loop\n   Ready:\n      PLSG ABC 3 Bright A_WeaponReady\n      Loop\n   Deselect:\n      PLSG E 0 A_Lower\n      PLSG E 1 A_Lower\n      Loop\n   Select:\n      PLSG E 0 A_Raise\n      PLSG E 1 A_Raise\n      Loop\n   Fire:\n      PLSG F 0 Bright A_GunFlash\n      PLSG F 1 Bright A_FireCustomMissile(\"PlasmaBall\",0,1,0,0)\n      PLSG G 1 Bright\n      PLSG H 1 Bright\n      PLSG D 20 A_Refire\n      Goto Ready\n   Hold:\n      PLSG F 0 Bright A_GunFlash\n      PLSG F 1 Bright A_FireCustomMissile(\"PlasmaBall\",0,1,0,0)\n      PLSG G 1 Bright\n      PLSG H 1 Bright\n      PLSG D 20 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n///////////////////////////////////////  BFG9000   ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor DEBFG9000 : BFG9000 Replaces BFG9000\n{\n  Weapon.SisterWeapon \"PowerBFG9000\"\n  Tag \"BFG 9000\"\n  States\n  {\n  Spawn:\n    BFUG A -1\n    stop\n  Ready:\n      BFGG ABCD 3 Bright A_WeaponReady\n      loop\n  Deselect:\n      BFGG E 0 A_Lower\n      BFGG E 1 A_Lower\n      loop\n  Select:\n      BFGG E 0 A_Raise\n      BFGG E 1 A_Raise\n      loop\n  Fire:\n      BFGG F 5 Bright A_PlayWeaponSound (\"weapons/bfgf\")\n      BFGG G 5 Bright\n      BFGG H 5 Bright\n      BFGG I 5 Bright\n      BFGG J 4 Bright\n      BFGG K 7 Bright A_GunFlash\n      BFGG L 8 Bright A_FireCustomMissile (\"BFGBall\",0,1,0,0)\n      BFGG M 8 Bright\n      BFGG N 7 Bright\n      BFGG E 20 Bright A_ReFire\n      goto Ready\n  Hold:\n      BFGG F 5 Bright A_PlayWeaponSound (\"weapons/bfgf\")\n      BFGG G 5 Bright\n      BFGG H 5 Bright\n      BFGG I 5 Bright\n      BFGG J 4 Bright\n      BFGG K 7 Bright A_GunFlash\n      BFGG L 8 Bright A_FireCustomMissile (\"BFGBall\",0,1,0,0)\n      BFGG M 8 Bright\n      BFGG N 7 Bright\n      BFGG E 20 Bright A_ReFire\n      goto Ready\n   Flash:\n      TNT1 A 7 A_Light1\n      TNT1 A 8 A_Light2\n      TNT1 A 8 A_Light1\n      TNT1 A 0 A_Light1\n      TNT1 A 0 A_Light0\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// PYRO CANNON //////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR PyroCannon : Weapon 20107\n{\n//$Category Stronghold_Weapons\n   spawnid 239\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the pyro cannon prototype!\"\n   Obituary \"%o was incinerated by %k's pyro cannon.\"\n   Weapon.AmmoType \"Gas\"\n   Weapon.AmmoGive 48\n   Weapon.AmmoUse 48\n   Weapon.SisterWeapon \"PowerPyroCannon\"\n   Tag \"Pyro Cannon\"\n   +WEAPON.EXPLOSIVE\n   +WEAPON.BFG\n   +WEAPON.DONTBOB\n   +WEAPON.STAFF2_KICKBACK\n   States\n   {\n   Spawn:\n      WPYR A -1\n      Loop\n   Ready:\n      PYRG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      PYRG A 0 A_Lower\n      PYRG A 1 A_Lower\n      Loop\n   Select:\n      PYRG A 0 A_Raise\n      PYRG A 1 A_Raise\n      Loop\n   Fire:\n      PYRG A 5\n      PYRG B 8 Bright A_GunFlash\n      PYRG C 10 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG DEFG 5 Bright\n      PYRG A 5 A_Refire\n      Goto Ready\n   Hold:\n      PYRG A 5\n      PYRG B 8 Bright A_GunFlash\n      PYRG C 10 Bright A_FireCustomMissile(\"PyroShot\",0,1,0,0)\n      PYRG DEFG 5 Bright\n      PYRG A 5 A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 8 A_Light1\n      TNT1 A 10 A_Light2\n      TNT1 A 15 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nACTOR Gas : Ammo 22106\n{\n//$Category Stronghold_Weapons\n   SpawnID 222\n   RENDERSTYLE Normal\n   Inventory.PickupSound \"misc/pickup\"\n   Inventory.Amount 24\n   Inventory.MaxAmount 240\n   Ammo.BackpackAmount 24\n   Ammo.BackpackMaxAmount 480\n   Inventory.PickupMessage \"Picked up a gas canister.\"\n   Inventory.Icon AGASA0\n   States\n   {\n   Spawn:\n      AGAS A 1\n      Loop\n   }\n}\n\nACTOR Fuel : Gas 22107\n{\n//$Category Stronghold_Weapons\n   SpawnID 221\n   Inventory.Amount 96\n   Inventory.PickupMessage \"Picked up a gas pack.\"\n   States\n   {\n   Spawn:\n      AGAS B 1\n      Loop\n   }\n}\n\nACTOR PyroShot\n{\n   Radius 8\n   Height 12\n   Speed 30\n   Damage 180\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Fire\n   ALPHA 0.95\n   Scale 0.75\n   +THRUGHOST\n   SeeSound \"weapons/hellfi\"\n   DeathSound \"weapons/hellex\"\n   Decal BigScorch\n   States\n   {\n   Spawn:\n      PBAL ABA 4 Bright\n      PBAL BA 4 Bright A_Explode(128,128)\n      goto Spawn+3\n   Death:\n      PYXP AB 2 Bright\n      PYXP C 2 Bright A_Explode(192,128)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,0,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,45,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,90,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,135,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,180,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,225,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,270,4)\n      PYXP C 0 Bright A_CustomMissile(\"PyroSpawner\",0,0,315,4)\n      PYXP C 0 Bright A_Mushroom(\"PyroFlare\",16)\n      PYXP DEFGHIJKLMNOPQRSTU 2 Bright\n      stop\n   }\n}\n\nACTOR PyroSpawner\n{\n   Radius 1\n   Height 1\n   Damage 10\n   PROJECTILE\n   Speed 15\n   RENDERSTYLE NONE\n   +RIPPER\n   +BLOODLESSIMPACT\n   States\n   {\n   Spawn:\n      TNT1 AAAAA 5 Bright A_CustomMissile(\"PyroBoom\",0,0,0,4)\n      stop\n   }\n}\n\nACTOR PyroBoom\n{\n   Radius 0\n   Height 1\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Fire\n   ALPHA 0.95\n   Scale 0.67\n   +THRUGHOST\n   SeeSound \"weapons/boom1\"\n   States\n   {\n   Spawn:\n      PYXP AB 2 Bright\n      PYXP C 2 Bright A_Explode(192,128)\n      PYXP DEFGHIJKLMNOPQRSTU 2 Bright\n      stop\n   }\n}\n\nACTOR PyroFlare\n{\n   Radius 8\n   Height 11\n   Speed 35\n   Damage 10\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Fire\n   Decal DoomImpScorch\n   ALPHA 0.95\n   -NOGRAVITY\n   +THRUGHOST\n   DeathSound \"weapons/bang1\"\n   States\n   {\n   Spawn:\n      TNT1 A 1 Bright A_SpawnItemEx(\"PyroFX\",0,0,0,0,0,0,0,128)\n      loop\n   Death:\n      FRFX HIJ 2 Bright\n      FRFX J 0 A_Explode(64,64)\n      FRFX J 0 A_SpawnItem(\"DropFire\",0,0)\n      FRFX KLMNO 2 Bright\n      stop\n   }\n}\n\nACTOR PyroFX\n{\n   Radius 0\n   Height 1\n   Speed 0\n   PROJECTILE\n   RENDERSTYLE ADD\n   ALPHA 0.85\n   States\n   {\n   Spawn:\n      TNT1 A 3 Bright\n      PYFX ABCDE 3 Bright\n      Stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// SHOTGUN //////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor DEShotgun : Shotgun replaces Shotgun\n{\n  Weapon.SisterWeapon \"PowerShotgun\"\n  obituary \"%o got pummeled by %k's shotgun.\"\n  radius 20\n  height 16\n  attacksound \"weapons/shotgf\"\n  inventory.pickupmessage \"You got the shotgun!\"\n  Tag \"Shotgun\"\n  weapon.selectionorder 1300\n  weapon.kickback 100\n  weapon.ammotype \"Shell\"\n  weapon.ammouse 1\n  weapon.ammogive 8\n  decal bulletchip\n  states\n  {\n  Spawn:\n    SHOT A -1\n    stop\n  Ready:\n    SHTG A 1 A_WeaponReady\n    loop\n  Deselect:\n    SHTG A 0 A_Lower\n    SHTG A 1 A_Lower\n    loop\n  Select:\n    SHTG A 0 A_Raise\n    SHTG A 1 A_Raise\n    loop\n  Fire:\n    SHTG A 3\n    SHTG E 0 A_GunFlash\n    SHTG E 2 A_FireBullets (4, 3, 7, 5, \"BulletPuff\")\n    SHTG F 3\n    SHTG G 2\n    SHTG BC 5\n    SHTG D 4\n    SHTG CB 5\n    SHTG A 3\n    SHTG A 7 A_ReFire\n    goto Ready\n  Hold:\n    SHTG A 3\n    SHTG E 0 A_GunFlash\n    SHTG E 2 A_FireBullets (4, 3, 7, 5, \"BulletPuff\")\n    SHTG F 3\n    SHTG G 2\n    SHTG BC 5\n    SHTG D 4\n    SHTG CB 5\n    SHTG A 3\n    SHTG A 7 A_ReFire\n    goto Ready\n  Flash:\n    TNT1 A 4 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// FLAMER ///////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR Flamer : Weapon 20105\n{\n//$Category Stronghold_Weapons\n   spawnid 238\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the flamethrower! Time for a BBQ!\"\n   Obituary \"%o was BBQed by %k's flamethrower.\"\n   Weapon.AmmoType \"Gas\"\n   Weapon.AmmoGive 48\n   Weapon.AmmoUse 1\n   Weapon.SisterWeapon \"PowerFlamer\"\n   Tag \"Flamethrower\"\n   +WEAPON.EXPLOSIVE\n   States\n   {\n   Spawn:\n      WFLM A -1\n      Loop\n   Ready:\n      FLMG BCD 3 A_WeaponReady\n      Loop\n   Deselect:\n      FLMG A 0 A_Lower\n      FLMG A 1 A_Lower\n      Loop\n   Select:\n      FLMG A 0 A_Raise\n      FLMG A 1 A_Raise\n      Loop\n   Fire:\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG H 2 Bright A_Refire\n      Goto Ready\n   Hold:\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG E 0 Bright A_GunFlash\n      FLMG E 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG F 1 Bright A_FireCustomMissile(\"FTFire\",0,0,random(-4,4),0)\n      FLMG G 1 Bright A_FireCustomMissile(\"FTFire\",0,1,random(-4,4),0)\n      FLMG H 2 Bright A_Refire\n      Goto Ready\n   Flash:\n      TNT1 A 2 A_Light1\n      TNT1 A 2 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nACTOR FTFire\n{\n   Radius 2\n   Height 4\n   Speed 16\n   Damage 1\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Fire\n   ALPHA 0.67\n   Scale 0.67\n   SeeSound \"weapons/flamer\"\n   DeathSound \"weapons/scorch\"\n   DONTHURTSHOOTER\n   +THRUGHOST\n   +DONTSPLASH\n   States\n   {\n   Spawn:\n      TNT1 A 2 Bright\n      FRFX ABCD 2 Bright A_Explode(5,8,0)\n      FRFX D 0 Bright A_Lowgravity\n      FRFX EFG 2 Bright A_Explode(5,16,0)\n      FRFX HIJ 2 Bright A_Explode(5,32,0)\n      FRFX KLM 2 Bright A_Explode(5,64,0)\n      FRFX NO 2 Bright\n      stop\n   Death:\n      FRFX HIJ 2 Bright A_Explode(5,32,0)\n      FRFX J 0 A_CustomMissile (\"DropFire\",0,0,0,4)\n      FRFX KLM 2 Bright A_Explode(5,64,0)\n      FRFX NO 2 Bright\n      stop\n   }\n}\n\nACTOR DropFire\n{\n   Radius 8\n   Height 40\n   PROJECTILE\n   RENDERSTYLE ADD\n   DamageType Fire\n   ALPHA 0.90\n   DONTHURTSHOOTER\n   -NOGRAVITY\n   +LOWGRAVITY\n   +NOEXPLODEFLOOR\n   +NODAMAGETHRUST\n   +THRUGHOST\n   +DONTSPLASH\n   States\n   {\n   Spawn:\n      FLME A 1 Bright A_Playsound(\"weapons/onfire\")\n      FLME A 1 Bright A_Explode(5,16,0)\n      FLME BCDEFGHIJKLMN 2 Bright A_Explode(5,16,0)\n      FLME A 1 Bright A_Playsound(\"weapons/onfire\")\n      FLME A 1 Bright A_Explode(5,32,0)\n      FLME BCDEFGHIJKLMN 2 Bright A_Explode(5,16,0)\n      FLME A 1 Bright A_Playsound(\"weapons/onfire\")\n      FLME A 1 Bright A_Explode(5,32,0)\n      FLME BCDEFGHIJKLMN 2 Bright A_Explode(5,16,0)\n      FLME A 1 Bright A_Playsound(\"weapons/onfire\")\n      FLME A 1 Bright A_Explode(5,32,0)\n      FLME BCDEFGHIJKLMN 2 Bright A_Explode(5,16,0)\n      FLME A 1 Bright A_Playsound(\"weapons/onfire\")\n      FLME A 1 Bright A_Explode(5,32,0)\n      FLME BCDEFGHIJKLMN 2 Bright A_Explode(5,16,0)\n      FLME A 0 A_Jump(192,1)\n      loop\n      TNT1 A 0\n      goto death\n   Death:\n      TNT1 A 1 Bright\n      stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// CHAINGUN /////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor DEChaingun : Chaingun replaces Chaingun\n{\n  spawnid 28\n  Weapon.SisterWeapon \"PowerChaingun\"\n  obituary \"%o was mowed down by %k's chaingun.\"\n  radius 20\n  height 16\n  inventory.pickupmessage \"You got the chaingun!\"\n  Tag \"Chaingun\"\n  weapon.selectionorder 700\n  weapon.kickback 100\n  weapon.ammotype \"Clip\"\n  weapon.ammouse 1\n  weapon.ammogive 20\n  Damagetype \"Normal\"\n  decal bulletchip\n  states\n  {\n  Ready:\n    CHGG A 1 A_WeaponReady\n    loop\n  Deselect:\n    CHGG A 0 A_StopSoundEx(\"Weapon\")\n    CHGG A 0 A_Lower\n    CHGG A 1 A_Lower\n    goto Deselect+1\n  Select:\n    CHGG A 0 A_Raise\n    CHGG A 1 A_Raise\n    loop\n  Fire:\n  \tCHGG C 0 A_PlaySoundEx(\"weapons/chnglp\",\"Weapon\",1)\n    CHGG C 2 Bright A_GunFlash\n    CHGG D 2 Bright A_FireBullets (4,2.3,1,5,\"BulletPuff\")\n    CHGG E 2 Bright A_GunFlash\n    CHGG F 2 Bright A_FireBullets (4,2.3,1,5,\"BulletPuff\")\n    CHGG A 0 A_Refire\n\tCHGG A 0 A_StopSoundEx(\"Weapon\")\n\tCHGG A 0 A_PlaySoundEx(\"weapons/chngdn\",\"Weapon\",0)\n    goto Ready\n  Hold:\n    CHGG C 2 Bright A_GunFlash\n    CHGG D 2 Bright A_FireBullets (4,2.3,1,5,\"BulletPuff\")\n    CHGG E 2 Bright A_GunFlash\n    CHGG F 2 Bright A_FireBullets (4,2.3,1,5,\"BulletPuff\")\n    CHGG A 0 A_Refire\n\tCHGG A 0 A_StopSoundEx(\"Weapon\")\n\tCHGG A 0 A_PlaySoundEx(\"weapons/chngdn\",\"Weapon\",0)\n    goto Ready\n  Flash:\n    TNT1 A 2 bright A_Light1\n    TNT1 A 2 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    stop\n  Spawn:\n    CHNG A -1\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// PISTOL ///////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor DEPistol : Weapon replaces Pistol\n{\n  obituary \"%o was tickled by %k's pea shooter.\"\n  attacksound \"weapons/pistol\"\n  weapon.selectionorder 1900\n  weapon.kickback 100\n  weapon.ammotype \"Clip\"\n  weapon.ammouse 1\n  weapon.ammogive 20\n  Weapon.SisterWeapon \"PowerPistol\"\n  Tag \"Pistol\"\n  +WEAPON.WIMPY_WEAPON\n  decal bulletchip\n  states\n  {\n  Spawn:\n    PISW A -1\n    stop\n  Ready:\n    PISG A 0 A_JumpIfInventory(\"PCount\",1,2)\n    PISG A 1\n    Goto Reload\n    PISG A 1 A_WeaponReady\n    Goto Ready\n  Deselect:\n    PISG A 0 A_Lower\n    PISG A 1 A_Lower\n    loop\n  Select:\n    PISG A 0 A_Raise\n    PISG A 1 A_Raise\n    loop\n  Fire:\n    PISG A 4\n    PISG B 0 A_FireBullets (5.6, 0, 1, 5, \"BulletPuff\")\n    PISF A 6 A_GunFlash\n    PISG C 4\n    PISG B 5 A_ReFire\n    goto Ready\n  Reload:\n    PISG D 5 A_PlaySound(\"weapons/clipou\")\n    PISG EFGHIJK 4\n    PISG L 4 A_Playsound(\"weapons/clipin\")\n    PISG MNO 4\n    PISG P 4 A_Playsound(\"weapons/clipre\")\n    PISG QR 4\n    PISG S 4 A_GiveInventory(\"PCount\",1)\n    Goto Ready\n  Flash:\n    PISF A 7 bright A_Light1\n    PISF A 0 bright A_Light0\n    stop\n  }\n}\n\nACTOR PCount : Ammo\n{\n     Inventory.Amount 1\n     Inventory.MaxAmount 1\n     Ammo.BackpackAmount 0\n     Ammo.BackpackMaxAmount 1\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// SUPER SHOTGUN ////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor DESuperShotgun : SuperShotgun replaces SuperShotgun\n{\n  spawnid 33\n  obituary \"%o was splattered by %k's super shotgun.\"\n  radius 20\n  height 16\n  attacksound \"weapons/sshotf\"\n  inventory.pickupmessage \"You got the super shotgun!\"\n  weapon.selectionorder 400\n  weapon.kickback 100\n  weapon.ammotype \"Shell\"\n  weapon.ammouse 2\n  weapon.ammogive 8\n  Weapon.SisterWeapon \"PowerSuperShotgun\"\n  Tag \"Super Shotgun\"\n  Damagetype \"Normal\"\n  decal bulletchip\n  states\n  {\n  Ready:\n    SHT2 A 1 A_WeaponReady\n    loop\n  Deselect:\n    SHT2 A 0 A_Lower\n    SHT2 A 1 A_Lower\n    loop\n  Select:\n    SHT2 A 0 A_Raise\n    SHT2 A 1 A_Raise\n    loop\n  Fire:\n    SHT2 A 3\n    SHT2 A 0 A_GunFlash\n    SHT2 M 2 Bright A_FireBullets (11.2,7.1,20,5,\"BulletPuff\")\n    SHT2 N 3 Bright\n    SHT2 O 2 Bright\n    SHT2 B 3\n    SHT2 C 4\n    SHT2 D 4 A_CheckReload\n    SHT2 C 3\n    SHT2 E 3 A_PlayWeaponSound (\"weapons/sshoto\")\n    SHT2 F 3\n    SHT2 G 4\n    SHT2 H 4\n    SHT2 I 3 A_PlayWeaponSound (\"weapons/sshotl\")\n    SHT2 J 3\n    SHT2 K 3\n    SHT2 L 4\n    SHT2 E 0 A_PlayWeaponSound (\"weapons/sshotc\")\n    SHT2 E 6 A_ReFire\n    SHT2 A 5 A_ReFire\n    goto Ready\n  Hold:\n    SHT2 A 3\n    SHT2 A 0 A_GunFlash\n    SHT2 M 2 Bright A_FireBullets (11.2,7.1,20,5,\"BulletPuff\")\n    SHT2 N 3 Bright\n    SHT2 O 2 Bright\n    SHT2 B 3\n    SHT2 C 4\n    SHT2 D 4 A_CheckReload\n    SHT2 C 3\n    SHT2 E 3 A_PlayWeaponSound (\"weapons/sshoto\")\n    SHT2 F 3\n    SHT2 G 4\n    SHT2 H 4\n    SHT2 I 3 A_PlayWeaponSound (\"weapons/sshotl\")\n    SHT2 J 3\n    SHT2 K 3\n    SHT2 L 4\n    SHT2 E 0 A_PlayWeaponSound (\"weapons/sshotc\")\n    SHT2 E 6 A_ReFire\n    SHT2 A 5 A_ReFire\n    goto Ready\n  Flash:\n    TNT1 A 2 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 2 bright A_Light1\n    TNT1 A 0 bright A_Light0\n    stop\n  Spawn:\n    SGN2 A -1\n    stop\n  }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// AUTO SHOTGUN /////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nactor AutoShotgun : Weapon 5118\n{\n//$Category Stronghold_Weapons\n  +AMMO_OPTIONAL\n  spawnid 237\n  obituary \"%o got blasted away by %k's autoshotgun.\"\n  radius 20\n  height 16\n  Inventory.PickupMessage \"You got the automatic shotgun!\"\n  Tag \"Autoshotgun\"\n  weapon.selectionorder 700\n  Weapon.AmmoType1 \"Shell\"\n  Weapon.AmmoType2 \"ASGClip\"\n  //Weapon.AmmoGive1 20\n  Weapon.AmmoGive2 20\n  Weapon.AmmoUse 1\n  Weapon.SisterWeapon \"PowerAutoShotgun\"\n  AttackSound \"weapons/asgfir\"\n  DamageType \"Normal\"\n  decal bulletchip\n  states\n  {\n  Spawn:\n    WASG A -1\n    stop\n  Ready:\n  \tASGG A 0 A_JumpIfInventory(\"ASGClip\",20,2)\n\tASGG A 0 A_JumpIfInventory(\"Shell\",1,2)\n\tASGG A 1 A_WeaponReady(8)\n\tLoop\n    ASGG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    ASGG A 0 A_Lower\n    ASGG A 1 A_Lower\n    Loop\n  Select:\n    ASGG A 0 A_Raise\n    ASGG A 1 A_Raise\n    Loop\n  Fire:\n  Hold:\n    ASGG A 0 A_JumpIfInventory(\"ASGClip\",1,29)\n    ASGG A 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG A 2 A_PlayWeaponSound(\"Weapons/asgout\")\n    Goto Ready\n    ASGG BCDEF 3\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgout\")\n    ASGG HIJ 3\n    ASGG K 15\n    ASGG JIH 3\n    ASGG G 0 A_TakeInventory(\"Shell\",1)\n    ASGG G 0 A_GiveInventory(\"ASGClip\",1)\n    ASGG G 0 A_JumpIfInventory(\"ASGClip\",20,2)\n    ASGG G 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG G 0\n    Goto Fire+22\n    ASGG G 0\n    Goto Fire+16\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgin\")\n    ASGG FEDCB 3\n    ASGG A 8 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    goto Ready\n    ASGG A 1\n    ASGG L 0 A_GunFlash\n    ASGG A 0 A_TakeInventory(\"ASGClip\",1)\n    ASGG L 2 A_FireBullets(5,4,7,5,\"BulletPuff\",0)\n    ASGG M 3\n    ASGG N 2\n    ASGG A 5 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    ASGG A 3\n    ASGG A 0 A_ReFire\n    goto Ready\n  AltFire:\n    ASGG BCDEF 3\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgout\")\n    ASGG HIJ 3\n    ASGG K 15\n    ASGG JIH 3\n    ASGG G 0 A_TakeInventory(\"Shell\",1)\n    ASGG G 0 A_GiveInventory(\"ASGClip\",1)\n    ASGG G 0 A_JumpIfInventory(\"ASGClip\",20,2)\n    ASGG G 0 A_JumpIfInventory(\"Shell\",1,2)\n    ASGG G 0\n    Goto AltFire+19\n    ASGG G 0\n    Goto AltFire+13\n    ASGG G 3 A_PlayWeaponSound(\"Weapons/asgin\")\n    ASGG FEDCB 3\n    ASGG A 8 A_PlaySoundEX(\"weapons/asgld1\",\"auto\",0)\n    Goto Ready\n  Flash:\n    TNT1 A 4 bright A_Light1\n    TNT1 A 3 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    stop\n  }\n}\n\nACTOR ASGClip: Ammo\n{\n     Inventory.MaxAmount 20\n     Ammo.BackpackAmount 0\n     Ammo.BackpackMaxAmount 20\n     +Inventory.IgnoreSkill\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// REPEATER /////////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR Repeater : Weapon 20100\n{\n//$Category Stronghold_Weapons\n   spawnid 236\n   Inventory.PickupSound \"misc/w_pkup\"\n   Inventory.PickupMessage \"You got the plasma repeater!\"\n   Obituary \"%o was disintegrated by %k's repeater.\"\n   Weapon.AmmoType1 \"Cell\"\n   Weapon.AmmoGive 20\n   Weapon.AmmoUse 1\n   Weapon.SisterWeapon \"PowerRepeater\"\n   +WEAPON.EXPLOSIVE\n   AttackSound \"weapons/repfir\"\n   Decal FireDemonScorch\n   Tag \"Plasma Repeater\"\n   States\n   {\n   Spawn:\n      WREP A -1\n      Loop\n   Ready:\n      REPG A 1 A_WeaponReady\n      Loop\n   Deselect:\n      REPG A 0 A_Lower\n      REPG A 1 A_Lower\n      Loop\n   Select:\n      REPG A 0 A_Raise\n      REPG A 1 A_Raise\n      Loop\n   Fire:\n      REPG A 4 A_PlaySound(\"weapons/repidl\")\n      REPG BCD 4\n      REPG ABCD 3\n      REPG ABCD 2\n      REPG E 0 Bright A_Gunflash\n      REPG E 2 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG F 2 Bright\n      REPG G 2 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG H 2 Bright\n      REPG A 0 A_Refire\n      REPG A 2 A_PlaySound(\"weapons/repstp\")\n      REPG BCD 2\n      REPG ABCD 3\n      REPG ABCD 4\n      Goto Ready\n   Hold:\n      REPG E 0 Bright A_Gunflash\n      REPG E 2 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG F 2 Bright\n      REPG G 2 Bright A_FireBullets(4,4,2,9,RepPuff,1,10240)\n      REPG H 2 Bright\n      REPG A 0 A_Refire\n      REPG A 2 A_PlaySound(\"weapons/repstp\")\n      REPG BCD 2\n      REPG ABCD 3\n      REPG ABCD 4\n      REPG ABCD 5\n      Goto Ready\n   Flash:\n      TNT1 A 2 A_Light2\n      TNT1 A 2 A_Light1\n      TNT1 A 0 A_Light0\n      stop\n   }\n}\n\nActor RepPuff\n{\n   Radius 3\n   Height 3\n   RENDERSTYLE ADD\n   ALPHA 0.75\n   Damagetype normal\n   ExplosionDamage 32\n   ExplosionRadius 88\n   +ALWAYSPUFF\n   +PUFFONACTORS\n   +NOGRAVITY\n   +NOBLOCKMAP\n   +PUFFGETSOWNER\n   DeathSound \"weapons/buzz\"\n   States\n   {\n   Spawn:\n      BLAS A 1 Bright\n      BLAS A 2 Bright A_Explode\n      BLAS BCDEFG 3 Bright\n      stop\n   }\n}\n\nACTOR Heat : Ammo\n{\n     Inventory.MaxAmount 100\n     Ammo.BackpackAmount 0\n     Ammo.BackpackMaxAmount 100\n     Inventory.Icon STTPRCNT\n}\n\nActor RepSteam\n{\n   Radius 0\n   Height 1\n   Speed 25\n   PROJECTILE\n   RENDERSTYLE TRANSLUCENT\n   ALPHA 0.35\n   SeeSound \"weapons/repstm\"\n   States\n   {\n   Spawn:\n      TNT1 A 3\n      WSMK ABCDE 2\n      Stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// MINE LAYER ///////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR LandMineLayer : Weapon 25084\n{\n//$Category Stronghold_Weapons\n   SpawnId 200\n   Inventory.PickupMessage \"You got some land mines!\"\n   Inventory.PickupSound \"misc/w_pkup\"\n   Weapon.AmmoType \"Mines\"\n   Weapon.AmmoGive 5\n   Weapon.AmmoUse 1\n   Weapon.AmmoType2 \"Mines\"\n   Weapon.AmmoUse2 1\n   Weapon.SisterWeapon \"PowerLandMineLayer\"\n   Tag \"Land Mines\"\n   States\n   {\n   Spawn:\n      MINE A -1\n      Loop\n   Ready:\n      LAYR A 1 A_WeaponReady\n      Loop\n   Deselect:\n      LAYR A 0 A_Lower\n      LAYR A 1 A_Lower\n      Loop\n   Select:\n      LAYR A 0 A_Raise\n      LAYR A 1 A_Raise\n      Loop\n   AltFire:\n      LAYR B 8 A_PlaySound(\"weapons/minebeep\")\n      LAYD ABCDE 1\n      TNT1 A 10\n      LAYT A 1 A_PlaySound(\"weapons/minethrow\")\n      LAYT BCDEFGH 1\n      LAYT I 1 A_FireCustomMissile(\"Landmine2\",0,1,0,8)\n      LAYT JKLMNOPQR 1\n      TNT1 A 10\n      LAYU ABCDE 1\n      LAYR A 6\n      Goto Ready\n   Fire:\n      LAYR B 8 A_PlaySound(\"weapons/minebeep\")\n      LAYD ABCDE 1\n      TNT1 A 5\n      TNT1 A 9 A_FireCustomMissile(\"Landmine3\",0,1,0,0)\n      LAYU ABCDE 1\n      LAYR A 4\n      Goto Ready\n   }\n}\n\nACTOR Landmine\n{\n   Radius 8 //was 5\n   Height 5\n   Mass 1000000\n   Health 20\n   Damage 10\n   SeeSound \"weapons/tink\"\n   ExplosionDamage 384\n   ExplosionRadius 160\n   DONTHURTSHOOTER\n   Speed 0\n   +NOBLOOD\n   -SHOOTABLE\n   +MISSILE\n   +THRUGHOST\n   States\n   {\n   Spawn:\n      MINE A 0 A_Gravity\n      MINE AB 5\n      Loop\n   Death:\n      MISL B 0 A_PlaySound(\"weapons/mineexpl\")\n      MISL B 8 A_Explode\n      MISL C 6\n      MISL D 4\n      Stop\n   }\n}\n\nACTOR Landmine2\n{\n   Radius 8 //was 5\n   Height 5\n   Mass 1000000\n   Health 20\n   Damage 10\n   SeeSound \"weapons/tink\"\n   DONTHURTSHOOTER\n   Speed 15\n   +NOBLOOD\n   -SHOOTABLE\n   +MISSILE\n   +DOOMBOUNCE\n   +THRUGHOST\n   States\n   {\n   Spawn:\n      MINE A 0 A_Gravity\n      MINE AB 5\n      Loop\n   Death:\n      MINE A 0 A_SpawnItem(\"Landmine\")\n      Stop\n   }\n}\n\nACTOR Landmine3 : Landmine2\n{\n   Speed 2\n}\n\nACTOR Mines : Ammo 25085\n{\n//$Category Stronghold_Weapons\n   SpawnId 201\n   Inventory.Amount 2\n   Inventory.MaxAmount 20\n   Ammo.BackpackAmount 5\n   Ammo.BackpackMaxAmount 40\n   Inventory.PickupMessage \"Picked up some additional landmines.\"\n   Inventory.PickupSound \"misc/i_pkup\"\n   Inventory.Icon MINEA0\n   States\n   {\n   Spawn:\n      MINE B -1\n      Stop\n   }\n}\n\n//////////////////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////// STUNNER RIFLE ////////////////////////////////\n//////////////////////////////////////////////////////////////////////////////////////\n\nACTOR StunnerRifle : PlasmaRifle 23099\n{\n//$Category Stronghold_Weapons\n   SpawnID 202\n   Weapon.AmmoUse 5\n   Weapon.SisterWeapon \"PowerStunnerRifle\"\n   Inventory.PickupMessage \"You got the stunner rifle!\"\n   Tag \"Stunner Rifle\"\n   States\n   {\n   Spawn:\n      STPP A -1\n      Loop\n   Ready:\n      STPO ABC 3 Bright A_WeaponReady\n      Loop\n   Deselect:\n      STPO E 0 A_Lower\n      STPO E 1 A_Lower\n      Loop\n   Select:\n      STPO E 0 A_Raise\n      STPO E 1 A_Raise\n      Loop\n   Fire:\n   Hold:\n      STPO F 0 Bright A_GunFlash\n      STPO F 3 Bright A_FireCustomMissile(\"StunnerBall\",0,1,0,0)\n      STPO GH 3 Bright\n      STPO E 4\n      STPO D 6 A_ReFire\n      Goto Ready\n   Flash:\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light2\n      TNT1 A 1 A_Light1\n      TNT1 A 1 A_Light0\n      stop\n   }\n}\n\nactor StunnerBall\n{\n  spawnid 10\n  radius 6\n  height 8\n  speed 20\n  scale 0.45\n  damagetype Stunner\n  damage 1\n  decal StunnerScorch\n  renderstyle Add\n  seesound \"weapons/stunner/shot\"\n  deathsound \"weapons/stunner/hit\"\n  translation \"192:207=250:254\"\n  PROJECTILE\n  +RANDOMIZE\n  +RIPPER\n  states\n  {\n  Spawn:\n    STPR A 1 bright A_SpawnItemEx(\"StunnerBallFX\",0,0,0,0,0,0,0,128)\n    loop\n  Death:\n    PLSE ABCDE 4 bright\n    stop\n  }\n}\n\nactor StunnerBallFX\n{\n  +NOBLOCKMAP\n  +NOGRAVITY\n  scale 0.45\n  renderstyle Add\n  radius 1\n  height 2\n  States\n  {\n  Spawn:\n    STPR A 1 bright A_FadeOut(0.1)\n    Loop\n  }\n}\n\n/////////////////////\n// NEW BULLET PUFF //\n/////////////////////\n\nACTOR NewPuff : BulletPuff replaces BulletPuff\n{\n\tAlpha 1.0\n\tMass 1\n\tStates\n\t{\n\tSpawn:\n\tMelee:\n\t    PUFF A 2\n\t    PUFF A 0 A_Jump(128,2)\n\t    PUFF A 2 A_SpawnItemEx(\"Puff2\",0,0,0,0,0,0,0,128)\n\t    PUFF BCD 4\n\t    Stop\n\t}\n}\n\nACTOR Puff2\n{\n\tPROJECTILE\n\t+NOCLIP\n\tMass 1\n\tStates\n\t{\n\tSpawn:\n\t\tPUFF E 2\n\t\tPUFF E 2 A_PlaySound(\"puff/ric\")\n\t\tPUFF FGH 4\n\t\tStop\n\t}\n}"
      },
      {
        "source": "pk3",
        "name": "sbarinfo.txt",
        "contents": "height 32;\nmonospacefonts true, \"0\";\n\nstatusbar fullscreen, fullscreenoffsets\n{\n\tdrawimage \"STBARFS\", 0+center, -32, center;\n\n\tdrawimage \"MEDIA0\", -98+center, -28, centerbottom;\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, health, -41+center, -42;\n\tdrawimage \"WIPCNTSM\", -38+center, -37;\n\n\tdrawimage armoricon, -98+center, -6;\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, armor, -41+center, -21;\n\tdrawimage \"WIPCNTSM\", -38+center, -16;\n\n\tIsSelected not AutoShotgun\n\t{\n\t\tdrawimage ammoicon1, -6+center, -7;\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo1, 49+center, -21;\n\t}\n\tIsSelected AutoShotgun\n\t{\n\t\tdrawimage ammoicon2, -6+center, -29;\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo2, 49+center, -42;\n\t\tdrawimage ammoicon1, -6+center, -7;\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo1, 49+center, -21;\n\t}\n\tIsSelected PowerAutoShotgun\n\t{\n\t\tdrawimage ammoicon2, -6+center, -29;\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo2, 49+center, -42;\n\t\tdrawimage ammoicon1, -6+center, -7;\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo1, 49+center, -21;\n\t}\n\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, LifeItem, 85+center, -21;\n\n\tgamemode deathmatch, teamgame\n\t{\n\t\tdrawnumber 2, HUDFONT_DOOM, untranslated, frags, -8, 1;\n\t}\n\n\tdrawselectedinventory center, alwaysshowcounter, INDEXFON, 116+center, -35, 142+center, -38, gold;\n\tdrawimage \"SACKA0\", 100+center, -25;\n\tdrawnumber 5, INDEXFON, gold, CoinItem, 142+center, -16;\n}\n\nstatusbar normal\n{\n\tdrawimage \"STBAR\", 0, 168;\n\tdrawimage \"WIPCNTSM\", 87, 177;\n\tdrawimage \"WIPCNTSM\", 217, 177;\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, LifeItem, 248, 172;\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, health, 85, 172;\n\tdrawnumber 3, HUDFONT_DOOM, untranslated, armor, 216, 172;\n\t// Special case for the Auto Shotgun - if AS is selected then display clip\n\t// Don't worry, the shells remaining are still shown to the right.\n\tIsSelected not AutoShotgun\n\t{\n\t\tdrawnumber 3, HUDFONT_DOOM, untranslated, ammo1, 40, 172;\n\t}\n\tIsSelected AutoShotgun\n\t{\n\t\tdrawnumber 3, HUDFONT_DOOM, gold, ammo2, 40, 172;\n\t}\n\n/*\t//keys\n\tdrawswitchableimage BlueCard && BlueSkull, \"nullimage\", \"STKEYS0\", \"STKEYS3\", \"STKEYS6\", 239, 171;\n\tdrawswitchableimage YellowCard && YellowSkull, \"nullimage\", \"STKEYS1\", \"STKEYS4\", \"STKEYS7\", 239, 181;\n\tdrawswitchableimage RedCard && RedSkull, \"nullimage\", \"STKEYS2\", \"STKEYS5\", \"STKEYS8\", 239, 191;\n*/\n\tdrawnumber 3, INDEXFON, gold, ammo Clip, 284, 173;\n\tdrawnumber 3, INDEXFON, gold, ammo Shell, 284, 182;\n\tdrawnumber 3, INDEXFON, gold, ammo RocketAmmo, 284, 191;\n\tdrawnumber 3, INDEXFON, gold, ammo Gas, 315, 173;\n\tdrawnumber 3, INDEXFON, gold, ammo Mines, 315, 182;\n\tdrawnumber 3, INDEXFON, gold, ammo Cell, 315, 191;\n\n/*\tdrawnumber 3, INDEXFON, gold, ammocapacity Clip, 314, 173;\n\tdrawnumber 3, INDEXFON, gold, ammocapacity Shell, 314, 179;\n\tdrawnumber 3, INDEXFON, gold, ammocapacity RocketAmmo, 314, 185;\n\tdrawnumber 3, INDEXFON, gold, ammocapacity Cell, 314, 191;\n*/\n/*\tgamemode deathmatch, teamgame\n\t{\n\t\tdrawnumber 2, HUDFONT_DOOM, untranslated, frags, 138, 171;\n\t}\n*/\n\n//\tgamemode cooperative, singleplayer\n//\t{\n//\t\tdrawimage \"STARMS\", 104, 168;\n\t\tdrawswitchableimage weaponslot 2, \"STGNUM2\", \"STYSNUM2\", 106, 172;\n\t\tdrawswitchableimage weaponslot 3, \"STGNUM3\", \"STYSNUM3\", 114, 172;\n\t\tdrawswitchableimage weaponslot 4, \"STGNUM4\", \"STYSNUM4\", 122, 172;\n\t\tdrawswitchableimage weaponslot 5, \"STGNUM5\", \"STYSNUM5\", 130, 172;\n\t\tdrawswitchableimage weaponslot 6, \"STGNUM6\", \"STYSNUM6\", 106, 182;\n\t\tdrawswitchableimage weaponslot 7, \"STGNUM7\", \"STYSNUM7\", 114, 182;\n\t\tdrawswitchableimage weaponslot 8, \"STGNUM8\", \"STYSNUM8\", 122, 182;\n\t\tdrawswitchableimage weaponslot 9, \"STGNUM9\", \"STYSNUM9\", 130, 182;\n//\t}\n\n\tdrawselectedinventory alternateonempty, INDEXFON, 140, 169\n\t{\n\t\tdrawmugshot \"STF\", 5, 140, 169;\n\t}\n}\n\nstatusbar inventory\n{\n\tdrawinventorybar Doom, 7, INDEXFONT, 50, 170;\n}\n\nstatusbar inventoryfullscreen // ZDoom HUD overlay.\n{\n\tdrawinventorybar Doom, translucent, 7, INDEXFONT, 50, 170;\n}\n\n/* Skulltag can't handle \"center\"\nstatusbar inventoryfullscreen, fullscreenoffsets // ZDoom HUD overlay.\n{\n\tdrawinventorybar Doom, translucent, 7, INDEXFONT, -106+center, -31, -80+center, -9;\n}\n*/"
      },
      {
        "source": "pk3",
        "name": "hirestex.txt",
        "contents": "define SSEIA0 24 24\ndefine SMRIA0 24 24"
      }
    ]
  },
  "maps": [
    {
      "map": "MAP99",
      "title": "MAP99",
      "format": "hexen",
      "stats": {
        "things": 667,
        "linedefs": 26888,
        "sidedefs": 48035,
        "vertices": 28736,
        "sectors": 5681,
        "segs": 60933,
        "ssectors": 20460,
        "nodes": 20459,
        "textures": {
          "N5VTX028": 2,
          "PRIC1000": 2,
          "P_HELO": 1,
          "TLITE6_5": 8,
          "N_BGBG03": 588,
          "EBAS013": 9,
          "N_MTWA02": 54,
          "PANCASE2": 153,
          "N5META22": 158,
          "N_CSPN01": 2,
          "TEKWALL4": 296,
          "NFLTYL02": 29,
          "AD0002": 3,
          "P_ROUGER": 2,
          "TEKWALL2": 99,
          "NFCL41RD": 32,
          "NFCL43GN": 8,
          "NFRR10GN": 22,
          "VADOOR1": 46,
          "PANBOOK": 10,
          "CEIL5_2": 509,
          "ECOMP35": 1,
          "VADOOR3": 28,
          "N_MTTBC2": 26,
          "NFCL52GR": 997,
          "N_WARN01": 50,
          "STEP4": 711,
          "WFALL1": 4,
          "CRATE1": 4,
          "P_FORGE": 2,
          "N_LTYL03": 10,
          "LITE3": 2,
          "NFLTGNXX": 6,
          "N5VTX019": 14,
          "SW1MET2": 2,
          "ECOMP38": 2,
          "T6SIX": 8,
          "JBOX01": 15,
          "N_MTSV04": 148,
          "ESIGN04": 6,
          "N_MTTK47": 13,
          "NFCL42RD": 25,
          "PANBORD2": 22,
          "P_MAP": 2,
          "N_CSPN25": 11,
          "P_CHLOR": 1,
          "N5META31": 225,
          "LITE4": 2,
          "N_LTMTBN": 2,
          "ENCYCL1": 1,
          "N_MTGT13": 8,
          "N_CSPN22": 22,
          "N_LTGN03": 4,
          "SILVER1": 24,
          "NFFT22GN": 1,
          "TELEPTY1": 32,
          "TANROCK2": 32,
          "N5TECH12": 10,
          "REDWALL1": 2,
          "N_CSPN11": 7,
          "N_MTTK10": 8,
          "CDOTDOT1": 1,
          "EBAS015": 2,
          "AD0005": 1,
          "BIGAD00": 10,
          "CRATOP2": 2,
          "FLAT5_4": 127,
          "N5META19": 48,
          "N5STGN01": 6,
          "NFLTRD01": 45,
          "NFLTW05V": 2,
          "N_BGBB03": 40,
          "N_GRAY01": 150,
          "N_LTOR03": 12,
          "N_MTSV05": 140,
          "N5BRIK01": 827,
          "PIPEWAL2": 65,
          "PRIC5000": 1,
          "P_CERBER": 1,
          "P_CYCLON": 2,
          "N_AFMSH2": 180,
          "P_JAIL": 1,
          "P_SKORP": 3,
          "P_SPACE": 2,
          "QROCK1": 1456,
          "N_BRGR12": 311,
          "N_MTTK03": 1048,
          "COMPSPAN": 173,
          "NFLTRD02": 105,
          "FLAT20": 10,
          "N_GRGN05": 1,
          "N_MTTK08": 59,
          "PRIC0400": 1,
          "AD0006": 1,
          "N_TWGN04": 41,
          "P_SWAMP": 2,
          "N_MTTK07": 22,
          "SILVER2": 8,
          "PRIC0200": 2,
          "FLOOR4_1": 166,
          "N5META11": 15,
          "P_NULL": 2,
          "TANROCK3": 225,
          "CEIL5_1": 9484,
          "PINKI": 2,
          "WWATER": 50,
          "NFLTWT03": 4,
          "METAL4": 4,
          "N_CMSN03": 1,
          "FLOOR7_1": 43,
          "N_MTTK21": 92,
          "ICY_HOUS": 2,
          "P_STYX": 2,
          "GRASS1": 76,
          "ECOMP40": 4,
          "N5META21": 306,
          "BROWN1": 467,
          "ECOMP34": 1,
          "ERUST013": 13,
          "ECOMP13": 12,
          "N_WARN06": 4,
          "PD2A": 1,
          "NFSTEP11": 10,
          "TANROCK5": 60,
          "N_LTOR05": 18,
          "DOORSTOP": 30,
          "N_MTTK05": 665,
          "P_GORGE": 1,
          "VADOOR5": 1,
          "N_MTTK30": 1,
          "N5FL14RD": 309,
          "N_CSPN05": 8,
          "MONITOR": 2,
          "NFLTOR02": 21,
          "T6TWO": 4,
          "N5META24": 24,
          "N5META29": 418,
          "P_MIDNAT": 2,
          "NFBRWN01": 119,
          "N_MTTK19": 37,
          "N_MTSH05": 287,
          "RROCK16": 6,
          "T6FIV": 4,
          "N_GRBR07": 361,
          "N_TKGR01": 1,
          "N5META08": 140,
          "PRIC0025": 3,
          "RROCK17": 143,
          "PRIC0500": 4,
          "N_MTTK62": 803,
          "P_PHOTON": 1,
          "ECOMP32": 30,
          "LIG2RED": 16,
          "N_TLGR06": 8,
          "PRIC0750": 2,
          "PRIC0150": 1,
          "CRATINY": 12,
          "CRATOP1": 8,
          "NFLTGN03": 8,
          "N_MTTK20": 52,
          "PRIC0100": 1,
          "DOOR1": 2,
          "FLAT1": 425,
          "N_BKBG03": 98,
          "MONSTCAM": 1,
          "NFLTWT02": 25,
          "N_LTYL05": 76,
          "T6ONE": 4,
          "ICYBNR03": 1,
          "TEKWALL6": 72,
          "P_CRIM": 3,
          "ECOMP39": 1,
          "N_MTTK24": 3,
          "EDRHUGE3": 15,
          "METAL3": 2,
          "WARPW1": 2,
          "ECOMP41": 9,
          "N5LITE03": 2,
          "N5META01": 2,
          "NFLTOR03": 23,
          "N_MTTK09": 109,
          "SLBRNZ02": 287,
          "N_CSPN08": 53,
          "N_TLGR05": 14,
          "NFCL42GN": 1,
          "RROCK03": 544,
          "NFRR16GN": 19,
          "PIPEWAL1": 77,
          "NFBRGN01": 11,
          "N5LITE05": 2,
          "STONE6": 62,
          "CRATELIT": 8,
          "DOORHI": 7,
          "INDICATE": 22,
          "N_BRNZ10": 4,
          "CEIL4_2": 64,
          "DOORTRAK": 115,
          "PD1A": 1,
          "N_BGBB05": 26,
          "X_TBMACH": 4,
          "N_MTSH04": 925,
          "FLAT23": 4,
          "EWAL036": 48,
          "N_BKSM03": 59,
          "EBLACK": 8,
          "ECOMP33": 22,
          "N_CSPN20": 1,
          "SPACEMAP": 7,
          "N_BRNZ12": 214,
          "STEP10": 35,
          "N_BITS06": 32,
          "N_MTTK22": 84,
          "N_MTVN10": 206,
          "FLAT22": 2,
          "NFSPHT01": 7,
          "COMPTALL": 5,
          "N_LTRD05": 38,
          "MIDSPACE": 24,
          "2SECS": 2,
          "VADOOR4": 42,
          "SW1COMP": 10,
          "N5META20": 78,
          "N5META43": 3,
          "N_BRNZ09": 14,
          "XLIT011": 28,
          "CABLES1": 36,
          "LITE5": 36,
          "ADEL_S04": 6,
          "ASHWALL2": 2,
          "N5META15": 5,
          "NFLTGN02": 2,
          "CABLES2": 36,
          "AD0003": 1,
          "LIGRRED": 64,
          "N5VTX021": 24,
          "METAL": 97,
          "N_LTGN05": 16,
          "N_MTWA04": 4,
          "PRIC0300": 4,
          "EDRHUGE1": 33,
          "NFFT1BR": 1146,
          "CRATE3": 4,
          "P_HERROS": 1,
          "T6THR": 1,
          "FLAT5_5": 448,
          "P_ABRA": 3,
          "T6FOR": 2,
          "PRIC0600": 2,
          "N_MTTK63": 210,
          "GRNUM0": 10,
          "N_CSPN07": 3,
          "TEKWALL1": 18,
          "EXITSIGN": 2,
          "DATEC": 1,
          "NFFT14RD": 57,
          "BIGDOOR4": 12,
          "WARPW2": 32,
          "F_SKY1": 660,
          "ESIGN01": 5,
          "N5META07": 224,
          "N_MTTK01": 460,
          "N_MTTK36": 9,
          "N_MTTK04": 8,
          "SHAWN2": 196,
          "ADSW1A": 2,
          "N_CSPN03": 10,
          "EDRHUGE2": 67,
          "NFCL42GR": 217,
          "WARPW4": 18,
          "N5META16": 5,
          "NFCL43GR": 444,
          "N_LTYL09": 18,
          "AD0004": 1,
          "ESIGN03": 1,
          "N5META26": 48,
          "EDIS014": 1,
          "COMPWERD": 20,
          "COMPSTA2": 8,
          "AD0007": 1,
          "PANBORD1": 14,
          "P_ORMANT": 1,
          "TANROCK7": 96,
          "N_MTTK25": 197,
          "NFLTBL03": 1,
          "N_CSPN28": 20,
          "N_TKRD17": 6,
          "STEP6": 126,
          "N_MTTK15": 16,
          "N5META09": 1424,
          "DOORTRA2": 60,
          "PRIC0050": 3,
          "TOPS": 2,
          "XLIT012": 12,
          "XRCK19": 7,
          "P_MARS": 2,
          "NFLTRD03": 81
        }
      },
      "monsters": {
        "total": 0,
        "by_type": {},
        "by_category": null
      },
      "items": {
        "total": 0,
        "by_type": {},
        "ammo_by_category": null,
        "weapons_present": null
      },
      "mechanics": {
        "teleports": false,
        "keys": [],
        "secret_exit": true
      },
      "difficulty": {
        "uv_monsters": 0,
        "hmp_monsters": 0,
        "htr_monsters": 0,
        "uv_items": 0,
        "hmp_items": 0,
        "htr_items": 0
      },
      "compatibility": "hexen",
      "metadata": {
        "title": null,
        "music": null,
        "source": "marker"
      },
      "images": [
        {
          "id": "e9927895-3bdd-403b-8580-344c433ed4b2",
          "url": "https://wadimages2.nyc3.digitaloceanspaces.com/468c056b1afe627692ac58cef0378c5931d49793/MAP99/images/0.webp",
          "type": null
        },
        {
          "id": "96191106-417b-4782-8918-bc3f2be0a03f",
          "url": "https://wadimages2.nyc3.digitaloceanspaces.com/468c056b1afe627692ac58cef0378c5931d49793/MAP99/pano/pano_0.webp",
          "type": "pano"
        }
      ]
    }
  ]
}

gib.gg runs on open-source software and freely licensed replacement game assets from the Freedoom project. gib.gg is not affiliated with Bethesda Softworks, id Software, or ZeniMax Media. All trademarks belong to their respective owners. Some WADs and associated metadata on this site are sourced from WAD Archive. User-submitted content remains the responsibility of its respective authors. If you believe content on this site violates your rights, please send DMCA requests to dmca@gib.gg.