Accueil du SiteAccueil du Site  AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  ConnexionConnexion  S'enregistrerS'enregistrer  



-43%
Le deal à ne pas rater :
-100€ Pack rééquipement Philips Hue Play : 3 barres lumineuses ...
129.99 € 229.99 €
Voir le deal

Partagez
 

 Gérer plusieurs inventaires

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Zexion
Administrateur
Administrateur
Zexion

Masculin
Messages postés : 6228
Date d'inscription : 04/01/2012
Jauge LPC :
Gérer plusieurs inventaires 891527140097 / 10097 / 100Gérer plusieurs inventaires 8915271400

Gérer plusieurs inventaires Membre15
Gérer plusieurs inventaires Event-10
Gérer plusieurs inventaires Altrui10
Gérer plusieurs inventaires Action10
Gérer plusieurs inventaires Travai10
Gérer plusieurs inventaires Collec10
Gérer plusieurs inventaires Collec11
Gérer plusieurs inventaires Collec12
Gérer plusieurs inventaires Staffe11
Gérer plusieurs inventaires Dessin10


Gérer plusieurs inventaires Empty
MessageSujet: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptySam 13 Juil 2013 - 23:36

Auteur : Fomar0153, merci de ne pas l'oublier dans vos crédits !

Ce script vous permet d'avoir plusieurs inventaires, de passer de l'un à l'autre à votre guise, mais aussi de les fusionner par exemple.
Note : la quantité d'argent est également gérée dans ce système, et est rattachée à chaque inventaire.

