kirbyarena-alpha-a7-2.pk3

PK3 4.8 MiB 0 map(s)

Counts

endoom0
graphics0
lumps624
maps0
palettes0

Totals (across maps)

Things0
Linedefs0
Sectors0
Monsters0
Items0
Raw model (for completeness)
{
  "meta": {
    "id": "0c07c563-cf9a-48fb-ba25-b7919d8fde4e",
    "sha1": "1469bfa3e96da4210527ffa94991a7a3ae06621b",
    "sha256": "ed91a3e7e1c4b93b7ea527f96a7430c5536b5e99961e61a686a130bd71cabe23",
    "filenames": [
      "kirbyarena-alpha-a7-2.pk3"
    ],
    "additional": {
      "engines": [
        "ZDOOM"
      ],
      "iwad": [],
      "filename": null,
      "added": "2019-11-06 12:40:24",
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false,
      "name": null,
      "description": null,
      "maps": null,
      "graphicOverrides": null,
      "screenshots": null,
      "palettes": null,
      "categories": null
    },
    "flags": {
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false
    },
    "added": "2019-11-06 12:40:24",
    "file": {
      "type": "PK3",
      "size": 5080071,
      "url": "https://wadarchive2.nyc3.digitaloceanspaces.com/1469bfa3e96da4210527ffa94991a7a3ae06621b/1469bfa3e96da4210527ffa94991a7a3ae06621b.pk3.gz",
      "corrupt": false
    },
    "content": {
      "counts": {
        "endoom": 0,
        "graphics": 0,
        "lumps": 624,
        "maps": 0,
        "palettes": 0
      },
      "engines_guess": [
        "ZDOOM"
      ]
    },
    "analysis": {
      "title": "Kirby Arena Alpha A7-2",
      "description": "This WAD is a ZDoom-based mod featuring no traditional Doom maps but extensive custom HUD and interface elements themed around Kirby abilities. It includes 624 lumps with no standard map data, indicating a focus on gameplay mechanics or UI overhaul rather than map-based progression. The content suggests a multiplayer or arena-style mod with unique player abilities such as Bomb, Beam, Archer, and Sword, and custom status bars. There is no indication of monster profiles, difficulty scaling, or resource balance typical of map WADs. The theme is heavily stylized and non-traditional, likely requiring ZDoom compatibility. No IWAD dependency is specified.",
      "tags": [
        "ability_based",
        "custom_interface",
        "hud_mod",
        "multiplayer_focus",
        "no_maps",
        "nontraditional",
        "vanilla_incompatible",
        "zdoom"
      ],
      "origin": "gpt-4.1-mini"
    },
    "text_files": [
      {
        "source": "pk3",
        "name": "SBARINFO.H.txt",
        "contents": "//HORIZONTAL BARS\n\nstatusbar normal, forcescaled\n{\nInInventory not NoHealthBar, 1\n{\n\nInInventory not NoClipBar, 1{\n//Drawbar\"VARAMMO1\", \"VAREMPTY\", Ammo1, horizontal, 58, 184;\n}\n//==========\n\n//Drawbar \"VARHEALT\", \"VAREMPTY\", Health, horizontal, 130, 184;\n\t//InInventory LightTeamFlag, 1{DrawImage \"LBARH\", 130, 179;}\n\t//InInventory WilyTeamFlag, 1{DrawImage \"WBARH\", 130, 179;}\n\t//InInventory CossackTeamFlag, 1{DrawImage \"CBARH\", 130, 179;}\n\t//InInventory KingTeamFlag, 1{DrawImage \"KBARH\", 130, 179;}\n\nInInventory SkullShieldCheck, 1{DrawBar \"VARFLS5\", \"VNOBAR\", SkullShieldCheck, horizontal, 130, 184;}\nInInventory SkullBarrierProtection, 1{DrawBar \"VARFLS5\", \"VNOBAR\", SkullShieldCheck, horizontal, 130, 184;}\nInInventory BasicArmor, 1{DrawBar \"VARAMT31\", \"VNOBAR\", Armor, horizontal, 130, 184;}\n\n}\n\nDrawImage \"TKCHUD\", 30, 150;\nIsSelected BaseAbility{ DrawImage \"BaseAbil\", 38, 158; Drawstring \"confont\", white, \"Kirby\", 62, 150, 0, alignment(left);}\nIsSelected BombAbility{ DrawImage \"BombAbil\", 38, 158; Drawstring \"confont\", white, \"Bomb\", 62, 150, 0, alignment(left);}\nIsSelected BeamAbility{ DrawImage \"BeamAbil\", 38, 158; Drawstring \"confont\", white, \"Beam\", 62, 150, 0, alignment(left);}\nIsSelected ArcherAbility{ DrawImage \"ArchAbil\", 38, 158; Drawstring \"confont\", white, \"Archer\", 62, 150, 0, alignment(left);}\nIsSelected SwordAbility{ DrawImage \"SWRDAbil\", 38, 158; Drawstring \"confont\", white, \"Sword\", 62, 150, 0, alignment(left);}\n\nDrawbar \"VARHEALT\", \"VAREMPTY\", Health, horizontal, 58, 166;\n\tInInventory LightTeamFlag, 1{DrawImage \"LBARH\", 58, 140;}\n\tInInventory WilyTeamFlag, 1{DrawImage \"WBARH\", 58, 140;}\n\tInInventory CossackTeamFlag, 1{DrawImage \"CBARH\", 58, 140;}\n\tInInventory KingTeamFlag, 1{DrawImage \"KBARH\", 58, 140;}\n//DrawImage \"LBARH\", 58, 140;\n\n//DrawSelectedInventory INDEXFONT ,122, 184, 120, 185, white;\n//DrawImage weaponicon, 50, 184;\n\n//[+]======================================[+]\n//--------------|Class huds|---------------\n//[+]======================================[+]\n\n}}"
      },
      {
        "source": "pk3",
        "name": "SBARINFO.V.txt",
        "contents": "//VERTICAL BARS\nheight 0;\n\nstatusbar fullscreen, forcescaled\n{\nInInventory not NoHealthBar, 1\n{\n\nInInventory not NoClipBar, 1{\n//Drawbar\"BARAMMO1\", \"BAREMPTY\", Ammo1, vertical, 16, 8;\n}\n//=====\n//DrawBar \"BARHEALT\", \"BAREMPTY\", Health, vertical, 24, 8;\n\t//InInventory LightTeamFlag, 1{DrawImage \"LBAR\", 24, 3;}\n\t//InInventory WilyTeamFlag, 1{DrawImage \"WBAR\", 24, 3;}\n\t//InInventory CossackTeamFlag, 1{DrawImage \"CBAR\", 24, 3;}\n\t//InInventory KingTeamFlag, 1{DrawImage \"KBAR\", 24, 3;}\n\nInInventory SkullShieldCheck, 1{DrawBar \"BARFLS5\", \"NOBAR\", SkullShieldCheck, vertical, 24, 8;}\nInInventory SkullBarrierProtection, 1{DrawBar \"BARFLS5\", \"NOBAR\", SkullShieldCheck, vertical, 24, 8;}\nInInventory BasicArmor, 1{DrawBar \"BARAMT31\", \"NOBAR\", Armor, vertical, 24, 8;}\n\n//DrawSelectedInventory INDEXFONT ,24, 64, 37, 64, white;\n//DrawImage weaponicon, 16, 64;\n\nDrawImage \"TKCVHUD\", 0, 8;\nIsSelected BaseAbility{ DrawImage \"BaseAbil\", 8, 16; Drawstring \"confont\", white, \"Kirby\", 36, 18, 0, alignment(left);}\nIsSelected BombAbility{ DrawImage \"BombAbil\", 8, 16; Drawstring \"confont\", white, \"Bomb\", 36, 18, 0, alignment(left);}\nIsSelected BeamAbility{ DrawImage \"BeamAbil\", 8, 16; Drawstring \"confont\", white, \"Beam\", 36, 18, 0, alignment(left);}\nIsSelected ArcherAbility{ DrawImage \"ArchAbil\", 8, 16; Drawstring \"confont\", white, \"Archer\", 36, 18, 0, alignment(left);}\nIsSelected SwordAbility{ DrawImage \"SWRDAbil\", 8, 16; Drawstring \"confont\", white, \"Sword\", 36, 18, 0, alignment(left);}\n\nDrawBar \"BARHEALT\", \"BAREMPTY\", Health, vertical, 8, 36;\n\tInInventory LightTeamFlag, 1{DrawImage \"LBARH\", 32, 8;}\n\tInInventory WilyTeamFlag, 1{DrawImage \"WBARH\", 32, 8;}\n\tInInventory CossackTeamFlag, 1{DrawImage \"CBARH\", 32, 8;}\n\tInInventory KingTeamFlag, 1{DrawImage \"KBARH\", 32, 8;}\n//[+]======================================[+]\n//--------------|Class huds|---------------\n//[+]======================================[+]\n\n}}"
      },
      {
        "source": "pk3",
        "name": "BOTINFO.txt",
        "contents": "clearbots\n{\n\tname = \"\\cnKirby\"\n\taccuracy = 4\n\tintellect = 4\n\tevade = 3\n\tanticipation = 4\n\treactiontime = 4\n\tperception = 4\n\tfavoriteweapon = \"MegaBusterWep\"\n\tcolor = \"00 00 00\"\n\tgender = \"male\"\n\tskin = \"Megaman\"\n\tclass = \"BasicKirby\"\n\trevealed = true\n\tscript = \"humanbot\"\n\tchatlump = \"chats/BOTMEGA.txt\"\n\tchatfrequency = 50\n}\n\n{\n\tname = \"\\cnBomb\"\n\taccuracy = 4\n\tintellect = 4\n\tevade = 3\n\tanticipation = 4\n\treactiontime = 4\n\tperception = 4\n\tfavoriteweapon = \"MegaBusterWep\"\n\tcolor = \"00 00 00\"\n\tgender = \"male\"\n\tskin = \"Megaman\"\n\tclass = \"Bomb\"\n\trevealed = true\n\tscript = \"humanbot\"\n\tchatlump = \"chats/BOTMEGA.txt\"\n\tchatfrequency = 50\n}\n\n{\n\tname = \"\\cnBeam\"\n\taccuracy = 4\n\tintellect = 4\n\tevade = 3\n\tanticipation = 4\n\treactiontime = 4\n\tperception = 4\n\tfavoriteweapon = \"MegaBusterWep\"\n\tcolor = \"00 00 00\"\n\tgender = \"male\"\n\tskin = \"Megaman\"\n\tclass = \"Beam\"\n\trevealed = true\n\tscript = \"humanbot\"\n\tchatlump = \"chats/BOTMEGA.txt\"\n\tchatfrequency = 50\n}\n\n{\n\tname = \"\\cnArcher\"\n\taccuracy = 4\n\tintellect = 4\n\tevade = 3\n\tanticipation = 4\n\treactiontime = 4\n\tperception = 4\n\tfavoriteweapon = \"MegaBusterWep\"\n\tcolor = \"00 00 00\"\n\tgender = \"male\"\n\tskin = \"Megaman\"\n\tclass = \"Archer\"\n\trevealed = true\n\tscript = \"humanbot\"\n\tchatlump = \"chats/BOTMEGA.txt\"\n\tchatfrequency = 50\n}\n\n{\n\tname = \"\\cnSword\"\n\taccuracy = 4\n\tintellect = 4\n\tevade = 3\n\tanticipation = 4\n\treactiontime = 4\n\tperception = 4\n\tfavoriteweapon = \"MegaBusterWep\"\n\tcolor = \"00 00 00\"\n\tgender = \"male\"\n\tskin = \"Megaman\"\n\tclass = \"Sword\"\n\trevealed = true\n\tscript = \"humanbot\"\n\tchatlump = \"chats/BOTMEGA.txt\"\n\tchatfrequency = 50\n}"
      },
      {
        "source": "pk3",
        "name": "menudef.txt",
        "contents": "LISTMENU \"MainMenu\"//Edit from MM8BDM-v5b [v5b edit]\n{\n\tIfGame(Doom, Chex)\n\t{\n\t\tStaticPatch 94, 2, \"M_DOOM\"\n\t\tPosition 97, 72\n\t}\n\tIfGame(Strife)\n\t{\n\t\tStaticPatch 84, 2, \"M_STRIFE\"\n\t\tPosition 97, 45\n\t}\n\tIfGame(Heretic)\n\t{\n\t\tStaticPatch 88, 0, \"M_HTIC\"\n\t\tStaticPatch 40, 10, \"M_SKL01\"\n\t\tStaticPatch 232, 10, \"M_SKL00\"\n\t\tPosition 110, 56\n\t}\n\tIfGame(Hexen)\n\t{\n\t\tStaticPatch 88, 0, \"M_HTIC\"\n\t\tStaticPatch 37, 80, \"FBULB0\"\n\t\tStaticPatch 278, 80, \"FBULA0\"\n\t\tPosition 110, 56\n\t}\n\n\tIfGame(Doom, Strife, Chex)\n\t{\n\t\tFont \"DBIGFONT\", \"MenuWhite\"\n\t\tTextItem \"SinglePlayer\", \"s\", \"PlayerclassMenu\"\n\t\tTextItem \"Multiplayer\", \"m\", \"ZA_MultiplayerOptions\" // [Lego]\n\t\tTextItem \"Player Setup\", \"p\", \"PlayerMenu\"\n\t\tFont \"DBIGFONT\", \"MenuGreen\" // [C]\n\t\tTextItem \"Ability Database\", \"t\", \"CBMTestMenu\" //\n\t\tFont \"DBIGFONT\", \"MenuGreen\" // [C]\n\t\t//TextItem \"Class Help\", \"h\", \"ReadThisMenu\"\n\t\tFont \"DBIGFONT\", \"MenuWhite\" //\n\t\tTextItem \"Options\", \"o\", \"OptionsMenu\"\n\t\tTextItem \"Quit Game\", \"q\", \"QuitMenu\"\n\t}\n\n\tIfGame(Heretic, Hexen)\n\t{\n\t\tTextItem \"$MNU_NEWGAME\", \"n\", \"PlayerclassMenu\"\n\t\tTextItem \"$MNU_OPTIONS\", \"o\", \"OptionsMenu\"\n\t\tTextItem \"$MNU_GAMEFILES\", \"g\", \"GameFilesMenu\"\n\t\tTextItem \"$MNU_INFO\", \"i\", \"ReadThisMenu\"\n\t\tTextItem \"$MNU_QUITGAME\", \"q\", \"QuitMenu\"\n\t}\n}\n\nListMenu \"PlayerMenu\"\n{\n\tStaticTextCentered 160, 6, \"$MNU_PLAYERSETUP\"\n\tFont \"SmallFont\"//, \"White\", \"Cyan\"\n\tLinespacing 14\n\tPosition 48, 36\n\tIfGame(Doom, Heretic, Strife, Chex)\n\t{\n\t\tMouseWindow 0, 220\n\t\tPlayerDisplay 220, 55, \"00 00 00\", \"00 AA AA\", 1, \"PlayerDisplay\"\n\t}\n\tIfGame(Hexen)\n\t{\n\t\tMouseWindow 0, 220\n\t\tPlayerDisplay 220, 75, \"00 07 00\", \"40 53 40\", 1, \"PlayerDisplay\"\n\t}\n\n\tIfGame (Doom, Strife, Chex)\n\t{\n\t\tPlayerNameBox \"Name\", 0, \"Playerbox\"\n\t\tSelector \"-\", -16, -1\n\t}\n\tIfGame(Heretic, Hexen)\n\t{\n\t\tPlayerNameBox \"Name\", 5, \"Playerbox\"\n\t\tSelector \"-\", -16, 1\n\t}\n\n\t// [TP] Zandronum does not store team in userinfo\n\t// ValueText \"Team\", \"Team\"\n\t// [TP] For now Zandronum doesn't support colorsets either.\n\t//ValueText \"Color\", \"Color\"\n\t//ValueText \"PlayerColor\", \"Color\", \"ColorList\"\n\t//Option \"Show back button\",\t\t\"m_show_backbutton\", \"Corners\", \"use_mouse\"\n\tLinespacing 14\n\tSlider \"Red\", \"Red\", 0, 255, 15\n\tSlider \"Green\", \"Green\", 0, 255, 15\n\t//Linespacing 14\n\tSlider \"Blue\", \"Blue\", 0, 255, 15\n\tValueText \"Class\", \"Class\"\n\tValueText \"Skin\", \"Skin\"\n\tValueText \"Gender\", \"Gender\", \"Gender\"\n\tValueText \"Autoaim\", \"Autoaim\", \"Autoaim\"\n\t//Slider \"Handicap\", \"Handicap\", 0, 200, 5 // [TP]\n\t// [TP] This is moved to weapon setup\n\t// ValueText \"Switch on pickup\", \"Switch\", \"OffOn\"\n\tValueText \"Always Run\", \"AlwaysRun\", \"OnOff\"\n\t//ValueText \"Chat Substitution\", \"chat_substitution\", \"OnOff\" (doesn't work :/)\n\t//TextItem \"Weapon Setup\", \"w\", \"ZA_WeaponSetup\" // [TP]\n\n\tClass \"PlayerMenu\"\n}\n\nOptionMenu \"CBMTestMenu\"\n{\n    Title \"Ability Database\"\n\n\tStaticText \"\"\n\tOption \"Name\", \"OppID\", \"OppName\"\n\tOption \"Info\", \"OppID\", \"OppDesc\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"===============================================================\",1\n\tOption \"Moveset:\", \"OppID\", \"Oppmoves\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"\"\n\tStaticText \"===============================================================\",1\n\tStaticText \"\"\n\tStaticText \"LMB = A\"\n\tStaticText \"RMB = B\"\n\tStaticText \">> = Dash\"\n\tStaticText \"^>> = Aerial Dash\"\n\tStaticText \"CR = Crouch\"\n\t\tOption \"--\", \"OppID\", \"Oppskills\"\n\n}\n\n//0, \"$TAG_ICESLASHER\"\nOptionValue OppName\n{\n0, \"Kirby\"\n\n1, \"Bomb\"\n2, \"Beam\" // \\ci::Medium:: \\cb::Heavy::\n3, \"Archer\"\n4, \"Sword\"\n}\n\nOptionValue OppDesc\n{\n0, \"Basic Kirby, spit stars at people!\"\n\n1, \"Blast opponents to bits with you \\nwealth of explosives! place them on \\nthe floor to control space or \\neven plop one on top of \\nyour enemies heads!\"\n2, \"Commands raw power with a diverse \\nmoveset, swipe enemies near with beam \\nwhip or peg them at range with \\nbeam waves,\" // \\ci::Medium:: ::Heavy::\n3, \"Shoot down foes from afar and send \\nairborn foes back to the ground! \\nif shots come your way then crouch \\nto cammoflauge yourself for safety.\"\n4, \"Slice foes apart with impressive \\nmelee combos, chain your dash \\nattacks, sword beams, and \\nneutral combos for maximum damage!\"\n}\n\nOptionValue Oppmoves\n{\n//-1, \" [Move List] name \\n\\n [Move List] name \\n\\n\"\n0, \" [A] Star Spit \\n\\n [>> + A] DashKick \\n\\n [CR + A] DashKick\"\n\n1, \" [A/B] spawn/throw bomb \\n\\n [>> + A/B] Throw Bomb Further \\n\\n [CR + A/B] Place bomb \\n\\n [B near foe w/ bomb] Place Bomb on head \\n\\n\"\n2, \" [A] Beam Whip \\n\\n [Hold A] Beam Wave \\n\\n [B] Beam Chaser \\n\\n [>> + A/B] Beam Spread \\n\\n [^>> + A/B] Beam Volley\"\n3, \" [A] Shoot Arrow \\n\\n [Hold A] Charged Arrow \\n\\n [B] Arrow stab \\n\\n [>> + A/B] Quick Shot \\n\\n [^>> + A/B] Arrow Vulcan \\n\\n [CR] Cammoflauge\\n(immune to projectiles)\"\n4, \" [A] Sword Combo \\n\\n [Hold B] Sword Beam \\n [B after combo] Quick Beam \\n [B after parry] Parry Beam \\n\\n [>> + A/B] Sword Thrust \\n\\n [^>> + A/B] Spin Slash \\n\\n [CR + A/B] Parry \\n(Blocks melee & Projectiles) \\n\\n\"\n}\n\nOptionValue OppSkills\n{\n0, \" \"\n1, \" \"\n2, \" \"\n3, \" \"\n4, \" \"\n}"
      },
      {
        "source": "pk3",
        "name": "TEXTCOLOURS.txt",
        "contents": "WhiteOutLine {\n\t\t#e4e4e4  #c3c3c3   0 6\n\t\t#000000  #222222   7 256\n\tConsole:\n\t\t#111111  #353535    0 127\n\t\t#b1b1b1  #ffffff  128 256\n}\n\nMenuGreen {\n\t\t#000000 #000000 0 123\n\t\t#00C800 #00C800 124 256\n\tConsole:\n\t\t#000000 #000000 0 123\n\t\t#00C800 #00C800 124 256\n}\n\nMenuYellow {\n\t\t#000000 #000000 0 123\n\t\t#FFFF00 #FFFF00 124 256\n\tConsole:\n\t\t#000000 #000000 0 123\n\t\t#FFFF00 #FFFF00 124 256\n}\n\n//Future ZDoom colors\n\nIce\n{\n    #343450  #7C7C98    0 94\n    #7C7C98  #E0E0E0   95 256\nConsole:\n    #343450  #7C7C98    0 127\n    #7C7C98  #E0E0E0  128 256\nFlat:\n    #7C7C98\n}\n\nFire\n{\n    #660000  #D57604   0 104\n    #D57604  #FFFF00   105 256\nConsole:\n    #6F0000  #D57604    0 127\n    #D57604  #FFFF00  128 256\nFlat:\n    #D57604\n}\n\nSapphire\n{\n    #000468  #506CFC    0 94\n    #506CFC  #50ECFC   95 256\nConsole:\n    #000468  #506CFC    0 127\n    #506CFC  #50ECFC  128 256\nFlat:\n    #506CFC\n}\n\nTeal\n{\n    #001F1F  #236773    0 90\n    #236773  #7BB3C3   91 256\nConsole:\n    #001F1F  #236773    0 127\n    #236773  #7BB3C3  128 256\nFlat:\n    #236773\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/SourceActors.txt",
        "contents": "/*\nThis file contains all the actors most main objects inherit from, typically\ncommon things like projectiles and explosionactors and such that all use the same\nstates code, this can help with reducing script size all around\n*/\n\nactor ProjectileBase\n{\nPROJECTILE\n+SKYEXPLODE\n+DONTBLAST\n+MTHRUSPECIES\n+BLOODSPLATTER\n//damagetype \"Buster\"\nSpeed 40\nDamage (3 + ACS_ExecuteWithResult(DamageRate,8,360,50))\nradius 5\nheight 5\nscale 2.1\nStates\n{\nSpawn:\nTNT1 A 0\nBUST T 1\nloop\nDeath:\nBUST T 1 //A_Spawnitemex(\"BustergunPuff1\",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)\nstop\n}\n}\n\nactor FastProjectileBase : Fastprojectile\n{\nPROJECTILE\n+SKYEXPLODE\n+DONTBLAST\n+MTHRUSPECIES\n+BLOODSPLATTER\ndamagetype \"Buster\"\nMissileHeight 8\nSpeed 40\nDamage (3 + ACS_ExecuteWithResult(DamageRate,8,360,50))\nradius 5\nheight 5\nscale 2.1\nStates\n{\nSpawn:\nTNT1 A 0\nBUST T 1\nloop\nDeath:\nBUST T 1 //A_Spawnitemex(\"BustergunPuff1\",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)\nstop\n}\n}\n\nactor ExplosionBase\n{\nPROJECTILE\n+NOINTERACTION\n+NOCLIP\n+DONTBLAST\n+FORCEXYBILLBOARD\n+BLOODSPLATTER\nSpeed 0\n//\nDamagetype \"Explosion\"\nradius 8\nheight 8\nscale 5.5\nStates\n{\nSpawn:\nNAPC A 0\nNAPC D 0 A_Explode(20, 310, 1,0,36)\nNAPC A 0 A_PlaySoundEx(\"weapon/napalm\", \"Weapon\")\nASEX ABCDEF 2\nstop\n}\n}\n\nactor HitscanBulletBase : FastprojectileBase\n{\ndamagetype \"Buster\"\nDamage (5 + ACS_ExecuteWithResult(DamageRate,4,360,150))\nspeed 255\nheight 5\nradius 5\nscale 1\nStates\n{\nSpawn:\nTNT1 A 0\nTNT1 A 0\nTNT1 A 1\ngoto spawn+2\nDeath:\nTNT1 A 1 A_PlaySound(\"weapon/mirrordeflect\")\nTNT1 A 1 //A_Spawnitemex(\"BustergunPuff1\",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)\nstop\n}\n}\n\nactor FXActor_A\n{\nPROJECTILE\n+NOINTERACTION\n+NOCLIP\n+CLIENTSIDEONLY\nradius 8\nheight 8\nDamage (0)\nscale 3.0\nReactiontime 35\nRenderstyle \"Translucent\"\nAlpha 1.0\nStates\n{\nSpawn:\nICMS A 0\nICMS ABCD 2\nstop\n}\n}\n\nactor FXActor_B\n{\nPROJECTILE\n+NOINTERACTION\n+NOCLIP\n+CLIENTSIDEONLY\nradius 8\nheight 8\nDamage (0)\nscale 3.0\nReactiontime 35\nRenderstyle \"Add\"\nAlpha 1.0\nStates\n{\nSpawn:\nICMS A 0\nICMS ABCD 2\nstop\n}\n}\n\nactor WatcherBase\n//Watchers area type of actor that is invisible and handles tasks in the background.\n{\n+MISSILE\n+RIPPER\n+NOGRAVITY\n+NOINTERACTION\n+NOTARGETSWITCH\n+NONETID\nStates\n{\nSpawn:\nTNT1 A 1\nDeath:\nDeathTake:\nTNT1 A 0\nstop\n}\n}\n\nactor LinearBullet : fastProjectileBase\n{\n//these are used for guns that utilize generic rounds.\nSpeed 10\nDamage (6 + ACS_ExecuteWithResult(DamageRate,6,300,65))\nradius 3\nheight 3\nReactiontime 14\nscale 1.0\nVar Int User_TrailCount;\nVar Int User_TP; //TrailPosition\nStates\n{\nSpawn:\nTNT1 A 0\nTNT1 AA 1 ACS_NamedExecuteAlways(\"PitchMatch\",0)\n//TNT1 A 0 A_Jump(256,\"SpeedSet\")\n//Goto SpeedSet\n//SpeedSet:\nTNT1 A 0 A_ScaleVelocity(10)\nGoto Spawn2\nSpawn2:\n//TNT1 A 0 A_SetUserVar(\"User_TP\",3*User_TrailCount)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-3,0,(sin(pitch)*3),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-6,0,(sin(pitch)*6),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-9,0,(sin(pitch)*9),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-12,0,(sin(pitch)*12),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-15,0,(sin(pitch)*15),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-18,0,(sin(pitch)*18),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-21,0,(sin(pitch)*21),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-24,0,(sin(pitch)*24),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-27,0,(sin(pitch)*27),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-30,0,(sin(pitch)*30),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-33,0,(sin(pitch)*33),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-36,0,(sin(pitch)*36),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-39,0,(sin(pitch)*39),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-42,0,(sin(pitch)*42),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-45,0,(sin(pitch)*45),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\n//TNT1 A 0 A_SetUserVar(\"User_TrailCount\",User_TrailCount+1)\n//TNT1 A 0 A_Jumpif(User_TrailCount >= 20,1)\n//loop\n//TNT1 A 0\nTNT1 A 1 //A_SetUserVar(\"User_TrailCount\",1)\nTNT1 A 0 A_Countdown\nGoto Spawn2\nDeath:\nTNT1 A 1 A_Spawnitemex(\"LinearBulletPuff\",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)\nstop\n}\n}\n\nactor LinearBullet2 : fastProjectileBase\n{\n//these are used for guns that utilize generic rounds.\nSpeed 100\nDamage (6 + ACS_ExecuteWithResult(DamageRate,6,300,65))\nradius 3\nheight 3\nReactiontime 12\nscale 1.0\nVar Int User_TrailCount;\nVar Int User_TP; //TrailPosition\nStates\n{\nSpawn:\nTNT1 A 0\nTNT1 A 0 ACS_NamedExecuteAlways(\"PitchMatch\",0)\n//TNT1 A 0 A_Jump(256,\"SpeedSet\")\n//Goto SpeedSet\n//SpeedSet:\n//TNT1 A 0 A_ScaleVelocity(16)\n\nGoto Spawn2\nSpawn2:\n//TNT1 A 0 A_SetUserVar(\"User_TP\",3*User_TrailCount)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-3,0,(sin(pitch)*3),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-6,0,(sin(pitch)*6),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-9,0,(sin(pitch)*9),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-12,0,(sin(pitch)*12),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-15,0,(sin(pitch)*15),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-18,0,(sin(pitch)*18),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-21,0,(sin(pitch)*21),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-24,0,(sin(pitch)*24),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-27,0,(sin(pitch)*27),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-30,0,(sin(pitch)*30),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-33,0,(sin(pitch)*33),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-36,0,(sin(pitch)*36),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-39,0,(sin(pitch)*39),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-42,0,(sin(pitch)*42),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\nTNT1 A 0 A_SpawnItemEx(\"LinearBulletTrail\",cos(pitch)*-45,0,(sin(pitch)*45),MomX,MomY,MomZ,0,SXF_TRANSFERPITCH|SXF_ABSOLUTEMOMENTUM|SXF_TRANSFERTRANSLATION)\n//TNT1 A 0 A_SetUserVar(\"User_TrailCount\",User_TrailCount+1)\n//TNT1 A 0 A_Jumpif(User_TrailCount >= 20,1)\n//loop\n//TNT1 A 0\nTNT1 A 1 //A_SetUserVar(\"User_TrailCount\",1)\nTNT1 A 0 A_Countdown\nGoto Spawn2\nDeath:\nTNT1 A 1 A_Spawnitemex(\"LinearBulletPuff\",0,0,0,0,0,0,0,SXF_TRANSFERTRANSLATION)\nstop\n}\n}\n\nactor LinearBulletTrail : FXActor_B\n{\nMissileHeight 8\nscale 1.0\nStates\n{\nSpawn:\nBASB U 2\nstop\n}\n}\n\nactor LinearBulletPuff : FXActor_A\n{\nscale 0.4\nStates\n{\nSpawn:\nBIM1 AABCDEF 1\nstop\n}\n}\n\nactor BarrierPartBase\n{\n  Radius 14\n  Height 12\n  Scale 0.5\n  RenderStyle None\n  Alpha 0.25\n  //Bloodtype \"ShieldHit\"\n  //Species \"BLUEMember\"\n  DamageFactor \"Explosion\", 0.1\n  Health 900\n  Painchance 256\n  //Designatedteam 0\n  +MISSILE\n  +SHOOTABLE\n  +NOTARGETSWITCH\n  +NOGRAVITY\n  +NOTELEPORT\n  +NOTARGETSWITCH\n  +THRUSPECIES\n  +DONTRIP\n  +DONTSPLASH\n  +FLOORCLIP\n  //+REFLECTIVE\n  +DONTREFLECT\n  +NODAMAGETHRUST\n  //+DONTTHRUST\n  +DONTBLAST\n  +GHOST\t//Give projectiles that you wish to pass through the shield THRUGHOST flag\n  States\n  {\n  Spawn:\n\tTNT1 A 0\n\tTNT1 A 0 A_SpawnItemEx (\"ScreenPartVisual\", 0, 0, 16, 0, 0, 0, 0,SXF_NOCHECKPOSITION|SXF_TRANSFERTRANSLATION)\n    HEXA A 2\n    stop\n\tPain:\n\tTNT1 A 0  A_PlaySoundEX (\"item/protoreflect\",\"Soundslot5\")\n\tstop\n  Death:\n    TNT1 A 2\n    stop\n  }\n}\n\nactor ShieldHit\n{\n  Radius 1\n  Height 1\n  Scale 0.5\n  Renderstyle Add\n  +NOGRAVITY\n  +NOINTERACTION\n  States\n  {\n  Spawn:\n    MMFX A 0 bright\n    MMFX A 1 bright A_Stop\n    MMFX A 0 bright A_PlaySound (\"weapon/MirrorDeflect\")\n    MMFX A 1 bright\n    stop\n  }\n}\n\nactor ScreenPartVisual\n{\n  Radius 8\n  Height 8\n  Scale 0.5\n  RenderStyle Add\t//Fuzzy looks great in software mode\n  Alpha 0.35\n  +NOINTERACTION\n  //+CLIENTSIDEONLY\n  +FLOORCLIP\n  States\n  {\n  Spawn:\n  TNT1 A 0\n    HEXA AAAA 1 bright\n    //HEXA AA 1 bright A_Fadeout(0.4)\n    stop\n  Death:\n    TNT1 A 2\n    stop\n  }\n}\n\nactor BasicClientSide\n{\n+CLIENTSIDEONLY\n+NOINTERACTION\n+NOGRAVITY\n-SOLID\nradius 2\nheight 2\nscale 2.5\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/ConstList.txt",
        "contents": "//====|Damage falloff range constants|====\nConst int Range1 = 275; //close quarters\nConst int Range2 = 450; // mid range\nConst int Range3 = 750; // long range\n\n//====|Mendingtool heal rates|====\nConst int HealRate2_B = 6;\nConst int HealRate2_A = 13;\nConst int HealRate2_Max = 20;\n\n//====|Weapon Spreads|====\n//Bustergun\nconst float BGUN_S = 0.2;\n\n//MegaGattling\nconst float MegaGattlingSpread = 2.3;\n\n//MannTurret\nconst float MT_SPD = 2.0;\n\n//blitzer\nConst float SRev = 360;\n\nConst float S_SprAng = 1.8;\nConst float S_SprAngRev = SRev-S_SprAng;\n\nConst float S_SprD_Ang = S_SprAng/1.5;\nConst float S_SprD_AngRev = SRev-(S_SprAng/1.5);\n\n//megablitzer\nConst float MB_SPD = 5.0;\n\n//Repidifier\nconst float RP_SPD = 1.4;\n\n//Stinger\nconst float ST_SPD = 1.3;\n\n//buddy sentry\nconst int BSEN_SPD = 12; //multiplied by 10\nconst int BSEN_Warm = 25;\nconst int BSEN_DetectRange = 750;\nconst int BSEN_ForgetRange = 800;\n\n//top grenade\nConst int GrenTopSpeed = 8;\nConst int GrenTopTurning = 35;\n\n//CureSprayRadius\nConst int SH_RAD = 260;\nConst int SH_RAD2 = SH_RAD/2;\n\n//VoltSpear\nconst int VSR1 = 550;\nconst int VSR2 = 175;\n\n//Blaster\nconst float BST_SPD = 0.3;\n\n//HealPatch\nconst int HLP_RAD = 200;\n\n//[+]================|Sripts|===================[+]\n\nconst int  GetTotalHPPerc = 726;\nconst int  GetValueHPPerc = 727;\nconst int  WepBloomStat = 728;\nconst int  DamageRate = 729;\nconst int  RadiusGive = 730;\nconst int  JumpToggle = 731;\nconst int  MedivisionScript = 732;\nconst int  RadiusHeal = 733;\nconst int  DotDamager = 734;\nconst int  GrapplingHookPull = 735;\nconst int  TargPitch = 736;\nconst int  BlastKnockback = 737;\nconst int  CountTID = 738;\nconst int  ObjectTally = 739;\nconst int  ObjectDeathTally = 740;\nconst int  GetTargValueHPPerc = 741;\nconst int  HealRamp = 743;"
      },
      {
        "source": "pk3",
        "name": "Actors/ReplacingStuff.txt",
        "contents": "actor absolutelynothing1 replaces RollingCutterWep\n{\nstates\n{\nspawn:\nTNT1 A 0\nstop\n}\n}\n\nactor absolutelynothing2 : absolutelynothing1 replaces SuperArmWep\n{\n}\n\nactor absolutelynothing3 : absolutelynothing1 replaces SuperArmWep\n{\n}\n\nactor absolutelynothing4 : absolutelynothing1 replaces HyperBombWep\n{\n}\n\nactor absolutelynothing5 : absolutelynothing1 replaces FireStormWep\n{\n}\n\nactor absolutelynothing6 : absolutelynothing1 replaces IceSlasherWep\n{\n}\n\nactor absolutelynothing7 : absolutelynothing1 replaces ThunderBeamWep\n{\n}\n\nactor absolutelynothing8 : absolutelynothing1 replaces OilSliderWep\n{\n}\n\nactor absolutelynothing9 : absolutelynothing1 replaces TimeSlowWep\n{\n}\n\nactor absolutelynothing10 : absolutelynothing1 replaces AirShooterWep\n{\n}\n\nactor absolutelynothing11 : absolutelynothing1 replaces AtomicFireWep\n{\n}\n\nactor absolutelynothing12 : absolutelynothing1 replaces BubbleLeadWep\n{\n}\n\nactor absolutelynothing13 : absolutelynothing1 replaces CrashBombWep\n{\n}\n\nactor absolutelynothing14 : absolutelynothing1 replaces LeafShieldWep\n{\n}\n\nactor absolutelynothing15 : absolutelynothing1 replaces MetalBladeWep\n{\n}\n\nactor absolutelynothing16 : absolutelynothing1 replaces QuickBoomerangWep\n{\n}\n\nactor absolutelynothing17 : absolutelynothing1 replaces TimeStopperWep\n{\n}\n\nactor absolutelynothing18 : absolutelynothing1 replaces GeminiLaserWep\n{\n}\n\nactor absolutelynothing19 : absolutelynothing1 replaces HardKnuckleWep\n{\n}\n\nactor absolutelynothing20 : absolutelynothing1 replaces MagnetMissileWep\n{\n}\n\nactor absolutelynothing21 : absolutelynothing1 replaces NeedleCannonWep\n{\n}\n\nactor absolutelynothing22 : absolutelynothing1 replaces SearchSnakeWep\n{\n}\n\nactor absolutelynothing23 : absolutelynothing1 replaces ShadowBladeWep\n{\n}\n\nactor absolutelynothing24 : absolutelynothing1 replaces SparkShockWep\n{\n}\n\nactor absolutelynothing25 : absolutelynothing1 replaces TopSpinWep\n{\n}\n\nactor absolutelynothing26 : absolutelynothing1 replaces DiveMissileWep\n{\n}\n\nactor absolutelynothing27 : absolutelynothing1 replaces DrillBombWep\n{\n}\n\nactor absolutelynothing28 : absolutelynothing1 replaces DustCrusherWep\n{\n}\n\nactor absolutelynothing29 : absolutelynothing1 replaces FlashStopperWep\n{\n}\n\nactor absolutelynothing30 : absolutelynothing1 replaces PharaohShotWep\n{\n}\n\nactor absolutelynothing31 : absolutelynothing1 replaces RainFlushWep\n{\n}\n\nactor absolutelynothing32 : absolutelynothing1 replaces RingBoomerangWep\n{\n}\n\nactor absolutelynothing33 : absolutelynothing1 replaces SkullBarrierWep\n{\n}\n\nactor absolutelynothing34 : absolutelynothing1 replaces ChargeKickWep\n{\n}\n\nactor absolutelynothing35 : absolutelynothing1 replaces CrystalEyeWep\n{\n}\n\nactor absolutelynothing36 : absolutelynothing1 replaces GravityHoldWep\n{\n}\n\nactor absolutelynothing37 : absolutelynothing1 replaces GyroAttackWep\n{\n}\n\nactor absolutelynothing38 : absolutelynothing1 replaces NapalmBombWep\n{\n}\n\nactor absolutelynothing39 : absolutelynothing1 replaces PowerStoneWep\n{\n}\n\nactor absolutelynothing40 : absolutelynothing1 replaces StarCrashWep\n{\n}\n\nactor absolutelynothing41 : absolutelynothing1 replaces WaterWaveWep\n{\n}\n\nactor absolutelynothing42 : absolutelynothing1 replaces BlizzardAttackWep\n{\n}\n\nactor absolutelynothing43 : absolutelynothing1 replaces CentaurFlashWep\n{\n}\n\nactor absolutelynothing44 : absolutelynothing1 replaces FlameBlastWep\n{\n}\n\nactor absolutelynothing45 : absolutelynothing1 replaces KnightCrushWep\n{\n}\n\nactor absolutelynothing46 : absolutelynothing1 replaces PlantBarrierWep\n{\n}\n\nactor absolutelynothing47 : absolutelynothing1 replaces SilverTomahawkWep\n{\n}\n\nactor absolutelynothing48 : absolutelynothing1 replaces WindStormWep\n{\n}\n\nactor absolutelynothing49 : absolutelynothing1 replaces YamatoSpearWep\n{\n}\n\nactor absolutelynothing50 : absolutelynothing1 replaces FreezeCrackerWep\n{\n}\n\nactor absolutelynothing51 : absolutelynothing1 replaces DangerWrapWep\n{\n}\n\nactor absolutelynothing52 : absolutelynothing1 replaces JunkShieldWep\n{\n}\n\nactor absolutelynothing53 : absolutelynothing1 replaces NoiseCrushWep\n{\n}\n\nactor absolutelynothing54 : absolutelynothing1 replaces ScorchWheelWep\n{\n}\n\nactor absolutelynothing55 : absolutelynothing1 replaces ThunderBoltWep\n{\n}\n\nactor absolutelynothing56 : absolutelynothing1 replaces WildCoilWep\n{\n}\n\nactor absolutelynothing57 : absolutelynothing1 replaces SlashClawWep\n{\n}\n\nactor absolutelynothing58 : absolutelynothing1 replaces MegaBallWep\n{\n}\n\nactor absolutelynothing59 : absolutelynothing1 replaces AstroCrushWep\n{\n}\n\nactor absolutelynothing60 : absolutelynothing1 replaces FlameSwordWep\n{\n}\n\nactor absolutelynothing61 : absolutelynothing1 replaces FlashBombWep\n{\n}\n\nactor absolutelynothing62 : absolutelynothing1 replaces HomingSniperWep\n{\n}\n\nactor absolutelynothing63 : absolutelynothing1 replaces IceWaveWep\n{\n}\n\nactor absolutelynothing64 : absolutelynothing1 replaces ThunderClawWep\n{\n}\n\nactor absolutelynothing65 : absolutelynothing1 replaces TornadoHoldWep\n{\n}\n\nactor absolutelynothing66 : absolutelynothing1 replaces WaterBalloonWep\n{\n}\n\nactor absolutelynothing67 : absolutelynothing1 replaces TenguBladeWep\n{\n}\n\nactor absolutelynothing68 : absolutelynothing1 replaces WaveBurnerWep\n{\n}\n\nactor absolutelynothing69 : absolutelynothing1 replaces SpreadDrillWep\n{\n}\n\nactor absolutelynothing70 : absolutelynothing1 replaces CopyVisionWep\n{\n}\n\nactor absolutelynothing71 : absolutelynothing1 replaces MagicCardWep\n{\n}\n\nactor absolutelynothing72 : absolutelynothing1 replaces RemoteMineWep\n{\n}\n\nactor absolutelynothing73 : absolutelynothing1 replaces IceWallWep\n{\n}\n\nactor absolutelynothing74 : absolutelynothing1 replaces LightningBoltWep\n{\n}\n\nactor absolutelynothing75 : absolutelynothing1 replaces BalladeCrackerWep\n{\n}\n\nactor absolutelynothing76 : absolutelynothing1 replaces MirrorBusterWep\n{\n}\n\nactor absolutelynothing77 : absolutelynothing1 replaces SakugarneWep\n{\n}\n\nactor absolutelynothing78 : absolutelynothing1 replaces ScrewCrusherWep\n{\n}\n\nactor absolutelynothing79 : absolutelynothing1 replaces BassUpgrade\n{\n}\n\nactor absolutelynothing80 : absolutelynothing1 replaces ProtoUpgrade\n{\n}\n\nactor absolutelynothing81 : absolutelynothing1 replaces AdaptorUpgrade\n{\n}\n\nactor absolutelynothing82 : absolutelynothing1 replaces LaserBusterUpgrade\n{\n}\n\nactor absolutelynothing83 : absolutelynothing1 replaces ArrowBusterUpgrade\n{\n}\n\nactor absolutelynothing84 : absolutelynothing1 replaces DuoFistUpgrade\n{\n}\n\nactor absolutelynothing85 : absolutelynothing1 replaces TrebleBoostUpgrade\n{\n}\n\nactor absolutelynothing86 : absolutelynothing1 replaces WTank\n{\n}\n\nactor absolutelynothing87 : absolutelynothing1 replaces MTank\n{\n}\n\nactor absolutelynothing88 : absolutelynothing1 replaces BeatSupport\n{\n}\n\nactor absolutelynothing89 : absolutelynothing1 replaces ReggaeCall\n{\n}\n\nactor absolutelynothing90 : absolutelynothing1 replaces EnergyBalancer\n{\n}\n\nactor absolutelynothing91 : absolutelynothing1 replaces EddieSummon\n{\n}\n\nactor absolutelynothing92 : absolutelynothing1 replaces TimeStopperGiver\n{\n}\n\nactor absolutelynothing93 : absolutelynothing1 replaces FlashStopperGiver\n{\n}\n\nactor absolutelynothing94 : absolutelynothing1 replaces SkullBarrierGiver\n{\n}\n\nactor absolutelynothing95 : absolutelynothing1 replaces SakugarneGiver\n{\n}\n\nactor absolutelynothing96 : absolutelynothing1 replaces TangoSummon\n{\n}\n\nactor absolutelynothing97 : absolutelynothing1 replaces TrebleSentry\n{\n}\n\nactor absolutelynothing98 : absolutelynothing1 replaces RushCoil\n{\n}\n\nactor absolutelynothing99 : absolutelynothing1 replaces RushJet\n{\n}\n\nactor absolutelynothing100 : absolutelynothing1 replaces RushMarine\n{\n}\n\nactor absolutelynothing101 : absolutelynothing1 replaces Item1\n{\n}\n\nactor absolutelynothing102 : absolutelynothing1 replaces Item2\n{\n}\n\n//actor absolutelynothing103 : absolutelynothing1 replaces Item3\n//{\n//}\n\nactor absolutelynothing104 : absolutelynothing1 replaces ETank\n{\n}\n\nactor absolutelynothing105 : absolutelynothing1 replaces ConcreteShotWep\n{\n}\n\nactor absolutelynothing106 : absolutelynothing1 replaces TornadoBlowWep\n{\n}\n\nactor absolutelynothing107 : absolutelynothing1 replaces LaserTridentWep\n{\n}\n\nactor absolutelynothing108 : absolutelynothing1 replaces PlugBallWep\n{\n}\n\nactor absolutelynothing109 : absolutelynothing1 replaces HornetChaserWep\n{\n}\n\nactor absolutelynothing110 : absolutelynothing1 replaces MagmaBazookaWep\n{\n}\n\nactor absolutelynothing111 : absolutelynothing1 replaces BlackHoleBombWep\n{\n}\n\nactor absolutelynothing112 : absolutelynothing1 replaces JewelSatelliteWep\n{\n}\n\nactor absolutelynothing113 : absolutelynothing1 replaces SolarBlazeWep\n{\n}\n\nactor absolutelynothing114 : absolutelynothing1 replaces ExitUnit\n{\n}\n\nactor absolutelynothing115 : absolutelynothing1 replaces SmallHealth\n{\n}\n\nactor absolutelynothing116 : absolutelynothing1 replaces BigHealth\n{\n}\n\nactor absolutelynothing117 : absolutelynothing1 replaces WeaponEnergy\n{\n}\n\nactor absolutelynothing118 : absolutelynothing1 replaces BigWeaponEnergy\n{\n}\n\nactor absolutelynothing119 : absolutelynothing1 replaces EddieBomber\n{\n}\n\nactor absolutelynothing119 : absolutelynothing1 replaces ReggaeCall\n{\n}\n\nactor shadeflag : CustomInventory\n{\n}\n\nactor shademanflightcountertake : CustomInventory\n{\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/BaseKirby.txt",
        "contents": "Actor BaseKirby : ClassBase\n{\nHealth 1000\nPlayer.MaxHealth 1000\nPlayer.DisplayName \"Megaman\"\nPlayer.SoundClass \"Kirby\"\n\nPlayer.StartItem \"BaseAbility\"\nPlayer.StartItem \"StarAmmo\", 35\nPlayer.StartItem \"TinyBarSpawnerNEW\"\n\n//KIRB \"#\" 1 A_Jumpifinventory(\"FloatPuffed\",1,1)\nStates\n{\nSpawn:\nKIRB A 0\nKIRB A 0 A_Jumpifinventory(\"FloatPuffed\",1,3)\nKIRB B 1\nKIRB A -1\nKIRB A 0\n\nKIRB R 1\nKIRB A 0\nGoTo Spawn\n\nSee:\nKIRB A 0 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nKIRB BCDE 5 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nGoTo Spawn+2\nPuffedSee:\nKIRB RS 5\nGoTo Spawn\n\nMissile:\nKIRB G 5\nKIRB G 4\nGoTo Spawn+3\n\nMissile2:\nKIRB F 3\nGoTo Spawn+3\nClassPain:\nKIRB H 0\nGoTo MegamanPain\n\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/BombKirby.txt",
        "contents": "Actor BombKirby : ClassBase\n{\nHealth 1000\nPlayer.MaxHealth 1000\nPlayer.DisplayName \"Bomb\"\nPlayer.SoundClass \"Kirby\"\n\nPlayer.StartItem \"BombAbility\"\nPlayer.StartItem \"StarAmmo\", 35\nPlayer.StartItem \"TinyBarSpawnerNEW\"\n\n//KIRB \"#\" 1 A_Jumpifinventory(\"FloatPuffed\",1,1)\nStates\n{\nSpawn:\nKIRB A 0\nKIRB A 0 A_Jumpifinventory(\"FloatPuffed\",1,3)\nKIRB B 1\nKIRB A -1\nKIRB A 0\n\nKIRB R 1\nKIRB A 0\nGoTo Spawn\n\nSee:\nKIRB A 0 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nKIRB BCDE 5 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nGoTo Spawn+2\nPuffedSee:\nKIRB RS 5\nGoTo Spawn\n\nMissile:\nKIRB G 5\nKIRB G 4\nGoTo Spawn+3\n\nMissile2:\nKIRB F 3\nGoTo Spawn+3\n\nClassPain:\nKIRB H 0\nGoTo MegamanPain\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ArcherKirby.txt",
        "contents": "Actor ArcherKirby : ClassBase\n{\nHealth 1000\nPlayer.MaxHealth 1000\nPlayer.DisplayName \"Archer\"\nPlayer.SoundClass \"Kirby\"\n\nPlayer.StartItem \"ArcherAbility\"\nPlayer.StartItem \"StarAmmo\", 35\nPlayer.StartItem \"TinyBarSpawnerNEW\"\n\n//ARCH \"#\" 1 A_Jumpifinventory(\"FloatPuffed\",1,1)\nStates\n{\nSpawn:\nARCH A 0\nARCH A 0 A_Jumpifinventory(\"FloatPuffed\",1,3)\nARCH B 1\nARCH A -1\nARCH A 0\n\nARCH R 1\nARCH A 0\nGoTo Spawn\n\nSee:\nARCH A 0 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nARCH BCDE 5 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nGoTo Spawn+2\nPuffedSee:\nARCH RS 5\nGoTo Spawn\n\nMissile:\nARCH \"#\" 4\nARCH G 4\nGoTo Spawn+3\n\nMissile2:\nKIRB F 3\nGoTo Spawn+3\n\nClassPain:\nARCH H 0\nGoTo MegamanPain\n\nMissile.Anim_0:\nARCH GI 2\nGoTo Spawn+3\n\nMissile.Anim_1:\nARCH I 10\nARCH I 10\nGoTo Spawn+3\n\nMissile.Anim_2:\nARCH J 7\nARCH J 7\nGoTo Spawn+3\n\nMissile.Anim_3:\nARCH IJJJ 1\nGoTo Spawn+3\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/BeamKirby.txt",
        "contents": "Actor BeamKirby : ClassBase\n{\nHealth 1000\nPlayer.MaxHealth 1000\nPlayer.DisplayName \"Beam\"\nPlayer.SoundClass \"Kirby\"\n\nPlayer.StartItem \"BeamAbility\"\nPlayer.StartItem \"StarAmmo\", 35\nPlayer.StartItem \"TinyBarSpawnerNEW\"\n\n//BEMK \"#\" 1 A_Jumpifinventory(\"FloatPuffed\",1,1)\nStates\n{\nSpawn:\nBEMK A 0\nBEMK A 0 A_Jumpifinventory(\"FloatPuffed\",1,3)\nBEMK B 1\nBEMK A -1\nBEMK A 0\n\nBEMK R 1\nBEMK A 0\nGoTo Spawn\n\nSee:\nBEMK A 0 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nBEMK BCDE 5 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nGoTo Spawn+2\nPuffedSee:\nBEMK RS 5\nGoTo Spawn\n\nMissile:\nBEMK \"#\" 4\nBEMK G 4\nGoTo Spawn+3\n\nMissile2:\nKIRB F 3\nGoTo Spawn+3\n\nClassPain:\nBEMK H 0\nGoTo MegamanPain\n\nMissile.Anim_0:\nBEMK G 17\nBEMK G 17\nGoTo Spawn+3\n\nMissile.Anim_1:\nBEMK I 10\nBEMK I 10\nGoTo Spawn+3\n\nMissile.Anim_2:\nBEMK J 10\nBEMK J 10\nGoTo Spawn+3\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/SwordKirby.txt",
        "contents": "Actor SwordKirby : ClassBase\n{\nHealth 1000\nPlayer.MaxHealth 1000\nPlayer.DisplayName \"Sword\"\nPlayer.SoundClass \"Kirby\"\n\nPlayer.StartItem \"SwordAbility\"\nPlayer.StartItem \"StarAmmo\", 35\nPlayer.StartItem \"TinyBarSpawnerNEW\"\n\n//SWDK \"#\" 1 A_Jumpifinventory(\"FloatPuffed\",1,1)\nStates\n{\nSpawn:\nSWDK A 0\nSWDK A 0 A_Jumpifinventory(\"FloatPuffed\",1,3)\nSWDK B 1\nSWDK A -1\nSWDK A 0\n\nSWDK R 1\nSWDK A 0\nGoTo Spawn\n\nSee:\nSWDK A 0 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nSWDK BCDE 5 A_Jumpifinventory(\"FloatPuffed\",1,\"PuffedSee\")\nGoTo Spawn+2\nPuffedSee:\nSWDK RS 5\nGoTo Spawn\n\nMissile:\nSWDK J 5\nSWDK K 2\nSWDK G 4\nGoTo Spawn+3\n\nMissile2:\nKIRB F 3\nGoTo Spawn+3\n\nClassPain:\nSWDK H 0\nGoTo MegamanPain\n\nMissile.Anim_0:\nSWDK J 7\nSWDK K 2\nSWDK G 7\nGoTo Spawn+3\n\nMissile.Anim_1:\nSWDK J 2\nSWDK KKLLL 1\nSWDK IIIJJ 1\nSWDK KKLLL 1\nSWDK IIIJJ 1\nSWDK J 5\nGoTo Spawn+3\n\nMissile.Anim_2:\nSWDK J 5\nSWDK G 18\nGoTo Spawn+3\n\nMissile.Anim_3:\nSWDK J 5\nSWDK MNMN 2\nSWDK MNMN 2\nGoTo Spawn+3\n\nMissile.Anim_4:\nSWDK J 7\nSWDK K 2\nSWDK G 17\nGoTo Spawn+3\n\nMissile.Anim_5:\nSWDK J 5\nSWDK MMNNMM 1\nGoTo Spawn+3\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/ClassBaseContent.txt",
        "contents": "#include \"Actors/Classes/ClassBase/classbase0.txt\"\n#include \"Actors/Classes/ClassBase/classbase1.txt\"\n#include \"Actors/Classes/ClassBase/classbase2.txt\"\n#include \"Actors/Classes/ClassBase/classbase.txt\"\n#include \"Actors/Classes/ClassBase/classbaseTID.txt\"\n#include \"Actors/Classes/ClassBase/classbase-flags.txt\""
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbase0.txt",
        "contents": "actor ClassBase0 : PlayerPawn\n{\nplayer.displayname \"ClassBase\"\nplayer.soundclass \"megaman\"\nplayer.damagescreencolor \"yellow\"\nPlayer.ColorRange 80, 93\nPlayer.ForwardMove 0.5, 0.5\nPlayer.SideMove 0.45, 0.45\nplayer.jumpz 10\nplayer.startitem \"MegaBuster\"\nplayer.startitem \"BusterAmmo\", 3\nmass 9999\ngravity 0.55\n+NODAMAGETHRUST\n+DONTBLAST\n+NOBLOOD\n+QUICKTORETALIATE\n+DONTHARMSPECIES\n+THRUSPECIES\n+NOSKIN\ndamagefactor \"Dummy\", 0.0\nPlayer.MaxSkinSizeFactor 0, 0\nscale 2.5\nbloodtype \"MegamanBlood\"\n\nVar int User_STargTID;\nVar int User_angleDistRegister;\nVar int User_STargRange;\n\nvar int user_wepangle;\nvar int user_weppitch;\nvar int user_wepangle2;\n\nvar int user_TTSPD;\nvar int user_TV;\n\nvar int User_HitMemory;\nStates\n{\nSuperSpawn:\n\"----\" A 1 A_Jump(256,\"Spawn\")\nwait\nSuperClassPain:\n\"----\" H 1 A_Jump(256,\"ClassPain\")\nwait\nSuperClassDeath:\n\"----\" H 1 A_Jump(256,\"ClassDeath\")\nwait\n\nMegamanPain:\n\"----\" H 0 A_Pain\n\"----\" H 8\ngoto SuperSpawn\n\nMegamanDeath:\n\"----\" A 0 A_Pain\n\"----\" A 3\nMegamanExplode:\n\"----\" H 0 A_PlaySoundEX(\"misc/DeathStrike\",\"Body\")\n\"----\" H 0 SetPlayerProperty(0, 0, 4)\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,60)\n\"----\" H 0 ThrustThingZ(0,35,0,0)\n\"----\" H 8\n\"----\" H 0 SetPlayerProperty(0, 0, 4)\nTNT1 A 0 A_SpawnItemEx(\"FakeDeathFX\", 0, 0, 32)\nMegamanFall:\nTNT1 A 0 A_PlayerScream\nMegamanErase:\nTNT1 A 1 A_CheckPlayerDone\nwait\n\n// SINGLEPLAYER STUFF\nTheEnd: // Used in the original ending\n\"####\" G 4\nloop\nWalkForward:\n\"####\" BBBBBCCCCCDDDDDEEEEE 1 A_Recoil(-0.8)\nloop\nCreditWalk:\n\"####\" BCDE 8\nloop\nCreditRun:\n\"####\" BCDE 5\nloop\nDozerCarry:\n\"####\" BBBBCCCCDDDDEEEEBBBBCCCCDDDDBBBBCCCCDDDD 1 A_Recoil(-1)\n\"####\" F 10 A_Stop\n\"####\" F -1\nstop\nDozerThrow:\n\"####\" F 0 A_ChangeFlag(\"THRUACTORS\",1)\n\"####\" F 20 ThrustThingZ(0, 60, 0, 1)\n\"####\" G 20\n\"####\" A -1\nstop\nEndlessPain:\n\"####\" H -1\nstop\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbase1.txt",
        "contents": "actor ClassBase1 : ClassBase0\n{\nStates\n{\nPain:\n\t\"----\" H 0\n\t\"----\" H 0 A_GiveToTarget(\"HitSound\")\n\t//\"----\" H 0 A_Giveinventory(\"HitSoundCheck\")\n\t\"----\" H 0\n\t\"----\" H 0 A_GiveInventory(\"HealStall_A\",1)\n\t\"----\" H 0 A_GiveInventory(\"HealStall_B\",1)\n\t\"----\" H 0 A_Giveinventory(\"TinyBarDisplay\")\ngoto SuperClassPain\nDeath:\n\"----\" A 0 A_GiveInventory(\"ClassDeathPickup\",1)\ngoto SuperClassDeath\n\nClassPain:\n\"####\" H 0\nMegamanPain:\n\"----\" H 0 A_JumpIfInventory(\"GravityHoldPainPower\",1,\"GravityHoldWait\")\n\"----\" H 0 A_JumpIfInventory(\"WilyIcePainPower\",1,\"WilyIceWait\")\ngoto \"Super::MegamanPain\"\nGravityHoldWait:\n\"----\" H 2\n\"----\" H 0 A_CheckFloor(2)\n\"----\" H 0 ThrustThingZ(0,150,1,0)\n\"----\" H 0\ngoto \"Super::MegamanPain\"\nWilyIceWait:\n\"----\" H 30\n\"----\" H 30\n\"----\" H 0 SetPlayerProperty(0,0,0)\n\"----\" H 0 A_TakeInventory(\"IceVision\",1)\ngoto SuperSpawn\n\nClassDeath:\n\"####\" H 0\nMegamanDeath:\n\"----\" A 0 A_JumpIfInventory(\"ExplodeDeathFlag\",1,\"MegamanExplode\")\n\"----\" A 0 A_JumpIfInventory(\"FallingDeathFlag\",1,\"MegamanFall\")\n\"----\" A 0 A_JumpIfInventory(\"RisingDeathFlag\",1,\"MegamanRise\")\n\"----\" A 0 A_JumpIfInventory(\"IceDeathFlag\",1,\"MegamanIce\")\ngoto \"Super::MegamanDeath\"\nMegamanRise:\n\"----\" A 0 A_ChangeFlag(\"NOINTERACTION\", 1)\nRiseMyMegaman:\n\"----\" A 1 ThrustThingZ(0,10,0,1)\n\"----\" A 0 A_JumpIf(ceilingz-z<=(height+1), \"RiseMyMegamanEnd\")\n\"----\" A 0 A_GiveInventory(\"RiseMyMegamanFlag\", 1)\n\"----\" A 0 A_JumpIfInventory(\"RiseMyMegamanFlag\", 35, \"RiseMyMegamanEnd\")\nloop\n/*RiseMyMegamanEnd:\n\"----\" A 0\ngoto MegamanExplode*/\nRiseMyMegamanEnd:\n\"----\" A 0 A_SpawnItemEx(\"FakeDeathFX\", 0, 0, 0)\ngoto MegamanFall\nMegamanIce:\n\"----\" A 1 A_PlayerScream\n\"----\" A 0 ACS_ExecuteAlways(998,0,105,1)\n\"----\" A 0 A_FreezeDeath\n\"----\" A 35\n\"----\" A 0 A_SpawnItemEx(\"FrozenDeathFX\", 0, 0, 16)\ngoto MegamanErase\n\nPain.GravityHold:\n\"----\" A 0 A_ChangeVelocity(momx, momy, 0, CVF_REPLACE)\n\"----\" A 0 A_JumpIf(z-floorz>180,\"GravityForce4\")\n\"----\" A 0 A_JumpIf(z-floorz>128,\"GravityForce3\")\n\"----\" A 0 A_JumpIf(z-floorz>32,\"GravityForce2\")\n\"----\" A 0 A_JumpIf(z-floorz>8,\"GravityForce1\")\nGoto GravityForceNo\nGravityForce4:\n\"----\" A 0 A_GiveInventory(\"GravityForce4\",1)\nGoto GravityForceB\nGravityForce3:\n\"----\" A 0 A_GiveInventory(\"GravityForce3\",1)\nGoto GravityForceB\nGravityForce2:\n\"----\" A 0 A_GiveInventory(\"GravityForce2\",1)\nGoto GravityForceB\nGravityForce1:\n\"----\" A 0 A_GiveInventory(\"GravityForce1\",1)\nGoto GravityForceB\nGravityForceB:\n\"----\" A 0 A_GiveInventory(\"GravityHoldPainPower\",1)\nGoto Pain+1\nGravityForceNo:\n\"----\" A 0 A_CheckFloor(2)\n\"----\" A 0 ThrustThingZ(0,150,1,0)\n\"----\" A 0\nGoto Pain+1\n\nPain.WilyIce:\n\"----\" A 0 SetPlayerProperty(0,1,4)\n\"----\" A 0 A_SpawnItemEx(\"ImFrozen\")\n\"----\" A 0 A_GiveInventory(\"IceVision\",1)\n\"----\" A 0 A_Stop\n\"----\" A 0 A_GiveInventory(\"WilyIcePainPower\",1)\nGoto Pain+1\n\nDeath.Beam:\n//Death.GravityHold:\nDeath.instagib:\nDeath.Telefrag:\n\"----\" A 0 A_GiveInventory(\"ExplodeDeathFlag\",1)\ngoto Death\nDeath.Falling:\n\"----\" A 0 A_GiveInventory(\"FallingDeathFlag\",1)\ngoto Death\nDeath.WindStorm:\nDeath.GravityHold:\nDeath.TornadoBlow:\n\"----\" A 0 A_GiveInventory(\"RisingDeathFlag\",1)\ngoto Death\n\nIce:\n\"----\" A 0 A_GiveInventory(\"IceDeathFlag\",1)\ngoto Death\n\n//////////////////\n\nPain.BotSight:\nPLY1 B 5 HealThing(1)\ngoto SuperSpawn\nPain.ProtoBuster:\nPain.DarkMan:\nPain.FireSpin:\nPain.QuickBoomerang:\nPain.Buster:\nPain.BassBuster:\nPain.WildCoil:\nPain.ChargeKick:\nPain.YamatoSpear:\nPain.DiveMissile:\nPain.StarCrash:\nPain.CentaurFlash:\nPain.FreezeCracker:\nPain.ScrewCrusher:\nPain.PharaohHold:\nPain.TornadoHold:\nPain.TrebleSentry:\nPain.ScorchWheel:\nPain.MagnetMissile:\nPain.JunkShield:\nPain.OilSlider:\nPain.BassBuster:\nPain.WaveBurner:\nPain.WaveBurnerUW:\nPain.Gamma:\nPain.Misc:\nPain.Treble:\nPain.FlameSwordSpark:\nPLY1 H 0\nGoto pain+1\nPain.Reggae:\nTNT1 A 0 A_PlaySoundEx(\"item/reggae\", \"SoundSlot7\", 0)\nGoto Pain+1\nPain.WaterBalloon:\nPain.FlashBomb:\nPain.RemoteMine:\nPain.IceWall:\nPLY1 H 0 A_ScaleVelocity(0.9)\nGoto Pain+1\nPain.SpreadDrill:\nPain.SpreadDrill2:\nPain.SpreadDrill3:\nPLY1 H 0 A_JumpIfInventory(\"SpreadDrillProtect\", 1 ,2)\nPLY1 H 0 A_PlaySoundEx(\"weapon/spreaddrillhit\",\"SoundSlot5\")\nPLY1 H 0 A_GiveInventory(\"SpreadDrillProtect\", 1)\nGoto pain+1\nPain.FlameSword:\nPLY1 H 0 A_GiveInventory(\"FlameSwordProtect\", 1)\nPLY1 HH 0 A_SpawnItemEx(\"FlameSwordBit\",0,0,0,random(-10,10),random(-10,10),random(10,15),random(0,360))\nGoto pain\npain.LaserTrident:\nPLY1 H 0 A_GiveInventory(\"LaserTridentProtect\", 1)\ngoto pain+1\nPain.WindStorm:\nPain.FlingDamage:\nPLY1 H 0 //ThrustThing(random(0,255),50,1,0)\nPLY1 H 0 ThrustThing(random(0,255),5,0,0)\nPLY1 H 0 ThrustThingZ(0,30,0,0)\nGoto pain+1\nPain.SlashClaw:\nPLY1 H 0 A_PlaySoundEx(\"weapon/slashclawhit\",\"SoundSlot5\")\nGoto Pain\nPain.FlashStopper:\nPLY1 H 0\nPLY1 H 0 A_JumpIfInventory(\"BrightBlind\", 1,3)\nPLY1 H 0 A_GiveInventory(\"BrightBlind\",125)\nPLY1 H 0 ACS_ExecuteAlways(249, 0)\nGoto pain+1\nPLY1 H 0 A_GiveInventory(\"BrightBlind\",55)\nGoto pain+1\nPain.TimeSlow:\nPLY1 H 0 A_GiveInventory(\"Slowed\",1)\nGoto pain+1\nPain.SparkShock:\nPLY1 H 0 A_SpawnItemEx(\"ShockFX\",4,0,32)\nPLY1 H 0 A_GiveInventory(\"Shocked\",1)\nGoto Pain+1\nPain.CrashBomb:\nPLY1 H 0 A_Stop\nGoto Pain+1\nPain.ConcreteShot:\nPLY1 H 0 A_JumpIfInventory(\"ConcreteVision\", 1, \"ConcreteReset\")\nPLY1 H 0 A_GiveInventory(\"ConcreteVision\", 1)\nPLY1 H 0 A_GiveInventory(\"ConcreteTime\", 105)\nPLY1 H 0 A_SpawnItemEx(\"ConcreteWatcher\")\ngoto Pain+1\nConcreteReset:\nPLY1 H 0 A_GiveInventory(\"ConcreteTime\", 105)\ngoto Pain+1\nPain.TornadoBlow:\nPLY1 H 0 ThrustThingZ(0, 60, 0, 0)\ngoto Pain+1\nPain.WilyFire:\nPLY1 H 0 A_SpawnItemEx(\"ImOnFire\")\nPLY1 H 0 A_GiveInventory(\"FireVision\",1)\nGoto Pain\nPain.Drowning:\nPain.Fire:\nPain.Falling:\nPain.Slime:\nPLY1 H 0\nPLY1 H 0 A_JumpIfInventory(\"BeatCallCheck\", 1, \"BeatAssist\")\nGoto Pain+1\nPain.TimeStopper:\nPLY1 H 0 A_GiveInventory(\"TimeStopActivator\", 1)\nGoto Pain+1\nBeatAssist:\nPLY1 H 0\nPLY1 H 0 HealThing(2)\nPLY1 H 0 ACS_ExecuteAlways(205, 0)\nGoto Pain+1\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbase2.txt",
        "contents": "actor ClassBase2 : ClassBase1\n{\nStates\n{\n\t//Copy Ability painstates\nPain.BeamAbility:\nPain.BaseAbility:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,4)\nGoto Pain\n\nPain.BeamAbility3:\n\"----\" H 0 A_GiveInventory(\"SprintStopper\",1)\n\"----\" H 0 A_GiveInventory(\"BeamOrbProtect\",1)\nGoto Pain\n\nPain.ArcherAbility:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,4)\n\"----\" H 0 A_GiveToTarget(\"PierceHitSound\")\n\"----\" H 0 A_GiveInventory(\"PuffPop\",1)\nGoto Pain+3\n\nPain.ArcherAbility1:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,4)\n\"----\" H 0 A_GiveToTarget(\"PierceHitSound\")\n\"----\" H 0 A_GiveInventory(\"PuffPop\",1)\nPain.Stagger:\n\"----\" H 0 A_ChangeVelocity(0,0,velz,CVF_RELATIVE|CVF_REPLACE)\n\"----\" H 0 A_GiveToTarget(\"PierceHitSound\")\n\"----\" H 0 A_GiveInventory(\"SprintStopper\",1)\n\"----\" H 0 A_GiveInventory(\"StaggerSlow\",1)\nGoto Pain+3\n\nPain.ArcherAbility3:\n\"----\" H 0 A_Giveinventory(\"MegaArrowProtect\")\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,15)\n\"----\" H 0 A_GiveToTarget(\"PierceHitSound\")\n\"----\" H 0 A_GiveInventory(\"PuffPop\",1)\nGoto Pain+3\n\nPain.SwordAbility3:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,15)\n\"----\" H 0 A_ChangeVelocity(0,0,velz,CVF_RELATIVE|CVF_REPLACE)\n\"----\" H 0 A_GiveToTarget(\"SlashHitSound\")\n\"----\" H 0 A_GiveInventory(\"SprintStopper\",1)\n\"----\" H 0 A_GiveInventory(\"StaggerSlow\",1)\nGoto Pain+3\n\nPain.SwordAbility2:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,30)\nPain.SwordAbility:\n\"----\" H 0 A_GiveToTarget(\"SlashHitSound\")\nPain.MeleeHit:\n\"----\" H 0 A_ChangeVelocity(0,0,velz,CVF_RELATIVE|CVF_REPLACE)\n\"----\" H 0 A_GiveInventory(\"MeleeRepel_A\",1)\n\"----\" H 0 A_GiveInventory(\"SprintStopper\",1)\n\"----\" H 0 A_GiveInventory(\"StaggerSlow\",1)\n\"----\" H 0 A_GiveInventory(\"FlinchItem\",1)\nGoto Pain+3\n\nPain.HammerAbility:\n\"----\" H 0 ACS_NamedExecuteAlways(\"HitKnockBack\",0,25)\n\"----\" H 0 ThrustThingZ(0,15,0,1)\n\"----\" H 0 A_GiveInventory(\"FlinchItem\",1)\n\"----\" H 0 A_GiveInventory(\"SprintStopper\",1)\n\"----\" H 0 A_GiveInventory(\"StaggerSlow\",1)\nGoto Pain\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbase.txt",
        "contents": "actor ClassBase : ClassBase2 {}\n\nActor StandardClassBase : ClassBase\n{\nHealth 100\nPlayer.MaxHealth 100\nPlayer.ForwardMove 0.5, 0.5\nPlayer.SideMove 0.45, 0.45\n}\n\nActor DelicateClassBase : ClassBase\n{\nHealth 75\nPlayer.MaxHealth 75\nPlayer.ForwardMove 0.5, 0.5\nPlayer.SideMove 0.45, 0.45\n}\n\nActor SwiftClassBase : ClassBase\n{\nHealth 50\nPlayer.MaxHealth 50\nPlayer.ForwardMove 0.65, 0.65\nPlayer.SideMove 0.55, 0.55\n}\n\nActor HardyClassBase : ClassBase\n{\nHealth 150\nPlayer.MaxHealth 150\nPlayer.ForwardMove 0.5, 0.5\nPlayer.SideMove 0.45, 0.45\n}\n\nActor BulkyClassBase : ClassBase\n{\nHealth 250\nPlayer.MaxHealth 250\nPlayer.ForwardMove 0.45, 0.45\nPlayer.SideMove 0.45, 0.45\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbase-flags.txt",
        "contents": "actor HitSoundCheck : CustomInventory\n{\nStates\n{\nPickup:\nTNT1 A 0 A_JumpIfInventory(\"WeaknessHitFlag\",1,\"CritSound\")\nTNT1 A 0 A_GiveToTarget(\"HitSoundMaker\")\nstop\nCritSound:\nTNT1 A 0 A_GiveToTarget(\"CritSoundMaker\")\nstop\n}\n}\n\nactor ClassDeathPickup : CustomInventory\n{\nStates\n{\nPickup:\nTNT1 A 0 SetPlayerProperty(0, 0, 4)\nTNT1 A 0 A_TakeInventory(\"WeaponCharge\",999)\nTNT1 A 0 A_TakeInventory(\"ConcreteTime\", 999)\n//TNT1 A 0 A_Giveinventory(\"HitSoundCheck\")\nTNT1 A 0 A_NoBlocking\nTNT1 A 0 A_GiveInventory(\"CutterFlag\",999)\nTNT1 A 0 A_GiveInventory(\"IsDead\",1)\nTNT1 A 0 A_Stop\nTNT1 A 0 A_GiveToTarget(\"KilledMeStock\",1)\nTNT1 A 0 A_GiveToTarget(\"KilledMe\",1)\nstop\n}\n}\n\nactor PainPower : Powerup\n{\npowerup.duration 3\n}\n\nactor GravityHoldPainPower : PainPower {}\nactor WilyIcePainPower : PainPower {}\n\nactor TypeDeathFlag : Inventory\n{\ninventory.amount 1\ninventory.maxamount 1\n}\n\nactor ExplodeDeathFlag : TypeDeathFlag {}\nactor FallingDeathFlag : TypeDeathFlag {}\nactor RisingDeathFlag : TypeDeathFlag {}\nactor IceDeathFlag : TypeDeathFlag {}\n\nactor RiseMyMegamanFlag : Inventory\n{\ninventory.amount 1\ninventory.maxamount 35\n}\n\nactor SelfTotallyFrozen : CustomInventory\n{\nStates\n{\nPickup:\nTNT1 A 0 A_GiveInventory(\"SelfTotallyFrozenFlag\",1)\nTNT1 A 0 SetPlayerProperty(0,1,4)\nstop\n}\n}\n\nactor SelfTotallyFrozenFlag : Inventory\n{\ninventory.amount 1\ninventory.maxamount 1\n}\n\nactor Unfreeze : CustomInventory\n{\nStates\n{\nPickup1:\nTNT1 A 0 A_JumpIfInventory(\"SelfTotallyFrozenFlag\",1,\"PickupNo\")\n//TNT1 A 0 A_JumpIfInventory(\"TimeStoppedTFFlag\",1,\"PickupNo\")\n//TNT1 A 0 A_JumpIfInventory(\"WilyIceTFFlag\",1,\"PickupNo\")\n//TNT1 A 0 A_JumpIfInventory(\"SelfStoppedTFFlag\",1,\"PickupNo\")\n//TNT1 A 0 A_JumpIfInventory(\"TimeStoppedCounter\",1,\"PickupNo\")\n//TNT1 A 0 A_TakeInventory(\"TotallyFrozenLook\",1)\nTNT1 A 0 SetPlayerProperty(0,0,4)\nstop\nPickupNo:\nTNT1 A 0\nstop\n}\n}\n\nactor SelfTotallyUnfrozen : Unfreeze\n{\nStates\n{\nPickup:\nTNT1 A 0 A_TakeInventory(\"SelfTotallyFrozenFlag\",1)\ngoto Pickup1\n}\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Classes/ClassBase/classbaseTID.txt",
        "contents": "//[+]========================================================================[+]\n//----------------------|Healing Related Actors|--------------------------------\n//[+]========================================================================[+]\nactor HealStall_A : powerup {Inventory.amount 1 powerup.duration -7}\nactor HealStall_B : powerup {Inventory.amount 1 powerup.duration -2}\n\nactor DetoxLevel : inventory {Inventory.amount 1 Inventory.Maxamount 100}\n\n//[+]========================================================================[+]\n//------------------------|Status Effect Actors|--------------------------------\n//[+]========================================================================[+]\n\n//[+]=========================[+]\n//----------|Poison|-------------\n//[+]=========================[+]\nactor PoisonWatcher //: CustomInventory\n{\n+MISSILE\n+RIPPER\n+NOGRAVITY\n+NOINTERACTION\nReactiontime 5\nObituary \"%o succumed to %k's Burning\"\nvar int user_OwnerTID;\nvar int user_LoopCount;\nvar int user_TickDamage;\nStates\n{\nSpawn:\nTNT1 A 0\n// Sow e start by making this actor immediately set it's master to the spawner's target (last person to damage them)\n// and then we set them to our tracer pointer.\nTNT1 A 0 A_GiveToTarget(\"PoisonCritAble\",1)\nLASH A 0 A_Setuservar(\"user_OwnerTID\",ACS_ExecuteWithResult(257,0))\nLASH A 0 A_Setuservar(\"user_TickDamage\",4) //ACS_ExecuteWithResult(GetTargValueHPPerc,6)\nLASH A 0 A_TransferPointer(AAPTR_TARGET,AAPTR_DEFAULT,AAPTR_TARGET,AAPTR_MASTER,PTROP_NOSAFEGUARDS)\nLASH A 0 A_ReArrangePointers(AAPTR_DEFAULT,AAPTR_DEFAULT,AAPTR_TARGET)\nSpawn2:\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\nTNT1 A 0 A_GiveToTarget(\"PoisonedEffect\",1)\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\n//TNT1 A 0 A_GiveToTarget(\"PoisonedEffect\",1)\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\nTNT1 A 0 A_GiveToTarget(\"PoisonedEffect\",1)\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\n//TNT1 A 0 A_GiveToTarget(\"PoisonedEffect\",1)\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\nTNT1 A 0 A_GiveToTarget(\"PoisonedEffect\",1)\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempPoisonProof\",1,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"DetoxLevel\",100,\"Detox\")\n\nTNT1 A 0 A_SetuserVar(\"user_LoopCount\", user_LoopCount+1)\nTNT1 A 0 A_Jumpif( user_LoopCount <= 7,\"Spawn2\")\nTNT1 A 0 A_SetuserVar(\"user_LoopCount\", 0)\nTNT1 A 0 A_JumpIfInTargetInventory(\"ProtectorFlag\",1,5)\n\n// when we deal tick damage, we set the target to our master (the person responsible for inflicting the dot) and use this script\n// to make them deal tick damage to the victim directly.\nLASH A 0 A_ReArrangePointers(AAPTR_MASTER,AAPTR_DEFAULT,AAPTR_DEFAULT)\nLASH A 0  ACS_NamedExecuteAlways(\"DotDamager\", 0,user_TickDamage,user_OwnerTID) //DOT Script\nLASH A 1 // this delay is important, otherwise it becomes a suicide\nLASH A 0 A_ReArrangePointers(AAPTR_TRACER,AAPTR_DEFAULT,AAPTR_DEFAULT)\n//now we set the target back to the spawner to keep the burn effect on them.\n//TNT1 A 0 A_GiveToTarget(\"BurnedDamage\",1)\nLASH A 0\n\nTNT1 A 1 A_JumpIfInTargetInventory(\"PoisonMark\",1,\"Spawn2\")\nstop\nDetox:\nTNT1 A 1 A_GiveToTarget(\"DetoxCureEffect\",1)\nDeath:\nDeathTake:\nTNT1 A 0\nTNT1 A 1 A_TakefromTarget(\"PoisonMark\",999)\nTNT1 A 1 A_TakefromTarget(\"PoisonCritAble\",999)\nTNT1 A 1 A_TakefromTarget(\"DetoxLevel\",999)\nstop\n}\n}\n\nactor StatusNummer : PowerProtection // for DOTs\n{\ninventory.amount 1\ninventory.maxamount 1\n+NOPAIN\nPowerup.Duration 1\n}\n\nactor PoisonedFX1  //These are decorative.\n{\nPROJECTILE\n+NOINTERACTION\n+NOGRAVITY\nheight 2\nRadius 2\ndamage (0)\nreactiontime 1\nscale 0.7\nRenderStyle \"Translucent\"\nAlpha 0.9\nStates\n{\nSpawn:\nWAVB GGGGG 2\nWAVB H 3 A_Stop\nstop\n}\n}\n\nactor PoisonedEffect : CustomInventory\n{\ninventory.amount 1\ninventory.maxamount 1\nStates\n{\nSpawn:\nTNT1 A 0\nstop\nPickup:\nTNT1 A 0 //SetPlayerProperty(0,1,4)\nTNT1 A 0 A_SpawnItemEx(\"PoisonedFX1\",random(-24,24),random(-32,32),random(30,34),0,0,Random(1,4))\nTNT1 A 0 //SetPlayerProperty(0,1,4)\nstop\n}\n}\n\nactor PoisonMark : PowerProtection\n{\npowerup.duration -15\nDamageFactor \"Stinger\" , 3.0\nPowerup.Color Green, 0.15\n}\n\nactor PoisonStackDelay : powerup\n{powerup.duration 5}\n\nactor DetoxFX1 : FXActor_A\n{\nTranslation \"4:4=106:106\", \"196:196=112:112\"\nreactiontime 1\nscale 1.5\nAlpha 0.8\nStates\n{\nSpawn:\nTNT1 A 0\nICMS ABCDDDEEF 2\nstop\n}\n}\n\nactor DetoxFX2 : DetoxFX1\n{\nTranslation \"4:4=137:137\", \"196:196=105:105\"\n}\n\nactor DetoxFX3 : DetoxFX1\n{\nTranslation \"4:4=96:96\", \"196:196=203:203\"\n}\n\nactor DetoxEfectSpawn : CustomInventory\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nSpawn:\nTNT1 A 0\nstop\nPickup:\nBUST C 0 A_Jumpifinventory(\"DetoxLevel\",66,\"Effect3\")\nBUST C 0 A_Jumpifinventory(\"DetoxLevel\",33,\"Effect2\")\nTNT1 AA 1 A_SpawnItemEx(\"DetoxFX1\",random(-24,24),random(-32,32),random(40,44),0,0,Random(1,3))\nstop\nEffect2:\nTNT1 AA 1 A_SpawnItemEx(\"DetoxFX2\",random(-24,24),random(-32,32),random(40,44),0,0,Random(1,3))\nTNT1 A 0\nstop\nEffect3:\nTNT1 AA 1 A_SpawnItemEx(\"DetoxFX3\",random(-24,24),random(-32,32),random(40,44),0,0,Random(1,3))\nTNT1 A 0\nstop\n}\n}\n\nactor DetoxCureEffect : CustomInventory\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nSpawn:\nTNT1 A 0\nstop\nPickup:\nBUST C 0\nTNT1 A 0 A_PlaySoundEx(\"Support/Heal1\", \"SoundSlot5\",0)\nCENF AAAA 0 A_SpawnItemEx(\"CentaurFlashFX\", 0, 0, 28, 256/32, 256/32, random2(256/32), random(0, 359))\nCENF AAAA 0 A_SpawnItemEx(\"DetoxFX3\", 0, 0, 28, 256/32, 256/32, random2(256/32), random(0, 359))\nTNT1 A 0\nstop\n}\n}\n//[+]=========================[+]\n//--------|Burning|------------\n//[+]=========================[+]\nactor BurnWatcher //: CustomInventory\n{\n+MISSILE\n+RIPPER\n+NOGRAVITY\n+NOINTERACTION\nReactiontime 5\nObituary \"%o succumed to %k's Burning\"\nvar int user_OwnerTID;\nvar int user_TickDamage;\nvar int user_LoopCount;\nStates\n{\nSpawn:\nTNT1 A 0\n// Sow e start by making this actor immediately set it's master to the spawner's target (last person to damage them)\n// and then we set them to our tracer pointer.\nTNT1 A 0 A_GiveToTarget(\"FireCritAble\",1)\nLASH A 0 A_Setuservar(\"user_OwnerTID\",ACS_ExecuteWithResult(257,0))\nLASH A 0 A_TransferPointer(AAPTR_TARGET,AAPTR_DEFAULT,AAPTR_TARGET,AAPTR_MASTER,PTROP_NOSAFEGUARDS)\nLASH A 0 A_ReArrangePointers(AAPTR_DEFAULT,AAPTR_DEFAULT,AAPTR_TARGET)\nSpawn2:\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempFireProof\",1,\"DeathTake\")\nTNT1 A 0 A_GiveToTarget(\"BurnedEffect\",1)\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempFireProof\",1,\"DeathTake\")\nTNT1 A 0 A_GiveToTarget(\"BurnedEffect\",1)\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempFireProof\",1,\"DeathTake\")\nTNT1 A 0 A_GiveToTarget(\"BurnedEffect\",1)\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempFireProof\",1,\"DeathTake\")\nTNT1 A 0 A_GiveToTarget(\"BurnedEffect\",1)\nTNT1 A 1 A_JumpIfInTargetInventory(\"CutterFlag\",999,\"DeathTake\")\nTNT1 A 0 A_JumpIfInTargetInventory(\"TempFireProof\",1,\"DeathTake\")\n\nTNT1 A 0 A_SetuserVar(\"user_LoopCount\", user_LoopCount+1)\nTNT1 A 0 A_Jumpif( user_LoopCount <= 2,\"Spawn2\")\nTNT1 A 0 A_SetuserVar(\"user_LoopCount\", 0)\n\nTNT1 A 0 A_JumpIfInTargetInventory(\"ProtectorFlag\",1,5)\n\n// when we deal tick damage, we set the target to our master (the person responsible for inflicting the dot) and use this script\n// to make them deal tick damage to the victim directly.\nLASH A 0 A_ReArrangePointers(AAPTR_MASTER,AAPTR_DEFAULT,AAPTR_DEFAULT)\nLASH A 0  ACS_NamedExecuteAlways(\"DotDamager\", 0,10,user_OwnerTID) //DOT Script\nLASH A 1 // this delay is important, otherwise it becomes a suicide\nLASH A 0 A_ReArrangePointers(AAPTR_TRACER,AAPTR_DEFAULT,AAPTR_DEFAULT)\n//now we set the target back to the spawner to keep the burn effect on them.\n//TNT1 A 0 A_GiveToTarget(\"BurnedDamage\",1)\nLASH A 0\nTNT1 A 1 A_JumpIfInTargetInventory(\"BurnMark\",1,\"Spawn2\")\nTNT1 A 1 A_TakefromTarget(\"FireCritAble\",999)\nstop\nDeath:\nDeathTake:\nTNT1 A 0\nTNT1 A 1 A_TakefromTarget(\"BurnMark\",999)\nTNT1 A 1 A_TakefromTarget(\"FireCritAble\",999)\nstop\n}\n}\n\nactor BurnedEffect : CustomInventory\n{\ninventory.amount 1\ninventory.maxamount 1\nStates\n{\nSpawn:\nTNT1 A 0\nstop\nPickup:\nTNT1 A 0 //SetPlayerProperty(0,1,4)\nTNT1 A 0 A_SpawnItemEx(\"BurnedFX1\",random(-24,24),random(-32,32),random(1,32))\nTNT1 A 0 //SetPlayerProperty(0,1,4)\nstop\n}\n}\n\nactor BurnMark : PowerProtection\n{\npowerup.duration 80\nDamagefactor \"Crisperizer\" , 3.0\nDamagefactor \"HeatRay\" , 3.0\n\nPowerup.Color Red, 0.15\n}\n\nactor BurnStackDelay : powerup\n{powerup.duration 5}\n\nactor BurnedFX1  //These are decorative.\n{\nPROJECTILE\n+THRUACTORS\n+NOGRAVITY\nheight 2\nRadius 2\ndamage (0)\nreactiontime 1\nscale 1\nRenderStyle \"Add\"\nAlpha 0.5\nStates\n{\nSpawn:\nBRNF AABBCCDDEEFGH 1\nDeath:\nTNT1 A 1\nstop\n}\n}\n//[+]========================================================================[+]\n//------------------------|Miscellaneous Actors|--------------------------------\n//[+]========================================================================[+]\n\nactor ExplodeDeathFX  //These are decorative.\n{\nPROJECTILE\n+THRUACTORS\n+NOGRAVITY\nheight 2\nRadius 2\ndamage (0)\nreactiontime 1\nscale 5\n//RenderStyle \"Translucent\"\n//Alpha 0.5\nStates\n{\nSpawn:\nTNT1 A 0\nTNT1 A 0 A_PlaySoundEx(\"weapon/drillexplode\", \"Body\")\nTNT1 AAAAA 2 A_SpawnitemEX(\"ExplodeDeathFX1\",Random(-80,80),Random(-80,80),Random(0,40))\nstop\nDeath:\nASEX A 0\nstop\n}\n}\n\nactor ExplodeDeathFX1  //These are decorative.\n{\nPROJECTILE\n+THRUACTORS\n+NOGRAVITY\nheight 2\nRadius 2\ndamage (0)\nreactiontime 1\nscale 2\n//RenderStyle \"Translucent\"\n//Alpha 0.5\nStates\n{\nSpawn:\nASEX ABCDEF 1\nstop\nDeath:\nASEX A 0\nstop\n}\n}\n\nactor KilledMeflag : KilledMe Replaces KilledMe\n{\ninventory.amount 1\ninventory.maxamount 1\nstates\n{\nSpawn:\nTNT1 A 1\nstop\nPickup:\nTNT1 A 1 ACS_ExecuteAlways(203,0)\nTNT1 A 1 A_GiveInventory(\"GotKill\")\nstop\n}\n}\n\nactor GotKill : Powerup\n{\ninventory.amount 1\nPowerup.Duration 10\n}\n\nactor IceDeathStatueFX1  //These are decorative.\n{\nPROJECTILE\n+THRUACTORS\n+NOGRAVITY\nheight 2\nRadius 2\ndamage (0)\nreactiontime 1\nscale 2\n//RenderStyle \"Translucent\"\n//Alpha 0.5\nStates\n{\nSpawn:\n\"----\" H 100\nstop\nDeath:\nASEX A 0\nstop\n}\n}\n\nactor HitSoundMaker : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 ACS_NamedExecuteAlways(\"HitSound\",0)\nTNT1 A 0\nstop\n}\n}\n\nactor CritSoundMaker : CustomInventory\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 ACS_NamedExecuteAlways(\"HitSound\",0,1)\nTNT1 A 0 A_TakeInventory(\"WeaknessHitFlag\",9)\nstop\n}\n}\n\nactor HitSound : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 ACS_NAmedExecuteAlways(\"PersonalSound\",0,2)\nstop\n}\n}\n\nactor SlashHitSound : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 ACS_NAmedExecuteAlways(\"PersonalSound\",0,3)\nstop\n}\n}\n\nactor PierceHitSound : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 ACS_NAmedExecuteAlways(\"PersonalSound\",0,4)\nstop\n}\n}\n\nactor MeleeRepel_A : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 A_JumpifCloser(90,\"Repell\")\nstop\nRepell:\nTNT1 A 0 A_GiveToTarget(\"MeleeRepel_B\")\nstop\n}\n}\n\nactor MeleeRepel_B : CustomInventory  //stops the jump\n{\ninventory.amount 1\nInventory.MaxAmount 100\n+AUTOACTIVATE\nStates\n{\nPickup:\nTNT1 A 0\nTNT1 A 0 A_Recoil(5)\nstop\n}\n}\n\nactor DeathFX1N : DeathFX1 replaces DeathFX1\n{\nheight 1\nradius 1\n+NOINTERACTION\n+NOGRAVITY\n-SOLID\n+DONTBLAST\nscale 2.5\nPROJECTILE\nSpeed 15\nreactiontime 3\nStates\n{\nSpawn:\nMMFX BCDE 2\nMMFX A 0 A_CountDown\nloop\n}\n}\n\nactor StarDeathFX2 replaces DeathFX2\n{\nheight 1\nradius 1\n+NOINTERACTION\n+NOGRAVITY\n-SOLID\n+DONTBLAST\n+CLIENTSIDEONLY\nscale 2.5\nPROJECTILE\nSpeed 7\nreactiontime 12\nStates\n{\nSpawn:\nMMFX A 0\nSTRP E 3\nSTRP E 0 A_ScaleVelocity(0.9)\nSTRP F 3\nSTRP F 0 A_ScaleVelocity(0.9)\nSTRP G 3\nSTRP G 0 A_ScaleVelocity(0.9)\nSTRP H 3\nSTRP H 0 A_ScaleVelocity(0.9)\nSTRP H 3\nSTRP H 0 A_ScaleVelocity(0.9)\nSTOP\n}\n}\n\nactor StarDeathFX1 replaces DeathFX1\n{\nheight 1\nradius 1\n+NOINTERACTION\n+NOGRAVITY\n-SOLID\n+DONTBLAST\n+CLIENTSIDEONLY\nscale 2.5\nPROJECTILE\nSpeed 15\nreactiontime 12\nStates\n{\nSpawn:\nSTRP A 3 A_CountDown\nSTRP A 0 A_ScaleVelocity(0.8)\nSTRP B 3 A_CountDown\nSTRP B 0 A_ScaleVelocity(0.8)\nSTRP C 3 A_CountDown\nSTRP C 0 A_ScaleVelocity(0.8)\nSTRP D 3 A_CountDown\nSTRP D 0 A_ScaleVelocity(0.8)\nloop\n}\n}"
      }
    ]
  },
  "maps": []
}

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.