Raw model (for completeness)
{
"meta": {
"id": "030a3868-2532-4a1b-8e94-60db3a2609fe",
"sha1": "00c0cf130fddb5de9c292a93ac5d9e8bd5dbd90f",
"sha256": "d70ce07a8b1fcf038fefea330e838f619124062be724a70bd87591cf79af47bb",
"filenames": [
"xaseracheron - dead-air - e7badeabd4cf735c.pk3"
],
"additional": {
"engines": [],
"iwad": [],
"filename": null,
"added": null,
"locked": false,
"canDownload": true,
"adult": false,
"hidden": false,
"name": null,
"description": null,
"maps": null,
"graphicOverrides": null,
"screenshots": {
"MAP01": "MAP01.png"
},
"palettes": null,
"categories": null
},
"flags": {
"locked": false,
"canDownload": true,
"adult": false,
"hidden": false
},
"file": {
"type": "PK3",
"size": 5764174,
"url": "https://wadarchive2.nyc3.digitaloceanspaces.com/00c0cf130fddb5de9c292a93ac5d9e8bd5dbd90f/00c0cf130fddb5de9c292a93ac5d9e8bd5dbd90f.pk3.gz",
"corrupt": false
},
"content": {
"maps": [
"MAP01"
],
"counts": {
"endoom": 0,
"graphics": 0,
"lumps": 803,
"maps": 1,
"palettes": 0
}
},
"text_files": [
{
"source": "pk3",
"name": "credits.txt",
"contents": "/ dead.air \\\n / by xaser \\\n\ncredits in no particular order:\n\n - Xaser (das me): mapping, music (original score yay!), actor code, going insane\n - RNG Breadbug : weapon, enemy, and prop sprites + a shitton of inspiration!\n - ijon tichy : quake-style grenade code, from Samsara\n - Alfonzo & dew : early testing and nitpickeroonies\n - rf` (ravage) : AM-Driver explosion sprites (for at least the rip :P)\n - Amuscaria (nee Eriance): Nail projectile sprites\n - Cage, NiGHTMARE, zrrion the insect, & NMN : Textures of Awesome"
},
{
"source": "pk3",
"name": "decorate.txt",
"contents": "/*\n * dead.air: decorate includefile\n * (c) xaser 2016\n */\n\n#include \"actors/base.txt\"\n#include \"actors/player.txt\"\n\n//#include \"actors/items/ammo.txt\"\n//#include \"actors/items/powerups.txt\"\n#include \"actors/items/upgrade.txt\"\n\n#include \"actors/weapons/base.txt\"\n#include \"actors/weapons/blaster.txt\"\n#include \"actors/weapons/machinegun.txt\"\n#include \"actors/weapons/shrapnel.txt\"\n#include \"actors/weapons/nailgun.txt\"\n#include \"actors/weapons/grenade.txt\"\n#include \"actors/weapons/fusion.txt\"\n#include \"actors/weapons/driver.txt\"\n#include \"actors/weapons/bonesaw.txt\"\n\n#include \"actors/enemies/zombie.txt\"\n#include \"actors/enemies/birdman.txt\"\n#include \"actors/enemies/faceless.txt\"\n#include \"actors/enemies/gazer.txt\"\n#include \"actors/enemies/cyber.txt\"\n\n#include \"actors/props/barrel.txt\"\n#include \"actors/props/lamps.txt\"\n#include \"actors/props/torches.txt\"\n#include \"actors/props/deadstuff.txt\""
},
{
"source": "pk3",
"name": "sndinfo.txt",
"contents": "/*\n * dead.air: sndinfo\n * (c) xaser 2016\n */\n\nweapons/blaster/up \"sounds/weapons/blaster/up.flac\"\nweapons/blaster/fire1 \"sounds/weapons/blaster/fire1.wav\"\nweapons/blaster/fire2 \"sounds/weapons/blaster/fire2.wav\"\nweapons/blaster/fire3 \"sounds/weapons/blaster/fire3.wav\"\nweapons/blaster/fire4 \"sounds/weapons/blaster/fire4.wav\"\nweapons/blaster/fire5 \"sounds/weapons/blaster/fire5.wav\"\nweapons/blaster/fire6 \"sounds/weapons/blaster/fire6.wav\"\nweapons/blaster/firex \"sounds/weapons/blaster/firex.wav\"\nweapons/blaster/hit \"sounds/weapons/blaster/hit.wav\"\n$volume weapons/blaster/up 0.66\n$volume weapons/blaster/firex 0.50\n\nweapons/machinegun/up \"sounds/weapons/machinegun/up.flac\"\nweapons/machinegun/firex \"sounds/weapons/machinegun/fire.flac\"\nweapons/machinegun/fire1 \"sounds/weapons/machinegun/fire1.ogg\"\nweapons/machinegun/fire2 \"sounds/weapons/machinegun/fire2.ogg\"\nweapons/machinegun/fire3 \"sounds/weapons/machinegun/fire3.ogg\"\n$random weapons/machinegun/fire { weapons/machinegun/fire1 weapons/machinegun/fire2 weapons/machinegun/fire3 }\n$volume weapons/machinegun/up 0.66\n\nweapons/shrapnel/up \"sounds/weapons/shrapnel/up.flac\"\nweapons/shrapnel/fire \"sounds/weapons/shrapnel/fire.flac\"\nweapons/shrapnel/bounce1 \"sounds/weapons/shrapnel/bounce1.wav\"\nweapons/shrapnel/bounce2 \"sounds/weapons/shrapnel/bounce2.wav\"\nweapons/shrapnel/hit \"sounds/weapons/shrapnel/hit.wav\"\nweapons/shrapnel/flesh \"sounds/weapons/shrapnel/flesh.wav\"\n$random weapons/shrapnel/bounce { weapons/shrapnel/bounce1 weapons/shrapnel/bounce2 }\n$volume weapons/shrapnel/bounce 0.25\n$volume weapons/shrapnel/hit 0.25\n$volume weapons/shrapnel/flesh 0.66\n$volume weapons/shrapnel/up 0.66\n\nweapons/nailgun/up \"sounds/weapons/nailgun/up.flac\"\nweapons/nailgun/fire \"sounds/weapons/nailgun/fire.flac\"\nweapons/nailgun/fly \"sounds/weapons/nailgun/fly.flac\"\nweapons/nailgun/hit \"sounds/weapons/nailgun/hit.wav\"\nweapons/nailgun/flesh \"sounds/weapons/nailgun/flesh.flac\"\n$volume weapons/nailgun/up 0.66\n\nweapons/grenade/up \"sounds/weapons/grenade/up.flac\"\nweapons/grenade/fire \"sounds/weapons/grenade/fire.flac\"\nweapons/grenade/bounce1 \"sounds/weapons/grenade/bounce1.flac\"\nweapons/grenade/bounce2 \"sounds/weapons/grenade/bounce2.flac\"\nweapons/grenade/explode \"sounds/weapons/grenade/explode.flac\"\n$random weapons/grenade/bounce { weapons/grenade/bounce1 weapons/grenade/bounce2 }\n$volume weapons/grenade/up 0.66\n$limit weapons/grenade/bounce 0\n$limit weapons/grenade/explode 0\n\nweapons/fusion/up \"sounds/weapons/fusion/up.flac\"\nweapons/fusion/fire \"sounds/weapons/fusion/fire.flac\"\nweapons/fusion/fly \"sounds/weapons/fusion/fly.flac\"\nweapons/fusion/hit \"sounds/weapons/fusion/hit.flac\"\nweapons/fusion/steam \"sounds/weapons/fusion/steam.flac\"\n$volume weapons/fusion/up 0.66\n$volume weapons/fusion/steam 0.66\n\nweapons/driver/up \"sounds/weapons/driver/up.flac\"\nweapons/driver/fire \"sounds/weapons/driver/fire.flac\"\nweapons/driver/hit \"sounds/weapons/driver/hit.flac\"\nweapons/driver/explode1 \"sounds/weapons/driver/explode1.wav\"\nweapons/driver/explode2 \"sounds/weapons/driver/explode2.wav\"\n$random weapons/driver/explode { weapons/driver/explode1 weapons/driver/explode2 }\n$volume weapons/driver/up 0.66\n$volume weapons/driver/fire 0.66\n$volume weapons/driver/explode 0.50\n$limit weapons/driver/hit 0\n$limit weapons/driver/explode 0\n\nweapons/bonesaw/up \"sounds/weapons/bonesaw/up.flac\"\n$volume weapons/bonesaw/up 0.66\n\n/* --- */\n\nenemies/zombie/active1 \"sounds/enemies/zombie/active1.ogg\"\nenemies/zombie/active2 \"sounds/enemies/zombie/active2.ogg\"\nenemies/zombie/attack \"sounds/weapons/machinegun/fire.flac\"\nenemies/zombie/pain \"sounds/enemies/zombie/pain.ogg\"\nenemies/zombie/death1 \"sounds/enemies/zombie/death1.ogg\"\nenemies/zombie/death2 \"sounds/enemies/zombie/death2.ogg\"\n$random enemies/zombie/active { enemies/zombie/active1 enemies/zombie/active2 }\n$random enemies/zombie/death { enemies/zombie/death1 enemies/zombie/death2 }\n\nenemies/birdman/sight1 \"sounds/enemies/birdman/sight1.ogg\"\nenemies/birdman/sight2 \"sounds/enemies/birdman/sight2.ogg\"\nenemies/birdman/active \"sounds/enemies/birdman/active.ogg\"\nenemies/birdman/pain \"sounds/enemies/birdman/pain.ogg\"\nenemies/birdman/death \"sounds/enemies/birdman/death.ogg\"\n$random enemies/birdman/sight { enemies/birdman/sight1 enemies/birdman/sight2 }\n\nenemies/faceless/sight \"sounds/enemies/faceless/sight.ogg\"\nenemies/faceless/active1 \"sounds/enemies/faceless/active1.ogg\"\nenemies/faceless/active2 \"sounds/enemies/faceless/active2.ogg\"\nenemies/faceless/attack \"sounds/enemies/faceless/attack.ogg\"\nenemies/faceless/pain1 \"sounds/enemies/faceless/pain1.ogg\"\nenemies/faceless/pain2 \"sounds/enemies/faceless/pain2.ogg\"\nenemies/faceless/death1 \"sounds/enemies/faceless/death1.ogg\"\nenemies/faceless/death2 \"sounds/enemies/faceless/death2.ogg\"\n$random enemies/faceless/active { enemies/faceless/active1 enemies/faceless/active2 }\n$random enemies/faceless/pain { enemies/faceless/pain1 enemies/faceless/pain2 }\n$random enemies/faceless/death { enemies/faceless/death1 enemies/faceless/death2 }\n\nenemies/gazer/attack \"sounds/enemies/gazer/attack.ogg\"\nenemies/gazer/attackx \"sounds/enemies/gazer/attackx.wav\"\nenemies/gazer/active \"sounds/enemies/gazer/active.ogg\"\nenemies/gazer/pain \"sounds/enemies/gazer/pain.ogg\"\nenemies/gazer/death \"sounds/enemies/gazer/death.ogg\""
},
{
"source": "pk3",
"name": "mapinfo.txt",
"contents": "/*\n * dead.air: mapinfo\n * (c) xaser 2016\n */\n\ngameinfo\n{\n\tplayerclasses = \"DedPlayer\"\n\tnorandomplayerclass = true\n\tdimcolor = \"00 00 00\"\n\tdimamount = \"0.8\"\n\tdefaultdropstyle = \"1\"\n\tpickupcolor = \"FF FF FF\"\n}\n\nmap MAP01 \"dead.air\"\n{\n\tnext = \"MAP01\"\n\tsecretnext = \"MAP01\"\n\tsky1 = \"SKYSPACE\", 0.0\n\tcluster = 5\n\tmusic = \"music/mad-labs.it\"\n\tsmoothlighting\n}\n\n// redefine skills to make nightmare just uv-fast, i.e. no respawning\n\nclearskills\n\nskill baby\n{\n\tAutoUseHealth\n\tAmmoFactor = 2\n\tDamageFactor = 0.5\n\tEasyBossBrain\n\tSpawnFilter = Baby\n\tPicName = \"M_JKILL\"\n\tName = \"$SKILL_BABY\"\n\tKey = \"i\"\n}\n\nskill easy\n{\n\tEasyBossBrain\n\tSpawnFilter = Easy\n\tPicName = \"M_ROUGH\"\n\tName = \"$SKILL_EASY\"\n\tKey = \"h\"\n}\n\nskill normal\n{\n\tSpawnFilter = Normal\n\tPicName = \"M_HURT\"\n\tKey = \"h\"\n\tName = \"$SKILL_NORMAL\"\n\tDefaultSkill\n}\n\nskill hard\n{\n\tSpawnFilter = Hard\n\tPicName = \"M_ULTRA\"\n\tName = \"$SKILL_HARD\"\n\tKey = \"u\"\n}\n\nskill nightmare\n{\n\tFastMonsters\n\tSpawnFilter = Nightmare\n\tPicName = \"M_NMARE\"\n\tName = \"$SKILL_NIGHTMARE\"\n\tKey = \"m\"\n}"
},
{
"source": "pk3",
"name": "gameinfo.txt",
"contents": "/*\n * dead.air: gameinfo\n * (c) xaser 2016\n */\n\nIWAD = \"DOOM2.WAD\"\nSTARTUPTITLE = \"dead.air\"\nSTARTUPCOLORS = \"000000\",\"FFFFFF\""
},
{
"source": "pk3",
"name": "language.txt",
"contents": "/*\n * dead.air: language defs (english)\n * (c) xaser 2016\n */\n\n[enu default]\n\nDED_TAG_BLASTER = \"Ion Blaster\";\nDED_TAG_MACHINEGUN = \"Machinegun\";\nDED_TAG_SHRAPNEL = \"Shrapnel Cannon\";\nDED_TAG_NAILGUN = \"Heavy Nailgun\";\nDED_TAG_GRENADE = \"Grenade Launcher\";\nDED_TAG_FUSION = \"Fusion Mortar\";\nDED_TAG_DRIVER = \"Antimatter Driver\";\nDED_TAG_BONESAW = \"The Bonesaw\";\n\nDED_GOT_BLASTER = \"You got the ion blaster!\";\nDED_GOT_MACHINEGUN = \"You got the machinegun!\";\nDED_GOT_SHRAPNEL = \"You got the shrapnel cannon!\";\nDED_GOT_NAILGUN = \"You got the heavy nailgun!\";\nDED_GOT_GRENADE = \"You got the grenade launcher!\";\nDED_GOT_FUSION = \"You got the fusion mortar!\";\nDED_GOT_DRIVER = \"You got the antimatter driver! Level the town!\";\nDED_GOT_BONESAW = \"You got the bonesaw! Carve some meat!\";\n\nDED_OB_BLASTER = \"%o was zapped by %k's ion blaster.\";\nDED_OB_MACHINEGUN = \"%o was pepperd by %k's machinegun.\";\nDED_OB_SHRAPNEL = \"%o was shredded by %k's shrapnel cannon.\";\nDED_OB_NAILGUN = \"%o was pinned by %k's heavy nailgun.\";\nDED_OB_GRENADE = \"%o was popped by %k's grenade launcher.\";\nDED_OB_FUSION = \"%o was sizzled by %k's fusion mortar.\";\nDED_OB_DRIVER = \"%o was disintegrated by %k's antimatter driver.\";\nDED_OB_BONESAW = \"%o was viscerally dissected by %k's bonesaw.\";\n\nDED_GOT_UPGRADE = \"Ion Blaster Upgrade! Kick it up a notch!\";\nDED_GOT_QUAD = \"Quad Damage!\";\n\nDED_OB_ZOMBIE = \"%o was KIA'd by a zombie soldier.\";\nDED_OB_BIRDMAN = \"%o was picked off by a birdman.\";\nDED_OB_BIRDMAN_H = \"%o was shredded by a birdman.\";\nDED_OB_NBIRDMAN = \"%o was terrorized by a nightmare birdman.\";\nDED_OB_NBIRDMAN_H = \"%o was splayed by a nightmare birdman.\";\nDED_OB_FACELESS = \"%o was spooked by a faceless demon.\";\nDED_OB_GAZER = \"%o was dead-eyed by a gazer.\";\nDED_OB_GAZER_H = \"%o was lost a staring contest to a gazer.\";\nDED_OB_GHOST = \"??? -- * / * _--?/??\";\n\nGOTYELWCARD = \"Picked up a green keycard.\";\nGOTYELWSKUL = \"Picked up a green skull key.\";\nPD_YELLOWO = \"You need a green key to activate this object\";\nPD_YELLOWK = \"You need a green key to open this door\";\nPD_YELLOWCO = \"You need a green card to activate this object\";\nPD_YELLOWSO = \"You need a green skull to activate this object\";\nPD_YELLOWC = \"You need a green card to open this door\";\nPD_YELLOWS = \"You need a green skull to open this door\";"
},
{
"source": "pk3",
"name": "loadacs.txt",
"contents": "NADES"
},
{
"source": "pk3",
"name": "animdefs.txt",
"contents": "/*\n * dead.air: animdefs\n * (c) xaser 2016\n */\n\nswitch zbrnsw1a on sound switches/normbutn pic zbrnsw1b tics 0\nswitch zbrnsw1a off sound switches/normbutn pic zbrnsw1a tics 0\nswitch zbrownf1 on sound switches/normbutn pic zbrownf2 tics 0\nswitch zbrownf2 on sound switches/normbutn pic zbrownf1 tics 0\nswitch zbrownf3 on sound switches/normbutn pic zbrownf4 tics 0\nswitch zbrownf4 on sound switches/normbutn pic zbrownf3 tics 0\nswitch zbrownf5 on sound switches/normbutn pic zbrownf6 tics 0\nswitch zbrownf6 on sound switches/normbutn pic zbrownf5 tics 0\n\ntexture XACOMB1A\n\tallowdecals\n\tpic XACOMB1A tics 20\n\tpic XACOMB1B tics 2\n\tpic XACOMB1C tics 2\n\tpic XACOMB1D tics 2\n\tpic XACOMB1E tics 2\n\tpic XACOMB1F tics 2\n\tpic XACOMB1G tics 2\n\tpic XACOMB1H tics 2\n\tpic XACOMB1I tics 2\n\tpic XACOMB1J tics 2\n\tpic XACOMB1K tics 2\n\tpic XACOMB1L tics 2\n\tpic XACOMB1M tics 2\n\tpic XACOMB1N tics 2\n\tpic XACOMB1M tics 2\n\tpic XACOMB1L tics 2\n\tpic XACOMB1K tics 2\n\tpic XACOMB1J tics 2\n\tpic XACOMB1I tics 2\n\tpic XACOMB1H tics 2\n\tpic XACOMB1G tics 2\n\tpic XACOMB1F tics 2\n\tpic XACOMB1E tics 2\n\tpic XACOMB1D tics 2\n\tpic XACOMB1C tics 2\n\tpic XACOMB1B tics 2\n\ntexture XACOMB2A\n\tallowdecals\n\tpic XACOMB2A tics 20\n\tpic XACOMB2B tics 2\n\tpic XACOMB2C tics 2\n\tpic XACOMB2D tics 2\n\tpic XACOMB2E tics 2\n\tpic XACOMB2F tics 2\n\tpic XACOMB2G tics 2\n\tpic XACOMB2H tics 2\n\tpic XACOMB2I tics 2\n\tpic XACOMB2J tics 2\n\tpic XACOMB2K tics 2\n\tpic XACOMB2L tics 2\n\tpic XACOMB2M tics 2\n\tpic XACOMB2N tics 2\n\tpic XACOMB2M tics 2\n\tpic XACOMB2L tics 2\n\tpic XACOMB2K tics 2\n\tpic XACOMB2J tics 2\n\tpic XACOMB2I tics 2\n\tpic XACOMB2H tics 2\n\tpic XACOMB2G tics 2\n\tpic XACOMB2F tics 2\n\tpic XACOMB2E tics 2\n\tpic XACOMB2D tics 2\n\tpic XACOMB2C tics 2\n\tpic XACOMB2B tics 2\n\ntexture XACOMB3A\n\tallowdecals\n\tpic XACOMB3A tics 20\n\tpic XACOMB3B tics 2\n\tpic XACOMB3C tics 2\n\tpic XACOMB3D tics 2\n\tpic XACOMB3E tics 2\n\tpic XACOMB3F tics 2\n\tpic XACOMB3G tics 2\n\tpic XACOMB3H tics 2\n\tpic XACOMB3I tics 2\n\tpic XACOMB3J tics 2\n\tpic XACOMB3K tics 2\n\tpic XACOMB3L tics 2\n\tpic XACOMB3M tics 2\n\tpic XACOMB3N tics 2\n\tpic XACOMB3M tics 2\n\tpic XACOMB3L tics 2\n\tpic XACOMB3K tics 2\n\tpic XACOMB3J tics 2\n\tpic XACOMB3I tics 2\n\tpic XACOMB3H tics 2\n\tpic XACOMB3G tics 2\n\tpic XACOMB3F tics 2\n\tpic XACOMB3E tics 2\n\tpic XACOMB3D tics 2\n\tpic XACOMB3C tics 2\n\tpic XACOMB3B tics 2\n\ntexture XACOMB4A\n\tallowdecals\n\tpic XACOMB4A tics 20\n\tpic XACOMB4B tics 2\n\tpic XACOMB4C tics 2\n\tpic XACOMB4D tics 2\n\tpic XACOMB4E tics 2\n\tpic XACOMB4F tics 2\n\tpic XACOMB4G tics 2\n\tpic XACOMB4H tics 2\n\tpic XACOMB4I tics 2\n\tpic XACOMB4J tics 2\n\tpic XACOMB4K tics 2\n\tpic XACOMB4L tics 2\n\tpic XACOMB4M tics 2\n\tpic XACOMB4N tics 2\n\tpic XACOMB4M tics 2\n\tpic XACOMB4L tics 2\n\tpic XACOMB4K tics 2\n\tpic XACOMB4J tics 2\n\tpic XACOMB4I tics 2\n\tpic XACOMB4H tics 2\n\tpic XACOMB4G tics 2\n\tpic XACOMB4F tics 2\n\tpic XACOMB4E tics 2\n\tpic XACOMB4D tics 2\n\tpic XACOMB4C tics 2\n\tpic XACOMB4B tics 2\n\ntexture XACIRCBA\n\tallowdecals\n\tpic XACIRCBA tics 20\n\tpic XACIRCBB tics 2\n\tpic XACIRCBC tics 2\n\tpic XACIRCBD tics 2\n\tpic XACIRCBE tics 2\n\tpic XACIRCBF tics 2\n\tpic XACIRCBG tics 2\n\tpic XACIRCBH tics 2\n\tpic XACIRCBI tics 2\n\tpic XACIRCBJ tics 2\n\tpic XACIRCBK tics 2\n\tpic XACIRCBL tics 2\n\tpic XACIRCBM tics 2\n\tpic XACIRCBN tics 2\n\tpic XACIRCBM tics 2\n\tpic XACIRCBL tics 2\n\tpic XACIRCBK tics 2\n\tpic XACIRCBJ tics 2\n\tpic XACIRCBI tics 2\n\tpic XACIRCBH tics 2\n\tpic XACIRCBG tics 2\n\tpic XACIRCBF tics 2\n\tpic XACIRCBE tics 2\n\tpic XACIRCBD tics 2\n\tpic XACIRCBC tics 2\n\tpic XACIRCBB tics 2\n\ntexture XACOMG1A\n\tallowdecals\n\tpic XACOMG1A tics 20\n\tpic XACOMG1B tics 2\n\tpic XACOMG1C tics 2\n\tpic XACOMG1D tics 2\n\tpic XACOMG1E tics 2\n\tpic XACOMG1F tics 2\n\tpic XACOMG1G tics 2\n\tpic XACOMG1H tics 2\n\tpic XACOMG1I tics 2\n\tpic XACOMG1J tics 2\n\tpic XACOMG1K tics 2\n\tpic XACOMG1L tics 2\n\tpic XACOMG1M tics 2\n\tpic XACOMG1N tics 2\n\tpic XACOMG1M tics 2\n\tpic XACOMG1L tics 2\n\tpic XACOMG1K tics 2\n\tpic XACOMG1J tics 2\n\tpic XACOMG1I tics 2\n\tpic XACOMG1H tics 2\n\tpic XACOMG1G tics 2\n\tpic XACOMG1F tics 2\n\tpic XACOMG1E tics 2\n\tpic XACOMG1D tics 2\n\tpic XACOMG1C tics 2\n\tpic XACOMG1B tics 2\n\ntexture XACOMG2A\n\tallowdecals\n\tpic XACOMG2A tics 20\n\tpic XACOMG2B tics 2\n\tpic XACOMG2C tics 2\n\tpic XACOMG2D tics 2\n\tpic XACOMG2E tics 2\n\tpic XACOMG2F tics 2\n\tpic XACOMG2G tics 2\n\tpic XACOMG2H tics 2\n\tpic XACOMG2I tics 2\n\tpic XACOMG2J tics 2\n\tpic XACOMG2K tics 2\n\tpic XACOMG2L tics 2\n\tpic XACOMG2M tics 2\n\tpic XACOMG2N tics 2\n\tpic XACOMG2M tics 2\n\tpic XACOMG2L tics 2\n\tpic XACOMG2K tics 2\n\tpic XACOMG2J tics 2\n\tpic XACOMG2I tics 2\n\tpic XACOMG2H tics 2\n\tpic XACOMG2G tics 2\n\tpic XACOMG2F tics 2\n\tpic XACOMG2E tics 2\n\tpic XACOMG2D tics 2\n\tpic XACOMG2C tics 2\n\tpic XACOMG2B tics 2\n\ntexture XACOMG3A\n\tallowdecals\n\tpic XACOMG3A tics 20\n\tpic XACOMG3B tics 2\n\tpic XACOMG3C tics 2\n\tpic XACOMG3D tics 2\n\tpic XACOMG3E tics 2\n\tpic XACOMG3F tics 2\n\tpic XACOMG3G tics 2\n\tpic XACOMG3H tics 2\n\tpic XACOMG3I tics 2\n\tpic XACOMG3J tics 2\n\tpic XACOMG3K tics 2\n\tpic XACOMG3L tics 2\n\tpic XACOMG3M tics 2\n\tpic XACOMG3N tics 2\n\tpic XACOMG3M tics 2\n\tpic XACOMG3L tics 2\n\tpic XACOMG3K tics 2\n\tpic XACOMG3J tics 2\n\tpic XACOMG3I tics 2\n\tpic XACOMG3H tics 2\n\tpic XACOMG3G tics 2\n\tpic XACOMG3F tics 2\n\tpic XACOMG3E tics 2\n\tpic XACOMG3D tics 2\n\tpic XACOMG3C tics 2\n\tpic XACOMG3B tics 2\n\ntexture XACOMG4A\n\tallowdecals\n\tpic XACOMG4A tics 20\n\tpic XACOMG4B tics 2\n\tpic XACOMG4C tics 2\n\tpic XACOMG4D tics 2\n\tpic XACOMG4E tics 2\n\tpic XACOMG4F tics 2\n\tpic XACOMG4G tics 2\n\tpic XACOMG4H tics 2\n\tpic XACOMG4I tics 2\n\tpic XACOMG4J tics 2\n\tpic XACOMG4K tics 2\n\tpic XACOMG4L tics 2\n\tpic XACOMG4M tics 2\n\tpic XACOMG4N tics 2\n\tpic XACOMG4M tics 2\n\tpic XACOMG4L tics 2\n\tpic XACOMG4K tics 2\n\tpic XACOMG4J tics 2\n\tpic XACOMG4I tics 2\n\tpic XACOMG4H tics 2\n\tpic XACOMG4G tics 2\n\tpic XACOMG4F tics 2\n\tpic XACOMG4E tics 2\n\tpic XACOMG4D tics 2\n\tpic XACOMG4C tics 2\n\tpic XACOMG4B tics 2\n\ntexture XACIRCGA\n\tallowdecals\n\tpic XACIRCGA tics 20\n\tpic XACIRCGB tics 2\n\tpic XACIRCGC tics 2\n\tpic XACIRCGD tics 2\n\tpic XACIRCGE tics 2\n\tpic XACIRCGF tics 2\n\tpic XACIRCGG tics 2\n\tpic XACIRCGH tics 2\n\tpic XACIRCGI tics 2\n\tpic XACIRCGJ tics 2\n\tpic XACIRCGK tics 2\n\tpic XACIRCGL tics 2\n\tpic XACIRCGM tics 2\n\tpic XACIRCGN tics 2\n\tpic XACIRCGM tics 2\n\tpic XACIRCGL tics 2\n\tpic XACIRCGK tics 2\n\tpic XACIRCGJ tics 2\n\tpic XACIRCGI tics 2\n\tpic XACIRCGH tics 2\n\tpic XACIRCGG tics 2\n\tpic XACIRCGF tics 2\n\tpic XACIRCGE tics 2\n\tpic XACIRCGD tics 2\n\tpic XACIRCGC tics 2\n\tpic XACIRCGB tics 2\n\ntexture XACOMR1A\n\tallowdecals\n\tpic XACOMR1A tics 20\n\tpic XACOMR1B tics 2\n\tpic XACOMR1C tics 2\n\tpic XACOMR1D tics 2\n\tpic XACOMR1E tics 2\n\tpic XACOMR1F tics 2\n\tpic XACOMR1G tics 2\n\tpic XACOMR1H tics 2\n\tpic XACOMR1I tics 2\n\tpic XACOMR1J tics 2\n\tpic XACOMR1K tics 2\n\tpic XACOMR1L tics 2\n\tpic XACOMR1M tics 2\n\tpic XACOMR1N tics 2\n\tpic XACOMR1M tics 2\n\tpic XACOMR1L tics 2\n\tpic XACOMR1K tics 2\n\tpic XACOMR1J tics 2\n\tpic XACOMR1I tics 2\n\tpic XACOMR1H tics 2\n\tpic XACOMR1G tics 2\n\tpic XACOMR1F tics 2\n\tpic XACOMR1E tics 2\n\tpic XACOMR1D tics 2\n\tpic XACOMR1C tics 2\n\tpic XACOMR1B tics 2\n\ntexture XACOMR2A\n\tallowdecals\n\tpic XACOMR2A tics 20\n\tpic XACOMR2B tics 2\n\tpic XACOMR2C tics 2\n\tpic XACOMR2D tics 2\n\tpic XACOMR2E tics 2\n\tpic XACOMR2F tics 2\n\tpic XACOMR2G tics 2\n\tpic XACOMR2H tics 2\n\tpic XACOMR2I tics 2\n\tpic XACOMR2J tics 2\n\tpic XACOMR2K tics 2\n\tpic XACOMR2L tics 2\n\tpic XACOMR2M tics 2\n\tpic XACOMR2N tics 2\n\tpic XACOMR2M tics 2\n\tpic XACOMR2L tics 2\n\tpic XACOMR2K tics 2\n\tpic XACOMR2J tics 2\n\tpic XACOMR2I tics 2\n\tpic XACOMR2H tics 2\n\tpic XACOMR2G tics 2\n\tpic XACOMR2F tics 2\n\tpic XACOMR2E tics 2\n\tpic XACOMR2D tics 2\n\tpic XACOMR2C tics 2\n\tpic XACOMR2B tics 2\n\ntexture XACOMR3A\n\tallowdecals\n\tpic XACOMR3A tics 20\n\tpic XACOMR3B tics 2\n\tpic XACOMR3C tics 2\n\tpic XACOMR3D tics 2\n\tpic XACOMR3E tics 2\n\tpic XACOMR3F tics 2\n\tpic XACOMR3G tics 2\n\tpic XACOMR3H tics 2\n\tpic XACOMR3I tics 2\n\tpic XACOMR3J tics 2\n\tpic XACOMR3K tics 2\n\tpic XACOMR3L tics 2\n\tpic XACOMR3M tics 2\n\tpic XACOMR3N tics 2\n\tpic XACOMR3M tics 2\n\tpic XACOMR3L tics 2\n\tpic XACOMR3K tics 2\n\tpic XACOMR3J tics 2\n\tpic XACOMR3I tics 2\n\tpic XACOMR3H tics 2\n\tpic XACOMR3G tics 2\n\tpic XACOMR3F tics 2\n\tpic XACOMR3E tics 2\n\tpic XACOMR3D tics 2\n\tpic XACOMR3C tics 2\n\tpic XACOMR3B tics 2\n\ntexture XACOMR4A\n\tallowdecals\n\tpic XACOMR4A tics 20\n\tpic XACOMR4B tics 2\n\tpic XACOMR4C tics 2\n\tpic XACOMR4D tics 2\n\tpic XACOMR4E tics 2\n\tpic XACOMR4F tics 2\n\tpic XACOMR4G tics 2\n\tpic XACOMR4H tics 2\n\tpic XACOMR4I tics 2\n\tpic XACOMR4J tics 2\n\tpic XACOMR4K tics 2\n\tpic XACOMR4L tics 2\n\tpic XACOMR4M tics 2\n\tpic XACOMR4N tics 2\n\tpic XACOMR4M tics 2\n\tpic XACOMR4L tics 2\n\tpic XACOMR4K tics 2\n\tpic XACOMR4J tics 2\n\tpic XACOMR4I tics 2\n\tpic XACOMR4H tics 2\n\tpic XACOMR4G tics 2\n\tpic XACOMR4F tics 2\n\tpic XACOMR4E tics 2\n\tpic XACOMR4D tics 2\n\tpic XACOMR4C tics 2\n\tpic XACOMR4B tics 2\n\ntexture XACIRCRA\n\tallowdecals\n\tpic XACIRCRA tics 20\n\tpic XACIRCRB tics 2\n\tpic XACIRCRC tics 2\n\tpic XACIRCRD tics 2\n\tpic XACIRCRE tics 2\n\tpic XACIRCRF tics 2\n\tpic XACIRCRG tics 2\n\tpic XACIRCRH tics 2\n\tpic XACIRCRI tics 2\n\tpic XACIRCRJ tics 2\n\tpic XACIRCRK tics 2\n\tpic XACIRCRL tics 2\n\tpic XACIRCRM tics 2\n\tpic XACIRCRN tics 2\n\tpic XACIRCRM tics 2\n\tpic XACIRCRL tics 2\n\tpic XACIRCRK tics 2\n\tpic XACIRCRJ tics 2\n\tpic XACIRCRI tics 2\n\tpic XACIRCRH tics 2\n\tpic XACIRCRG tics 2\n\tpic XACIRCRF tics 2\n\tpic XACIRCRE tics 2\n\tpic XACIRCRD tics 2\n\tpic XACIRCRC tics 2\n\tpic XACIRCRB tics 2"
},
{
"source": "pk3",
"name": "textures.txt",
"contents": "// Texture definitions generated by SLADE3\n// on Mon Sep 5 15:42:50 2016\n\nTexture XACOMB1B, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1C, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1D, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1E, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1F, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1G, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1H, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1I, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1J, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1K, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1L, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1M, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB1N, 128, 128\n{\n\tPatch XACOMB1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2B, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2C, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2D, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2E, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2F, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2G, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2H, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2I, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2J, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2K, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2L, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2M, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB2N, 128, 128\n{\n\tPatch XACOMB2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3B, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3C, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3D, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3E, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3F, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3G, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3H, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3I, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3J, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3K, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3L, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3M, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB3N, 128, 128\n{\n\tPatch XACOMB3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4B, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4C, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4D, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4E, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4F, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4G, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4H, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4I, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4J, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4K, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4L, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4M, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMB4N, 128, 128\n{\n\tPatch XACOMB4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1B, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1C, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1D, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1E, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1F, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1G, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1H, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1I, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1J, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1K, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1L, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1M, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG1N, 128, 128\n{\n\tPatch XACOMG1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2B, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2C, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2D, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2E, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2F, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2G, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2H, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2I, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2J, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2K, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2L, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2M, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG2N, 128, 128\n{\n\tPatch XACOMG2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3B, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3C, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3D, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3E, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3F, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3G, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3H, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3I, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3J, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3K, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3L, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3M, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG3N, 128, 128\n{\n\tPatch XACOMG3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4B, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4C, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4D, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4E, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4F, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4G, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4H, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4I, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4J, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4K, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4L, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4M, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMG4N, 128, 128\n{\n\tPatch XACOMG4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1B, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1C, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1D, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1E, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1F, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1G, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1H, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1I, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1J, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1K, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1L, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1M, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR1N, 128, 128\n{\n\tPatch XACOMR1A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2B, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2C, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2D, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2E, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2F, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2G, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2H, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2I, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2J, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2K, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2L, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2M, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR2N, 128, 128\n{\n\tPatch XACOMR2A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3B, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3C, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3D, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3E, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3F, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3G, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3H, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3I, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3J, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3K, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3L, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3M, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR3N, 128, 128\n{\n\tPatch XACOMR3A, 0, 0\n\tPatch XACMASK1, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4B, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4C, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4D, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4E, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4F, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4G, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4H, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4I, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4J, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4K, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4L, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4M, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACOMR4N, 128, 128\n{\n\tPatch XACOMR4A, 0, 0\n\tPatch XACMASK2, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBB, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBC, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBD, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBE, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBF, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBG, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBH, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBI, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBJ, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBK, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBL, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBM, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCBN, 64, 64\n{\n\tPatch XACIRCBA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGB, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGC, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGD, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGE, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGF, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGG, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGH, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGI, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGJ, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGK, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGL, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGM, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCGN, 64, 64\n{\n\tPatch XACIRCGA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRB, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.05\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRC, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.10\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRD, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.15\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRE, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.20\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRF, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.25\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRG, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.30\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRH, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.35\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRI, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.40\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRJ, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.45\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRK, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.50\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRL, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.55\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRM, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.60\n\t\tStyle Translucent\n\t}\n}\n\nTexture XACIRCRN, 64, 64\n{\n\tPatch XACIRCRA, 0, 0\n\tPatch ALLBLACK, 0, 0\n\t{\n\t\tAlpha 0.65\n\t\tStyle Translucent\n\t}\n}\n\n// End of texture definitions"
},
{
"source": "pk3",
"name": "actors/base.txt",
"contents": "/*\n * dead.air: base defs\n * (c) xaser 2016\n */\n\nACTOR DedTrail\n{\n\t-RANDOMIZE\n\t+NOBLOCKMONST\n\t+NOTELEPORT\n\t+FORCEXYBILLBOARD\n\t+NOBLOCKMAP\n\t+NOGRAVITY\n\t+THRUACTORS\n}\n\nACTOR DedTrailNoPhysics\n{\n\t+NOINTERACTION\n}\n\nACTOR DedDrop: DedTrail\n{\n\tProjectile\n\t-NOGRAVITY\n\tDamage 0\n\tSpeed 0\n}\n\nACTOR DedPuff\n{\n\t+NOGRAVITY\n\t+PUFFGETSOWNER\n\t+PUFFONACTORS\n}\n\nACTOR DedToken : Inventory\n{\n\t+INVENTORY.UNDROPPABLE\n}\n\nACTOR DedNothing\n{\n\t+NOINTERACTION\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/player.txt",
"contents": "/*\n * dead.air: player def\n * (c) xaser 2016\n */\n\nACTOR DedPlayer : DoomPlayer\n{\n\tPlayer.DisplayName \"Joel Dedman\"\n\tPlayer.StartItem \"DedBlaster\"\n\tPlayer.WeaponSlot 1, DedBlaster\n\tPlayer.WeaponSlot 2, DedMachinegun\n\tPlayer.WeaponSlot 3, DedShrapnelCannon\n\tPlayer.WeaponSlot 4, DedNailgun\n\tPlayer.WeaponSlot 5, DedGrenadeLauncher\n\tPlayer.WeaponSlot 6, DedFusionMortar\n\tPlayer.WeaponSlot 7, DedAntimatterDriver\n\tPlayer.WeaponSlot 8, DedBonesaw\n}"
},
{
"source": "pk3",
"name": "actors/items/upgrade.txt",
"contents": "/*\n * dead.air: ion blaster upgrade\n * (c) xaser 2016\n */\n\nACTOR DedBlasterUpgrade : CustomInventory replaces Berserk\n{\n\tInventory.PickupMessage \"$DED_GOT_UPGRADE\"\n\tInventory.PickupSound \"misc/w_pkup\"\n\n\t+COUNTITEM\n\t+ALWAYSPICKUP\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLSP A -1\n\t\tStop\n\tPickup:\n\t\tTNT1 A 0 A_GiveInventory(\"DedBlasterUpgradeToken\", 1)\n\t\tTNT1 A 0 A_SelectWeapon(\"DedBlaster\")\n\t\tTNT1 A 0 A_ChangeFlag(\"ACTLIKEBRIDGE\", 0) // always return success\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/base.txt",
"contents": "/*\n * dead.air: base weapon def\n * (c) xaser 2016\n */\n\nACTOR DedWeapon : DoomWeapon\n{\n//\tInventory.PickupSound \"items/weapon\"\n\tWeapon.BobStyle \"InverseSmooth\"\n\tWeapon.BobSpeed 2.00\n\tWeapon.BobRangeX 0.75\n\tWeapon.BobRangeY 0.50\n\tWeapon.SelectionOrder 9999999\n\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 1\n\t\tStop\n\tReady:\n\t\tTNT1 A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\tSelectLoop:\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\t\"####\" \"#\" 0 A_Raise\n\t\t\"####\" \"#\" 1 A_Raise\n\t\tWait\n\tDeselect:\n\tDeselectLoop:\n\t\t\"####\" \"##\" 1 A_Lower\n\tDeselectLoopX:\n\t\t\"####\" \"#\" 0 A_Lower\n\t\t\"####\" \"#\" 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tTNT1 A 1\n\t\tGoto Ready\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/blaster.txt",
"contents": "/*\n * dead.air: ion blaster\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedBlaster : DedWeapon replaces Pistol\n{\n\tWeapon.UpSound \"weapons/blaster/up\"\n\tWeapon.SelectionOrder 7\n\tInventory.PickupMessage \"$DED_GOT_BLASTER\"\n\tTag \"$DED_TAG_BLASTER\"\n\tObituary \"$DED_OB_BLASTER\"\n\n\t+WEAPON.WIMPY_WEAPON\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLSP A -1\n\t\tStop\n\tReady:\n\t\tBLSG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tBLSG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tBLSG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tBLS1 A 0 A_JumpIfInventory(\"DedBlasterUpgradeToken\", 1, \"Fire2\")\n\t\tBLS1 A 0 A_FireCustomMissile(\"DedBlasterShot1\", 0, 1)\n\t\tBLS1 A 0 A_PlaySound(\"weapons/blaster/fire1\", CHAN_WEAPON)\n\t\tGoto FireAnim\n\tFire2:\n\t\tBLS2 A 0 A_JumpIfInventory(\"DedBlasterUpgradeToken\", 2, \"Fire3\")\n\t\tBLS2 A 0 A_FireCustomMissile(\"DedBlasterShot2\", 0, 1)\n\t\tBLS2 A 0 A_PlaySound(\"weapons/blaster/fire2\", CHAN_WEAPON)\n\t\tGoto FireAnim\n\tFire3:\n\t\tBLS3 A 0 A_JumpIfInventory(\"DedBlasterUpgradeToken\", 3, \"Fire4\")\n\t\tBLS3 A 0 A_FireCustomMissile(\"DedBlasterShot3\", 0, 1)\n\t\tBLS3 A 0 A_PlaySound(\"weapons/blaster/fire3\", CHAN_WEAPON)\n\t\tGoto FireAnim\n\tFire4:\n\t\tBLS4 A 0 A_JumpIfInventory(\"DedBlasterUpgradeToken\", 4, \"Fire5\")\n\t\tBLS4 A 0 A_FireCustomMissile(\"DedBlasterShot4\", 0, 1)\n\t\tBLS4 A 0 A_PlaySound(\"weapons/blaster/fire4\", CHAN_WEAPON)\n\t\tGoto FireAnim\n\tFire5:\n\t\tBLS5 A 0 A_JumpIfInventory(\"DedBlasterUpgradeToken\", 5, \"Fire6\")\n\t\tBLS5 A 0 A_FireCustomMissile(\"DedBlasterShot5\", 0, 1)\n\t\tBLS5 A 0 A_PlaySound(\"weapons/blaster/fire5\", CHAN_WEAPON)\n\t\tGoto FireAnim\n\tFire6:\n\t\tBLS6 A 0 A_FireCustomMissile(\"DedBlasterShot6\", 0, 1)\n\t\tBLS6 A 0 A_PlaySound(\"weapons/blaster/fire6\", CHAN_WEAPON)\n\tFireAnim:\n\t\t\"####\" A 0 A_PlaySound(\"weapons/blaster/firex\", CHAN_5)\n\t\t\"####\" A 1 Bright Offset( 0, 30) A_GunFlash\n\t\t\"####\" A 1 Bright Offset( 0, 26)\n\t\t\"####\" B 1 Bright Offset( 0, 24)\n\t\t\"####\" C 1 Bright Offset( 0, 28)\n\t\t\"####\" D 1 Offset( 0, 32)\n\t\t BLSG B 1 Offset( 0, 40)\n\t\t BLSG C 1 Offset( 0, 42)\n\t\t BLSG C 1 Offset( 0, 40)\n\t\t BLSG B 1 Offset( 0, 38)\n\t\t BLSG A 1 Offset( 0, 36)\n\t\t BLSG A 1 Offset( 0, 34)\n\t\t BLSG A 1 Offset( 0, 33) A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedBlasterUpgradeToken : DedToken { Inventory.MaxAmount 5 }\n\nACTOR DedBlasterShot1 : FastProjectile {\n\tRadius 8\n\tHeight 16\n\tSpeed 50\n\tScale 0.66\n\tRenderStyle Add\n\tDecal \"PlasmaScorchLower\"\n\tDeathSound \"weapons/blaster/hit\"\n\tDamageType \"DedBlaster\"\n\tMissileType \"DedBlasterTrail1\"\n\tMissileHeight 8\n\n\tDamage (5*random(1,3)) // same as a Doom hitscan bullet\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP1 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP1 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterShot2 : DedBlasterShot1 {\n\tMissileType \"DedBlasterTrail2\"\n\tDamage (10*random(1,3))\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP2 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP2 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterShot3 : DedBlasterShot1 {\n\tMissileType \"DedBlasterTrail3\"\n\tDamage (16*random(1,3))\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP3 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP3 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterShot4 : DedBlasterShot1 {\n\tMissileType \"DedBlasterTrail4\"\n\tDamage (24*random(1,3))\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP4 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP4 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterShot5 : DedBlasterShot1 {\n\tMissileType \"DedBlasterTrail5\"\n\tDamage (32*random(1,3))\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP5 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP5 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterShot6 : DedBlasterShot1 {\n\tMissileType \"DedBlasterTrail6\"\n\tDamage (48*random(1,3))\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP6 AB 3 Bright\n\t\tLoop\n\tDeath:\n\t\tBLP6 CDE 3 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail1 : DedTrail {\n\tRenderStyle Add\n\tAlpha 0.5\n\tScale 0.66\n\n\tStates\n\t{\n\tSpawn:\n\t\tBLP1 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail2 : DedBlasterTrail1 {\n\tStates\n\t{\n\tSpawn:\n\t\tBLP2 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail3 : DedBlasterTrail1 {\n\tStates\n\t{\n\tSpawn:\n\t\tBLP3 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail4 : DedBlasterTrail1 {\n\tStates\n\t{\n\tSpawn:\n\t\tBLP4 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail5 : DedBlasterTrail1 {\n\tStates\n\t{\n\tSpawn:\n\t\tBLP5 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}\n\nACTOR DedBlasterTrail6 : DedBlasterTrail1 {\n\tStates\n\t{\n\tSpawn:\n\t\tBLP6 AABBB 1 Bright A_FadeOut(0.1)\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/machinegun.txt",
"contents": "/*\n * dead.air: machinegun\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedMachinegun : DedWeapon replaces Shotgun\n{\n\tWeapon.UpSound \"weapons/machinegun/up\"\n\tWeapon.SelectionOrder 6\n\tWeapon.AmmoType \"Clip\"\n\tWeapon.AmmoGive 20\n\tWeapon.AmmoUse 1\n\tInventory.PickupMessage \"$DED_GOT_MACHINEGUN\"\n\tTag \"$DED_TAG_MACHINEGUN\"\n\tObituary \"$DED_OB_MACHINEGUN\"\n\tDamageType \"DedMachinegun\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tMEKP A -1\n\t\tStop\n\tReady:\n\t\tMEKG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tMEKG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tMEKG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tMEKF A 0 Bright A_GunFlash\n\t\tMEKF A 0 Bright A_FireBullets(2.5, 1, 1, 5, \"DedMachinegunPuff\")\n\t\tMEKF A 0 Bright A_PlaySound(\"weapons/machinegun/fire\" , CHAN_WEAPON, 0.66)\n\t\tMEKF A 0 Bright A_PlaySound(\"weapons/machinegun/firex\", CHAN_5)\n\t\tMEKF A 1 Bright Offset( 0, 34) A_Jump(128, \"FireAlt\")\n\t\tMEKF B 1 Bright Offset(-1, 36)\n\t\tMEKG A 1 Offset(-1, 35)\n\t\tGoto FireDone\n\tFireAlt:\n\t\tMEKF A 1 Bright Offset( 0, 34)\n\t\tMEKF B 1 Bright Offset( 1, 36)\n\t\tMEKG A 1 Offset( 1, 35)\n\tFireDone:\n\t\tMEKG A 0 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH | WRF_NOBOB) // reset offsets\n\t\tMEKG A 1 Offset( 0, 34) A_Refire\n\t\tMEKG A 1 Offset( 0, 33)\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedMachinegunPuff : BulletPuff\n{\n\tDecal \"BulletChip\"\n}"
},
{
"source": "pk3",
"name": "actors/weapons/shrapnel.txt",
"contents": "/*\n * dead.air: shrapnel cannon\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedShrapnelCannon : DedWeapon replaces SuperShotgun\n{\n\tWeapon.UpSound \"weapons/shrapnel/up\"\n\tWeapon.SelectionOrder 5\n\tWeapon.AmmoType \"Shell\"\n\tWeapon.AmmoGive 8\n\tWeapon.AmmoUse 1\n\tInventory.PickupMessage \"$DED_GOT_SHRAPNEL\"\n\tTag \"$DED_TAG_SHRAPNEL\"\n\tObituary \"$DED_OB_SHRAPNEL\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tSHRP A -1\n\t\tStop\n\tReady:\n\t\tSHRG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tSHRG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tSHRG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tSHRF A 0 Bright A_GunFlash\n\t\tSHRF A 0 Bright A_PlaySound(\"weapons/shrapnel/fire\", CHAN_WEAPON)\n\t\tSHRF AAAA 0 Bright A_FireCustomMissile(\"DedShrapnel\", frandom(- 5, 5), 0, 0, 0, FPF_NOAUTOAIM, frandom(0, 7.5))\n\t\tSHRF AAAA 0 Bright A_FireCustomMissile(\"DedShrapnel\", frandom(- 6, 6), 0, 0, 0, FPF_NOAUTOAIM, frandom(0, 7.0))\n\t\tSHRF AAAA 0 Bright A_FireCustomMissile(\"DedShrapnel\", frandom(- 7, 7), 0, 0, 0, FPF_NOAUTOAIM, frandom(0, 6.5))\n\t\tSHRF AAAA 0 Bright A_FireCustomMissile(\"DedShrapnel\", frandom(- 9, 9), 0, 0, 0, FPF_NOAUTOAIM, frandom(0, 6.0))\n\t\tSHRF A 1 Bright A_FireCustomMissile(\"DedShrapnel\", frandom(-10, 10), 1, 0, 0, FPF_NOAUTOAIM, frandom(0, 5.5))\n\t\tSHRF A 1 Bright Offset(0, 34)\n\t\tSHRF B 1 Bright Offset(0, 38)\n\t\tSHRF B 1 Bright Offset(0, 44)\n\t\tSHRG A 1 Offset(0, 48)\n\t\tSHRG A 1 Offset(0, 49)\n\t\tSHRG A 1 Offset(0, 47)\n\t\tSHRG A 1 Offset(0, 45)\n\t\tSHRG B 1 Offset(0, 42)\n\t\tSHRG B 1 Offset(0, 40)\n\t\tSHRG C 1 Offset(0, 39)\n\t\tSHRG C 1 Offset(0, 38)\n\t\tSHRG C 4 Offset(0, 37)\n\t\tSHRG D 1 Offset(0, 38)\n\t\tSHRG D 1 Offset(0, 39)\n\t\tSHRG E 1 Offset(0, 37)\n\t\tSHRG E 1 Offset(0, 35)\n\t\tSHRG F 1 Offset(0, 33)\n\t\tSHRG F 1 Offset(0, 32)\n\t\tSHRG A 8\n\t\tSHRG A 0 A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 2 Bright A_Light1\n\t\tTNT1 A 2 Bright A_Light2\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedShrapnel\n{\n\tProjectile\n\tHeight 4\n\tRadius 2\n\tDamage (5*random(1,3)) // same as a Doom hitscan bullet\n\tSpeed 50\n\tDecal \"BulletChip\"\n\tDamageType \"DedShrapnelGun\"\n\tGravity 0.66\n\n\tBounceType \"Doom\"\n\tBounceFactor 0.66\n\tBounceSound \"weapons/shrapnel/bounce\"\n\tDeathSound \"weapons/shrapnel/hit\"\n\n\t+BLOODSPLATTER\n\t-NOGRAVITY\n\n\tStates\n\t{\n\tSpawn:\n\t\tSFRG ABCDABCDEFGHEFGH 1 Bright\n\tSpawnLoop:\n\t\tSFRG IJKL 1 Bright\n\t\tLoop\n\tDeath:\n\t\tSFRG GKO 2 Bright\n\t\tSFRG S 100 Bright\n\t\tSFRG S 1 Bright A_FadeOut(0.02)\n\t\tWait\n\tXDeath:\n\t\tTNT1 A 0 A_PlaySound(\"weapons/shrapnel/flesh\")\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/nailgun.txt",
"contents": "/*\n * dead.air: heavy nailgun\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedNailgun : DedWeapon replaces Chaingun\n{\n\tWeapon.UpSound \"weapons/nailgun/up\"\n\tWeapon.SelectionOrder 4\n\tWeapon.AmmoType \"Clip\"\n\tWeapon.AmmoGive 40\n\tWeapon.AmmoUse 2\n\tInventory.PickupMessage \"$DED_GOT_NAILGUN\"\n\tTag \"$DED_TAG_NAILGUN\"\n\tObituary \"$DED_OB_NAILGUN\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tNAIP A -1\n\t\tStop\n\tReady:\n\t\tNAIG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tNAIG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tNAIG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tNAIF A 0 Bright A_GunFlash\n\t\tNAIF A 0 Bright A_PlaySound(\"weapons/nailgun/fire\", CHAN_WEAPON)\n\t\tNAIF A 0 Bright A_CheckForReload(2, \"FireAlt\")\n\t\tNAIF A 1 Bright Offset( 0, 33) A_FireCustomMissile(\"DedNail\", 0, 1, -8)\n\t\tNAIF B 1 Bright Offset(-1, 36) A_ResetReloadCounter\n\t\tNAIG A 1 Offset(-1, 35)\n\t\tGoto FireDone\n\tFireAlt:\n\t\tNAIF C 1 Bright Offset( 0, 33) A_FireCustomMissile(\"DedNail\", 0, 1, 8)\n\t\tNAIF D 1 Bright Offset( 1, 36)\n\t\tNAIG A 1 Bright Offset( 1, 35)\n\tFireDone:\n\t\tNAIG A 0 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH | WRF_NOBOB) // reset offsets\n\t\tNAIG A 1 Offset( 0, 34)\n\t\tNAIG A 1 Offset( 0, 33) A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedNail : FastProjectile\n{\n\tRadius 4\n\tHeight 8\n\tSpeed 40\n\tDamage (10*random(1,3)) // two doom bullets\n\tProjectile\n\tScale 0.75\n\tDamageType \"DedNailgun\"\n\tMissileType \"DedNailTrail\"\n\tMissileHeight 8\n\tDecal \"BulletChip\"\n\n\t+THRUACTORS\n\t+NODAMAGETHRUST\n\t+BLOODSPLATTER\n\n\tvar int user_xvel;\n\tvar int user_yvel;\n\tvar int user_zvel;\n\n\tStates\n\t{\n\tSpawn:\n\t\tNAIL A 0\n\t\tNAIL A 0 A_PlaySound(\"weapons/nailgun/fly\", CHAN_VOICE, 1.0, 1)\n\t\tNAIL A 0 A_SetUserVar(\"user_xvel\", velx)\n\t\tNAIL A 0 A_SetUserVar(\"user_yvel\", vely)\n\t\tNAIL A 0 A_SetUserVar(\"user_zvel\", velz)\n\t\tNAIL A 0 A_Jump(256, \"Fly\")\n\tFly:\n\t\tNAIL A -1 A_ChangeFlag(\"THRUACTORS\",0)\n\t\tStop\n\tDeath:\n\tCrash:\n\t\tNAIL B 0 A_SetTranslucent(1.0, 1)\n\t\tNAIL B 2 A_PlaySound(\"weapons/nailgun/hit\", CHAN_VOICE)\n\t\tNAIL CDEFG 2\n\t\tStop\n\tXDeath:\n\t\tTNT1 A 0 A_PlaySound(\"weapons/nailgun/flesh\", CHAN_VOICE)\n\tSpawnSubNail:\n\t\tTNT1 A 1 A_SpawnItemEx(\"DedSubNail\",0,0,0,user_xvel,user_yvel,user_zvel,angle,SXF_ABSOLUTEANGLE | SXF_ABSOLUTEMOMENTUM | SXF_NOCHECKPOSITION | SXF_TRANSFERPOINTERS)\n\t\tStop\n\t}\n}\n\nACTOR DedSubNail : DedNail\n{\n\tSeeSound \"\"\n\n\tStates\n\t{\n\tFly:\n\t\tNAIL A 1\n\t\tNAIL A 0 A_ChangeFlag(\"THRUACTORS\",0)\n\t\tNAIL AAAAAA 1 A_SpawnItemEx(\"DedNailBlood\", frandom(-0.1,0.1), 0, frandom(-0.1,0.1))\n\t\tNAIL A -1\n\t\tStop\n\tXDeath:\n\t\tTNT1 A 0 A_PlaySound(\"weapons/nailgun/flesh\")\n\t\tStop\n\t}\n}\n\nACTOR DedNailBlood : Blood\n{\n\tScale 0.5\n\tGravity 0.5\n}\n\nACTOR DedNailTrail : DedTrail\n{\n\tAlpha 0.25\n\tScale 0.5\n\tRenderStyle Add\n\n\tStates\n\t{\n\tSpawn:\n\t\tNTRL IACEG 1 BRIGHT\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/grenade.txt",
"contents": "/*\n * dead.air: grenade launcher\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedGrenadeLauncher : DedWeapon replaces RocketLauncher\n{\n\tWeapon.UpSound \"weapons/grenade/up\"\n\tWeapon.SelectionOrder 4\n\tWeapon.AmmoType \"RocketAmmo\"\n\tWeapon.AmmoGive 5\n\tWeapon.AmmoUse 1\n\tInventory.PickupMessage \"$DED_GOT_GRENADE\"\n\tTag \"$DED_TAG_GRENADE\"\n\tObituary \"$DED_OB_GRENADE\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tGRNP A -1\n\t\tStop\n\tReady:\n\t\tGRNG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tGRNG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tGRNG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tGRNF A 0 Bright A_GunFlash\n\t\tGRNF A 0 Bright A_PlaySound(\"weapons/grenade/fire\", CHAN_WEAPON)\n\t\tGRNF A 1 Bright A_FireCustomMissile(\"DedNade\", 0, 1, 0, -8, FPF_AIMATANGLE, 10)\n\t\tGRNF A 1 Bright Offset(0, 34)\n\t\tGRNF B 1 Bright Offset(0, 38)\n\t\tGRNF B 1 Bright Offset(0, 44)\n\t\tGRNF C 1 Bright Offset(0, 48)\n\t\tGRNF C 1 Bright Offset(0, 49)\n\t\tGRNF D 1 Bright Offset(0, 47)\n\t\tGRNF D 1 Bright Offset(0, 45)\n\t\tGRNF E 1 Offset(0, 42)\n\t\tGRNF E 1 Offset(0, 40)\n\t\tGRNG A 1 Offset(0, 38)\n\t\tGRNG A 1 Offset(0, 36)\n\t\tGRNG A 1 Offset(0, 34)\n\t\tGRNG A 1 Offset(0, 33)\n\t\tGRNG A 6 Offset(0, 32)\n\t\tGRNG A 0 A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 2 Bright A_Light1\n\t\tTNT1 A 2 Bright A_Light2\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\n// Special thanks to Ijon Tichy for the awesome WTFPL quake 'nade physics [from Samsara]\nACTOR DedNade\n{\n\tRadius 4\n\tHeight 4\n\tSpeed 24\n\tProjectile\n\tDamageType \"DedGrenadeLauncher\"\n\tGravity 0.6\n\tBounceFactor 0.3\n\t+BOUNCEONWALLS\n\t+BOUNCEONFLOORS\n\t+BOUNCEONCEILINGS\n\t+CANBOUNCEWATER\n\t+RANDOMIZE\n\t+MOVEWITHSECTOR\n\t-NOGRAVITY\n\tReactionTime 92\n\tBounceSound \"weapons/grenade/bounce\"\n\tDeathSound \"weapons/grenade/explode\"\n\tStates\n\t{\n\tSpawn:\n\t\tGREN A 0 NoDelay A_Recoil(-1) // to stop the \"freeze in midair\" bug from happening\n\tSpawnLoop:\n\t\tGREN A 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN A 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN A 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN B 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN B 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN B 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN C 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN C 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN C 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN D 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN D 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN D 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN E 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN E 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN E 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN F 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN F 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN F 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN G 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN G 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN G 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN H 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN H 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tGREN H 1 A_JumpIf(CallACS(\"NadeCheck\", momx, momy, momz) < 1, \"StopSpawnStart\") GREN A 0 A_Countdown\n\t\tLoop\n\tStopSpawnStart:\n\t\tGREN A 0 A_Jump(128, 1)\n\t\tGoto StopSpawn\n\t\tGREN E 0\n\tStopSpawn:\n\t\tGREN \"#\" 1 A_Stop\n\t\tGREN \"#\" 0 A_Countdown\n\t\tLoop\n\tDeath:\n\t\tGEXP A 0 Bright A_SetTranslucent(1.0, 1)\n\t\tGEXP A 0 Bright A_Explode(64, 128, 0, 0, 32)\n\t\tGEXP A 0 Bright A_Explode(64, 128, 1, 0, 32)\n\t\tGEXP A 2 Bright A_NoGravity\n\t\tGEXP BCDEFGHIJKL 2 Bright\n\t\tStop\n\t}\n}"
},
{
"source": "pk3",
"name": "actors/weapons/fusion.txt",
"contents": "/*\n * dead.air: fusion mortar\n * sprites by RNG Breadbug\n * code (c) xaser 2016\n */\n\nACTOR DedFusionMortar : DedWeapon replaces PlasmaRifle\n{\n\tWeapon.UpSound \"weapons/fusion/up\"\n\tWeapon.SelectionOrder 3\n\tWeapon.AmmoType \"Cell\"\n\tWeapon.AmmoGive 40\n\tWeapon.AmmoUse 10\n\tInventory.PickupMessage \"$DED_GOT_FUSION\"\n\tTag \"$DED_TAG_FUSION\"\n\tObituary \"$DED_OB_FUSION\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tFUSP A -1\n\t\tStop\n\tReady:\n\t\tFUSG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tFUSG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tFUSG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tFUSF A 0 Bright A_GunFlash\n\t\tFUSF A 0 Bright A_PlaySound(\"weapons/fusion/fire\" , CHAN_WEAPON)\n\t\tFUSF A 1 Bright A_FireCustomMissile(\"DedFusionShot\", 0, 1)\n\t\tFUSF A 1 Bright Offset(0, 34)\n\t\tFUSF B 1 Bright Offset(0, 38)\n\t\tFUSF B 1 Bright Offset(0, 39)\n\t\tFUSF C 1 Bright Offset(0, 37)\n\t\tFUSF C 1 Bright Offset(0, 35) A_PlaySound(\"weapons/fusion/steam\", CHAN_5)\n\t\tFUSG A 1 Offset(0, 34)\n\t\tFUSG A 1 Offset(0, 33)\n\t\tFUSG A 6 Offset(0, 32)\n\t\tFUSG B 1\n\t\tFUSG B 1 Offset( 0, 32)\n\t\tFUSG C 1 Offset(-1, 33)\n\t\tFUSG C 1 Offset(-2, 34)\n\t\tFUSG D 1 Bright Offset(-4, 35)\n\t\tFUSG D 1 Bright Offset(-6, 36)\n\t\tFUSG E 1 Bright Offset(-7, 37)\n\t\tFUSG E 1 Bright\n\t\tFUSG F 1 Bright Offset(-6, 36)\n\t\tFUSG F 1 Bright Offset(-5, 35)\n\t\tFUSG G 1 Offset(-4, 34)\n\t\tFUSG G 1 Offset(-3, 33)\n\t\tFUSG H 1 Offset(-2, 33)\n\t\tFUSG H 1 Offset(-1, 32)\n\t\tFUSG A 4 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH | WRF_NOBOB) // reset offsets\n\t\tFUSG A 0 A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 2 Bright A_Light1\n\t\tTNT1 A 2 Bright A_Light2\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedFusionShot\n{\n\tRadius 4\n\tHeight 4\n\tSpeed 15\n\tProjectile\n\tDamageType \"DedFusionMortar\"\n\tSeeSound \"weapons/fusion/fly\"\n\tDeathSound \"weapons/fusion/hit\"\n\tRenderStyle Add\n\tAlpha 1.0\n\tDecal \"Scorch\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tFUSS ABCD 1 Bright A_SpawnItemEx(\"DedFusionTrailSmall\", frandom(-8, 8), 0, frandom(-8, 8))\n\t\tFUSS E 0 Bright A_Explode( 50, 160, 0, 0, 160)\n\t\tFUSS EDCB 1 Bright A_SpawnItemEx(\"DedFusionTrailSmall\", frandom(-8, 8), 0, frandom(-8, 8))\n\t\tLoop\n\tDeath:\n\t\tFUSE A 0 Bright A_Explode(100, 160, 0, 0, 160)\n\t\tFUSE AABBCCDDEE 2 Bright A_SpawnItemEx(\"DedFusionTrail\", frandom(-32, 32), frandom(-32, 32), frandom(-32, 32)) // causes crash?\n\t\tStop\n\t}\n}\n\nACTOR DedFusionTrail : DedTrail\n{\n\t+NOINTERACTION\n\tRenderStyle Add\n\tAlpha 1.0\n\tScale 0.5\n\tStates\n\t{\n\tSpawn:\n\t\tFUSE ABCDE 2 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedFusionTrailSmall : DedFusionTrail\n{\n\tAlpha 0.5\n\tScale 0.5\n}"
},
{
"source": "pk3",
"name": "actors/weapons/driver.txt",
"contents": "/*\n * dead.air: antimatter driver\n * sprites by RNG Breadbug\n * explosions thanks to rf` (ravage)\n * code (c) xaser 2016\n */\n\nACTOR DedAntimatterDriver : DedWeapon replaces BFG9000\n{\n\tWeapon.UpSound \"weapons/driver/up\"\n\tWeapon.SelectionOrder 1\n\tWeapon.AmmoType \"Shell\"\n\tWeapon.AmmoGive 20\n\tWeapon.AmmoUse 4\n\tInventory.PickupMessage \"$DED_GOT_DRIVER\"\n\tTag \"$DED_TAG_DRIVER\"\n\tObituary \"$DED_OB_DRIVER\"\n\tAttackSound \"weapons/driver/fire\"\n\n\tStates\n\t{\n\tSpawn:\n\t\tDRVP A -1\n\t\tStop\n\tReady:\n\t\tDRVG A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tDRVG A 0\n\t\tGoto SelectLoop\n\tDeselect:\n\t\tDRVG A 0\n\t\tGoto DeselectLoop\n\tFire:\n\t\tDRVF A 0 Bright A_GunFlash\n\t\tDRVF A 0 Bright A_Recoil(10)\n\t\tDRVF A 0 Bright A_PlaySound(\"weapons/driver/fire\", CHAN_WEAPON)\n\t\tDRVF A 1 Bright A_FireBullets(0, 0, 1, 50*frandom(1,8), \"DedDriverPuff\", FBF_USEAMMO | FBF_NORANDOM)\n\t\tDRVF A 1 Bright Offset(0, 36)\n\t\tDRVG B 1 Offset(0, 44)\n\t\tDRVG C 1 Offset(0, 52)\n\t\tDRVG D 1 Offset(0, 54)\n\t\tDRVG E 1 Offset(0, 55)\n\t\tDRVG F 1 Offset(0, 56)\n\t\tDRVG F 1 Offset(0, 57)\n\t\tDRVG F 1 Offset(0, 56)\n\t\tDRVG E 1 Offset(0, 55)\n\t\tDRVG D 1 Offset(0, 54)\n\t\tDRVG C 1 Offset(0, 51)\n\t\tDRVG B 1 Offset(0, 48)\n\t\tDRVG A 1 Offset(0, 44)\n\t\tDRVG A 1 Offset(0, 38)\n\t\tDRVG A 25 Offset(0, 32)\n\t\tDRVG A 0 A_Refire\n\t\tGoto Ready\n\tFlash:\n\t\tTNT1 A 2 Bright A_Light1\n\t\tTNT1 A 2 Bright A_Light2\n\t\tTNT1 A 1 Bright A_Light1\n\t\tGoto LightDone\n\t}\n}\n\nACTOR DedDriverPuff : DedPuff\n{\n\tRenderStyle Add\n\tAlpha 1.0\n\tObituary \"$DED_OB_DRIVER\"\n\n\t+ALWAYSPUFF\n\t+PUFFGETSOWNER\n\t+EXTREMEDEATH\n\n\tStates\n\t{\n\tSpawn:\n\t\tDEXP A 2 Bright\n\t\tDEXP B 2 Bright A_PlaySound(\"weapons/driver/hit\")\n\t\tDEXP C 2 Bright\n\t\tDEXP DDDDDDDDDDDDDDDDDDDD 0 Bright A_SpawnItemEx(\"DedDriverFrag\", 0, 0, 0, frandom(15, 25), 0, frandom(-7.5, 7.5), frandom(0, 360), SXF_TRANSFERPOINTERS)\n\t\tDEXP DEFGHIJKL 2 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedDriverFrag : FastProjectile\n{\n\tHeight 4\n\tRadius 2\n\tRenderStyle Add\n\tAlpha 1.0\n\tSpeed 20\n\tObituary \"$DED_OB_DRIVER\"\n\tDeathSound \"weapons/driver/explode\"\n\tMissileType \"DedDriverFragTrail\"\n\tMissileHeight 4\n\tReactionTime 12\n\n\t+THRUACTORS\n\t+EXTREMEDEATH\n\t+BOUNCEONFLOORS\n\t+BOUNCEONCEILINGS\n\n\tStates\n\t{\n\tSpawn:\n\t\tDPTC A 0 Bright A_CountDown\n\t\tDPTC A 1 Bright A_Jump(128, \"Spawn\")\n\t\tLoop\n\tDeath:\n\t\tDXP2 A 0 Bright A_Jump(80, 1)\n\t\tGoto DeathAnim\n\t\tDXP3 A 0 Bright A_Jump(80, 1)\n\t\tGoto DeathAnim\n\t\tDXP4 A 0 Bright\n\tDeathAnim:\n\t\t\"####\" A 2 Bright A_Stop\n\t\t\"####\" B 2 Bright A_Explode(64, 128, XF_HURTSOURCE)\n\t\t\"####\" CDEFGHIJKLMNOPQR 2 Bright\n\t\tStop\n\t}\n}\n\nACTOR DedDriverFragTrail : DedTrail\n{\n\tRenderStyle Add\n\tAlpha 1.0\n\n\tStates\n\t{\n\tSpawn:\n\t\tDPTC BCDEFGHIJ 1 Bright\n\t\tStop\n\t}\n}"
}
]
},
"maps": [
{
"map": "MAP01",
"title": "MAP01",
"format": "unknown",
"stats": {
"things": 0,
"linedefs": 0,
"sidedefs": 0,
"vertices": 0,
"sectors": 0,
"segs": 0,
"ssectors": 0,
"nodes": 0,
"textures": {}
},
"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": false
},
"difficulty": {
"uv_monsters": 0,
"hmp_monsters": 0,
"htr_monsters": 0,
"uv_items": 0,
"hmp_items": 0,
"htr_items": 0
},
"compatibility": "unknown",
"metadata": {
"title": null,
"music": null,
"source": "marker"
}
}
]
}