actor BlowTorchWep : BaseMM8BDMWep
{
//$Category MM8BDM-Weapons
//$Title Blow Torch
//$Sprite DOSWE0
Weapon.AmmoUse 1
Weapon.AmmoGive 56
Weapon.SlotNumber 3
Inventory.Pickupmessage "$PU_BLOWTORCH"
Obituary "$OB_BLOWTORCH"
Tag "$TAG_BLOWTORCH"
weapon.ammotype "BlowTorchAmmo"
inventory.icon "BLOWTR"
States
{
SpawnLoop:
DOSW E -1
loop
Ready:
TRCH A 0 ACS_ExecuteAlways(998,0,DOSREBORN_COLOR_TORCH)
TRCH A 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
TRCH A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
TRCH A 1 A_Raise
Loop
Fire:
TRCH B 0 A_JumpIfNoAmmo("NoAmmo")
TRCH B 0 A_PlaySoundEx("weapon/blowtorch","Weapon")
TRCH B 2 A_FireCustomMissile("TorchFlame",0,1,8,0)
TRCH B 0 A_Refire("FireCont")
Goto Ready+1
FireCont:
TRCH B 0 A_JumpIfNoAmmo("NoAmmoEnd")
TRCH B 0 A_PlaySoundEx("weapon/blowtorch","Weapon")
TRCH C 2 A_FireCustomMissile("TorchFlame",0,1,8,0)
TRCH B 0 A_Refire("FireCont2")
TRCH CB 3
Goto Ready+1
FireCont2:
TRCH B 0 A_JumpIfNoAmmo("NoAmmoEnd")
TRCH B 0 A_PlaySoundEx("weapon/blowtorch","Weapon")
TRCH C 2 A_FireCustomMissile("TorchFlame",0,0,8,0)
TRCH B 0 A_Refire("FireCont3")
TRCH CB 3
Goto Ready+1
FireCont3:
TRCH B 0 A_JumpIfNoAmmo("NoAmmoEnd")
TRCH B 0 A_PlaySoundEx("weapon/blowtorch","Weapon")
TRCH C 2 A_FireCustomMissile("TorchFlame",0,0,8,0)
TRCH B 0 A_Refire("FireCont")
TRCH CB 3
Goto Ready+1
NoAmmo:
TRCH A 1 ACS_Execute(979,0)
Goto Ready+1
NoAmmoEnd:
TRCH A 0 ACS_Execute(979,0)
TRCH CB 3
Goto Ready+1
}
}
actor BlowTorchWepSH : BlowTorchWep replaces BlowTorchWep {+INVENTORY.RESTRICTABSOLUTELY Inventory.RestrictedTo megamans}

actor BlowTorchAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 56
+INVENTORY.IGNORESKILL
}

actor TorchFlame
{
damagetype "BlowTorch"
Obituary "$OB_BLOWTORCH"
PROJECTILE
+BRIGHT
Radius 6
Height 6
scale 2.5
damage (3)
speed 52
States
{
Spawn:
TRCH ZDDEEFG 1
TRCH FFFFFFFF 0 A_SpawnItemEx("TorchParticle", 0, 0, 0, random(-7, 7), 0, random(-7, 7), random(0, 359))
TRCH F 0 //A_SpawnItemEx("TorchTip",0,0,0,momx,momy,momz,0,SXF_ABSOLUTEMOMENTUM)
stop
Death:
TNT1 A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
stop
}
}

actor BlowTorchStack1 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 1.2
}

actor BlowTorchStack2 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 1.5
}

actor BlowTorchStack3 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 1.700001
}

actor BlowTorchStack4 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 2.0001
}

actor BlowTorchStack5 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 2.2
}

actor BlowTorchStack6 : PowerProtection
{
Powerup.Duration 4
damagefactor "BlowTorch", 2.6
}

actor TorchParticle : BasicGraphicEffect
{
renderstyle "translucent"
alpha 0.6
States
{
Spawn:
TRCH D 5
stop
}
}