macro for Sha / Galleon lock
Hello,
I'm curious how can I check if my character is saved for Sha of Anger or Galleon on a given week. It comes to an issue when you play 7-8 characters everyday and just cannot follow which character is already locked and which one is not. I can't find any in-built UI option to check this and this isn't included in /raidinfo list but I heard around the internet there is a macro that can tell you in a way if your current character is saved (or already looted) or not. Could you share it please? (I know there is a version for AILO that can track Sha but I really don't want to use one more completely addon just for this minor issue.) |
Code:
/run for k,v in pairs{GetQuestsCompleted()} do if k=32099 then print("Sha done")break end print("Sha not done")end drycoded. |
Code:
/run local z,t,s={[32099]='Sha of Anger this week.'},GetQuestsCompleted();for c,v in pairs(z) do if t[c] then s='' else s=' not' end print('You have'..s,'done',v) end @Dridzt: Jerk <.< |
Thanks a lot, guys!
|
I've seen that Wowhead script before and I find it mind-boggling that someone would create a table just for storing one number and one string, both of which are only used once. It's not even less characters. Here's what I would do, seems to work:
Code:
/run print("You have"..(GetQuestsCompleted()[32099] and "" or " not").." done Sha of Anger this week.") |
I did warn it's drycoded :o (as in if there was an obvious oversight I expected someone to correct it)
To clarify I typed it from memory and assumed the non-completed quests are nil not false, so no check was necessary. |
Additionally, Galleon's Loot quest ID is "32098".
Code:
/run print("You have"..(GetQuestsCompleted()[32098] and "" or " not").." done Galleon this week.") |
Quote:
|
Shouldn't IsQuestFlaggedCompleted nowadays be faster? (for single quests)
I just remember this post about it |
It should be, yes. Adjusting Haleth's macro:
Code:
/run print("You have" .. (IsQuestFlaggedCompleted(32099) and "" or " not") .. " done Sha of Anger this week.") |
There are way too few macroslots to waste them ;)
http://www.wowinterface.com/download...Worldboss.html |
It's good that Ketho mentioned the IsQuestFlaggedCompleted because I was face-palming when I saw iteration of tables and such just to look up a specific questID. :P
|
Galleon doesn't conform to the same once-a-week lockout restriction that the Sha of Anger has. I have killed Galleon twice within the typical weekly lockout timeframe on several occasions and have been eligible for loot each time.
|
Hi Guys, I'd like to create a macro which checks all 4 World Bosses. Something like:
Code:
/run print("Galleon: "..(GetQuestsCompleted()[32098] and "Yes" or "No")) I made a max-short ugly version: Code:
/run print("G:"..(GetQuestsCompleted()[32098] and "Y" or "N")) |
Use a table:
Code:
/run for k, v in pairs({ Galleon = 32098, Sha = 32099, Nalak = 32518, Oondasta = 32519}) do print(format("%s: %s", k, IsQuestFlaggedCompleted(v) and "\124cff00ff00Yes\124r" or "\124cffff0000No\124r")) end Also, use IsQuestFlaggedCompleted(qID) instead of GetQuestsCompleted()[qID] to check single quests. |
Yeah you're a genius...and you've got the right feeling for styling^^ But it doesn't take the colours in the "".
The output is sth like "Nalak: |cffff0000No|r". But thanks anyway helped me a lot. |
Try replacing | with \124
|
I'm not sure, but I thought that all (or at least some) world bosses had their weekly limit removed since patch 5.2.
|
Quote:
Quote:
For those macro-noobies like me, here's the perfect code: Code:
/run for k, v in pairs({ Galleon = 32098, Sha = 32099, Nalak = 32518, Oondasta = 32519}) do print(format("%s: %s", k, IsQuestFlaggedCompleted(v) and "\124cff00ff00Yes\124r" or "\124cffff0000No\124r")) end |
Well, the Oondasta one is strange then, because I did kill/loot him this week (160 man raid, was awesome) yet the quest doesn't indicate that.
|
All times are GMT -6. The time now is 05:52 AM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI