Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Window_ItemList < Window_Selectable
- attr_accessor :letter_timer
- attr_accessor :letter_skip
- alias :tlb_il_initialize :initialize
- def initialize(x, y, width, height)
- tlb_il_initialize(x, y, width, height)
- @letter_timer = 0
- @letter_skip = 0
- end
- def draw_item_name(item, x, y, enabled = true, width = 172)
- return unless item
- draw_icon(item.icon_index, x, y, enabled)
- change_color(normal_color, enabled)
- if @data.index(item) == self.index && text_size(item.name).width > 190
- @letter_skip = 0 if text_size(item.name.slice(@letter_skip, item.name.size)).width < 174
- text = item.name.slice(@letter_skip, item.name.size)
- else
- text = item.name.clone
- end
- if text_size(text).width > 190
- while text_size("#{text}...").width > 190
- text.slice!(-1)
- end
- if @data.index(item) != self.index
- text.concat("...")
- end
- end
- draw_text(x + 24, y, width, line_height, text)
- end
- alias :tlb_il_update :update
- def update
- tlb_il_update
- if open?
- @letter_timer += 1
- if @letter_timer == 30
- @letter_timer = 0
- create_contents
- draw_all_items
- @letter_skip += 1
- end
- end
- end
- end
- class Window_SkillList < Window_Selectable
- attr_accessor :letter_timer
- attr_accessor :letter_skip
- alias :tlb_sl_initialize :initialize
- def initialize(x, y, width, height)
- tlb_sl_initialize(x, y, width, height)
- @letter_timer = 0
- @letter_skip = 0
- end
- def draw_item_name(item, x, y, enabled = true, width = 172)
- return unless item
- draw_icon(item.icon_index, x, y, enabled)
- change_color(normal_color, enabled)
- if @data.index(item) == self.index && text_size(item.name).width > 174
- @letter_skip = 0 if text_size(item.name.slice(@letter_skip, item.name.size)).width < 158
- text = item.name.slice(@letter_skip, item.name.size)
- else
- text = item.name.clone
- end
- if text_size(text).width > 174
- while text_size("#{text}...").width > 174
- text.slice!(-1)
- end
- if @data.index(item) != self.index
- text.concat("...")
- end
- end
- draw_text(x + 24, y, width, line_height, text)
- end
- alias :tlb_sl_update :update
- def update
- tlb_sl_update
- if open?
- @letter_timer += 1
- if @letter_timer == 30
- @letter_timer = 0
- create_contents
- draw_all_items
- @letter_skip += 1
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment