actor BoilBlazerWep_NormalBar : NormalBar{args 86,231}
actor BoilBlazerWep : BaseMM8BDMWep
{
Weapon.AmmoUse 4
Weapon.AmmoGive 28
Weapon.SlotNumber 2
Inventory.Pickupmessage "$PU_BOILBLAZER"
Obituary "$OB_BOILBLAZER"
Tag "$TAG_BOILBLAZER"
weapon.ammotype "BoilBlazerAmmo"
inventory.icon "BBZRICON"
States
{
SpawnLoop:
BBZR Z 1
loop
Ready:
BBZR A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_BOILBLAZER)
BBZR A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
BBZR A 0 
goto DeselectSwap
Select:
BBZR A 0 
goto SelectSwap
Fire:
BBZR A 0 A_JumpIfNoAmmo("NoAmmo")
BBZR A 0 A_PlaySoundEx("misc/sunstarshot", "Weapon")
BBZR A 0 A_FireCustomMissile("BoilBlazer1",0,1,8,0)
BBZR BC 5
BBZR A 24
BBZR A 0 A_Refire
Goto Ready+1
NoAmmo:
BBZR A 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}


actor BoilBlazerAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
+INVENTORY.IGNORESKILL
}

actor BoilBlazerProtection : PowerProtection
{
Powerup.Duration 3
DamageFactor "BoilBlazer", 0.0
}

actor BoilBlazer1 : BasicProjectile
{
+BRIGHT
PROJECTILE
Damage (CallACS("vile_cbm_damage",7))
Height 5
Radius 6
Obituary "$OB_BOILBLAZER"
damagetype "BoilBlazer"
+RIPPER
-NOGRAVITY
+HEXENBOUNCE
-BOUNCEONFLOORS
bouncefactor 0.75
wallbouncefactor 0.75
Scale 1.5
speed 28
States
{
Spawn:
TNT1 A 0
BSTM GH 4
Loop
Death:
BSTM I 0 A_ChangeFlag("RIPPER", 1)
BSTM GH 1 A_CheckFloor("Floor")
loop
Floor:
TNT1 A 0 A_PlaySound("weapon/scorchwheel", "Weapon")
TNT1 AAA 0 A_SpawnItemEx("BoilBlazer")
//TNT1 G 0 A_SpawnItemEx("BoilBlazerSpawner",5,0,0,16)
TNT1 G 0 A_SpawnItemEx("BoilBlazerSpawner",5,9,0,16)
TNT1 G 0 A_SpawnItemEx("BoilBlazerSpawner",5,-9,0,16)
stop
}
}

Actor BoilBlazerSpawner : BasicProjectile
{
  Radius 8
  Height 8
  Speed 8
  Damage 0
  +RIPPER
  +FloorHugger
  +HexenBounce
  +THRUACTORS
  Bouncecount 3
  Bouncefactor 1.0
  damagetype "BoilBlazer"
   Obituary "$OB_BOILBLAZER"
  WallBounceFactor 1.0
  reactiontime 60
  Projectile
  States
  {
  Spawn: 
 TNT1 A 0 A_SpawnItemEx("BoilBlazer")
    TNT1 A 3 A_Countdown
    Loop
  Death:  
    TNT1 A 6
    Stop
  }
}


Actor BoilBlazer : BasicProjectile
{
+BRIGHT
renderstyle translucent
Scale 2.5
Height 32
Radius 16
PROJECTILE
+RIPPER
damage (CallACS("vile_cbm_damage",7))
-MISSILE
reactiontime 1//4
+NOEXPLODEFLOOR
Translation "192:192=216:216", "198:198=227:227"
damagetype "BoilBlazer"
Obituary "$OB_BOILBLAZER"
States
{
Spawn:
TNT1 A 2
TNT1 A 0 ACS_NamedExecuteWithResult("core_alphaprojectile", CallACS("core_getptrtid", AAPTR_TARGET), APROJ_TEAM, 6553, 512) // 6553 = 0.1 * 65536
TNT1 A 0 A_PlaySound("weapon/scorchwheel", "Weapon")
Flame:
BSTM A 0 A_ChangeFlag("MISSILE",1)
BSTM A 0 A_SpawnItemEx("OilPitIgnite",0,0,8)
BSTM A 0 A_ChangeFlag("FLOORHUGGER",1)
BSTM ABCD 1
Flame2:
BSTM EFEF 3 //A_Explode(7,6,0,0,6)
BSTM I 0 A_CountDown
loop
Goto Flame+2
Death:
BSTM EFEFEDCBA 1 
stop
}
}
