From 54bd7a319f25cbb44d9238386a6bfd182bad7b01 Mon Sep 17 00:00:00 2001 From: totalllyswede Date: Sun, 23 Nov 2025 00:01:38 -0800 Subject: [PATCH] Add files via upload --- MiniMage_TWOW.lua | 156 ++++++++++++++++++++++++++++++++++++++++------ MiniMage_TWOW.toc | 2 +- MiniMage_TWOW.xml | 4 +- localization.lua | 2 +- 4 files changed, 142 insertions(+), 22 deletions(-) diff --git a/MiniMage_TWOW.lua b/MiniMage_TWOW.lua index e75fa26..9ffc79b 100644 --- a/MiniMage_TWOW.lua +++ b/MiniMage_TWOW.lua @@ -98,6 +98,18 @@ function MM_Button_UpdatePosition() ); end +-- +-- ADDED: REQUIRED LEVEL CHECKS +-- + +function MM_CanCastTeleport() + return UnitLevel("player") >= 20; +end + +function MM_CanCastPortal() + return UnitLevel("player") >= 40; +end + -- -- Drop down menu functions -- @@ -135,24 +147,48 @@ function MM_DropDown_ForTheHorde() info.notCheckable = 1; UIDropDownMenu_AddButton(info); + -- ORG PORTAL info = { }; info.text = MINIMAGE_LABEL_ORG; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_ORG); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_ORG); + end + end; UIDropDownMenu_AddButton(info); + -- STONARD PORTAL info = { }; info.text = MINIMAGE_LABEL_STONARD; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_STONARD); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_STONARD); + end + end; UIDropDownMenu_AddButton(info); + -- TB PORTAL info = { }; info.text = MINIMAGE_LABEL_TB; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_TB); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_TB); + end + end; UIDropDownMenu_AddButton(info); + -- UC PORTAL info = { }; info.text = MINIMAGE_LABEL_UC; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_UC); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_UC); + end + end; UIDropDownMenu_AddButton(info); end @@ -163,24 +199,48 @@ function MM_DropDown_ForTheHorde() info.notCheckable = 1; UIDropDownMenu_AddButton(info); + -- ORG TELEPORT info = { }; info.text = MINIMAGE_LABEL_ORG; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_ORG); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_ORG); + end + end; UIDropDownMenu_AddButton(info); + -- STONARD TELEPORT info = { }; info.text = MINIMAGE_LABEL_STONARD; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_STONARD); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_STONARD); + end + end; UIDropDownMenu_AddButton(info); + -- TB TELEPORT info = { }; info.text = MINIMAGE_LABEL_TB; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_TB); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_TB); + end + end; UIDropDownMenu_AddButton(info); + -- UC TELEPORT info = { }; info.text = MINIMAGE_LABEL_UC; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_UC); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_UC); + end + end; UIDropDownMenu_AddButton(info); end @@ -195,29 +255,59 @@ function MM_DropDown_ForTheAlliance() info.notCheckable = 1; UIDropDownMenu_AddButton(info); + -- ALAH PORTAL info = { }; info.text = MINIMAGE_LABEL_ALAH; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_ALAH); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_ALAH); + end + end; UIDropDownMenu_AddButton(info); + -- DARNASSUS PORTAL info = { }; info.text = MINIMAGE_LABEL_DARNASSUS; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_DARNASSUS); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_DARNASSUS); + end + end; UIDropDownMenu_AddButton(info); + -- IF PORTAL info = { }; info.text = MINIMAGE_LABEL_IF; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_IF); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_IF); + end + end; UIDropDownMenu_AddButton(info); + -- SW PORTAL info = { }; info.text = MINIMAGE_LABEL_SW; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_SW); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_SW); + end + end; UIDropDownMenu_AddButton(info); + -- THERAMORE PORTAL info = { }; info.text = MINIMAGE_LABEL_THERAMORE; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_THERAMORE); end; + info.disabled = not MM_CanCastPortal(); + info.func = function(msg) + if MM_CanCastPortal() then + CastSpellByName(MINIMAGE_LABEL_PORTAL..appender..MINIMAGE_LABEL_THERAMORE); + end + end; UIDropDownMenu_AddButton(info); end @@ -228,29 +318,59 @@ function MM_DropDown_ForTheAlliance() info.notCheckable = 1; UIDropDownMenu_AddButton(info); + -- ALAH TELEPORT info = { }; info.text = MINIMAGE_LABEL_ALAH; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_ALAH); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_ALAH); + end + end; UIDropDownMenu_AddButton(info); + -- DARN TELEPORT info = { }; info.text = MINIMAGE_LABEL_DARNASSUS; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_DARNASSUS); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_DARNASSUS); + end + end; UIDropDownMenu_AddButton(info); + -- IF TELEPORT info = { }; info.text = MINIMAGE_LABEL_IF; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_IF); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_IF); + end + end; UIDropDownMenu_AddButton(info); + -- SW TELEPORT info = { }; info.text = MINIMAGE_LABEL_SW; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_SW); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_SW); + end + end; UIDropDownMenu_AddButton(info); + -- THERAMORE TELEPORT info = { }; info.text = MINIMAGE_LABEL_THERAMORE; - info.func = function(msg) CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_THERAMORE); end; + info.disabled = not MM_CanCastTeleport(); + info.func = function(msg) + if MM_CanCastTeleport() then + CastSpellByName(MINIMAGE_LABEL_TELEPORT..appender..MINIMAGE_LABEL_THERAMORE); + end + end; UIDropDownMenu_AddButton(info); end diff --git a/MiniMage_TWOW.toc b/MiniMage_TWOW.toc index 2cbab6e..85cc58c 100644 --- a/MiniMage_TWOW.toc +++ b/MiniMage_TWOW.toc @@ -1,6 +1,6 @@ ## Interface: 11200 ## Title: MiniMage_TWOW -## Version: 1.0 +## Version: 1.1 ## Notes: Forked version of MiniMage 1.2b. No original GitHub Repo found, only found in Wow1.12.1_Addons_Collection ## SavedVariables: MiniMageOptions localization.lua diff --git a/MiniMage_TWOW.xml b/MiniMage_TWOW.xml index 272d400..3e053f2 100644 --- a/MiniMage_TWOW.xml +++ b/MiniMage_TWOW.xml @@ -1,6 +1,6 @@ -