actor JunkShieldBoss : BaseMM8BDMWep_CBM
{
dropitem "JunkShieldWepCDropped"
Weapon.AmmoUse 300//60
Weapon.AmmoGive 0
Weapon.SlotNumber 7
Obituary "$OB_JUNKSHIELD"
weapon.ammotype "TrunkAmmo"
States
{
Spawn:
C_07 B 1
loop
Ready:
JCLA A 0 ACS_ExecuteAlways(998,0,841)
JCLA A 0 A_JumpIfInventory("TrunkAmmo",300,"Ready2")//60
JCLA A 0 A_JumpIfInventory("TrunkAmmo",225,"Ready2a")//45
JCLA A 1 A_WeaponReady(WRF_NOPRIMARY)
JCLA A 0 A_GiveInventory("TrunkAmmo",1)//A_GiveInventory("JunkRegen",1)
Goto Ready+1
Ready2a:
JCLA A 0 A_JumpIfInventory("TrunkAmmo",300,"Ready2")
JCLA A 0 A_JumpIfInventory("UseJunkShieldFlag",1,"JunkShield")
JCLA A 1 A_WeaponReady(WRF_NOPRIMARY)
JCLA A 0 A_GiveInventory("TrunkAmmo",1)
Goto Ready2a
Ready2:
JCLA A 0 A_JumpIfInventory("UseJunkShieldFlag",1,"JunkShield")
JCLA A 1 A_WeaponReady
JCLA A 0 A_GiveInventory("TrunkAmmo",1)
Goto Ready2
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
TNT1 A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
JCLA A 1 A_Raise
Loop

Fire:
JCLA A 0// A_JumpIfNoAmmo("Hold")
JCLA A 0 A_GiveInventory("UseJunkShieldFlag",1)
JCLA ABCABC 2 A_TakeInventory("TrunkAmmo",50)//
JCLA A 0 A_SpawnItemEx("JunkCube",64,0,8,0,0,0,0,1)
JCLA D 19 A_PlaySoundEx("Weapon/Thunderbolt","Weapon")
JCLA ABCABC 3
JCLA A 1
JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
goto Ready+1

Altfire:
JCLA A 0 A_GiveInventory("UseJunkShieldFlag",1)
GUTP A 0 A_GiveInventory("JunkmanAlt_CI",1)
JCLA A 0 A_TakeInventory("BlockLaunched",999)
GUTP A 0 A_GiveInventory("GoFlag")
GUTP A 0 A_PlaySoundEx("Weapon/napalm","Weapon")
JCLA LM 5 A_GiveInventory("TrunkAmmo",1)
TNT1 A 0 A_JumpIfInventory("BlockLaunched",1,"PunchEnd")
TNT1 A 0 A_JumpIfInventory("TrunkAmmo",14,"ThrowJunk")
PunchEnd:
GUTP A 0 A_TakeInventory("GoFlag")
JCLA LLLLL 2 A_GiveInventory("TrunkAmmo",1)
JCLA EEE 1 A_GiveInventory("TrunkAmmo",1)
JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
//JCLA A 0 A_Refire
Goto Ready+1
ThrowJunk:
JCLA A 0 A_TakeInventory("TrunkAmmo",70)//14
JCLA A 0 A_GiveInventory("JunkmanAlt2_CI",1)
goto PunchEnd

JunkShield:
JCLA A 0 //A_JumpIfInventory("JunkDoneC",1,2)
JCLA A 0 A_JumpIfInventory("TrunkAmmo",225,"ShieldUp1")//45
JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
Goto Ready+2
ShieldUp1:
JCLA E 0 A_TakeInventory("JunkDoneC",99)
JCLA E 0 A_TakeInventory("TrunkAmmo", 225)
JCLA A 0 A_JumpIfInventory("ShieldCheck", 1,"ShieldUp2")
JCLA QRSTU 2
JCLA E 0 A_TakeInventory("BasicArmor",999)
JCLA E 0 A_GiveInventory("BossBasicArmorAmount",20)
JCLA E 0 A_GiveInventory("BossJunkArmor",1)
JCLA E 0 A_GiveInventory("ShieldCheck",1)
JARM A 0 A_SpawnItemEx("JunkWatcherC")
JCLA E 0 //A_SpawnItemEx("JunkmanShieldHelper")
JCLA K 2 //A_GunFlash
JCLA EEE 2
JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
goto Ready+2
ShieldUp2:
JCLA A 0 A_GiveInventory("JunkDoneC",1)
JCLA QRS 2
JCLA A 0 A_TakeInventory("JunkDoneC",1)
JCLA A 0 A_PlayWeaponSound("weapon/junkshield")
JCLA T 2 A_GiveInventory("JunkmanOther1_CI",1)
JCLA U 2 A_GiveInventory("JunkmanOther2_CI",1)
JCLA A 0
JCLA A 0 A_TakeInventory("BasicArmor",999)
JCLA E 0 A_GiveInventory("BossBasicArmorAmount",20)
JCLA E 0 A_GiveInventory("BossJunkArmor",1)
JCLA E 0 A_GiveInventory("ShieldCheck",1)
JCLA E 0 A_SpawnItemEx("JunkWatcherC")
JCLA K 2
JCLA EEE 2
JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
Goto Ready+2

//Hold:
//JCLA A 1 //ACS_Execute(979,0)
//GUTP A 0 A_GiveInventory("TrunkAmmo",1)
//JCLA A 0 A_TakeInventory("UseJunkShieldFlag",999)
//JCLA A 0 A_Refire
//Goto Ready+1
NoAmmo:
JCLA A 0
//JCLA A 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor JunkDoneC : OnceC {}

actor JunkShieldUseItem : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
inventory.icon "JunIcon"
scale 2.0
inventory.pickupmessage "I love the smell of trash in the morning."
+INVBAR
states
{
Spawn:
WEA3 N 1
loop
Use:
TNT1 A 0 A_JumpIfInventory("UseJunkShieldFlag",1,"No")
TNT1 A 0 A_JumpIfInventory("TrunkAmmo",225,"Success")
fail
Success:
TNT1 A 0 A_PlaySoundEx("item/JunkArmor","SoundSlot6")
TNT1 A 0 A_GiveInventory("UseJunkShieldFlag",1)
fail
No:
TNT1 A 0
fail
}
}

actor JunkWatcherC
{
Height 0
Radius 0
+NOINTERACTION
-SOLID
+NOGRAVITY
+MISSILE
States
{
Spawn:
TNT1 A 0
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 1 A_GiveToTarget("BossJunkShieldRadiusItem",1)
TNT1 A 0 A_GiveToTarget("BossJunkShieldItem",1)
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("JunkDoneC",1,"Death")
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",1,"Spawn")
goto Death
Death:
TNT1 A 0 A_JumpIfInTargetInventory("IsDead",1,"SuperDeath")
TNT1 A 1 A_GiveToTarget("BossJunkBreakSoundItem",1)
TNT1 A 0 A_TakeFromTarget("BossBasicArmorAmount",1000)
TNT1 A 1 A_TakeFromTarget("ShieldCheck",1)
TNT1 A 0 A_TakeFromTarget("BasicArmor",1000)
TNT1 A 0 A_TakeFromTarget("JunkDoneC",100)
stop
SuperDeath:
TNT1 A 0
stop
}
}

actor BossJunkBreakSoundItem : CustomInventory
{
States
{
Pickup:
TNT1 A 1 A_PlaySoundEx("weapon/JunkBreaker","SoundSlot7")
stop
}
}



actor BossJunkShieldRadiusItem : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEx("BossJunkShield",0,0,32,momx,momy,momz,0,9,0)
stop
}
}


