# * Item Division Script by mewsterus (compatible only with his CMS scripts) # * To install, insert this in a descriptive code slot right above Main # * # * All normal items should have the 20th attribute, all equipment the 21st, and # * all quest items the 22nd. Please consult the RPG Maker XP help file if you # * don't know what this means. # * # * If you are using the Improved Peripheral Menus script, place this above it #=============================================================================== # ¦ Window_Item #------------------------------------------------------------------------------- # Edited mewsterus #=============================================================================== class Window_Item < Window_Selectable #----------------------------------------------------------------------------- # @ Make window #----------------------------------------------------------------------------- alias :initialize_original :initialize def initialize(element_id = 20) @element_id = element_id initialize_original end #----------------------------------------------------------------------------- # @ Accept column max input #----------------------------------------------------------------------------- def column_max=(column_max) @column_max = column_max refresh end #----------------------------------------------------------------------------- # @ Refresh the contents #----------------------------------------------------------------------------- def refresh if self.contents != nil self.contents.dispose self.contents = nil end @data = [] for i in 1...$data_items.size if $game_party.item_number(i) > 0 if $data_items[i] != nil and ($data_items[i].element_set.include?(@element_id)) @data.push($data_items[i]) end end end for i in 1...$data_weapons.size if $game_party.weapon_number(i) > 0 if $data_weapons[i] != nil and ($data_weapons[i].element_set.include?(@element_id)) @data.push($data_weapons[i]) end end end for i in 1...$data_armors.size if $game_party.armor_number(i) > 0 if $data_armors[i] != nil and ($data_armors[i].guard_element_set.include?(@element_id)) @data.push($data_armors[i]) end end end @item_max = @data.size if @item_max > 0 self.contents = Bitmap.new(width - 32, row_max * 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize for i in 0...@item_max draw_item(i) end end end end #=============================================================================== # ¦ Scene_Item #------------------------------------------------------------------------------- # Edited by mewsterus #=============================================================================== class Scene_Item #----------------------------------------------------------------------------- # @ Accept item type #----------------------------------------------------------------------------- def initialize(itemtype = 20) @itemtype = itemtype end #----------------------------------------------------------------------------- # @ Main loop #----------------------------------------------------------------------------- def main @help_window = Window_Help.new @item_window = Window_Item.new(@itemtype) @item_window.help_window = @help_window @target_window = Window_Target.new @target_window.visible = false @target_window.active = false Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @help_window.dispose @item_window.dispose @target_window.dispose end #----------------------------------------------------------------------------- # @ Update the main window #----------------------------------------------------------------------------- alias :update_item_original :update_item def update_item update_item_original if Input.trigger?(Input::R) $game_system.se_play($data_system.cursor_se) $scene = Scene_Item.new(((@itemtype - 19) % 3) + 20) return end if Input.trigger?(Input::L) $game_system.se_play($data_system.cursor_se) $scene = Scene_Item.new(((@itemtype - 18) % 3) + 20) return end end end #=============================================================================== # ¦ Main #------------------------------------------------------------------------------- # Edited by mewsterus #=============================================================================== begin $itemdrop_enabled = true end