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



Le deal à ne pas rater :
Cartes Pokémon 151 : où trouver le coffret Collection Alakazam-ex ?
Voir le deal

Partagez
 

 [Vx-Ace]Alternate Drops

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 89152714006 / 1006 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Projet16
[Vx-Ace]Alternate Drops Collec12


[Vx-Ace]Alternate Drops Empty
MessageSujet: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMar 21 Aoû 2012 - 17:55

Bonjour,
Je viens vous partager un script pour VXACE.

Post original (traduit par Balbereith) :
___________________________________________________________________________________________________________________________________________________________________________
Modern Algebra a dit qu'il rajouterait des interrupteurs à son script de drop additionnel,
ce qu'il n'a pas encore fait.
Ce script a été codé en réponse à une demande.

Introduction
Permet au ennemis de dropper des objets alternatifs quand certains interrupteurs sont activés

Caractéristiques

Utilisez les notes (BDD : ennemi) pour paramétrer les drops alternatifs quand un interrupteur est activé.

Screen :

[Vx-Ace]Alternate Drops Dropswitches
quand l'interrupteur d'id 1 est activé, l'item d'id 1 est droppé à 100% et l'arme d'id 1 à 50% et lorsque l'interrupteur 2 est activé l'ennemi drop à 100% l'armure d'id 1

Comment paramétrer.

Pour utiliser ce script, ajoutez juste une note à l'ennemi que vous voulez faire dropper un objet alternatif. La note doit avoir la forme suivante :


nombre1 doit être remplacé par l'id de l'interrupteur que vous voulez comme interrupteur pour activer le drop alternatif.
Catégorie doit être remplacé par item (objet), armor (armure) ou weapon (arme).
nombre2 doit être remplacé par l'id de l'objet, armure ou arme que vous voulez dropper.
nombre3 doit être remplacé par un dénominateur de fraction en 1/X qui représente la chance que le drop arrive.

Le script
Code:
#Alternate Drops on Encounters - Eshra

#Permet aux ennemis de dropper des objets alternatifs, arme ou armure quand un interrupteur
#est activé avant le début du combat.

#Comment paramétrer.
#Pour utiliser ce script, ajoutez juste une note à l'ennemi que vous voulez faire dropper
# un objet alternatif. La note doit avoir la forme suivante :
#<when nombre1 catégorie  nombre2 1/ nombre3>

#nombre1 doit être remplacé par l'id de l'interrupteur que vous voulez
# comme interrupteur pour activer le drop alternatif.
#Catégorie doit être remplacé par item (objet), armor (armure) ou weapon (arme).
#nombre2 doit être remplacé par l'id de l'objet, armure ou arme que vous voulez dropper.
#nombre3 doit être remplacé par un dénominateur de fraction en 1/X qui représente
# la chance que le drop arrive.

#Exemple
#Si vous voulez que l'ennemi drop l'objet d'id 5 une fois sur 4 quand l’interrupteur 73 est activé.
#et que vous voulez aussi que l'ennemi drop à 5% l'armure 16 quand l'interrupteur 89 est activé.
#Vous devrez écrire la note suivante dans la BDD de l'ennemi
#<when 73 item 5 1/4>
#<when 89 armor 16 1/20>

#Les majuscules importe peu.

#Bug fixes

#Regular Expressions
module ENCOUNTER_CHANGE
  module RE
                  ITEM = /<when (\d+) item (\d+) 1\/(\d+)>/i
                  WEAPON = /<when (\d+) WEAPON (\d+) 1\/(\d+)>/i
                  ARMOR = /<when (\d+) ARMOR (\d+) 1\/(\d+)>/i
  end
end

module DataManager
  #--------------------------------------------------------------------------
  # alias method: load_database
  #--------------------------------------------------------------------------
  class <<self; alias load_database_encounter_change load_database; end
  def self.load_database
                $alt_enemy_drops ||= {}
               
                load_database_encounter_change
                load_notetags_encounter_change
  end

  #--------------------------------------------------------------------------
  # new method: load_notetags_abe
  #--------------------------------------------------------------------------
  def self.load_notetags_encounter_change
                group = $data_enemies
                  for obj in group
                                next if obj.nil?
                                obj.load_notetags_encounter_change
                end
  end
end # DataManager


class RPG::Enemy < RPG::BaseItem
  def load_notetags_encounter_change
                $alt_enemy_drops[id] = Hash.new
                self.note.split(/[\r\n]+/).each { |line|
                  next unless line != nil# && $1 != nil
                  case line
                  when ENCOUNTER_CHANGE::RE::ITEM
                                add_alternate_drop(1,$1.to_i, $2.to_i, $3.to_i)
                  when ENCOUNTER_CHANGE::RE::WEAPON
                                add_alternate_drop(2,$1.to_i, $2.to_i,$3.to_i)
                  when ENCOUNTER_CHANGE::RE::ARMOR
                                add_alternate_drop(3,$1.to_i, $2.to_i,$3.to_i) 
                  end
                } # self.note.split
  end

  def add_alternate_drop(type, switch, base_item, chance)
                if !$alt_enemy_drops[id][type]
                  $alt_enemy_drops[id][type] = {}
                end
               
                if !$alt_enemy_drops[id][type][switch]
                  $alt_enemy_drops[id][type][switch] = []
                end
               
                $alt_enemy_drops[id][type][switch].push([base_item, chance])
  end

  def delete_alt_drop_item(item_id, kind, denominator, delete = true)
                count = 0
                @drop_items.each{ |drop_item|
                  same_item = drop_item.data_id == item_id && drop_item.kind == kind
                  same_item = same_item && drop_item.denominator == denominator
                  if  same_item
                                return true if !delete
                                @drop_items.delete_at(count)
                                count -= 1
                  end
                  count += 1
                }
        return false
  end
end

module BattleManager
  #--------------------------------------------------------------------------
  # * Setup
  #--------------------------------------------------------------------------
  class <<self; alias setup_encounter_change setup; end
  def self.setup(troop_id, can_escape = true, can_lose = false)
                troop_contains(troop_id)
                setup_encounter_change(troop_id, can_escape, can_lose)
  end

  def self.troop_contains(troop_id)
               
                troop = $data_troops[troop_id]
                $alt_items ||= {}
               
                loaded_members = []
                troop.members.each{ |member|
                enemy_id = member.enemy_id
                if loaded_members.include?(enemy_id)
                  next
                end
                loaded_members.push(enemy_id)
               
                  type_keys = $alt_enemy_drops[member.enemy_id].keys
                  type_keys.each{ |type|
                 
                        switch_keys = $alt_enemy_drops[member.enemy_id][type].keys
                        switch_keys.each{ |switch|
                       
                          if $game_switches[switch]
                                $alt_enemy_drops[member.enemy_id][type][switch].each{ |item_data|
                               
                                  alternate_item = RPG::Enemy::DropItem.new
                                  alternate_item.kind = type
                                  alternate_item.data_id = item_data[0]
                                  alternate_item.denominator = item_data[1]
                                  if $data_enemies[member.enemy_id].delete_alt_drop_item(item_data[0], type, item_data[1], false)
                                        #item was already in enemy.drop_items so skip it
       
                                        next
                                  end
                                  $data_enemies[member.enemy_id].drop_items.push(alternate_item)
                                }
                          else
                                $alt_enemy_drops[member.enemy_id][type][switch].each{ |item_data|
                                  $data_enemies[member.enemy_id].delete_alt_drop_item(item_data[0], type, item_data[1])
                                }
                          end #end if $game_switches[switch]
                        } #end switch_keys.each
                  } #end type_keys.each
                } #end troop.each
  end #end self.troop_contains(troop_id)
end #end BattleManager

Crédits : Eshra et Balbereith pour la traduction.
A+
Revenir en haut Aller en bas
Magicalichigo
Ancienne staffeuse
Ancienne staffeuse
Magicalichigo

Féminin
Messages postés : 4252
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 891527140056 / 10056 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Projet10
[Vx-Ace]Alternate Drops Roi-de10
[Vx-Ace]Alternate Drops Haberg10
[Vx-Ace]Alternate Drops Altrui10
[Vx-Ace]Alternate Drops Projet10
[Vx-Ace]Alternate Drops Event-10
[Vx-Ace]Alternate Drops Graphi10
[Vx-Ace]Alternate Drops Dessin10
[Vx-Ace]Alternate Drops Travai10
[Vx-Ace]Alternate Drops Mythe_10
[Vx-Ace]Alternate Drops Membre15
[Vx-Ace]Alternate Drops Pakont10
[Vx-Ace]Alternate Drops Collec10
[Vx-Ace]Alternate Drops Collec11
[Vx-Ace]Alternate Drops Collec12
[Vx-Ace]Alternate Drops Riche_10


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMar 21 Aoû 2012 - 18:09

Merci pour la partage, je te mets les points.
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 89152714006 / 1006 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Projet16
[Vx-Ace]Alternate Drops Collec12


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMar 21 Aoû 2012 - 18:10

Merci Very Happy
Tien, j'avais pas vus les barre avec des chose que l'on fais
en dessous de mon avatar.
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
[Vx-Ace]Alternate Drops 891527140069 / 10069 / 100[Vx-Ace]Alternate Drops 8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
[Vx-Ace]Alternate Drops Membre15
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Travai10
[Vx-Ace]Alternate Drops Event-10
[Vx-Ace]Alternate Drops Altrui10
[Vx-Ace]Alternate Drops Riche_10
[Vx-Ace]Alternate Drops Couhil10
[Vx-Ace]Alternate Drops Nain_p11
[Vx-Ace]Alternate Drops Connar10


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 0:58

ca ne m'étonne pas Very Happy

Merci du partage.
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 89152714006 / 1006 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Projet16
[Vx-Ace]Alternate Drops Collec12


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 12:36

Jin, oui sa fait quelque jour voir quelque semaine que je n'étais pas venu,
je passais vite fait mais bon voilà. Very Happy
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
[Vx-Ace]Alternate Drops 891527140069 / 10069 / 100[Vx-Ace]Alternate Drops 8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
[Vx-Ace]Alternate Drops Membre15
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Travai10
[Vx-Ace]Alternate Drops Event-10
[Vx-Ace]Alternate Drops Altrui10
[Vx-Ace]Alternate Drops Riche_10
[Vx-Ace]Alternate Drops Couhil10
[Vx-Ace]Alternate Drops Nain_p11
[Vx-Ace]Alternate Drops Connar10


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 13:40

Les barres ont toujours été là ...
t'étais même pas sur le forum quand elles sont apparut.
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 89152714006 / 1006 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Projet16
[Vx-Ace]Alternate Drops Collec12


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 13:49

Ah, c'est que j'en avais pas a se moment là Very Happy
Revenir en haut Aller en bas
Jin
Ancien staffeux
Ancien staffeux
Jin

Masculin
Messages postés : 8557
Date d'inscription : 08/12/2010
Jauge LPC :
[Vx-Ace]Alternate Drops 891527140069 / 10069 / 100[Vx-Ace]Alternate Drops 8915271400

G 1 petit zizi Very Happy
Nn C pa vré Sad
[Vx-Ace]Alternate Drops Membre15
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Travai10
[Vx-Ace]Alternate Drops Event-10
[Vx-Ace]Alternate Drops Altrui10
[Vx-Ace]Alternate Drops Riche_10
[Vx-Ace]Alternate Drops Couhil10
[Vx-Ace]Alternate Drops Nain_p11
[Vx-Ace]Alternate Drops Connar10


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 14:13

Ah mais tu parles des distinctions xDD
Oui ok ca c'est fait il y a pas longtemps. Quoi qu'avant c'était des pandas.
Revenir en haut Aller en bas
Brandobscure001
Paladin (niveau 1)
Paladin (niveau 1)
Brandobscure001

Masculin
Messages postés : 544
Date d'inscription : 02/08/2011
Jauge LPC :
[Vx-Ace]Alternate Drops 89152714006 / 1006 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Projet16
[Vx-Ace]Alternate Drops Collec12


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 16:43

Ou est ce qu'on peux voir
toute les barres qu'on peux avoir ?
Revenir en haut Aller en bas
Ti-Max
Membre V.I.P.
Membre V.I.P.
Ti-Max

Masculin
Messages postés : 2259
Date d'inscription : 11/07/2012
Jauge LPC :
[Vx-Ace]Alternate Drops 891527140080 / 10080 / 100[Vx-Ace]Alternate Drops 8915271400

[Vx-Ace]Alternate Drops Membre10
[Vx-Ace]Alternate Drops Membre15
[Vx-Ace]Alternate Drops Padago10
[Vx-Ace]Alternate Drops Altrui10
[Vx-Ace]Alternate Drops Event-10
[Vx-Ace]Alternate Drops Partag10
[Vx-Ace]Alternate Drops Promot10
[Vx-Ace]Alternate Drops Riche_10
[Vx-Ace]Alternate Drops Collec10
[Vx-Ace]Alternate Drops Collec11
[Vx-Ace]Alternate Drops Collec12
[Vx-Ace]Alternate Drops Mister10
[Vx-Ace]Alternate Drops Projet15
[Vx-Ace]Alternate Drops Projet10


[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops EmptyMer 22 Aoû 2012 - 16:52

Revenir en haut Aller en bas
Contenu sponsorisé




[Vx-Ace]Alternate Drops Empty
MessageSujet: Re: [Vx-Ace]Alternate Drops   [Vx-Ace]Alternate Drops Empty

Revenir en haut Aller en bas
 
[Vx-Ace]Alternate Drops
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

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 :: Combat-
Sauter vers: