Partagez
Aller en bas
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Script Equipment Skill

le Sam 2 Fév 2013 - 11:40
Salut la compagnie !

Alors voilà, je cale un peu sur un truc qu'on peut qualifier de mineur mais il faut dire que je ne suis pas très compétent en matière de script...

Voici les info :

Ce script sert surtout à pouvoir utiliser un système de compétence à la Final Fantasy Tactics : apprendre une compétence lorsque qu'on a un certain stuff équipé.
J'ai réussi à mettre le script, je suis arrivé tant bien que mal à le configurer pour faire en sorte que ce soit fonctionnel mais voilà je n'arrive pas à faire en sorte que le total "d'AP" requis soit mis dans la fiche...

En bref, je veux "AP actuels / AP requis" et je n'ai que "AP actuels".

Quelqu'un peut m'aider ?

PS : le script se trouve ici : http://cobbtocs.co.uk/wp/?p=36
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 13:53
Je n'ai pas compris ce que tu veux.
Normalement ça devrait être bon non ?
Script Equipment Skill SS0002
Cela ne s'affiche pas comme ça chez toi ?
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 15:05
Bah bizarrement non, je n'ai pas "5 /5" mais juste "5", tu vois ce que je veux dire ?

Regarde : https://www.hostingpics.net/viewer.php?id=546141screen1.jpg
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 19:08
Bizarre, j'ai placer les 2 script sur un projet vierge et ça marche nickel:
Script Equipment Skill Tryca_imagesia-com_5998
Quels autres scripts utilise-tu ?
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 19:28
Effectivement, j'arrive à ce résultat sur un projet vierge... Bizarre !

J'utilise les scripts suivants :

- Yanfly Engine - Core Engine v1.09
- Yanfly Engine - Battle Engine v1.22
- Yanfly Engine - Visual Battlers v1.0
- Battle Add-On: Enemy HP Bars v1.1
- Battle Add-On: Enemy Target Info v1.02
- Yanfly Engine - Combat Log Display v1.02

- Unique Classes Script
- AP System Script II
- Equipment Skills System Script

Tu penses qu'il y a un conflit quelque part ?
Dans tous les cas, merci de m'aider Wink
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 20:20
Je vais tester avec les scripts que tu as mis. Wink
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 20:36
Merci beaucoup !! Very Happy
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 21:35
Fait, toujours aucun problème:
Script Equipment Skill Tryca_imagesia-com_59dq
Peux-tu me dire comment as-tu configuré les scripts de Fomar ?
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 21:54
Je te fais un copier coller de ce que j'ai :

Unique Classes

Code:
=begin
Unique Classes Script
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
Useless by itself.
This script allows for scripters to develop more individual
characters or classes with less concern for
----------------------
Instructions
----------------------
Edit the case like this:
when class_id # Class Name
  @data[actor_id] ||= Game_ClassName.new(actor_id)

Follow the instructions in any Unique Class you add
----------------------
Known Bugs
----------------------
None
=end
class Game_Actors
  #--------------------------------------------------------------------------
  # ● Rewrites []
  #--------------------------------------------------------------------------
  def [](actor_id)
    return nil unless $data_actors[actor_id]
    case $data_actors[actor_id].class_id
    # All edits should take place in this case
    when 1 # Weapon Master
      @data[actor_id] ||= Game_WeaponMaster.new(actor_id)
    when 2, 3 # Blue Mage
      @data[actor_id] ||= Game_BlueMage.new(actor_id)
    when 4 # Skill Master
      @data[actor_id] ||= Game_SkillMaster.new(actor_id)
    else
      @data[actor_id] ||= Game_Actor.new(actor_id)
    end
  end
end

AP System Script II

Code:
=begin
AP System Script II
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
No requirements
Implements an ap system for you to use when creating skill
systems that utilise AP.
----------------------
Instructions
----------------------
Notetag <ap x> e.g. <ap 4> <ap 100>
----------------------
Known bugs
----------------------
None
=end
module Vocab
  ObtainAp        = "%s AP was obtained!"
end

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # ● New Method gain_ap
  #--------------------------------------------------------------------------
  def gain_ap(ap)
    # your code goes here
  end
end

module BattleManager
  #--------------------------------------------------------------------------
  # ● Rewrote self.display_exp
  #--------------------------------------------------------------------------
  def self.display_exp
    if $game_troop.exp_total > 0
      text = sprintf(Vocab::ObtainExp, $game_troop.exp_total)
      $game_message.add('\.' + text)
    end
    if $game_troop.ap_total > 0
      text = sprintf(Vocab::ObtainAp, $game_troop.ap_total)
      $game_message.add('\.' + text)
    end
  end
  #--------------------------------------------------------------------------
  # ● Rewrote self.gain_exp
  #--------------------------------------------------------------------------
  def self.gain_exp
    $game_party.all_members.each do |actor|
        actor.gain_exp($game_troop.exp_total)
    end
    wait_for_message
    $game_party.all_members.each do |actor|
    actor.gain_ap($game_troop.ap_total)
    end
    wait_for_message
  end
end

class Game_Troop < Game_Unit
  #--------------------------------------------------------------------------
  # ● New Method ap_total
  #--------------------------------------------------------------------------
  def ap_total
    dead_members.inject(0) {|r, enemy| r += enemy.ap }
  end
end

class Game_Enemy < Game_Battler
  #--------------------------------------------------------------------------
  # ● New Method ap_total
  #--------------------------------------------------------------------------
  def ap
    if enemy.note =~ /<ap (.*)>/i
      return $1.to_i
    else
      return 0
    end
  end
end

Equipment Skills System Script

Code:
=begin
Equipment Skills System Script
by Fomar0153
Version 1.1
----------------------
Notes
----------------------
Requires an AP System if you want characters to
learn skills pernamently.
If using my Custom Equipment Slots script then
make sure this script is above the Equipment Slots Script
and make sure you have the compatability patch.
Allows learning of skills by equipment with the
option to learn skills pernamently.
----------------------
Instructions
----------------------
Set Learn_Skills to false if you want the skills to
only be temporary.
If you can learn skills then you need to set up AP for
each skill you put on an item.
In the notes section put:
AP:n
where n is the ap required to learn pernamently.
Then follow the instructions below about how to add skills
to weapons and armor.
----------------------
Change Log
----------------------
1.0 -> 1.1 Fixed a bug which caused skills learnt from
          armour to not display they were learnt.
----------------------
Known bugs
----------------------
None
=end
 
 
module Equipment_Skills
 
  # If set to false then characters will not
  # learn the skills pernamently and you will
  # not need an ap system
  Learn_Skills = true
 
  Weapons = []
  # Add weapon skills in this format
  # Weapons[weapon_id] = [skillid1, skillid2]
  Weapons[37] = [137]
  Weapons[31] = [137]
 
  Armors = []
  # Add weapon skills in this format
  # Armors[armor_id] = [skillid1, skillid2]
  Armors[3] = [9]
 
  def self.get_ap_cost(skill_id)
    t = $data_skills[skill_id].note
    if t.include?("AP:")
      ap = /AP:(\d+)/.match(t)
      ap = ap[0].split(":")
      return ap[1].to_i
    end
    return 999
  end
 
end
 
