mirror of
https://github.com/brues-code/SuperCleveRoidMacros.git
synced 2026-09-16 03:38:00 +00:00
139 lines
4.9 KiB
Lua
139 lines
4.9 KiB
Lua
local _G = _G or getfenv(0)
|
|
local CleveRoids = _G.CleveRoids or {}
|
|
_G.CleveRoids = CleveRoids
|
|
|
|
CleveRoids.ready = false
|
|
|
|
CleveRoids.Hooks = CleveRoids.Hooks or {}
|
|
CleveRoids.Hooks.GameTooltip = {}
|
|
|
|
CleveRoids.Extensions = CleveRoids.Extensions or {}
|
|
CleveRoids.actionEventHandlers = {}
|
|
CleveRoids.mouseOverResolvers = {}
|
|
|
|
CleveRoids.mouseoverUnit = CleveRoids.mouseoverUnit or nil
|
|
CleveRoids.mouseOverUnit = nil
|
|
|
|
-- Environment flags
|
|
CleveRoids.hasSuperwow = SetAutoloot and true or false
|
|
CleveRoids.hasTurtle = (type(_G.TURTLE_WOW_VERSION) ~= "nil")
|
|
CleveRoids.supported = (CleveRoids.hasSuperwow or CleveRoids.hasTurtle)
|
|
|
|
CleveRoids.ParsedMsg = {}
|
|
CleveRoids.Items = {}
|
|
CleveRoids.Spells = {}
|
|
CleveRoids.PetSpells = {}
|
|
CleveRoids.Talents = {}
|
|
CleveRoids.Cooldowns = {}
|
|
CleveRoids.Macros = {}
|
|
CleveRoids.Actions = {}
|
|
CleveRoids.Sequences = {}
|
|
|
|
CleveRoids.lastUpdate = 0
|
|
CleveRoids.lastGetItem = nil
|
|
CleveRoids.currentSequence = nil
|
|
|
|
CleveRoids.bookTypes = {BOOKTYPE_SPELL, BOOKTYPE_PET}
|
|
CleveRoids.unknownTexture = "Interface\\Icons\\INV_Misc_QuestionMark"
|
|
|
|
CleveRoids.spell_tracking = {}
|
|
|
|
-- Holds information about the currently cast spell
|
|
CleveRoids.CurrentSpell = {
|
|
-- "channeled" or "cast"
|
|
type = "",
|
|
-- the name of the spell
|
|
spellName = "",
|
|
-- is the Attack ability enabled
|
|
autoAttack = false,
|
|
-- is the Auto Shot ability enabled
|
|
autoShot = false,
|
|
-- is the Shoot ability (wands) enabled
|
|
wand = false,
|
|
}
|
|
|
|
CleveRoids.dynamicCmds = {
|
|
["/cast"] = true,
|
|
["/castpet"] = true,
|
|
["/castsequence"] = true,
|
|
["/use"] = true,
|
|
["/equip"] = true,
|
|
["/equipmh"] = true,
|
|
["/equipoh"] = true,
|
|
}
|
|
|
|
CleveRoids.ignoreKeywords = {
|
|
action = true,
|
|
ignoretooltip = true,
|
|
cancelaura = true,
|
|
}
|
|
|
|
-- TODO: Localize?
|
|
CleveRoids.countedItemTypes = {
|
|
["Consumable"] = true,
|
|
["Reagent"] = true,
|
|
["Projectile"] = true,
|
|
["Trade Goods"] = true,
|
|
}
|
|
|
|
|
|
-- TODO: Localize?
|
|
CleveRoids.actionSlots = {}
|
|
CleveRoids.reactiveSlots = {}
|
|
CleveRoids.reactiveSpells = {
|
|
["Revenge"] = true,
|
|
["Overpower"] = true,
|
|
["Riposte"] = true,
|
|
["Surprise Attack"] = true,
|
|
["Lacerate"] = true,
|
|
["Baited Shot"] = true,
|
|
["Counterattack"] = true,
|
|
["Arcane Surge"] = true,
|
|
}
|
|
|
|
CleveRoids.spamConditions = {
|
|
[CleveRoids.Localized.Attack] = "checkchanneled",
|
|
[CleveRoids.Localized.AutoShot] = "checkchanneled",
|
|
[CleveRoids.Localized.Shoot] = "checkchanneled",
|
|
}
|
|
|
|
CleveRoids.auraTextures = {
|
|
[CleveRoids.Localized.Spells["Stealth"]] = "Interface\\Icons\\Ability_Stealth",
|
|
[CleveRoids.Localized.Spells["Prowl"]] = "Interface\\Icons\\Ability_Ambush",
|
|
[CleveRoids.Localized.Spells["Shadowform"]] = "Interface\\Icons\\Spell_Shadow_Shadowform",
|
|
["Seal of Wisdom"] = "Interface\\Icons\\Spell_Holy_RighteousnessAura",
|
|
["Seal of the Crusader"] = "Interface\\Icons\\Spell_Holy_HolySmite",
|
|
["Seal of Light"] = "Interface\\Icons\\Spell_Holy_HealingAura",
|
|
["Seal of the Justice"] = "Interface\\Icons\\Spell_Holy_SealOfWrath",
|
|
["Seal of Righteousness"] = "Interface\\Icons\\Ability_ThunderBolt",
|
|
["Seal of Command"] = "Interface\\Icons\\Ability_Warrior_InnerRage",
|
|
}
|
|
|
|
|
|
-- I need to make a 2h modifier
|
|
-- Maps easy to use weapon type names (e.g. Axes, Shields) to their inventory slot name and their localized tooltip name
|
|
CleveRoids.WeaponTypeNames = {
|
|
Daggers = { slot = "MainHandSlot", name = CleveRoids.Localized.Dagger },
|
|
Fists = { slot = "MainHandSlot", name = CleveRoids.Localized.FistWeapon },
|
|
Axes = { slot = "MainHandSlot", name = CleveRoids.Localized.Axe },
|
|
Swords = { slot = "MainHandSlot", name = CleveRoids.Localized.Sword },
|
|
Staves = { slot = "MainHandSlot", name = CleveRoids.Localized.Staff },
|
|
Maces = { slot = "MainHandSlot", name = CleveRoids.Localized.Mace },
|
|
Polearms = { slot = "MainHandSlot", name = CleveRoids.Localized.Polearm },
|
|
-- OH
|
|
Daggers2 = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.Dagger },
|
|
Fists2 = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.FistWeapon },
|
|
Axes2 = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.Axe },
|
|
Swords2 = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.Sword },
|
|
Maces2 = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.Mace },
|
|
Shields = { slot = "SecondaryHandSlot", name = CleveRoids.Localized.Shield },
|
|
-- ranged
|
|
Guns = { slot = "RangedSlot", name = CleveRoids.Localized.Gun },
|
|
Crossbows = { slot = "RangedSlot", name = CleveRoids.Localized.Crossbow },
|
|
Bows = { slot = "RangedSlot", name = CleveRoids.Localized.Bow },
|
|
Thrown = { slot = "RangedSlot", name = CleveRoids.Localized.Thrown },
|
|
Wands = { slot = "RangedSlot", name = CleveRoids.Localized.Wand },
|
|
}
|
|
|
|
_G["CleveRoids"] = CleveRoids
|