2016-09-20 100 views
-4

函數/ API函數:http://wowprogramming.com/docs/api/GetContainerItemInfo如何從此API返回特定值

有一個問題的鏈接頂部。所以

StackSize = GetContainerItemInfo(whichbag, whichslot);

基本上我問我怎麼做與該項目ID返回同樣的事情:我可以定義項的堆棧大小有以下?我完全不知道lua如何以我提供的方式「存儲」數據。 API文檔說它會返回很多數據,但是如何定義我想要從以下信息中讀取的內容:「紋理,計數,鎖定,質量,可讀,可打包,鏈接,已過濾,hasNoValue,itemID」

+0

閱讀推薦的和官方的文檔,但你需要做更多的Lua編程。 https://www.lua.org/docs.html 對於這個問題,這是非常重要的undestand! https://www.lua.org/manual/5.3/manual.html#3.4 – Piglet

回答

0

Lua允許多個返回值,並且它們在被函數返回時充當變量參數。因此,如果您需要更多工具來處理返回值,您可能需要閱讀lua可變參數。

在您鏈接有以下方式給出的函數簽名的文檔頁面:

texture, count, locked, quality, readable, lootable, link, isFiltered, hasNoValue, itemID = GetContainerItemInfo(container, slot) 

這正是將定義以下變量具有由該函數返回的相應值碼:質地,計數,鎖定,質量,可讀,可打包,鏈接,isFiltered,hasNoValue和itemID。

因此,您只需使用該代碼,然後使用您剛纔定義的變量。在你的情況下,count將是堆棧大小,itemID將是該項目的ID。

這裏是如何運行上面的代碼後,打印出來的例子:print(count, itemID)

根據該文件就好像你似乎認爲你最初發布的代碼將不會返回堆棧大小,但紋理代替。

+0

這就是我在想的,但我想知道它是如何使用堆棧的大小,因爲它甚至不在返回列表中,所以我沒有我甚至沒有把握。 –