이 사이트는 자바스크립트를 사용합니다.
브라우저에서 자바스크립트를 활성화 해주십시오.
라이브
PTR
10.2.7
PTR
10.2.6
베타
IHML dead?
답글 달기
보드 인덱스로 돌아가기
Wanderingfox
의 게시글
So I'm just coming back to the game, and one of my favorite quality of life addons was I Have Macro LOL. It is apparently dead since 4.3... Does anyone know of a working fix for it, or a replacement addon?
pelf
의 게시글
It doesn't look like its functionality would be that hard to code ... do you know what error it's raising?
Myrroddin
의 게시글
Have you checked if it is still working? Character screen, AddOns button, new window, top right, turn load out of date addons on.
You should do this every patch Blizzard releases, as they turn it off every patch.
If an addon still doesn't work, then you know it is indeed broken.
Wanderingfox
의 게시글
It looks like the new talent system is messing with it... I'm not familiar enough with the APIs these days to guess at the change required.
Line 840:
local activetalent = GetActiveTalentGroup(false, false)
Date: 2012-11-05 16:11:01
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\IHML\IHML.lua line 840:
attempt to call upvalue 'GetActiveTalentGroup' (a nil value)
Debug:
(tail call): ?
IHML\IHML.lua:840: SwapMacro()
IHML\IHML.lua:610:
IHML\IHML.lua:600
(tail call): ?
: ?
"]:9:
"]:5
(tail call): ?
...ce\AddOns\Baggins\libs\AceAddon-3.0\AceAddon-3.0.lua:543: EnableAddon()
...ce\AddOns\Baggins\libs\AceAddon-3.0\AceAddon-3.0.lua:636:
...ce\AddOns\Baggins\libs\AceAddon-3.0\AceAddon-3.0.lua:621
: LoadAddOn()
..\FrameXML\UIParent.lua:299: UIParentLoadAddOn()
..\FrameXML\UIParent.lua:322: CombatLog_LoadUI()
..\FrameXML\UIParent.lua:692:
..\FrameXML\UIParent.lua:657
Also, gets this on line 660:
This could just be due to it missing the default macro, only saw it once.
if (strfind(c.current, L) == nil) then
Date: 2012-11-05 16:14:39
ID: 2
Error occured in: Global
Count: 1
Message: ..\AddOns\IHML\IHML.lua line 660:
bad argument #1 to 'strfind' (string expected, got nil)
Debug:
(tail call): ?
: strfind()
IHML\IHML.lua:660: ?()
...ibDataBroker\CallbackHandler\CallbackHandler-1.0.lua:147:
...ibDataBroker\CallbackHandler\CallbackHandler-1.0.lua:147
"]:4:
"]:4
: ?
"]:13: ?()
...ibDataBroker\CallbackHandler\CallbackHandler-1.0.lua:92: Fire()
...ce\AddOns\Baggins\libs\AceEvent-3.0\AceEvent-3.0.lua:120:
...ce\AddOns\Baggins\libs\AceEvent-3.0\AceEvent-3.0.lua:119
pelf
의 게시글
http://www.wowpedia.org/API_GetActiveTalentGroup
=>
http://www.wowpedia.org/API_GetActiveSpecGroup
Wanderingfox
의 게시글
That fixed that one, now getting:
Date: 2012-11-05 22:06:50
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\IHML\IHML.lua line 1227:
attempt to call upvalue 'GetMacroIconInfo' (a nil value)
Debug:
(tail call): ?
IHML\IHML.lua:1227: member()
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:249:
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:197
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1355:
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1055
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1082:
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1055
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1588: FeedGroup()
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1513:
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1493
(tail call): ?
: ?
"]:9:
"]:5
(tail call): ?
...erface\AddOns\Baggins\libs\AceGUI-3.0\AceGUI-3.0.lua:314: Fire()
...ibs\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua:518: Select()
...ibs\AceGUI-3.0\widgets\AceGUIContainer-TreeGroup.lua:526: SelectByValue()
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1684: FeedGroup()
...nfig-3.0\AceConfigDialog-3.0\AceConfigDialog-3.0.lua:1860: Open()
IHML\IHML.lua:905: ?()
...ddOns\Baggins\libs\AceConsole-3.0\AceConsole-3.0.lua:94: ?()
..\FrameXML\ChatFrame.lua:4358:
..\FrameXML\ChatFrame.lua:4304
: ChatEdit_ParseText()
..\FrameXML\ChatFrame.lua:4052: ChatEdit_SendText()
..\FrameXML\ChatFrame.lua:4091: ChatEdit_OnEnterPressed()
:1:
:1
: ?
wowpedia is suggesting that a call needs to occur to GetNumMacroIcons() prior to that call, but I'm not sure how to work it into the line.
image = function() return GetMacroIconInfo(mBody and mIcon or (c.current ~= nil and currentIcon or 1)), 56, 56 end,
pelf
의 게시글
image = function() GetNumMacroIcons(); return GetMacroIconInfo(mBody and mIcon or (c.current ~= nil and currentIcon or 1)), 56, 56 end,
Not sure if the semicolon is even needed there.
Wanderingfox
의 게시글
Ah that makes sense... I just wasn't versed in how Lua did its anonymous functions (too much coding in PLT-Racket lately).
Made that change, but it didn't resolve the issue (still get same exact error).
Neffi
의 게시글
I'm guessing you'll see:
local GetMacroIconInfo = GetMacroIconInfo
somewhere above that.
nil
means it no longer exists.
Wanderingfox
의 게시글
i'm familiar with nil and it's meaning... Just not used to Lua scripting.
That line does in fact show up at the head of the file, although I'm at a loss as to how it's being nil'd and how to resolve it.
pelf
의 게시글
Why would a local copy of the reference become nil if it's a valid global?
Neffi
의 게시글
Because it's no longer a valid global.
pelf
의 게시글
Oh, I was expecting Wowpedia's API pages to be consistent. Silly me.
http://www.wowpedia.org/API_GetMacroIconInfo
Look here for the replacements. They're at the top, I guess.
Can't you do this for yourself, Fox?
:)
Wanderingfox
의 게시글
Probably, but I'm juggling like 4 or 5 different projects atm for college and well... looking up WoW API calls while trying to also write a filesystem in C leads to *!@# like trying to use pointers in Lua :P
pelf
의 게시글
Sounds fun. If you actually get stuck on something that isn't just finding what API functions to call, let us know.
GTMistral
의 게시글
Hmm... pointers!
WowAddon *myAddon = new WowAddon();
// ...
If only addons were made in C#, that'd be neat! :) No more interprated (spelling?) language, hello compiled and efficient speed! :P
Neffi
의 게시글
Lua isn't interpreted though. It's compiled and run on a VM similar to C#. Lua is actually register-based and extraordinarily fast. Depending on who you ask, it's either the fastest dynamic language out there or close to it.
I'd much rather be working in Lua than C# or anything else for that matter. It's absolutely the perfect environment for what we're doing.
GTMistral
의 게시글
It's compiled everytime you start a session then? :s
Neffi
의 게시글
Compiled at runtime, yes. Probably about 20% of the loading bar when you first log in is compilation. It can be pre-compiled (into bytecode) for speed and size, but WoW doesn't support this as a matter of safety and security.
Lua's syntax is so simple that this really isn't a problem. Being register-based probably helps it. That's also part of why it's so fast: the design of the VM is much more similar to the design of a CPU than stack-based VMs, so the CPU often can make real use of optimization techniques related to caching and prediction. Stack-based VMs often manage their code too heavily, and the speed of the language comes in as an after-thought as a matter of optimization
after the fact
. Lua does not suffer this kind of design.
If you peruse the Lua source code, you might be surprised at simple and thin its abstraction is. It's really a beautiful piece of engineering. I loved Lua from the start, but its VM's impeccable source code only confirms that it's my favorite language by a longshot.
pelf
의 게시글
Lua is
definitely
the better choice for this application
:)
. I like some of Ruby's syntax better ... but Lua has many of the same oh-god-that-is-AWESOME moments in its syntax too.
답글 달기
로그인이 되어있지 않습니다. 답글을 달려면
로그인
하거나, 계정이 없다면
회원가입
을 해 주세요.