freeslot("SKINCOLOR_BARONBLOOD", "sfx_dbljmp")

skincolors[SKINCOLOR_BARONBLOOD] = {
    name = "Praetor",
    ramp = {104,105,106,107,108,109,110,111,119,119,119,119,119,119,119,119},
    invcolor = SKINCOLOR_RED,
    invshade = 9,
    chatcolor = V_GREENMAP,
    accessible = true
}

function A_InterpolatedTrail(actor, var1, var2)

	for i = 0, var1
		P_SpawnMobj(actor.x-((actor.momx/var1)*i),actor.y-((actor.momy/var1)*i), actor.z-((actor.momz/var1)*i), var2)
	end

end

addHook("ThinkFrame", do // makes it so you dont need to breathe
	for player in players.iterate
	if player.mo.valid
	and(player.mo.skin == "doomguy") then
	player.powers[pw_spacetime] = 233232233
		end
	end
end)

addHook("AbilitySpecial", function(player)
	if player.mo and player.mo.skin == "doomguy"
	and not (player.pflags & PF_THOKKED) // I dont even know what this does
	and not (player.exiting)
	and (P_IsObjectOnGround(player.mo) == false) // have ya hit the ground
	P_SetObjectMomZ(player.mo, 10*FRACUNIT)
	P_SpawnMobjFromMobj(player.mo, P_RandomRange(-10, 10)*FRACUNIT, -5*FRACUNIT, 0, MT_SPINDUST) //release the spindust!
	P_SpawnMobjFromMobj(player.mo, P_RandomRange(-10, 10)*FRACUNIT, -5*FRACUNIT, 0, MT_SPINDUST) //DOUBLE THE DUST!
	player.pflags = $|PF_JUMPED|PF_THOKKED
	S_StartSound(player.mo, sfx_dbljmp) // the noise
	player.mo.state = S_PLAY_JUMP
	end
end)

addHook("PlayerThink", function(player)
	if player.mo.skin == "doomguy"
	and not (player.exiting)
	if (player.cmd.buttons & BT_TOSSFLAG)
	player.height = 20*FRACUNIT
	player.pflags = $|PF_STARTDASH
	player.mo.state = S_PLAY_CRAWL
	elseif player.height == 20*FRACUNIT
	and ((player.mo.ceilingz - player.mo.floorz) > skins[player.mo.skin].height + FRACUNIT)
	player.height = 56*FRACUNIT
	player.mo.state = S_PLAY_STND
		end
	end
end)

if not(kirbyabilitytable) // thokin kirby stuff
	rawset(_G, "kirbyabilitytable", {})
end
kirbyabilitytable["doomguy"] = 4 //bomb

sfxinfo[sfx_dbljmp].caption = "Double Jump"
