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



Le deal à ne pas rater :
LEGO Icons 10331 – Le martin-pêcheur
35 €
Voir le deal

Partagez
 

 [Résolu] Demande de script: Multiples fonctions de compétences

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeMer 2 Nov 2011 - 17:41

Bonjour,

Nature de la demande : En fait, ma demande est plus une modification qu'une demande de nouveau script.
Type de script : Une modification de ce script:

Code:
# Enelvon's Skill Subsets v4.1
#Some credit should go to Dargor, as it was by studying his Custom Commands script
#that I learned how to add/remove battle commands using a scripting section.

#Config

Allow_Skill = true  #If Allow_Skill is set to true, the normal 'Skill' command will
                    #be available. It will show all skills from all subsets. The
                    #default is false.
module SUBSETS

#Edit these to change the command names. You can have as many as you want.
Subsets = ['Jump','Cover','Plunder','Blue','Magic',
          'Dance','Dark','Skills','Sing','Transform']
         
#If you want actors to have subsets based on what skills they know, set this to
#true. Else, set it to false and edit Subset_actors.
Base_on_learned = true

#If Base_on_learned is false, edit these to change which actors have which
#subsets. Be sure to add more arrays to it if you add more subsets!
Subset_actors = [[1], [], [], [], [], [], [], [], [], []]

#Set this to true if you're using Dargor's Custom Commands script, to avoid
#conflicts. Else, set it to false.
Using_custom_commands = false
end

class Game_Actor < Game_Battler

  attr_reader  :commands                 

  alias enelvon_actors_setup setup

  def setup(actor_id)
    enelvon_actors_setup(actor_id)
    actor = $data_actors[actor_id]
    s1 = Vocab::attack
    s2 = Vocab::skill
    s3 = Vocab::guard
    s4 = Vocab::item
    if self.class.skill_name_valid   
      s2 = self.class.skill_name     
    end
    if Allow_Skill == false
    @commands = [s1, s3, s4]
    elsif Allow_Skill == true
    @commands = [s1, s2, s3, s4]
    end
  end
  #--------------------------------------------------------------------------
  # * Add Command
  #--------------------------------------------------------------------------
  def add_command(index, command)
    return if @commands.include?(command)
    if command.is_a?(String)
      @commands.insert(index, command)
    elsif command.is_a?(Array)
      for i in 0...command.size
        @commands.insert(index+i, command[i])
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Remove Command
  #--------------------------------------------------------------------------
  def remove_command(command)
    if command.is_a?(String)
      @commands.delete(command)
    elsif command.is_a?(Array)
      for i in command
        @commands.delete(i)
      end
    end
  end
end

class Window_ActorCommand < Window_Command
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    super(128, [], 1, 4)
    self.active = false
  end
  #--------------------------------------------------------------------------
  # * Setup
  #    actor : actor
  #--------------------------------------------------------------------------
  def setup(actor)
    @commands = actor.commands
    @item_max = @commands.size
    height = 32 + 6 * WLH
    self.contents = Bitmap.new(width - 32, (@item_max * WLH))
    refresh
    self.index = 0
  end
end



class Game_Actor < Game_Battler
alias enelvon_subset_setup setup
  def setup(actor_id)
    enelvon_subset_setup(actor_id)
    for sub in SUBSETS::Subsets
      if SUBSETS::Base_on_learned == true
        for skill in @skills
          if $data_skills[skill].note.include?(sub)
            if Allow_Skill == false
              index = @commands.index(Vocab::guard)
            else
              index = @commands.index(Vocab::guard) - 1
            end
            add_command(index, sub)
          end
        end
      elsif SUBSETS::Base_on_learned == false
        if SUBSETS::Subset_actors[SUBSETS::Subsets.index(sub)].include?(actor_id)
          if Allow_Skill == false
              index = @commands.index(Vocab::guard)
            else
              index = @commands.index(Vocab::guard) - 1
            end
            add_command(index, sub)
        end
      end
    end
  end
end


class Window_Subset < Window_Selectable

  def initialize(x, y, width, height, actor)
    super(x, y, width, height)
    @actor = actor
    @column_max = 2
    self.index = 0
    refresh
  end

  def skill
    return @data[self.index]
  end
 
  def refresh
    @data = []
    for skill in @actor.skills
      note = skill.note
    if note.include?("#{$bsubset}")
      @data.push(skill)
      if skill.id == @actor.last_skill_id
        self.index = @data.size - 1
      end
    end
    @item_max = @data.size
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  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.calc_mp_cost(skill) > 0
      self.contents.draw_text(rect, @actor.calc_mp_cost(skill), 2)
      end
    end
  end

  def update_help
    @help_window.set_text(skill == nil ? "" : skill.description)
  end
end

class Scene_Battle < Scene_Base
 
  def start_subset_selection
    @help_window = Window_Help.new
    @skill_window = Window_Subset.new(0, 56, 544, 232, @active_battler)
    @skill_window.help_window = @help_window
    @actor_command_window.active = false
  end
 
  alias enelvon_subset_actor_command2 update_actor_command_selection
  def update_actor_command_selection
    if SUBSETS::Using_custom_commands == true
      enelvon_subset_actor_command2
    elsif SUBSETS::Using_custom_commands == false
      skill = Vocab::skill
    if @active_battler.class.skill_name_valid
      skill = @active_battler.class.skill_name
    end
    if Input.trigger?(Input::B)
      Sound.play_cancel
      prior_actor
    elsif Input.trigger?(Input::C)
      case @actor_command_window.commands[@actor_command_window.index]
      when Vocab::attack  # Attack
        Sound.play_decision
        @active_battler.action.set_attack
        start_target_enemy_selection
      when skill # Skill
        Sound.play_decision
        start_skill_selection
      when Vocab::guard  # Guard
        Sound.play_decision
        @active_battler.action.set_guard
        next_actor
      when Vocab::item  # Item
        Sound.play_decision
        start_item_selection
      end
    end
  end
  end
  alias enelvon_subset_actor_command update_actor_command_selection
  def update_actor_command_selection
    enelvon_subset_actor_command
    skill = Vocab::skill
    if Input.trigger?(Input::C)
      for sub in SUBSETS::Subsets
      case @actor_command_window.commands[@actor_command_window.index]
      when sub
        Sound.play_decision
        $bsubset = sub
        start_subset_selection
        end
      end
    end
  end
