Project1

标题: 玩家全部死亡后 怎么才能执行公共事件 [打印本页]

作者: j296196585    时间: 2016-12-4 02:21
标题: 玩家全部死亡后 怎么才能执行公共事件
如题

玩家全部死亡后 怎么才能执行公共事件 而不是结束游戏
RUBY 代码复制
  1. #==============================================================================
  2. # ■ Scene_Gameover
  3. #------------------------------------------------------------------------------
  4. #  处理游戏结束画面的类。
  5. #==============================================================================
  6.  
  7. class Scene_Gameover
  8.   #--------------------------------------------------------------------------
  9.   # ● 主处理
  10.   #--------------------------------------------------------------------------
  11.   def main
  12.     # 生成游戏结束图形
  13.     @sprite = Sprite.new
  14.     @sprite.bitmap = RPG::Cache.gameover($data_system.gameover_name)
  15.     # 停止 BGM、BGS
  16.     $game_system.bgm_play(nil)
  17.     $game_system.bgs_play(nil)
  18.     # 演奏游戏结束 ME
  19.     $game_system.me_play($data_system.gameover_me)
  20.     # 执行过渡
  21.     Graphics.transition(120)
  22.     # 主循环
  23.     loop do
  24.       # 刷新游戏画面
  25.       Graphics.update
  26.       # 刷新输入信息
  27.       Input.update
  28.       # 刷新画面情报
  29.       update
  30.       # 如果画面被切换的话就中断循环
  31.       if $scene != self
  32.         break
  33.       end
  34.     end
  35.     # 准备过渡
  36.     Graphics.freeze
  37.     # 释放游戏结束图形
  38.     @sprite.bitmap.dispose
  39.     @sprite.dispose
  40.     # 执行过度
  41.     Graphics.transition(40)
  42.     # 准备过渡
  43.     Graphics.freeze
  44.     # 战斗测试的情况下
  45.     if $BTEST
  46.       $scene = nil
  47.     end
  48.   end
  49.   #--------------------------------------------------------------------------
  50.   # ● 刷新画面
  51.   #--------------------------------------------------------------------------
  52.   def update
  53.     # 按下 C 键的情况下
  54.     if Input.trigger?(Input::C)
  55.       # 切换到标题画面
  56.       $scene = Scene_Title.new
  57.     end
  58.   end
  59. end


作者: 2357691704    时间: 2016-12-4 11:38
给。看图,看行数。

战斗失败执行公共事件.PNG (56.19 KB, 下载次数: 11)

战斗失败执行公共事件.PNG

地图全灭执行公共事件.PNG (57.46 KB, 下载次数: 11)

地图全灭执行公共事件.PNG

作者: j296196585    时间: 2016-12-4 13:40
本帖最后由 j296196585 于 2016-12-4 13:51 编辑

RUBY 代码复制
  1. # 如果调用的公共事件被预约的情况下
  2.     if $game_temp.common_event_id > 0
  3.       # 设置事件
  4.       setup($data_common_events[$game_temp.common_event_id].list, 0)
  5.       # 解除预约
  6.       $game_temp.common_event_id = 0
  7.       return
  8.     end

360截图20161204135541799.jpg (25.7 KB, 下载次数: 0)

360截图20161204135541799.jpg

作者: 2357691704    时间: 2016-12-10 12:48
j296196585 发表于 2016-12-4 13:40
# 如果调用的公共事件被预约的情况下
    if $game_temp.common_event_id > 0
      # 设置事件

不好意思,不是经常上线。

2楼的死亡后调用公共事件是没有问题的(已多次测试,你也可以新建一个工程试试)。你这应该是其他问题导致的(例如脚本冲突,或者你设置的那个公共事件里面有问题),这要结合你的工程才能解决。




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