我想降級(等級下降)我公會的每一個成員與特定的等級(例如,所有新成員,以收入者比重)魔獸世界API:降級所有人級別?
---任何想法如何在魔獸API的世界做到這一點?
(IM猜測在所有公會成員的姓名一些循環測試,如果排名和降級然後 - ?請寫例如如果是這樣)
感謝您對未來的答案:)
我想降級(等級下降)我公會的每一個成員與特定的等級(例如,所有新成員,以收入者比重)魔獸世界API:降級所有人級別?
---任何想法如何在魔獸API的世界做到這一點?
(IM猜測在所有公會成員的姓名一些循環測試,如果排名和降級然後 - ?請寫例如如果是這樣)
感謝您對未來的答案:)
當我出場,我總是看的第一個地方是wowwiki。以下是guild functions的列表。看起來你可以調用GetGuildRosterInfo
從1到GetNumGuildMember
(或直到GetGuildRosterInfo(N)
返回nil
)來獲得玩家的名字和等級,然後調用GuildDemote
降級玩家。
像這樣(沒有經過測試的,我甚至不具備安裝魔獸世界這些天):
for i=1,GetNumGuildMembers() do
local name, rank = GetGuildRosterInfo(i)
if rank == "The rank you're iterested in" then
GuildDemote(name)
end
end
您可以嘗試在遊戲中的API調用。你甚至可以在遊戲中編寫大部分插件。當我玩的時候,我爲自己寫了不少插件併發布了a few。其中一個(Hack)是一個遊戲中的Lua腳本編輯器。我認爲有人已經拿起球並繼續前進。你應該看看得到那樣的東西。
這是關於能夠在宏中執行此操作的OP問題的其餘部分的澄清。
下面是我在我的宏之一,格式化,因此您可以在這裏閱讀:
/run for i=0,0 do local instanceName, instanceDesc, backgroundTexture, buttonTexture,
titleBackground, mapID, instanceLink = EJ_GetSearchResult(i); if mapID then print
(i,instanceName, mapID) end end
/dump GetLFGDungeonInfo(20)
這是同樣的事情格式化,這樣你可以僅僅指剛複製並粘貼到一個宏。每個命令都在一行上。你可以有這些sequentialy運行多個命令:再次
/run for i=0,0 do local instanceName, instanceDesc, backgroundTexture, buttonTexture, titleBackground, mapID, instanceLink = EJ_GetSearchResult(i); if mapID then print(i,instanceName, mapID) end end
/dump GetLFGDungeonInfo(20)
繼承人接受的答案:
for i=1,GetNumGuildMembers() do
local name, rank = GetGuildRosterInfo(i)
if rank == "The rank you're iterested in" then
GuildDemote(name)
end
end
這被格式化粘貼到宏:
/run for i=1,GetNumGuildMembers() do local name, rank = GetGuildRosterInfo(i); if rank == "The rank you're iterested in" then GuildDemote(name) end end
通知的simicolon ';'在同一行的同一個塊中的兩個語句之間。這是使代碼明確且易於閱讀的好習慣。
我不是魔獸專家,但根據[網站](http://www.wowwiki.com/World_of_Warcraft_API#Introduction)其API是用Lua編寫的,而不是C。也許你應該刪除C標籤並添加Lua標籤。 –
@wowapier Lua與C唯一共同之處在於它是一種編程語言。除此之外,他們不可能更加不同。 JavaScript是Lua的親吻表親(動態類型化,垃圾收集,閉包,通過原型繼承等),至少具有類C *語法*。 Lua甚至沒有這個。 – Mud
我指着它比帕斯卡爾更像C - 你自己說「親吻堂兄」<仍然有關 - 還是我不明白爲什麼有人會排列這個問題?它是一個非常有趣的問題... – wowapier