Input, Show Multiple blocks, Load
This commit is contained in:
1 parent
169233955a
commit
9d591d50a5
8 files changed
+126
-46
No files matched your search
+31
-7
@@ -334,11 +334,12 @@ value是一个表达式,将通过这个表达式计算出的结果赋值给nam
|
||||
"x,y": [ // 实际执行的事件列表
|
||||
{"type": "show", "loc": [3,6], "floorId": "MT1", "time": 500 } // 启用MT1层[3,6]位置事件,动画500ms
|
||||
{"type": "show", "loc": [3,6], "time": 500 } // 如果启用目标是当前层,则可以省略floorId项
|
||||
{"type": "show", "loc": [3,6]} // 如果不指定动画时间,则立刻显示,否则动画效果逐渐显示,time为动画时间
|
||||
{"type": "show", "loc": [3,6]}, // 如果不指定动画时间,则立刻显示,否则动画效果逐渐显示,time为动画时间
|
||||
{"type": "show", "loc": [[3,6],[2,9],[1,2]], "time": 500} // 我们也可以同时动画显示多个点。
|
||||
]
|
||||
```
|
||||
|
||||
show事件需要用loc指定目标点的坐标;剩下有两个参数floorId和time。
|
||||
show事件需要用loc指定目标点的坐标,可以简单的写[x,y]代表一个点,也可以写个二维数组[[x1,y1],[x2,y2],...]来同时显示多个点。
|
||||
|
||||
floorId为目标点的楼层,如果不是该楼层的事件(比如4楼小偷开2楼的门)则是必须的,如果是当前楼层可以忽略不写。
|
||||
|
||||
@@ -352,6 +353,8 @@ time为动画效果时间,如果指定了某个大于0的数,则会以动画
|
||||
|
||||
其参数和show也完全相同,loc指定事件的位置,floorId为楼层(同层可忽略),time指定的话事件会以动画效果从有到无慢慢消失。
|
||||
|
||||
loc同样可以简单的写[x,y]表示单个点,或二维数组[[x1,y1],[x2,y2],...]表示多个点。
|
||||
|
||||
但是和show事件有所区别的是:loc选项也可以忽略;如果忽略loc则使当前事件禁用。(即使禁用当前事件,也不会立刻结束当前正在进行的,而是仍然会依次将列表中剩下的事件执行完)
|
||||
|
||||
请注意,一次性事件必须要加 `{"type":"hide"}`,尤其是例如走到某个点,触发对话或机关门(陷阱)这种,否则每次都会重复触发。
|
||||
@@ -360,11 +363,13 @@ NPC对话事件结束后如果需要NPC消失也需要调用 `{"type": "hide"}`
|
||||
|
||||
``` js
|
||||
"x,y": [ // 实际执行的事件列表
|
||||
{"type": "hide", "loc": [3,6], "floorId": "MT1", "time": 500 } // 禁用MT1层[3,6]位置事件,动画500ms
|
||||
{"type": "hide", "loc": [3,6], "time": 500 } // 如果启用目标是当前层,则可以省略floorId项
|
||||
{"type": "hide", "loc": [3,6] } // 如果不指定动画时间,则立刻消失,否则动画效果逐渐消失,time为动画时间
|
||||
{"type": "hide", "time": 500 } // 如果不指定loc选项则默认为当前点, 例如这个就是500ms消失当前对话的NPC
|
||||
{"type": "hide" } // 无动画将当前事件禁用,常常适用于某个空地点(触发陷阱事件、触发机关门这种)
|
||||
{"type": "hide", "loc": [3,6], "floorId": "MT1", "time": 500}, // 禁用MT1层[3,6]位置事件,动画500ms
|
||||
{"type": "hide", "loc": [3,6], "time": 500}, // 如果启用目标是当前层,则可以省略floorId项
|
||||
{"type": "hide", "loc": [3,6]}, // 如果不指定动画时间,则立刻消失,否则动画效果逐渐消失,time为动画时间
|
||||
{"type": "hide", "loc": [[3,6],[2,9],[1,2]], "time": 500}, // 也可以同时指定多个点消失
|
||||
{"type": "hide", "time": 500}, // 如果不指定loc选项则默认为当前点, 例如这个就是500ms消失当前对话的NPC
|
||||
{"type": "hide"}, // 无动画将当前事件禁用,常常适用于某个空地点(触发陷阱事件、触发机关门这种)
|
||||
|
||||
]
|
||||
```
|
||||
|
||||
@@ -749,6 +754,25 @@ move完毕后移动的NPC/怪物一定会消失,只不过可以通过immediate
|
||||
|
||||
该事件会显示失败页面,并重新开始游戏。
|
||||
|
||||
### input:接受用户输入
|
||||
|
||||
使用`{"type": "input"}`可以接受用户的输入。
|
||||
|
||||
``` js
|
||||
"x,y": [ // 实际执行的事件列表
|
||||
{"type": "input", "text": "请输入一个数"}, // 显示一个弹窗让用户输入内容
|
||||
"你刚刚输入的数是${flag:input}" // 输入结果将被赋值为flag:input
|
||||
]
|
||||
```
|
||||
|
||||
text为提示文字,可以在这里给输入提示文字。这里同样可以使用${ }来计算表达式的值。
|
||||
|
||||
当执行input事件时,将显示一个弹窗,并提示用户输入一个内容。
|
||||
|
||||
!> 该事件只能接受非负整数输入,所有非法的输入将全部变成`0`。例如用户在输入框内输入“你好”或者-3,都将实际得到0。
|
||||
|
||||
输入得到的结果将被赋值给flag:input,可以供后续if来进行判断。
|
||||
|
||||
### if: 条件判断
|
||||
|
||||
使用`{"type": "if"}`可以对条件进行判断,根据判断结果将会选择不同的分支执行。
|
||||
|
||||
Reference in new issue
Block a user