
#Eden's Ascended
Freeslot
MT_EDENASCENDED
S_ASCENDEDIDLE
S_ASCENDEDCHASE
S_ASCENDEDCHASE1
S_ASCENDEDCHASE2
S_ASCENDEDCHASE3
S_ASCENDEDCHOICE
S_ASCENDEDCHOICETARGET
S_ASCENDEDFIRE
S_ASCENDEDFIREB
S_ASCENDEDFIREB2
S_ASCENDEDFIREWAIT1
S_ASCENDEDFIREWAIT2
S_ASCENDEDREPEAT
S_ASCENDEDCRUMBLE
S_ASCENDEDDEATH
S_ASCENDEDDEATHCHOICE
S_ASCENDEDDEATH1
S_ASCENDEDDEATH2
spr_LMWZ
sfx_wizact
sfx_wizdth
sfx_wztel1
sfx_wzpain


State S_ASCENDEDIDLE
SpriteName = LMWZ
SpriteFrame = A
Var1 = (1500<<16)+1
Var2 = 0
Duration = 1
Next =  S_ASCENDEDIDLE
Action = A_Look

State S_ASCENDEDCHASE
SpriteName = LMWZ
SpriteFrame = A
Var1 = 3
Var2 = 0
Duration = 7
Next =  S_ASCENDEDCHASE1
Action = A_Chase

State S_ASCENDEDCHASE1
SpriteName = LMWZ
SpriteFrame = B
Var1 = 3
Var2 = 0
Duration = 7
Next =  S_ASCENDEDCHASE2
Action = A_Chase

State S_ASCENDEDCHASE2
SpriteName = LMWZ
SpriteFrame = C
Var1 = 3
Var2 = 0
Duration = 7
Next =  S_ASCENDEDCHASE3
Action = A_Chase

State S_ASCENDEDCHASE3
SpriteName = LMWZ
SpriteFrame = D
Var1 = 6
Var2 = S_ASCENDEDCHASE
Duration = 4
Next =  S_ASCENDEDCHOICETARGET
Action = A_Repeat

State S_ASCENDEDCHOICETARGET
SpriteName = LMWZ
SpriteFrame = A
Var1 = 0
Var2 = S_ASCENDEDCHOICETARGET
Duration = 1
Next =   S_ASCENDEDCHOICE
Action = A_SearchForPlayers

State S_ASCENDEDCHOICE
SpriteName = LMWZ
SpriteFrame = E
Var1 = (7<<16)+10
Var2 = S_ASCENDEDFIRE
Duration = 0
Next =  S_ASCENDEDFIREB
Action = A_CheckRandom


State S_ASCENDEDFIREB
SpriteName = LMWZ
SpriteFrame = E
Var1 = MT_DEMONFIRE
Var2 = 0
Duration = 10
Next =  S_ASCENDEDFIREB2
Action = A_FireShot

State S_ASCENDEDFIREB2
SpriteName = LMWZ
SpriteFrame = E
Var1 = MT_DEMONFIRE
Var2 = 0
Duration = 10
Next =  S_ASCENDEDFIREWAIT2
Action = A_FireShot

State S_ASCENDEDFIRE
SpriteName = LMWZ
SpriteFrame = E
Var1 = MT_ORBINAUT
Var2 = 24
Duration = 0
Next =  S_ASCENDEDFIREWAIT1
Action = A_AscendedOrbinaut

State S_ASCENDEDFIREWAIT1
SpriteName = LMWZ
SpriteFrame = E
Var1 = 0
Var2 = 0
Duration = 6
Next =  S_ASCENDEDFIREWAIT2
Action = None

State S_ASCENDEDFIREWAIT2
SpriteName = LMWZ
SpriteFrame = A
Var1 = 50
Var2 = 105
Duration = 105
Next =  S_ASCENDEDREPEAT
Action = A_SetRandomTics

State S_ASCENDEDREPEAT
SpriteName = LMWZ
SpriteFrame = A
Var1 = 9
Var2 = S_ASCENDEDCHOICETARGET
#S_ASCENDEDIDLE
Duration = 0
#Next =  S_ASCENDEDIDLE
Next = S_ASCENDEDCRUMBLE
Action = A_Repeat

State S_ASCENDEDCRUMBLE
SpriteName = LMWZ
SpriteFrame = G
Var1 = 0
Var2 = 1
Duration = 0
Next =  S_ASCENDEDDEATH
Action = A_RemoteDamage

State S_ASCENDEDDEATH
SpriteName = LMWZ
SpriteFrame = FF_ANIMATE|G
Var1 = 6
Var2 = 6
Duration = 36
Next =  S_ASCENDEDDEATHCHOICE
Action = none

State S_ASCENDEDDEATHCHOICE
SpriteName = LMWZ
SpriteFrame = M
Var1 = (2<<16)+4
Var2 = S_ASCENDEDDEATH1
Duration = 1
Next =  S_ASCENDEDDEATH2
Action = A_CheckRandom

State S_ASCENDEDDEATH1
SpriteName = LMWZ
SpriteFrame = M
Var1 = 0
Var2 = (16<<16)+MT_ASCENDEDSOUL
Duration = 105
Next =  S_NULL
Action = A_SpawnObjectRelative

State S_ASCENDEDDEATH2
SpriteName = LMWZ
SpriteFrame = M
Var1 = 0
Var2 = 0
Duration = 105
Next =  S_NULL
Action = none

Object MT_EDENASCENDED
MapThingNum = 2280
SpawnState = S_ASCENDEDIDLE
SpawnHealth = 1
SeeState = S_ASCENDEDCHASE
SeeSound = sfx_wizact
ReactionTime = 0
AttackSound = sfx_wztel1
PainState = S_NULL
PainChance = 5000
PainSound = sfx_wzpain
MeleeState = S_NULL
MissileState = S_ASCENDEDFIRE
DeathState = S_ASCENDEDDEATH
XDeathState = S_NULL
DeathSound = sfx_wizdth
Speed = 10
Radius = 24*FRACUNIT
Height = 64*FRACUNIT
DispOffset = 0
Mass = 1
Damage = 1000
ActiveSound = sfx_None
Flags = MF_RUNSPAWNFUNC|MF_SLIDEME|MF_SPECIAL|MF_SHOOTABLE|MF_PAIN
RaiseState = MT_ORBINAUT

#Eden Missile
Freeslot
MT_EDEN_MISSILE
S_EDEN_MISSILE_FLIGHT
S_EDEN_MISSILE_FLIGHT1
S_EDEN_MISSILE_CRASHDOWN
S_EDEN_MISSILE_CRDN1
S_EDEN_MISSILE_CRASHDOWN2
S_EDEN_MISSILE_CRASHDOWN3
S_EDEN_MISSILE_CRASHDOWN4
S_EDEN_MISSILE_BURST
S_EDEN_MISSILE_BURST1
S_EDEN_MISSILE_BURST2
S_EDEN_ASCENDED_RAISE
S_EDEN_ASCENDED_RAISE1

State S_EDEN_MISSILE_FLIGHT
SpriteName = ARMA
SpriteFrame = FF_FULLBRIGHT|FF_ANIMATE|A
Var1 = 10
Var2 = 1
Duration = 30
Next = S_EDEN_MISSILE_FLIGHT1
Action = none

State S_EDEN_MISSILE_FLIGHT1
SpriteName = ARMA
SpriteFrame = FF_FULLBRIGHT|FF_ANIMATE|A
Var1 = 10
Var2 = 1
Duration = 20
Next = S_EDEN_MISSILE_CRASHDOWN
Action = none

State S_EDEN_MISSILE_CRASHDOWN
SpriteName = DBAL
SpriteFrame = FF_FULLBRIGHT|A
Var1 = S_EDEN_MISSILE_CRDN1
Var2 = S_EDEN_MISSILE_FLIGHT1
Duration = 0
Next = S_NULL
Action = A_RandomState

State S_EDEN_MISSILE_CRDN1
SpriteName = ARMA
SpriteFrame = A
Var1 = 0
Var2 = (1<<16)+1
Duration = 1
Next = S_EDEN_MISSILE_CRASHDOWN2
Action = A_ZThrust

State S_EDEN_MISSILE_CRASHDOWN2
SpriteName = ARMA
SpriteFrame = FF_FULLBRIGHT|A
Var1 = FRACUNIT*3
Var2 = 1 
Duration = 75
Next = S_EDEN_MISSILE_CRASHDOWN3
Action = A_SetScale

