//Originally By Spectra i just yoinked it cus i know fuckall bout charabilities
addHook("AbilitySpecial", function(player)
	if player.mo.skin ~= "beggman" then return end
	if player.pflags & PF_THOKKED then return end
	player.beup = player.beup or 0
	
	if not player.powers[pw_super] then
	player.beup = 13 * FRACUNIT
	else
	player.beup = 20 * FRACUNIT
end

	local actionspd = player.actionspd

	player.pflags = $ & ~PF_JUMPED
	P_DoJump(player, false)
	
	P_InstaThrust(player.mo, player.mo.angle, FixedMul(4 * FRACUNIT, player.mo.scale))
	P_SpawnThokMobj(player)
	P_SetObjectMomZ(player.mo, player.beup) 

	if (player.mo.info.attacksound and not player.spectator) then S_StartSound(player.mo, sfx_bebo) end
	player.pflags = $|PF_THOKKED
	player.mo.state = S_PLAY_SPRING
	return true
end)