具体函数名及描述如下:
参数及类型:
number
背包类型,快捷栏、存储栏、装备栏返回值及类型:
该方法的主要作用:获取道具背包栏ID范围(起始ID~结束ID)
具体使用案例如下:
--获取快捷栏的物品格id,参数为背包栏类型:1快捷栏 2储存栏 3装备栏
local result,begid,endid=Backpack:getBackpackBarIDRange(1)
--在聊天框显示
Chat:sendSystemMsg("快捷栏的物品格id为:"..begid.."至"..endid)
--获取储存栏的物品格id
result,begid,endid=Backpack:getBackpackBarIDRange(2)
--在聊天框显示
Chat:sendSystemMsg("储存栏的物品格id为:"..begid.."至"..endid)
--装备栏的物品格id
result,begid,endid=Backpack:getBackpackBarIDRange(3)
--在聊天框显示
Chat:sendSystemMsg("装备栏的物品格id为:"..begid.."至"..endid)
参数及类型:
number
BPACK_SINDEX返回值及类型:
该方法的主要作用:获取道具背包栏大小
具体使用案例如下:
--获取背包栏总格数,参数为背包类型:1快捷栏 2储存栏 3装备栏
local result,size=Backpack:getBackpackBarSize(1)
--在聊天框显示
Chat:sendSystemMsg("快捷栏一共有"..size.."格")
参数及类型:
返回值及类型:
该方法的主要作用:设置背包格道具
具体使用案例如下:
--给指定玩家的指定背包栏添加物品
--第一个参数1000为玩家迷你号
--第二个参数0为背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--第三个参数为要添加的物品id,12005是钻石剑
--第四个参数为要添加的物品数量
--最后一个参数为要添加的物品耐久,nil为默认满
Backpack:setGridItem(1000,0,12005,10,nil)
--在聊天框显示
Chat:sendSystemMsg("给迷你号为1000的玩家储存栏的第一格添加了10把钻石剑,耐久为满")
参数及类型:
返回值及类型:
该方法的主要作用:移除背包格内一定数量道具,通过道具格移除,默认全部移除
具体使用案例如下:
--移除指定玩家的指定背包栏的物品
--第一个参数为玩家迷你号
--第二个参数0为背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--第三个参数为移除数量
Backpack:removeGridItem(1000,0,10)
--在聊天框显示
Chat:sendSystemMsg("移除了玩家1000的背包栏第一格10个物品")
参数及类型:
返回值及类型:
该方法的主要作用:移除背包内一定数量道具,通过道具ID移除,默认全部移除
具体使用案例如下:
--移除指定玩家背包里的指定物品
--第一个参数为玩家迷你号
--第二个参数为要移除的物品id,101为土块
--第三个参数为要移除的物品数量
local result,num=Backpack:removeGridItemByItemID(1000,101,50)
--在聊天框显示
Chat:sendSystemMsg("尝试移除玩家1000背包里的50个土块,实际移除了"..num.."个")
--清空指定玩家的背包物品
--第一个参数为玩家迷你号
--第二个参数为背包类型:1快捷栏 2储存栏 3装备栏
Backpack:clearPack(1000,1)
--在聊天框显示
Chat:sendSystemMsg("清空了玩家1000的快捷栏物品")
参数及类型:
number
返回值及类型:
该方法的主要作用:清空全部背包(包含背包栏、快捷栏、装备栏)
具体使用案例如下:
--清空指定玩家的所有物品,包括快捷栏、储存栏和装备栏,参数为玩家迷你号
Backpack:clearAllPack(1000)
--在聊天框显示
Chat:sendSystemMsg("清空了玩家1000的所有物品,包括快捷栏、储存栏和装备栏")
参数及类型:
返回值及类型:
该方法的主要作用:移动背包道具,默认全部转移
具体使用案例如下:
--移动玩家背包物品到指定物品栏
--第一个参数为玩家迷你号
--第二个参数0为要移动的背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--第三个参数1000为移动至的背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--第四个参数为移动数量
local result=Backpack:moveGridItem(1000,0,1000,10)
if result==0 then--如果移动成功
--在聊天框显示
Chat:sendSystemMsg("把玩家1000的储存栏的第一格物品移动了10个到快捷栏第一格")
else--如果移动失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档,或无法移动")
end
--交换玩家两个物品栏的物品
--第一个参数为玩家迷你号
--后两个参数为要交换的背包栏id:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result=Backpack:moveGridItem(1000,0,1000)
if result==0 then--如果交换成功
--在聊天框显示
Chat:sendSystemMsg("交换了玩家1000的储存栏第一格和快捷栏第一格的物品")
else--如果交换失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档,或无法交换")
end
参数及类型:
返回值及类型:
该方法的主要作用:背包(包含背包栏、快捷栏)是否有足够的空间存放一定数量的道具
具体使用案例如下:
--判断玩家背包(包括快捷栏和储存栏)是否能继续容纳指定数量的物品
--第一个参数为玩家迷你号
--第二个参数为要判断的物品id,101为土块
--第三个参数为物品数量
local result=Backpack:enoughSpaceForItem(1000,101,999)
if result==0 then--如果可以
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包可以继续容纳999个土块")
else--如果不可以或判断失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包无法继续容纳999个土块,或玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:计算背包(包含背包栏、快捷栏)能存放的道具剩余总数量
具体使用案例如下:
--获取指定玩家的背包(包括快捷栏和储存栏)还能添加多少指定物品
--第一个参数为玩家迷你号
--第二个参数为要获取剩余容纳数量的物品,101为土块
local result,num=Backpack:calcSpaceNumForItem(1000,101)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包还能添加"..num.."个土块")
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取道具背包栏有效格ID列表(道具已存在),背包格ID数组
具体使用案例如下:
--获取指定玩家的背包中已有物品的格子id
--第一个参数为玩家迷你号
--第二个参数为背包栏类型:1快捷栏 2储存栏 3装备栏
local result,num,array=Backpack:getBackpackBarValidList(1000,2)
if result==0 then--如果获取成功
--在聊天框显示已有物品的格子数量
Chat:sendSystemMsg("玩家1000的储存栏一共有"..num.."格已经放置了物品")
for i,a in ipairs(array) do
--在聊天框显示格子id列表
Chat:sendSystemMsg("第"..i.."个有物品的物品格id:"..a)
end
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取道具背包栏已拥有道具,道具ID数组
具体使用案例如下:
--获取指定玩家背包的物品列表
--第一个参数为玩家迷你号
--第二个参数为背包栏类型:1快捷栏 2储存栏 3装备栏
local result,num,arr=Backpack:getBackpackBarItemList(1000,1)
if result==0 then--如果获取成功
--在聊天框显示种类数
Chat:sendSystemMsg("玩家1000的快捷栏一共有"..num.."种物品")
for i,a in ipairs(arr) do
--在聊天框显示物品id列表
Chat:sendSystemMsg("第"..i.."种物品id:"..a)
end
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:检测背包是否持有某个道具
具体使用案例如下:
--判断玩家背包是否包含某物品
--第一个参数为玩家迷你号
--第二个参数为背包栏类型:1快捷栏 2储存栏 3装备栏
--第三个参数为要判断的物品id,1是地心基石
local result=Backpack:hasItemByBackpackBar(1000,1,1)
if result==0 then--如果有
--在聊天框显示
Chat:sendSystemMsg("玩家1000的快捷栏里有地心基石")
else--如果没有或获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000的快捷栏里没有地心基石或玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包持有某个道具总数量,同时返回装有道具的背包格数组
具体使用案例如下:
--获取指定玩家的背包有多少个指定物品
--第一个参数为玩家迷你号
--第二个参数为背包栏类型:1快捷栏 2储存栏 3装备栏
--第三个参数为要获取的物品id,101为土块
local result,num,arr=Backpack:getItemNumByBackpackBar(1000,2,101)
if result==0 then--如果获取成功
--在聊天框显示物品数量
Chat:sendSystemMsg("玩家1000的储存栏里有"..num.."个土块")
for i,a in ipairs(arr) do
--在聊天框显示物品格列表
Chat:sendSystemMsg("有土块的第"..i.."个物品格id为:"..a)
end
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包格道具ID(返回itemid, num)
具体使用案例如下:
--获取指定玩家指定物品格的物品id和数量
--第一个参数为玩家迷你号
--第二个参数0为背包栏物品格id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,itemid,num=Backpack:getGridItemID(1000,0)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包储存栏的第一格物品id为:"..itemid..",数量为:"..num)
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
--获取指定玩家指定物品格的物品名称
--第一个参数为玩家迷你号
--第二个参数0为背包栏物品格id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,name=Backpack:getGridItemName(1000,0)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包储存栏的第一格物品名称为:"..name)
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("获取失败,可能是玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包格道具堆叠数(返回curstack, maxstack)
具体使用案例如下:
--获取指定玩家指定背包物品格的物品堆叠数量和最大堆叠数
--第一个参数为玩家迷你号
--第二个参数0为背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,num,maxstack=Backpack:getGridStack(1000,0)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包储存栏第一格的物品当前堆叠了"..num.."个,该物品最大可以堆叠"..maxstack.."个")
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包格道具耐久度(返回durcur, durmax)
具体使用案例如下:
--获取指定玩家指定背包物品格的物品当前耐久值和最大耐久值
--第一个参数为玩家迷你号
--第二个参数0为背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,durcur,durmax=Backpack:getGridDurability(1000,0)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包储存栏第一格的物品的耐久值为"..durcur..",该物品最大耐久值为"..durmax)
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包格道具附魔,返回附魔id数组
具体使用案例如下:
--获取指定玩家背包中某格物品的附魔数量与id
--第一个参数为玩家迷你号
--第二个参数为背包栏id,1000为快捷栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,num,arr=Backpack:getGridEnchantList(1000,1000)
if result==0 then--如果获取成功
--在聊天框显示附魔数量
Chat:sendSystemMsg("玩家1000的快捷栏第一格物品附魔数量为"..num)
for i,a in ipairs(arr) do
--在聊天框显示附魔列表
Chat:sendSystemMsg("第"..i.."个附魔id为:"..a)
end
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:获取背包道具工具类型(<0表示非工具)
具体使用案例如下:
--获取指定玩家指定物品格的物品道具类型
--第一个参数为玩家迷你号
--第二个参数为背包栏id,1000为快捷栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--返回值可能是:-1非道具 1斧 2镐 3铲 4锄 6剑 7弓 14投掷 等
local result,type=Backpack:getGridToolType(1000,1000)
--在聊天框显示
Chat:sendSystemMsg("玩家1000快捷栏第一格物品类型为:(-1非道具 1斧 2镐 3铲 4锄 6剑 7弓 14投掷)"..type)
参数及类型:
返回值及类型:
该方法的主要作用:添加道具到背包
具体使用案例如下:
--给指定玩家的背包添加物品
--第一个参数为玩家迷你号
--第二个参数为要添加的物品id,101为土块
--第三个参数为要添加的物品数量
local result,successNum=Backpack:addItem(1000,101,999)
if result==0 then--如果添加成功
--在聊天框显示
Chat:sendSystemMsg("尝试给玩家1000的背包添加999个土块,实际添加了"..successNum)
else--如果添加失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
参数及类型:
返回值及类型:
该方法的主要作用:丢弃背包某个格子里的道具
具体使用案例如下:
--移除指定玩家的指定背包栏的物品
--第一个参数为玩家迷你号
--第二个参数0为背包栏id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
--第三个参数为移除数量
Backpack:discardItem(1000,0,10)
--在聊天框显示
Chat:sendSystemMsg("移除了玩家1000的背包栏第一格10个物品")
--获取指定玩家指定物品格的物品数量
--第一个参数为玩家迷你号
--第二个参数0为背包栏物品格id,0为储存栏的第一格:0-29储存栏 1000-1007快捷栏 8000-8004装备栏
local result,num=Backpack:getGridNum(1000,0)
if result==0 then--如果获取成功
--在聊天框显示
Chat:sendSystemMsg("玩家1000的背包储存栏的第一格物品数量为:"..num)
else--如果获取失败
--在聊天框显示
Chat:sendSystemMsg("玩家1000不在当前存档")
end
local function ClickBlock(event)
local objid=event.eventobjid--玩家
local resid=12241--装备id
--给玩家穿上装备(前提是玩家背包里有这件装备)
Backpack:actEquipUpByResID(objid, resid)
end
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], ClickBlock)--点击方块
local function ClickBlock(event)
local objid=event.eventobjid--玩家
local equipid=0--装备栏id,0代表头盔
--给玩家脱下装备(前提是玩家装备栏里有装备)
Backpack:actEquipOffByEquipID(objid, equipid)
end
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], ClickBlock)--点击方块
local function ClickBlock(event)
local objid=event.eventobjid--玩家
local resid=12241--装备id,这里是蓝钻头盔
--给玩家创建装备(不消耗玩家物品)
Backpack:actCreateEquip(objid, resid)
end
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], ClickBlock)--点击方块
参数及类型:
返回值及类型:
该方法的主要作用:销毁装备
具体使用案例如下:
local function ClickBlock(event)
local objid=event.eventobjid--玩家
local equipid=0--装备栏id,0代表头盔
--销毁玩家装备(不放入背包)
Backpack:actDestructEquip(objid, equipid)
end
ScriptSupportEvent:registerEvent([=[Player.ClickBlock]=], ClickBlock)--点击方块
local result = Backpack:PlayShortCutIxEffect(objid, effectid,scale)
local result = Backpack:StopShortCutIxEffect(objid, equipid)
local result = Backpack:PlayShortCutItemEffect(objid,itemid, effectid,scale)
local result = Backpack:StopShortCutItemEffect(objid, itemid,effectid)