State S_EDEN_MISSILE_CRASHDOWN3
SpriteName = ARMA
SpriteFrame = A
Var1 = -32
Var2 = (1<<16)+1
Duration = 1
Next = S_EDEN_MISSILE_CRASHDOWN4
Action = A_ZThrust

State S_EDEN_MISSILE_CRASHDOWN4
SpriteName = ARMA
SpriteFrame = B
Var1 = -32
Var2 = (1<<16)+1
Duration = 1
Next = S_EDEN_MISSILE_CRASHDOWN3
Action = A_ZThrust

State S_EDEN_MISSILE_BURST
SpriteName = NULL
SpriteFrame = A
Var1 = FRACUNIT
Var2 = 0
Duration = 2
Next =  S_EDEN_MISSILE_BURST1
Action = A_SetScale

State S_EDEN_MISSILE_BURST1
SpriteName = NULL
SpriteFrame = A
Var1 = (2<<16)+4
Var2 = S_EDEN_ASCENDED_RAISE
Duration = 1
Next = S_EDEN_MISSILE_BURST2
Action = A_CheckRandom

State S_EDEN_MISSILE_BURST2
SpriteName = NULL
SpriteFrame = A
Var1 = (MT_DEMONFIRE<<16)+6
Var2 = -20
Duration = 2
Next = S_CYBRAKDEMONMISSILE_EXPLODE1
Action = A_MultiShot


State S_EDEN_ASCENDED_RAISE
SpriteName = NULL
SpriteFrame = A
Var1 = S_EDEN_ASCENDED_RAISE1
Var2 = S_EDEN_MISSILE_BURST2
Duration = 2
Next = S_EDEN_ASCENDED_RAISE1
Action = none

State S_EDEN_ASCENDED_RAISE1
SpriteName = NULL
SpriteFrame = A
Var1 = 0
Var2 = MT_EDENASCENDED
Duration = 2
Next = S_NULL
Action = A_SpawnObjectRelative

#S_CYBRAKDEMONMISSILE_EXPLODE1

Object MT_EDEN_MISSILE
MapThingNum = -1
SpawnState = S_EDEN_MISSILE_FLIGHT
SpawnHealth = 1000
SeeState = S_NULL
SeeSound = sfx_s3kc2s
ReactionTime = 8
AttackSound = sfx_None
PainState = S_NULL
PainChance = MT_THOK
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_EDEN_MISSILE_BURST
XDeathState = S_NULL
DeathSound = sfx_bexpld
Speed = 12*FRACUNIT
Radius = 24*FRACUNIT
Height = 24*FRACUNIT
DispOffset = 0
Mass = 1
Damage = 1000
ActiveSound = sfx_None
Flags = MF_MISSILE|MF_NOBLOCKMAP|MF_NOGRAVITY
RaiseState = S_NULL

#Flesh Eden
Freeslot
S_EDEN_CORE
S_EDEN_CORE2
S_EDEN_CORE3
S_EDEN_CORE_SPAWN1
S_EDEN_CORE_SPAWN2
S_EDEN_RAIN
S_EDEN_RAIN1
S_EDEN_RAIN2
S_EDEN_RAIN3
S_EDEN_WAIT_CHECK1
S_EDEN_WAIT_CHECK2
S_EDEN_WAIT_CHECK3
S_EDEN_WAIT_CHECK4
S_EDEN_WAIT1
S_EDEN_WAIT2
S_EDEN_WAIT3
S_EDEN_WAIT4
S_EDEN_PAIN
S_EDEN_PAIN1
S_EDEN_PAIN2
S_EDEN_DEATH
S_EDEN_SCREAM
S_EDEN_DREPEAT
S_EDEN_FALL
S_EDEN_FALL1

State S_EDEN_CORE_SPAWN1
SpriteName = SPBM
SpriteFrame = A
Var1 = FRACUNIT*2
Var2 = 0
Duration = 1
Next = S_EDEN_CORE_SPAWN2
Action = A_SetScale

State S_EDEN_CORE_SPAWN2
SpriteName = SPBM
SpriteFrame = A
Var1 = 0
Var2 = SKINCOLOR_BLUE
Duration = 300
Next = S_EDEN_RAIN1
Action = A_ChangeColorAbsolute

