addHook("MobjSpawn", function(mo) mo.koopping = 0 end, MT_PLAYER)

addHook("ThinkFrame", function()
	for player in players.iterate do
		if player.mo and player.mo.skin == "goomba"
		and not (player.powers[pw_carry] == CR_NIGHTSMODE)
		    and (player.cmd.buttons & BT_CUSTOM1)
			and not (player.powers[pw_carry] == PF_CANCARRY)
			and not P_PlayerInPain(player)
			and not (player.mo.state == S_PLAY_DEAD)
			and not (player.powers[pw_carry] == PF_TIMEOVER)
				and not (player.exiting)
				and (player.mo.koopping == 0)
                    P_SpawnMobj(player.mo.x, player.mo.y, player.mo.z, MT_SHELL)
			player.mo.koopping = 1
                        end
			if player.mo.koopping == 1
			and not (player.cmd.buttons & BT_CUSTOM1)
			player.mo.koopping = 0
		end
	end
end)