Small Totembars addon with readded timers

Looks like a flexible totembar

Shift-Click will now throw a Rank 1 totem.

Short introduction into the Totemsets feature:

The Add dialog will ask you for a name and while this dialog is open you can swap buttons to add those swappings to your set.

You can find the YataTotemStomper macro, which is /castsequence reset=combat/shift <Your Main Buttons> in your characters local macros section.

Support for Hiding/Showing of Popup Buttons in Sets added:

You have two Buttons Hide/Show now (Red/Green), where you can drag&drop your Totem on and this will either hide/show this button for this set.
This will only work in order, you can't create holes in the popup menu.


Character based profiles are default now:
To merge your old profile, use Profiles->Copy from->"Default"


Below you'll find a preliminary plugin for cycircled.

copy that to cycircled\plugins\Yata.lua

local addonName = "Yata"

cyCircled_Yata = cyCircled:NewModule(addonName)

function cyCircled_Yata:AddonLoaded(addon)
	self.db = cyCircled:AcquireDBNamespace(addonName);
	cyCircled:RegisterDefaults(addonName, "profile", {
		["Main"] = true,
		["Popup"] = true,
	})
	self:SetupElements();
end

function cyCircled_Yata:GetElements()
	return {
		["Main"] = true,
		["Popup"] = true,
	}
end

function cyCircled_Yata:SetupElements()
	self.elements = {
		["Main"] =  {
			args = {
				ct = false,
			},
			elements = {},
		},
		["Popup"] = { 
			args = {
				ct = false,
			},
			elements = {},
		},
	}
	if(self.db) then 
		local elements = {"Earth","Fire","Water","Air"};
		for i=1,4 do
			local count = Yata:ReturnCountByElement(elements[i]);
			local order = Yata:ReturnOrderByElement(elements[i]);
			if(count > 0) then
				table.insert(self.elements["Main"].elements, string.format("YATABUTTON%i",order));
				for j=1, count-1 do
					table.insert(self.elements["Popup"].elements, string.format("YATABUTTON%i",order*10+j));
				end
			end
		end
	end
end