Project1

标题: 关于在脚本页使用Game_Interpreter来灵活地执行事件指令 [打印本页]

作者: BLUEONE    时间: 2022-7-10 15:51
标题: 关于在脚本页使用Game_Interpreter来灵活地执行事件指令
本帖最后由 BLUEONE 于 2022-7-10 15:54 编辑

我非常喜欢乱搞,因为总能实现一些特殊的功能,但是...
我想用代码实现执行事件指令,而且还是并行处理。如图1
通过修改 @params然后执行对应的函数(我整的是command_203(设置事件的位置))
第一遍的时候正常执行 事件位置移动到params设置的对应坐标,但第二次就会报错 如图2,说 字符串 不能 转为 整数
经过反复坐牢测试发现即使没有command_203也会报同样的错,而出错的正是为换行的 "+"号!
请各位师傅多多指教,让其能够并行反复处理!正好初步了解一下指令编译器的过程。
感谢。

屏幕截图 2022-07-10 153530.jpeg (6.64 KB, 下载次数: 24)

图1

图1

屏幕截图 2022-07-10 154031.jpeg (35.89 KB, 下载次数: 28)

图2

图2

屏幕截图 2022-07-10 155229.jpeg (51.89 KB, 下载次数: 31)

脚本编辑器里面的 设置事件位置

脚本编辑器里面的 设置事件位置

作者: 喵呜喵5    时间: 2022-7-10 17:52
本帖最后由 喵呜喵5 于 2022-7-10 17:57 编辑

Game_Interpreter 第 195 行
@params 是 command.parameters 的引用,所以你直接修改的话,会把原本这条指令对应的 command.parameters 给改掉了

执行一次这段代码后,原本执行脚本这条指令的参数0就被你修改成数字0了,
下一次执行时,1406行想要获取脚本内容时取的参数0从原本你在编辑器中填写的字符串变成了数字0,于是就报错了

解决办法很简单,在代码开头执行一个 @params = [] 解除 @params 和 command.parameters 的关系即可

作者: 百里_飞柳    时间: 2022-7-10 18:46
题外话,突然想到自己的事件执行扩展的帖子,感觉完全可以用我的事件消息来制作任意时刻触发的并行执行效果()




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1