Partagez
Aller en bas
Soshi
Soshi
Membre

Nombre de messages : 20
Distinction : aucune
Date d'inscription : 16/03/2008

[VX] Magasin de Skills Empty [VX] Magasin de Skills

le Ven 27 Juin 2008 - 23:05
Magasin de Skills

Auteur : Nechigawara Sanzenin

Informations : Ce script sert à faire un magasin de compétences, en gros un magasin ou on achéte les compétences. Il y a des compétences ou il faut un certain niveau pour l'acheter.

Instructions :
Vous devez mettre dans un PNJ en appel de script ceci :
$skill_shop = [1,2,3,6,7] 1,2,3,6,7 etc... étant les compétences dans votre base de données.
$scene = Scene_Skill_Shop.new Pour appeler le script...
Tester et fonctionnel.

Images :
Spoiler:
[VX] Magasin de Skills Imageop5

Script plus bas.
Soshi
Soshi
Membre

Nombre de messages : 20
Distinction : aucune
Date d'inscription : 16/03/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 27 Juin 2008 - 23:06
Scripts :
Spoiler:
Code:
#===============================================================
#                         
#                www.rpgmakervx-fr.com                                         
#     
#===============================================================
#==============================================================================
# Skill Shop for RMVX Ver 3.1
#==============================================================================
#MediaFire Hosting# By Nechigawara Sanzenin
# WARNING!! : This script can use on RPG Maker VX Only!! (XP Not Support)
#==============================================================================
# Buy Skill Option For RMVX
#==============================================================================
#Version Log
#==============================================================================
#2.0 Add Level requirement - Change Hero Select Window
#3.0 Change How to set Price , Add wait Level Up option
#3.0 Fixed Bug, Edit Price Key Word
#==============================================================================
=begin

How to Use:

You will add "$skill_shop =[Id of Skill]" 
To Call Script to set id of skill for sell.
You will add "$scene = Scene_Skill_Shop.new" 
To Call Skill Shop Windows.

Example:
$skill_shop = [1,2,3,6,7]
$scene = Scene_Skill_Shop.new

You can turn on/off option under "# Setting".
You can set text to use in Skill Shop under "# Learn Text".
You can add "[p-Price-]" for set Skill Price at Note in Skill Database.
Example : For set Price to 150

[p150]

You can set Skill that the fighter each person can learn under "# Hero Data".

You will setting look like this in Hero Data
[ID of skill, Level requirement for learn]

Example : if you want actor id 1 can learn skill id 1 at Lv 4
and can learn skill id 2 at lv 3. You will setting look like this

1 => [ #Id of Actor
 
  [1,4],[2,3],
 
  ],

=end
#==============================================================================
#module SKILL_SHOP
#==============================================================================
module SKILL_SHOP
  # Setting
  Wait_Lv_Up = false # Wait 1 Lv up for use skill from buy
  Show_cha = false # Show Charactor Graphic in Select Window
  # Learn Text
  How_Learn = "À quel héros ?"
  Can_Learn = "Peut apprendre"
  Can_Learn_Lv = "Il faut le Lv"
  Cant_Learn = ""
  Learnt = "Appris"
  Teach = "Apprendre"
  Cancel = "Annuler"
  Next_Lv = "Prochain Lv"
  Can_use = "%s peut employer maintenant !"
  # Price Data For Non Set
  PRICE = 200
  # Hero Data
  SKILL_BUY = {
  # Add what skill can hero buy Here
  # [ID of skill,Level]
 
  1 => [ #Id of Actor
 
  [1,4],[2,3],[3,1],
 
  ],
 
  2 => [ #Id of Actor
 
  [1,4],[2,3],[3,1],
 
  ],
 
  # End
  }
  # Add Price
  def self.skill_price(id)
    text = $data_skills[id].note
    text.scan(/\[p([0-9]+)\]/)
    if $1.to_i != 0 then
      price = $1.to_i
    else
      price = PRICE
    end
    return price
  end
  # Add Hero id
  def self.skill_buy(id)
    if SKILL_BUY.include?(id)
      return SKILL_BUY[id]
    else
      return []
    end
  end
