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

Project1

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

[推荐问答] 战斗中换人脚本+战斗后调用公共事件 = 出现 走失人口现象

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
跳转到指定楼层
1
发表于 2012-7-17 10:37:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用了战斗换人脚本,发现如果战斗结束调用了公共事件,返回地图后待战角色就没有了。比如队伍人数为4人,战斗角色是2人,战斗后发现整个队伍只剩下2个战斗角色了

战斗中换人
http://rpg.blue/forum.php?mod=viewthread&tid=163143


战斗结束调用公共事件(胜利宣言、得到多物品)
http://www.66rpg.com/articles/3221

Lv1.梦旅人

路人党员

梦石
0
星屑
51
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
2
发表于 2012-7-17 13:37:50 | 只看该作者
估计是battle_end没被调用到,
  1.   def update_phase5
  2.     # 等待计数大于 0 的情况下
  3.     if @phase5_wait_count > 0
  4.       # 减少等待计数
  5.       @phase5_wait_count -= 1
  6.       # 等待计数为 0 的情况下
  7.       if @phase5_wait_count == 0
  8.         # 显示结果窗口
  9.         @result_window.visible = true
  10.         # 清除主回合标志
  11.         $game_temp.battle_main_phase = false
  12.         # 刷新状态窗口
  13.         @status_window.refresh        
  14.         #####################################################################
  15.         #####################################################################
  16.         common_event = $data_common_events[1]
  17.         $game_system.battle_interpreter.setup(common_event.list, 0)
  18.         #####################################################################
  19.         #####################################################################
  20.       end
  21.       battle_end(0)
  22.       return
  23.     end
  24.   end
复制代码
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
3
 楼主| 发表于 2012-7-17 13:49:03 | 只看该作者
英顺的马甲 发表于 2012-7-17 13:37
估计是battle_end没被调用到,

加了一个 battle_end(0),战斗结束后队员是没丢,但公共事件没有执行

点评

我不是给你脚本了么?==  发表于 2012-7-17 15:34
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
4
 楼主| 发表于 2012-7-17 15:57:34 | 只看该作者
英顺的马甲 发表于 2012-7-17 13:37
估计是battle_end没被调用到,

把你的脚本整段插在main之上么?但是战斗结束后我设置的公共事件没有执行啊

回复

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
51
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
5
发表于 2012-7-17 16:19:12 | 只看该作者
算了,是我的错==
  1. class Scene_Battle
  2.   def update_phase5
  3.     # 等待计数大于 0 的情况下
  4.     if @phase5_wait_count > 0
  5.       # 减少等待计数
  6.       @phase5_wait_count -= 1
  7.       # 等待计数为 0 的情况下
  8.       if @phase5_wait_count == 0
  9.         # 显示结果窗口
  10.         @result_window.visible = true
  11.         # 清除主回合标志
  12.         $game_temp.battle_main_phase = false
  13.         # 刷新状态窗口
  14.         @status_window.refresh        
  15.         #####################################################################
  16.         #####################################################################
  17.         common_event = $data_common_events[1]
  18.         $game_system.battle_interpreter.setup(common_event.list, 0)
  19.         #####################################################################
  20.         #####################################################################
  21.       end
  22.       battle_end(0)
  23.       return
  24.     end
  25.   end
  26. end
复制代码
插在Scene_Battle4下面==
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
6
 楼主| 发表于 2012-7-17 16:24:14 | 只看该作者
英顺的马甲 发表于 2012-7-17 16:19
算了,是我的错==插在Scene_Battle4下面==

我确实插在了Scene_Battle4的下面,但是战斗结束直到返回地图,公共事件里的内容还是没执行
回复

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
51
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
7
发表于 2012-7-17 16:31:43 | 只看该作者
木许许 发表于 2012-7-17 16:24
我确实插在了Scene_Battle4的下面,但是战斗结束直到返回地图,公共事件里的内容还是没执行 ...
  1. class Scene_Battle
  2.   def update_phase5
  3.     # 等待计数大于 0 的情况下
  4.     if @phase5_wait_count > 0
  5.       # 减少等待计数
  6.       @phase5_wait_count -= 1
  7.       # 等待计数为 0 的情况下
  8.       if @phase5_wait_count == 0
  9.         # 显示结果窗口
  10.         @result_window.visible = true
  11.         # 清除主回合标志
  12.         $game_temp.battle_main_phase = false
  13.         # 刷新状态窗口
  14.         @status_window.refresh        
  15.         #####################################################################
  16.         #####################################################################
  17.         common_event = $data_common_events[1]
  18.         $game_system.battle_interpreter.setup(common_event.list, 0)
  19.         #####################################################################
  20.         #####################################################################
  21.         # 刷新公共事件直到结束
  22.         while $game_system.battle_interpreter.running?
  23.           Graphics.update
  24.           Input.update
  25.           $game_system.battle_interpreter.update
  26.         end
  27.       end
  28.       battle_end(0)
  29.       return
  30.     end
  31.   end
  32. end
复制代码
本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
8
 楼主| 发表于 2012-7-17 17:22:48 | 只看该作者

返回

本帖最后由 木许许 于 2012-7-17 17:25 编辑
英顺的马甲 发表于 2012-7-17 16:31


还是老样子啊,公共事件没执行。在战斗结束返回地图之前应该出现一句对话并得到物品的啊

点评

你还是把工程发生上来吧,这样我根本无法确认问题所在==  发表于 2012-7-17 20:15
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
9
 楼主| 发表于 2012-7-17 20:41:19 | 只看该作者
英顺的马甲 发表于 2012-7-17 16:31

工程上传了,脚本编辑器里有个叫“插入”的脚本是你给我的,删除它,战斗胜利后1号公共事件会执行,但是待战角色会消失。不删除,战斗胜利后待战角色保留了,但是1号公共事件没有执行

Project2.rar (191.02 KB, 下载次数: 12)
回复

使用道具 举报

Lv1.梦旅人

路人党员

梦石
0
星屑
51
在线时间
2276 小时
注册时间
2010-12-30
帖子
3225
10
发表于 2012-7-17 21:42:48 | 只看该作者
本帖最后由 英顺的马甲 于 2012-7-17 21:48 编辑
木许许 发表于 2012-7-17 20:41
工程上传了,脚本编辑器里有个叫“插入”的脚本是你给我的,删除它,战斗胜利后1号公共事件会执行,但是 ...


搞定
  1. class Scene_Battle
  2.   def update_phase5
  3.     @phase5_wait_count.times{Graphics.update}
  4.     # 显示结果窗口
  5.     @result_window.visible = true
  6.     # 清除主回合标志
  7.     $game_temp.battle_main_phase = false
  8.     # 刷新状态窗口
  9.     @status_window.refresh
  10.     (3 * Graphics.frame_rate).times{Graphics.update} # 暂停三秒
  11.     @result_window.visible = false
  12.     # 设置公共事件
  13.     common_event = $data_common_events[1]
  14.     $game_system.battle_interpreter.setup(common_event.list, 0)
  15.     # 刷新公共事件至结束
  16.     while $game_system.battle_interpreter.running?
  17.       Graphics.update
  18.       Input.update
  19.       $game_system.battle_interpreter.update
  20.       @status_window.update
  21.       @message_window.update
  22.     end
  23.     # 战斗结束
  24.     battle_end(0)
  25.     return
  26.   end
  27. end
复制代码

评分

参与人数 1梦石 +2 收起 理由
hcm + 2 认可答案

查看全部评分

本人擅长XP,如果有脚本或者Ruby方面的问题欢迎发电邮到[email protected]咨询,本人很少检查电邮所以不一定会及时回复,本人不会直接出手解决问题只会提供一个方向,所以谢绝伸手党
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-27 10:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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