- 道具格子可以绑定到角色组件
装备中产生联动。绑定后格子中的装备属性会自动计算到角色属性中。
| 名称 | 类型 | 必填 | 说明 |
| 类型 | 文本 | true | 固定值:道具格子 表示这是一个道具格子控件 |
| 名称 | 文本 | true | 窗口中唯一标识 |
| x | 整数 | false | 默认显示坐标x |
| y | 整数 | false | 默认显示坐标y |
| 格子宽度 | 整数 | false | |
| 格子高度 | 整数 | false | |
| 限制分类 | 文本 | false | |
| 限制子类 | 文本 | false | |
| 禁止放入 | 逻辑 | false | |
| 禁止拿起 | 逻辑 | false | |
| 底图 | 文本 | false | 资源标识 |
| 附加 | table | false | 自定义变量 |
| 禁止存档 | 逻辑 | false | 默认:false |
| 默认可视 | 逻辑 | false | 默认是否显示 |
| 系统事件 | table | false | |
{
名称 = "主角武器",
类型 = "道具格子",
限制分类 = "装备",
限制子类 = "武器",
x = 10,
y = 160,
底图 = "默认皮肤|格子底图2",
格子宽度 = 34,
格子高度 = 34
},
- 类型:
数值 - 读写:
读写 - 说明:动态改变控件的显示层级,值越大越先显示。
- 类型:
道具对象 - 读写:
读写 - 说明:取出格子中的道具,
道具对象的属性在脚本中可以随时随地修改。可修改属性
{
名称 = "测试按钮",
类型 = "按钮",
x = 50,
y = 50,
宽度 = 64,
高度 = 30,
标题 = "确定",
系统事件 = {
点击 = function(按钮对象)
local 武器格子 = 按钮对象.父窗口["主角武器"]
if (武器格子.道具) then
武器格子.道具.攻击 = 40
武器格子.道具.气泡提示 = "攻击:40"
end
end
}
},
战士武器格子.道具 = 角色包裹.取出物品(1,1)
- 类型:
table - 读写:
读写 - 说明:读写控件的附加信息。
|
|---|
| 说明:重置格子中的道具。 |
| 参数名称 | 值的类型 | 是否必填 | 说明描述 | | 道具名称 | 文本 | false | nil 表示清空格子 | | 数量 | 整数 | false | | | 附加 | table | false | 如果填写会传递到道具的 创建 事件中 | | 发现音效 | 逻辑 | false | 是否播放道具的发现音效 默认:true |
示例 |
| 回调参数 | 类型 | 说明描述 |
| 格子对象 | 包裹格子 | |
| 道具对象 | 道具对象/nil | 离开时是nil |
示例
系统事件 = {
更新 = function(格子对象,道具对象)
调试输出("更新",道具对象)
end
}
- 格子中有道具或者有道具放入时触发
- 返回
1 拦截 - 返回
2 创造一个分身
| 回调参数 | 类型 | 说明描述 |
| 当前格子 | 格子对象 | |
| 道具对象 | 道具对象 | 当前格子中的道具 |
| 来源道具 | 道具对象 | 将要放入的道具 |
| 来源格子 | 格子对象 | 道具从哪个格子控件中来 |
| 功能键 | 整数 | 点击时是否按住了功能键 1:Ctrl 2:Shift |
示例
系统事件 = {
点击 = function (格子对象,道具对象,来源道具,来源格子)
if (道具对象 and 来源道具) then
if (来源道具.名称 == "锤子") then
道具对象.数量 = 道具对象.数量 - 1
来源道具.数量 = 来源道具.数量 - 1
return 1
elseif (来源道具.名称 == "祝福油") then
道具对象.幸运 = 道具对象.幸运 + 1
来源道具.数量 = 来源道具.数量 - 1
return 1
end
end
end
}