Myslot

Myslot

2M Downloads

TWW Beta

Actual opened this issue ยท 1 comments

commented

Hi,

Receiving this after the TWW compat update pushed earlier today:

Myslot/Myslot.lua:458: attempt to call global 'GetNumSpellTabs' (a nil value)
[string "@Myslot/Myslot.lua"]:458: in function RecoverData'
[string "@Myslot/gui.lua"]:197: in function OnAccept'
[string "@Blizzard_StaticPopup/Mainline/StaticPopup.lua"]:1016: in function StaticPopup_OnClick'
[string "*StaticPopup.xml:23_OnClick"]:1: in function <[string "*StaticPopup.xml:23_OnClick"]:1>

Locals:
self = <table> {
 R_KEYS = <table> {
 }
 MOD_KEYS = <table> {
 }
 ast = <table> {
 }
 L = <table> {
 }
 KEYS = <table> {
 }
 BINDS = <table> {
 }
 R_BINDS = <table> {
 }
 crc32 = <table> {
 }
 settingcategory = <table> {
 }
 MainFrame = Frame {
 }
 base64 = <table> {
 }
 R_MOD_KEYS = <table> {
 }
 SLOT_TYPE = <table> {
 }
 luapb = <table> {
 }
}
msg = <table> {
 .data = <table> {
 }
}
opt = <table> {
 clearMacro = false
 ignoreAction = false
 clearAction = false
 ignoreMacro = true
 ignoreBinding = true
 clearBinding = false
}
spells = <table> {
}
(*temporary) = 1
(*temporary) = nil
(*temporary) = "attempt to call global 'GetNumSpellTabs' (a nil value)"
MySlot = <table> {
 R_KEYS = <table> {
 }
 MOD_KEYS = <table> {
 }
 ast = <table> {
 }
 L = <table> {
 }
 KEYS = <table> {
 }
 BINDS = <table> {
 }
 R_BINDS = <table> {
 }
 crc32 = <table> {
 }
 settingcategory = <table> {
 }
 MainFrame = Frame {
 }
 base64 = <table> {
 }
 R_MOD_KEYS = <table> {
 }
 SLOT_TYPE = <table> {
 }
 luapb = <table> {
 }
}
_MySlot = <table> {
 Bind = <table> {
 }
 Slot = <table> {
 }
 Macro = <table> {
 }
 Charactor = <table> {
 }
 Key = <table> {
 }
}
MYSLOT_NOTFOUND = "notfound"
MYSLOT_MACRO = 3
MYSLOT_SPELL = 1
MYSLOT_FLYOUT = 4
MYSLOT_COMPANION = 8
L = <table> {
 Are you SURE to import ? = "Are you SURE to import ?"
 Export = "Export"
 Ignore Import/Export Action = "Ignore Import/Export Action"
 Open Myslot = "Open Myslot"
 Name of exported text = "Name of exported text"
 Are you SURE to delete '%s'? = "Are you SURE to delete '%s'?"
 Close = "Close"
 Clear Macro before applying = "Clear Macro before applying"
 DANGEROUS = "DANGEROUS"
 Remove all Key Bindings = "Remove all Key Bindings"
 Ignore Import/Export Key Binding = "Ignore Import/Export Key Binding"
 Please type %s to confirm = "Please type %s to confirm"
 Ignore Import/Export Macro = "Ignore Import/Export Macro"
 Minimap Icon = "Minimap Icon"
 Import = "Import"
 Clear Binding before applying = "Clear Binding before applying"
 Feedback = "Feedback"
 Clear Action before applying = "Clear Action before applying"
 Force Import = "Force Import"
 Remove all Macros = "Remove all Macros"
 Remove everything in ActionBar = "Remove everything in ActionBar"
 Rename = "Rename"
 Myslot = "Myslot"
}
MYSLOT_ITEM = 2
MYSLOT_SUMMONPET = 7
MYSLOT_SUMMONMOUNT = 9
MYSLOT_EMPTY = 5
MYSLOT_EQUIPMENTSET = 6
MYSLOT_AUTHOR = "Boshi Lian <[email protected]>"
MYSLOT_MAX_ACTIONBAR = 180
MYSLOT_BIND_CUSTOM_FLAG = 65535`

This is due to the deprecation of GetNumSpellTabs, GetSpellTabInfo, GetSpellBookItemInfo and GetSpellInfo. Heres some example code used near the beginning of TWW Beta for compat that may assist:

if not GetSpellInfo then
    GetSpellInfo = function(spellID)
        if not spellID then
            return nil
        end

        local spellInfo = C_Spell.GetSpellInfo(spellID)
        if spellInfo then
            return spellInfo.name, nil, spellInfo.iconID, spellInfo.castTime, spellInfo.minRange, spellInfo.maxRange, spellInfo.spellID, spellInfo.originalIconID
        end
    end
end

if not GetNumSpellTabs then
    GetNumSpellTabs = C_SpellBook.GetNumSpellBookSkillLines
end

if not GetSpellTabInfo then
    GetSpellTabInfo = function(index)
        local skillLineInfo = C_SpellBook.GetSpellBookSkillLineInfo(index)
        if skillLineInfo then
            return	skillLineInfo.name,
                    skillLineInfo.iconID,
                    skillLineInfo.itemIndexOffset,
                    skillLineInfo.numSpellBookItems,
                    skillLineInfo.isGuild,
                    skillLineInfo.offSpecID,
                    skillLineInfo.shouldHide,
                    skillLineInfo.specID
        end
    end
end

if not GetSpellCooldown then
    GetSpellCooldown = function(spellID)
        local spellCooldownInfo = C_Spell.GetSpellCooldown(spellID)
        if spellCooldownInfo then
            return spellCooldownInfo.startTime, spellCooldownInfo.duration, spellCooldownInfo.isEnabled, spellCooldownInfo.modRate
        end
    end
end
commented

thanks, i do not have tww beta account, so cant test

let me draft fix for it