Project1

标题: 关于自动执行与并行的疑惑 [打印本页]

作者: ws6tbz    时间: 2024-4-5 21:55
标题: 关于自动执行与并行的疑惑
刚接触MV不久有点疑惑。请问并行中的指令是不是同时运行的呀?

举个例子:

事件1,自动运行。里面包含一段对话,然后是开启开关A的指令。根据我的测试,当对话出现,并且我点击确定/取消,使对话关闭之后,开关A才会打开。

事件2,并行处理。内容跟上面一样。但是当对话出现时,开关就同时打开了。

关于并行这个我不是很确定,所以想请教一下
作者: 505681468    时间: 2024-4-5 22:12
啊?没能重现。
可以附上demo吗




作者: 清澈淌漾    时间: 2024-4-6 00:01
理论上不存在这种问题,请关掉奇奇怪怪的插件在试试
作者: shantianzu    时间: 2024-4-6 10:06
事件A和B全都是自动执行的情况下,它们是分先后顺序的。
事件A自动执行,事件B并行处理时,在执行A期间,B也会同时进行。
作者: 百里_飞柳    时间: 2024-4-6 10:53
一般不会有这种问题
因为并行事件里也是用的同一个对话框,所以自动执行时对话框打开了,并行事件里的显示文字就会等对话框空闲后,再继续它的显示文字,更不可能出现先打开开关了

请确保没有别的并行事件打开了开关
作者: ws6tbz    时间: 2024-4-7 14:19
本帖最后由 ws6tbz 于 2024-4-7 14:21 编辑

谢谢大家,解决了。

由于我不太理解引擎原理,所以起初的并行处理事件大致思路是这样:

显示文字:“准备” -> 检测是否按下确定键,当按下时 -> 显示图片 -> 检测是否按下确定键,当按下时 -> 显示文字:"成功”

结果导致第一段文字出现后,我按下确定键,马上就快进到最后一步了。

我以为是并行处理导致的,后来复盘了一下,大概是按下确定键之后,引擎一直判定确定键被按下了,所以快速处理了后面的指令

后来做了修改:

显示文字:“准备” -> 等待30帧 -> 显示图片 -> 检测是否按下确定键,当按下时 -> 显示文字:"成功”

这样就解决了这个问题。

不过说实话,这也有个问题,如果我故意一直按着确定键,依然会快进到最后一步。

请问大家有没有更好的解决方案呢?
作者: 505681468    时间: 2024-4-7 18:05
ws6tbz 发表于 2024-4-7 14:19
谢谢大家,解决了。

由于我不太理解引擎原理,所以起初的并行处理事件大致思路是这样:

可以附上地图文件或者事件截图吗
作者: 小秋橙    时间: 2024-4-7 18:49
ws6tbz 发表于 2024-4-7 14:19
谢谢大家,解决了。

由于我不太理解引擎原理,所以起初的并行处理事件大致思路是这样:

【一直按着确定键,依然会快进】哈哈……不得不说mv/mz事件中的按键判定功能做得真的好奇怪,为什么不能是【等待直到按下/松开某键】呢,比如document.body.onkeyup函数这种。
作者: 505681468    时间: 2024-4-7 19:46
小秋橙 发表于 2024-4-7 18:49
【一直按着确定键,依然会快进】哈哈……不得不说mv/mz事件中的按键判定功能做得真的好奇怪,为什么不能 ...

可能是制作组觉得 repeat 的情况更多吧

作者: 505681468    时间: 2024-4-7 19:48
ws6tbz 发表于 2024-4-7 14:19
谢谢大家,解决了。

由于我不太理解引擎原理,所以起初的并行处理事件大致思路是这样:

按8L的思路的话,把长按一直触发消息改成按下只触发一次

原来的 msg 窗口是这样的
  1. Window_Message.prototype.isTriggered = function() {
  2.     return (Input.isRepeated('ok') || Input.isRepeated('cancel') ||
  3.             TouchInput.isRepeated());
  4. };
复制代码


如果是改成 按下(Triggered) ,应该是这样的
  1. Window_Message.prototype.isTriggered = function() {
  2.     return (Input.isTriggered('ok') || Input.isTriggered('cancel') ||
  3.             TouchInput.isTriggered());
  4. };
复制代码





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