2016-09-20 45 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

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