actor BossJunkShieldItem : CustomInventory
{
States
{
Pickup:
TNT1 A 0 A_SpawnItemEx("BossJunkShieldRadius",0,0,32,momx,momy,momz,0,8,0)
stop
}
}

actor JunkPunch : GutPunch
{
//damagetype "JunkShield"
Obituary "$OB_BASICPUNCH"
damagetype "JunkPunch"
damage (30)
States
{
Death:
GUTP Y 0 A_Explode(30,40,0)
goto XDeath
}
}

actor JunkPunchB : JunkPunch{translation "202:202=205:205"}
actor JunkPunchR : JunkPunch{translation "202:202=171:171"}
actor JunkPunchO : JunkPunch{translation "202:202=104:104"}
actor JunkPunchP : JunkPunch{translation "202:202=229:229"}

actor TrunkAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 600
+INVENTORY.IGNORESKILL
}

actor GoFlag : Inventory
{
inventory.amount 1
inventory.maxamount 1
}
actor UseJunkShieldFlag : Inventory
{
inventory.amount 1
inventory.maxamount 1
}
actor BlockLaunched : Inventory
{
inventory.amount 1
inventory.maxamount 1
}

actor JunkCube
{
//Translation "192:192=4:4", "198:198=94:94"
damagetype "JunkShield"
Damage (12)
+RIPPER
Scale 2.5
Radius 30
Height 60
Speed 0

mass 99999
Health 200
damagefactor "JunkShield", 0.0
damagefactor "JunkPunch", 0.0
damagefactor "Fire", 0.1 //MageStaff
Obituary "$OB_JUNKCUBE"
+DONTRIP

PROJECTILE
//-MISSILE
+DONTBLAST
-NOGRAVITY
+NOEXPLODEFLOOR
+DONTSPLASH

-NOBLOCKMAP
+SHOOTABLE
+NOTARGETSWITCH
+CANTSEEK
+NOPAIN
+DONTREFLECT

Species "JunkCubeThing"
states
{
Spawn:
JUCT A 0
//JUCT A 0
//JUCT A 1
//JUCT A 0 A_ChangeFlag("SHOOTABLE",1)
//JUCT A 0 A_ChangeFlag("MISSILE",1)
JUCT A 1 A_JumpIf(z-floorz==0,24)
JUCT A 1 A_JumpIf(z-floorz==0,24)
JUCT A 1 A_JumpIf(z-floorz==0,24)
JUCT B 1 A_JumpIf(z-floorz==0,24)
JUCT B 1 A_JumpIf(z-floorz==0,24)
JUCT B 1 A_JumpIf(z-floorz==0,24)
JUCT C 1 A_JumpIf(z-floorz==0,24)
JUCT C 1 A_JumpIf(z-floorz==0,24)
JUCT C 1 A_JumpIf(z-floorz==0,24)
JUCT D 1 A_JumpIf(z-floorz==0,24)
JUCT D 1 A_JumpIf(z-floorz==0,24)
JUCT D 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
JUCT F 1 A_JumpIf(z-floorz==0,24)
JUCT F 1 A_JumpIf(z-floorz==0,24)
JUCT F 1 A_JumpIf(z-floorz==0,24)
JUCT G 1 A_JumpIf(z-floorz==0,24)
JUCT G 1 A_JumpIf(z-floorz==0,24)
JUCT G 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
JUCT E 1 A_JumpIf(z-floorz==0,24)
goto Spawn2
SpawnG:
JUCT AAABBBCCCDDDEEEFFFGGGEEE 1 ThrustThingZ(0,0,0,1)
JUCT D 0 A_ChangeFlag("FLOORHUGGER",1)
goto Spawn2G
Spawn2:
JUCT EEEEFFFFGGGG 1 A_JumpIf(z-floorz==0,"Spawn2GStart")
JUCT D 0 DamageThing(7)
loop
Spawn2GStart:
JUCT D 0 ThrustThingZ(0,0,0,1)
JUCT D 0 //A_ChangeFlag("FLOORHUGGER",1)
//JUCT D 0 A_ChangeFlag("MISSILE",1)
Spawn2G:
JUCT E 0 A_JumpIf(ACS_ExecuteWithResult(C_CHECK_TARGET_OOC)==0,"Death")
JUCT EEEEFFFFGGGG 1 A_JumpIfInTargetInventory("GoFlag",1,"Launch")
JUCT D 0 DamageThing(7)
goto Spawn2G
Launch:
JUCT EEEEFFFFGGGG 1 A_JumpIfCloser(100,"Launch2")
JUCT D 0 DamageThing(7)
goto Spawn2G
XDeath:
Death:
JUCT A 0 A_PlaySoundEx("weapon/JunkBreaker","Weapon")
JUCT AAAAAAAA 0 A_SpawnItemEx("JunkBitsX",0,0,0,random(8,12),0,random(11,16),random(0,359),1)
TNT1 A 1
stop

Launch2:
JUCT D 0 A_GiveToTarget("BlockLaunched",1)
JUCT D 1 ACS_ExecuteAlways(259,0,2)
JUCT D 0 A_SpawnItemEx("JunkCubeGo",0,0,0,20,0,0,0,1)
stop
}
}

actor JunkCubeGo : JunkCube
{
Damage (18)
+INVULNERABLE
+NORADIUSDMG
+STEPMISSILE
MaxStepHeight 24
+THRUSPECIES
Species "JunkCubeThing"
states
{
Spawn:
JUCT D 0
JUCT D 0 A_PlaySoundEx("weapon/ClownBall","Weapon")
JUCT DDD 1 ThrustThingZ(0,0,0,1)
Loop
}
}

actor JunkBits1 : ScrapMetalBase
{
+INVENTORY.QUIET
States
{
Spawn2:
JUCT H 500
stop
}
}

actor JunkBits2 : JunkBits1
{
States
{
Spawn2:
JUCT I 500
stop
}
}

actor JunkBits3 : JunkBits1
{
States
{
Spawn2:
JUCT J 500
stop
}
}

actor JunkBits4 : JunkBits1
{
States
{
Spawn2:
JUCT K 500
stop
}
}

actor JunkBits5 : JunkBits1
{
States
{
Spawn2:
JUCT L 500
stop
}
}

actor JunkBits6 : JunkBits1
{
States
{
Spawn2:
JUCT M 500
stop
}
}

actor JunkBits7 : JunkBits1
{
States
{
Spawn2:
JUCT N 500
stop
}
}

actor JunkBits8 : JunkBits1
{
States
{
Spawn2:
JUCT O 500
stop
}
}

actor JunkBits9 : JunkBits1
{
States
{
Spawn2:
JUCT P 500
stop
}
}

actor JunkBitsX : JunkBits1
{
States
{
Spawn2:
TNT1 A 0 A_Jump(256,"S_1","S_2","S_3","S_4","S_5","S_6","S_7","S_8","S_9")
TNT1 A 1
loop
S_1:
JUCT H 500
stop
S_2:
JUCT I 500
stop
S_3:
JUCT J 500
stop
S_4:
JUCT K 500
stop
S_5:
JUCT L 500
stop
S_6:
JUCT M 500
stop
S_7:
JUCT N 500
stop
S_8:
JUCT O 500
stop
S_9:
JUCT P 500
stop
}
}

actor ClassJunkBit : ScrapMetalBase
{
States
{
Spawn2:
TNT1 A 0 A_Jump(256,"S_3","S_4","S_5","S_6","S_7","S_8","S_9")
TNT1 A 1
loop
S_1:
JUCT H 500
stop
S_2:
JUCT I 500
stop
S_3:
JUCT J 500
stop
S_4:
JUCT K 500
stop
S_5:
JUCT L 500
stop
S_6:
JUCT M 500
stop
S_7:
JUCT N 500
stop
S_8:
JUCT O 500
stop
S_9:
JUCT P 500
stop
}
}

actor JunkPunchShot
{
translation "192:192=4:4", "198:198=94:94"
PROJECTILE
scale 2.5
//+DONTBLAST
-NOGRAVITY
Speed 32
Radius 16
Height 16
Damage (20)
Obituary "$OB_JUNKSHIELD"
damagetype "JunkShot"
States
{
Spawn:
JUCT H 2 A_CheckFloor("Death")
loop
Death:
DUSA A 0 A_Jump(256,"B","C","D","E","F","G")
B:
JUCT A 0 A_SpawnItemEx("JunkBits7",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
JUCT A 0 A_SpawnItemEx("JunkBits8",0,0,0,random(2,5),0,random(3,2),random(0,359),1)
stop
C:
JUCT A 0 A_SpawnItemEx("JunkBits8",0,0,0,random(2,5),0,random(3,2),random(0,359),1)
JUCT A 0 A_SpawnItemEx("JunkBits9",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
stop
D:
JUCT A 0 A_SpawnItemEx("JunkBits7",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
goto C+1
E:
JUCT A 0 A_SpawnItemEx("JunkBits7",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
JUCT A 0 A_SpawnItemEx("JunkBits5",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
stop
F:
JUCT A 0 A_SpawnItemEx("JunkBits5",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
goto B+1
G:
JUCT A 0 A_SpawnItemEx("JunkBits5",0,0,0,random(2,5),0,random(2,3),random(0,359),1)
goto C+1
}
}

actor JunkPunchShotB : JunkPunchShot{translation "192:192=205:205","198:198=74:74"}
actor JunkPunchShotR : JunkPunchShot{translation "192:192=171:171","198:198=41:41"}
actor JunkPunchShotO : JunkPunchShot{translation "192:192=104:104","198:198=128:128"}
actor JunkPunchShotP : JunkPunchShot{translation "192:192=229:229","198:198=232:232"}

actor BossJunkShield
{
PROJECTILE
- SOLID
+NOGRAVITY
+CLIENTSIDEONLY
+NOINTERACTION
height 0
radius 0
scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",14,"Spawn3")
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",7,"Spawn2")
goto Spawn1
Spawn3:
TNT1 A 0 A_SpawnItemEx("BossJunkShieldBit",0,0,0,5,0,random(-4,4),random(0, 359),129)
Spawn2:
TNT1 A 0 A_SpawnItemEx("BossJunkShieldBit",0,0,0,5,0,random(-4,4),random(0, 359),129)
Spawn1:
TNT1 A 0 A_SpawnItemEx("BossJunkShieldBit",0,0,0,5,0,random(-4,4),random(0, 359),129)
stop
}
}

actor BossJunkShieldBit
{
//Translation "192:192=4:4", "198:198=94:94"
PROJECTILE
+CLIENTSIDEONLY
+NOINTERACTION
- SOLID
+NOGRAVITY
height 0
radius 0
Scale 2.5
RenderStyle "Translucent"
Alpha 0.5
Speed 5
States
{
Spawn:
TNT1 A 0
TNT1 A 3
TNT1 A 0 A_Jump(256,"SpawnJ","SpawnK","SpawnL","SpawnM","SpawnN","SpawnO","SpawnP")
SpawnJ:
JUCT J 5
JUCT J 7 A_ScaleVelocity(-1.0)
stop
SpawnK:
JUCT K 5
JUCT K 7 A_ScaleVelocity(-1.0)
stop
SpawnL:
JUCT L 5
JUCT L 7 A_ScaleVelocity(-1.0)
stop
SpawnM:
JUCT M 5
JUCT M 7 A_ScaleVelocity(-1.0)
stop
SpawnN:
JUCT N 5
JUCT N 7 A_ScaleVelocity(-1.0)
stop
SpawnO:
JUCT O 5
JUCT O 7 A_ScaleVelocity(-1.0)
stop
SpawnP:
JUCT P 5
JUCT P 7 A_ScaleVelocity(-1.0)
stop
}
}

actor BossJunkArmor : BasicArmorPickup
{
Armor.Savepercent 40
Armor.Saveamount 20
//Armor.MaxSaveAmount 20
}


actor BossJunkShieldRadius : BasicExplosion
{
Obituary "$OB_JUNKSHIELD"
Damagetype "JunkShield"
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",14,"Spawn3")
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",7,"Spawn2")
goto Spawn1
Spawn3:
TNT1 A 0
TNT1 A 1 A_Explode(7,160,0)
stop
Spawn2:
TNT1 A 0
TNT1 A 1 A_Explode(6,160,0)
stop
Spawn1:
TNT1 A 0
TNT1 A 1 A_Explode(5,160,0)
stop
}
}

actor JunkProjectileBoss : JunkProjectile
{
Translation "192:192=4:4", "198:198=94:94"
Damage (12)
Speed 26
Damagetype "JunkShock"
States
{
Spawn:
JUCT I 4
loop
}
}

actor JunkProjectileBossB : JunkProjectileBoss{translation "192:192=205:205","198:198=74:74"}
actor JunkProjectileBossR : JunkProjectileBoss{translation "192:192=171:171","198:198=41:41"}
actor JunkProjectileBossO : JunkProjectileBoss{translation "192:192=104:104","198:198=128:128"}
actor JunkProjectileBossP : JunkProjectileBoss{translation "192:192=229:229","198:198=232:232"}

actor JunkProjectile2Boss : JunkProjectile2
{
Translation "192:192=4:4", "198:198=94:94"
Damage (3)
Speed 26//18
Damagetype "JunkShock"
States
{
Spawn:
JUCT M 4
loop
}
}

actor JunkProjectile2BossB : JunkProjectile2Boss{translation "192:192=205:205","198:198=74:74"}
actor JunkProjectile2BossR : JunkProjectile2Boss{translation "192:192=171:171","198:198=41:41"}
actor JunkProjectile2BossO : JunkProjectile2Boss{translation "192:192=104:104","198:198=128:128"}
actor JunkProjectile2BossP : JunkProjectile2Boss{translation "192:192=229:229","198:198=232:232"}

actor TrunkStock : Inventory
{
inventory.amount 1
inventory.maxamount 999
}

actor JunkRegen : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
States
{
Pickup:
DUST B 0 //A_JumpIfInventory("ShieldCheck",1,"No")
DUST B 0 A_GiveInventory("TrunkStock",1)
DUST B 0 A_JumpIfInventory("TrunkStock",5, "Pickup2") 
stop
Pickup2:
DUST B 0 A_TakeInventory("TrunkStock",5)
DUST B 0 A_GiveInventory("TrunkAmmo",1)
goto Pickup+2
No:
DUST B 0 A_TakeInventory("TrunkStock",999)
stop
}
}


actor JunkmanAlt_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("JunkPunch",0,0,8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("JunkPunchB",0,0,8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("JunkPunchR",0,0,8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("JunkPunchO",0,0,8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("JunkPunchP",0,0,8,0)
goto Done
}
}

actor JunkmanAlt2_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("JunkPunchShot",0,0,8,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("JunkPunchShotB",0,0,8,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("JunkPunchShotR",0,0,8,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("JunkPunchShotO",0,0,8,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("JunkPunchShotP",0,0,8,0)
goto Done
}
}

actor JunkmanOther1_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("JunkProjectileBoss",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBoss",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBoss",-120,0,0,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossB",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossB",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossB",-120,0,0,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossR",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossR",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossR",-120,0,0,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossO",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossO",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossO",-120,0,0,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossP",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossP",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectileBossP",-120,0,0,0)
goto Done
}
}

actor JunkmanOther2_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("JunkProjectile2Boss",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2Boss",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2Boss",-120,0,0,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossB",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossB",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossB",-120,0,0,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossR",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossR",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossR",-120,0,0,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossO",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossO",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossO",-120,0,0,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossP",0,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossP",120,0,0,0)
TNT1 A 0 A_FireCustomMissile("JunkProjectile2BossP",-120,0,0,0)
goto Done
}
}