freeslot(
"SPR_ENST", 
"SPR_STLT",
"S_STAGEGATE_ACTIVE",
"S_STAGEGATENIGHT_ACTIVE",
"S_STAGEGATECUSTOM_ACTIVE",
"S_STAGEGATE_DEACTIVE",
"S_STAGEGATELIGHT",
"MT_STAGEGATE",
"MT_STAGEGATELIGHT"
)

freeslot("sfx_unsele", "sfx_uncncl", "sfx_unslct")

sfxinfo[sfx_unsele].caption = "Accept"
sfxinfo[sfx_uncncl].caption = "Cancel"
sfxinfo[sfx_unslct].caption = "Selecting Stage..."

states[S_STAGEGATE_ACTIVE] = {
sprite = SPR_ENST,
frame = A,
tics = -1,
action = None,
var1 = 0,
var2 = 0,
nextstate = S_STAGEGATE_ACTIVE,
}

states[S_STAGEGATENIGHT_ACTIVE] = {
sprite = SPR_ENST,
frame = C,
tics = -1,
action = None,
var1 = 0,
var2 = 0,
nextstate = S_STAGEGATENIGHT_ACTIVE,
}

states[S_STAGEGATECUSTOM_ACTIVE] = {
sprite = SPR_ENST,
frame = E,
tics = -1,
action = None,
var1 = 0,
var2 = 0,
nextstate = S_STAGEGATECUSTOM_ACTIVE,
}

states[S_STAGEGATE_DEACTIVE] = {
sprite = SPR_ENST,
frame = B,
tics = -1,
action = None,
var1 = 0,
var2 = 0,
nextstate = S_STAGEGATE_DEACTIVE,
}

states[S_STAGEGATELIGHT] = {
sprite = SPR_STLT,
frame = C|TR_TRANS20,
tics = -1,
action = None,
var1 = 0,
var2 = 0,
nextstate = S_STAGEGATELIGHT,
}

mobjinfo[MT_STAGEGATE] = {
//$Name Stage Gate
//$Sprite ENSTA0
//$Category Sonic Unleashed
//$Arg0 Warp to Map
//$Arg1 Type
//$Arg2 Color Num
//$stringarg0 Color
doomednum = 4002,
spawnstate = S_STAGEGATE_ACTIVE,
spawnhealth = 1,
seestate = S_STAGEGATE_ACTIVE,
seesound = sfx_None,
speed = 1,
radius = 27*FRACUNIT,
height = 90*FRACUNIT,
dispoffset = 0,
activesound = sfx_None,
flags = MF_SPECIAL,
}

mobjinfo[MT_STAGEGATELIGHT] = {
spawnstate = S_STAGEGATELIGHT,
spawnhealth = 1,
seestate = S_STAGEGATELIGHT,
seesound = sfx_None,
speed = 1,
radius = 27*FRACUNIT,
height = 90*FRACUNIT,
dispoffset = 0,
activesound = sfx_None,
}