Project1

标题: 如何让升级后有提示出来 [打印本页]

作者: jfy19771224    时间: 2008-1-7 01:22
标题: 如何让升级后有提示出来
每升一及就会有一个
恭喜您升至(多少及)
然后下面这里就是各项能力提升后的数值.
请问应该怎么设置呢?
谢谢 [LINE]1,#dddddd[/LINE]此贴于 2008-1-6 18:37:06 被版主心情de对白提醒,请楼主看到后对本贴做出回应。 [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: jfy19771224    时间: 2008-1-7 01:22
标题: 如何让升级后有提示出来
每升一及就会有一个
恭喜您升至(多少及)
然后下面这里就是各项能力提升后的数值.
请问应该怎么设置呢?
谢谢 [LINE]1,#dddddd[/LINE]此贴于 2008-1-6 18:37:06 被版主心情de对白提醒,请楼主看到后对本贴做出回应。 [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 御灵    时间: 2008-1-7 01:26
http://rpg.blue/web/htm/news434.htm
复制全部脚本内容,在Main脚本之前按insert,插入此脚本全部内容。其它使用功能见脚本

作者: jfy19771224    时间: 2008-1-7 01:40
你给我的这个地址里面有好多脚本啊,我不知道用拿个啊?能不能说明一下,谢谢
作者: 御灵    时间: 2008-1-7 01:47
  1. ]#===============================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #===============================================================


  4. # ———————————————————————————

  5. # ▼▲▼ XRXS_BP10. LEVEL UP!能力上昇表示ウィンドウ plus ▼▲▼
  6. # by 桜雅 在土

  7. #——以下3个如果需要修改,直接输入文件名即可
  8. $data_system_level_up_se = "" #升级时的音效设置
  9. $data_system_level_up_me = "Audio/ME/007-Fanfare01" # 升级时播放的ME
  10. $data_system_skilllearn_se = "Audio/SE/106-Heal02" # 学会特技时播放的声效。

  11. #=============================================================
  12. # ■ Window_LevelUpWindow
  13. #-------------------------------------------------------------------
  14. #  バトル終了時、レベルアップした場合にステータスを表示するウィンドウです。
  15. #=============================================================
  16. class Window_LevelUpWindow < Window_Base
  17.   #---------------------------------------------------------
  18.   # ● オブジェクト初期化
  19.   #------------------------------------------------------
  20.   def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  21.     super(0, 128, 160, 192)
  22.     self.contents = Bitmap.new(width - 32, height - 32)
  23.     self.visible = false
  24.     self.back_opacity = 160
  25.     refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  26.   end
  27.   #-----------------------------------------------------------
  28.   # ● リフレッシュ
  29.   #---------------------------------------------------------
  30.   def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  31.     self.contents.clear
  32.     self.contents.font.color = system_color
  33.     self.contents.font.size = 14
  34.     self.contents.draw_text( 0, 0, 160, 24, "LEVEL UP!!")
  35.     self.contents.font.size = 18
  36.     self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
  37.     self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
  38.     self.contents.font.size = 14
  39.     self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
  40.     self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
  41.     self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
  42.     self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
  43.     self.contents.draw_text(92, 0, 128, 24, "→")
  44.     self.contents.draw_text(76, 28, 128, 24, "=")
  45.     self.contents.draw_text(76, 50, 128, 24, "=")
  46.     self.contents.draw_text(76, 72, 128, 24, "=")
  47.     self.contents.draw_text(76, 94, 128, 24, "=")
  48.     self.contents.draw_text(76, 116, 128, 24, "=")
  49.     self.contents.draw_text(76, 138, 128, 24, "=")
  50.     self.contents.font.color = normal_color
  51.     self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
  52.     self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
  53.     self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
  54.     self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
  55.     self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
  56.     self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
  57.     self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
  58.     self.contents.font.size = 20
  59.     self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
  60.     self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
  61.     self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
  62.     self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
  63.     self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
  64.     self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
  65.     self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
  66.   end
  67. end
  68. #===========================================================
  69. # ■ Window_SkillLearning
  70. #------------------------------------------------------------------------------
  71. #  レベルアップ時などにスキルを習得した場合にそれを表示するウィンドウです。
  72. #=============================================================
  73. class Window_SkillLearning < Window_Base
  74.   #-------------------------------------------------------------
  75.   # ● 公開インスタンス変数
  76.   #-----------------------------------------------------------
  77.   attr_reader :learned # スキルを習得したかどうか
  78.   #----------------------------------------------------------
  79.   # ● オブジェクト初期化
  80.   #----------------------------------------------------------
  81.   def initialize(class_id, last_lv, now_lv)
  82.     super(160, 64, 320, 64)
  83.     self.contents = Bitmap.new(width - 32, height - 28) # わざと▽を表示
  84.     self.visible = false
  85.     self.back_opacity = 160
  86.     @learned = false
  87.     refresh(class_id, last_lv, now_lv)
  88.   end
  89.   #------------------------------------------------------------
  90.   # ● リフレッシュ
  91.   #-------------------------------------------------------
  92.   def refresh(class_id, last_lv, now_lv)
  93.     for i in 0...$data_classes[class_id].learnings.size
  94.       learn_lv = $data_classes[class_id].learnings[i].level
  95.       # 今回のレベルアップ範囲で習得するスキルの場合
  96.       if learn_lv > last_lv and learn_lv <= now_lv
  97.         @learned = true
  98.         # SEの再生
  99.         if $data_system_skilllearn_se != ""
  100.           Audio.se_play($data_system_skilllearn_se)
  101.         end
  102.         # 各描写
  103.         skill_name = $data_skills[$data_classes[class_id].learnings[i].skill_id].name
  104.         self.contents.clear
  105.         self.contents.font.color = text_color(0)
  106.         self.contents.draw_text(0,0,448,32, "学会特技:"+skill_name)
  107.         self.contents.font.color = text_color(6)
  108.         self.contents.draw_text(0,0,448,32, "          "+skill_name)
  109.         self.contents.font.color = text_color(0)
  110.         self.visible = true
  111.         # メインループ
  112.         loop do
  113.           # ゲーム画面を更新
  114.           Graphics.update
  115.           # 入力情報を更新
  116.           Input.update
  117.           # フレーム更新
  118.           update
  119.           # 画面が切り替わったらループを中断
  120.           if @learned == false
  121.             break
  122.           end
  123.         end
  124.       # メインループここまで
  125.       end
  126.     end
  127.   end
  128.   #-----------------------------------------------------------
  129.   # ● フレーム更新
  130.   #------------------------------------------------------------
  131.   def update
  132.     # C ボタンが押された場合
  133.     if Input.trigger?(Input::C)
  134.       @learned = false
  135.       self.visible = false
  136.     end
  137.   end
  138. end
  139. #==================================================================
  140. # ■ Window_BattleStatus
  141. #==================================================================
  142. class Window_BattleStatus < Window_Base
  143.   #---------------------------------------------------------
  144.   # ● 追加?公開インスタンス変数
  145.   #-------------------------------------------------------
  146.   attr_accessor :level_up_flags # LEVEL UP!表示
  147. end
  148. #===============================================================
  149. # ■ Game_Battler
  150. #===============================================================
  151. class Game_Battler
  152.   #--------------------------------------------------------------
  153.   # ● 追加?公開インスタンス変数
  154.   #----------------------------------------------------------
  155.   attr_accessor :exp_gain_ban # EXP取得一時禁止
  156.   #------------------------------------------------------
  157.   # ● オブジェクト初期化
  158.   #-----------------------------------------------------
  159.   alias xrxs_bp10_initialize initialize
  160.   def initialize
  161.     @exp_gain_ban = false
  162.     xrxs_bp10_initialize
  163.   end
  164.   #-------------------------------------------------------
  165.   # ● ステート [EXP を獲得できない] 判定
  166.   #-----------------------------------------------------
  167.   alias xrxs_bp10_cant_get_exp? cant_get_exp?
  168.   def cant_get_exp?
  169.     if @exp_gain_ban == true
  170.       return true
  171.     else
  172.       return xrxs_bp10_cant_get_exp?
  173.     end
  174.   end
  175. end
  176. #==============================================================
  177. # ■ Scene_Battle
  178. #==============================================================
  179. class Scene_Battle
  180.   #--------------------------------------------------
  181.   # ● アフターバトルフェーズ開始
  182.   #--------------------------------------------------
  183.   alias xrxs_bp10_start_phase5 start_phase5
  184.   def start_phase5
  185.     # EXP 獲得禁止
  186.     for i in 0...$game_party.actors.size
  187.       $game_party.actors[i].exp_gain_ban = true
  188.     end
  189.     xrxs_bp10_start_phase5
  190.     # EXP 獲得禁止の解除
  191.     for i in 0...$game_party.actors.size
  192.       $game_party.actors[i].exp_gain_ban = false
  193.     end
  194.     # EXPを初期化
  195.     @exp_gained = 0
  196.     for enemy in $game_troop.enemies
  197.       # 獲得 EXPを追加 # エネミーが隠れ状態でない場合
  198.       @exp_gained += enemy.exp if not enemy.hidden
  199.     end
  200.     # 設定
  201.     @phase5_step = 1
  202.     @exp_gain_actor = -1
  203.     # リザルトウィンドウを表示
  204.     @result_window.visible = true
  205.   end
  206.   #----------------------------------------------------------
  207.   # ● フレーム更新 (アフターバトルフェーズ)
  208.   #--------------------------------------------------------
  209.   #alias xrxs_bp10_update_phase5 update_phase5
  210.   def update_phase5
  211.     case @phase5_step
  212.     when 1
  213.       update_phase5_step1
  214.     else
  215.     # ウェイトカウントが 0 より大きい場合
  216.       if @phase5_wait_count > 0
  217.         # ウェイトカウントを減らす
  218.         @phase5_wait_count -= 1
  219.         # ウェイトカウントが 0 になった場合
  220.         if @phase5_wait_count == 0
  221.           # リザルトウィンドウを表示
  222.           #@result_window.visible = true
  223.           # メインフェーズフラグをクリア
  224.           $game_temp.battle_main_phase = false
  225.           # ステータスウィンドウをリフレッシュ
  226.           @status_window.refresh
  227.         end
  228.       return
  229.       end
  230.       # C ボタンが押された場合
  231.       if Input.trigger?(Input::C)
  232.         # バトル終了
  233.         battle_end(0)
  234.       end
  235.     # レベルアップしている場合は強制バトル終了
  236.     battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
  237.     end
  238.   end
  239.   #-----------------------------------------------------------
  240.   # ● フレーム更新 (アフターバトルフェーズ 1 : レベルアップ)
  241.   #-----------------------------------------------------------
  242.   def update_phase5_step1
  243.     # C ボタンが押された場合
  244.     if Input.trigger?(Input::C)
  245.       # ウィンドウを閉じて次のアクターへ
  246.       @levelup_window.visible = false if @levelup_window != nil
  247.       @status_window.level_up_flags[@exp_gain_actor] = false
  248.       phase5_next_levelup
  249.     end
  250.   end
  251.   #---------------------------------------------------------
  252.   # ● 次のアクターのレベルアップ表示へ
  253.   #---------------------------------------------------------
  254.   def phase5_next_levelup
  255.     begin
  256.       # 次のアクターへ
  257.       @exp_gain_actor += 1
  258.       # 最後のアクターの場合
  259.       if @exp_gain_actor >= $game_party.actors.size
  260.         # アフターバトルフェーズ開始
  261.         @phase5_step = 0
  262.         return
  263.       end
  264.       actor = $game_party.actors[@exp_gain_actor]
  265.       if actor.cant_get_exp? == false
  266.         # 現在の能力値を保持
  267.         last_level = actor.level
  268.         last_maxhp = actor.maxhp
  269.         last_maxsp = actor.maxsp
  270.         last_str = actor.str
  271.         last_dex = actor.dex
  272.         last_agi = actor.agi
  273.         last_int = actor.int
  274.         # 経験値取得の決定的瞬間(謎
  275.         actor.exp += @exp_gained
  276.         # 判定
  277.         if actor.level > last_level
  278.           # レベルアップした場合
  279.           @status_window.level_up(@exp_gain_actor)
  280.           # リザルトウィンドウを消す
  281.           @result_window.visible = false
  282.           # SEの再生
  283.           if $data_system_level_up_se != ""
  284.             Audio.se_play($data_system_level_up_se)
  285.           end
  286.           # MEの再生
  287.           if $data_system_level_up_me != ""
  288.             Audio.me_stop
  289.             Audio.me_play($data_system_level_up_me)
  290.           end
  291.           # LEVEL-UPウィンドウの設定
  292.           @levelup_window = Window_LevelUpWindow.new(actor, last_level,
  293.           actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
  294.           actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
  295.           @levelup_window.x = 160 * @exp_gain_actor
  296.           @levelup_window.visible = true
  297.           # ステータスウィンドウをリフレッシュ
  298.           @status_window.refresh
  299.           # スキル習得ウィンドウの設定
  300.           @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level)
  301.           # ウェイトカウントを設定
  302.           @phase5_wait_count = 40
  303.           @phase5_step = 1
  304.           return
  305.         end
  306.       end
  307.     end until false
  308.   end
  309. end


  310. #=============================================================
  311. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  312. #=============================================================
