//Yamato Weapon script

ACTOR Yamato_Nuke_Used : Doomkey
{ Inventory.MaxAmount 2 }
ACTOR Yamato_AltNuke_Used : Doomkey
{ Inventory.MaxAmount 12 }
ACTOR Yamato_AltFireX_Used : Doomkey
{ Inventory.MaxAmount 180 }
ACTOR Yamato_AltFireY_Used : Doomkey
{ Inventory.MaxAmount 70 }
ACTOR Yamato_AltFireZ_Used : Doomkey
{ Inventory.MaxAmount 10 }



//Main weapon settings
ACTOR YamatoNuke : Weapon 24513
{
   Inventory.PickupMessage "Weapon of last resort. Use in extreme cases."
   Obituary "%o was battlecruiser operationed by %k's ''Yamato'' cannon."
   Weapon.SelectionOrder 99999
   Weapon.AmmoType "MCell"
   Weapon.AmmoGive 300
   Weapon.AmmoUse 50
   Weapon.AmmoType2 "MCell"
   Weapon.AmmoUse2 50
   Weapon.Kickback 100
   Weapon.PreferredSkin "BFG10kMarine" //added
   +NOAUTOFIRE
   +NOALERT
   +WEAPON.NOAUTOAIM //added
   +EXTREMEDEATH //added
   Scale 0.8
  
   States
   {
   Select:
      YAMA A 1 ACS_executeAlways(480,0,8,0,0)
	  YAMA A 0 A_PlaySoundEx("Weapons/YamatoGun","Weapon")
	  YAMA A 0 A_PlaySoundEx("m_yamato_taunt","Weapon")	  
	  YAMA A 0 A_TakeInventory ("XYZALTN",1)
	  YAMA A 0 A_TakeInventory ("XYZALTS",1)
	  YAMA A 0 A_TakeInventory ("XYZALTX",1)//For
	  YAMA A 0 A_TakeInventory ("XYZALTY",1)
	  YAMA A 0 A_TakeInventory ("XYZALTZ",1)//Sloppy 
	  YAMA A 0 A_TakeInventory ("XYZALTSC",1)//Weapon
	  YAMA A 0 A_TakeInventory ("XYZALTXC",1)//Drop
	  YAMA A 0 A_TakeInventory ("XYZALTYC",1)
	  YAMA A 0 A_TakeInventory ("XYZALTZC",1)    
	  YAMA A 0 A_TakeInventory ("INVENZ",1)
	  YAMA A 0 A_TakeInventory ("INVENYZ",1)
	  YAMA A 0 A_TakeInventory ("XYZALTSX",1)
      YAMA A 0 A_TakeInventory ("XYZALTSXY",1)
	  YAMA A 0 A_TakeInventory ("Vulcaninfo",1)
	  YAMA A 0 A_TakeInventory ("Cooloff",1)
	  YAMA A 0 A_GiveInventory ("XYZALTD",1)
	  YAMA A 0 A_JumpifInventory ("Mrank15",1,"Selavi")
   sel:
	  YAMA A 0
	  YAMA A 1 A_Raise
	  NULL AA 0 A_Raise
	  LOOP
   Selavi:
      YAMA A 0 A_TakeInventory ("XYZALTD",1)
	  YAMA A 0 A_GiveInventory ("XYZALTS",1)
	  Goto Sel
   WhamBam:
    YAMA A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotReadyYet")
    TNT1 A 0 A_TakeInventory ("XYZALTD",1)
	TNT1 A 0 A_GiveInventory ("XYZALTS",1)
    TNT1 A 0 A_JumpifInventory ("PM_AltfireX",1,"AltBam1")//these check if xyz are enabled for indicator
	TNT1 A 0 A_JumpifInventory ("PM_AltfireY",1,"AltBam2")
	TNT1 A 0 A_JumpifInventory ("PM_AltfireZ",1,"AltBam3")
  Goto AltBamGo
  
	AltBam1://these change what alt mode is displayed on indicator needed if coming out of cooldown
	TNT1 A 0 A_TakeInventory ("XYZALTS",1)
	TNT1 A 0 A_GiveInventory ("XYZALTX",1)
  Goto AltBamGo
  
	AltBam2:
	TNT1 A 0 A_TakeInventory ("XYZALTS",1)
	TNT1 A 0 A_GiveInventory ("XYZALTY",1)
  Goto AltBamGo
  
	AltBam3:
	TNT1 A 0 A_takeInventory ("XYZALTS",1)
	TNT1 A 0 A_GiveInventory ("XYZALTZ",1)
	
  AltBamGo://These decide what alts are max
	TNT1 A 0 A_JumpifInventory ("Yamato_AltNuke_Used",12,"Bam2")
	
    Bam3:
	TNT1 A 0 A_JumpifInventory ("Yamato_AltFireX_Used",180,"Bam4")
	
	Bam5:
	TNT1 A 0 A_JumpifInventory ("Yamato_AltFireY_Used",70,"Bam6")
	
	Bam7:
	TNT1 A 0 A_JumpifInventory ("Yamato_AltFireZ_Used",10,"Bam8")
    Goto BamBamBam
	
	Bam2:
	TNT1 A 0 A_GiveInventory ("XYZALTSC",1)
	Goto Bam3
	
	Bam4:
	TNT1 A 0 A_GiveInventory ("XYZALTXC",1)
	Goto Bam5
	
	Bam6:
	TNT1 A 0 A_GiveInventory ("XYZALTYC",1)
	Goto Bam7
	
	Bam8:
	TNT1 A 0 A_GiveInventory ("XYZALTZC",1)
	Goto BamBamBam
	  Ready:
      YAMA A 0 A_JumpifInventory ("Mrank15",1,"WhamBam")
	  NotReadyYet:
	  YAMA A 0 A_TakeInventory ("XYZALTS",1)
	  YAMA A 0 A_GiveInventory ("XYZALTD",1)
	  BamBamBam:
	  YAMG A 2 A_WeaponReady
	  YAMG A 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG B 2 A_WeaponReady
	  YAMG B 0 A_jumpifinventory("kicking",1,"dokick")	  
	  YAMG C 2 A_WeaponReady
	  YAMG C 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG D 2 A_WeaponReady
	  YAMG D 0 A_jumpifinventory("kicking",1,"dokick")
	  //YAMG E 2 A_WeaponReady
	  //YAMG E 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG F 2 A_WeaponReady
	  YAMG F 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG G 2 A_WeaponReady
	  YAMG G 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG H 2 A_WeaponReady
	  YAMG H 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG I 2 A_WeaponReady
	  YAMG I 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG J 2 A_WeaponReady
	  YAMG J 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG K 2 A_WeaponReady
	  YAMG K 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG L 2 A_WeaponReady
	  YAMG L 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG M 2 A_WeaponReady
	  YAMG M 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG N 2 A_WeaponReady
	  YAMG N 0 A_jumpifinventory("kicking",1,"dokick")
	  YAMG O 2 A_WeaponReady
	  YAMG O 0 A_jumpifinventory("kicking",1,"dokick")
	  Loop
   Deselect:
      YAMA A 0 A_TakeInventory ("XYZALTD",1)
      YAMA A 0 A_TakeInventory ("XYZALTS",1)
	  YAMA A 0 A_TakeInventory ("XYZALTX",1)
	  YAMA A 0 A_TakeInventory ("XYZALTY",1)
	  YAMA A 0 A_TakeInventory ("XYZALTZ",1)
	  YAMA A 0 A_TakeInventory ("XYZALTSC",1)
	  YAMA A 0 A_TakeInventory ("XYZALTXC",1)
	  YAMA A 0 A_TakeInventory ("XYZALTYC",1)
	  YAMA A 0 A_TakeInventory ("XYZALTZC",1)
      YAMA Y 1 A_Lower
	  NULL YY 0 A_Lower
      Loop
   NukeOveruse:
	  YAMG A 1 A_Print("2 Nukes already used in this level")
	  Goto Ready
   AltNukeOveruse:
      YAMG A 0 A_GiveInventory ("XYZALTSC",1)
	  YAMG A 1 A_Print("12 Mini Nukes already used in this level")
	  Goto Ready
   AltFireXOveruse:
      YAMG A 0 A_GiveInventory ("XYZALTXC",1)
	  YAMG A 1 A_Print("180 Stream X shots already used in this level")
	  Goto Ready
   AltFireYOveruse:
      YAMG A 0 A_GiveInventory ("XYZALTYC",1)
	  YAMG A 1 A_Print("70 Rapid Y shots already used in this level")
	  Goto Ready
   AltFireZOveruse:
      YAMG A 0 A_GiveInventory ("XYZALTZC",1)
	  YAMG A 1 A_Print("10 Thunderbolt Z shots already used in this level")
	  Goto Ready
   RankTooLow:
	  YAMG A 1 A_Print("Marine, first rank to colonel :)")
	  Goto Ready
   NotChargedOnLevel:
   	  YAMG A 1 A_Print("Yamato charged after 3 Minutes from level start")
	  Goto Ready
   Fire:
            YAMG A 0 A_JumpIfInventory ("Mrank15",1,1)
		    Goto RankTooLow
   			YAMG A 0 A_JumpIfInventory ("PM_AltFireX",1,"AltFireX")	
			YAMG A 0 A_JumpIfInventory ("PM_AltFireY",1,"AltFireY")
			YAMG A 0 A_JumpIfInventory ("PM_AltFireZ",1,"AltFireZ")
			YAMA A 0 A_GiveInventory ("XYZALTS",1)
	        YAMA A 0 A_TakeInventory ("XYZALTX",1)
	        YAMA A 0 A_TakeInventory ("XYZALTY",1)
	        YAMA A 0 A_TakeInventory ("XYZALTZ",1)
		YAMG A 0 A_JumpIfInventory("Yamato_Nuke_Used",2,"NukeOveruse")
		YAMG A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotChargedOnLevel")
      YAMG A 30 A_PlayWeaponSound("Weapons/YamatoCharge")	  
      YAMG HIJKLMNO 1
      YAMG P 2 Bright
      YAMG Q 2 Bright  	  

      YAMG A 0 A_SetBlend("Red",0.6,60)
      YAMG A 0 A_GunFlash
      YAMG A 0 A_PlaySound("Weapons/YamatoFire",6)
      YAMG A 0 A_FireCustomMissile("YamatoFakeFade",0,0,20,0)
      YAMG A 0 A_FireCustomMissile("YamatoFaky1",0,0,20,0)
      YAMG A 0 A_FireCustomMissile("YamatoFaky2",0,0,20,0)
      YAMG A 0 A_FireCustomMissile("YamatoBomb",0,1,20,0)
	  YAMG A 0 A_GiveInventory("Yamato_Nuke_Used", 1)
	  YAMG A 0 A_Recoil (25)
      YAMG R 2 Bright
      YAMG S 2 Bright
      YAMG T 2 Bright
      YAMG ABCABC 2
      Goto Ready 
    
   AltFire:
		YAMG A 0 A_JumpIfInventory ("Mrank15",1,1)
		Goto RankTooLow
		YAMG A 0 A_JumpIfInventory("Yamato_AltNuke_Used",12,"AltNukeOveruse")
		YAMG A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotChargedOnLevel")  
      YAMG HIJKLMNO 1
      YAMG P 2 Bright
      YAMG Q 2 Bright 
	  YAMG A 0 A_SetBlend("Red",0.6,60)
      YAMG A 0 A_GunFlash
      YAMG A 0 A_PlaySound("Weapons/YamatoFire",6)
      YAMG A 0 A_FireCustomMissile("XYamatoBomb",0,1,20,0)
			YAMG A 0 A_GiveInventory("Yamato_AltNuke_Used", 1)
	  YAMG A 0 A_Recoil (10)
      YAMG R 1 Bright
      YAMG S 1 Bright
      YAMG T 1 Bright
      YAMG ABCABC 1
	  YANG A 0 A_ReFire
      Goto Ready 	
			
	AltFireX:
	    YAMG A 0 A_JumpIfInventory ("Mrank15",1,1)
		Goto RankTooLow
	    YAMG A 0 A_TakeInventory ("XYZALTS",1)
	    YAMG A 0 A_GiveInventory ("XYZALTX",1)
	    YAMG A 0 A_TakeInventory ("XYZALTY",1)
	    YAMG A 0 A_TakeInventory ("XYZALTZ",1)
		YAMG A 0 A_JumpIfInventory("Yamato_AltFireX_Used",180,"AltFireXOveruse")
		YAMG A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotChargedOnLevel")  
      YAMG A 0 A_GunFlash
      YAMG A 0 A_PlaySound("Weapons/YamatoHizz",6)
      YAMG A 4 A_FireCustomMissile("YamatoAltFireX",0,1,20,0)
			YAMG A 0 A_GiveInventory("Yamato_AltFireX_Used", 1)
	  YANG A 0 A_ReFire
      Goto Ready 
	  
	AltFireY:
	    YAMG A 0 A_JumpIfInventory ("Mrank15",1,1)
		Goto RankTooLow
	    YAMG A 0 A_TakeInventory ("XYZALTS",1)
	    YAMG A 0 A_TakeInventory ("XYZALTX",1)
	    YAMG A 0 A_GiveInventory ("XYZALTY",1)
	    YAMG A 0 A_TakeInventory ("XYZALTZ",1)
		YAMG A 0 A_JumpIfInventory("Yamato_AltFireY_Used",70,"AltFireYOveruse")
		YAMG A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotChargedOnLevel")  
      //YAMG HIJKLMNO 1
      YAMG P 1 Bright
      YAMG Q 1 Bright 
	  YAMG A 0 A_SetBlend("Red",0.6,60)
      YAMG A 0 A_GunFlash
      YAMG A 0 A_PlaySound("Weapons/YamatoHizz",6)
      YAMG A 1 A_FireCustomMissile("YamatoAltFireY",random(-5,5),1,20,0)
			YAMG A 0 A_GiveInventory("Yamato_AltFireY_Used", 1) 
	  //YAMG A 0 A_Recoil (1)
      YAMG R 1 Bright
      YAMG S 1 Bright
      YAMG T 1 Bright
      //YAMG ABCABC 1
	  YANG A 0 A_ReFire
      Goto Ready 
	  
	AltFireZ:
	    YAMG A 0 A_JumpIfInventory ("Mrank15",1,1)
		Goto RankTooLow
	    YAMG A 0 A_TakeInventory ("XYZALTS",1)
	    YAMG A 0 A_TakeInventory ("XYZALTX",1)
	    YAMG A 0 A_TakeInventory ("XYZALTY",1)
	    YAMG A 0 A_GiveInventory ("XYZALTZ",1)
		YAMG A 0 A_JumpIfInventory("Yamato_AltFireZ_Used",10,"AltFireZOveruse")
		YAMG A 0 A_JumpIfInventory("Yamato_SecLevelStart",1,"NotChargedOnLevel")  
      YAMG HIJKLMNO 1
      YAMG P 2 Bright
      YAMG Q 2 Bright 		
	  YAMG A 0 A_SetBlend("Red",0.6,60)
      YAMG A 0 A_GunFlash
      YAMG A 0 A_PlaySound("Weapons/YamatoFire",6)
      YAMG A 0 A_FireCustomMissile("YamatoAltFireZ",0,1,20,0)
			YAMG A 0 A_GiveInventory("Yamato_AltFireZ_Used", 1) 
	  YAMG A 0 A_Recoil (1)
      YAMG R 1 Bright
      YAMG S 1 Bright
      YAMG T 1 Bright
      YAMG ABCABC 1
	  YANG A 0 A_ReFire
      Goto Ready 
 
	DoKick:
	  TNT1 A 0
      TNT1 A 0 //A_ZoomFactor(1.0)
	  TNT1 A 0 A_jumpifinventory("PowerStrength",1,"BerserkerKick")
	  TNT1 A 0 A_PlaySound("KICK")
	  TNT1 A 0 SetPlayerProperty(0,1,0)
	  KICK BCD 1
	  RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -7)
	  KICK H 4
	  KICK A 0 A_Takeinventory("Kicking",1)
	  KICK IGFEDCBA 1 
	  TNT1 A 0 SetPlayerProperty(0,0,0)
	  Goto Ready
    BerserkerKick:
	  TNT1 A 0 A_PlaySound("KICK")
	  TNT1 A 0 SetPlayerProperty(0,1,0)
	  KICK ABCDEFG 1
	  RIFF A 0 A_FireCustomMissile("SuperKickAttack", 0, 0, 0, -7)
	  KICK H 3
	  KICK A 0 A_Takeinventory("Kicking",1)
	  KICK IGFEDCBA 1 
	  TNT1 A 0 SetPlayerProperty(0,0,0)
	  Goto Ready
   Spawn:
      YANA X -1
      Loop
   }
}



ACTOR YamatoBomb
{
	Radius 12
	Height 8
	Speed 150
	Damage 0
	PROJECTILE
	+EXPLODEONWATER
	+EXTREMEDEATH //added
	-NOTELEPORT //added
    +TELESTOMP //added
	+SKYEXPLODE
	Renderstyle Add
	Scale 2.5
	Alpha 0.9
	DamageType "MarineSuperweapon"
	States
	{
	Spawn:
		YAS3 ABCD 2 bright A_Explode(100,128,0)
		Loop
	Death:
			YAS3 A 0 A_AlertMonsters
			YAS3 AB 2 Bright
        	TNT1 A 0 A_PlaySound("Weapons/YamatoHizz",6)
			YAS3 CD 2 Bright
        	TNT1 A 0 A_SpawnItemEx("YamatoShockInverse",0,0,0,0,0,0,0,128,0)
			YAS3 ABCDAB 2 bright A_FadeOut(0.1)
			TNT1 A 1 A_SpawnItemEx("YamatoHit",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
        	stop
	}
}

ACTOR YamatoHit
{
	+NOGRAVITY
	+NOINTERACTION
	States
	{
	Spawn:
		TNT1 A 0 Radius_Quake(99999,100,0,100,0)
        TNT1 A 0 A_PlaySound("Weapons/YamatoBlast",6)
		TNT1 A 0 A_SpawnItemEx("YamatoIllumination",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoShockwave",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoDamageAbuse",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoDamageLethal",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoSpinalCord",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoGroundSpin",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoShocker",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoExploder",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("YamatoShroom",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoBasis",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoShroomer",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoAfterBoomEffect",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
        TNT1 A 1
        stop
	}
}

ACTOR YamatoFakeFade
{
	Radius 12
	Height 8
	PROJECTILE
	Renderstyle Add
	+EXPLODEONWATER
	+CLIENTSIDEONLY
	Scale 1
	Speed 150
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItemEx("YamatoBombTrail2",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
        TNT1 A 1 Bright A_SpawnItemEx("YamatoBombTrail",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
		TNT1 B 0 A_SpawnItemEx("YamatoBombTrail2",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
        TNT1 B 1 Bright A_SpawnItemEx("YamatoBombTrail",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
		Loop
	Death:
		TNT1 AB 1 A_FadeOut(0.1)
		Wait
	}
}

ACTOR YamatoFaky1 : YamatoFakeFade
{
	Scale 3
	Alpha 0.3
	States
	{
	Spawn:
        YAS3 ABCD 3 Bright
		Loop
	Death:
		YAS3 ABCD 3 Bright A_FadeOut(0.025)
		Wait
	}
}

ACTOR YamatoFaky2 : YamatoFakeFade
{
	Scale 4
	Alpha 0.25
	States
	{
	Spawn:
        YAS3 DCBA 4 Bright
		Loop
	Death:
		YAS3 DCBA 4 Bright A_FadeOut(0.015)
		Wait
	}
}

ACTOR YamatoBombTrail : YamatoFakeFade
{
	Speed 0
	Scale 3
	Alpha 0.15
	States
	{
	Spawn:
        YAS1 AB 1 Bright A_FadeOut(0.02)
		Loop
	}
}

ACTOR YamatoBombTrail2 : YamatoFakeFade
{
	Speed 0
	Scale 1.5
	Alpha 0.35
	States
	{
	Spawn:
        YAE1 ABCBA 1 Bright
        YAS2 ABCDEF 1 Bright
		Stop
	}
}

ACTOR YamatoShockInverse
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Scale 2
	States
	{
	Spawn:
        YAE3 SRQPONMLKJIHGFEDCBA 1 Bright
		Stop
	}
}

ACTOR YamatoIllumination
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Alpha 1
	Scale 5.5
	States
	{
	Spawn:
        YAE4 A 1 Bright A_FadeOut(0.0075)
		Wait
	}
}

ACTOR YamatoShockwave
{
	+NOINTERACTION
	+NOCLIP
	+NOGRAVITY
	States
	{
	Spawn:
			TNT1 A 0
			TNT1 AAAAA 0 A_SpawnItemEx("YamatoShock4",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),2*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),128,0)
			TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("YamatoExploder",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),5*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),SXF_TRANSFERPOINTERS,0)
			TNT1 AAAAAAAA 0 A_SpawnItemEx("YamatoAfterBoomEffect",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),2.5*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),128,0)
			TNT1 A 1
			Stop
	}
}

ACTOR YamatoDamageAbuse
{
	+NOGRAVITY
	+NOINTERACTION
	+FORCERADIUSDMG
	+EXTREMEDEATH //added
	DamageType "MarineSuperweapon"
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Explode(10000,2048,0,1)
        	TNT1 A 0 A_Explode(5000,4096,0,1)
        	TNT1 A 1
			Stop
	}
}

ACTOR YamatoDamageLethal
{
	+NOGRAVITY
	+NOINTERACTION
	+EXTREMEDEATH //added
	DamageType "MarineSuperweapon"
   	Obituary "%o was battlecruiser operationed by %k's ''Yamato'' cannon."
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Explode(1000,512)
        	TNT1 A 0 A_Explode(100,3072)
        	TNT1 A 1
			Stop
	}
}

ACTOR YamatoShocker
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	States
	{
	Spawn:
		TNT1 A 20 A_SpawnItemEx("YamatoShock1",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("YamatoShock2",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("YamatoShock3",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("YamatoShock4",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("YamatoShock5",0,0,0,0,0,0,0,128,0)
		Stop
	}
}

ACTOR YamatoShock1
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	Renderstyle Add
	Scale 12
	States
	{
	Spawn:
        YAE3 ABCDEFGHIJKLMNOPQRS 3 Bright
		Stop
	}
}

ACTOR YamatoShock2 : YamatoShock1
{
	Scale 10
}

ACTOR YamatoShock3 : YamatoShock1
{
	Scale 8
}

ACTOR YamatoShock4 : YamatoShock1
{
	Scale 6
}

ACTOR YamatoShock5 : YamatoShock1
{
	Scale 4
}



ACTOR YamatoExploder
{
	+NOGRAVITY
	+NOINTERACTION
	Renderstyle Add
	ReactionTime 25
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 4 A_SpawnItemEx("YamatoExplode",random(-700,700),random(-700,700),15+random(-150,150),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoExplode
{
	+NOGRAVITY
	+NOINTERACTION
	Renderstyle Add
	+CLIENTSIDEONLY
	SeeSound ""
	Scale 2
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("Weapons/YamatoExp")
        TNT1 A 16 Bright A_SpawnItemEx("YamatoExplodeFade",random(-65,65),random(-65,65),random(-65,65),0,0,2+random(-1,0),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 6
		Stop
	}
}

ACTOR YamatoExplodeFade
{
	+NOGRAVITY
	+NOINTERACTION
	+FORCERADIUSDMG
	+EXTREMEDEATH //added
	DamageType "MarineSuperweapon"
	Renderstyle Add
	Alpha 0.75
	Scale 2
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_Explode(150,192,0)
		TNT1 A 15 Bright
        //YAE2 ABCDEFGHIJKLMNO 1 Bright
		TNT1 A 12//YAE2 PQRSTU 2
		Stop
	}
}

ACTOR YamatoSpinalCord
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 80
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoExplodeCord : YamatoExplode
{
	Speed 45
}

ACTOR YamatoGroundSpin
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 120
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("YamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoExplodeSpin : YamatoExplode
{
	Speed 55
}

ACTOR YamatoShroom
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 80
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_SpawnItemEx("YamatoExplode",random(-200,200),random(-200,200),15+random(-70,70),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1 A_SpawnItemEx("YamatoExplode",random(-200,200),random(-200,200),15+random(-70,70),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx("YamatoAirplode",0,0,0,0,0,0,0,128,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("YamatoExplode",frandom(-1000,1000),frandom(-1000,1000),15+frandom(-400,400),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("YamatoShock3",0,0,0,0,0,0,0,128,0)
		TNT1 A 0 A_SpawnItemEx("YamatoExploder",0,0,0,0,0,0,0,128,0)
		TNT1 A 0 A_SpawnItemEx("YamatoAfterboomEffectAir",0,0,0,0,0,0,0,128,0)
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoAirplode
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 95
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAA 0 A_SpawnItemEx("YamatoExplode",0.1*frandom(-10000,10000),0.1*frandom(-10000,10000),15+frandom(-400,400),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoShroomer
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 8
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 16, 0, 1)
		TNT1 A 0 A_SpawnItemEx("YamatoMidplode",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 10

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoMidplode
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 25
	States
	{
	Spawn:
		TNT1 A 0
		//TNT1 AAA 0 A_SpawnItemEx("YamatoAfterFade",0.1*frandom(-2000,2000),0.1*frandom(-2000,2000),15+frandom(-90,90),random(-20,20),random(-20,20),0,random(0,359),SXF_TRANSFERPOINTERS,0)
		TNT1 A 4 A_SpawnItemEx("YamatoExplode",0.1*frandom(-2000,2000),0.1*frandom(-2000,2000),15+frandom(-90,90),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoBasis
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 4
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 8, 0, 1)
		TNT1 A 10 A_SpawnItemEx("YamatoExploder",frandom(-300,300),frandom(-300,300),frandom(-150,150),0,0,0,0,SXF_TRANSFERPOINTERS,0)

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx("YamatoAfterboomEffect",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoAfterBoomEffect
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	ReactionTime 120
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Countdown
        	//TNT1 A 1 A_SpawnItemEx("YamatoAfterFade",0.1*random(-7000,7000),0.1*random(-7000,7000),15+random(-150,150),random(-20,20),random(-20,20),0,random(0,359),SXF_TRANSFERPOINTERS,0)
			Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR YamatoAfterBoomEffectAir : YamatoAfterBoomEffect
{
	ReactionTime 100
}

ACTOR YamatoAfterFade //Removed to improve FPS
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	Renderstyle Add
	Scale 0.5
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
		YAS2 AAA 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)

		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
		YAS2 BBB 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)

		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
        YAS2 CCC 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
        YAS2 DDD 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
        YAS2 EEE 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
		YAS2 FFF 1 Bright A_SpawnItemEx("YamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
		Stop
	}
}

ACTOR YamatoAfterFadeTrail //Removed to improve FPS
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Alpha 1
	Scale 0.5
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 6 Bright
        //YAS2 ABCDEF 1 Bright A_FadeOut(0.1)
		Stop
	}
}






//AltFire Z
Actor YamatoAltFireX
{
PROJECTILE
+BLOODSPLATTER 
-DONTSPLASH
speed 200
damage 6
scale .8
RenderStyle Add
Alpha 1
radius 8
Decal Scorch
height 8
+FORCERADIUSDMG
+EXTREMEDEATH
+TELESTOMP
-NOTELEPORT
+NODAMAGETHRUST
//+SeekerMissile
//+SCREENSEEKER
Decal "Scorch"
DamageType "MarineSuperweapon"

States
{
	Spawn:
		YAS2 A 1 BRIGHT A_SeekerMissile(4,10,SMF_PRECISE||SMF_LOOK,256,10) //100% chance seeker
		Loop
	Death:
	    TNT1 A 0 A_SpawnItemEx("YamatoAltFireXExplode")
		TNT1 A 0 A_Explode(random(15,20),200)
		TNT1 A 30 A_PlaySound("Weapons/YamatoExp",5)
		Stop		
}
}

actor YamatoAltFireXExplode
{
    Scale 0.3
    RenderStyle Add
    Alpha 0.8
	+NOGRAVITY
	damage 0
	DamageType "MarineSuperweapon"
    States
    {
    Spawn:
        YAE1 ABCBA 3
        stop
    }
}



//AltFire Y
Actor YamatoAltFireY
{
PROJECTILE
+BLOODSPLATTER 
-DONTSPLASH
speed 60
damage 50
scale 1
RenderStyle Add
Alpha 1
radius 8
Decal Scorch
height 8
+FORCERADIUSDMG
+EXTREMEDEATH
+TELESTOMP
-NOTELEPORT
+NODAMAGETHRUST
Decal "Scorch"
DamageType "MarineSuperweapon"

States
{
	Spawn:
		YAS3 ABCD 2 BRIGHT A_SeekerMissile(8,16,SMF_PRECISE||SMF_LOOK,0,10) //0% chance seeker
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx("YamatoAltFireYExplode")
		TNT1 A 0 A_Explode(random(70,120),300)
		TNT1 A 30 A_PlaySound("Weapons/YamatoExp",5)
		Stop
}
}

actor YamatoAltFireYExplode
{
    Scale 0.5
    RenderStyle Add
    Alpha 0.8
	+NOGRAVITY
	damage 0
	DamageType "MarineSuperweapon"
    States
    {
    Spawn:
        YAE3 ABCDEFGHIJKLMNOPQRS 2
        stop
    }
}


//AltFire Z
Actor YamatoAltFireZ
{
PROJECTILE
+BLOODSPLATTER 
-DONTSPLASH
+RIPPER
speed 15
damage (random(40,50))
scale .7
RenderStyle Add
Alpha 1
radius 8
Decal Scorch
height 8
+FORCERADIUSDMG
+EXTREMEDEATH
+TELESTOMP
-NOTELEPORT
+NODAMAGETHRUST
+SeekerMissile
+SCREENSEEKER
Decal "Scorch"
   BounceCount 25
   +CANBOUNCEWATER
   +DOOMBOUNCE
   +NOBOUNCESOUND
   +NOWALLBOUNCESND
DamageType "MarineSuperweapon"

States
{

	Spawn:
		YAS1 AB 1 BRIGHT A_SeekerMissile(8,16,SMF_PRECISE||SMF_LOOK,256,10) //100% chance seeker
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail2", (2 *momx)/-35.0, -(2 *momy)/-35.0, 2+(2 *momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail3", (4 *momx)/-35.0, -(4 *momy)/-35.0, 2+(4 *momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail4", (6 *momx)/-35.0, -(6 *momy)/-35.0, 2+(6 *momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail5", (8 *momx)/-35.0, -(8 *momy)/-35.0, 2+(8 *momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail6", (10*momx)/-35.0, -(10*momy)/-35.0, 2+(10*momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
        TNT1 A 0 A_SpawnItemEx("YamatoAltFireZTrail7", (12*momx)/-35.0, -(12*momy)/-35.0, 2+(12*momz)/-35.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
		Loop
	Death:
		Stop
}
}

actor YamatoAltFireZTrail
{
    Scale 0.35 //0.15
    RenderStyle Add
    Alpha 0.8
	//+NOINTERACTION
	+NOGRAVITY
	+RIPPER
	damage 1
	DamageType "MarineSuperweapon"
    States
    {
    Spawn:
        YAS2 A 10
		YAS2 B 9
		YAS2 C 7
		YAS2 D 5
		YAS2 E 3
		YAS2 F 1
        stop
    }
}

actor YamatoAltFireZTrail2: YamatoAltFireZTrail {    Alpha 0.85 damage 0 +CLIENTSIDEONLY}
actor YamatoAltFireZTrail3: YamatoAltFireZTrail {    Alpha 0.80 damage 0 +CLIENTSIDEONLY}
actor YamatoAltFireZTrail4: YamatoAltFireZTrail {    Alpha 0.75 damage 0 +CLIENTSIDEONLY}
actor YamatoAltFireZTrail5: YamatoAltFireZTrail {    Alpha 0.70 damage 0 +CLIENTSIDEONLY}
actor YamatoAltFireZTrail6: YamatoAltFireZTrail {    Alpha 0.65 damage 0 +CLIENTSIDEONLY}
actor YamatoAltFireZTrail7: YamatoAltFireZTrail {    Alpha 0.60 damage 0 +CLIENTSIDEONLY}

ACTOR XYamatoBomb
{
	Radius 12
	Height 8
	Speed 30 //150
	Damage 0
	PROJECTILE
	+EXPLODEONWATER
	+EXTREMEDEATH //added
	-NOTELEPORT //added
    +TELESTOMP //added
	+SKYEXPLODE
	Renderstyle Add
	Scale 2.5
	Alpha 0.9
	DamageType "MarineSuperweapon"
	States
	{
	Spawn:
		YAS3 ABCD 2 bright A_Explode(100,128,0)
		Loop
	Death:
			YAS3 A 0 A_AlertMonsters
			YAS3 AB 2 Bright
        	//TNT1 A 0 A_PlaySound("Weapons/YamatoHizz",6)
			YAS3 CD 2 Bright
        	//TNT1 A 0 A_SpawnItemEx("XYamatoShockInverse",0,0,0,0,0,0,0,128,0)
			YAS3 ABCDAB 2 bright A_FadeOut(0.1)
			TNT1 A 1 A_SpawnItemEx("XYamatoHit",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
        	stop
	}
}

ACTOR XYamatoHit
{
	+NOGRAVITY
	+NOINTERACTION
	States
	{
	Spawn:
		TNT1 A 0 Radius_Quake(99999,100,0,100,0)
        TNT1 A 0 A_PlaySound("Weapons/YamatoExp", CHAN_AUTO, 1, 0, ATTN_NONE)
		TNT1 A 0 A_SpawnItemEx("XYamatoIllumination",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("XYamatoShockwave",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
			//TNT1 A 0 A_SpawnItemEx("XYamatoDamageAbuse",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("XYamatoDamageLethal",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("XYamatoSpinalCord",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("XYamatoGroundSpin",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("XYamatoShocker",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		//TNT1 A 0 A_SpawnItemEx("XYamatoExploder",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
			//TNT1 A 0 A_SpawnItemEx("XYamatoShroom",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
			//TNT1 A 0 A_SpawnItemEx("XYamatoBasis",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
			//TNT1 A 0 A_SpawnItemEx("XYamatoShroomer",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
			//TNT1 A 0 A_SpawnItemEx("XYamatoAfterBoomEffect",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
        TNT1 A 1
        stop
	}
}

ACTOR XYamatoFakeFade
{
	Radius 12
	Height 8
	PROJECTILE
	Renderstyle Add
	+EXPLODEONWATER
	+CLIENTSIDEONLY
	Scale 1
	Speed 150
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItemEx("XYamatoBombTrail2",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
        TNT1 A 1 Bright A_SpawnItemEx("XYamatoBombTrail",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
		TNT1 B 0 A_SpawnItemEx("XYamatoBombTrail2",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
        TNT1 B 1 Bright A_SpawnItemEx("XYamatoBombTrail",random(-4,4),random(-4,4),random(-4,4),0,0,0,0,128,0)
		Loop
	Death:
		TNT1 AB 1 A_FadeOut(0.1)
		Wait
	}
}

ACTOR XYamatoFaky1 : XYamatoFakeFade
{
	Scale 3
	Alpha 0.3
	States
	{
	Spawn:
        YAS3 ABCD 3 Bright
		Loop
	Death:
		YAS3 ABCD 3 Bright A_FadeOut(0.025)
		Wait
	}
}

ACTOR XYamatoFaky2 : XYamatoFakeFade
{
	Scale 4
	Alpha 0.25
	States
	{
	Spawn:
        YAS3 DCBA 4 Bright
		Loop
	Death:
		YAS3 DCBA 4 Bright A_FadeOut(0.015)
		Wait
	}
}

ACTOR XYamatoBombTrail : XYamatoFakeFade
{
	Speed 0
	Scale 3
	Alpha 0.15
	States
	{
	Spawn:
        YAS1 AB 1 Bright A_FadeOut(0.02)
		Loop
	}
}

ACTOR XYamatoBombTrail2 : XYamatoFakeFade
{
	Speed 0
	Scale 1.5
	Alpha 0.35
	States
	{
	Spawn:
        YAE1 ABCBA 1 Bright
        YAS2 ABCDEF 1 Bright
		Stop
	}
}

ACTOR XYamatoShockInverse
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Scale 2
	States
	{
	Spawn:
        YAE3 SRQPONMLKJIHGFEDCBA 1 Bright
		Stop
	}
}

ACTOR XYamatoIllumination
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Alpha 1
	Scale 5.5
	States
	{
	Spawn:
        YAE4 A 1 Bright A_FadeOut(0.0075)
		Wait
	}
}

ACTOR XYamatoShockwave
{
	+NOINTERACTION
	+NOCLIP
	+NOGRAVITY
	States
	{
	Spawn:
			TNT1 A 0
			TNT1 AAAAA 0 A_SpawnItemEx("XYamatoShock4",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),2*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),128,0)
			TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("XYamatoExploder",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),5*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),SXF_TRANSFERPOINTERS,0)
			TNT1 AAAAAAAA 0 A_SpawnItemEx("XYamatoAfterBoomEffect",0.1*random(10,-10),0.1*random(10,-10),0.1*random(10,-10),2.5*random(4.25,3.25),0.1*random(6,-6),0.1*random(6,-6),random(0,359),128,0)
			TNT1 A 1
			Stop
	}
}

ACTOR XYamatoDamageAbuse
{
	+NOGRAVITY
	+NOINTERACTION
	+FORCERADIUSDMG
	+EXTREMEDEATH //added
	DamageType "MarineSuperweapon"
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Explode(10000,2048,0,1)
        	TNT1 A 0 A_Explode(5000,4096,0,1)
        	TNT1 A 1
			Stop
	}
}

ACTOR XYamatoDamageLethal
{
	+NOGRAVITY
	+NOINTERACTION
	+EXTREMEDEATH //added
	+FORCERADIUSDMG //added
	DamageType "MarineSuperweapon"
   	Obituary "%o was battlecruiser operationed by %k's ''Yamato'' cannon."
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Explode(1000,256)
			TNT1 A 0 A_Explode(500,512)
			TNT1 A 0 A_Explode(100,728) //	100,1024
        	TNT1 A 0 A_Explode(50,1024) // 50,2048
			TNT1 A 0 A_Explode(25,2048) // 25,4096
        	TNT1 A 1
			Stop
	}
}

ACTOR XYamatoShocker
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	States
	{
	Spawn:
		TNT1 A 20 A_SpawnItemEx("XYamatoShock1",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("XYamatoShock2",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("XYamatoShock3",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("XYamatoShock4",0,0,0,0,0,0,0,128,0)
		TNT1 A 20 A_SpawnItemEx("XYamatoShock5",0,0,0,0,0,0,0,128,0)
		Stop
	}
}

ACTOR XYamatoShock1
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	Renderstyle Add
	Scale 12
	States
	{
	Spawn:
        YAE3 ABCDEFGHIJKLMNOPQRS 3 Bright
		Stop
	}
}

ACTOR XYamatoShock2 : XYamatoShock1
{
	Scale 10
}

ACTOR XYamatoShock3 : XYamatoShock1
{
	Scale 8
}

ACTOR XYamatoShock4 : XYamatoShock1
{
	Scale 6
}

ACTOR XYamatoShock5 : XYamatoShock1
{
	Scale 4
}



ACTOR XYamatoExploder
{
	+NOGRAVITY
	+NOINTERACTION
	Renderstyle Add
	ReactionTime 25
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 4 A_SpawnItemEx("XYamatoExplode",random(-700,700),random(-700,700),15+random(-150,150),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoExplode
{
	+NOGRAVITY
	+NOINTERACTION
	Renderstyle Add
	+CLIENTSIDEONLY
	SeeSound ""
	Scale 2
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("Weapons/YamatoExp")
        TNT1 A 16 Bright A_SpawnItemEx("XYamatoExplodeFade",random(-65,65),random(-65,65),random(-65,65),0,0,2+random(-1,0),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 6
		Stop
	}
}

ACTOR XYamatoExplodeFade
{
	+NOGRAVITY
	+NOINTERACTION
	+FORCERADIUSDMG
	+EXTREMEDEATH //added
	DamageType "MarineSuperweapon"
	Renderstyle Add
	Alpha 0.75
	Scale 2
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_Explode(150,192,0)
		TNT1 A 15 Bright
        //YAE2 ABCDEFGHIJKLMNO 1 Bright
		TNT1 A 12//YAE2 PQRSTU 2
		Stop
	}
}

ACTOR XYamatoSpinalCord
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 80
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeCord",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(8 + angle)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoExplodeCord : XYamatoExplode
{
	Speed 45
}

ACTOR XYamatoGroundSpin
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 120
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown


		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown

		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,270,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,180,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,90,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 0 A_CustomMissile("XYamatoExplodeSpin",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER)
		TNT1 A 1 A_SetAngle(6 + angle)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoExplodeSpin : XYamatoExplode
{
	Speed 55
}

ACTOR XYamatoShroom
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 80
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 2, 0, 1)
		TNT1 A 0 A_SpawnItemEx("XYamatoExplode",random(-200,200),random(-200,200),15+random(-70,70),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1 A_SpawnItemEx("XYamatoExplode",random(-200,200),random(-200,200),15+random(-70,70),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx("XYamatoAirplode",0,0,0,0,0,0,0,128,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("XYamatoExplode",frandom(-1000,1000),frandom(-1000,1000),15+frandom(-400,400),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_SpawnItemEx("XYamatoShock3",0,0,0,0,0,0,0,128,0)
		TNT1 A 0 A_SpawnItemEx("XYamatoExploder",0,0,0,0,0,0,0,128,0)
		TNT1 A 0 A_SpawnItemEx("XYamatoAfterboomEffectAir",0,0,0,0,0,0,0,128,0)
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoAirplode
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 95
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAA 0 A_SpawnItemEx("XYamatoExplode",0.1*frandom(-10000,10000),0.1*frandom(-10000,10000),15+frandom(-400,400),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoShroomer
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 8
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 16, 0, 1)
		TNT1 A 0 A_SpawnItemEx("XYamatoMidplode",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 10

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoMidplode
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 25
	States
	{
	Spawn:
		TNT1 A 0
		//TNT1 AAA 0 A_SpawnItemEx("XYamatoAfterFade",0.1*frandom(-2000,2000),0.1*frandom(-2000,2000),15+frandom(-90,90),random(-20,20),random(-20,20),0,random(0,359),SXF_TRANSFERPOINTERS,0)
		TNT1 A 4 A_SpawnItemEx("XYamatoExplode",0.1*frandom(-2000,2000),0.1*frandom(-2000,2000),15+frandom(-90,90),0,0,2+random(-2,2),0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoBasis
{
	+NOGRAVITY
	+NOINTERACTION
	ReactionTime 4
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 8, 0, 1)
		TNT1 A 10 A_SpawnItemEx("XYamatoExploder",frandom(-300,300),frandom(-300,300),frandom(-150,150),0,0,0,0,SXF_TRANSFERPOINTERS,0)

		TNT1 A 0 A_Countdown
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx("XYamatoAfterboomEffect",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS,0)
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoAfterBoomEffect
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	ReactionTime 120
	States
	{
	Spawn:
        	TNT1 A 0
        	TNT1 A 0 A_Countdown
        	//TNT1 A 1 A_SpawnItemEx("XYamatoAfterFade",0.1*random(-7000,7000),0.1*random(-7000,7000),15+random(-150,150),random(-20,20),random(-20,20),0,random(0,359),SXF_TRANSFERPOINTERS,0)
			Loop
	Death:
		TNT1 A 1
		Stop
	}
}

ACTOR XYamatoAfterBoomEffectAir : XYamatoAfterBoomEffect
{
	ReactionTime 100
}

ACTOR XYamatoAfterFade //Removed to improve FPS
{
	+NOGRAVITY
	+CLIENTSIDEONLY
	+NOINTERACTION
	Renderstyle Add
	Scale 0.5
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
		YAS2 AAA 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)

		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
		YAS2 BBB 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)

		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
        YAS2 CCC 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
        YAS2 DDD 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 6, 0, 1)
        YAS2 EEE 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
        
		TNT1 A 0 ThrustThingZ(0, 4, 0, 1)
		YAS2 FFF 1 Bright A_SpawnItemEx("XYamatoAfterFadeTrail",0,0,random(-5,5),random(-5,5),0,0,0,128,0)
		Stop
	}
}

ACTOR XYamatoAfterFadeTrail //Removed to improve FPS
{
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY
	Renderstyle Add
	Alpha 1
	Scale 0.5
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 6 Bright
        //YAS2 ABCDEF 1 Bright A_FadeOut(0.1)
		Stop
	}
}