end
#==============================================================================
#class Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  def setup(actor_id)
    actor = $data_actors[actor_id]
    @actor_id = actor_id
    @name = actor.name
    @character_name = actor.character_name
    @character_index = actor.character_index
    @face_name = actor.face_name
    @face_index = actor.face_index
    @class_id = actor.class_id
    @weapon_id = actor.weapon_id
    @armor1_id = actor.armor1_id



    @armor2_id = actor.armor2_id
    @armor3_id = actor.armor3_id
    @armor4_id = actor.armor4_id
    @level = actor.initial_level
    @exp_list = Array.new(101)
    make_exp_list
    @exp = @exp_list[@level]
    @skills = []
    @le_skills = []
    @le = []
    for i in self.class.learnings
      learn_skill(i.skill_id) if i.level <= @level
    end
    clear_extra_values
    recover_all
  end
  #--------------------------------------------------------------------------
  def le_skills
    result = []
    for i in @le_skills
      result.push($data_skills[i])
    end
    return result
  end
  #--------------------------------------------------------------------------
  def learn_le_skill(skill_id)
    unless skill_learn?($data_skills[skill_id])
      @le_skills.push(skill_id)
      @le_skills.sort!
    end
  end
  #--------------------------------------------------------------------------
  def forget_skill(skill_id)
    @skills.delete(skill_id)
    @le_skills.delete(skill_id)
  end
  #--------------------------------------------------------------------------
  def skill_learn?(skill)
    if @skills.include?(skill.id)
      return true
    elsif @le_skills.include?(skill.id)
      return true
    else
      return false
    end
  end
  #--------------------------------------------------------------------------
  def le_learn_skill(skill_id)
    unless @skills.include?(skill_id)
      @skills.push(skill_id)
      @skills.sort!
    end
  end
  #--------------------------------------------------------------------------
  def skill_can_use?(skill)
    return false if @le_skills.include?(skill.id)
    return false unless skill_learn?(skill)
    return super
  end
  #--------------------------------------------------------------------------
  def learn?(skill)
    learn = skill_learn?(skill)
    if learn == true
      return false
    else
      return true
    end
  end
  #--------------------------------------------------------------------------
  def le_skill?(skill)
    return @le_skills.include?(skill.id)
  end
  #--------------------------------------------------------------------------
  def display_level_up(new_skills)
    $game_message.new_page
    text = sprintf(Vocab::LevelUp, @name, Vocab::level, @level)
    $game_message.texts.push(text)
    for skill in new_skills
      unless @le.include?(skill.id)
        text = sprintf(Vocab::ObtainSkill, skill.name)
        $game_message.texts.push(text)
      end
    end
    for i in 0...@le.size
      id = @le[i]
      name = $data_skills[id].name
      text = sprintf(SKILL_SHOP::Can_use, name)
      $game_message.texts.push(text)
    end
    @le = []
  end
  #--------------------------------------------------------------------------
  alias inc_level_up level_up
  def level_up
    inc_level_up
    @le = []
    for i in 0...@le_skills.size
      id = @le_skills[i]
      le_learn_skill(id)
      @le.push(id)
    end
    @le_skills = []
  end
end
#==============================================================================
#class Window_Skill_ShopBuy
#==============================================================================
class Window_Skill < Window_Selectable
  #--------------------------------------------------------------------------
  def refresh
    @data = []
    for skill in @actor.skills
      @data.push(skill)
      if skill.id == @actor.last_skill_id
        self.index = @data.size - 1
      end
    end
    for skill in @actor.le_skills
      @data.push(skill)
    end
    @item_max = @data.size
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    skill = @data[index]
    if skill != nil
      rect.width -= 4
      enabled = @actor.skill_can_use?(skill)
      draw_item_name(skill, rect.x, rect.y, enabled)
      if @actor.le_skill?(skill)
        text = SKILL_SHOP::Next_Lv
      else
        text = @actor.calc_mp_cost(skill)
      end
      self.contents.draw_text(rect, text, 2)
    end
  end
