#============================================================================== # ■ 二人パーティ画面_メニュー画面 #------------------------------------------------------------------------------ # メニュー画面を二人パーティの仕様にします # 従来の顔グラフィック、HPとMPなどに加え各パラメータ(攻撃力から敏捷性)と # 現在の経験値、次のレベルまでの必要経験値を表示します # # *月の下の宿 # URL:http://gekkasou.shiteyattari.com/ #============================================================================== #============================================================================== # ■ Window_MenuStatus #============================================================================== class Window_MenuStatus < Window_Selectable #-------------------------------------------------------------------------- # ● リフレッシュ #-------------------------------------------------------------------------- def refresh self.contents.clear @item_max = $game_party.members.size for actor in $game_party.members draw_actor_face(actor, 2, actor.index * 196 + 2 , 92) x = 104 y = actor.index * 196 + WLH / 2 draw_actor_name(actor, x, y) draw_actor_class(actor, x + 120, y) draw_actor_level(actor, x, y + WLH * 1) draw_actor_state(actor, x, y + WLH * 2) draw_actor_hp(actor, x + 120, y + WLH * 1) draw_actor_mp(actor, x + 120, y + WLH * 2) draw_parameters(actor, 2, actor.index * 196 + 96) draw_exp_info(actor, 174, actor.index * 196 + 96) end end #-------------------------------------------------------------------------- # ● 能力値の描画 #-------------------------------------------------------------------------- def draw_parameters(actor, x, y) draw_actor_parameter(actor, x, y + WLH * 0, 0) draw_actor_parameter(actor, x, y + WLH * 1, 1) draw_actor_parameter(actor, x, y + WLH * 2, 2) draw_actor_parameter(actor, x, y + WLH * 3, 3) end #-------------------------------------------------------------------------- # ● 経験値情報の描画 #-------------------------------------------------------------------------- def draw_exp_info(actor, x, y) s1 = actor.exp_s s2 = actor.next_rest_exp_s s_next = sprintf(Vocab::ExpNext, Vocab::level) self.contents.font.color = system_color self.contents.draw_text(x, y + WLH * 0, 172, WLH, Vocab::ExpTotal) self.contents.draw_text(x, y + WLH * 2, 172, WLH, s_next) self.contents.font.color = normal_color self.contents.draw_text(x, y + WLH * 1, 172, WLH, s1, 2) self.contents.draw_text(x, y + WLH * 3, 172, WLH, s2, 2) end #-------------------------------------------------------------------------- # ● カーソルの更新 #-------------------------------------------------------------------------- alias an_pairview_update_cursor update_cursor def update_cursor an_pairview_update_cursor if @index < 0 # カーソルなし self.cursor_rect.empty elsif @index < @item_max # 通常 self.cursor_rect.set(0, @index * 196, contents.width, 192) elsif @index >= 100 # 自分 self.cursor_rect.set(0, (@index - 100) * 192, contents.width, 192) else # 全体 self.cursor_rect.set(0, 0, contents.width, @item_max * 192) end end end