包裹格子
- 包裹格子控件是一个有行列属性的表格,通过接口
增加物品和 地图上拾取掉落物都会自动进入包裹格子。 - 游戏中可以拥有多个包裹格子控件
| 名称 | 类型 | 必填 | 说明 |
| 类型 | 文本 | true | 固定值:包裹格子 表示这是一个包裹格子控件 |
| 名称 | 文本 | true | 窗口中唯一标识 |
| x | 整数 | false | 默认显示坐标x |
| y | 整数 | false | 默认显示坐标y |
| 格子宽度 | 整数 | false | |
| 格子高度 | 整数 | false | |
| 行距 | 整数 | false | |
| 间距 | 整数 | false | |
| 列数 | 整数 | false | |
| 行数 | 整数 | false | |
| 可视行数 | 整数 | false | |
| 限制分类 | 文本 | false | |
| 限制子类 | 文本 | false | |
| 底图 | 文本 | false | 资源标识 |
| 附加 | table | false | 自定义变量 |
| 禁止存档 | 逻辑 | false | 默认:false |
| 默认可视 | 逻辑 | false | 默认是否显示 |
| 系统事件 | table | false |
{
名称 = "角色包裹",
类型 = "包裹格子",
x = 10,
y = 300,
底图 = "默认皮肤|格子底图3",
格子宽度 = 36,
格子高度 = 36,
列数 = 6,
行数 = 8,
可视行数 = 5,
},
属性
可视
- 类型:
逻辑 - 读写:
读写 - 说明:是否显示控件
父窗口
- 类型:
窗口对象 - 读写:
只读 - 说明:控件的父窗口对象
调试输出(包裹格子1.父窗口.名称)
名称
- 类型:
文本 - 读写:
只读 - 说明:控件的名称。
水平缩放
- 类型:
数值 - 读写:
读写 - 说明:水平缩放比例。
垂直缩放
- 类型:
数值 - 读写:
读写 - 说明:垂直缩放比例。
次序
- 类型:
数值 - 读写:
读写 - 说明:动态改变控件的显示层级,值越大越先显示。
行数
- 类型:
数值 - 读写:
只读 - 说明:当前包裹格子的行数。
列数
- 类型:
数值 - 读写:
只读 - 说明:当前包裹格子的列数。
方法
| 说明:取出指定位置的道具。 | ||||||||||||||||||
示例
|
| 说明:重置指定位置的道具。 | ||||||||||||||||||||||||||||
示例 |
| 说明:按照规则对包裹中的物品进行排序。 | ||||||||
示例 |
| 添加节点 | ||||||||
|---|---|---|---|---|---|---|---|---|
说明:添加一个节点显示在每个格子上,默认不可见,配合显示节点使用。 | ||||||||
示例 |
| 显示节点 | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 说明:设定指定格子上的节点是否可见。 | ||||||||||||||||||||
示例 |
系统事件
🔹 创建
创建时触发
| 回调参数 | 类型 | 说明描述 |
| 格子对象 | 包裹格子 |
示例
系统事件 = {
创建 = function(格子对象)
调试输出(格子对象.名称)
end
}
🔹 新增
- 包裹中有新物品进入时候触发
| 回调参数 | 类型 | 说明描述 |
| 格子对象 | 包裹格子 | |
| 行 | 整数 | |
| 列 | 整数 | |
| 道具对象 | 道具对象 | 新进入的道具 |
示例
系统事件 = {
新增 = function(格子对象,行,列,道具对象)
调试输出(行,列,道具对象.名称,道具对象.数量)
end
}
🔹 更新
- 包裹中有物品进入,离开时触发
| 回调参数 | 类型 | 说明描述 |
| 格子对象 | 包裹格子 | |
| 行 | 整数 | |
| 列 | 整数 | |
| 道具对象 | 道具对象/nil | 离开时是nil |
示例
系统事件 = {
更新 = function(格子对象,行,列,道具对象)
调试输出("更新",行,列,道具对象)
end
}
🔹 点击
- 格子中有道具或者有道具放入时触发
- 返回 false 可以拦截
| 回调参数 | 类型 | 说明描述 |
| 格子对象 | 包裹格子 | |
| 道具对象 | 道具对象 | 当前格子中的道具 |
| 来源道具 | 道具对象 | 将要放入的道具 |
| 来源格子 | 格子对象 | 道具从哪个格子控件中来 |
| 功能键 | 整数 | 点击时是否按住了功能键 1:Ctrl 2:Shift 3:Alt |
示例
系统事件 = {
点击 = function (包裹对象,道具对象,来源道具)
if (道具对象 == nil) then
调试输出("放下",来源道具.名称)
elseif (来源道具 == nil) then
调试输出("拿起",道具对象.名称)
else
调试输出("交换",道具对象.名称,来源道具.名称)
if (来源道具.名称 == "宝石") then
来源道具.数量 = 来源道具.数量 - 1
道具对象.攻击 = 道具对象.攻击 + 1
道具对象.气泡提示 = "被强化的道具"
return false
end
end
return true
end
}