end
#==============================================================================
#class Window_Skill_ShopBuy
#==============================================================================
class Window_Skill_ShopBuy < Window_Selectable
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 304, 304)
    @skill_shop_goods = $skill_shop
    refresh
    self.index = 0
  end
  #--------------------------------------------------------------------------
  def skill
    return @data[self.index]
  end
  #--------------------------------------------------------------------------
  def refresh
    @data = []
    for i in 0...@skill_shop_goods.size
      skill = $data_skills[@skill_shop_goods[i]]
      if skill != nil
        @data.push(skill)
      end
    end
    @item_max = @data.size
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
  #--------------------------------------------------------------------------
  def draw_item(index)
    skill = @data[index]
    price = SKILL_SHOP.skill_price(skill.id)
    enabled = (price <= $game_party.gold)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    draw_item_name(skill, rect.x, rect.y, enabled)
    rect.width -= 4
    self.contents.draw_text(rect, price, 2)
  end
  #--------------------------------------------------------------------------
  def update_help
    @help_window.set_text(skill == nil ? "" : skill.description)
  end
end
Soshi
Soshi
Membre

Nombre de messages : 20
Distinction : aucune
Date d'inscription : 16/03/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 27 Juin 2008 - 23:06
Suite :
Spoiler:
Code:
#==============================================================================
#class Window_Skill_ShopStatus
#==============================================================================
class Window_Skill_ShopStatus < Window_Selectable
  #--------------------------------------------------------------------------
  def initialize(x, y)
    super(x, y, 240, 304)
    @item = nil
    refresh
    self.active = false
    self.index = -1
  end
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    if @item != nil
      self.contents.font.color = system_color
      self.contents.draw_text(4, 0, 200, WLH, SKILL_SHOP::How_Learn)
      for actor in $game_party.members
        x = 4
        y = WLH * (2 + actor.index * 2)
        draw_actor_can_learn(actor, x, y)
      end
    end
  end
  #--------------------------------------------------------------------------
  def draw_actor_can_learn(actor, x, y)
    can = false
    lv = false
    ac_lv = 0
    can_learn = SKILL_SHOP.skill_buy(actor.id)
    id = @item.id
    for i in 0...can_learn.size
      if can_learn[i][0] == id
        can = true
        if can_learn[i][1] <= actor.level
          lv = true
        else
          lv = false
          ac_lv = can_learn[i][1]
        end
        break
      else
        can = false
      end
    end
    enabled = (can and lv and actor.learn?(@item))
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    if SKILL_SHOP::Show_cha
      name = actor.character_name
      index = actor.character_index
      size = contents.text_size(actor.name).width
      draw_character(name, index, x + 20 + size , y + 30)
    end
    self.contents.draw_text(x, y, 200, WLH, actor.name)
    if can == false
      text = SKILL_SHOP::Cant_Learn
    elsif can == true and lv == false
      ac = ac_lv.to_s
      text = SKILL_SHOP::Can_Learn_Lv + " " + ac + "+"
    elsif actor.learn?(@item) == false
      text = SKILL_SHOP::Learnt
    else
      text = SKILL_SHOP::Can_Learn
    end
    self.contents.draw_text(x, y, 200, WLH, text, 2)
  end
  #--------------------------------------------------------------------------
  def item=(item)
    if @item != item
      @item = item
      refresh
    end
  end
  #--------------------------------------------------------------------------
  def update_cursor
    if @index < 0
      self.cursor_rect.empty
    elsif @index < @item_max
      y = WLH * (2 + @index * 2)
      unless SKILL_SHOP::Show_cha
        self.cursor_rect.set(0, y , contents.width, WLH)
      else
        self.cursor_rect.set(0, y - 4, contents.width,34)
      end
    end
  end
end
#==============================================================================
#class Scene_Skill_Shop
#==============================================================================
class Scene_Skill_Shop < Scene_Base
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    create_command_window
    @viewport = Viewport.new(0, 0, 544, 416)
    @help_window = Window_Help.new
    @gold_window = Window_Gold.new(384, 56)
    @dummy_window = Window_Base.new(0, 112, 544, 304)
    @buy_window = Window_Skill_ShopBuy.new(0, 112)
    @buy_window.active = false
    @buy_window.visible = false
    @buy_window.help_window = @help_window
    @status_window = Window_Skill_ShopStatus.new(304, 112)
    @status_window.visible = false
    @status_window.active = false
  end
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    dispose_command_window
    @help_window.dispose
    @gold_window.dispose
    @dummy_window.dispose
    @buy_window.dispose
    @status_window.dispose
  end 
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @help_window.update
    @command_window.update
    @gold_window.update
    @dummy_window.update
    @buy_window.update
    @status_window.update
    if @command_window.active
      update_command_selection
    elsif @buy_window.active
      update_buy_selection
    elsif @status_window.active
      update_target_selection
    end
  end
  #--------------------------------------------------------------------------
  def create_command_window
    s1 = SKILL_SHOP::Teach
    s2 = SKILL_SHOP::Cancel
    @command_window = Window_Command.new(384, [s1, s2], 2)
    @command_window.y = 56
  end
  #--------------------------------------------------------------------------
  def dispose_command_window
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  def update_command_selection
    @help_window.set_text("")
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      case @command_window.index
      when 0
        Sound.play_decision
        @command_window.active = false
        @dummy_window.visible = false
        @buy_window.active = true
        @buy_window.visible = true
        @buy_window.refresh
        @status_window.visible = true
      when 1
        Sound.play_decision
        $scene = Scene_Map.new
      end
    end
  end
  #--------------------------------------------------------------------------
  def update_buy_selection
    @status_window.item = @buy_window.skill
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command_window.active = true
      @dummy_window.visible = true
      @buy_window.active = false
      @buy_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy_window.skill
      @price = SKILL_SHOP.skill_price(@item.id)
      enabled = (@price <= $game_party.gold)
      if not enabled
        Sound.play_buzzer
      else
        Sound.play_decision
        show_target_window
      end
    end
  end
  #--------------------------------------------------------------------------
  def update_target_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      hide_target_window
    elsif Input.trigger?(Input::C)
      @actor = $game_party.members[@status_window.index]
      can = false
      lv = false
      can_learn = SKILL_SHOP.skill_buy(@actor.id)
      id = @item.id
      for i in 0...can_learn.size
        if can_learn[i][0] == id
          can = true
          if can_learn[i][1] <= @actor.level
            lv = true
          else
            lv = false
          end
          break
        else
          can = false
        end
      end
      enabled = (can and lv and @actor.learn?(@item))
      if not enabled
        Sound.play_buzzer
      else
        learn_target(@item.id)
      end
    end
  end
  #--------------------------------------------------------------------------
  def learn_target(skill_id)
    Sound.play_shop
    unless SKILL_SHOP::Wait_Lv_Up
      @actor.learn_skill(skill_id)
    else
      @actor.learn_le_skill(skill_id)
    end
    $game_party.lose_gold(@price)
    @buy_window.refresh
    @gold_window.refresh
    @status_window.refresh
    hide_target_window
  end
  #--------------------------------------------------------------------------
  def show_target_window
    @buy_window.active = false
    @status_window.active = true
    @status_window.index = 0
  end
  #--------------------------------------------------------------------------
  def hide_target_window
    @buy_window.active = true
    @status_window.active = false
    @status_window.index =- 1
  end
end

Le script en anglais mais il faut juste traduire de la ligne 58 à la 66. ( anglais très basics. )
Voilà les vrai phrases en anglais car les miennes sont fausses ( c'est juste pour pas faire long ) :

How_Learn = "What 's hero can learn?"
Can_Learn = "Can Learn"
Can_Learn_Lv = "On Lv"
Cant_Learn = "Can't Learn"
Learnt = "Learnt"
Teach = "Teach"
Cancel = "Cancel"
Next_Lv = "Next Lv"
Can_use = "%s can use now!"
Ultimate
Ultimate
Membre

Nombre de messages : 105
Age : 27
Distinction : aucune
Date d'inscription : 25/06/2008
http://www.sydrus.fr

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 27 Juin 2008 - 23:28
Haa énorme merci bien ça me servira pour mon projet ! [VX] Magasin de Skills 354280
Deda
Deda
Membre

Nombre de messages : 57
Age : 26
Distinction : aucune
Date d'inscription : 23/06/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 27 Juin 2008 - 23:31
Sublime.

Death, viens payer le Monsieur... comme tu le fais le mieux... [VX] Magasin de Skills 90017 [VX] Magasin de Skills 547728
MasterShadow
MasterShadow
Membre

Nombre de messages : 20
Age : 25
Localisation : Rouyn-Noranda
Distinction : aucune
Date d'inscription : 18/06/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Sam 28 Juin 2008 - 3:06
Personellement, je trouve tout cela asser inutile car on peut tout faire ça en event!
Ultimate
Ultimate
Membre

Nombre de messages : 105
Age : 27
Distinction : aucune
Date d'inscription : 25/06/2008
http://www.sydrus.fr

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Sam 28 Juin 2008 - 13:46
Peut être, mais en fait, l'avantage des Scripts par rapport aux évènements, bah c'est que c'est beaucoup plus rapide a configurer ! Parce que si tu dois remplacer tous les scripts par des events, ( déjà pour certains c'est pas possible ), t'es pas sorti ! Si encore tu n'as que ce système à faire en Events, ok ! Mais si tu dois aussi faire un CBS en event, un autre truc, etc ... Bah ton projet va vite être archi-Bourré de dizaines de variables et d'interrupteurs ( parfois inutiles ) Wink !

Puis si tu le laisses tomber une semaine, tu reviens après, t'as intéret à avoir mitraillé les commentaires, sinon, bah bonne chance pour te rappeller de quoi sert a quoi Very Happy
Anonymous
Invité
Invité

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Jeu 24 Juil 2008 - 18:13
Je sais que sur ce coup je suis un boulet mais j'ai pas compris ou on met le "[p150]" pour changer le prix d'un sort.
Si quelqu'un pouvait m'aider .
Hamaar
Hamaar
Membre

Nombre de messages : 183
Age : 25
Localisation : Les fesses calées dans mon fauteuil
Distinction : aucune
Date d'inscription : 25/02/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Jeu 24 Juil 2008 - 23:22
Très bon script à moi aussi il me servira mais pour les noms des commandes tu aurais pu prendre le temps de les traduire après tout ça ne prend que quelques secondes de modifier ton post ^^' car certains d'entre nous sont jeunes et ne connaissent pas très bien l'anglais même basiques...

P.S.: Impossible de le faire marcher sur mon jeu après je le essayer sur projet vierge et là aussi il ne marche pas il dise qu'il y a une erreur à la dernière ligne (end)
et voilà donc si pouviez m'aider s'il vous plaît
Douk
Douk
Membre

Nombre de messages : 296
Age : 25
Distinction : aucune
Date d'inscription : 23/04/2008
http://www.arcantia.info-a.googlepages.com/index.html

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 25 Juil 2008 - 16:10
Retire le end ou ajoute en un ^^
Hamaar
Hamaar
Membre

Nombre de messages : 183
Age : 25
Localisation : Les fesses calées dans mon fauteuil
Distinction : aucune
Date d'inscription : 25/02/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 25 Juil 2008 - 16:15
Douk j'ai déjà essayé là aussi erreur à la dernière ligne à chaque fois
Douk
Douk
Membre

Nombre de messages : 296
Age : 25
Distinction : aucune
Date d'inscription : 23/04/2008
http://www.arcantia.info-a.googlepages.com/index.html

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Ven 25 Juil 2008 - 16:16
scratch Bah je sais pas du tout ^^, essaie le magasin de skills que j'ai posté.
pinguino21v
pinguino21v
Membre

Nombre de messages : 199
Age : 29
Localisation : Vous êtes ici
Distinction : aucune
Date d'inscription : 22/07/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Lun 11 Aoû 2008 - 14:01
Au risque de participer à des fouilles archéologiques,je tiens à dire que ce script est vraiment sympatoche et opérationnel.

hirios a écrit:Je sais que sur ce coup je suis un boulet mais j'ai pas compris ou on met le "[p150]" pour changer le prix d'un sort.
Si quelqu'un pouvait m'aider .
Dans les commentaires du sort, dans la base de données.
Higinia
Higinia
Membre

Nombre de messages : 191
Age : 26
Localisation : Somme 80
Distinction : aucune
Date d'inscription : 03/08/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Lun 11 Aoû 2008 - 14:46
C'est pas mal , mais je ne maitrise pas l'anglais "très basic" :P

Donc je ne le mettrai point. A moins qu'une traduction des endroit ou c'est ecrit en anglais apparaissent ...
avatar
oO-Hony-Oo
Membre

Nombre de messages : 139
Age : 23
Localisation : Sur RPGMVX =)
Distinction : aucune
Date d'inscription : 31/07/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Lun 11 Aoû 2008 - 14:59
Merciiiii mais pourrait - on traduire en francais ?
pinguino21v
pinguino21v
Membre

Nombre de messages : 199
Age : 29
Localisation : Vous êtes ici
Distinction : aucune
Date d'inscription : 22/07/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Lun 11 Aoû 2008 - 16:01
Spoiler:
#==============================================================================
# Skill Shop for RMVX Ver 3.1
#==============================================================================
#MediaFire Hosting# By Nechigawara Sanzenin
# WARNING!! : This script can use on RPG Maker VX Only!! (XP Not Support)
#==============================================================================
# Buy Skill Option For RMVX
#==============================================================================
#Version Log
#==============================================================================
#2.0 Add Level requirement - Change Hero Select Window
#3.0 Change How to set Price , Add wait Level Up option
#3.0 Fixed Bug, Edit Price Key Word
#==============================================================================
=begin

Comment ça marche:

Utilisez la commande "$skill_shop =[Id]" , avec les numéros de compétence dans le crochet pour initialiser le magasin
Utilisez "$scene = Scene_Skill_Shop.new" pour appeler le magasin
Il vaut mieux donc initialiser à chaque fois, juste avant l'appel du magasin

Exemple:
$skill_shop = [1,2,4]
$scene = Scene_Skill_Shop.new
Appelera un magasin avec les compétences 1, 2 et 4 en vente

Vous pouvez activer/désactiver les options sous "# Options".
Vous pouvez modifier les textes sous "# Textes".
Vous pouvez ajouter "[p-Price-]" dans les commentaires d'une compétence pour lui changer son prix.
Exemple : Pour un prix de 150, il faut écrire:
[p150]

Vous pouvez régler qui apprendra quoi sous "# Données Heros".
Voilà comment celà fonctionne:
[ID compétence, Niveau requis]

Exemple : le personnage numéro 1 pourra apprendre la compétence 1 au niveau 4 et la compétence 2 au niveau 3

1 => [ #Id Héros

[1,4],[2,3],

],

=end
#==============================================================================
#module SKILL_SHOP
#==============================================================================
module SKILL_SHOP
# Options
Wait_Lv_Up = false # Attendre une montée de niveau avant d'acquérir réellement la compétence (attention au niveau max)
Show_cha = false # Montrer le graphique des personnages
# Textes
How_Learn = "À quel héros ?"
Can_Learn = "Peut apprendre"
Can_Learn_Lv = "Requis: niv"
Cant_Learn = ""
Learnt = "Connu"
Teach = "Enseigner"
Cancel = "Annuler"
Next_Lv = "Prochain niv"
Can_use = "%s peut employer maintenant !"
# Prix de base si aucun prix n'est donné dans les commentaires
PRICE = 200
# Données Heros
SKILL_BUY = {
# Ajouter ici quelles compétences peuvent apprendre les personnages
# [ID compétence,niveau]

1 => [ #Id héros

[21,2],[22,14],[23,38],

],

2 => [ #Id héros

[1,1],[2,3],[3,8],

],

4 => [ #Id héros

[59,1],[63,2],

],

# End
}
# Add Price
def self.skill_price(id)
text = $data_skills[id].note
text.scan(/\[p([0-9]+)\]/)
if $1.to_i != 0 then
price = $1.to_i
else
price = PRICE
end
return price
end
# Add Hero id
def self.skill_buy(id)
if SKILL_BUY.include?(id)
return SKILL_BUY[id]
else
return []
end
end
end

Voilà uniquement la partie modifiable, avant #class Game_Actor

Je n'ai pas compris l'utilité de # Add Price et # Add Hero id, en bas. Mieux vaut ne pas y toucher.
Higinia
Higinia
Membre

Nombre de messages : 191
Age : 26
Localisation : Somme 80
Distinction : aucune
Date d'inscription : 03/08/2008

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

le Lun 11 Aoû 2008 - 16:31
Ahh ! c'est tout de suite plus claire dans mon esprit cramé.
Merci
Contenu sponsorisé

[VX] Magasin de Skills Empty Re: [VX] Magasin de Skills

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum