

actor welderpuff : DooskPuff
{
  SeeSound "Weapon/Hit" //  SeeSound "Sickles/Flesh" 
  AttackSound "Sickles/Wall"
	Scale 0.6

	RenderStyle Stencil
	StencilColor Yellow
}



ACTOR Welder_ProjFX1
{
	+NOBLOCKMAP
+NOINTERACTION
	Gravity 0.125
	RenderStyle Stencil
	StencilColor Yellow

	Scale 0.5
	States
	{
	Spawn:
		PART A 1 A_FadeOut(0.04)
		Loop
	}
}


ACTOR Welder_ProjFX2
{
	+NOBLOCKMAP
+NOINTERACTION
	Gravity 0.125
	RenderStyle Stencil
	StencilColor Red

	Scale 0.5
	States
	{
	Spawn:
		PART A 1 A_FadeOut(0.06)
		Loop
	}
}


//===========================================================================
//
// Projectile
//
//===========================================================================
ACTOR Welder_Ball
{
	Game Doom
	SpawnID 10
	Radius 6
	Height 8
	Speed 15
	Damage 3
	Projectile
	+RANDOMIZE
	RenderStyle Add
	Alpha 0.75
	SeeSound "welder/fire"
	DeathSound "sil/encio"
DamageType "WelderProj"
	Scale 2.0
	States
	{
	Spawn:
		BAL1 A 0 BRIGHT A_SpawnItemEx("Welder_ProjFX1", random2[BoltSpark]()*0.015625, random2[BoltSpark]()*0.015625, 0, 0,0,0,0,SXF_ABSOLUTEPOSITION, 50)
		PRJ1 A 2 BRIGHT 
		Loop
	Death:
		"####" "#" 1 Thing_ChangeTid(0,1998)
		"####" "#" 1 BRIGHT

	TNT1 A 0 A_PlaySound("Projectile/impact")
		BLLT A 0 BRIGHT A_SpawnItem("Welderpuff")
		Stop


	Crash:
		TNT1 A 1 BRIGHT 
		Stop

	}
}

//Same as above, but with a different see sound.
//So sickles monster doesn't play the fire sound while attacking.

ACTOR Welder_BallDeflect : Welder_Ball
{
DamageType "DeflectedProjectile"
	SeeSound "Sil/Encio"//"Sword/Deflect"
States
	{
	Death:
	TNT1 A 0 A_PlaySound("Projectile/impact")
		BLLT A 0 BRIGHT A_SpawnItem("Welderpuff")
		Stop
	}
}





//===========================================================================
//
// Welder
//
//===========================================================================
ACTOR Welder //502//replaces 
{
	//$Category Doosk Monsters
	//$Sprite WLDAA0
	//$Title Welder
	//$Color 6
	Game Doom
	SpawnID 111
	Health 352//300
	GibHealth 75
	PainChance 0
	+QUICKTORETALIATE

	+NOPAIN
	Speed 5
	Radius 24
	Height 64
	Mass 1000
	Monster
	ReactionTime 105
	+FLOORCLIP
	+BOSSDEATH	//fatso

	SeeSound "welder/sight"
	AttackSound "welder/fire"
	PainSound "welder/pain"
	DeathSound "welder/death"
	ActiveSound "welder/active"
	Obituary "$WELDR_DTH"
	Gravity 0.6
	DamageFactor "Deflectedprojectile", 5.0

	DropItem Clip
	Scale 0.3
	States
	{
	Spawn:
        WLDA A 0 A_StopSoundEx("soundslot5")
		WLDA A 10 A_Look
		Loop
	See:
        WLDA A 0 A_PlaySoundEx("welder/loop","soundslot5",1)
        WLDA AACCEEGGIIJJLLMMOOQQSS 1 A_Chase
		Loop

	Missile:
        WLDB A 0 A_StopSoundEx("soundslot5")
TNT1 A 0 A_PlaySound("welder/pre_fire")
		WLDB AAAABBBBBB 1 bright A_FaceTarget
//10 shots
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 12 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
TNT1 A 0 A_PlaySound("welder/fire")		WLDB B 0 bright A_FaceTarget
		WLDB B 20 bright A_CustomMissile("welder_Ball",32,0,random(-5,5),CMF_OFFSETPITCH,random(-2,2))
		Goto See


	Pain:
		WLDD A 0 A_Pain
		Goto See
	Death:
        TNT1 A 0 A_StopSoundEx("soundslot5")
		WLDC A 0 A_ScreamAndUnblock
		
TNT1 A 0 A_ChangeVelocity(0.0, 0.0, 6.5,CVF_RELATIVE)
		BPLZ A 0 A_ChangeFlag("noclip",true)

WLDC ABCCDEEFGGHIIJKKLMNNOOPQQRSST 1

TNT1 A 0 A_PlaySound("welder/xplod")
        TNT1 A 1 A_SpawnItemEx("Dusk_ExplosiveMonsterGore",0,0,0,0,0,0,0,32)
		TNT1 A 0 A_CustomMissile("Dusk_GenericMonsterExplosion")
		WNDB P 0 Fast A_CustomBulletAttack(1, 1, 1, 10,"BulletPuff",128)//Using this, so melee activates at 64px while making effect up to 128 px. Silly, but it works.

//        TNT1 A 1 A_SpawnItemEx("Dusk_GenericMonsterExplosion",0,0,0,0,0,0,0,32)

		TNT1 AA 35

		TNT1 A 1 A_BossDeath

		Stop

	Crush:
	XDeath:
        TNT1 A 0 A_StopSoundEx("soundslot5")
		TNT1 A 0 A_ScreamAndUnblock

TNT1 A 0 A_PlaySound("welder/xplod")
        TNT1 A 1 A_SpawnItemEx("Dusk_ExplosiveMonsterGore",0,0,0,0,0,0,0,32)
		TNT1 A 0 A_CustomMissile("Dusk_GenericMonsterExplosion")
//        TNT1 A 1 A_SpawnItemEx("Dusk_GenericMonsterExplosion",0,0,0,0,0,0,0,32)
		WNDB P 0 Fast A_CustomBulletAttack(1, 1, 1, 10,"BulletPuff",128)//Using this, so melee activates at 64px while making effect up to 128 px. Silly, but it works.

		TNT1 AA 35

		TNT1 A 1 A_BossDeath

		Stop


	}
}





