Faire apprendre une compétence aux heros

Poster un nouveau sujet   Répondre au sujet

Voir le sujet précédent Voir le sujet suivant Aller en bas

Faire apprendre une compétence aux heros

Message par Scythe Darklight le Ven 25 Mai - 19:26

Le script permet de faire apprendre un skill à un hero


Auteur: Raven

Le script est appellé par la commande : $scene = Scene_Learn.new(x), où x est le numéro du skill dans votre base de données.

Copiez le script au dessus du main et appellez le comme vous voulez :

Code:
#==============================================================================
#  Scene_Learn : Apprentissage d'une compétence
#------------------------------------------------------------------------------
#    Créé par Raven - ravenevans@hotmail.com pour RPG Creative
#    Date: 16/02/07
#==============================================================================

class Window_LearnHelp < Window_Base
  #--------------------------------------------------------------------------
  # ● Création de la fenêtre
  #    skill_index : Id du Skill
  #--------------------------------------------------------------------------
  def initialize(skill_index = 0)
    super(120, 75, 400, 70)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = 'Arial'
    self.contents.font.size = 20
    skill = $data_skills[skill_index]
    text = skill.description
    sp = skill.sp_cost.to_s
    @text = text + " - MP : " + sp
    refresh
  end
  #--------------------------------------------------------------------------
  # ● Affichage du titre
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.draw_text(0, 0, 500, 40, @text)
  end
end

class Window_LearnName < Window_Base
  #--------------------------------------------------------------------------
  # ● Création de la fenêtre
  #    skill_index : Id du Skill
  #--------------------------------------------------------------------------
  def initialize(skill_index = 0)
    super(170, 10, 300, 60)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = 'Arial'
    self.contents.font.size = 22
    @skill = $data_skills[skill_index]
    text = @skill.name
    @text = text
    refresh
  end
  #--------------------------------------------------------------------------
  # ● Affichage du titre
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    bitmap = RPG::Cache.icon(@skill.icon_name)
    self.contents.blt(0, 4, bitmap, Rect.new(0, 0, 24, 24))
    self.contents.draw_text(34, 0, 300, 30, @text)
  end
end

class Scene_Learn
  #--------------------------------------------------------------------------
  # ● Initialisation
  #    skill_index : Id du Skill
  #--------------------------------------------------------------------------
  def initialize(skill_index = 0)
    @skill_index = skill_index
  end
  #--------------------------------------------------------------------------
  # ● Principal
  #--------------------------------------------------------------------------
  def main
    @spriteset = Spriteset_Map.new
    @help_window = Window_LearnHelp.new(@skill_index)
    @name_window = Window_LearnName.new(@skill_index)
    list=[]
    for i in 0..$game_party.actors.size - 1
      actor = $game_party.actors[i]
      list.push(actor.name)
    end
    @command_window = Window_Command.new(200, list)
    @help_window.opacity = 170
    @name_window.opacity = 170
    @command_window.opacity = 170
    @command_window.active = true
    @command_window.index = 0
    @command_window.x = 220
    @command_window.y = 180
    Graphics.transition
    if $game_party.actors.size == 0
      $scene = Scene_Map.new
    end
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @help_window.dispose
    @name_window.dispose
    @command_window.dispose
    @spriteset.dispose
  end
  #--------------------------------------------------------------------------
  # ● Mise à jour
  #--------------------------------------------------------------------------
  def update
    @help_window.update
    @name_window.update
    @command_window.update
    if Input.trigger?(Input::B)
      $scene = Scene_Map.new
    end
    if Input.trigger?(Input::C)
      $game_system.se_play($data_system.shop_se)
      $game_party.actors[@command_window.index].learn_skill(@skill_index)
      $scene = Scene_Map.new
    end
  end
end

Scythe Darklight
Invoqueur de tempête
Invoqueur de tempête

Nombre de messages: 1166
Age: 20
Date d'inscription: 17/08/2006

Voir le profil de l'utilisateur http://www.freewebs.com/scythedarklight/

Revenir en haut Aller en bas

Re: Faire apprendre une compétence aux heros

Message par zero le Lun 6 Aoû - 6:03

HOOO cool!! c'est sa que je chercher!!!
mais on peut faire sa en envent?
et aussi on peut faire aprendre les techniques a certains des heros pas tous les heros enfin ta compris je pense...

zero
Puissance Ténébreuse
Puissance Ténébreuse

Nombre de messages: 276
Age: 17
Date d'inscription: 30/05/2007

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Poster un nouveau sujet   Répondre au sujet
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum