AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  



Le Deal du moment :
Cartes Pokémon : la prochaine extension ...
Voir le deal

Partagez
 

 Reduire le nombre d'objet porté

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Thereus
Poulet Lv.1
Poulet Lv.1
Thereus


Inscrit le : 15/04/2010
Messages : 3

Reduire le nombre d'objet porté Empty
MessageSujet: Reduire le nombre d'objet porté   Reduire le nombre d'objet porté Icon_minitimeMar 11 Mai 2010 - 2:33

Bonjour, je voudrais savoir comment je pourrais créé un menu d'inventaire, avec un nombre très restreint d'items. Je précise que je ne cherche pas à réduire le nombre d'items de chaques types, mais bel et bien le nombre total d'items portés par le héros.
Revenir en haut Aller en bas
Azuma-01
Poulet trizo Lv.3
Poulet trizo Lv.3
Azuma-01


Masculin Age : 32
Inscrit le : 18/11/2009
Messages : 42

Reduire le nombre d'objet porté Empty
MessageSujet: Re: Reduire le nombre d'objet porté   Reduire le nombre d'objet porté Icon_minitimeMar 11 Mai 2010 - 13:05

Tout ce joue dans Game_Party, dans ce bout de code
Code:
  #--------------------------------------------------------------------------
  # * Gain Items (or lose)
  #    item          : Item
  #    n            : Number
  #    include_equip : Include equipped items
  #--------------------------------------------------------------------------
  def gain_item(item, n, include_equip = false)
    number = item_number(item)
    case item
    when RPG::Item
      @items[item.id] = [[number + n, 0].max, 99].min
    when RPG::Weapon
      @weapons[item.id] = [[number + n, 0].max, 99].min
    when RPG::Armor
      @armors[item.id] = [[number + n, 0].max, 99].min
    end
    n += number
    if include_equip and n < 0
      for actor in members
        while n < 0 and actor.equips.include?(item)
          actor.discard_equip(item)
          n += 1
        end
      end
    end
  end
a la fin des "[[number + n, 0].max, 99].min" ajoute l'une de ces lignes
Code:
if items.size < n # si inventaire total est inférieur à n
if @items.size < n # si le nombre d'objet est inférieur à n
if @weapons.size < n # si le nombre d'arme est inférieur à n
if @armors.size < n # si le nombre d'armure est inférieur à n
comme tu peut le constater, "@items[item.id] = [[number + n, 0].max, 99].min" gere le gain d'item, "@weapons[item.id] = [[number + n, 0].max, 99].min", les gains d'armes et "@armors[item.id] = [[number + n, 0].max, 99].min" celle des armures. exemple:
Code:
  #--------------------------------------------------------------------------
  # * Gain Items (or lose)
  #    item          : Item
  #    n            : Number
  #    include_equip : Include equipped items
  #--------------------------------------------------------------------------
  def gain_item(item, n, include_equip = false)
    number = item_number(item)
    case item
    when RPG::Item
      @items[item.id] = [[number + n, 0].max, 99].min if @items.size < 168
    when RPG::Weapon
      @weapons[item.id] = [[number + n, 0].max, 99].min if @weapons.size < 80
    when RPG::Armor
      @armors[item.id] = [[number + n, 0].max, 99].min if @armors.size < 80
    end
    n += number
    if include_equip and n < 0
      for actor in members
        while n < 0 and actor.equips.include?(item)
          actor.discard_equip(item)
          n += 1
        end
      end
    end
  end
donne reçois un objet si il en a moins de 168 différant, reçois une arme si il en a moins de 80 et reçois une armure si il en a moins de 80.

Par-contre,
Code:
  #--------------------------------------------------------------------------
  # * Gain Items (or lose)
  #    item          : Item
  #    n            : Number
  #    include_equip : Include equipped items
  #--------------------------------------------------------------------------
  def gain_item(item, n, include_equip = false)
    number = item_number(item)
    case item
    when RPG::Item
      @items[item.id] = [[number + n, 0].max, 99].min if items.size < 200
    when RPG::Weapon
      @weapons[item.id] = [[number + n, 0].max, 99].min if items.size < 200
    when RPG::Armor
      @armors[item.id] = [[number + n, 0].max, 99].min if items.size < 200
    end
    n += number
    if include_equip and n < 0
      for actor in members
        while n < 0 and actor.equips.include?(item)
          actor.discard_equip(item)
          n += 1
        end
      end
    end
  end
permet de recevoir un item (toutes catégories confondu) si son inventaire est inférieur à 200

Ps: le nombre maximal de chaques types correspond au 99 de "[[number + n, 0].max, 99]"
Revenir en haut Aller en bas
Thereus
Poulet Lv.1
Poulet Lv.1
Thereus


Inscrit le : 15/04/2010
Messages : 3

Reduire le nombre d'objet porté Empty
MessageSujet: Re: Reduire le nombre d'objet porté   Reduire le nombre d'objet porté Icon_minitimeJeu 13 Mai 2010 - 8:43

Merci je vais insérer le bout de script dessuite. C'est sympa d'avoir répondu aussi vite !
Revenir en haut Aller en bas
Contenu sponsorisé




Reduire le nombre d'objet porté Empty
MessageSujet: Re: Reduire le nombre d'objet porté   Reduire le nombre d'objet porté Icon_minitime

Revenir en haut Aller en bas
 

Reduire le nombre d'objet porté

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Porte armure / porte manteau
» [Vx-Ace]Réduire les animations.
» Reduire la taille de la demo
» Comment limiter le nombre d'items?
» [Résolu] Réduire la taille du menu

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Requêtes :: Archives-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit