class Window_Reserves < Window_Selectable #-------------------------------------------------------------------------- # ● Make Reserves Readable #-------------------------------------------------------------------------- attr_reader :reserves #-------------------------------------------------------------------------- # ● Initialize #-------------------------------------------------------------------------- def initialize super(0, 0, 480, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize refresh self.active = false self.index = -1 @reserves = [] @offset = 0 end #-------------------------------------------------------------------------- # ● Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear @reserves = [] for i in @offset...@offset+4 next if $game_actors[i] == nil @reserves.push($game_actors[i]) unless $game_party.actors.include?($game_actors[i]) end @item_max = @reserves.size for i in 0...@reserves.size x = 64 y = (i - @offset) * 116 actor = @reserves[i] draw_actor_graphic(actor, x - 40, y + 80) draw_actor_name(actor, x, y) draw_actor_class(actor, x + 144, y) draw_actor_level(actor, x, y + 32) draw_actor_state(actor, x + 90, y + 32) draw_actor_exp(actor, x, y + 64) draw_actor_hp(actor, x + 236, y + 32) draw_actor_sp(actor, x + 236, y + 64) end end #-------------------------------------------------------------------------- # ● Get Actor #-------------------------------------------------------------------------- def get_actor(index_id) return @reserves[index_id] end #-------------------------------------------------------------------------- # ● Update Cursor #-------------------------------------------------------------------------- def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end