复制代码

作者: jfy19771224    时间: 2008-1-7 01:52
还是不行啊.是复制到Scene_Battle 2里面啊?它说发生了错误...
能不能说明一下复制到哪里.谢谢.
作者: 御灵    时间: 2008-1-7 01:54
  1. ]#===============================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #===============================================================


  4. # ———————————————————————————

  5. # ▼▲▼ XRXS_BP10. LEVEL UP!能力上昇表示ウィンドウ plus ▼▲▼
  6. # by 桜雅 在土

  7. #——以下3个如果需要修改,直接输入文件名即可
  8. $data_system_level_up_se = "" #升级时的音效设置
  9. $data_system_level_up_me = "Audio/ME/007-Fanfare01" # 升级时播放的ME
  10. $data_system_skilllearn_se = "Audio/SE/106-Heal02" # 学会特技时播放的声效。

  11. #=============================================================
  12. # ■ Window_LevelUpWindow
  13. #-------------------------------------------------------------------
  14. #  バトル終了時、レベルアップした場合にステータスを表示するウィンドウです。
  15. #=============================================================
  16. class Window_LevelUpWindow < Window_Base
  17.   #---------------------------------------------------------
  18.   # ● オブジェクト初期化
  19.   #------------------------------------------------------
  20.   def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  21.     super(0, 128, 160, 192)
  22.     self.contents = Bitmap.new(width - 32, height - 32)
  23.     self.visible = false
  24.     self.back_opacity = 160
  25.     refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  26.   end
  27.   #-----------------------------------------------------------
  28.   # ● リフレッシュ
  29.   #---------------------------------------------------------
  30.   def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
  31.     self.contents.clear
  32.     self.contents.font.color = system_color
  33.     self.contents.font.size = 14
  34.     self.contents.draw_text( 0, 0, 160, 24, "LEVEL UP!!")
  35.     self.contents.font.size = 18
  36.     self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp)
  37.     self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp)
  38.     self.contents.font.size = 14
  39.     self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str)
  40.     self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex)
  41.     self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi)
  42.     self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int)
  43.     self.contents.draw_text(92, 0, 128, 24, "→")
  44.     self.contents.draw_text(76, 28, 128, 24, "=")
  45.     self.contents.draw_text(76, 50, 128, 24, "=")
  46.     self.contents.draw_text(76, 72, 128, 24, "=")
  47.     self.contents.draw_text(76, 94, 128, 24, "=")
  48.     self.contents.draw_text(76, 116, 128, 24, "=")
  49.     self.contents.draw_text(76, 138, 128, 24, "=")
  50.     self.contents.font.color = normal_color
  51.     self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2)
  52.     self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2)
  53.     self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2)
  54.     self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2)
  55.     self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2)
  56.     self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2)
  57.     self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2)
  58.     self.contents.font.size = 20
  59.     self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2)
  60.     self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2)
  61.     self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2)
  62.     self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2)
  63.     self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2)
  64.     self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2)
  65.     self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2)
  66.   end
  67. end
  68. #===========================================================
  69. # ■ Window_SkillLearning
  70. #------------------------------------------------------------------------------
  71. #  レベルアップ時などにスキルを習得した場合にそれを表示するウィンドウです。
  72. #=============================================================
  73. class Window_SkillLearning < Window_Base
  74.   #-------------------------------------------------------------
  75.   # ● 公開インスタンス変数
  76.   #-----------------------------------------------------------
  77.   attr_reader :learned # スキルを習得したかどうか
  78.   #----------------------------------------------------------
  79.   # ● オブジェクト初期化
  80.   #----------------------------------------------------------
  81.   def initialize(class_id, last_lv, now_lv)
  82.     super(160, 64, 320, 64)
  83.     self.contents = Bitmap.new(width - 32, height - 28) # わざと▽を表示
  84.     self.visible = false
  85.     self.back_opacity = 160
  86.     @learned = false
  87.     refresh(class_id, last_lv, now_lv)
  88.   end
  89.   #------------------------------------------------------------
  90.   # ● リフレッシュ
  91.   #-------------------------------------------------------
  92.   def refresh(class_id, last_lv, now_lv)
  93.     for i in 0...$data_classes[class_id].learnings.size
  94.       learn_lv = $data_classes[class_id].learnings[i].level
  95.       # 今回のレベルアップ範囲で習得するスキルの場合
  96.       if learn_lv > last_lv and learn_lv <= now_lv
  97.         @learned = true
  98.         # SEの再生
  99.         if $data_system_skilllearn_se != ""
  100.           Audio.se_play($data_system_skilllearn_se)
  101.         end
  102.         # 各描写
  103.         skill_name = $data_skills[$data_classes[class_id].learnings[i].skill_id].name
  104.         self.contents.clear
  105.         self.contents.font.color = text_color(0)
  106.         self.contents.draw_text(0,0,448,32, "学会特技:"+skill_name)
  107.         self.contents.font.color = text_color(6)
  108.         self.contents.draw_text(0,0,448,32, "          "+skill_name)
  109.         self.contents.font.color = text_color(0)
  110.         self.visible = true
  111.         # メインループ
  112.         loop do
  113.           # ゲーム画面を更新
  114.           Graphics.update
  115.           # 入力情報を更新
  116.           Input.update
  117.           # フレーム更新
  118.           update
  119.           # 画面が切り替わったらループを中断
  120.           if @learned == false
  121.             break
  122.           end
  123.         end
  124.       # メインループここまで
  125.       end
  126.     end
  127.   end
  128.   #-----------------------------------------------------------
  129.   # ● フレーム更新
  130.   #------------------------------------------------------------
  131.   def update
  132.     # C ボタンが押された場合
  133.     if Input.trigger?(Input::C)
  134.       @learned = false
  135.       self.visible = false
  136.     end
  137.   end
  138. end
  139. #==================================================================
  140. # ■ Window_BattleStatus
  141. #==================================================================
  142. class Window_BattleStatus < Window_Base
  143.   #---------------------------------------------------------
  144.   # ● 追加?公開インスタンス変数
  145.   #-------------------------------------------------------
  146.   attr_accessor :level_up_flags # LEVEL UP!表示
  147. end
  148. #===============================================================
  149. # ■ Game_Battler
  150. #===============================================================
  151. class Game_Battler
  152.   #--------------------------------------------------------------
  153.   # ● 追加?公開インスタンス変数
  154.   #----------------------------------------------------------
  155.   attr_accessor :exp_gain_ban # EXP取得一時禁止
  156.   #------------------------------------------------------
  157.   # ● オブジェクト初期化
  158.   #-----------------------------------------------------
  159.   alias xrxs_bp10_initialize initialize
  160.   def initialize
  161.     @exp_gain_ban = false
  162.     xrxs_bp10_initialize
  163.   end
  164.   #-------------------------------------------------------
  165.   # ● ステート [EXP を獲得できない] 判定
  166.   #-----------------------------------------------------
  167.   alias xrxs_bp10_cant_get_exp? cant_get_exp?
  168.   def cant_get_exp?
  169.     if @exp_gain_ban == true
  170.       return true
  171.     else
  172.       return xrxs_bp10_cant_get_exp?
  173.     end
  174.   end
  175. end
  176. #==============================================================
  177. # ■ Scene_Battle
  178. #==============================================================
  179. class Scene_Battle
  180.   #--------------------------------------------------
  181.   # ● アフターバトルフェーズ開始
  182.   #--------------------------------------------------
  183.   alias xrxs_bp10_start_phase5 start_phase5
  184.   def start_phase5
  185.     # EXP 獲得禁止
  186.     for i in 0...$game_party.actors.size
  187.       $game_party.actors[i].exp_gain_ban = true
  188.     end
  189.     xrxs_bp10_start_phase5
  190.     # EXP 獲得禁止の解除
  191.     for i in 0...$game_party.actors.size
  192.       $game_party.actors[i].exp_gain_ban = false
  193.     end
  194.     # EXPを初期化
  195.     @exp_gained = 0
  196.     for enemy in $game_troop.enemies
  197.       # 獲得 EXPを追加 # エネミーが隠れ状態でない場合
  198.       @exp_gained += enemy.exp if not enemy.hidden
  199.     end
  200.     # 設定
  201.     @phase5_step = 1
  202.     @exp_gain_actor = -1
  203.     # リザルトウィンドウを表示
  204.     @result_window.visible = true
  205.   end
  206.   #----------------------------------------------------------
  207.   # ● フレーム更新 (アフターバトルフェーズ)
  208.   #--------------------------------------------------------
  209.   #alias xrxs_bp10_update_phase5 update_phase5
  210.   def update_phase5
  211.     case @phase5_step
  212.     when 1
  213.       update_phase5_step1
  214.     else
  215.     # ウェイトカウントが 0 より大きい場合
  216.       if @phase5_wait_count > 0
  217.         # ウェイトカウントを減らす
  218.         @phase5_wait_count -= 1
  219.         # ウェイトカウントが 0 になった場合
  220.         if @phase5_wait_count == 0
  221.           # リザルトウィンドウを表示
  222.           #@result_window.visible = true
  223.           # メインフェーズフラグをクリア
  224.           $game_temp.battle_main_phase = false
  225.           # ステータスウィンドウをリフレッシュ
  226.           @status_window.refresh
  227.         end
  228.       return
  229.       end
  230.       # C ボタンが押された場合
  231.       if Input.trigger?(Input::C)
  232.         # バトル終了
  233.         battle_end(0)
  234.       end
  235.     # レベルアップしている場合は強制バトル終了
  236.     battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
  237.     end
  238.   end
  239.   #-----------------------------------------------------------
  240.   # ● フレーム更新 (アフターバトルフェーズ 1 : レベルアップ)
  241.   #-----------------------------------------------------------
  242.   def update_phase5_step1
  243.     # C ボタンが押された場合
  244.     if Input.trigger?(Input::C)
  245.       # ウィンドウを閉じて次のアクターへ
  246.       @levelup_window.visible = false if @levelup_window != nil
  247.       @status_window.level_up_flags[@exp_gain_actor] = false
  248.       phase5_next_levelup
  249.     end
  250.   end
  251.   #---------------------------------------------------------
  252.   # ● 次のアクターのレベルアップ表示へ
  253.   #---------------------------------------------------------
  254.   def phase5_next_levelup
  255.     begin
  256.       # 次のアクターへ
  257.       @exp_gain_actor += 1
  258.       # 最後のアクターの場合
  259.       if @exp_gain_actor >= $game_party.actors.size
  260.         # アフターバトルフェーズ開始
  261.         @phase5_step = 0
  262.         return
  263.       end
  264.       actor = $game_party.actors[@exp_gain_actor]
  265.       if actor.cant_get_exp? == false
  266.         # 現在の能力値を保持
  267.         last_level = actor.level
  268.         last_maxhp = actor.maxhp
  269.         last_maxsp = actor.maxsp
  270.         last_str = actor.str
  271.         last_dex = actor.dex
  272.         last_agi = actor.agi
  273.         last_int = actor.int
  274.         # 経験値取得の決定的瞬間(謎
  275.         actor.exp += @exp_gained
  276.         # 判定
  277.         if actor.level > last_level
  278.           # レベルアップした場合
  279.           @status_window.level_up(@exp_gain_actor)
  280.           # リザルトウィンドウを消す
  281.           @result_window.visible = false
  282.           # SEの再生
  283.           if $data_system_level_up_se != ""
  284.             Audio.se_play($data_system_level_up_se)
  285.           end
  286.           # MEの再生
  287.           if $data_system_level_up_me != ""
  288.             Audio.me_stop
  289.             Audio.me_play($data_system_level_up_me)
  290.           end
  291.           # LEVEL-UPウィンドウの設定
  292.           @levelup_window = Window_LevelUpWindow.new(actor, last_level,
  293.           actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str,
  294.           actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int)
  295.           @levelup_window.x = 160 * @exp_gain_actor
  296.           @levelup_window.visible = true
  297.           # ステータスウィンドウをリフレッシュ
  298.           @status_window.refresh
  299.           # スキル習得ウィンドウの設定
  300.           @skilllearning_window = Window_SkillLearning.new(actor.class_id, last_level, actor.level)
  301.           # ウェイトカウントを設定
  302.           @phase5_wait_count = 40
  303.           @phase5_step = 1
  304.           return
  305.         end
  306.       end
  307.     end until false
  308.   end
  309. end


  310. #=============================================================
  311. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  312. #=============================================================
