Figela Paysan (niveau 3)
Messages postés : 20 Date d'inscription : 04/05/2013 Jauge LPC :
| Sujet: Script : Systeme de sac Ven 7 Juin 2013 - 5:04 | |
| Bonsoir,
Encore moi ^^'
Je cherche désespérément un script permettant d'avoir un système de sac. Dans le genre des MMo ou les objets sont représenté par leurs icônes.
J'espère avoir été précis.
Merci d'avance ^^. |
|
Sissi Paysan (niveau 5)
Messages postés : 45 Date d'inscription : 05/06/2013 Jauge LPC :
| Sujet: Re: Script : Systeme de sac Ven 7 Juin 2013 - 16:47 | |
| Bonjour,Je t'est trouvé sa sur un forum espagnol : http://www.mundo-maker.com/t4648-rmxp-item-system-v-11 Edit : Je t'ai trouvé autre chose sur un blog anglais J'ai même pu récolter quelques screens pour toi : https://i.imgur.com/AZxAT.jpg https://i.imgur.com/PYz7G.jpg https://i.imgur.com/CoXkf.jpg https://i.imgur.com/9iBwn.jpg Voici le script : http://pastebin.com/raw.php?i=9EJDMwM7 Ils n'ont pas dis si il fallait le mettre au-dessus de Main mais je suppose que oui, tu peux le nommer comme tu le souhaite, par contre je ne l'ai pas testé donc je ne sais pas si il est fiable ou pas, je te présentes quelque caractéristiques que l'auteur à donné (traduction de google donc désoler si les phrases sont bâclés) : • menu animé • système d'inventaire Slot-base limitée • pouvez modifier le nombre de créneaux à tout moment pendant le match. • pouvez définir une taille maximale de la pile pour chaque type d'élément individuellement • pouvez jeter élément superflu • pouvez définir un élément à être undiscardable • Will appeler automatiquement une scène de butin tout moment le parti a trop d'éléments • Possibilité de combiner deux éléments pour gagner une autre éléments • peut équiper arme / armure dans le menu • peut ajouter "étoiles" fois le montant de sa notation / raretéJ'oubliais ! L'auteur à préciser quelque trucs, les voilas : Pour redimensionner l'appel d'inventaire avec appel du script Script: $ game_party.resize_inventory (new_size) ou Script: resize_inventory (new_size)
Pour désactiver combiner fonctionnalité, appel avec un script appel Script: $ game_party.disable_combine = (vrai / faux) Pour désactiver la fonctionnalité des équipements, appel avec un script appel Script: $ game_party . disable_equip = (true / false)Ta même une démo sur leur/son blog à téléchargé : http://littledrago.blogspot.fr/2012/03/rgss-drg-inventory-system.html J'espère t'avoir aidé |
|
Figela Paysan (niveau 3)
Messages postés : 20 Date d'inscription : 04/05/2013 Jauge LPC :
| Sujet: Re: Script : Systeme de sac Ven 7 Juin 2013 - 23:36 | |
| Waw quand tu donne ton aide tu fais pas semblant :p Comme un idiot j'ai oublier de préciser que je suis sur Vx ace...^^'
Celui du blog anglais me fait vraiment envie, mais je ne sais pas du tout toucher au script.
Un grand merci quand même pour ta généreuse réponse ! |
|
Sissi Paysan (niveau 5)
Messages postés : 45 Date d'inscription : 05/06/2013 Jauge LPC :
| Sujet: Re: Script : Systeme de sac Sam 8 Juin 2013 - 15:34 | |
| Ah bas alors si c'est pour VX ace en voila un : http://www.rpgmakervxace.net/topic/3812-fp-inventory-system/ |
|
shin Chevalier Dragon (niveau 1)
Messages postés : 726 Date d'inscription : 18/10/2011 Jauge LPC :
| Sujet: Re: Script : Systeme de sac Dim 9 Juin 2013 - 10:42 | |
| Celui de Xail est vraiment pas mal aussi. - Spoiler:
- Spoiler:
- Code:
-
#============================================================================== # XaiL System - Icon Item # Author: Nicke # Created: 09/04/2012 # Edited: 01/11/2012 # Version: 1.0f #============================================================================== # Instructions # ----------------------------------------------------------------------------- # To install this script, open up your script editor and copy/paste this script # to an open slot below ? Materials but above ? Main. Remember to save. # # This script changes the item list to display icons as items instead. # There is also a category feature which allows you to change the background # color of each items/weapons/armour etc. # # Right now there is a setup of 6 categories one being the default one. # You can easily edit the draw_item_rect method to add new ones. # # To setup a category for a item use the following code in the note field of the # item: # <category health> # or # <category mana> # The above will only work if you did not edit the category list. # # *** Only for RPG Maker VX Ace. *** #============================================================================== ($imported ||= {})["XAIL-ICON-SKILLS"] = true module XAIL module ICON_ITEM #--------------------------------------------------------------------------# # * Settings #--------------------------------------------------------------------------# # FONT = [name, size, color, bold, shadow] FONT = [["Anklada™", "Verdana"], 16, Color.new(255,225,255), true, true] # Show/hide option for the item scene. # DISPLAY = [show_help_icon, show_name, show_description, # show_consumable, show_amount] DISPLAY = [true, true, true, true, true] # If this is false every item will have the same default black color. # NO_CATEGORIES = true/false NO_CATEGORIES = false # REQ_ICONS[id] = icon_id # Set the req icon_id. (0 to disable) # Only used if XS - Equip Requirements is installed. REQ_ICONS = [] REQ_ICONS[0] = 4143 # LVL REQ_ICONS[1] = 4145 # ATK REQ_ICONS[2] = 4150 # DEF REQ_ICONS[3] = 4147 # MAGIC REQ_ICONS[4] = 4148 # RES REQ_ICONS[5] = 4140 # AGL REQ_ICONS[6] = 4131 # LUK REQ_ICONS[7] = 4149 # HP REQ_ICONS[8] = 4132 # MP # REQ_VOCABS = true/false # Enable or disable vocabs for requirement stats. REQ_VOCABS = false end end # *** Don't edit below unless you know what you are doing. *** #==============================================================================# # ** Window_Help #==============================================================================# class Window_Help < Window_Base alias xail_item_icon_win_help_init initialize def initialize(line_number = 2) # // Method to initialize window help. num = XAIL::ICON_ITEM::REQ_VOCABS ? 5 : 4 line_number = $imported["XAIL-EQUIP-REQ"] ? num : 2 if SceneManager.scene_is?(Scene_Item) xail_item_icon_win_help_init(line_number) end def set_item_help(item) # // Method to set the item for window help. contents.font.name = XAIL::ICON_ITEM::FONT[0] contents.font.bold = XAIL::ICON_ITEM::FONT[3] contents.font.shadow = XAIL::ICON_ITEM::FONT[4] contents.font.out_color = Color.new(0,0,0,255) if item new_line = "\n" icon = XAIL::ICON_ITEM::DISPLAY[0] ? '\i[' + item.icon_index.to_s + ']' : "" name = XAIL::ICON_ITEM::DISPLAY[1] ? '\c[2] »» ' + item.name + '\c[0]' : "" weight = $imported["XAIL-INVENTORY-WEIGHT"] ? weight = " - Weight: #{item.weight}." : "" durability = $imported["XAIL-ITEM-DURABILITY"] ? durability = " - Durability: #{item.durability} / #{item.max_durability}." : "" if $imported["XAIL-EQUIP-REQ"] @req = '\c[4]»' req_skills = '\c[5]» Req Skills: ' req_items = ' \c[6]» Req Items: ' if XAIL::ICON_ITEM::REQ_VOCABS @req2 = '\c[4]»' 4.times {|i| @req += get_icon_equip_req(item, i)} 5.times {|i| @req2 += get_icon_equip_req(item, i+4)} @req2 += '\c[0]' else @req2 = "" 9.times {|i| @req += get_icon_equip_req(item, i)} end @req += '\c[0]' unless item.req_equipment_skills == [] item.req_equipment_skills.size.times {|i| req_skills += get_icon_equip_req_items(item, i) } else req_skills += "None." end req_skills += '\c[0]' unless item.req_equipment_weapons == [] item.req_equipment_weapons.size.times {|i| req_items += get_icon_equip_req_items(item, i, :weapons) } end unless item.req_equipment_armors == [] item.req_equipment_armors.size.times {|i| req_items += get_icon_equip_req_items(item, i, :armors) } end req_items += '\c[0]' else @req, @req2, req_skills, req_items = "" end if item.is_a?(RPG::Item) && XAIL::ICON_ITEM::DISPLAY[2] consumable = item.consumable ? " (Consumable)" : " (Non-consumable)" else consumable = "" end desc = XAIL::ICON_ITEM::DISPLAY[3] ? item.description : "" if $imported["XAIL-EQUIP-REQ"] @req req = XAIL::ICON_ITEM::REQ_VOCABS ? @req + new_line + @req2 + new_line : @req + new_line item_text = icon + name + weight + durability + new_line + req + req_skills + req_items + new_line + desc else item_text = icon + name + weight + durability + new_line + desc end else item_text = "" end set_text(item_text) end def get_icon_item_req(item, id) # // Method to get requirements. # // Only used if XS - Equip Requirements is installed. case id when 0 ; name = Vocab::level when 1 ; name = Vocab::param(2) when 2 ; name = Vocab::param(3) when 3 ; name = Vocab::param(4) when 4 ; name = Vocab::param(5) when 5 ; name = Vocab::param(6) when 6 ; name = Vocab::param(7) when 7 ; name = Vocab::param(0) when 8 ; name = Vocab::param(1) end name = XAIL::ICON_ITEM::REQ_VOCABS ? name + " = " : "=" return '\i[' + XAIL::ICON_ITEM::REQ_ICONS[id].to_s + ']' + name.to_s + item.req_equipment[id].to_s + " " end def get_icon_equip_req_items(item, id, type = :skills) # // Method to get skill, weapon or armor requirements. # // Only used if XS - Equip Requirements is installed. case type when :skills return '\i[' + $data_skills[item.req_equipment_skills[id]].icon_index.to_s + ']' when :weapons return '\i[' + $data_weapons[item.req_equipment_weapons[id]].icon_index.to_s + ']' when :armors return '\i[' + $data_armors[item.req_equipment_weapons[id]].icon_index.to_s + ']' end end end #==============================================================================# # ** Window_ItemList_Icon #==============================================================================# class Window_ItemList_Icon < Window_ItemList def col_max # // Method to get col_max. return 14 end
def spacing # // Method to get spacing. return 14 end def item_width # // Method to get item_width. return 24 end def item_height # // Method to get item_height. return 24 end def row_max # // Method to get row_max. return item_max end
def update_help # // Method to update help details. @help_window.set_item_help(item) end def item_rect(index) # // Method to draw item rect. rect = Rect.new rect.width = item_width rect.height = item_height rect.x = index % col_max * (item_width + spacing) rect.y = index / col_max * (item_height + 3) rect end def page_row_max # // Method to define page row max. return 1 end
def scan_items(item) # // Method to scan the notes for the items. item.note.scan(/<category[:]*\s*(.+)>/i) return $1 if !$1.nil? end
def draw_item(index) # // Method override to draw item. item = @data[index] if item rect = item_rect(index) draw_item_rect(index, item, rect, rect.x, rect.y) draw_item_number(rect, item) if $game_party.item_number(item) > 1 and XAIL::ICON_ITEM::DISPLAY[3] end end def draw_item_icon(icon_index, x, y, enabled = true) # // Method to draw icon. bitmap = Cache.system("Iconset") rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24) contents.blt(x, y, bitmap, rect, enabled ? 255 : 75) end def draw_item_rect(index, item, rect, x, y) # // Method to draw rect. outline = rect.clone outline.width = rect.width + 1 outline.height = rect.height + 1 contents.fill_rect(outline,Color.new(255,255,255,80)) unless XAIL::ICON_ITEM::NO_CATEGORIES case scan_items(item) when "health" color = Color.new(150,0,0,45) when "mana" color = Color.new(0,0,150,45) when "cure" color = Color.new(0,130,0,45) when "elixir" color = Color.new(250,250,0,45) when "herbs" color = Color.new(0,215,0,45) when nil color = Color.new(0,0,0,128) else color = Color.new(0,0,0,128) end else color = Color.new(0,0,0,128) end color = enable?(item) ? color : Color.new(0,0,0,128) contents.fill_rect(rect, color) draw_item_icon(item.icon_index, x + 1, y, enable?(item)) end def check_color(color, enabled = true) # // Method to set the color and alpha. contents.font.color.set(color) contents.font.color.alpha = 95 unless enabled end
def draw_item_number(rect, item) # // Method to draw the item number. rect.y += 8 if $game_party.item_number(item) < 10 rect.x -= 2 end contents.font = Font.new(XAIL::ICON_ITEM::FONT[0], XAIL::ICON_ITEM::FONT[1]) check_color(XAIL::ICON_ITEM::FONT[2], enable?(item)) contents.font.bold = XAIL::ICON_ITEM::FONT[3] contents.font.shadow = XAIL::ICON_ITEM::FONT[4] contents.font.out_color = Color.new(0,0,0,255) draw_text(rect, sprintf("%2d", $game_party.item_number(item)), 1) reset_font_settings end
end #==============================================================================# # ** Scene_Item #==============================================================================# class Scene_Item < Scene_ItemBase def create_item_window # // Method override create the item list window. wy = @category_window.y + @category_window.height wh = Graphics.height - wy @item_window = Window_ItemList_Icon.new(0, wy, Graphics.width, wh) @item_window.viewport = @viewport @item_window.help_window = @help_window @item_window.set_handler(:ok, method(:on_item_ok)) @item_window.set_handler(:cancel, method(:on_item_cancel)) @category_window.item_window = @item_window end
end # END OF FILE
#=*==========================================================================*=# # ** END OF FILE #=*==========================================================================*=#
|
|