State S_EDEN_WAIT_CHECK4
SpriteName = SPBM
SpriteFrame = A
Var1 = 1
Var2 = S_EDEN_WAIT4
Duration = 0
Next =  S_EDEN_WAIT_CHECK3
Action = A_CheckHealth

State S_EDEN_WAIT_CHECK3
SpriteName = SPBM
SpriteFrame = A
Var1 = 2
Var2 = S_EDEN_WAIT3
Duration = 0
Next =  S_EDEN_WAIT_CHECK2
Action = A_CheckHealth

State S_EDEN_WAIT_CHECK2
SpriteName = SPBM
SpriteFrame = A
Var1 = 3
Var2 = S_EDEN_WAIT2
Duration = 0
Next =  S_EDEN_WAIT_CHECK1
Action = A_CheckHealth

State S_EDEN_WAIT_CHECK1
SpriteName = SPBM
SpriteFrame = A
Var1 = 4
Var2 = S_EDEN_WAIT1
Duration = 0
Next = S_EDEN_RAIN
Action = A_CheckHealth

State S_EDEN_WAIT1
SpriteName = SPBM
SpriteFrame = A
Var1 = 901
Var2 = 0
Duration = 0
Next = S_EDEN_CORE
Action = A_LinedefExecute

State S_EDEN_WAIT2
SpriteName = SPBM
SpriteFrame = A
Var1 = 902
Var2 = 0
Duration = 0
Next = S_EDEN_CORE
Action = A_LinedefExecute

State S_EDEN_WAIT3
SpriteName = SPBM
SpriteFrame = A
Var1 = 903
Var2 = 0
Duration = 0
Next = S_EDEN_CORE
Action = A_LinedefExecute

State S_EDEN_WAIT4
SpriteName = SPBM
SpriteFrame = A
Var1 = 904
Var2 = 0
Duration = 0
Next = S_EDEN_CORE
Action = A_LinedefExecute

State S_EDEN_CORE
SpriteName = SPBM
SpriteFrame = FF_ANIMATE|FF_FULLBRIGHT|A
Var1 = 8
Var2 = 1
Duration = 25*TICRATE
Next = S_EDEN_CORE2
Action = none

State S_EDEN_CORE2
SpriteName = SPBM
SpriteFrame = FF_FULLBRIGHT|A
Var1 = sfx_s3k80
Var2 = 0
Duration = 0
Next = S_EDEN_CORE3
Action = A_PlaySound

State S_EDEN_CORE3
SpriteName = SPBM
SpriteFrame = FF_ANIMATE|FF_FULLBRIGHT|A
Var1 = 8
Var2 = 1
Duration = 5*TICRATE
Next = S_EDEN_RAIN
Action = none

State S_EDEN_RAIN
SpriteName = SPBM
SpriteFrame = A
Var1 = MT_PLAYER
Var2 = 0
Duration = 2
Next = S_EDEN_RAIN1
Action = A_FindTarget

State S_EDEN_RAIN1
SpriteName = SPBM
SpriteFrame = A
#Var1 = MT_CYBRAKDEMON_FLAMESHOT
Var1 = (MT_EDEN_MISSILE<<16)+8
Var2 = 0
Duration = 40
Next = S_EDEN_RAIN2
Action = A_MultiShot

State S_EDEN_RAIN2
SpriteName = SPBM
SpriteFrame = A
Var1 = 8
Var2 = S_EDEN_RAIN
Duration = 1
Next = S_EDEN_RAIN3
Action = A_Repeat


State S_EDEN_RAIN3 
SpriteName = SPBM
SpriteFrame = A
Var1 = sfx_wind1
Var2 = 0
Duration = 2
Next = S_EDEN_WAIT_CHECK4
Action = A_PlaySound

State S_EDEN_PAIN
SpriteName = SPBM
SpriteFrame = A
Var1 = 908
Var2 = 0
Duration = 0
Next = S_EDEN_PAIN1
Action = A_LinedefExecute

State S_EDEN_PAIN1
SpriteName = SPBM
SpriteFrame = E
Var1 = 0
Var2 = 0
Duration = 140
Next = S_EDEN_PAIN2
Action = A_Pain

State S_EDEN_PAIN2
SpriteName = SPBM
SpriteFrame = E
Var1 = MF2_FRET
Var2 = 1
Duration = 0
Next = S_EDEN_RAIN
Action = A_SetObjectFlags2

State S_EDEN_DEATH
SpriteName = SPBM
SpriteFrame = FF_FULLBRIGHT|A
Var1 = 909
Var2 = 0
Duration = 1
Next = S_EDEN_SCREAM
Action = A_LinedefExecute

State S_EDEN_SCREAM
SpriteName = SPBM
SpriteFrame = FF_FULLBRIGHT|A
Var1 = 1
Var2 = MT_BOSSEXPLODE
Duration = 4
Next = S_EDEN_DREPEAT
Action = A_BossScream


State S_EDEN_DREPEAT
SpriteName = SPBM
SpriteFrame = FF_FULLBRIGHT|A
Var1 = 70
Var2 = S_EDEN_SCREAM
Duration = 0
Next = S_EDEN_FALL
Action = A_Repeat

State S_EDEN_FALL
SpriteName = SPBM
SpriteFrame = FF_FULLBRIGHT|A
Var1 = sfx_kc57
Var2 = 0
Duration = 1
Next = S_EDEN_FALL1
Action = A_PlaySound

State S_EDEN_FALL1
SpriteName = SPBM
SpriteFrame = A
Var1 = 0
Var2 = 0
Duration = 1
Next = S_XPLD1
Action = A_BossDeath

Object MT_EDEN_CORE
#$Name Eden Core
#$Sprite SPBMA1
#$Category Flesh Eden
MapThingNum = 3340
SpawnState = S_EDEN_CORE_SPAWN1
SpawnHealth = 4
SeeState = S_NULL
SeeSound = sfx_None
ReactionTime = 8
AttackSound = sfx_None
PainState = S_EDEN_PAIN
PainChance = MT_THOK
PainSound = sfx_dmpain
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_EDEN_DEATH
XDeathState = S_NULL
DeathSound = sfx_KC2E
Speed = 1
Radius = 48*FRACUNIT
Height = 96*FRACUNIT
DispOffset = 0
Mass = 0
Damage = 0
ActiveSound = sfx_None
Flags = MF_SPECIAL|MF_SHOOTABLE|MF_NOGRAVITY|MF_RUNSPAWNFUNC|MF_BOSS
RaiseState = S_NULL

#Sheild Spawner
Freeslot
S_THUNDERSHIELDSPAWNER
S_THUNDERSHIELD_DELAY
S_THUNDERSHIELD_SPAWNER_RESPAWN

#Generic item Idle state.
State S_THUNDERSHIELDSPAWNER
SpriteName = THNS
SpriteFrame = FF_ANIMATE|FF_FULLBRIGHT|A
Duration = -1
Next = S_THUNDERSHIELDSPAWNER
Action = none
Var1 = 11
Var2 = 4

#Removes an item if it was not picked up close to instantly.
State S_THUNDERSHIELD_DELAY
SpriteName = NULL
SpriteFrame = A
Var1 = 1
Var2 = 2
#Respawn Period
Duration = 105
Next = S_THUNDERSHIELD_SPAWNER_RESPAWN
Action = None

State S_THUNDERSHIELD_SPAWNER_RESPAWN
SpriteName = NULL
SpriteFrame = A
Var1 = 0
Var2 = 0
Duration = 1
Action = A_SpawnFreshCopy
Next = S_NULL

Object MT_THUNDERSHIELDSPAWNER
#$Name Thunder Shield Spawner
#$Sprite THNSK0
#$Category Flesh Eden
#You may need to change the thingnum to avoid conflicts.
MapThingNum = 3339
SpawnState = S_THUNDERSHIELDSPAWNER
SpawnHealth = 1000
SeeState = S_NULL
SeeSound = sfx_None
ReactionTime = 8
AttackSound = sfx_None
PainState = S_NULL
PainChance = MT_THOK
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_THUNDERSHIELD_DELAY
XDeathState = S_NULL
DeathSound = sfx_kc2e
Speed = 1
Radius = 32*FRACUNIT
Height = 32*FRACUNIT
DispOffset = 0
Mass = 0
Damage = 0
ActiveSound = sfx_None
Flags = MF_SLIDEME|MF_SPECIAL|MF_NOGRAVITY|MF_NOCLIPHEIGHT|MF_DONTENCOREMAP
RaiseState = MT_FLOATINGITEM