end

Description du script voulu : Bref, je voudrais tout-simplement que les commandes dans les deux catégories de skills soient mutuellement exclusives. De la manière que ça fonctionne actuellement, si je met une compétence dans la nouvelle catégorie, elle va apparaître dans l'autre.

[b]Exemples d'utilisation et schémas :
En gros, par exemple, un personnage aura ces commandes:

Attack
Guard
Skills
Skills (2)
Item

[Résolu] Demande de script: Multiples fonctions de compétences Vxtest

Bref, la seconde catégorie ("Jump" dans ce cas-ci). requiert actuellement que je mette le nom de la seconde catégorie dans les notes des skills.

[Résolu] Demande de script: Multiples fonctions de compétences Vxtest4

Les compétences vont dans la nouvelle catégorie, cette fois-ci, "Jump" vont dedans, ce qui fonctionne. Par contre, le skill va dans l'autre catégorie quand même.

[Résolu] Demande de script: Multiples fonctions de compétences Scaled.php?server=85&filename=vxtest2
[Résolu] Demande de script: Multiples fonctions de compétences Scaled.php?server=821&filename=vxtest3

Je voudrais que les skills de la seconde catégorie ne soient visible que dans cette catégorie. En gros, tous les skills de la secpnde catégorie (Comme Jump) n'apparaissent pas dans la liste de skills normale.

Liste des scripts déjà utilisés : Aucun

Merci d'avance!

EDIT: J'y pense, serait-il possible de régler le problème en ne mettant que les compétences avec "SKills" dans "notes" apparaîte dans "Skills"?


Dernière édition par Vigilante le Ven 4 Nov 2011 - 21:54, édité 2 fois
Revenir en haut Aller en bas
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeJeu 3 Nov 2011 - 16:19

Je remonte le sujet. ^^.
Revenir en haut Aller en bas
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 16:25

Et hop!
Revenir en haut Aller en bas
Invité
Invité
avatar



[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 16:30

Excuse nous de ne pas te répondre pour le moment, mais la présentation est obligatoire, et il nous est donc impossible de répondre avant que tu te sois présenté (où alors on peut nous-même se faire taper sur les doigts, bon là je prends le droit, mais après 2 up je me dis que c'est pas cool de te laisser en plan...). Enfin, une fois cette formalité effectuée, pourrais-tu être un peu plus claire dans l'explication ? J'ai un peu de mal à voir de quoi il s'agit. Des screens seraient les bienvenus pour que l'on puisse comprendre un peu mieux ton problème.

Enfin, voilà, sur ce, bonne continuation !! Very Happy
Revenir en haut Aller en bas
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 17:28

Je te remercie, Raymo. J'apprécie!

Je viens d'éditer mon post avec des images et une explication plus pointue. J'espère que ça va aider à mieux comprendre mon souci ^^.
Revenir en haut Aller en bas
jebbou
Doyen
Doyen
jebbou


Masculin Age : 46
Inscrit le : 20/08/2008
Messages : 2485

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 18:24

Il faut regarder le bout de code suivant dans le script, qui apparait dans le script que tu as utilisé.

Code:

Allow_Skill = true  #If Allow_Skill is set to true, the normal 'Skill' command will
                    #be available. It will show all skills from all subsets. The
                    #default is false.

En gros, cela veut dire que si tu met "Allow_Skill" à true(vrai), il y'a une catégorie qui affiche tous les skills. Donc ce n'est pas un bug, mais une fonctionalité du script.
Revenir en haut Aller en bas
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 19:02

J'en suis conscient. Le problème est que si je le met à false, je n'ai que la catégorie ajoutée. Mon besoin est plus d'avoir les deux mais que chaque compétence ait sa liste individuelle.
Revenir en haut Aller en bas
jebbou
Doyen
Doyen
jebbou


Masculin Age : 46
Inscrit le : 20/08/2008
Messages : 2485

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 19:09

hmm .. Met le à false, et rajoute une catégorie "Compétences" ?
Revenir en haut Aller en bas
Vigilante
Poulet carnivore Lv.2
Poulet carnivore Lv.2
Vigilante


Inscrit le : 02/11/2011
Messages : 15

[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitimeVen 4 Nov 2011 - 19:17

Lol, ça marche, merci jebbou!
Revenir en haut Aller en bas
Contenu sponsorisé




[Résolu] Demande de script: Multiples fonctions de compétences Empty
MessageSujet: Re: [Résolu] Demande de script: Multiples fonctions de compétences   [Résolu] Demande de script: Multiples fonctions de compétences Icon_minitime

Revenir en haut Aller en bas
 

[Résolu] Demande de script: Multiples fonctions de compétences

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

 Sujets similaires

-
» [RESOLU][VX] Demande de script.
» script ABS V4 demande de solution [Resolu]
» [Résolu]Demande de Script de Menu pour A-RPG
» Problem script impute du script requiem ABS V4[Resolu]
» [Résolu] Demande d'aide pour un script de vx Ace (XS - Journal)

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