查看: 1762|回复: 8

[已经解决] 關於回合制戰鬥結束後的情況

[复制链接]
梦石
0
星屑
50
在线时间
22 小时
注册时间
2016-4-23
回帖
11
发表于 2016-8-25 22:52:15 | 显示全部楼层 |阅读模式

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

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

×
我想讓在戰鬥結束後自動跳過戰況彙報,因為一般都是要按C才能立即結束畫面。
梦石
0
星屑
50
在线时间
22 小时
注册时间
2016-4-23
回帖
11
 楼主| 发表于 2016-8-25 22:54:12 | 显示全部楼层
用的默認腳本的Scene_Battle 2
應該是以下這段,怎麼讓它不用按C也繼續呢?
# ● 画面更新 (结束战斗回合)
  #--------------------------------------------------------------------------
  def update_phase5
    # 等待计数大于 0 的情况下
    if @phase5_wait_count > 0
      # 减少等待计数
      @phase5_wait_count -= 1
      # 等待计数为 0 的情况下
      if @phase5_wait_count == 0
        # 显示结果窗口
        @result_window.visible = true
        # 清除主回合标志
        $game_temp.battle_main_phase = false
        # 刷新状态窗口
        @status_window.refresh
      end
      return
    end
    # 按下 C 键的情况下
    if Input.trigger?(Input::C)
      # 战斗结束
      battle_end(0)
    end
  end
end
回复

使用道具 举报

梦石
0
星屑
125
在线时间
171 小时
注册时间
2014-4-14
回帖
135
发表于 2016-8-26 05:01:00 | 显示全部楼层
给,#z1、#z2、#z3 是为了防止秒退(即战斗结果窗口一出现就退出战斗。)
[pre lang="ruby"]# 生成战斗结果窗口
    @result_window = Window_BattleResult.new(exp, gold, treasures)
    # 设置等待计数
    @phase5_wait_count = 140 #z1
  end
  #--------------------------------------------------------------------------
  # ● 画面更新 (结束战斗回合)
  #--------------------------------------------------------------------------
  def update_phase5
     # 等待计数大于 0 的情况下
   if @phase5_wait_count > 0
      # 减少等待计数
      @phase5_wait_count -= 1
         # 等待计数为 0 的情况下
      if @phase5_wait_count == 80 #z2
        # 显示结果窗口
         @result_window.visible = true
        # 清除主回合标志
        $game_temp.battle_main_phase = false
        # 刷新状态窗口
        @status_window.refresh
        end
      return
    end
    if @phase5_wait_count == 0 #z3
    # 按下 C 键的情况下
   # if Input.trigger?(Input::C)
      # 战斗结束
      battle_end(0)
    end
  end
end
[/pre]

点评

謝謝大神,可以了,不過我新加了櫻雅在土的升級能力表腳本,效果覆蓋過去了,那個應該怎麼弄呢?  发表于 2016-8-26 08:19

评分

参与人数 1星屑 +50 梦石 +1 收起 理由
RyanBern + 50 + 1 认可答案

查看全部评分

Vanyogin
回复

使用道具 举报

梦石
0
星屑
50
在线时间
22 小时
注册时间
2016-4-23
回帖
11
 楼主| 发表于 2016-8-26 08:20:46 | 显示全部楼层
本帖最后由 RyanBern 于 2016-8-26 09:42 编辑
2357691704 发表于 2016-8-26 05:01
给,#z1、#z2、#z3 是为了防止秒退(即战斗结果窗口一出现就退出战斗。)
# 生成战斗结果窗口
    @result_ ...


這是升級能力表
[pre lang="Ruby"]
#===============================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#===============================================================
# ———————————————————————————
# ▼▲▼ XRXS_BP10. LEVEL UP!能力上昇表示ウィンドウ plus ▼▲▼
# by 桜雅 在土
#——以下3个如果需要修改,直接输入文件名即可
$data_system_level_up_se = "" #升级时的音效设置
$data_system_level_up_me = "Audio/ME/战斗胜利" # 升级时播放的ME
$data_system_skilllearn_se = "Audio/SE/106-Heal02" # 学会特技时播放的声效。
#=============================================================
# ■ Window_LevelUpWindow
#-------------------------------------------------------------------
#  バトル終了時、レベルアップした場合にステータスを表示するウィンドウです。
#=============================================================
class Window_LevelUpWindow < Window_Base
   #---------------------------------------------------------
   # ● オブジェクト初期化
   #------------------------------------------------------
   def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
      super(0, 128, 160, 192)
      self.contents = Bitmap.new(width - 32, height - 32)
      self.visible = false
      self.back_opacity = 160
      refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
   end
   #-----------------------------------------------------------
   # ● リフレッシュ
   #---------------------------------------------------------
   def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
      self.contents.clear
      self.contents.font.color = system_color
      self.contents.font.size = 15
      self.contents.draw_text( 0, 0, 160, 24, "修为上升")
      self.contents.font.size = 18
      self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
      self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
      self.contents.font.size = 14
      self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
      self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
      self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
      self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
      self.contents.draw_text(92, 0, 128, 24, "→")
      self.contents.draw_text(76, 28, 128, 24, "=")
      self.contents.draw_text(76, 50, 128, 24, "=")
      self.contents.draw_text(76, 72, 128, 24, "=")
      self.contents.draw_text(76, 94, 128, 24, "=")
      self.contents.draw_text(76, 116, 128, 24, "=")
      self.contents.draw_text(76, 138, 128, 24, "=")
      self.contents.font.color = normal_color
      self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
      self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
      self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
      self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
      self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
      self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
      self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
      self.contents.font.size = 20
      self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
      self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
      self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
      self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
      self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
      self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
      self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
      actor.hp += (actor.maxhp-actor.hp)
      actor.sp += (actor.maxsp-actor.sp)
   end
end
#===========================================================
# ■ Window_SkillLearning
#------------------------------------------------------------------------------
#  レベルアップ時などにスキルを習得した場合にそれを表示するウィンドウです。
#=============================================================
class Window_SkillLearning < Window_Base
   #-------------------------------------------------------------
   # ● 公開インスタンス変数
   #-----------------------------------------------------------
   attr_reader :learned # スキルを習得したかどうか
   #----------------------------------------------------------
   # ● オブジェクト初期化
   #----------------------------------------------------------
   def initialize(class_id, last_lv, now_lv)
      super(160, 64, 320, 64)
      self.contents = Bitmap.new(width - 32, height - 28) # わざと▽を表示
      self.visible = false
      self.back_opacity = 160
      @learned = false
      refresh(class_id, last_lv, now_lv)
   end
   #------------------------------------------------------------
   # ● リフレッシュ
   #-------------------------------------------------------
   def refresh(class_id, last_lv, now_lv)
      for i in 0...$data_classes[class_id].learnings.size
         learn_lv = $data_classes[class_id].learnings.level
         # 今回のレベルアップ範囲で習得するスキルの場合
         if learn_lv > last_lv and learn_lv <= now_lv
            @learned = true
            # SEの再生
            if $data_system_skilllearn_se != ""
               Audio.se_play($data_system_skilllearn_se)
            end
            # 各描写
            skill_name = $data_skills[$data_classes[class_id].learnings.skill_id].name
            self.contents.clear
            self.contents.font.color = text_color(0)
            self.contents.draw_text(0,0,448,32, "学会招式:"+skill_name)
            self.contents.font.color = text_color(6)
            #self.contents.draw_text(0,0,448,32, "          "+skill_name)
            #self.contents.font.color = text_color(0)
            self.visible = true
            # メインループ
            loop do
               # ゲーム画面を更新
               Graphics.update
               # 入力情報を更新
               Input.update
               # フレーム更新
               update
               # 画面が切り替わったらループを中断
               if @learned == false
                  break
               end
            end
            # メインループここまで
         end
      end
   end
   #-----------------------------------------------------------
   # ● フレーム更新
   #------------------------------------------------------------
   def update
      # C ボタンが押された場合
      if Input.trigger?(Input::C)
         @learned = false
         self.visible = false
      end
   end
end
#==================================================================
# ■ Window_BattleStatus
#==================================================================
class Window_BattleStatus < Window_Base
   #---------------------------------------------------------
   # ● 追加?公開インスタンス変数
   #-------------------------------------------------------
   attr_accessor :level_up_flags # LEVEL UP!表示
end
#===============================================================
# ■ Game_Battler
#===============================================================
class Game_Battler
   #--------------------------------------------------------------
   # ● 追加?公開インスタンス変数
   #----------------------------------------------------------
   attr_accessor :exp_gain_ban # EXP取得一時禁止
   #------------------------------------------------------
   # ● オブジェクト初期化
   #-----------------------------------------------------
   alias xrxs_bp10_initialize initialize
   def initialize
      @exp_gain_ban = false
      xrxs_bp10_initialize
   end
   #-------------------------------------------------------
   # ● ステート [EXP を獲得できない] 判定
   #-----------------------------------------------------
   alias xrxs_bp10_cant_get_exp? cant_get_exp?
   def cant_get_exp?
      if @exp_gain_ban == true
         return true
      else
         return xrxs_bp10_cant_get_exp?
      end
   end
end
#==============================================================
# ■ Scene_Battle
#==============================================================
class Scene_Battle
   #--------------------------------------------------
   # ● アフターバトルフェーズ開始
   #--------------------------------------------------
   alias xrxs_bp10_start_phase5 start_phase5
   def start_phase5
      # EXP 獲得禁止
      for i in 0...$game_party.actors.size
         $game_party.actors.exp_gain_ban = true
      end
      xrxs_bp10_start_phase5
      # EXP 獲得禁止の解除
      for i in 0...$game_party.actors.size
         $game_party.actors.exp_gain_ban = false
      end


      # EXPを初期化
      @exp_gained = 0
      for enemy in $game_troop.enemies
         # 獲得 EXPを追加 # エネミーが隠れ状態でない場合
        
      # 設定
      @phase5_step = 1
      @exp_gain_actor = -1
      # リザルトウィンドウを表示
      @result_window.visible = true
   end
   #----------------------------------------------------------
   # ● フレーム更新 (アフターバトルフェーズ)
   #--------------------------------------------------------
   #alias xrxs_bp10_update_phase5 update_phase5
   def update_phase5
      case @phase5_step
      when 1
         update_phase5_step1
      else
         # ウェイトカウントが 0 より大きい場合
         if @phase5_wait_count > 0
            # ウェイトカウントを減らす
            @phase5_wait_count -= 1
            # ウェイトカウントが 0 になった場合
            if @phase5_wait_count == 80
               # リザルトウィンドウを表示
               @result_window.visible = true
               # メインフェーズフラグをクリア
               $game_temp.battle_main_phase = false
               # ステータスウィンドウをリフレッシュ
               @status_window.refresh
            end
            return
         end
    if @phase5_wait_count == 0
      # 战斗结束
      battle_end(0)
    end
         # レベルアップしている場合は強制バトル終了
         battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
      end
   end
   #-----------------------------------------------------------
   # ● フレーム更新 (アフターバトルフェーズ 1 : レベルアップ)
   #-----------------------------------------------------------
   def update_phase5_step1
      # C ボタンが押された場合
      if Input.trigger?(Input::C)
         # ウィンドウを閉じて次のアクターへ
         @levelup_window.visible = false if @levelup_window != nil
         @status_window.level_up_flags[@exp_gain_actor] = false
         phase5_next_levelup
      end
   end
   #---------------------------------------------------------
   # ● 次のアクターのレベルアップ表示へ
   #---------------------------------------------------------
   def phase5_next_levelup
      begin
         # 次のアクターへ
         @exp_gain_actor += 1
         # 最後のアクターの場合
         if @exp_gain_actor >= $game_party.actors.size
            # アフターバトルフェーズ開始
            @phase5_step = 0
            return
         end
         actor = $game_party.actors[@exp_gain_actor]
         if actor.cant_get_exp? == false
            # 現在の能力値を保持
            last_level = actor.level
            last_maxhp = actor.maxhp
            last_maxsp = actor.maxsp
            last_str = actor.str
            last_dex = actor.dex
            last_agi = actor.agi
            last_int = actor.int
            # 経験値取得の決定的瞬間(謎
            actor.exp += @exp_gained
            # 判定
            if actor.level > last_level
               # レベルアップした場合
               @status_window.level_up(@exp_gain_actor)
               # リザルトウィンドウを消す
               @result_window.visible = false
               # SEの再生
               if $data_system_level_up_se != ""
                  Audio.se_play($data_system_level_up_se)
               end
               # MEの再生
               if $data_system_level_up_me != ""
                  Audio.me_stop
                  Audio.me_play($data_system_level_up_me)
               end
               # LEVEL-UPウィンドウの設定
               @levelup_window = Window_LevelUpWindow.new(actor, last_level,
               actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
               actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
               @levelup_window.x = 160 * @exp_gain_actor
               @levelup_window.visible = true
               # ステータスウィンドウをリフレッシュ
               @status_window.refresh
               # スキル習得ウィンドウの設定
               @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level)
               # ウェイトカウントを設定
               @phase5_wait_count = 40
               @phase5_step = 1
               return
            end
         end
      end until false
   end
end
#=============================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#=============================================================
[/pre]

点评

是不用[pre]代码框的锅,里面有[i]被论坛解析成了“斜体”  发表于 2016-8-26 09:43
你确定这脚本没问题?我测试会错误。你把升级脚本(用帖子的)复制去一个新工程试试(把怪物的经验加高,测试战斗结束升级界面面和习得技能...  发表于 2016-8-26 09:40
回复

使用道具 举报

梦石
0
星屑
125
在线时间
171 小时
注册时间
2014-4-14
回帖
135
发表于 2016-8-26 12:43:35 | 显示全部楼层
本帖最后由 2357691704 于 2016-8-26 12:46 编辑

弄好了。
sence_battle2的#z 建议改回100。
# 生成战斗结果窗口
    @result_window = Window_BattleResult.new(exp, gold, treasures)
    # 设置等待计数
    @phase5_wait_count = 100  #z
  end

升级提示脚本修改[pre lang="ruby"]#===============================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#===============================================================
# ———————————————————————————
# ▼▲▼ XRXS_BP10. LEVEL UP!能力上昇表示ウィンドウ plus ▼▲▼
# by 桜雅 在土
#——以下3个如果需要修改,直接输入文件名即可
$data_system_level_up_se = "" #升级时的音效设置
$data_system_level_up_me = "Audio/ME/战斗胜利" # 升级时播放的ME
$data_system_skilllearn_se = "Audio/SE/106-Heal02" # 学会特技时播放的声效。
#=============================================================
# ■ Window_LevelUpWindow
#-------------------------------------------------------------------
#  バトル終了時、レベルアップした場合にステータスを表示するウィンドウです。
#=============================================================
class Window_LevelUpWindow < Window_Base
   #---------------------------------------------------------
   # ● オブジェクト初期化
   #------------------------------------------------------
   def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
      super(0, 128, 160, 192)
      self.contents = Bitmap.new(width - 32, height - 32)
      self.visible = false
      self.back_opacity = 160
      refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
   end
   #-----------------------------------------------------------
   # ● リフレッシュ
   #---------------------------------------------------------
   def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
      self.contents.clear
      self.contents.font.color = system_color
      self.contents.font.size = 15
      self.contents.draw_text( 0, 0, 160, 24, "修为上升")
      self.contents.font.size = 18
      self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
      self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
      self.contents.font.size = 14
      self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
      self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
      self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
      self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
      self.contents.draw_text(92, 0, 128, 24, "→")
      self.contents.draw_text(76, 28, 128, 24, "=")
      self.contents.draw_text(76, 50, 128, 24, "=")
      self.contents.draw_text(76, 72, 128, 24, "=")
      self.contents.draw_text(76, 94, 128, 24, "=")
      self.contents.draw_text(76, 116, 128, 24, "=")
      self.contents.draw_text(76, 138, 128, 24, "=")
      self.contents.font.color = normal_color
      self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
      self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
      self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
      self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
      self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
      self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
      self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
      self.contents.font.size = 20
      self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
      self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
      self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
      self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
      self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
      self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
      self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
      actor.hp += (actor.maxhp-actor.hp)
      actor.sp += (actor.maxsp-actor.sp)
   end
end
#===========================================================
# ■ Window_SkillLearning
#------------------------------------------------------------------------------
#  レベルアップ時などにスキルを習得した場合にそれを表示するウィンドウです。
#=============================================================
class Window_SkillLearning < Window_Base
   #-------------------------------------------------------------
   # ● 公開インスタンス変数
   #-----------------------------------------------------------
   attr_reader :learned # スキルを習得したかどうか
   #----------------------------------------------------------
   # ● オブジェクト初期化
   #----------------------------------------------------------
   def initialize(class_id, last_lv, now_lv)
      super(160, 64, 320, 64)
      self.contents = Bitmap.new(width - 32, height - 28) # わざと▽を表示
      self.visible = false
      self.back_opacity = 160
      @learned = false
      refresh(class_id, last_lv, now_lv)
   end
   #------------------------------------------------------------
   # ● リフレッシュ
   #-------------------------------------------------------
   def refresh(class_id, last_lv, now_lv)
      for i in 0...$data_classes[class_id].learnings.size
         learn_lv = $data_classes[class_id].learnings.level
         # 今回のレベルアップ範囲で習得するスキルの場合
         if learn_lv > last_lv and learn_lv <= now_lv
            @learned = true
            # SEの再生
            if $data_system_skilllearn_se != ""
               Audio.se_play($data_system_skilllearn_se)
            end
            # 各描写
            skill_name = $data_skills[$data_classes[class_id].learnings.skill_id].name
            self.contents.clear
            self.contents.font.color = text_color(0)
            self.contents.draw_text(0,0,448,32, "学会招式:"+skill_name)
            self.contents.font.color = text_color(6)
            #self.contents.draw_text(0,0,448,32, "          "+skill_name)
            #self.contents.font.color = text_color(0)
            self.visible = true
            # メインループ
            loop do
               # ゲーム画面を更新
               Graphics.update
               # 入力情報を更新
               Input.update
               # フレーム更新
               update
               # 画面が切り替わったらループを中断
               if @learned == false
                  break
               end
            end
            # メインループここまで
         end
      end
   end
   #-----------------------------------------------------------
   # ● フレーム更新
   #------------------------------------------------------------
   def update
      # C ボタンが押された場合
     if Input.trigger?(Input::C)
         @learned = false
         self.visible = false
      end
   end
end
#==================================================================
# ■ Window_BattleStatus
#==================================================================
class Window_BattleStatus < Window_Base
   #---------------------------------------------------------
   # ● 追加?公開インスタンス変数
   #-------------------------------------------------------
   attr_accessor :level_up_flags # LEVEL UP!表示
end
#===============================================================
# ■ Game_Battler
#===============================================================
class Game_Battler
   #--------------------------------------------------------------
   # ● 追加?公開インスタンス変数
   #----------------------------------------------------------
   attr_accessor :exp_gain_ban # EXP取得一時禁止
   #------------------------------------------------------
   # ● オブジェクト初期化
   #-----------------------------------------------------
   alias xrxs_bp10_initialize initialize
   def initialize
      @exp_gain_ban = false
      xrxs_bp10_initialize
   end
   #-------------------------------------------------------
   # ● ステート [EXP を獲得できない] 判定
   #-----------------------------------------------------
   alias xrxs_bp10_cant_get_exp? cant_get_exp?
   def cant_get_exp?
      if @exp_gain_ban == true
         return true
      else
         return xrxs_bp10_cant_get_exp?
      end
   end
end
#==============================================================
# ■ Scene_Battle
#==============================================================
class Scene_Battle
   #--------------------------------------------------
   # ● アフターバトルフェーズ開始
   #--------------------------------------------------
   alias xrxs_bp10_start_phase5 start_phase5
  def start_phase5
    # EXP 獲得禁止
    for i in 0...$game_party.actors.size
      $game_party.actors.exp_gain_ban = true
    end
    xrxs_bp10_start_phase5
    # EXP 獲得禁止の解除
    for i in 0...$game_party.actors.size
      $game_party.actors.exp_gain_ban = false
    end
    # EXPを初期化
    @exp_gained = 0
    for enemy in $game_troop.enemies
      # 獲得 EXPを追加 # エネミーが隠れ状態でない場合
      @exp_gained += enemy.exp if not enemy.hidden
    end
    # 設定
    @phase5_step = 1
    @exp_gain_actor = -1
    # リザルトウィンドウを表示
    @result_window.visible = true
  end
   #----------------------------------------------------------
   # ● フレーム更新 (アフターバトルフェーズ)
   #--------------------------------------------------------
   #alias xrxs_bp10_update_phase5 update_phase5
   def update_phase5
      case @phase5_step
      when 1
        ############################zzzzzzzzzzzzzzzzzz
        if @phase5_wait_count > 0
            # ウェイトカウントを減らす
            @phase5_wait_count -= 1
        if @phase5_wait_count < 61 #等待时间80-60=20##zzzzz
            #####结果窗口消失
          @result_window.visible = false
      end
    end
    ############################zzzzzzzzzzzzzzzzzzzzzzz
    update_phase5_step1
      else
         # ウェイトカウントが 0 より大きい場合
         if @phase5_wait_count > 0
            # ウェイトカウントを減らす
            @phase5_wait_count -= 1
            # ウェイトカウントが 0 になった場合
            if @phase5_wait_count == 80  ###########zzzzzzzz
               # リザルトウィンドウを表示
               @result_window.visible = true
               # メインフェーズフラグをクリア
               $game_temp.battle_main_phase = false
               # ステータスウィンドウをリフレッシュ
               @status_window.refresh
            end
            return
          end
    if @phase5_wait_count == 0
      # 战斗结束
      battle_end(0)
    end
         # レベルアップしている場合は強制バトル終了
         battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
      end
   end
   #-----------------------------------------------------------
   # ● フレーム更新 (アフターバトルフェーズ 1 : レベルアップ)
   #-----------------------------------------------------------
   def update_phase5_step1
      # C ボタンが押された場合
    if Input.trigger?(Input::C)
         # ウィンドウを閉じて次のアクターへ
         @levelup_window.visible = false if @levelup_window != nil
         @status_window.level_up_flags[@exp_gain_actor] = false
         phase5_next_levelup
      end
    end
   #---------------------------------------------------------
   # ● 次のアクターのレベルアップ表示へ
   #---------------------------------------------------------
   def phase5_next_levelup
      begin
         # 次のアクターへ
         @exp_gain_actor += 1
         # 最後のアクターの場合
         if @exp_gain_actor >= $game_party.actors.size
            # アフターバトルフェーズ開始
            @phase5_step = 0
            return
         end
         actor = $game_party.actors[@exp_gain_actor]
         if actor.cant_get_exp? == false
            # 現在の能力値を保持
            last_level = actor.level
            last_maxhp = actor.maxhp
            last_maxsp = actor.maxsp
            last_str = actor.str
            last_dex = actor.dex
            last_agi = actor.agi
            last_int = actor.int
            # 経験値取得の決定的瞬間(謎
            actor.exp += @exp_gained
            # 判定
            if actor.level > last_level
               # レベルアップした場合
               @status_window.level_up(@exp_gain_actor)
               # リザルトウィンドウを消す
               #@result_window.visible = false
               # SEの再生
               if $data_system_level_up_se != ""
                  Audio.se_play($data_system_level_up_se)
               end
               # MEの再生
               if $data_system_level_up_me != ""
                  Audio.me_stop
                  Audio.me_play($data_system_level_up_me)
               end
               # LEVEL-UPウィンドウの設定
               @levelup_window = Window_LevelUpWindow.new(actor, last_level,
               actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
               actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
               @levelup_window.x = 160 * @exp_gain_actor
               @levelup_window.visible = true
               # ステータスウィンドウをリフレッシュ
               @status_window.refresh
               # スキル習得ウィンドウの設定
               @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level)
               # ウェイトカウントを設定
               @phase5_wait_count = 40
               @phase5_step = 1
               return
            end
         end
      end until false
   end
end
#=============================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#=============================================================
[/pre]

点评

好的 謝謝大神  发表于 2016-8-26 19:21
Vanyogin
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部