迷你世界UGc3.0脚本Wiki[容器模块管理接口]

Skip to content

迷你世界UGC3.0脚本Wiki

Menu

On this page

Sidebar Navigation

快速入门

欢迎

MOD、组件介绍

什么是Lua编程

组件介绍

组件说明

组件互相操作

组件函数

组件属性

事件

触发器事件管理

组件事件管理

函数库

服务模块

对象模块管理接口 GameObject

角色模块管理接口 Actor

玩家模块管理接口 Player

生物模块管理接口 Monster

方块模块管理接口 Block

背包模块管理接口 Backpack

界面模块管理接口 CustomUI

图文信息模块管理接口 Graphics

区域模块管理接口 Area

容器模块管理接口 WorldContainer

资源模块管理接口 Mod

计时器模块管理接口 Timer

状态模块管理接口 Buff

消息模块管理接口 Chat

普通变量数据管理接口 Data

数组变量数据管理接口 Array

二维表变量数据管理接口 Table

KV表变量数据管理接口 Map

世界模块管理接口 World

道具模块管理接口 Item

全局函数

全局函数

枚举

枚举库

脚本常见问题

开发者常见问题

进阶指南

全局函数

触发器脚本交互

对象介绍

KV&排行榜介绍

二维表介绍

道具实例

更新日志

更新日志

容器模块管理接口 WorldContainer

具体函数名及描述如下:

序号 函数名 函数描述
1 CheckStorage(...) 检测储物箱
2 ClearStorageBox(...) 清空储物箱
3 CheckStorageEmptyGrid(...) 检测储物箱空位
4 SetStorageItem(...) 设置储物箱格子道具
5 GetStorageItem(...) 获取储物箱格子道具
6 AddStorageItem(...) 储物箱添加道具
7 RemoveStorageItemByID(...) 储物箱按类型移除道具
8 RemoveStorageItemByIndex(...) 储物箱按格子移除道具
9 AddItemToContainer(...) 储物箱添加道具(大箱)
10 RemoveContainerItemByID(...) 移除储物箱中一定数量道具
11 ClearContainer(...) 清空容器
12 AddWorldStorageItems(...) 批量添加储物箱道具
13 GetStorageItemInstanceId(...) 获取储物箱道具实例ID
14 GetAllStorageItemInstanceIds(...) 获取储物箱全部道具实例ID
15 SwapContainerItem(...) 交换容器与背包道具
16 GetGridAttr(...) 获取格子属性

CheckStorage

  • 参数及类型:
  • 返回值及类型: ret:boolean,resIdOrBlockId:number|nil:是否为储物箱及方块标识(否仅返回false)
  • 该方法的其他说明: 检测指定坐标是否为储物箱或 MOD 容器;是则返回方块资源ID或配置ID
  • 具体使用案例如下:

lua

复制代码
    local isStorage = WorldContainer:CheckStorage(x, y, z, WorldId)

ClearStorageBox

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 清空指定坐标储物箱内所有物品
  • 具体使用案例如下:

lua

复制代码
    local success = WorldContainer:ClearStorageBox(x, y, z, WorldId)

CheckStorageEmptyGrid

  • 参数及类型:
  • 返回值及类型:
    • ret:boolean 是否有可用格子
  • 该方法的其他说明: 检测储物箱是否还有空位或可叠加存放指定道具
  • 具体使用案例如下:

lua

复制代码
    local isEmpty = WorldContainer:CheckStorageEmptyGrid(x, y, z, 100, WorldId)

SetStorageItem

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 按格子索引直接设置储物箱内道具与数量
  • 具体使用案例如下:

lua

复制代码
    local success = WorldContainer:SetStorageItem(x, y, z, 3, 12500, 10, WorldId)

GetStorageItem

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • offset:number 格子索引(从1开始)
    • worldId:number / nil 星球ID(默认当前主机所在星球)
  • 返回值及类型: ret:itemid:number|string|nil,num:number|nil:道具ID与数量(失败返回nil)
  • 该方法的其他说明: 读取储物箱指定格子的道具ID与数量
  • 具体使用案例如下:

lua

复制代码
    local itemId, num = WorldContainer:GetStorageItem(x, y, z, 1, WorldId)

AddStorageItem

  • 参数及类型:
  • 返回值及类型:
    • ret:number / boolean / nil 实际添加数量(锁定商品返回false,失败返回nil)
  • 该方法的其他说明: 向储物箱按堆叠规则添加道具,返回实际加入的数量
  • 具体使用案例如下:

lua

复制代码
    local addNum = WorldContainer:AddStorageItem(x, y, z, 12507, 10, WorldId)

RemoveStorageItemByID

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 从储物箱中按道具类型移除指定数量(num 缺省或极大时表示尽量清空该类型)
  • 具体使用案例如下:

lua

复制代码
    local isSuccess = WorldContainer:RemoveStorageItemByID(x, y, z, 12507, 3, WorldId)

RemoveStorageItemByIndex

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • offset:number 格子索引(从1开始)
    • num:number / nil 移除数量
    • worldId:number / nil 星球ID(默认当前主机所在星球)
  • 返回值及类型:
  • 该方法的其他说明: 从储物箱指定格子移除一定数量道具
  • 具体使用案例如下:

lua

复制代码
    local isSuccess = WorldContainer:RemoveStorageItemByIndex(x, y, z, 1, 5, WorldId)

AddItemToContainer

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 向储物箱添加道具;成功返回本次实际加入数量
  • 具体使用案例如下:

lua

复制代码
    local addNum = WorldContainer:AddItemToContainer(x, y, z, 12500, 10, WorldId)

RemoveContainerItemByID

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 移除储物箱中一定数量道具
  • 具体使用案例如下:

lua

复制代码
    local isSuccess = WorldContainer:RemoveContainerItemByID(x, y, z, 12500, 5, WorldId)

ClearContainer

  • 参数及类型:
  • 返回值及类型:
  • 该方法的其他说明: 清空指定坐标上通用容器内所有物品
  • 具体使用案例如下:

lua

复制代码
    local success = WorldContainer:ClearContainer(x, y, z, WorldId)

AddWorldStorageItems

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • itemids:table 道具列表({itemId,itemNum}...)
    • worldId:number / nil 星球ID(默认当前主机所在星球)
  • 返回值及类型:
    • ret:number 累计成功添加数量
  • 该方法的其他说明: 批量向储物箱添加多组道具(每项含 itemId、itemNum),返回累计成功添加的总数量
  • 具体使用案例如下:

lua

复制代码
    local addNum = WorldContainer:AddWorldStorageItems(x, y, z, {{itemId = 12541, itemNum = 10}}, WorldId)

GetStorageItemInstanceId

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • offset:number 格子索引(从1开始)
    • worldId:number / nil 星球ID(默认当前主机所在星球)
  • 返回值及类型:
    • ret:string / nil 实例ID(无则返回nil)
  • 该方法的其他说明: 读取储物箱某格道具的实例ID字符串(仅当格子含实例数据时有效)
  • 具体使用案例如下:

lua

复制代码
local ret = WorldContainer:GetStorageItemInstanceId(x, y, z, offset, worldId)

GetAllStorageItemInstanceIds

  • 参数及类型:
  • 返回值及类型:
    • ret:table / nil 实例ID字符串数组(失败返回nil)
  • 该方法的其他说明: 枚举储物箱内所有带实例ID的格子,收集实例ID列表(仅含通过接口创建的实例道具)
  • 具体使用案例如下:

lua

复制代码
local ret = WorldContainer:GetAllStorageItemInstanceIds(x, y, z, worldId)

SwapContainerItem

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • grid:number 容器格子索引(从1开始,熔炉为约定槽位)
    • uin:number 玩家objid
    • grid2:number 背包格子索引(从1开始)
  • 返回值及类型:
    • ret:boolean / nil 是否成功(坐标无方块等可能返回nil)
  • 该方法的其他说明: 在玩家背包与指定坐标的储物箱或熔炉之间移动或交换道具
  • 具体使用案例如下:

lua

复制代码
    local ret = WorldContainer:SwapContainerItem(x, y, z, 1,uin, BackpackBeginIndex.Shortcut)

GetGridAttr

  • 参数及类型:
    • x:number 坐标x
    • y:number 坐标y
    • z:number 坐标z
    • gridid:number:格子ID,attr:number:属性枚举(GridAttr)
    • worldId:number 星球id(默认当前主机所在星球)
  • 返回值及类型:
  • 该方法的其他说明: 获取格子属性
  • 具体使用案例如下:

lua

复制代码
	local num = WorldContainer:GetGridAttr(x, y, z, 1, GridAttr.ItemNum)

Last updated: 2026/4/22 17:50

Pager

Previous page区域模块管理接口 Area

Next page资源模块管理接口 Mod