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

Project1

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

战斗结束后获得EXP和金钱的框要按好几下才会消失……

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2005-12-4
帖子
85
跳转到指定楼层
1
发表于 2008-6-6 00:38:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我把所有改过的脚本都拷到另外一个工程里面测试了终于试出来是哪个脚本的问题了~

虽然不是大问题~但是很烦人啊~每次都要敲那么多空格

谁帮个忙看一看

是这个,升级提示的脚本出了问题……

  1. #===============================================================
  2. # 本脚本来自www.66RPG.com,使用和转载请保留此信息
  3. #===============================================================
  4. #如果想修改“学会特技”这四个字(比如改为“学会魔法”),
  5. #请修改脚本约198行左右的“学会特技”4个字。

  6. #如果想修改升级时播放的声效和音乐,修改脚本5-7行的内容:
  7. #$data_system_level_up_se = "" #升级时的音效设置
  8. #$data_system_level_up_me = "Audio/ME/007-Fanfare01" # 升级时播放的ME
  9. #$data_system_skilllearn_se = "Audio/SE/106-Heal02" # 学会特技时播放的声效。

  10. #把需要修改音乐音效的改为自己想要的文件名即可。


  11. # ———————————————————————————

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

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

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


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

本贴由论坛斑竹havealook结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-5-30
帖子
385
2
发表于 2008-6-6 01:12:52 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2005-12-4
帖子
85
3
 楼主| 发表于 2008-6-6 01:21:45 | 只看该作者
额。。。。。不要自动回到地图行不行。。。。

我只要正常的按一下就回到地图的就可以~

现在这个要按5下才能回去。。。。太烦人了。。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
4
发表于 2008-6-6 01:24:47 | 只看该作者
   # レベルアップしている場合は強制バトル終了
   battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0
试试删除。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2005-12-4
帖子
85
5
 楼主| 发表于 2008-6-6 03:05:39 | 只看该作者
楼上的没有效果哎。。。。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-5-30
帖子
385
6
发表于 2008-6-6 03:57:06 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2005-12-4
帖子
85
7
 楼主| 发表于 2008-6-6 04:28:51 | 只看该作者
楼上的也没有效果啊
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-5-30
帖子
385
8
发表于 2008-6-6 04:56:45 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2005-12-4
帖子
85
9
 楼主| 发表于 2008-6-6 05:35:53 | 只看该作者
还是要按两下空格。。。。
反正只按一下就是关不掉。。。。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-3-29
帖子
826
10
发表于 2008-6-6 05:39:06 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-8-3 05:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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