Freeslot
MT_SANDSUB_318
S_SANDSUB_1797
SPR_FIRE
S_SANDSUB_1798
S_SANDSUB_1799
S_SANDSUB_1800
S_SANDSUB_1801
S_SANDSUB_1802
MT_SANDSUB_326
S_SANDSUB_1906
S_SANDSUB_1878
S_SANDSUB_1895
S_SANDSUB_1890
S_SANDSUB_1896
S_SANDSUB_1935
SPR_EGGS
S_SANDSUB_1879
S_SANDSUB_1880
S_SANDSUB_1881
S_SANDSUB_1882
S_SANDSUB_1883
S_SANDSUB_1884
S_SANDSUB_1885
MT_SANDSUB_327
S_SANDSUB_1886
S_SANDSUB_1887
S_SANDSUB_1888
S_SANDSUB_1889
S_SANDSUB_1891
S_SANDSUB_1892
S_SANDSUB_1893
S_SANDSUB_1894
S_SANDSUB_1897
S_SANDSUB_1898
S_SANDSUB_1899
S_SANDSUB_1900
S_SANDSUB_1901
S_SANDSUB_1903
S_SANDSUB_1902
S_SANDSUB_1904
S_SANDSUB_1916
S_SANDSUB_1917
S_SANDSUB_1918
S_SANDSUB_1919
S_SANDSUB_1912
S_SANDSUB_1913
MT_SANDSUB_328
S_SANDSUB_1926
S_SANDSUB_1927
S_SANDSUB_1928
S_SANDSUB_1929
S_SANDSUB_1907
S_SANDSUB_1908
S_SANDSUB_1909
S_SANDSUB_1910
S_SANDSUB_1911
S_SANDSUB_1914
S_SANDSUB_1915
S_SANDSUB_1920
S_SANDSUB_1921
S_SANDSUB_1922
S_SANDSUB_1923
S_SANDSUB_1924
S_SANDSUB_1925
S_SANDSUB_1930
sfx_fre006
S_SANDSUB_1934
S_SANDSUB_1931
S_SANDSUB_1932
S_SANDSUB_1933


#FlameThrower Projectile: Original by SonicFreak94, Bugfixed by Prime 2.0
Object MT_SANDSUB_318
MapThingNum = -1
SpawnState = S_SANDSUB_1797
SpawnHealth = 1000
SeeState = S_NULL
SeeSound = sfx_fire
ReactionTime = 8
AttackSound = sfx_None
PainState = S_NULL
PainChance = S_NULL
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_NULL
DeathSound = sfx_None
XDeathState = S_NULL
Speed = 18
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Mass = 100
Damage = 1
ActiveSound = sfx_None
RaiseState = S_NULL
Flags = MF_NOBLOCKMAP|MF_NOGRAVITY|MF_MISSILE|MF_FIRE|MF_RUNSPAWNFUNC



#ThrownFlame 1
State S_SANDSUB_1797
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|1
Duration = 1
Next = S_SANDSUB_1798
Action A_MoveRelative
Var1 = 0
Var2 = 5

#ThrownFlame 2
State S_SANDSUB_1798
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|2
Duration = 1
Next = S_SANDSUB_1799
Action A_MoveRelative
Var1 = 0
Var2 = 7

#ThrownFlame 3
State S_SANDSUB_1799
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|3
Duration = 20
Next = S_SANDSUB_1800
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 4
State S_SANDSUB_1800
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|4
Duration = 20
Next = S_SANDSUB_1801
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 5
State S_SANDSUB_1801
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|5
Duration = 20
Next = S_SANDSUB_1802
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 6
State S_SANDSUB_1802
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|6
Duration = 10
Next = S_NULL
Action None
Var1 = 0
Var2 = 0


# The second boss, Egg Sand-Sub
Object MT_SANDSUB_326
MapThingNum = 2014
SpawnState = S_SANDSUB_1906
SpawnHealth = 8
SeeState = S_SANDSUB_1878
SeeSound = sfx_None
ReactionTime = 2
AttackSound = sfx_koopfr
PainState = S_SANDSUB_1895
PainSound = sfx_dmpain
MeleeState = S_SANDSUB_1890
MissileState = S_SANDSUB_1878
DeathState = S_SANDSUB_1896
DeathSound = sfx_cybdth
XDeathState = S_NULL
Speed = 6
Radius = 24*FRACUNIT
Height = 52*FRACUNIT
Mass = 0
Damage = 2
ActiveSound = sfx_telept
RaiseState = S_SANDSUB_1935
Flags = MF_SPECIAL|MF_BOSS|MF_NOGRAVITY



# Starting state for ESS
State S_SANDSUB_1906
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 1
Next = S_SANDSUB_1906
Action A_Boss1Chase

# Start of the sub coming out of the sand
State S_SANDSUB_1878
SpriteName = SPR_EGGS
SpriteFrame = 5
Duration = 2
Next = S_SANDSUB_1879
Action None

State S_SANDSUB_1879
SpriteName = SPR_EGGS
SpriteFrame = 4
Duration = 2
Next = S_SANDSUB_1880
Action None

State S_SANDSUB_1880
SpriteName = SPR_EGGS
SpriteFrame = 3
Duration = 2
Next = S_SANDSUB_1881
Action A_TurretStop
Var1 = 0

# This makes it hitable
State S_SANDSUB_1881
SpriteName = SPR_EGGS
SpriteFrame = 2
Duration = 2
Next = S_SANDSUB_1882
Action A_SetObjectFlags
Var1 = MF_SHOOTABLE
Var2 = 2

State S_SANDSUB_1882
SpriteName = SPR_EGGS
SpriteFrame = 1
Duration = 2
Next = S_SANDSUB_1883
Action None

# Eggman charging the flamethrower...
State S_SANDSUB_1883
SpriteName = SPR_EGGS
SpriteFrame = 0
Duration = 10
Next = S_SANDSUB_1884
Action none

# ...And fireing!
State S_SANDSUB_1884
SpriteName = SPR_EGGS
SpriteFrame = 0
Duration = 105
Next = S_SANDSUB_1885
Action A_TurretFire
Var1 = MT_SANDSUB_327
Var2 = 5120

State S_SANDSUB_1885
SpriteName = SPR_EGGS
SpriteFrame = 1
Duration = 105
Next = S_SANDSUB_1886
Action A_TurretStop
Var1 = 1

# Invincible again :<
State S_SANDSUB_1886
SpriteName = SPR_EGGS
SpriteFrame = 2
Duration = 2
Next = S_SANDSUB_1887
Action A_SetObjectFlags
Var1 = MF_SHOOTABLE
Var2 = 1

State S_SANDSUB_1887
SpriteName = SPR_EGGS
SpriteFrame = 3
Duration = 2
Next = S_SANDSUB_1888
Action A_TurretStop
Var1 = 1

State S_SANDSUB_1888
SpriteName = SPR_EGGS
SpriteFrame = 4
Duration = 2
Next = S_SANDSUB_1889
Action None

State S_SANDSUB_1889
SpriteName = SPR_EGGS
SpriteFrame = 5
Duration = 2
Next = S_SANDSUB_1906
Action None


# Fire attack 1A
State S_SANDSUB_1890
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 10
Next = S_SANDSUB_1891
Action A_FireShot
Var1 = MT_ROCKET
Var2 = -47


# Fire attack 2A
State S_SANDSUB_1891
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 0
Next = S_SANDSUB_1892
Action A_FireShot
Var1 = MT_ROCKET
Var2 = -47


# Wait for it...
State S_SANDSUB_1892
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 30
Next = S_SANDSUB_1893
Action None


# Fire attack 1B
State S_SANDSUB_1893
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 10
Next = S_SANDSUB_1894
Action A_FireShot
Var1 = MT_ROCKET
Var2 = -47


