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



-17%
Le deal à ne pas rater :
SSD interne Crucial SSD P3 1To NVME à 49,99€
49.99 € 59.99 €
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
» Réduire taille fenêtre + carreaux
» [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 | Cookies | Forum gratuit