//Dusk damage chart (type: Dmg)
//SP: 300
//MP: 60

//The projectile only makes direct damage.
//Radius damage is given through "Dusk_GrenadeExplodeVisualAir"
ACTOR Dusk_Grenade_DM
{
    Radius 4
    Height 9
    Health 50 //(50+50+20direct = 120)
    Damage 20
    Speed 17
    Mass 0
    BounceFactor 0.59//420//69
	WallBounceFactor 0.520

    Gravity 0.25
    BounceType "Hexen"
//+MBFBOUNCER
    -ROCKETTRAIL
    PROJECTILE
    +CANBOUNCEWATER
    -NOGRAVITY
    +FORCERADIUSDMG
//+BOUNCEAUTOOFF
//+BOUNCEAUTOOFFFLOORONLY
+USEBOUNCESTATE

  ReactionTime 210 //(6 seconds) 
    +NOBLOCKMAP
    +MISSILE
    +BRIGHT
	+SEEKERMISSILE //Not actually used for anything other than checking radius.
SeeSound "Sil/Encio"
//    BounceSound "mortar/bounce"
//    DeathSound "weapons/rocklx"
    Obituary "$MORT_OB"
Scale 0.15
    States
    {
    Spawn:
        MORT A 0 NoDelay ACS_NamedExecuteWithResult("Doosk_MortarFired")
    Idle:
        MORT A 1 A_SpawnItemEx("Soldier_BulletFX", random2[BoltSpark]()*0.015625, random2[BoltSpark]()*0.015625, 0, 0,0,0,0,SXF_ABSOLUTEPOSITION, 50)
    MORT A 0 A_CountDown
	Loop
IdleSound:
		BLLT A 0 BRIGHT A_SpawnItem("BuzzsawPuff")
tnt1 a 0 A_PlaySound("mortar/bounce")
Goto Idle


bounce.ceiling:
bounce.wall:
		BLLT A 0 BRIGHT A_SpawnItem("BuzzsawPuff")
tnt1 a 0 A_PlaySound("mortar/bounce")
Goto Idle
bounce.floor:
TNT1 A 0 A_JumpIf(velz > 1, "IdleSound")
Goto BounceDed

BounceDed:
MORT A 0 A_Stop
BounceDead:
MORT A 1 A_CountDown
Loop






	Xdeath:	//Direct hit
		TNT1 A 0 A_GiveToTarget("DamageDealtSoundItemHack",1)
	Death: //crashed somewhere and checks for splash
		TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
		TNT1 A 0 A_Stop
		TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
		TNT1 A 0 A_JumpIfTargetInLOS("RadiusHit",360,JLOSF_PROJECTILE,180)
		TNT1 A 0 A_Jump(256,"DeathCont") //for virtual jump to inherited versions
		Goto DeathCont
		
		RadiusHit:	//splash damage beep
			TNT1 A 0 A_GiveToTarget("DamageDealtSoundItemHack",1)
			TNT1 A 0 A_Jump(256,"DeathCont") //for virtual jump to inherited versions
			Goto DeathCont
		
	DeathCont:
//    Death:
    //      TNT1 A 0 A_SetScale(0.75)
        MISL B 0 //A_Explode
        MORT A 1 A_SpawnItemEx("Dusk_GrenadeExplodeVisualAir_DM",0,0,0,0,0,0,0,32)
        Stop
    }
}
 
 
Actor Dusk_GrenadeExplodeVisualAir_DM
{
    SpawnID 201
    +NOINTERACTION
    Radius 2
    Height 2
    RenderStyle Add
    Alpha 1.0
    Scale 0.85
    //SeeSound "weapons/rocklx"
    States
    {
    Spawn:
        TNT1 A 0 NoDelay A_PlaySound("Projectile/explosive")
//        TNT1 A 0 A_Explode
		TNT1 A 0 A_Explode(50,128,1,0,18)	//max damage taken by self rocket (rocket jump) is 50
		TNT1 A 0 A_Explode(30,144,0,0,96)	//then another 34 extra damage for impacting a player + (16)dmg on the projectile =100dmg


        X09C AB 1 Bright Light("OrangeBigPoint3")
        X09C CD 1 Bright Light("OrangeMediumPoint2")
        X09C EF 1 Bright Light("OrangeSmallPoint2")
        X09C GHIJKLMN 1 Bright
        X09C OPQRSTUVWXYZ 1 Bright
        X09D ABCDEFGHIJKLMNOP 1 Bright
//      X09C OQSUWY 2 Bright
//      X09D ACEGIKMO 2 Bright
        Stop
    }
}



