actor IceSlasherBoss : BaseMM8BDMWep_CBM
{
dropitem "IceSlasherWepCDropped"
Weapon.AmmoUse 1
Weapon.AmmoGive 0
Weapon.SlotNumber 1
Obituary "$OB_ICESLASHER"
weapon.ammotype "IcicleAmmo"
+WEAPON.NOAUTOAIM
States
{
Spawn:
C_01 C 1
loop
Ready:
ICEB A 0 ACS_ExecuteAlways(998,0,722)
ICEB A 0 A_GunFlash
ICEB A 0 A_JumpIfInventory("IcicleAmmo",2,"Ready2")
ICEB A 11 A_WeaponReady(WRF_NOFIRE)
ICEB A 0 A_GiveInventory("IcicleAmmo",2)
Goto Ready+2
Ready2:
ICEB A 11 A_WeaponReady
ICEB A 0 A_GiveInventory("IcicleAmmo",2)
loop
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
ICEB A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
ICEB A 1 A_Raise
Loop
Fire:
ICEB A 0 A_JumpIfNoAmmo("NoAmmo")
ICEB ABC 2
Hold:
ICEB A 0 A_JumpIfNoAmmo("NoAmmo")
ICEB A 0 A_PlaySoundEx("weapon/icemanshot","Weapon")
//ICEB A 0 A_GiveInventory("IcemanHoverFlag",1)
ICEB A 0 A_GiveInventory("IcemanMain_CI",1)
ICEB C 10
ICEB C 2 A_Refire
ICEB CBA 2
Goto Ready+2
Altfire:
ICEB DE 2
ICEB F 0 A_JumpIfInventory("IcicleAmmo",1,"AltHold")
goto NoAmmo
AltHold:
ICEB F 0 A_JumpIfInventory("IcicleAmmo",1,"HoldCon")
goto HoldEnd
HoldCon:
ICEB F 2 A_GiveInventory("IcemanAlt1_CI",1)
ICEB F 2 A_GiveInventory("IcemanAlt2_CI",1)
ICEB F 2 A_GiveInventory("IcemanAlt3_CI",1)
ICEB F 0 A_TakeInventory("IcicleAmmo",1)
ICEB F 2 A_ReFire
HoldEnd:
ICEB F 2
ICEB F 4 A_ClearReFire
ICEB ED 6
Goto Ready+2
NoAmmo:
ICEB A 0 A_ClearRefire
Goto Ready+2

/*
Flash:
TNT1 A 0
TNT1 A 0 A_JumpIfInventory("IsDead",1,"NoFlash")
TNT1 A 0 A_JumpIfInventory("FlightDisableFlag",1,2)
TNT1 A 0 A_JumpIfInventory("IcemanHoverFlag",1,2)
TNT1 A 1 ACS_ExecuteAlways(191,0,0)
loop
TNT1 A 0 A_JumpIf(momz<0,1)
goto Flash+4
TNT1 A 0 ThrustThingZ(0,1,1,0)
TNT1 A 1 ACS_ExecuteAlways(191,0,4)
loop
*/
}
}

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

actor IcemanHoverFlag : Powerup
{
Powerup.Duration 11
}

actor IceSlasherB : IceSlasher
{
Translation "198:198=197:197"
//damage (10)//11
States
{
Spawn:
ICEB TU 3
loop
}
}

actor IceSlasherBB : IceSlasherB{translation "198:198=74:74"}
actor IceSlasherBR : IceSlasherB{translation "198:198=41:41"}
actor IceSlasherBO : IceSlasherB{translation "198:198=128:128"}
actor IceSlasherBP : IceSlasherB{translation "198:198=232:232"}

actor CoolestGuy
{
Translation "198:198=197:197"
PROJECTILE
scale 2.5
+RIPPER
Obituary "$OB_ICECOOLGUY"
Speed 22
damagetype "IceSlashSlow"
Radius 6
Height 6
Damage (3)
States
{
Spawn:
ICEB Z 35
stop
}
}

actor CoolestGuyB : CoolestGuy{translation "198:198=74:74"}
actor CoolestGuyR : CoolestGuy{translation "198:198=41:41"}
actor CoolestGuyO : CoolestGuy{translation "198:198=128:128"}
actor CoolestGuyP : CoolestGuy{translation "198:198=232:232"}

actor CoolestGuy2 : CoolestGuy{Damage (2)}

actor CoolestGuy2B : CoolestGuyB{Damage (2)}
actor CoolestGuy2R : CoolestGuyR{Damage (2)}
actor CoolestGuy2O : CoolestGuyO{Damage (2)}
actor CoolestGuy2P : CoolestGuyP{Damage (2)}

actor CoolestGuy3 : CoolestGuy{Damage (1)}

actor CoolestGuy3B : CoolestGuyB{Damage (1)}
actor CoolestGuy3R : CoolestGuyR{Damage (1)}
actor CoolestGuy3O : CoolestGuyO{Damage (1)}
actor CoolestGuy3P : CoolestGuyP{Damage (1)}


actor PowerIce : PowerSpeed
{
Speed 0.67
powerup.duration 100
}

actor IcemanSlowPickup : CustomInventory
{
States
{
Pickup:
TNT1 A 0 
TNT1 A 0 A_JumpIfInventory("PowerIce", 1, 2)
TNT1 A 0 A_SpawnItemEx("IceSlowWatcher")
TNT1 A 0 A_GiveInventory("PowerIce", 1)
stop
}
}

actor IceSlowWatcher : BasicHelper
{
States
{
Spawn:
TNT1 A 0 
TNT1 A 3 A_GiveToTarget("IceSlowFX", 1)
TNT1 A 0 A_JumpIfInTargetInventory("PowerIce", 1, "Spawn")
stop
}
}

actor IceSlowFX : CustomInventory
{
States
{
Pickup:
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("IceSlowGFX", random(18, 56), 0, Random(18,56), 0, 0, 0, random(0, 359),1)
stop
}
}

actor IceSlowGFX
{
+FLOATBOB
+NOGRAVITY
+THRUACTORS
+CLIENTSIDEONLY
+FORCEXYBILLBOARD
+MISSILE
Damage(0)
Scale 2.5
Height 0
Radius 0
States
{
Spawn:
ICEB YZ 4 A_Fadeout(0.2)
loop
}
}

actor IcemanMain_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("IceSlasherB",0,1,0,0)
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("IceSlasherBB",0,1,0,0)
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("IceSlasherBR",0,1,0,0)
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("IceSlasherBO",0,1,0,0)
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("IceSlasherBP",0,1,0,0)
goto Done
}
}

actor IcemanAlt1_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("CoolestGuy",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("CoolestGuyB",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("CoolestGuyR",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("CoolestGuyO",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("CoolestGuyP",random(-12,12),0,8,0,0,random(-7,7))
goto Done
}
}

actor IcemanAlt2_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("CoolestGuy2",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("CoolestGuy2B",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("CoolestGuy2R",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("CoolestGuy2O",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("CoolestGuy2P",random(-12,12),0,8,0,0,random(-7,7))
goto Done
}
}

actor IcemanAlt3_CI : TeamColor_CI
{
states
{
FireX:
TNT1 A 0 A_FireCustomMissile("CoolestGuy3",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireB:
TNT1 A 0 A_FireCustomMissile("CoolestGuy3B",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireR:
TNT1 A 0 A_FireCustomMissile("CoolestGuy3R",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireO:
TNT1 A 0 A_FireCustomMissile("CoolestGuy3O",random(-12,12),0,8,0,0,random(-7,7))
goto Done
FireP:
TNT1 A 0 A_FireCustomMissile("CoolestGuy3P",random(-12,12),0,8,0,0,random(-7,7))
goto Done
}
}
