--super emmys
--idfk know what i'm doing lmao

rawset(_G, "superemeralds", 0)

addHook("ThinkFrame", do
    for player in players.iterate
        local pmo = player.mo
		--CONS_Printf("superemeralds " + superemeralds)
    	--If you have all 7 Super Emeralds... You have now unlocked your Hyper Form!
    	if superemeralds == 7
         	if player.hyper.isunlocked == false
    	        player.hyper.isunlocked = true
			end
            if not (player.charflags & SF_SUPER) then
                player.charflags = $ | SF_SUPER
    		end
		end
    	 --If you don't have all 7 Super Emeralds, fuck off, you aren't going hyper.
		if superemeralds < 7
            if player.hyper.isunlocked == true
				player.hyper.isunlocked = false
	      	end
			if player.hyper.transformed == true
			    player.hyper.transformed = false
			end
			
			if superemeralds > 0
        	    if (player.charflags & SF_SUPER) then
                    player.charflags = $ & ~ SF_SUPER
				end
    		end
            if not (skins[pmo.skin].flags & SF_SUPER)
        	    if (player.charflags & SF_SUPER) then
                    player.charflags = $ & ~ SF_SUPER
				end
			end
		end
		if superemeralds == 0
		    if (skins[pmo.skin].flags & SF_SUPER)
                if not (player.charflags & SF_SUPER) then
                    player.charflags = $ | SF_SUPER
				end
			end
		end
    	if not All7Emeralds(emeralds)
		    if superemeralds > 0
			    superemeralds = 0
			end
		end
	end
end)


addHook("TouchSpecial", function(token, p)
	if p.player and p.valid and p.health and token.valid
		if All7Emeralds(emeralds)
    		if superemeralds == 7
          		p.player.rings = $ + 50
			end
		end
	end
end, MT_TOKEN)

addHook("NetVars", function(net)
    superemeralds = net($)
end)

local function Display(v)
    if not netgame
        --green super emerald
        if superemeralds > 0 then
            local superemerald1 = v.getSpritePatch(SPR_SEMG, A)
            v.draw(160, 52, superemerald1)
     	end
    	--magenta super emerald
        if superemeralds > 1 then
            local superemerald2 = v.getSpritePatch(SPR_SEMG, B)
            v.draw(184, 68, superemerald2)
    	end
     	--sapphire super emerald
        if superemeralds > 2 then
            local superemerald3 = v.getSpritePatch(SPR_SEMG, C)
            v.draw(184, 100, superemerald3) 
    	end
    	--sky super emerald
        if superemeralds > 3 then
            local superemerald4 = v.getSpritePatch(SPR_SEMG, D)
            v.draw(160, 116, superemerald4)
     	end
    	--yellow(?) super emerald
        if superemeralds > 4 then
            local superemerald5 = v.getSpritePatch(SPR_SEMG, E)
            v.draw(136, 100, superemerald5)
    	end
    	--red super emerald
        if superemeralds > 5 then
            local superemerald6 = v.getSpritePatch(SPR_SEMG, F)
            v.draw(136, 68, superemerald6)
    	end
    	--gray super emerald
        if superemeralds > 6 then
            local superemerald7 = v.getSpritePatch(SPR_SEMG, G)
            v.draw(160, 84, superemerald7)
	    end
    	//CURSED 8TH SUPER EMERALD
        /*if superemeralds >= 8 then
            local superemerald8 = v.getSpritePatch(SPR_SEMG, H)
            v.draw(160, 130, superemerald8)
	    end*/
	else --//tiny emeralds
	     --green super emerald
        if superemeralds > 0 then
            local tsuperemerald1 = v.getSpritePatch(SPR_TSEM, A)
            v.draw(18, 9, tsuperemerald1)
     	end
    	--magenta super emerald
        if superemeralds > 1 then
            local tsuperemerald2 = v.getSpritePatch(SPR_TSEM, B)
            v.draw(28, 9, tsuperemerald2)
    	end
     	--sapphire super emerald
        if superemeralds > 2 then
            local tsuperemerald3 = v.getSpritePatch(SPR_TSEM, C)
            v.draw(38, 9, tsuperemerald3) 
    	end
    	--sky super emerald
        if superemeralds > 3 then
            local tsuperemerald4 = v.getSpritePatch(SPR_TSEM, D)
            v.draw(48, 9, tsuperemerald4)
     	end
    	--yellow(?) super emerald
        if superemeralds > 4 then
            local tsuperemerald5 = v.getSpritePatch(SPR_TSEM, E)
            v.draw(58, 9, tsuperemerald5)
    	end
    	--red super emerald
        if superemeralds > 5 then
            local tsuperemerald6 = v.getSpritePatch(SPR_TSEM, F)
            v.draw(68, 9, tsuperemerald6)
    	end
    	--gray super emerald
        if superemeralds > 6 then
            local tsuperemerald7 = v.getSpritePatch(SPR_TSEM, G)
            v.draw(78, 9, tsuperemerald7)
	    end
	end
end
	
hud.add(Display, "scores")