freeslot(
	"MT_FROSTBURN_PUFF",
	"MT_FROSTBURN_ICE",
	"S_FROSTBURN_ICE",
	"SPR_FRZE",
	"MT_FROSTBURN",
	"SPR_ICBK",			//Ice block sprite
	"MT_FROSTBURNT",	//Actual ice (invisible)
	"S_FROSTBURNT",
//	"S_FROSTBURNT1",	//Overlay ice
	"S_FROSTBURNTB",	//Overlay white fog in the ice
	"MT_FROSTDEBRIS",	//ice debris
	"MT_ICEBLOCKSIDE"
)
for i=1,4
	freeslot("S_FROSTDEBRIS"..i)
end
for i=1,5
	freeslot("S_FROSTBURNT"..i)
end



mobjinfo[MT_FROSTBURN_PUFF] = {
	doomednum = -1,
	spawnhealth = 3,
	spawnstate = S_XPLD1,
	seesound = sfx_s3kc8s,
	seestate = S_NULL,
	speed = 30*FRACUNIT,
	radius = 8*FRACUNIT,
	height = 11*FRACUNIT,
	deathstate = S_NULL,
	deathsound = sfx_spkdth,
	flags = MF_SPECIAL|MF_MISSILE
}

mobjinfo[MT_FROSTBURN_ICE] = {
	doomednum = -1,
	spawnhealth = 3,
	spawnstate = S_FROSTBURN_ICE,
	seesound = sfx_s3kc8s,
	seestate = S_NULL,
	speed = 30*FRACUNIT,
	radius = 8*FRACUNIT,
	height = 11*FRACUNIT,
	deathstate = S_NULL,
	deathsound = sfx_spkdth,
	flags = MF_SPECIAL
}

states[S_FROSTBURN_ICE] = {
	sprite = SPR_FHZI,
	frame = B|TR_TRANS30,
	tics = 105,
	nextstate = S_NULL
}

// -----------------------------------

mobjinfo[MT_FROSTBURNT] = {
	spawnstate = S_FROSTBURNT,
	deathstate = S_NULL,
	spawnhealth = 1000,
	speed = FRACUNIT,
	radius = 36*FRACUNIT,
	height = 72*FRACUNIT,
	//activesound = sfx_tink,		//Sound when hits wall (MFE_JUSTHITFLOOR for floor)
	flags = MF_PUSHABLE|MF_SLIDEME|MF_SOLID
}

states[S_FROSTBURNT] = {
	sprite = SPR_NULL,
	frame = A,
	tics = 1,
	nextstate = S_FROSTBURNT
}

/*
states[S_FROSTBURNT1] = {
	sprite = SPR_ICBK,
	frame = A,
	tics = 1,
	nextstate = S_FROSTBURNT1
}*/

states[S_FROSTBURNT1] = {SPR_ICBK, A|TR_TRANS20|FF_PAPERSPRITE, 1, nil, 1, 0, S_FROSTBURNT1}
states[S_FROSTBURNT2] = {SPR_ICBK, B|TR_TRANS20|FF_PAPERSPRITE, 1, nil, 1, 0, S_FROSTBURNT2}
states[S_FROSTBURNT3] = {SPR_ICBK, C|TR_TRANS20|FF_PAPERSPRITE, 1, nil, 1, 0, S_FROSTBURNT3}
states[S_FROSTBURNT4] = {SPR_ICBK, D|TR_TRANS20|FF_PAPERSPRITE, 1, nil, 1, 0, S_FROSTBURNT4}
states[S_FROSTBURNT5] = {SPR_ICBK, E|TR_TRANS20|FF_PAPERSPRITE, 1, nil, 1, 0, S_FROSTBURNT5}

states[S_FROSTBURNTB] = {
	sprite = SPR_ICBK,
	frame = F|FF_TRANS80,
	tics = 1,
	nextstate = S_FROSTBURNTB
}

//----- Debris from broken ice
mobjinfo[MT_FROSTDEBRIS] = {
	spawnstate = S_FROSTDEBRIS1,
	spawnhealth = 1000,
	speed = FRACUNIT,
	radius = 8*FRACUNIT,
	height = 11*FRACUNIT,
	flags = MF_BOUNCE|MF_NOCLIP|MF_NOCLIPHEIGHT
}

states[S_FROSTDEBRIS1] = {
	sprite = SPR_ROII,
	frame = A,
	tics = 5,
	nextstate = S_FROSTDEBRIS2,
}
states[S_FROSTDEBRIS2] = {
	sprite = SPR_ROII,
	frame = B,
	tics = 5,
	nextstate = S_FROSTDEBRIS3,
}

states[S_FROSTDEBRIS3] = {
	sprite = SPR_ROII,
	frame = C,
	tics = 5,
	nextstate = S_FROSTDEBRIS4,
}

states[S_FROSTDEBRIS4] = {
	sprite = SPR_ROII,
	frame = D,
	tics = 5,
	nextstate = S_FROSTDEBRIS1,
}

mobjinfo[MT_ICEBLOCKSIDE] = {
	spawnstate = S_FROSTBURNT1,
	deathstate = S_NULL,
	spawnhealth = 0,
	speed = FRACUNIT,
	radius = 0*FRACUNIT,
	height = 0*FRACUNIT,
	flags = MF_NOGRAVITY
}