Le script :
Code:
    =begin
    Multiple Inventories
    by Fomar0153
    Version 1.1
    ----------------------
    Notes
    ----------------------
    Allows you to easily handle multiple inventories in game.
    ----------------------
    Instructions
    ----------------------
    The default inventory is called "Main" you can change it below
    if you wish.
    To change inventory call:
    $game_party.change_inventory(name)
    To merge two inventories call:
    $game_party.merge_inventories(inv1, inv2)
    inv1 will recieve all the gold and items in inv2
    If ERASE_WHEN_MERGE is set to true then inv2 will be erased after
    the merge.
    ----------------------
    Change Log
    ----------------------
    1.0 -> 1.1 Updated a glitch causing gold not to change when you change inventory.
    ----------------------
    Known bugs
    ----------------------
    None
    =end
    class Game_Party < Game_Unit
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      START_INVENTORY = "Main"
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      ERASE_WHEN_MERGE = true
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_initialize initialize
      def initialize
        mi_initialize
        @current_inventory = START_INVENTORY
        @gold = {}
        @gold[START_INVENTORY] = 0
        @last_item = Game_BaseItem.new
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.change_inventory(name)
      #--------------------------------------------------------------------------
      def change_inventory(name)
        if @gold[name].nil?
          @gold[name] = 0
          @items[name] = {}
          @weapons[name] = {}
          @armors[name] = {}
        end
        @current_inventory = name
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.merge_inventories(inv1, inv2)
      #--------------------------------------------------------------------------
      def merge_inventories(inv1, inv2)
        return if @gold[inv1].nil? or @gold[inv2].nil?
        @current_inventory = inv1
        @gold[inv1] += @gold[inv2]
        @gold[inv2] = nil if ERASE_WHEN_MERGE
        for item in @items[inv2].keys
          gain_item($data_items[item.to_i], @items[inv2][item])
        end
        @items[inv2] = nil if ERASE_WHEN_MERGE
        for weapon in @weapons[inv2].keys
          gain_item($data_weapons[weapon.to_i], @weapons[inv2][weapon])
        end
        @weapons[inv2] = nil if ERASE_WHEN_MERGE
        for armor in @armors[inv2].keys
          gain_item($data_armors[armor.to_i], @armors[inv2][armor])
        end
        @armors[inv2] = nil if ERASE_WHEN_MERGE
      end
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_init_all_items init_all_items
      def init_all_items
        mi_init_all_items
        @items[START_INVENTORY] = {}
        @weapons[START_INVENTORY] = {}
        @armors[START_INVENTORY] = {}
      end
      #--------------------------------------------------------------------------
      # ● New
      #--------------------------------------------------------------------------
      def gold
        return @gold[@current_inventory]
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def items
        @items[@current_inventory].keys.sort.collect {|id| $data_items[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def weapons
        @weapons[@current_inventory].keys.sort.collect {|id| $data_weapons[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def armors
        @armors[@current_inventory].keys.sort.collect {|id| $data_armors[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def item_container(item_class)
        return @items[@current_inventory]  if item_class == RPG::Item
        return @weapons[@current_inventory] if item_class == RPG::Weapon
        return @armors[@current_inventory]  if item_class == RPG::Armor
        return nil
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def gain_gold(amount)
        @gold[@current_inventory] = [[@gold[@current_inventory] + amount, 0].max, max_gold].min
      end
    end


Pour changer d'inventaire, utilisez la ligne de script :
Code:
$game_party.change_inventory(nom_de_l_inventaire)
Remplacez "nom_de_l_inventaire" par le nom de l'inventaire à utiliser.
Si cet inventaire n'existe pas encore, il sera créé.
Le nom de l'inventaire de départ, au lancement du jeu, est "Main".
Cela peut-être modifié à la ligne vers le début du script :
Code:
  START_INVENTORY = "Main"

Pour fusionner deux inventaires, utilisez la commande :
Code:
$game_party.merge_inventories(inv1, inv2)
Où "inv1" et "inv2" sont le nom des deux inventaires à fusionner.
Ils seront fusionnés dans "inv1", tandis que "inv2" sera supprimé.

Bon making !
Revenir en haut Aller en bas
Choco-sama
Ancien staffeux
Ancien staffeux
Choco-sama

Masculin
Messages postés : 3012
Date d'inscription : 19/10/2009
Jauge LPC :
Gérer plusieurs inventaires 891527140058 / 10058 / 100Gérer plusieurs inventaires 8915271400

Gérer plusieurs inventaires Game-d10
Gérer plusieurs inventaires Mappeu10
Gérer plusieurs inventaires Projet16
Gérer plusieurs inventaires Projet10
Gérer plusieurs inventaires Membre15
Gérer plusieurs inventaires Promot10
Gérer plusieurs inventaires Padago10
Gérer plusieurs inventaires Riche_10
Gérer plusieurs inventaires Travai10
Gérer plusieurs inventaires Mythe_10


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptySam 13 Juil 2013 - 23:40

Bonne trouvaille!
Revenir en haut Aller en bas
Cataclysm
Chevalier (niveau 4)
Chevalier (niveau 4)
Cataclysm

Masculin
Messages postés : 121
Date d'inscription : 25/07/2011
Jauge LPC :
Gérer plusieurs inventaires 891527140015 / 10015 / 100Gérer plusieurs inventaires 8915271400

Gérer plusieurs inventaires Membre10


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 15 Juil 2013 - 14:06

J'utilsie ce script pour Noctis, il est très pratique ! Ca permet de gérer plusieurs personnages jouables alternativement (comme dans Noctis ^^) !
Revenir en haut Aller en bas
mario5102
Paysan (niveau 4)
Paysan (niveau 4)
mario5102

Messages postés : 36
Date d'inscription : 25/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714008 / 1008 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 17:43

salut ce script à vraiment l'air pas mal mais petit problème avec le script pour moi : Gérer plusieurs inventaires Captur10

Un moyen de régler ça ? :/
Revenir en haut Aller en bas
Donchouwa
Chevalier (niveau 2)
Chevalier (niveau 2)
Donchouwa

Masculin
Messages postés : 88
Date d'inscription : 19/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714000 / 1000 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 18:05

Tu as enlevé le "=" avant le begin de la première ligne ?
Et remplacé par "#"
Le début de chaque ligne, mets un "#" jusqu'à =end, la aussi tu remplaces "=" par "#"

Je sais pas pourquoi mais, les scripts ne prennent plus en compte les "="
Revenir en haut Aller en bas
mario5102
Paysan (niveau 4)
Paysan (niveau 4)
mario5102

Messages postés : 36
Date d'inscription : 25/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714008 / 1008 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 18:40

donc j'ai remplacé ces 2 égales (les seuls en début de ligne ) et maintenant j'ai ça :
Gérer plusieurs inventaires Captur11
Revenir en haut Aller en bas
Donchouwa
Chevalier (niveau 2)
Chevalier (niveau 2)
Donchouwa

Masculin
Messages postés : 88
Date d'inscription : 19/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714000 / 1000 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 18:51

Donchouwa a écrit:

Le début de chaque ligne, mets un "#" jusqu'à =end, la aussi tu remplaces "=" par "#"

Tu as oublié une étape
Revenir en haut Aller en bas
mario5102
Paysan (niveau 4)
Paysan (niveau 4)
mario5102

Messages postés : 36
Date d'inscription : 25/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714008 / 1008 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 19:07

ça à l'air de marché donc en fait je doit bien avoir ça maintenant ?
Code:
#begin
  #Multiple Inventories
  # by Fomar0153
    #Version 1.1
    #----------------------
    #Notes
    #----------------------
    #Allows you to easily handle multiple inventories in game.
    #----------------------
    #Instructions
    #----------------------
    #The default inventory is called "Main" you can change it below
    #if you wish.
    #To change inventory call:
    #$game_party.change_inventory(name)
    #To merge two inventories call:
    #$game_party.merge_inventories(inv1, inv2)
    #inv1 will recieve all the gold and items in inv2
    #If ERASE_WHEN_MERGE is set to true then inv2 will be erased after
    #the merge.
    #----------------------
    #Change Log
    #----------------------
    #1.0 -> 1.1 Updated a glitch causing gold not to change when you change inventory.
    #----------------------
    #Known bugs
    #----------------------
    #None
    #end
    class Game_Party < Game_Unit
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      START_INVENTORY = "Main"
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      ERASE_WHEN_MERGE = true
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_initialize initialize
      def initialize
        mi_initialize
        @current_inventory = START_INVENTORY
        @gold = {}
        @gold[START_INVENTORY] = 0
        @last_item = Game_BaseItem.new
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.change_inventory(name)
      #--------------------------------------------------------------------------
      def change_inventory(name)
        if @gold[name].nil?
          @gold[name] = 0
          @items[name] = {}
          @weapons[name] = {}
          @armors[name] = {}
        end
        @current_inventory = name
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.merge_inventories(inv1, inv2)
      #--------------------------------------------------------------------------
      def merge_inventories(inv1, inv2)
        return if @gold[inv1].nil? or @gold[inv2].nil?
        @current_inventory = inv1
        @gold[inv1] += @gold[inv2]
        @gold[inv2] = nil if ERASE_WHEN_MERGE
        for item in @items[inv2].keys
          gain_item($data_items[item.to_i], @items[inv2][item])
        end
        @items[inv2] = nil if ERASE_WHEN_MERGE
        for weapon in @weapons[inv2].keys
          gain_item($data_weapons[weapon.to_i], @weapons[inv2][weapon])
        end
        @weapons[inv2] = nil if ERASE_WHEN_MERGE
        for armor in @armors[inv2].keys
          gain_item($data_armors[armor.to_i], @armors[inv2][armor])
        end
        @armors[inv2] = nil if ERASE_WHEN_MERGE
      end
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_init_all_items init_all_items
      def init_all_items
        mi_init_all_items
        @items[START_INVENTORY] = {}
        @weapons[START_INVENTORY] = {}
        @armors[START_INVENTORY] = {}
      end
      #--------------------------------------------------------------------------
      # ● New
      #--------------------------------------------------------------------------
      def gold
        return @gold[@current_inventory]
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def items
        @items[@current_inventory].keys.sort.collect {|id| $data_items[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def weapons
        @weapons[@current_inventory].keys.sort.collect {|id| $data_weapons[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def armors
        @armors[@current_inventory].keys.sort.collect {|id| $data_armors[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def item_container(item_class)
        return @items[@current_inventory]  if item_class == RPG::Item
        return @weapons[@current_inventory] if item_class == RPG::Weapon
        return @armors[@current_inventory]  if item_class == RPG::Armor
        return nil
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def gain_gold(amount)
        @gold[@current_inventory] = [[@gold[@current_inventory] + amount, 0].max, max_gold].min
      end
    end
Revenir en haut Aller en bas
shin
Chevalier Dragon (niveau 1)
Chevalier Dragon (niveau 1)
shin

Masculin
Messages postés : 726
Date d'inscription : 18/10/2011
Jauge LPC :
Gérer plusieurs inventaires 891527140043 / 10043 / 100Gérer plusieurs inventaires 8915271400

Gérer plusieurs inventaires Membre10
Gérer plusieurs inventaires Altrui10
Gérer plusieurs inventaires Script10
Gérer plusieurs inventaires Collec10
Gérer plusieurs inventaires Collec11
Gérer plusieurs inventaires Collec12
Gérer plusieurs inventaires Collec13
Gérer plusieurs inventaires Zibrop11


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 19:13

Ou plus simplement collé le =begin et le =end au bord gauche cet à dire qu'il ne faut pas d'espace avant.
Revenir en haut Aller en bas
Donchouwa
Chevalier (niveau 2)
Chevalier (niveau 2)
Donchouwa

Masculin
Messages postés : 88
Date d'inscription : 19/11/2013
Jauge LPC :
Gérer plusieurs inventaires 89152714000 / 1000 / 100Gérer plusieurs inventaires 8915271400


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 20:10

mario5102 a écrit:
ça à l'air de marché donc en fait je doit bien avoir ça maintenant ?
Code:
#begin
   #Multiple Inventories
   # by Fomar0153
    #Version 1.1
    #----------------------
    #Notes
    #----------------------
    #Allows you to easily handle multiple inventories in game.
    #----------------------
    #Instructions
    #----------------------
    #The default inventory is called "Main" you can change it below
    #if you wish.
    #To change inventory call:
    #$game_party.change_inventory(name)
    #To merge two inventories call:
    #$game_party.merge_inventories(inv1, inv2)
    #inv1 will recieve all the gold and items in inv2
    #If ERASE_WHEN_MERGE is set to true then inv2 will be erased after
    #the merge.
    #----------------------
    #Change Log
    #----------------------
    #1.0 -> 1.1 Updated a glitch causing gold not to change when you change inventory.
    #----------------------
    #Known bugs
    #----------------------
    #None
    #end
    class Game_Party < Game_Unit
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      START_INVENTORY = "Main"
      #--------------------------------------------------------------------------
      # ● Set the name of your starting inventory here
      #--------------------------------------------------------------------------
      ERASE_WHEN_MERGE = true
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_initialize initialize
      def initialize
        mi_initialize
        @current_inventory = START_INVENTORY
        @gold = {}
        @gold[START_INVENTORY] = 0
        @last_item = Game_BaseItem.new
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.change_inventory(name)
      #--------------------------------------------------------------------------
      def change_inventory(name)
        if @gold[name].nil?
          @gold[name] = 0
          @items[name] = {}
          @weapons[name] = {}
          @armors[name] = {}
        end
        @current_inventory = name
      end
      #--------------------------------------------------------------------------
      # ● New, example call $game_party.merge_inventories(inv1, inv2)
      #--------------------------------------------------------------------------
      def merge_inventories(inv1, inv2)
        return if @gold[inv1].nil? or @gold[inv2].nil?
        @current_inventory = inv1
        @gold[inv1] += @gold[inv2]
        @gold[inv2] = nil if ERASE_WHEN_MERGE
        for item in @items[inv2].keys
          gain_item($data_items[item.to_i], @items[inv2][item])
        end
        @items[inv2] = nil if ERASE_WHEN_MERGE
        for weapon in @weapons[inv2].keys
          gain_item($data_weapons[weapon.to_i], @weapons[inv2][weapon])
        end
        @weapons[inv2] = nil if ERASE_WHEN_MERGE
        for armor in @armors[inv2].keys
          gain_item($data_armors[armor.to_i], @armors[inv2][armor])
        end
        @armors[inv2] = nil if ERASE_WHEN_MERGE
      end
      #--------------------------------------------------------------------------
      # ● Aliased
      #--------------------------------------------------------------------------
      alias mi_init_all_items init_all_items
      def init_all_items
        mi_init_all_items
        @items[START_INVENTORY] = {}
        @weapons[START_INVENTORY] = {}
        @armors[START_INVENTORY] = {}
      end
      #--------------------------------------------------------------------------
      # ● New
      #--------------------------------------------------------------------------
      def gold
        return @gold[@current_inventory]
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def items
        @items[@current_inventory].keys.sort.collect {|id| $data_items[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def weapons
        @weapons[@current_inventory].keys.sort.collect {|id| $data_weapons[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def armors
        @armors[@current_inventory].keys.sort.collect {|id| $data_armors[id] }
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def item_container(item_class)
        return @items[@current_inventory]  if item_class == RPG::Item
        return @weapons[@current_inventory] if item_class == RPG::Weapon
        return @armors[@current_inventory]  if item_class == RPG::Armor
        return nil
      end
      #--------------------------------------------------------------------------
      # ● Rewrites
      #--------------------------------------------------------------------------
      def gain_gold(amount)
        @gold[@current_inventory] = [[@gold[@current_inventory] + amount, 0].max, max_gold].min
      end
    end
Voila c'est ça ^^

Shin => Il faut les coller les "=" ?
Revenir en haut Aller en bas
shin
Chevalier Dragon (niveau 1)
Chevalier Dragon (niveau 1)
shin

Masculin
Messages postés : 726
Date d'inscription : 18/10/2011
Jauge LPC :
Gérer plusieurs inventaires 891527140043 / 10043 / 100Gérer plusieurs inventaires 8915271400

Gérer plusieurs inventaires Membre10
Gérer plusieurs inventaires Altrui10
Gérer plusieurs inventaires Script10
Gérer plusieurs inventaires Collec10
Gérer plusieurs inventaires Collec11
Gérer plusieurs inventaires Collec12
Gérer plusieurs inventaires Collec13
Gérer plusieurs inventaires Zibrop11


Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires EmptyLun 25 Nov 2013 - 20:48

Code:
=begin
 Multiple Inventories
 by Fomar0153
 Version 1.1
 ----------------------
 Notes
 ----------------------
 Allows you to easily handle multiple inventories in game.
 ----------------------
 Instructions
 ----------------------
 The default inventory is called "Main" you can change it below
 if you wish.
 To change inventory call:
 $game_party.change_inventory(name)
 To merge two inventories call:
 $game_party.merge_inventories(inv1, inv2)
 inv1 will recieve all the gold and items in inv2
 If ERASE_WHEN_MERGE is set to true then inv2 will be erased after
 the merge.
 ----------------------
 Change Log
 ----------------------
 1.0 -> 1.1 Updated a glitch causing gold not to change when you change inventory.
 ----------------------
 Known bugs
 ----------------------
 None
=end
class Game_Party < Game_Unit
 #--------------------------------------------------------------------------
 # ? Set the name of your starting inventory here
 #--------------------------------------------------------------------------
 START_INVENTORY = "Main"
 #--------------------------------------------------------------------------
 # ? Set the name of your starting inventory here
 #--------------------------------------------------------------------------
 ERASE_WHEN_MERGE = true
 #--------------------------------------------------------------------------
 # ? Aliased
 #--------------------------------------------------------------------------
 alias mi_initialize initialize
 def initialize
 mi_initialize
 @current_inventory = START_INVENTORY
 @gold = {}
 @gold[START_INVENTORY] = 0
 @last_item = Game_BaseItem.new
 end
 #--------------------------------------------------------------------------
 # ? New, example call $game_party.change_inventory(name)
 #--------------------------------------------------------------------------
 def change_inventory(name)
 if @gold[name].nil?
 @gold[name] = 0
 @items[name] = {}
 @weapons[name] = {}
 @armors[name] = {}
 end
 @current_inventory = name
 end
 #--------------------------------------------------------------------------
 # ? New, example call $game_party.merge_inventories(inv1, inv2)
 #--------------------------------------------------------------------------
 def merge_inventories(inv1, inv2)
 return if @gold[inv1].nil? or @gold[inv2].nil?
 @current_inventory = inv1
 @gold[inv1] += @gold[inv2]
 @gold[inv2] = nil if ERASE_WHEN_MERGE
 for item in @items[inv2].keys
 gain_item($data_items[item.to_i], @items[inv2][item])
 end
 @items[inv2] = nil if ERASE_WHEN_MERGE
 for weapon in @weapons[inv2].keys
 gain_item($data_weapons[weapon.to_i], @weapons[inv2][weapon])
 end
 @weapons[inv2] = nil if ERASE_WHEN_MERGE
 for armor in @armors[inv2].keys
 gain_item($data_armors[armor.to_i], @armors[inv2][armor])
 end
 @armors[inv2] = nil if ERASE_WHEN_MERGE
 end
 #--------------------------------------------------------------------------
 # ? Aliased
 #--------------------------------------------------------------------------
 alias mi_init_all_items init_all_items
 def init_all_items
 mi_init_all_items
 @items[START_INVENTORY] = {}
 @weapons[START_INVENTORY] = {}
 @armors[START_INVENTORY] = {}
 end
 #--------------------------------------------------------------------------
 # ? New
 #--------------------------------------------------------------------------
 def gold
 return @gold[@current_inventory]
 end
 #--------------------------------------------------------------------------
 # ? Rewrites
 #--------------------------------------------------------------------------
 def items
 @items[@current_inventory].keys.sort.collect {|id| $data_items[id] }
 end
 #--------------------------------------------------------------------------
 # ? Rewrites
 #--------------------------------------------------------------------------
 def weapons
 @weapons[@current_inventory].keys.sort.collect {|id| $data_weapons[id] }
 end
 #--------------------------------------------------------------------------
 # ? Rewrites
 #--------------------------------------------------------------------------
 def armors
 @armors[@current_inventory].keys.sort.collect {|id| $data_armors[id] }
 end
 #--------------------------------------------------------------------------
 # ? Rewrites
 #--------------------------------------------------------------------------
 def item_container(item_class)
 return @items[@current_inventory]  if item_class == RPG::Item
 return @weapons[@current_inventory] if item_class == RPG::Weapon
 return @armors[@current_inventory]  if item_class == RPG::Armor
 return nil
 end
 #--------------------------------------------------------------------------
 # ? Rewrites
 #--------------------------------------------------------------------------
 def gain_gold(amount)
 @gold[@current_inventory] = [[@gold[@current_inventory] + amount, 0].max, max_gold].min
 end
end
Voila l'indentation est parfaite.
compare les deux begin le mien n'a pas d'espace avant le "=".
Revenir en haut Aller en bas
Contenu sponsorisé




Gérer plusieurs inventaires Empty
MessageSujet: Re: Gérer plusieurs inventaires   Gérer plusieurs inventaires Empty

Revenir en haut Aller en bas
 
Gérer plusieurs inventaires
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Quest Legend 2 - 2 inventaires
» [VX] Gérer la faim et la soif
» Plusieurs questions
» [MV] Plusieurs demandes
» Plusieurs charas

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le Palais Créatif :: ~ PARTAGE ~ :: Scripts et plugins :: RPG Maker VXAce :: Système-
Sauter vers: