
addHook("PlayerThink", function(player)
	if player.mo and player.mo.skin == "sonic"
		if (player.cmd.buttons & BT_ATTACK)
          if player.mo.bahaha == false
            and player.powers [pw_super]
		    and player.rings >= 300
			and G_PlatformGametype()
			and not (player.weapondelay & 50)
            player.mo.state = S_PLAY_SUPER_TRANS1
			P_FlashPal(player, PAL_NUKE, 10)
			player.weapondelay = 50
            player.mo.bahaha = true
	end
end
end
end)



addHook("PlayerThink", function(player)
	if player.mo and player.mo.skin == "sonic"
	and player.rings <= 0 
	player.mo.bahaha = false 
    player.normalspeed = 36*FRACUNIT 
	end
end)

addHook("PlayerThink", function(player)  
    if player.mo.bahaha == true
    if leveltime % TICRATE == 0 then 
		player.rings = $ - 2
end
end
end)

addHook("ThinkFrame", do
	for player in players.iterate
if player.mo and player.mo.skin == "sonic"
if player.mo.bahaha == true
player.charflags = $1|SF_RUNONWATER
player.charflags = $1|SF_CANBUSTWALLS
else
player.charflags = $1 & ~SF_RUNONWATER
player.charflags = $1 & ~SF_CANBUSTWALLS
end
end
end
end)


addHook("PlayerThink", function(player)
	if player.mo and player.mo.skin == "sonic" 
	if player.mo.bahaha == true 
    player.normalspeed = 52*FRACUNIT 
   local trail = P_SpawnGhostMobj(player.mo)
	trail.color = player.mo.color
	//trail.drawangle = player.mo.angle
	trail.colorized = true
    trail.tics = 3
    trail.blendmode = AST_ADD
	end -- 
end
end)
