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



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

Partagez
 

 Metier

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
blodangan
Va-nu-pieds Lv.4
Va-nu-pieds Lv.4
avatar


Masculin Inscrit le : 06/03/2011
Messages : 57

Metier Empty
MessageSujet: Metier   Metier Icon_minitimeDim 29 Mai 2011 - 17:43

Bonjour j'aime bien modifier les scripts et justement pour mon jeu il me fallait quelque chose pour les métiers j'ai donc pris
le script de quête de Biward et l'ai réécrit pour avoir ce que je voulais : avoir un niveau pour
chaque métier à mettre dans une variable, une description du métier et des indications sur des recettes.

voila le script :
Code:

#-----------------------------------------------------------------------------------------
# [VX] Script interface métier
#-----------------------------------------------------------------------------------------
#  Original: script quete par Biward
#  Par Blodangan pour avoir une interface métier
#  https://rpg-maker-vx.bbactif.com/
#------------------------------------------------------------------------------------------

module Blodangan
      module Metier

#-------------------------------------------------------------
# Configuration
#--------------------------------------------------------------
    
    
    # Texte niveau du métier
    TEXTE_NIVEAU = "Vous êtes niveau :"
    
    # Texte de la description
    TEXTE_DESCRIPTION = "Description :"
    
    # Texte des recettes
    TEXTE_RECETTE = "Recettes :"
    
    # Nom quand le métier est non appris
    NON_APPRIS = "Vous ne connaissez pas ce métier."
    
  

# Les différents métier :
# Pour ajouter un métier, ajouter ceci :
# 1=> [Metier = "  ", Variable_Niv = 1],
# 1 = ajouter + 1 à chaque nouveau métier.
# Metier = Nom du métier
# Variable_Niv = numéro de la variable dans laquelle est sctocké le niveau du métier ( si la valeur de la variables est égale
# à 0 le métier est non appris, si elle est égale à 1 le métier est au niveau, à 2 le métier est au niveau 2, ect... )

    
      Metier = { #Metter vos métier en dessous
      1=> [Nom = "Bûcheron", Variable_Niv = 1],
      2=> [Nom = "Pêcheur", Variable_Niv = 2],
    
      } # metter vos métier au dessus
    
    
#C'est ici que l'on ajoute la description du métier
#ID du métier=> [Ligne1 = "  ", Ligne2 = "  ", Ligne3 = "  ", Ligne4 = "  ", Ligne5 = "  "],
# Si vous avez moins de 5 lignes laisser du vide mais n'en effacer pas une.

     Description = { # Metter vos description entre ça...
     1=> [Ligne1 = " Le métier de bûcheron permet de", Ligne2 = " couper du bois et de faire des ", Ligne3 = " planches. ", Ligne4 = "  ", Ligne5 = "  "],
     2=> [Ligne1 = " Le métier de pêcheur permet de", Ligne2 = " couper du bois et de...", Ligne3 = " Comment ça il ne permet pas de", Ligne4 = " couper du bois ? Il permet de", Ligne5 = " pêcher du poisson alors ?"]
    
     } # ...et ça    
    
# C'est ici que l'on ajoute les recettes
# ID du métier=> [Recette1 = "  ", Recette2 = "  " , Recette3 = "  ", Recette4 = "  ", Recette5 = "  "],
# Si vous avez moins de 5 recettes laisser du vide mais n'en effacer pas une.

     Recettes = { # Metter vos recettes entre ça...
     1=> [Recette1 = " Petite planche (20 bois) ", Recette2 = " Moyenne planche (35 bois) " , Recette3 = " Grandes planches (50 bois) ", Recette4 = "  ", Recette5 = "  "],
     2=> [Recette1 = " Il n'y a", Recette2 = " aucune recettes", Recette3 = " pour le", Recette4 = " MOMENT !!!", Recette5 = " "]
    
     } # ...et ça
    
#   Pour appeler se script en event, faite un appel de script de :
#                            $scene = Scene_Metier.new
  
  end    
end

#----------------------------------------------------------------------------------------------
# FIN DE LA CONFIGURATION
#----------------------------------------------------------------------------------------------

