E-magination
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


~ S'évader de la banalité... Et entrer dans l'imaginaire ! ~
 
AccueilGuelnika, le site de E-m !ChatS'enregistrerConnexion
Le Deal du moment :
SSD interne Crucial BX500 2,5″ SATA – 500 ...
Voir le deal
29.99 €

 

 [VX.Ace] Commande simple "voler"

Aller en bas 
3 participants
AuteurMessage
Choco-sama
Fan traître de harusame lvl 69
Choco-sama


Nombre de messages : 13810
Age : 37

[VX.Ace] Commande simple "voler" Empty
MessageSujet: [VX.Ace] Commande simple "voler"   [VX.Ace] Commande simple "voler" Icon_minitimeMar 30 Juil 2013, 15:46

Commande simple "voler"

Auteur du script: Zetu


Introduction:
Beaucoup de gens se sont plaint à ce sujet. VXAce n'a pas de script de vol d'objet par défaut. Donc, Zetu a fait ce script de vol simple.

Caractéristiques:

  *  Lier une compétence, comme voler, et de prendre des objets à partir d'un ennemi.


Code:
module Z05
  
  STEAL_SKILL = /<steal>/i
  STEAL_OBJ   = /<steal[:]*\s*(WEAPON|ITEM|ARMOR|GOLD)\s*(\d+)>/i
  
  NO_STEALS     = "%s has nothing to steal."
  STEAL_GOLD    = "Stole %s gold from %s."
  STEAL_ITEM    = "Stole %s from %s."
  
 end

class Window_BattleLog < Window_Selectable
  
  def display_steal(target)
    item = target.last_stolen_item
 print item;print "\n"
    if item.nil?
  add_text(sprintf(Z05::NO_STEALS, target.name))
  print "Nothing to Steal\n"
 elsif item.is_a?(Integer)
  add_text(sprintf(Z05::STEAL_GOLD, item, target.name))
  print "Stole #{item} Gold\n"
 else
  add_text(sprintf(Z05::STEAL_ITEM, item.name, target.name))
  print "Stole #{item.name}\n"
 end
 target.reset_steal_item
  end
  
  alias z05dd display_damage
  def display_damage(target, item)
    z05dd(target, item)
 display_steal(target) if item.steal?
  end
  
end

class RPG::UsableItem < RPG::BaseItem
  def steal?
    self.note.scan(Z05::STEAL_SKILL){return true}
 return false
  end
end

class Game_Enemy < Game_Battler
 attr_reader :last_stolen_item
  
  alias z05_initialize initialize
  def initialize(index, enemy_id)
    z05_initialize(index, enemy_id)
    z05_start
  end
  
  def z05_start
    @steal_data = []
    self.enemy.note.scan(Z05::STEAL_OBJ){|type, id|
      case type
      when /item/i
        @steal_data.push($data_items[id.to_i])
      when /weapon/i
        @steal_data.push($data_weapons[id.to_i])
      when /armor/i
        @steal_data.push($data_armors[id.to_i])
      when /gold/i
        @steal_data.push(id.to_i)
      end
    }
  end
  
  def apply_steal_effect
    return nil if @steal_data.size==0
    return @last_stolen_item=@steal_data.delete_at(rand(@steal_data.size))
  end
  
  def item_apply(user, item)
    super
 add_item_steal_effect if item.steal? unless @result.missed
  end
  
  def add_item_steal_effect
    @stolenitem = apply_steal_effect
 return if @stolenitem.nil?
 if @stolenitem.is_a?(Integer)
  $game_party.gain_gold(@stolenitem)
 else
  $game_party.gain_item(@stolenitem, 1)
 end
  end
  
  def reset_steal_item
    @last_stolen_item=nil
  end
  
end


Il est recommandé d'utiliser le script "Exact Extention", pour le faire apparaître comme une commande.

____________
Zim a écrit:
voire les super-hardcore-poke-nerds genre Choco


[VX.Ace] Commande simple "voler" 1ABov
"Quand j'ai faim, hop, un voisin!"

Derniers Pokemons Chromatiques/ Shiney capturés 2019/2020: Metamorph/ Charbi
Revenir en haut Aller en bas
Relm
---Fantôme--- Lv 0
Relm


Nombre de messages : 40942
Age : 33

[VX.Ace] Commande simple "voler" Empty
MessageSujet: Re: [VX.Ace] Commande simple "voler"   [VX.Ace] Commande simple "voler" Icon_minitimeMar 30 Juil 2013, 15:58

Aucune infos sur le gameplay du skill ?
Revenir en haut Aller en bas
Choco-sama
Fan traître de harusame lvl 69
Choco-sama


Nombre de messages : 13810
Age : 37

[VX.Ace] Commande simple "voler" Empty
MessageSujet: Re: [VX.Ace] Commande simple "voler"   [VX.Ace] Commande simple "voler" Icon_minitimeMar 30 Juil 2013, 16:01

Malheureusement, je n'en ai pas trouvé. Cela vient d'une commu anglaise, mais je fouillerai encore au cas où ^^'

Donc, à part chiper un objet, on n'en sait pas tant que ça, désolé ^^;

____________
Zim a écrit:
voire les super-hardcore-poke-nerds genre Choco


[VX.Ace] Commande simple "voler" 1ABov
"Quand j'ai faim, hop, un voisin!"

Derniers Pokemons Chromatiques/ Shiney capturés 2019/2020: Metamorph/ Charbi
Revenir en haut Aller en bas
garywiss6
Rétrograde Lv 54
Rétrograde Lv 54
garywiss6


Nombre de messages : 5302
Age : 29

[VX.Ace] Commande simple "voler" Empty
MessageSujet: Re: [VX.Ace] Commande simple "voler"   [VX.Ace] Commande simple "voler" Icon_minitimeMar 30 Juil 2013, 16:14

en lisant le script, beh ça vole l'objet/l'argent que donne l'ennemi à la fin du combat mais j'ai pas l'impression de voir un calcul de proba ou autre, faudrait tester le script in-game pour voir Owi toutafé olala

____________
Un soir banal sur skype a écrit:
Moi : C'était quoi ce cri ?
Choco : C'est ma saucisse qui a hurlé.
Revenir en haut Aller en bas
http://vuesubjective.org/Garywiss/
Contenu sponsorisé





[VX.Ace] Commande simple "voler" Empty
MessageSujet: Re: [VX.Ace] Commande simple "voler"   [VX.Ace] Commande simple "voler" Icon_minitime

Revenir en haut Aller en bas
 
[VX.Ace] Commande simple "voler"
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
E-magination :: ~ Forums d'enrichissement ~ :: Apprentissage et partage :: RPG Maker VX & VX Ace :: Tutoriels / Scripts-
Sauter vers: