Class: Window_ItemList

Inherits:
Window_Selectable show all
Defined in:
lib/rgss3_default_scripts/Window_ItemList.rb

Overview

** Window_ItemList


This window displays a list of party items on the item screen.

Instance Attribute Summary

Attributes inherited from Window_Selectable

#cursor_all, #cursor_fix, #help_window, #index

Instance Method Summary collapse

Methods inherited from Window_Selectable

#active=, #bottom_row, #bottom_row=, #call_cancel_handler, #call_handler, #call_ok_handler, #call_update_help, #cancel_enabled?, #clear_item, #contents_height, #cursor_down, #cursor_left, #cursor_movable?, #cursor_pagedown, #cursor_pageup, #cursor_right, #cursor_up, #draw_all_items, #ensure_cursor_visible, #handle?, #height=, #horizontal?, #item_height, #item_rect, #item_rect_for_text, #item_width, #ok_enabled?, #page_item_max, #page_row_max, #process_cancel, #process_cursor_move, #process_handling, #process_ok, #process_pagedown, #process_pageup, #redraw_current_item, #redraw_item, #row, #row_max, #select, #set_handler, #spacing, #top_row, #top_row=, #unselect, #update, #update_cursor, #update_padding, #update_padding_bottom

Methods inherited from Window_Base

#activate, #actor_name, #calc_line_height, #change_color, #close, #contents_height, #contents_width, #convert_escape_characters, #create_contents, #crisis_color, #deactivate, #dispose, #draw_actor_class, #draw_actor_face, #draw_actor_graphic, #draw_actor_hp, #draw_actor_icons, #draw_actor_level, #draw_actor_mp, #draw_actor_name, #draw_actor_nickname, #draw_actor_param, #draw_actor_simple_status, #draw_actor_tp, #draw_character, #draw_currency_value, #draw_current_and_max_values, #draw_face, #draw_gauge, #draw_icon, #draw_item_name, #draw_text, #draw_text_ex, #fitting_height, #gauge_back_color, #hide, #hp_color, #hp_gauge_color1, #hp_gauge_color2, #knockout_color, #line_height, #make_font_bigger, #make_font_smaller, #mp_color, #mp_cost_color, #mp_gauge_color1, #mp_gauge_color2, #normal_color, #obtain_escape_code, #obtain_escape_param, #open, #param_change_color, #party_member_name, #pending_color, #power_down_color, #power_up_color, #process_character, #process_draw_icon, #process_escape_character, #process_new_line, #process_new_page, #process_normal_character, #reset_font_settings, #show, #standard_padding, #system_color, #text_color, #text_size, #tp_color, #tp_cost_color, #tp_gauge_color1, #tp_gauge_color2, #translucent_alpha, #update, #update_close, #update_open, #update_padding, #update_tone

Constructor Details

#initialize(x, y, width, height) ⇒ Window_ItemList


  • Object Initialization




11
12
13
14
15
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 11

def initialize(x, y, width, height)
  super
  @category = :none
  @data = []
end

Instance Method Details

#category=(category) ⇒ Object


  • Set Category




19
20
21
22
23
24
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 19

def category=(category)
  return if @category == category
  @category = category
  refresh
  self.oy = 0
end

#col_maxObject


  • Get Digit Count




28
29
30
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 28

def col_max
  return 2
end

#current_item_enabled?Boolean


  • Get Activation State of Selection Item


Returns:

  • (Boolean)


46
47
48
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 46

def current_item_enabled?
  enable?(@data[index])
end

#draw_item(index) ⇒ Object


  • Draw Item




88
89
90
91
92
93
94
95
96
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 88

def draw_item(index)
  item = @data[index]
  if item
    rect = item_rect(index)
    rect.width -= 4
    draw_item_name(item, rect.x, rect.y, enable?(item))
    draw_item_number(rect, item)
  end
end

#draw_item_number(rect, item) ⇒ Object


  • Draw Number of Items




100
101
102
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 100

def draw_item_number(rect, item)
  draw_text(rect, sprintf(":%2d", $game_party.item_number(item)), 2)
end

#enable?(item) ⇒ Boolean


  • Display in Enabled State?


Returns:

  • (Boolean)


69
70
71
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 69

def enable?(item)
  $game_party.usable?(item)
end

#include?(item) ⇒ Boolean


  • Include in Item List?


Returns:

  • (Boolean)


52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 52

def include?(item)
  case @category
  when :item
    item.is_a?(RPG::Item) && !item.key_item?
  when :weapon
    item.is_a?(RPG::Weapon)
  when :armor
    item.is_a?(RPG::Armor)
  when :key_item
    item.is_a?(RPG::Item) && item.key_item?
  else
    false
  end
end

#itemObject


  • Get Item




40
41
42
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 40

def item
  @data && index >= 0 ? @data[index] : nil
end

#item_maxObject


  • Get Number of Items




34
35
36
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 34

def item_max
  @data ? @data.size : 1
end

#make_item_listObject


  • Create Item List




75
76
77
78
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 75

def make_item_list
  @data = $game_party.all_items.select {|item| include?(item) }
  @data.push(nil) if include?(nil)
end

#refreshObject


  • Refresh




112
113
114
115
116
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 112

def refresh
  make_item_list
  create_contents
  draw_all_items
end

#select_lastObject


  • Restore Previous Selection Position




82
83
84
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 82

def select_last
  select(@data.index($game_party.last_item.object) || 0)
end

#update_helpObject


  • Update Help Text




106
107
108
# File 'lib/rgss3_default_scripts/Window_ItemList.rb', line 106

def update_help
  @help_window.set_item(item)
end