class Scene_Metier < Scene_Base
  
  def start
    @choix = []
    @commands = []
    
    for i in 1..Blodangan::Metier::Metier.size
      if $game_variables[Blodangan::Metier::Metier[i][1]] >= 1
        @commands.push(Blodangan::Metier::Metier[i][0])
     else
       @commands.push(Blodangan::Metier::NON_APPRIS)
      end
    end
    
    @choix = Window_Command.new(200, @commands, 1, 16)
    @choix.x = 0
    @choix.y = 0
    
    @window = Window_Metier1.new
    
    @window2 = Window_Metier2.new

     position
    

  end
  
  def terminate
    @choix.dispose
    @window.dispose
    @window2.dispose
    if @sprite != nil
      @sprite.dispose
    end
    if @chara != nil
      @chara.dispose
    end
  end
  
  def update
    @choix.update
    if Input.trigger?(Input::C)
    if Blodangan::Metier::Metier[@choix.index + 1][2] != nil and $game_variables[Blodangan::Metier::Metier[@choix.index + 1][1]] != 0
      if @chara != nil
      @chara.dispose
    end
           @chara = Sprite.new
         @chara.bitmap = Cache.picture(Blodangan::Metier::Metier[@choix.index + 1][2])
       @chara.x = 425
       @chara.y = 345
       @chara.z = 1000
     else
       if @chara != nil
         @chara.dispose
        end
       end
     end
    

    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Menu.new
    end
    
    @window.set_action(@choix.index)
    @window2.set_action(@choix.index)
  end
  
  def position
    @window.x = 200
    @window.y = 0
    
    @window2.x = 200
    @window2.y = 56
  
  end
end

class Window_Metier1 < Window_Base
  
  def initialize
    super(0, 0, 544-200, 56)
    refresh
  end
  
  def set_action(num)
    @action = num
    refresh
  end
  
  def refresh
    if Input.trigger?(Input::C)
    self.contents.clear
    self.contents.font.color = Color.new (255, 0, 0, 255)
    if $game_variables[Blodangan::Metier::Metier[@action.to_i + 1][1]] >= 1
      self.contents.draw_text(105, -195, 544, 416, Blodangan::Metier::Metier[@action.to_i + 1][0], 0)
    else
      self.contents.draw_text(5, -195, 544, 416, Blodangan::Metier::NON_APPRIS, 0)      
    end
    self.contents.font.color = Color.new (255, 255, 255, 255)
  end
  end
end

class Window_Metier2 < Window_Base
  
  def initialize
    super(0, 0, 544-200, 416-56)
    refresh
  end
  
  def set_action(num)
    @action = num
    refresh
  end
  
  def refresh
     if $game_variables[Blodangan::Metier::Metier[@action.to_i + 1][1]] == 0
       if Input.trigger?(Input::C)
       self.contents.clear
       @des1 = nil
       @des2 = nil
       @des3 = nil
       @des4 = nil
       @des5 = nil
       @text = nil
      end
     elsif $game_variables[Blodangan::Metier::Metier[@action.to_i + 1][1]] >= 1
       if Input.trigger?(Input::C)
        self.contents.clear
      @text = Blodangan::Metier::TEXTE_DESCRIPTION
      @des1 = Blodangan::Metier::Description[@action.to_i + 1][0]
      @des2 = Blodangan::Metier::Description[@action.to_i + 1][1]
      @des3 = Blodangan::Metier::Description[@action.to_i + 1][2]
      @des4 = Blodangan::Metier::Description[@action.to_i + 1][3]
      @des5 = Blodangan::Metier::Description[@action.to_i + 1][4]
      self.contents.font.color = Color.new(100, 100, 100, 255)
      self.contents.draw_text(0, -165, 544, 416, @text, 0)
      self.contents.font.color = Color.new(255, 255, 255, 255)
      self.contents.draw_text(0, -140, 544, 416, @des1, 0)
      self.contents.draw_text(0, -115, 544, 416, @des2, 0)
      self.contents.draw_text(0, -90, 544, 416, @des3, 0)
      self.contents.draw_text(0, -65, 544, 416, @des4, 0)
      self.contents.draw_text(0, -40, 544, 416, @des5, 0)
      
      @text2 = Blodangan::Metier::TEXTE_RECETTE
      self.contents.font.color = Color.new(100, 100, 0, 255)
      self.contents.draw_text(0, 10, 544, 416, @text2, 0)
      self.contents.font.color = Color.new(255, 255, 255, 255)
      @rec1 = Blodangan::Metier::Recettes[@action.to_i + 1][0]
      @rec2 = Blodangan::Metier::Recettes[@action.to_i + 1][1]
      @rec3 = Blodangan::Metier::Recettes[@action.to_i + 1][2]
      @rec4 = Blodangan::Metier::Recettes[@action.to_i + 1][3]
      @rec5 = Blodangan::Metier::Recettes[@action.to_i + 1][4]
      self.contents.draw_text(0, 35, 544, 416, @rec1, 0)
      self.contents.draw_text(0, 60, 544, 416, @rec2, 0)
      self.contents.draw_text(0, 85, 544, 416, @rec3, 0)
      self.contents.draw_text(0, 110, 544, 416, @rec4, 0)
      self.contents.draw_text(0, 135, 544, 416, @rec5, 0)

      @text3 = Blodangan::Metier::TEXTE_NIVEAU
      self.contents.font.color = Color.new(100, 100, 0, 255)
      self.contents.draw_text(45, -195, 544, 416, @text3, 0)
      self.contents.font.color = Color.new(255, 255, 255, 255)
      @niv = [$game_variables[Blodangan::Metier::Metier[@action.to_i + 1][1]]]
      self.contents.draw_text(210, -193, 544, 416, "#{@niv}", 0)

      end
   end
  end
