I believe I have talked about LitePanels in the past, I have just finished off my block to replace Innervator, an addon I used to warn me when to use my Innervate.
The issue I had with it was it was set based on a number and it doesnt scale as you gear up etc etc
Instead I would like to use a percent of mana to be warned. Also I would like it to prompt me when to pop mana pot when that’s available too

This block goes hand-in-hand with my Smartervate addon (soon to be updated with some cool new features). The key block data is here for your own use;
-- mana management{name = "manamgnt", parent = "BoxL",anchor_to="TOP", anchor_from="RIGHT",y_off = 200,text={string=function()-- If toon is dead return nilif(UnitIsDeadOrGhost("player") == 1) then return nil end-- If Smartervate is being usedif(IsAddOnLoaded("Smartervate")) then-- Get Mana Threshold from therethreshold = Smartervate:GetManaThreshold()else-- If not 50%threshold = 0.5end-- Optionsgcd = 1.109 -- this may need to be decreased based on GCD changespot = "Crazy Alchemist's Potion"sounddelay = 15ourUnitClass, ourUnitEngClass = UnitClass("player");if (ourUnitEngClass == 'DRUID') thencurrent_time = time{year=date("%Y"), month=date("%m"), day=date("%d"), hour=date("%H"), min=date("%M"), sec=date("%S")}if(SoundLocked ~= nil and current_time > SoundLocked) thenSoundLocked = nilendif(SmartervateDelay ~= nil and current_time > SmartervateDelay) thenSmartervateDelay = nilend-- Get our Max Mana Poollocal maxmana = UnitManaMax("player")-- Get our current manalocal currentmana = UnitMana("player")-- Get our Percentagelocal manaperc = ( currentmana / maxmana )-- Get our Mana Threshholdlocal manathreshhold = tonumber(threshold)if ( manaperc < manathreshhold) thenif (SoundLocked == nil and UnitAffectingCombat("player") == 1) thenPlaySound("GAMEHIGHLIGHTFRIENDLYUNIT")PlaySoundFile("Sound\\Spells\\PVPFlagTaken.wav")SoundLocked = current_time + tonumber(sounddelay) -- only play sound every 20 secsend-- Are we in combat?if (UnitAffectingCombat("player") == 1) then-- Yes! Check Our Innervatelocal start, duration = GetSpellCooldown("Innervate")if ( duration <= gcd ) then-- Innervate is available, notice to use it!return "|cffffd700Use Your Innervate|r"else-- OMG Innervate is used! Check Our Potpot_startTime, pot_duration, pot_enable = GetItemCooldown(pot)if ( pot_startTime == 0 and pot_duration == 0 ) then-- Pot is available, Notice to use it!return "|cffffd700Use Your " .. pot .. "|r"else-- No pot either? Notice to trigger Smartervate!return "|cffffd700Use Smartervate!! /smv|r"endendelse-- Out of combat and below threshhold? have a drinkreturn "|cffffd700You're low on mana, have a drinky!|r"endelsereturn nilendelsereturn nilendend, update = 1,size=20, shadow=2, font = "Interface\\AddOns\\ArkInventory\\Fonts\\Emblem.ttf",}}
Basically the block will put a message and play a sound (when not on CD) and do apply the following logic;
- Are we Dead? If Yes Stop, If No Continue
- Is Smartervate Loaded? If Yes Threshold set to addons, if No use 50%
- Are we a Druid? If No Stop, If Yes Continue
- Is Mana less than Threshold? If No Stop, If Yes Play Sound (has internal cooldown) & Continue
- Are we in Combat? If No Message to Drink, If Yes Continue
- Is Innervate Available? If Yes Message to Use, If No Continue
- Is Pot Available? If Yes Message to Use, If No Message to use Smartervate
Hope this helps

No blogging for over 2 weeks makes for a bad blogger.
Unless this is a fiendish plan and you have created a mirror blog somewhere else where I can't comment!
you're onto me cyx