class Game_Actor < Game_Battler
  attr_reader  :ap
  #--------------------------------------------------------------------------
  # ● Aliases setup
  #--------------------------------------------------------------------------
  alias eqskills_setup setup
  def setup(actor_id)
    eqskills_setup(actor_id)
    if Equipment_Skills::Learn_Skills
      @ap = []
    end
  end
  #--------------------------------------------------------------------------
  # ● Rewrites change_equip
  #--------------------------------------------------------------------------
  def change_equip(slot_id, item)
    return unless trade_item_with_party(item, equips[slot_id])
    if equips[slot_id].is_a?(RPG::Weapon)
      unless Equipment_Skills::Weapons[equips[slot_id].id] == nil
        for skill in Equipment_Skills::Weapons[equips[slot_id].id]
          if Equipment_Skills::Learn_Skills
            if @ap[skill] == nil
              @ap[skill] = 0
            end
            unless @ap[skill] >= Equipment_Skills.get_ap_cost(skill)
              forget_skill(skill)
            end
          else
            forget_skill(skill)
          end
        end
      end
    end
    if equips[slot_id].is_a?(RPG::Armor)
      unless Equipment_Skills::Armors[equips[slot_id].id] == nil
        for skill in Equipment_Skills::Armors[equips[slot_id].id]
          if Equipment_Skills::Learn_Skills
            if @ap[skill] == nil
              @ap[skill] = 0
            end
            unless @ap[skill] >= Equipment_Skills.get_ap_cost(skill)
              forget_skill(skill)
            end
          else
            forget_skill(skill)
          end
        end
      end
    end
    return if item && equip_slots[slot_id] != item.etype_id
    @equips[slot_id].object = item
    refresh
  end
  #--------------------------------------------------------------------------
  # ● New Method or Rewrites gain_ap
  #--------------------------------------------------------------------------
  def gain_ap(ap)
    if Equipment_Skills::Learn_Skills
      for item in self.equips
        if item.is_a?(RPG::Weapon)
          unless Equipment_Skills::Weapons[item.id] == nil
            for skill in Equipment_Skills::Weapons[item.id]
              if @ap[skill] == nil
                @ap[skill] = 0
              end
              last_ap = @ap[skill]
              @ap[skill] += ap
              if last_ap < Equipment_Skills.get_ap_cost(skill) and Equipment_Skills.get_ap_cost(skill) <= @ap[skill]
                SceneManager.scene.add_message(actor.name + " learns " + $data_skills[skill].name + ".")
              end
            end
          end
        end
        if item.is_a?(RPG::Armor)
          unless Equipment_Skills::Armors[item.id] == nil
            for skill in Equipment_Skills::Armors[item.id]
              if @ap[skill] == nil
                @ap[skill] = 0
              end
              last_ap = @ap[skill]
              @ap[skill] += ap
              if last_ap < Equipment_Skills.get_ap_cost(skill) and Equipment_Skills.get_ap_cost(skill) <= @ap[skill]
                SceneManager.scene.add_message(actor.name + " learns " + $data_skills[skill].name + ".")
              end
            end
          end
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● Aliases refresh
  #--------------------------------------------------------------------------
  alias eqskills_refresh refresh
  def refresh
    eqskills_refresh
    for item in self.equips
      if item.is_a?(RPG::Weapon)
        unless Equipment_Skills::Weapons[item.id] == nil
          for skill in Equipment_Skills::Weapons[item.id]
            learn_skill(skill)
          end
        end
      end
      if item.is_a?(RPG::Armor)
        unless Equipment_Skills::Armors[item.id] == nil
          for skill in Equipment_Skills::Armors[item.id]
            learn_skill(skill)
          end
        end
      end
    end
    # relearn any class skills you may have forgotten
    self.class.learnings.each do |learning|
      learn_skill(learning.skill_id) if learning.level <= @level
    end
  end
end
 
 
class Window_EquipItem < Window_ItemList
  #--------------------------------------------------------------------------
  # ● Rewrites col_max
  #--------------------------------------------------------------------------
  def col_max
    return 1
  end
  #--------------------------------------------------------------------------
  # ● Aliases update_help
  #--------------------------------------------------------------------------
  alias eqskills_update_help update_help
  def update_help
    eqskills_update_help
    if @actor && @status_window
      @status_window.refresh(item)
    end
  end
end
 
class Scene_Equip < Scene_MenuBase
  #--------------------------------------------------------------------------
  # ● Rewrites create_item_window
  #--------------------------------------------------------------------------
  alias eqskills_create_item_window create_item_window
  def create_item_window
    wx = @status_window.width # Edited line if you need to merge
    wy = @slot_window.y + @slot_window.height
    ww = @slot_window.width  # Edited line if you need to merge
    wh = Graphics.height - wy
    @item_window = Window_EquipItem.new(wx, wy, ww, wh)
    @item_window.viewport = @viewport
    @item_window.help_window = @help_window
    @item_window.status_window = @status_window
    @item_window.actor = @actor
    @item_window.set_handler(:ok,    method(:on_item_ok))
    @item_window.set_handler(:cancel, method(:on_item_cancel))
    @slot_window.item_window = @item_window
  end