end

Bonne soirée


Dernière édition par blodangan le Ven 24 Juil 2020 - 15:55, édité 1 fois
Revenir en haut Aller en bas
Brandobscure001
Seigneur Lv.18
Seigneur Lv.18
Brandobscure001


Masculin Age : 27
Inscrit le : 26/12/2010
Messages : 2220

Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitimeDim 29 Mai 2011 - 17:54

Plutot intéréssant merci Very Happy
Revenir en haut Aller en bas
Malum
Révolutionnaire mais ça rentrait pas alors autre chose
Révolutionnaire mais ça rentrait pas alors autre chose
Malum


Masculin Age : 29
Inscrit le : 28/05/2010
Messages : 1537

Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitimeDim 29 Mai 2011 - 18:34

Wouais c'est cool ça va me servir merci Very Happy
Revenir en haut Aller en bas
http://malum-productions.forumsactifs.net
Nyrtiuss
Habitant Lv.6
Habitant Lv.6
Nyrtiuss


Masculin Age : 25
Inscrit le : 24/06/2011
Messages : 115

Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitimeMer 13 Juil 2011 - 16:57

Merci, c'est super ! Est-il compatible si l'on souhaite ensuite ajouter le script de quètes ?

Pourrais-je avoir un lien d'ailleurs ? Metier 745144


Dernière édition par Nyrtiuss le Mer 13 Juil 2011 - 16:58, édité 1 fois (Raison : Faute de frappe.)
Revenir en haut Aller en bas
Blockade
Ex-Admin Cruelle
Ex-Admin Cruelle
Blockade


Féminin Age : 32
Inscrit le : 03/07/2008
Messages : 2441

Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitimeMer 13 Juil 2011 - 17:00

Pour savoir si deux scripts sont compatibles, il n'y a qu'un moyen : c'est de les inclure dans ton projet et de voir si ça marche ou pas !

Après pour un script de quête tu peux aller chercher sur le forum il y en a pas mal (je t'invite a visiter la liste des scripts).
Revenir en haut Aller en bas
Nyrtiuss
Habitant Lv.6
Habitant Lv.6
Nyrtiuss


Masculin Age : 25
Inscrit le : 24/06/2011
Messages : 115

Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitimeJeu 14 Juil 2011 - 11:06

Petit truc : je n'ai pas réussi à faire apprendre un métier à mon perso. Quelqu'un pourrait m'expliquer ?
Revenir en haut Aller en bas
Contenu sponsorisé




Metier Empty
MessageSujet: Re: Metier   Metier Icon_minitime

Revenir en haut Aller en bas
 

Metier

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Exemple de métier = Herboristerie
» Mise en Place de niveau de maîtrise d’un métier

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Bac à sable-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit