actor GoldenTriadWep_NormalBar : NormalBar{args 229,220}
actor GoldenTriadWep : BaseMM8BDMWep
{
Weapon.AmmoUse 4
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Inventory.Pickupmessage "$PU_GOLDENTRIAD"
Obituary "$OB_GOLDENTRIAD"
Tag "$TAG_GOLDENTRIAD"
weapon.ammotype "GoldenTriadAmmo"
inventory.icon "GTRDICON"
States
{
SpawnLoop:
GTRD Z 1
loop
Ready:
GTRD A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_GOLDENTRIAD)
GTRD A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
GTRD A 0 
goto DeselectSwap
Select:
GTRD A 0 
goto SelectSwap
Fire:
GTRD B 0 A_JumpIfNoAmmo("NoAmmo")
GTRD B 0 A_PlaySoundEx("weapon/TriadMissileFire","Weapon")
GTRD B 0 A_FireCustomMissile("GoldenTriadMissile",0,1,random(-16,16)+4,random(0,16))
GTRD B 0 A_FireCustomMissile("GoldenTriadMissile",3,0,random(-16,16)+8,random(0,16))
GTRD B 0 A_FireCustomMissile("GoldenTriadMissile",-3,0,random(-16,16)+12,random(0,16))
GTR0 ABCDEF 2
GTR0 G 16
//GTR0 G 0 ACS_NamedExecuteWithResult("core_clientsound", CSND_CRYSTALRELOAD) // A_PlaySoundEx("weapons/mm5/crystaleyereload", "Weapon")
GTR0 HIJK 2
GTRD A 0 A_Refire
Goto Ready+1
NoAmmo:
GTRD A 0 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

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

Actor GoldenTriadMissile : BasicProjectile
{
PROJECTILE
Radius 12
Height 12
Scale 3.0
Speed 10
+FLOATBOB
Damage (CallACS("vile_cbm_damage",15))
damagetype "GoldenTriad"
Obituary "$OB_GOLDENTRIAD"
States
{
Spawn:
GTRD X 0
GTRD X 0 A_SpawnItemEX("TriadMissileSmoke",0,0,-10,-2,0,random(-3,3))
GTRD Y 4 A_ScaleVelocity(2.0)
GTRD X 0 A_SpawnItemEX("TriadMissileSmoke",0,0,-10,-2,0,random(-3,3))
GTRD Y 4 A_ScaleVelocity(2.0)
GTRD X 0 A_SpawnItemEX("TriadMissileSmoke",0,0,-10,-2,0,random(-3,3))
GTRD Y 4 A_ScaleVelocity(2.0)
Spawn2:
GTRD X 0 A_SpawnItemEX("TriadMissileSmoke",0,0,-10,-2,0,random(-3,3))
GTRD Y 4
loop
Death:
TNT1 A 0
TNT1 A 0 A_PlaySoundEx("Weapon/TriadMissileBoom","Weapon")
TNT1 A 0 A_Explode(CallACS("vile_cbm_damage",15),100,0,0,15)
TNT1 AAAAAAAA 0 A_SpawnItemEX("TriadExplosionSmoke",0,0,0,random(-2,2),random(-2,2),random(-2,2))
TNT1 A 1
stop
}
}

Actor CaveStoryExplosionSmoke : BasicGraphicEffect
{
PROJECTILE
+NOINTERACTION
Scale 2.0
States
{
SpawnFrame:
GTRS ABCDEFG 3
stop
}
}

Actor CaveStorySmoke : BasicGraphicEffect
{
PROJECTILE
+NOINTERACTION
Scale 2.0
States
{
SpawnFrame:
GTRS HIJK 3
stop
}
}

Actor TriadExplosionSmoke : BasicGraphicEffect
{
PROJECTILE
+NOINTERACTION
Scale 2.0
States
{
SpawnFrame:
GTRS LMNOPQR 3
stop
}
}

Actor TriadMissileSmoke : BasicGraphicEffect
{
translation "116:116=220:220", "99:99=229:229"
PROJECTILE
+NOINTERACTION
Scale 2.0
States
{
SpawnFrame:
GTRS HIJK 3
stop
}
}