复制代码

把这个复制到main之前即可.
作者: csh    时间: 2008-1-7 02:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: 恶魔老师    时间: 2008-1-7 02:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: jfy19771224    时间: 2008-1-7 02:12

复制全部脚本内容,在Main脚本之前按insert,插入此脚本全部内容。其它使用功能见脚本
请问这句话是什么意思啊?在Main脚本之前按insert
能不能具体说下,谢谢.
作者: jfy19771224    时间: 2008-1-7 02:26
它说不188行发生错误.
我首先打新建个工程,然后找到Scene_Battle 2,然后把里面的脚本X掉,再复制上面的脚本,把]删掉.是这样的吗?
作者: 加速度    时间: 2008-1-7 02:29
以下引用jfy19771224于2008-1-6 18:12:59的发言:


复制全部脚本内容,在Main脚本之前按insert,插入此脚本全部内容。其它使用功能见脚本
请问这句话是什么意思啊?在Main脚本之前按insert
能不能具体说下,谢谢.


这个是插入新脚本!
作者: 心情de对白    时间: 2008-1-7 02:35

把你所用到脚本插在MAIN函数之前就行了.
升级提示脚本
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
# 泛用型升级提示 v1.1
#
# 核心部分 By 叶子
# 窗口部分 原作者:桜雅 在土 修改:叶子
#
# Date: 2-12-2006 -v1.0
#       3-2-2006 -v1.1
#==============================================================================
#
# 在对话时,调用“增加EXP”或“增减等级”指令前,请等待3帧以上,否则对话框来不及消失。
#
# 当打开此号数的开关的时候,等级上升将不会提示,比如默认打开45号开关,等级上升不再提示
$不显示升级窗口 = 45
#==============================================================================

