设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 266|回复: 9
打印 上一主题 下一主题

[有事请教] 关于自动执行与并行的疑惑

[复制链接]

Lv2.观梦者

梦石
0
星屑
452
在线时间
51 小时
注册时间
2019-10-17
帖子
29
跳转到指定楼层
1
发表于 2024-4-5 21:55:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
刚接触MV不久有点疑惑。请问并行中的指令是不是同时运行的呀?

举个例子:

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

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

关于并行这个我不是很确定,所以想请教一下

Lv2.观梦者

梦石
0
星屑
522
在线时间
272 小时
注册时间
2012-4-8
帖子
173
2
发表于 2024-4-5 22:12:27 | 只看该作者
啊?没能重现。
可以附上demo吗



pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4623
在线时间
639 小时
注册时间
2021-3-24
帖子
501
3
发表于 2024-4-6 00:01:46 | 只看该作者
理论上不存在这种问题,请关掉奇奇怪怪的插件在试试
摸了
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4128
在线时间
630 小时
注册时间
2018-1-16
帖子
132
4
发表于 2024-4-6 10:06:29 | 只看该作者
事件A和B全都是自动执行的情况下,它们是分先后顺序的。
事件A自动执行,事件B并行处理时,在执行A期间,B也会同时进行。
回复 支持 反对

使用道具 举报

Lv6.析梦学徒

老鹰

梦石
40
星屑
33422
在线时间
6553 小时
注册时间
2012-5-26
帖子
3178

极短24评委极短23参与极短22参与极短21评委老司机慢点开短篇十吟唱者组别冠军开拓者剧作品鉴家

5
发表于 2024-4-6 10:53:38 | 只看该作者
一般不会有这种问题
因为并行事件里也是用的同一个对话框,所以自动执行时对话框打开了,并行事件里的显示文字就会等对话框空闲后,再继续它的显示文字,更不可能出现先打开开关了

请确保没有别的并行事件打开了开关
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
452
在线时间
51 小时
注册时间
2019-10-17
帖子
29
6
 楼主| 发表于 2024-4-7 14:19:09 | 只看该作者
本帖最后由 ws6tbz 于 2024-4-7 14:21 编辑

谢谢大家,解决了。

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

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

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

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

后来做了修改:

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

这样就解决了这个问题。

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

请问大家有没有更好的解决方案呢?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
522
在线时间
272 小时
注册时间
2012-4-8
帖子
173
7
发表于 2024-4-7 18:05:31 | 只看该作者
ws6tbz 发表于 2024-4-7 14:19
谢谢大家,解决了。

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

可以附上地图文件或者事件截图吗
pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5449
在线时间
392 小时
注册时间
2021-12-4
帖子
417
8
发表于 2024-4-7 18:49:55 | 只看该作者
ws6tbz 发表于 2024-4-7 14:19
谢谢大家,解决了。

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

【一直按着确定键,依然会快进】哈哈……不得不说mv/mz事件中的按键判定功能做得真的好奇怪,为什么不能是【等待直到按下/松开某键】呢,比如document.body.onkeyup函数这种。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
522
在线时间
272 小时
注册时间
2012-4-8
帖子
173
9
发表于 2024-4-7 19:46:19 | 只看该作者
小秋橙 发表于 2024-4-7 18:49
【一直按着确定键,依然会快进】哈哈……不得不说mv/mz事件中的按键判定功能做得真的好奇怪,为什么不能 ...

可能是制作组觉得 repeat 的情况更多吧
pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
522
在线时间
272 小时
注册时间
2012-4-8
帖子
173
10
发表于 2024-4-7 19:48:10 | 只看该作者
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. };
复制代码
pokemon 和 digimon 正在路上
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-3 05:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表