//Hammer

actor haelinsgift : Subweaponcandle
{
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_CustomMissile ("BlazHammerSprite",0,0,0,CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile ("DoomslayerThunderBombSprite",0,0,0,CMF_AIMDIRECTION)
		TNT1 A 0 A_CustomMissile ("KustamThunderLashSprite",0,0,0,CMF_AIMDIRECTION)
		Goto spawn1		
	Pickup2:
		TNT1 A 0
		TNT1 A 0 A_JumpIfInventory ("IamLordBlaz",1,"Blaz")
		TNT1 A 0 A_JumpIfInventory ("IamDoomSlayer",1,"DoomSlayer")
		TNT1 A 0 A_JumpIfInventory ("IamKustam",1,"Kustam")
		TNT1 A 1
		stop
	Blaz:
		TNT1 A 0
		TNT1 A 0
		TNT1 A 0 A_SetBlend (FFFF00,0.1,5)
		TNT1 A 0 A_PlaySound ("powerups/subweapon",CHAN_ITEM)
		TNT1 A 0 ACS_NamedExecuteAlways("SubLog",0,6,0,0)
		//TNT1 A 0 a_log ("The omen warhammer! thou may wield it!")
		TNT1 A 0 A_JumpIfInventory ("HammerCheck", 1, "GiveAmmo")
		TNT1 A 0 A_GiveInventory ("HammerCheck", 1)
		TNT1 A 0 A_GiveInventory ("SubweaponReload",100)
		TNT1 A 0 A_GiveInventory ("SubweaponPower",100)
		TNT1 A 0 A_TakeInventory ("LanceCheck", 99)
		TNT1 A 0 A_TakeInventory ("MattockCheck", 99)
		TNT1 A 0 A_TakeInventory ("ShieldCheck", 99)	
		TNT1 A 0 A_TakeInventory ("DaggerCheck", 99)
		TNT1 A 0 A_TakeInventory ("FireBottleCheck", 99)
		TNT1 A 0 A_TakeInventory ("BoomerangCheck", 99)
		stop
	GiveAmmo:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory ("SubweaponReload",100)
		TNT1 A 0 A_GiveInventory ("SubweaponPower",100)
		stop
	Doomslayer:
		TNT1 A 0
		TNT1 A 0 A_SetBlend (FFFF00,0.1,5)
		TNT1 A 0 A_PlaySound ("doomslayer/subpickup",CHAN_ITEM)
		TNT1 A 0 ACS_NamedExecuteAlways("SubLog",0,6,0,0)
		TNT1 A 0 A_GiveInventory ("BombCasterCharge",999)
		TNT1 A 0 A_JumpIfInventory ("SlayerThunderBombCheck", 1, "GiveSlayerAmmo")
		TNT1 A 0 A_TakeInventory ("BombCasterAmmo", 99)
		TNT1 A 0 A_TakeInventory ("SlayerFireBombCheck", 99)
		TNT1 A 0 A_TakeInventory ("SlayerFlashBombCheck", 99)
		TNT1 A 0 A_GiveInventory ("BombCasterAmmo", 3)
		TNT1 A 0 A_GiveInventory ("SlayerThunderBombCheck", 1)
		stop
	GiveSlayerAmmo:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory ("BombCasterAmmo", 3)
		stop
	Kustam:
		TNT1 A 0
		TNT1 A 0 A_SetBlend (FFFF00,0.1,5)
		TNT1 A 0 A_PlaySound ("Kustam/SubweaponGet",CHAN_ITEM)
		TNT1 A 0 ACS_NamedExecuteAlways("SubLog",0,6,0,0)
		TNT1 A 0 A_TakeInventory ("KustamEquipmentCooldown",999)
		TNT1 A 0 A_JumpIfInventory ("ThunderLashCheck", 1, "GiveKustamAmmo")
		TNT1 A 0 A_TakeInventory ("KustamSubAmmo",99)
		TNT1 A 0 A_TakeInventory ("FlashBoltCheck",99)
		TNT1 A 0 A_TakeInventory ("RailBeamCheck",99)
		TNT1 A 0 A_TakeInventory ("TurretShotCheck", 99)

		TNT1 A 0 A_GiveInventory ("ThunderLashCheck", 1)
		TNT1 A 0 A_GiveInventory ("KustamSubAmmo", 3)
		stop
	GiveKustamAmmo:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory ("KustamSubAmmo", 3)
		stop
	}
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//Blaz

actor HammerCheck : Inventory
{inventory.maxamount 1}

actor BlazHammerSprite : GMOTAweaponsprite
{
	+floatbob
    VisibleToPlayerClass LordBlaz
    States
    {
	spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound ("subweapons/thundercrack",0)
	pickalightning:
		TNT1 A 0
		TNT1 A 0 a_jump (255, "lightning1","lightning2","lightning3")
		loop
	lightning1:
		TNT1 A 0
		TNT1 A 0 A_SpawnItem("OmenLightningBoltVar1",0,-50,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("omenspawnlightning",0,0,0,0,10,0,frandom(0.0,359.9),SXF_NOCHECKPOSITION)		
		Goto hammerspawn
	lightning2:
		TNT1 A 0
		TNT1 A 0 A_SpawnItem("OmenLightningBoltVar2",0,-50,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("omenspawnlightning",0,0,0,0,10,0,frandom(0.0,359.9),SXF_NOCHECKPOSITION)
		Goto hammerspawn
	lightning3:
		TNT1 A 0
		TNT1 A 0 A_SpawnItem("OmenLightningBoltVar3",0,-50,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("omenspawnlightning",0,0,0,0,10,0,frandom(0.0,359.9),SXF_NOCHECKPOSITION)
		Goto hammerspawn
	Hammerspawn:
		TNT1 A 0
		CMCP A 1 bright
		TNT1 A 0 a_warp (AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
		TNT1 A 0 a_checkflag ("SPECIAL","Hammerspawn",AAPTR_TARGET)
		CMCP A 1 bright
		Goto death
	death:
		TNT1 A 0
		TNT1 A 1 a_spawnitemex ("Blazwinkout")
		stop
    }
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//Doomslayer
actor SlayerThunderbombcheck : ammo 
{
	inventory.amount 1
	inventory.maxamount 9
	states
	{
	spawn:
		HICN A -1
		stop
	}
}



actor DoomslayerThunderBombSprite : GMOTAweaponsprite
{
	+floatbob
    VisibleToPlayerClass DoomSlayer
    States
    {
	spawn:
		TNT1 A 0
		DSTB H 1 bright
		TNT1 A 0 a_warp (AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
		TNT1 A 0 a_checkflag ("SPECIAL","spawn",AAPTR_TARGET)
		DSTB H 1 bright
		Goto death
	death:
		TNT1 A 0
		TNT1 A 1 a_spawnitemex ("Doomslayerwinkout")
		stop
    }
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


//Kustam
actor ThunderLashcheck : Inventory
{inventory.maxamount 1}


actor KustamThunderLashSprite : GMOTAweaponsprite
{
	+floatbob
    VisibleToPlayerClass Kustam
    States
    {
	spawn:
		TNT1 A 0
		KLSH A 1 bright
		TNT1 A 0 a_warp (AAPTR_TARGET,0,0,0,0,WARPF_INTERPOLATE|WARPF_NOCHECKPOSITION)
		TNT1 A 0 a_checkflag ("SPECIAL","spawn",AAPTR_TARGET)
		KLSH A 1 bright
		Goto death
	death:
		TNT1 A 0
		TNT1 A 1 a_spawnitemex ("Kustamwinkout")
		stop
    }
}



//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



//Hammer spawn visual effects

actor omenspawnlightning
{
	projectile
	speed 4
	+floorhugger
	+NOINTERACTION
	states
	{
	spawn:	
		GRLT ABCBA 1 Bright A_SetTranslucent(.6,1)
		TNT1 AA 1  Bright 
		GRLT BACABC 1 Bright 
		TNT1 AA 1  Bright 
		GRLT ACABC 1 Bright 
		TNT1 A 1  Bright 
		GRLT CBAC 1 Bright 
		Stop
	}
}


Actor OmenLightningBoltVar1
{
    Radius 7
    Height 5
    Speed 0
    Alpha 1
	Scale 4
    PROJECTILE
    RenderStyle Add
	+RANDOMIZE
	+THRUACTORS
	+NOCLIP
	+DONTSPLASH
	+BRIGHT
	+DONTBLAST
	ReactionTime 1
    States
    {
    Spawn:
       LBLT A 1
	   LBLT B 1
	   LBLT C 1
	   LBLT D 1
	   TNT1 A 0 A_Countdown
	   Loop
    Death:
	   TNT1 A 0 Radius_quake (5,10,0,150,0)
	   TNT1 A 0 A_PlaySound ("subweapons/lancelightning",5,1,0,0)
	   GXLT ABCD 1
       Stop
    }
}


	
Actor OmenLightningBoltVar2
{
    Radius 7
    Height 5
    Speed 0
    Alpha 1
	Scale 4
    PROJECTILE
    RenderStyle Add
	+RANDOMIZE
	+THRUACTORS
	+NOCLIP
	+DONTSPLASH
	+BRIGHT
	+DONTBLAST
	ReactionTime 1
    States
    {
    Spawn:
       LBLT D 1
	   LBLT B 1
	   LBLT C 1
	   LBLT A 1
	   TNT1 A 0 A_Countdown
	   Loop
    Death:
	   TNT1 A 0 Radius_quake (5,10,0,150,0)
	   TNT1 A 0 A_PlaySound ("subweapons/lancelightning",5,1,0,0)
	   GXLT ABCD 1
       Stop
    }
}


Actor OmenLightningBoltVar3
{
    Radius 7
    Height 5
    Speed 0
    Alpha 1
	Scale 4
    PROJECTILE
    RenderStyle Add
	+RANDOMIZE
	+THRUACTORS
	+NOCLIP
	+DONTSPLASH
	+BRIGHT
	+DONTBLAST
	ReactionTime 1
    States
    {
    Spawn:
       LBLT C 1
	   LBLT A 1
	   LBLT D 1
	   LBLT B 1
	   TNT1 A 0 A_Countdown
	   Loop
    Death:
	   TNT1 A 0 Radius_quake (5,10,0,150,0)
	   TNT1 A 0 A_PlaySound ("subweapons/lancelightning",5,1,0,0)
	   GXLT ABCD 1
       Stop
    }
}		