class Game_Actor
#--------------------------------------------------------------------------
# ● 更改 EXP
#     exp : 新的 EXP
#--------------------------------------------------------------------------
def exp=(exp)
   # 记录旧等级
   last_level = @level
   @exp = [[exp, 9999999].min, 0].max
   # 升级
   while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
     @level += 1
     # 学会特技
     for j in $data_classes[@class_id].learnings
       if j.level == @level
         learn_skill(j.skill_id)
       end
     end
   end
   # 降级
   while @exp < @exp_list[@level]
     @level -= 1
   end
   # 修正当前的 HP 与 SP 超过最大值
   @hp = [@hp, self.maxhp].min
   @sp = [@sp, self.maxsp].min
   # 升级了的话,升级显示处理
   if @level > last_level and $game_switches[$不显示升级窗口] == false and
     not $BTEST
     show_level_up_result(last_level)
   end
end
#--------------------------------------------------------------------------
# ● 升级显示处理
#--------------------------------------------------------------------------
def show_level_up_result(last_level)
   actor_parameters = self.last_parameters(last_level)
   last_maxhp = actor_parameters[0]
   last_maxsp = actor_parameters[1]
   last_str = actor_parameters[2]
   last_dex = actor_parameters[3]
   last_agi = actor_parameters[4]
   last_int = actor_parameters[5]
   level_up_window = Window_LevelUpWindow_A.new self,last_level,last_maxhp,
   last_maxsp,last_str,last_dex,last_agi,last_int
   level_up_window.visible = true
   skill_learning_window = Window_SkillLearning_A.new(@class_id,
   last_level, @level)
   # 循环
   loop do
     # 刷新游戏画面
     Graphics.update
     # 刷新输入信息
     Input.update
     # 按下C就关闭窗口
     if Input.trigger?(Input::C)
       unless skill_learning_window.refresh
         level_up_window.dispose
         skill_learning_window.dispose
         return true
       end
     end
   end
end
#--------------------------------------------------------------------------
# ● 一次取得全部旧属性
#--------------------------------------------------------------------------
def last_parameters(level)
   #---------------------------
   # maxhp
   #---------------------------
   n = [[$data_actors[@actor_id].parameters[0, level] + @maxhp_plus, 1].max, 9999].min
   for i in @states
     n *= $data_states.maxhp_rate / 100.0
   end
   n = [[Integer(n), 1].max, 9999].min
   maxhp = n
   #---------------------------
   # maxsp
   #---------------------------
   n = [[$data_actors[@actor_id].parameters[1, level] + @maxsp_plus, 0].max, 9999].min
   for i in @states
     n *= $data_states.maxsp_rate / 100.0
   end
   n = [[Integer(n), 0].max, 9999].min
   maxsp = n
   #---------------------------
   # str
   #---------------------------
   n = $data_actors[@actor_id].parameters[2, level]
   weapon = $data_weapons[@weapon_id]
   armor1 = $data_armors[@armor1_id]
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.str_plus : 0
   n += armor1 != nil ? armor1.str_plus : 0
   n += armor2 != nil ? armor2.str_plus : 0
   n += armor3 != nil ? armor3.str_plus : 0
   n += armor4 != nil ? armor4.str_plus : 0
   n = [[n + @str_plus, 1].max, 999].min
   for i in @states
     n *= $data_states.str_rate / 100.0
   end
   n = [[Integer(n), 1].max, 999].min
   str = n
   #---------------------------
   # dex
   #---------------------------
   n = $data_actors[@actor_id].parameters[3, level]
   weapon = $data_weapons[@weapon_id]
   armor1 = $data_armors[@armor1_id]
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.dex_plus : 0
   n += armor1 != nil ? armor1.dex_plus : 0
   n += armor2 != nil ? armor2.dex_plus : 0
   n += armor3 != nil ? armor3.dex_plus : 0
   n += armor4 != nil ? armor4.dex_plus : 0
   n = [[n + @dex_plus, 1].max, 999].min
   for i in @states
     n *= $data_states.dex_rate / 100.0
   end
   n = [[Integer(n), 1].max, 999].min
   dex = n
   #---------------------------
   # agi
   #---------------------------
   n = $data_actors[@actor_id].parameters[4, level]
   weapon = $data_weapons[@weapon_id]
   armor1 = $data_armors[@armor1_id]
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.agi_plus : 0
   n += armor1 != nil ? armor1.agi_plus : 0
   n += armor2 != nil ? armor2.agi_plus : 0
   n += armor3 != nil ? armor3.agi_plus : 0
   n += armor4 != nil ? armor4.agi_plus : 0
   n = [[n + @agi_plus, 1].max, 999].min
   for i in @states
     n *= $data_states.agi_rate / 100.0
   end
   n = [[Integer(n), 1].max, 999].min
   agi = n
   #---------------------------
   # int
   #---------------------------
   n = $data_actors[@actor_id].parameters[5, level]
   weapon = $data_weapons[@weapon_id]
   armor1 = $data_armors[@armor1_id]
   armor2 = $data_armors[@armor2_id]
   armor3 = $data_armors[@armor3_id]
   armor4 = $data_armors[@armor4_id]
   n += weapon != nil ? weapon.int_plus : 0
   n += armor1 != nil ? armor1.int_plus : 0
   n += armor2 != nil ? armor2.int_plus : 0
   n += armor3 != nil ? armor3.int_plus : 0
   n += armor4 != nil ? armor4.int_plus : 0
   n = [[n + @int_plus, 1].max, 999].min
   for i in @states
     n *= $data_states.int_rate / 100.0
   end
   n = [[Integer(n), 1].max, 999].min
   int = n
   return [maxhp, maxsp, str, dex, agi, int]
end
end


#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================


#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================

# ————————————————————————————————————

# ▼▲▼ XRXS_BP10. LEVEL UP!能力上昇表示ウィンドウ plus ▼▲▼
# by 桜雅 在土

#——以下3个如果需要修改,直接输入文件名即可
$data_system_level_up_se = "" #升级时的音效设置
$data_system_level_up_me = "Audio/ME/007-Fanfare01" # 升级时播放的ME
$data_system_skilllearn_se = "" # 学会特技时播放的声效。

#==============================================================================
# ■ Window_LevelUpWindow
#------------------------------------------------------------------------------
#  バトル終了時、レベルアップした場合にステータスを表示するウィンドウです。
#==============================================================================
class Window_LevelUpWindow_A < Window_Base
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
   super(210, 100, 220, 222)
   self.contents = Bitmap.new(width - 32, height - 32)
   self.visible = false
   self.back_opacity = 160
   # 防止被对话框遮住
   self.z = 9999
   refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int)
   # 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
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 = text_color(6)
   self.contents.font.size = 20
   self.contents.draw_text(0, 0, 160, 24, actor.name.to_s)
   self.contents.font.color = system_color
   self.contents.font.size = 18
   self.contents.draw_text( 0, 26, 160, 24, "等级")
   self.contents.font.size = 18
   self.contents.draw_text( 0, 48, 80, 24, $data_system.words.hp)
   self.contents.draw_text( 0, 70, 80, 24, $data_system.words.sp)
   self.contents.draw_text( 0, 92, 80, 24, $data_system.words.str)
   self.contents.draw_text( 0, 114, 80, 24, $data_system.words.dex)
   self.contents.draw_text( 0, 136, 80, 24, $data_system.words.agi)
   self.contents.draw_text( 0, 158, 80, 24, $data_system.words.int)
   self.contents.draw_text(110, 26, 128, 24, "→")
   self.contents.draw_text(110, 48, 128, 24, "→")
   self.contents.draw_text(110, 70, 128, 24, "→")
   self.contents.draw_text(110, 92, 128, 24, "→")
   self.contents.draw_text(110, 114, 128, 24, "→")
   self.contents.draw_text(110, 136, 128, 24, "→")
   self.contents.draw_text(110, 158, 128, 24, "→")
   self.contents.font.color = normal_color
   self.contents.draw_text( 60, 26, 88, 24, last_lv.to_s)
   self.contents.draw_text( 60, 48, 72, 24, up_hp.to_s)
   self.contents.draw_text( 60, 70, 72, 24, up_sp.to_s)
   self.contents.draw_text( 60, 92, 72, 24, up_str.to_s)
   self.contents.draw_text( 60, 114, 72, 24, up_dex.to_s)
   self.contents.draw_text( 60, 136, 72, 24, up_agi.to_s)
   self.contents.draw_text( 60, 158, 72, 24, up_int.to_s)
   self.contents.draw_text( 145, 26, 128, 24, actor.level.to_s)
   self.contents.draw_text( 145, 48, 128, 24, actor.maxhp.to_s)
   self.contents.draw_text( 145, 70, 128, 24, actor.maxsp.to_s)
   self.contents.draw_text( 145, 92, 128, 24, actor.str.to_s)
   self.contents.draw_text( 145, 114, 128, 24, actor.dex.to_s)
   self.contents.draw_text( 145, 136, 128, 24, actor.agi.to_s)
   self.contents.draw_text( 145, 158, 128, 24, actor.int.to_s)
end
end
#==============================================================================
# ■ Window_SkillLearning
#------------------------------------------------------------------------------
#  レベルアップ時などにスキルを習得した場合にそれを表示するウィンドウです。
#==============================================================================
class Window_SkillLearning_A < Window_Base
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize(class_id, last_lv, now_lv)
   super(210, 322, 220, 56)
   self.contents = Bitmap.new(width - 32, height - 16) # わざと▽を表示
   self.visible = false
   self.back_opacity = 160
   # 防止被对话框遮住
   self.z = 9999
   @learn_skills = []
   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
       @learn_skills.push $data_skills[
       $data_classes[class_id].learnings.skill_id].name
     end
   end
   refresh
end
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
   # 各描写
   skill_name = @learn_skills.shift
   if skill_name == nil
     return false
   end
   # SEの再生
   if $data_system_skilllearn_se != ""
     Audio.se_play($data_system_skilllearn_se, 100, 70)
   end
   self.contents.clear
   self.contents.font.size = 18
   self.contents.font.color = text_color(0)
   self.contents.draw_text(0,0,156,24, "学会特技:"+skill_name)
   self.contents.font.color = text_color(6)
   self.contents.draw_text(0,0,156,24, "          "+skill_name)
   self.contents.font.color = text_color(0)
   self.visible = true
   return true
end
end
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息

[LINE]1,#dddddd[/LINE]系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~ [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: jfy19771224    时间: 2009-6-12 08:00
你太厉害了,可以了谢谢了,真是感谢啊




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