查看: 2207|回复: 3

[已经过期] 改版后的fuki对话脚本与并行处理事件有冲突

  [复制链接]
梦石
0
星屑
509
在线时间
26 小时
注册时间
2010-12-30
回帖
2
发表于 2011-1-5 09:46:12 | 显示全部楼层 |阅读模式

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

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

×
在地图上设置一个转职的并行处理事件,达到一定级别就可以转换职业,但是发现当使用chat(0,"name”)脚本语句时,对话就无法继续下去,人物也是处于事件之中无法动弹,像一个死循环,游戏音乐正常播放,如果不使用脚本语句,只显示文章,就会正常执行,我特地查看了增强对话脚本的所有内容,但是脚本内容太多,有些地方看不明白,没找出冲突的原因,请高人指点。

精灵族の天使<

梦石
0
星屑
1712
在线时间
3039 小时
注册时间
2007-3-16
回帖
33092

开拓者贵宾

发表于 2011-1-5 11:07:35 | 显示全部楼层
执行脚本的时候请用等待帧,否则事件来不及执行……达到一定级别就可以转换职业这个东西,用不着并行事件——其实你只需要每次升级的时候(或者事件改变等级的时候)判定一次就可以了。


精灵使者于2011-1-5 11:10补充以下内容:
执行脚本的时候请用等待帧,否则事件来不及执行……达到一定级别就可以转换职业这个东西,用不着并行事件——其实你只需要每次升级的时候(或者事件改变等级的时候)判定一次就可以了。
回复

使用道具 举报

梦石
0
星屑
509
在线时间
26 小时
注册时间
2010-12-30
回帖
2
 楼主| 发表于 2011-1-5 11:55:03 | 显示全部楼层
精灵使者 发表于 2011-1-5 11:07
执行脚本的时候请用等待帧,否则事件来不及执行……达到一定级别就可以转换职业这个东西,用不着并行事件— ...

每次使用脚本都使用了等待20帧,我现在去掉了并行处理,改成直接修改战斗完成后的脚本了,在Scene_Battle1下面的$scene = Scene_Map.new语句后,加上了if语句,进行判断,可以很好的进行转职了,只是还有个问题,就是在这里面的显示文章:
$game_temp.message_text和$game_system.message_position 不能使用,很奇怪,可能是某些很战斗相关的脚本中,这两个变量没有定义,但是在最开始的Game_system和Game_Temp类中已经定义了。哎!接触rpg太晚了,上周才知道有RMXP这种工具,目前对整个游戏脚本运行流程很不熟悉,总是用VB和C++的编程思路去编制脚本和事件。要是rgss有个类似VB的Timer就好了,每隔一段时间刷新下人物属性,又不是很占内存。

点评

那些东西只有在Scene_map,也就是地图下才有用。 建议升级以后使用个开关来进行判定——开关控制自动事件完成升级显示,最后关闭开关  发表于 2011-1-5 13:29
回复

使用道具 举报

梦石
0
星屑
50
在线时间
1 小时
注册时间
2011-1-5
回帖
5
发表于 2011-1-5 17:33:38 | 显示全部楼层
我是菜鸟,帮忙顶一下
w
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部