freeslot("sfx_djump")
sfxinfo[sfx_djump].caption = "Double Jump"

addHook("AbilitySpecial", function()
     for player in players.iterate do
       if player.mo.skin ~= "betsonic" then
	      continue
	   end
	   local jumpforce = 11*FRACUNIT
	   if (player.mo.eflags&MFE_UNDERWATER)
	       jumpforce = $/2
	   end
	   if player.powers[pw_super]
	      jumpforce = 15*FRACUNIT
	   end
	   if player.powers[pw_super] and player.hyper
	      jumpforce = 20*FRACUNIT
	   end
	   if not (player.pflags&PF_THOKKED)
	    P_SetObjectMomZ(player.mo, jumpforce)
		S_StartSound(player.mo, sfx_djump)
		player.mo.state = S_PLAY_SPRING
		player.pflags = $ & ~PF_JUMPED
		player.pflags = $ & ~PF_SPINNING
		player.pflags = $1|PF_THOKKED
	   end
    end
end)