# Fire attack 2B
State S_SANDSUB_1894
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 0
Next = S_SANDSUB_1906
Action A_FireShot
Var1 = MT_ROCKET
Var2 = -47


State S_SANDSUB_1895
SpriteName = SPR_EGGS
SpriteFrame = 8
Duration = 24
Next = S_SANDSUB_1886
Action A_Pain

State S_SANDSUB_1896
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1897
Action A_Fall

State S_SANDSUB_1897
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1898
Action A_BossScream

State S_SANDSUB_1898
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1899
Action A_BossScream

State S_SANDSUB_1899
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1900
Action A_BossScream

State S_SANDSUB_1900
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1901
Action A_BossScream

State S_SANDSUB_1901
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1903
Action A_BossScream

State S_SANDSUB_1902
SpriteName = SPR_EGGS
SpriteFrame = 6
Duration = 12
Next = S_NULL
Action A_BossDeath

State S_SANDSUB_1903
SpriteName = SPR_EGGS
SpriteFrame = 7
Duration = 12
Next = S_SANDSUB_1904
Action A_BossScream

State S_SANDSUB_1904
SpriteName = SPR_EGGS
SpriteFrame = 1
Duration = 12
Next = S_SANDSUB_1916
Action A_BossScream

State S_SANDSUB_1916
SpriteName = SPR_EGGS
SpriteFrame = 2
Duration = 12
Next = S_SANDSUB_1917
Action A_BossScream

State S_SANDSUB_1917
SpriteName = SPR_EGGS
SpriteFrame = 3
Duration = 12
Next = S_SANDSUB_1918
Action A_BossScream

State S_SANDSUB_1918
SpriteName = SPR_EGGS
SpriteFrame = 4
Duration = 12
Next = S_SANDSUB_1919
Action A_BossScream

State S_SANDSUB_1919
SpriteName = SPR_EGGS
SpriteFrame = 5
Duration = 12
Next = S_SANDSUB_1902
Action A_BossScream




# Eggman readying the Fire Bombs for the pinch attack!
State S_SANDSUB_1935
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 35
Next = S_SANDSUB_1912
Action None
Var1 = 0
Var2 = 0

State S_SANDSUB_1912
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 15
Next = S_SANDSUB_1913
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

State S_SANDSUB_1913
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 15
Next = S_SANDSUB_1926
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

State S_SANDSUB_1926
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 15
Next = S_SANDSUB_1927
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

State S_SANDSUB_1927
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 15
Next = S_SANDSUB_1928
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

State S_SANDSUB_1928
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 15
Next = S_SANDSUB_1929
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

State S_SANDSUB_1929
SpriteName = SPR_EGGS
SpriteFrame = 9
Duration = 60
Next = S_SANDSUB_1907
Action A_LobShot
Var1 = MT_SANDSUB_328
Var2 = 60

# Start of the sub coming out of the sand for pinch attack
State S_SANDSUB_1907
SpriteName = SPR_EGGS
SpriteFrame = 5
Duration = 2
Next = S_SANDSUB_1908
Action None

State S_SANDSUB_1908
SpriteName = SPR_EGGS
SpriteFrame = 4
Duration = 2
Next = S_SANDSUB_1909
Action None

State S_SANDSUB_1909
SpriteName = SPR_EGGS
SpriteFrame = 3
Duration = 2
Next = S_SANDSUB_1910
Action A_TurretStop
Var1 = 0

# This makes it hitable
State S_SANDSUB_1910
SpriteName = SPR_EGGS
SpriteFrame = 2
Duration = 2
Next = S_SANDSUB_1911
Action A_SetObjectFlags
Var1 = MF_SHOOTABLE
Var2 = 2

State S_SANDSUB_1911
SpriteName = SPR_EGGS
SpriteFrame = 1
Duration = 3
Next = S_SANDSUB_1914
Action None


# ...And firing the flamethrower!
State S_SANDSUB_1914
SpriteName = SPR_EGGS
SpriteFrame = 0
Duration = 175
Next = S_SANDSUB_1915
Action A_TurretFire
Var1 = MT_SANDSUB_327
Var2 = 5120

State S_SANDSUB_1915
SpriteName = SPR_EGGS
SpriteFrame = 1
Duration = 85
Next = S_SANDSUB_1886
Action A_TurretStop
Var1 = 1




#Sand-Sub FlameThrower Projectile: Faster, longer, and better aim than normal flames.
Object MT_SANDSUB_327
MapThingNum = -1
SpawnState = S_SANDSUB_1920
SpawnHealth = 1000
SeeState = S_NULL
SeeSound = sfx_fire
ReactionTime = 4
AttackSound = sfx_None
PainState = S_NULL
PainChance = S_NULL
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_NULL
DeathSound = sfx_None
XDeathState = S_NULL
Speed = 12*FRACUNIT+63568
Radius = 16*FRACUNIT
Height = 24*FRACUNIT
Mass = 100
Damage = 1
ActiveSound = sfx_None
RaiseState = S_NULL
Flags = MF_NOGRAVITY|MF_FLOAT|MF_MISSILE|MF_FIRE



#ThrownFlame 1
State S_SANDSUB_1920
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|1
Duration = 1
Next = S_SANDSUB_1921
Action A_MoveRelative
Var1 = 0
Var2 = 5

#ThrownFlame 2
State S_SANDSUB_1921
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|2
Duration = 1
Next = S_SANDSUB_1922
Action A_MoveRelative
Var1 = 0
Var2 = 7

#ThrownFlame 3
State S_SANDSUB_1922
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|3
Duration = 30
Next = S_SANDSUB_1923
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 4
State S_SANDSUB_1923
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|4
Duration = 30
Next = S_SANDSUB_1924
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 5
State S_SANDSUB_1924
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|5
Duration = 30
Next = S_SANDSUB_1925
Action None
Var1 = 0
Var2 = 0

#ThrownFlame 6
State S_SANDSUB_1925
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|6
Duration = 10
Next = S_NULL
Action None
Var1 = 0
Var2 = 0




#FireBombs! RAINING FIRE AAAAAAAAAAAAAAAAAAAA!
Object MT_SANDSUB_328
MapThingNum = -1
SpawnState = S_SANDSUB_1930
SpawnHealth = 1
SeeState = S_NULL
SeeSound = sfx_fire
ReactionTime = 1
AttackSound = sfx_None
PainState = S_NULL
PainChance = S_NULL
PainSound = sfx_None
MeleeState = S_NULL
MissileState = S_NULL
DeathState = S_SANDSUB_1934
DeathSound = sfx_cybdth
XDeathState = S_NULL
Speed = 42576
Radius = 16*FRACUNIT
Height = 32*FRACUNIT
Mass = 100
Damage = 1
ActiveSound = sfx_None
RaiseState = S_NULL
Flags = MF_NOBLOCKMAP|MF_MISSILE



#FireBomb1
State S_SANDSUB_1930
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|1
Duration = 2
Next = S_SANDSUB_1931
Action None
Var1 = 0
Var2 = 0

#FireBomb2
State S_SANDSUB_1931
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|2
Duration = 2
Next = S_SANDSUB_1932
Action None
Var1 = 0
Var2 = 0


#FireBomb3
State S_SANDSUB_1932
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|3
Duration = 2
Next = S_SANDSUB_1933
Action None
Var1 = 0
Var2 = 0

#FireBomb4
State S_SANDSUB_1933
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|4
Duration = 2
Next = S_SANDSUB_1930
Action None
Var1 = 0
Var2 = 0


#FireBomb4
State S_SANDSUB_1934
SpriteName = SPR_FIRE
SpriteFrame = TR_TRANS40|FF_FULLBRIGHT|4
Duration = 2
Next = S_NULL
Action A_OldRingExplode
Var1 = MT_SANDSUB_327
Var2 = 0