end
 
 
class Window_EquipStatus < Window_Base
  #--------------------------------------------------------------------------
  # ● Rewrites window_height
  #--------------------------------------------------------------------------
  def window_height
    Graphics.height - (2 * line_height + standard_padding * 2)#fitting_height(visible_line_number)
  end
  #--------------------------------------------------------------------------
  # ● Aliases refresh
  #--------------------------------------------------------------------------
  alias eqskills_refresh refresh
  def refresh(item = nil)
    eqskills_refresh
    contents.clear
    draw_actor_name(@actor, 4, 0) if @actor
    6.times {|i| draw_item(0, line_height * (1 + i), 2 + i) }
      unless item == nil
      if item.is_a?(RPG::Weapon)
        unless Equipment_Skills::Weapons[item.id] == nil
          skills = Equipment_Skills::Weapons[item.id]
        end
      end
      if item.is_a?(RPG::Armor)
        unless Equipment_Skills::Armors[item.id] == nil
          skills = Equipment_Skills::Armors[item.id]
        end
      end
      unless skills == nil
        change_color(normal_color)
        draw_text(4, 168, width, line_height, "Equipment Skills")
        change_color(system_color)
        i = 1
        for skill in skills
          draw_text(4, 168 + 24 * i, width, line_height, $data_skills[skill].name)
          if Equipment_Skills::Learn_Skills and @actor.ap[skill] == nil
            @actor.ap[skill] = 0
          end
          i = i + 1
          if Equipment_Skills::Learn_Skills
            draw_current_and_max_values(4, 168 + 24 * i, width - 50, [@actor.ap[skill],Equipment_Skills.get_ap_cost(skill)].min, Equipment_Skills.get_ap_cost(skill), system_color, system_color)
            i = i + 1
          end
        end
      end
    end
  end
end
 
 
class Window_EquipSlot < Window_Selectable
  #--------------------------------------------------------------------------
  # ● Aliases update
  #--------------------------------------------------------------------------
  alias eqskills_update update
  def update
    eqskills_update
    @status_window.refresh(self.item) if self.active == true
  end
end
 
 
class Scene_Battle < Scene_Base
  #--------------------------------------------------------------------------
  # ● New method add_text
  #--------------------------------------------------------------------------
  def add_message(text)
    $game_message.add('\.' + text)
  end
end

Donc en résumé, je n'ai bougé que la ligne 49 et 50 pour faire des tests avec la compétence soin dans le Script "Equipment Skills System".
J'ai aussi mis dans ma base de donnée dans l'onglet skills, notebox de la compétence Soin -> AP:50
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 22:46
L'id de ta compétence soins c'est 137 ?
J'ai pris l'id 26 (celle de base) et ça marche.
Aussi, le script unique class me donne un bug au démarrage du jeu.
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 22:56
@RitoJS a écrit:L'id de ta compétence soins c'est 137 ?
J'ai pris l'id 26 (celle de base) et ça marche.
Aussi, le script unique class me donne un bug au démarrage du jeu.

Oui j'ai dû chipoté un peu et le foutre en l'air, je viens de le virer (a)

Sinon, oui, l'id c'est 137... Je ne vois pas ce qui foire Sad
Je viens de tester avec la même attaque que toi et ça ne change absolument rien Sad
RitoJS
RitoJS
Membre

Nombre de messages : 252
Age : 25
Localisation : Paris
Distinction : aucune
Date d'inscription : 24/08/2010
http://lunarito.wordpress.com/

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 23:16
Hum...Essaie d'installer cette version de Ace:
Lien
Sinon, je ne vois pas ce qui foire...
Mistik26
Mistik26
Membre

Nombre de messages : 17
Distinction : aucune
Date d'inscription : 06/01/2013

Script Equipment Skill Empty Re: Script Equipment Skill

le Sam 2 Fév 2013 - 23:34
J'ai déjà essayé en aprèm, ça ne change rien Sad
Contenu sponsorisé

Script Equipment Skill Empty Re: Script Equipment Skill

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