赞 | 1 |
VIP | 0 |
好人卡 | 0 |
积分 | 7 |
经验 | 0 |
最后登录 | 2024-5-31 |
在线时间 | 13 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 731
- 在线时间
- 13 小时
- 注册时间
- 2016-11-5
- 帖子
- 12
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
这顺序执行的指令还能出并行错误,我是真没想到2333333
先看这两组事件命令,感觉毫无区别对吧?
(1)
场所移动:{更改操作角色-地图ID} ({更改操作角色-事件X},{更改操作角色-事件Y})(淡入淡出:无)
脚本:$gameMap.event($gameVariables.value(30)).setDirection($gameVariables.value(23))
(2)
脚本:$gameMap.event($gameVariables.value(30)).setDirection($gameVariables.value(23))
场所移动:{更改操作角色-地图ID} ({更改操作角色-事件X},{更改操作角色-事件Y})(淡入淡出:无)
然而实际执行就是会有问题……
目前在做一个小队合作冒险的事件+脚本实现,功能是:
小队中共有三个角色,编号分别为1、2、3。
当输入键盘按键1、2、3时,将主角切换为对应编号的角色,移动到那个角色所在的位置,同时把一个和主角原本扮演的角色长得一样的事件A挪过来,占用主角原本所在的位置。
换句话说,可以实现按哪个键就操作哪个角色的功能,未被操作的角色在原地待机。
为了实现最好的模拟效果,需要在换人时调整玩家和事件的朝向,用事件实现起来过于屎山,我是用脚本实现的……
然后,问题就来了。
上面那两组命令,重点是那个脚本,效果是把事件A的朝向调整到与主角相同。
然而,(1)命令执行是没错的,(2)命令执行后,角色的朝向却永远都是朝右……不带变的……
具体实现效果可以看这两张图。
(1)
(2)
就很囧。
然后我是怎么发现这问题的呢?
其实一开始以为是事件设定成固定朝向的了,信心满满调了下,差点没气炸。
然后想着可能是变量设错了什么的,插了个文本框显示一下变量23(即事件A预定的朝向)。
结果发现:有文本框会延时一下,就工作正常,去掉文本框,问题立刻重新出现。
233333333333333333333333
于是想了想,不就是缺个延时的问题嘛,就把脚本操作放到了原本就会卡一下的场所移动命令后面。
结果果然正常了233333333333333333333333
怎么我这么菜的操作都能探到引擎的底,哭了……
话说,想问大佬一句,这个大概是并行或者说时序的问题,到底是JS语言的问题、RMMZ的问题还是并行公共事件的问题?
我能想到的也就这三个问题源头了。
反正解决了就行吧,虽然解决方案极度丑陋23333333333 |
|