# ▽△▽ XRXSv33. MeLT/BaST-Result.RM3. 縦型クリアリザルト ▽△▽ # [伸縮対応] # # publish 2010/ 4/27 # update - # #============================================================================== # カスタマイズポイント #============================================================================== module XRXSV33 # # スキン(Graphics/System) # EXPMeterSkin = "Menu_ExpMeter" # # 文字列 # NEXT_S = "NEXT" GEXP_S = "獲得EXP" end #============================================================================== # リザルトメンバーウィンドウ #============================================================================== class Window_ResultMembers < Window_Base def target_position(index) return self.x + index * 128 + 80, self.y + 72 end def initialize @meter_skin = Cache.system(XRXSV33::EXPMeterSkin) x = (Graphics.width - 544) / 2 super(x, 72, 544, 288) @clear_style = ((XRXSV10::BG_NAME rescue "").size >= 1) self.opacity = 0 @item_max = $game_party.members.size @exp_bars = [] @exp_numbers = [] @exp_gain_numbers = [] @level_numbers = [] refresh create_sprites update end def contents_opacity=(n) super @exp_bars.each{|sprite| sprite.opacity = n } @exp_numbers.each{|sprite| sprite.opacity = n } @exp_gain_numbers.each{|sprite| sprite.opacity = n } @level_numbers.each{|sprite| sprite.opacity = n } end def clear_sprites @exp_bars.each{|sprite| sprite.dispose } @exp_bars.clear @exp_numbers.each{|sprite| sprite.dispose } @exp_numbers.clear @exp_gain_numbers.each{|sprite| sprite.dispose } @exp_gain_numbers.clear @level_numbers.each{|sprite| sprite.dispose } @level_numbers.clear end def refresh self.contents.clear for i in 0...@item_max draw_item(i) end end def create_sprites clear_sprites skin = Cache.system(XRXSV33::NumberS) skin_l = Cache.system(XRXSV33::NumberL) for i in 0...@item_max nx = self.x + 16 + i * 128 ny = self.y + 16 @level_numbers[i] = RapidNumber.new(nx + 80, ny + 146, skin_l) @level_numbers[i].z = 102 @exp_numbers[i] = RapidNumber.new(nx + 124, ny + 174, skin) @exp_numbers[i].z = 102 @exp_bars[i] = Sprite_EXPBar.new @exp_bars[i].x = nx + 16 @exp_bars[i].y = ny + 174 @exp_bars[i].z = 1000 @exp_gain_numbers[i] = RapidNumber.new(nx + 124, ny + 206, skin) @exp_gain_numbers[i].z = 102 end end def draw_item(index) actor = $game_party.members[index] x = index * 128 y = 0 self.contents.font.size = 20 draw_actor_name(actor, x+10, y+4) self.contents.blt(x+16, y+24, actor.face, actor.face.rect) rescue nil self.contents.font.size = 16 self.contents.font.color = system_color self.contents.draw_text(x+16, y + 128, 32, WLH, Vocab::level_a) self.contents.draw_text(x+16, y + 160, 64, 16, XRXSV33::NEXT_S) meter_rect = Rect.new(0, 0, 128, 4) self.contents.blt(x+16, y + 174, @meter_skin, meter_rect) self.contents.draw_text(x+16, y + 192, 64, 16, XRXSV33::GEXP_S) end def update super for i in 0...@item_max actor = $game_party.members[i] @exp_bars[i].set_width(actor.exp_per128) @exp_numbers[i].set(actor.next_rest_exp) @exp_gain_numbers[i].set(actor.battle_result_exp.to_i) @level_numbers[i].set(actor.level) end end def dispose clear_sprites super end end