O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Problemas com Script Batlle Symphony.

Iniciado por Feruleo, 02/01/2013 às 17:57

02/01/2013 às 17:57 Última edição: 02/01/2013 às 18:38 por Feruleo
Toda vez que um enimigo ataca aparece este erro:

Script 'Battle Symphony' line 681:: NoMethodError ocurred.
undefined method 'atk_animation_id1' for #<Game_Enemy:0x99f8f2c>

Alguem sabe o que é?

Obs: Não uso nenhum add-on.

falta coisa ai, antes de tudo, lembre-se sempre de postar uma demo ou o script em questão, como eu mecho bastante com o sist de batalha do Ace, eu acho que sei oque acontece, coloque esse script abaixo do script de batalha, caso não de volte aqui com uma demo ou o script completo dele.
class Game_Enemy < Game_Battler
  def atk_animation_id1
  end
end

Bem no começo deu certo mais depois pediu para colocar atk_animation_id2
coloquei. Mais depois apareceu outro erro. Este e o script:

Spoiler
#==============================================================================
#
# ▼ Yami Engine Symphony - Battle Symphony
# -- Version: 1.00 (2012.10.20)
# -- Level: Easy, Normal, Hard, Very Hard
# -- Requires: YEA - Battle Engine
#
#==============================================================================

$imported = {} if $imported.nil?
$imported["YES-BattleSymphony"] = true

#==============================================================================
# ▼ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2012.10.20 - Finished Script.
# 2012.07.01 - Started Script.
#
#==============================================================================
# ▼ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Core Engine of Symphony. This script provides a complicated visual battle
# which can be customized and many add-on awaited in the future.
# -----------------------------------------------------------------------------
# There are 8 Sections of Script:
#
# Section I. Basic Settings (S-01)
# Section II. Default Actions (S-02)
# Section III. AutoSymphony (S-03)
# Section IV. Default Symphony Tags (S-04)
# Section V. Imports Symphony Tags (S-05)
# Section VI. Sprites Initialization (S-06)
# Section VII. Icons Sprites Initialization (S-07)
# Section VIII. Core Script (S-08)
#
# You can search these sections by the code next to them (S-xx).
#
#==============================================================================
# ▼ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
#==============================================================================
# ▼ Credits
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Symphony Tags: Yanfly (From his Melody Tags).
# Inspired: Yanfly, Nessiah, EvilEagles.
# Testers: Many Guys in RPG Maker Community.
# Many Descriptions: Yanfly (From his Yanfly Engine Melody)
#
#==============================================================================

#==============================================================================
# Section I. Basic Settings (S-01)
# -----------------------------------------------------------------------------
# These are all basic requirements for running Battle Engine Symphony.
# Please pay attention to those settings before you touch and read next
# sections and add-ons.
#==============================================================================
module SYMPHONY
  module View
    # Set this to false to set Battle View to Empty.
    # All Sprites of actors as well as Icon (Weapon, Item...) will be hide.
    # All other Symphony Tags are still available.   
    EMPTY_VIEW = false
   
    # Set Party default Direction. For Number of Direction, check NumPad on the
    # Keyboard. Troop Direction will be opposited with Party Direction.
    PARTY_DIRECTION = 4
   
    # Set Party default Location. If You have more than 4 Actors in Battle, You
    # have to add more index in the hash below.
    # For example: If you have 5 Actors, You will have to add default Location
    # for 5th Actor by adding: 4 => [Location X, Location Y],
    # (Don't forget the comma at the end of each line)
    ACTORS_POSITION = { # Begin.
      0 =>  [480, 224],
      1 =>  [428, 244],
      2 =>  [472, 264],
      3 =>  [422, 284],
    } # End.
  end # View
  module Visual
    # Set this to false to disable Weapon Icon creating for non-charset Battlers.
    # Recommend not to enable this, unless You use a Battler which doesn't show
    # its own weapon in the Battler-set.
    WEAPON_ICON_NON_CHARSET = false
   
    # Set this to true to disable auto Move Posing. When set this to false,
    # You can let the actor to change to any pose while moving.
    DISABLE_AUTO_MOVE_POSE = true
   
    # Set this to true to enable shadow beneath battler.
    BATTLER_SHADOW = true
  end # Visual
end # SYMPHONY

#==============================================================================
# Section II. Default Actions (S-02)
# -----------------------------------------------------------------------------
# These are all Default Actions of Symphony. There are Magic Action,
# Physical Action, Item Action and some Misc Actions. If You are really
# good at Symphony Tags and want to customize all of these actions, please
# pay attention here.
# Note: You can use Symphony Tags in each skills so You don't have to check
# this if these actions settings are good for You.
#==============================================================================
module SYMPHONY
  module DEFAULT_ACTIONS
     
    #==========================================================================
    # Default Magic Actions
    # -------------------------------------------------------------------------
    # These are the default magic actions for all Magic Skills as well as Certain
    # hit Skills. Battlers will play these actions when use a Magic/Certain Hit
    # Skill unless You customize it with Symphony Tags.
    #==========================================================================
    MAGIC_SETUP =[
      ["MESSAGE"],
      ["MOVE USER", ["FORWARD", "WAIT"]],
      ["POSE", ["USER", "CAST"]],
      ["STANCE", ["USER", "CAST"]],
    ] # Do not remove this.
    MAGIC_WHOLE =[
      ["IMMORTAL", ["TARGETS", "TRUE"]],
      ["AUTO SYMPHONY", ["SKILL FULL"]],
    ] # Do not remove this.
    MAGIC_TARGET =[
    ] # Do not remove this.
    MAGIC_FOLLOW =[
      ["WAIT FOR MOVE"],
      ["IMMORTAL", ["TARGETS", "FALSE"]],
    ] # Do not remove this.
    MAGIC_FINISH =[
      ["AUTO SYMPHONY", ["RETURN ORIGIN"]],
      ["WAIT FOR MOVE"],
      ["WAIT", ["12", "SKIP"]],
    ] # Do not remove this.
     
    #==========================================================================
    # Default Physical Actions
    # -------------------------------------------------------------------------
    # These are the default physical actions for all Physical Skills as well as
    # Normal Attack. Battlers will play these actions when use a Physical
    # Skill unless You customize it with Symphony Tags.
    #==========================================================================
    PHYSICAL_SETUP =[
      ["MESSAGE"],
      ["MOVE USER", ["FORWARD", "WAIT"]],
    ] # Do not remove this.
    PHYSICAL_WHOLE =[
    ] # Do not remove this.
    PHYSICAL_TARGET =[
      ["IMMORTAL", ["TARGETS", "TRUE"]],
      ["POSE", ["USER", "FORWARD"]],
      ["STANCE", ["USER", "FORWARD"]],
      ["MOVE USER", ["TARGET", "BODY", "WAIT"]],
      ["AUTO SYMPHONY", ["SINGLE SWING"]],
      ["AUTO SYMPHONY", ["SKILL FULL", "unless attack"]],
      ["AUTO SYMPHONY", ["ATTACK FULL", "if attack"]],
      ["IMMORTAL", ["TARGETS", "FALSE"]],
    ] # Do not remove this.
    PHYSICAL_FOLLOW =[
      ["WAIT FOR MOVE"],
    ] # Do not remove this.
    PHYSICAL_FINISH =[
      ["ICON DELETE", ["USER", "WEAPON"]],
      ["AUTO SYMPHONY", ["RETURN ORIGIN"]],
      ["WAIT FOR MOVE"],
      ["WAIT", ["12", "SKIP"]],
    ] # Do not remove this.
   
    #==========================================================================
    # Default Item Actions
    # -------------------------------------------------------------------------
    # These are the default item actions for all Items. Battlers will play these
    # actions when use an Item unless You customize it with Symphony Tags.
    #==========================================================================
    ITEM_SETUP =[
      ["MESSAGE"],
      ["MOVE USER", ["FORWARD", "WAIT"]],
      ["AUTO SYMPHONY", ["ITEM FLOAT"]],
    ] # Do not remove this.
    ITEM_WHOLE =[
      ["IMMORTAL", ["TARGETS", "TRUE"]],
      ["AUTO SYMPHONY", ["ITEM FULL"]],
    ] # Do not remove this.
    ITEM_TARGET =[
    ] # Do not remove this.
    ITEM_FOLLOW =[
      ["WAIT FOR MOVE"],
      ["IMMORTAL", ["TARGETS", "FALSE"]],
    ] # Do not remove this.
    ITEM_FINISH =[
      ["AUTO SYMPHONY", ["RETURN ORIGIN"]],
      ["WAIT FOR MOVE"],
      ["WAIT", ["12", "SKIP"]],
    ] # Do not remove this.
   
    #==========================================================================
    # Critical Action
    # -------------------------------------------------------------------------
    # This is the critical action. This action will be played when a battler
    # scores a critical hit.
    #==========================================================================
    CRITICAL_ACTIONS =[
      ["SCREEN", ["FLASH", "30", "255", "255", "255"]],
    ] # Do not remove this.
   
    #==========================================================================
    # Miss Action
    # -------------------------------------------------------------------------
    # This is the miss action. This action will be played when a battler attacks
    # miss.
    #==========================================================================
    MISS_ACTIONS =[
      ["POSE", ["TARGET", "EVADE"]],
    ] # Do not remove this.
   
    #==========================================================================
    # Evade Action
    # -------------------------------------------------------------------------
    # This is the evade action. This action will be played when a battler evades.
    #==========================================================================
    EVADE_ACTIONS =[
      ["POSE", ["TARGET", "EVADE"]],
    ] # Do not remove this.

    #==========================================================================
    # Fail Action
    # -------------------------------------------------------------------------
    # This is the fail action. This action will be played when a battler fails
    # on casting skill.
    #==========================================================================
    FAIL_ACTIONS =[
   
    ] # Do not remove this.
     
    #==========================================================================
    # Damaged Action
    # -------------------------------------------------------------------------
    # This is the damaged action. This action will be played when a battler is
    # damaged.
    #==========================================================================
    DAMAGED_ACTION = [
      ["POSE", ["TARGET", "DAMAGE"]],
      ["STANCE", ["TARGET", "STRUCK"]],
    ] # Do not remove this.
     
    #==========================================================================
    # Counter Action
    # -------------------------------------------------------------------------
    # This is the counter action. This action will be played when a battler
    # counters an attack.
    #==========================================================================
    COUNTER_ACTION = [
      ["MOVE COUNTER SUBJECT", ["FORWARD", "WAIT"]],
      ["AUTO SYMPHONY", ["SINGLE SWING COUNTER"]],
      ["AUTO SYMPHONY", ["SKILL FULL COUNTER"]],
      ["ICON DELETE", ["COUNTER SUBJECT", "WEAPON"]],
      ["POSE", ["COUNTER SUBJECT", "BREAK"]],
      ["STANCE", ["COUNTER SUBJECT", "BREAK"]],
    ] # Do not remove this.
     
    #==========================================================================
    # Reflect Action
    # -------------------------------------------------------------------------
    # This is the reflect action. This action will be played when a battler
    # reflects a magic.
    #==========================================================================
    REFLECT_ACTION = [
      ["MOVE REFLECT SUBJECT", ["FORWARD", "WAIT"]],
      ["POSE", ["REFLECT SUBJECT", "CAST"]],
      ["STANCE", ["REFLECT SUBJECT", "CAST"]],
      ["AUTO SYMPHONY", ["SKILL FULL COUNTER"]],
      ["POSE", ["REFLECT SUBJECT", "BREAK"]],
      ["STANCE", ["REFLECT SUBJECT", "BREAK"]],
    ] # Do not remove this.
   
  end # DEFAULT_ACTIONS
end # SYMPHONY

#==============================================================================
# Section III. AutoSymphony (S-03)
# -----------------------------------------------------------------------------
# These are all Settings of AutoSymphony. You can make a sequence of Actions
# and Symphony Tags and reuse it with a single tag: AutoSymphony.
#==============================================================================
module SYMPHONY
  AUTO_SYMPHONY = { # Start
    # "Key" => [Symphony Sequence],
   
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: return origin
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This AutoSymphony returns the active battler and all of its targets back
    # to their original locations. Used often at the end of a skill, item,
    # or any other action sequence.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "RETURN ORIGIN" => [
      ["STANCE", ["USER", "ORIGIN"]],
      ["MOVE USER", ["ORIGIN", "WAIT"]],
      ["POSE", ["USER", "BREAK"]],
      ["MOVE EVERYTHING", ["ORIGIN"]],
    ], # end RETURN ORIGIN
     
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: single swing
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This causes the active battler to perform a single-handed weapon swing
    # downwards.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "SINGLE SWING" => [
      ["ICON CREATE", ["USER", "WEAPON"]],
      ["ICON", ["USER", "WEAPON", "SWING"]],
      ["POSE", ["USER", "2H SWING"]],
      ["STANCE", ["USER", "ATTACK"]],
    ], # end SINGLE SWING
     
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: single swing counter
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This causes the countering battler to perform a single-handed weapon
    # swing downwards.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "SINGLE SWING COUNTER" => [
      ["ICON CREATE", ["COUNTER SUBJECT", "WEAPON"]],
      ["ICON", ["COUNTER SUBJECT", "WEAPON", "SWING"]],
      ["POSE", ["COUNTER SUBJECT", "2H SWING"]],
      ["STANCE", ["USER", "ATTACK"]],
    ], # end SINGLE SWING COUNTER
             
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: item float
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This causes the active battler to enter a "Cast" stance to make the
    # active battler appear to throw the item upward. The icon of the item
    # is then created and floats upward.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "ITEM FLOAT" => [
      ["POSE", ["USER", "CAST"]],
      ["STANCE", ["USER", "ITEM"]],
      ["ICON CREATE", ["USER", "ITEM"]],
      ["ICON", ["USER", "ITEM", "FLOAT", "WAIT"]],
    ], # end ITEM FLOAT
     
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: attack full
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This triggers the full course for an attack effect. Attack's animation
    # plays and waits until it ends. The damage, status changes, and anything
    # else the attack may do to the target. Once the attack effect is over,
    # the target is sent sliding backwards a little bit.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "ATTACK FULL" => [
      ["ATTACK EFFECT", ["COUNTER CHECK"]],
      ["ATTACK ANIMATION", ["WAIT"]],
      ["ATTACK EFFECT", ["WHOLE"]],
      ["MOVE TARGETS", ["BACKWARD"]],
    ], # end ATTACK FULL
     
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: skill full
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This trigger the full course for a skill's effect. The skill animation
    # plays and waits to the end. The damage, status changes, and anything
    # else the skill may do to the target. Once the skill effect is over, the
    # target is sent sliding backwards a little bit.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "SKILL FULL" => [
      ["SKILL EFFECT", ["COUNTER CHECK"]],
      ["SKILL EFFECT", ["REFLECT CHECK"]],
      ["SKILL ANIMATION", ["WAIT"]],
      ["SKILL EFFECT", ["WHOLE"]],
      ["MOVE TARGETS", ["BACKWARD", "unless skill.for_friend?"]],
    ], # end SKILL FULL
     
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: skill full counter
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This trigger the full course for a skill's effect. The skill animation
    # plays and waits to the end. The damage, status changes, and anything
    # else the skill may do to the target. Once the skill effect is over, the
    # target is sent sliding backwards a little bit.
    # This trigger is used in countering/reflecting skill.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "SKILL FULL COUNTER" => [
      ["LAST ANIMATION", ["TARGETS", "WAIT"]],
      ["SKILL EFFECT", ["WHOLE"]],
      ["MOVE TARGETS", ["BACKWARD", "unless skill.for_friend?"]],
    ], # end SKILL FULL COUNTER
   
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    # autosymphony: item full
    # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This triggers the full course for an item's effect. The item animation
    # plays and waits to the end. The damage, status changes, and anything
    # else the item may do to the target. Once the skill effect is over, the
    # target is sent sliding backwards a little bit.
    # --- WARNING --- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    # This is a default-used AutoSymphony. Do not remove this.
    #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    "ITEM FULL" => [
      ["SKILL EFFECT", ["COUNTER CHECK"]],
      ["SKILL EFFECT", ["REFLECT CHECK", "unless skill.for_all?"]],
      ["SKILL ANIMATION", ["WAIT"]],
      ["ICON", ["USER", "ITEM", "FADE OUT", "WAIT"]],
      ["ICON DELETE", ["USER", "ITEM"]],
      ["SKILL EFFECT", ["WHOLE"]],
      ["MOVE TARGETS", ["BACKWARD", "unless item.for_friend?"]],
    ], # end ITEM FULL
   
  } # Do not remove this.
end # SYMPHONY

#==============================================================================
# Section IV. Default Symphony Tags (S-04)
# -----------------------------------------------------------------------------
# These are all Default Symphony Tags. They define actions that will be played
# when the tags are called. All these tags are optimized for the best
# performance through testings.
# -----------------------------------------------------------------------------
# Do not edit anything below here unless You have read carefully the Tutorial
# at Creating and Editing Symphony Tags.
#==============================================================================
#==============================================================================
# ■ Scene_Battle - Defines Tags Names
#==============================================================================
class Scene_Battle < Scene_Base
 
  #--------------------------------------------------------------------------
  # new method: perform_actions_list
  #--------------------------------------------------------------------------
  def perform_actions_list(actions, targets)
    #--- Create Formers ---
    former_action = @action
    former_values = (@action_values != nil) ? @action_values.clone : nil
    former_targets = (@action_targets != nil) ? @action_targets.clone : nil
    former_item = (@scene_item != nil) ? @scene_item.clone : nil
    #--- Create Current ---
    @action_targets = targets
    actions.each { |action|
      @action = action[0].upcase; @action_values = action[1]
      @action_values.each { |s| s.upcase! if s.is_a?(String) } if @action_values
      break unless SceneManager.scene_is?(Scene_Battle)
      break if @subject && @subject.dead?
      next unless action_condition_met
      case @action.upcase
     
        when /ANIMATION[ ](\d+)|SKILL ANIMATION|ATTACK ANIMATION|ANIMATION/i
          action_animation
     
        when /ATTACK EFFECT|SKILL EFFECT/i
          action_skill_effect
         
        when /AUTO SYMPHONY|AUTOSYMPHONY/i
          action_autosymphony
         
        when /ICON CREATE|CREATE ICON/i
          action_create_icon
         
        when /ICON DELETE|DELETE ICON/i
          action_delete_icon
         
        when "ICON", "ICON EFFECT"
          action_icon_effect
         
        when /ICON THROW[ ](.*)/i
          action_icon_throw
                   
        when /MESSAGE/i
          action_message
         
        when /MOVE[ ](.*)/i
          action_move
         
        when /IMMORTAL/i
          action_immortal
         
        when /POSE/i
          action_pose
         
        when /STANCE/i
          action_stance
         
        when /TELEPORT[ ](.*)/i
          action_move
         
        when "WAIT", "WAIT SKIP", "WAIT FOR ANIMATION", "WAIT FOR MOVE",
          "WAIT FOR MOVEMENT", "ANI WAIT"
          action_wait
         
        else
          imported_symphony
      end
    }
    #--- Release Formers ---
    @action = former_action
    @action_values = former_values
    @action_targets = former_targets
    @scene_item = former_item
  end
 
end # Scene_Battle
#==============================================================================
# ■ Scene_Battle - Defines Tags Actions
#==============================================================================
class Scene_Battle < Scene_Base
 
  #--------------------------------------------------------------------------
  # new method: action_condition_met
  #--------------------------------------------------------------------------
  def action_condition_met
    target = @action_targets[0]
    targets = @action_targets
    user = @subject
    skill = item = @scene_item
    attack = user.current_action.attack?
    weapons = user.weapons if user.actor?
    return true if @action_values == nil
    @action_values.each { |value|
      case value
      when /IF[ ](.*)/i
        eval("return false unless " + $1.to_s.downcase)
      when /UNLESS[ ](.*)/i
        eval("return false if " + $1.to_s.downcase)
      end
    }
    return true
  end
 
  #--------------------------------------------------------------------------
  # new method: get_action_mains
  #--------------------------------------------------------------------------
  def get_action_mains
    result = []
    case @action.upcase
    when /(?:USER)/i
      result.push(@subject) if @subject
    when /(?:TARGET|TARGETS)/i
      result = @action_targets
    when /(?:COUNTER SUBJECT)/i
      result = [@counter_subject]
    when /(?:REFLECT SUBJECT)/i
      result = [@reflect_subject]
    when /(?:ACTORS|PARTY|ACTORS LIVING)/i
      result = $game_party.alive_members
    when /(?:ALL ACTORS|ACTORS ALL)/i
      result = $game_party.battle_members
    when /(?:ACTORS NOT USER|PARTY NOT USER)/i
      result = $game_party.alive_members
      result.delete(@subject) if @subject
    when /(?:ENEMIES|TROOP|ENEMIES LIVING)/i
      result = $game_troop.alive_members
    when /(?:ALL ENEMIES|ENEMIES ALL)/i
      result = $game_troop.battle_members
    when /(?:ENEMIES NOT USER|ENEMIES NOT USER)/i
      result = $game_troop.alive_members
      result.delete(@subject) if @subject
    when /ACTOR[ ](\d+)/i
      result.push($game_party.battle_members[$1.to_i])
    when /ENEMY[ ](\d+)/i
      result.push($game_troop.battle_members[$1.to_i])
    when /(?:EVERYTHING|EVERYBODY)/i
      result = $game_party.alive_members + $game_troop.alive_members
    when /(?:EVERYTHING NOT USER|EVERYBODY NOT USER)/i
      result = $game_party.alive_members + $game_troop.alive_members
      result.delete(@subject) if @subject
    when /(?:ALLIES|FRIENDS)/i
      result = @subject.friends_unit.alive_members if @subject
    when /(?:OPPONENTS|RIVALS)/i
      result = @subject.opponents_unit.alive_members if @subject
    when /(?:FRIENDS NOT USER)/i
      if @subject
        result = @subject.friends_unit.alive_members
        result.delete(@subject)
      end
    when /(?:FOCUS)/i
      result = @action_targets
      result.push(@subject) if @subject
    when /(?:NOT FOCUS|NON FOCUS)/i
      result = $game_party.alive_members + $game_troop.alive_members
      result -= @action_targets
      result.delete(@subject) if @subject
    else;
    end
    return result.compact
  end
 
  #--------------------------------------------------------------------------
  # new method: get_action_targets
  #--------------------------------------------------------------------------
  def get_action_targets
    result = []
    @action_values.reverse.each { |value|
      next if value.nil?
      case value.upcase
      when /(?:USER)/i
        result.push(@subject) if @subject
      when /(?:TARGET|TARGETS)/i
        result = @action_targets
      when /(?:COUNTER SUBJECT)/i
        result = [@counter_subject]
      when /(?:REFLECT SUBJECT)/i
        result = [@reflect_subject]
      when /(?:ACTORS|PARTY|ACTORS LIVING)/i
        result = $game_party.alive_members
      when /(?:ALL ACTORS|ACTORS ALL)/i
        result = $game_party.battle_members
      when /(?:ACTORS NOT USER|PARTY NOT USER)/i
        result = $game_party.alive_members
        result.delete(@subject) if @subject
      when /(?:ENEMIES|TROOP|ENEMIES LIVING)/i
        result = $game_troop.alive_members
      when /(?:ALL ENEMIES|ENEMIES ALL)/i
        result = $game_troop.battle_members
      when /(?:ENEMIES NOT USER|ENEMIES NOT USER)/i
        result = $game_troop.alive_members
        result.delete(@subject) if @subject
      when /ACTOR[ ](\d+)/i
        result.push($game_party.battle_members[$1.to_i])
      when /ENEMY[ ](\d+)/i
        result.push($game_troop.battle_members[$1.to_i])
      when /(?:EVERYTHING|EVERYBODY)/i
        result = $game_party.alive_members + $game_troop.alive_members
      when /(?:EVERYTHING NOT USER|EVERYBODY NOT USER)/i
        result = $game_party.alive_members + $game_troop.alive_members
        result.delete(@subject) if @subject
      when /(?:ALLIES|FRIENDS)/i
        result = @subject.friends_unit.alive_members if @subject
      when /(?:OPPONENTS|RIVALS)/i
        result = @subject.opponents_unit.alive_members if @subject
      when /(?:FRIENDS NOT USER)/i
        if @subject
          result = @subject.friends_unit.alive_members
          result.delete(@subject)
        end
      when /(?:NOT FOCUS|NON FOCUS)/i
        result = $game_party.alive_members + $game_troop.alive_members
        result -= @action_targets
        result.delete(@subject)
      when /(?:FOCUS)/i
        result = @action_targets
        result.push(@subject) if @subject
      else;
      end
    }
    return result.compact
  end
 
  #--------------------------------------------------------------------------
  # new method: action_animation
  #--------------------------------------------------------------------------
  def action_animation
    targets = get_action_targets
    targets = @action_targets if ["SKILL ANIMATION", "ATTACK ANIMATION"].include?(@action.upcase)
    return if targets.size == 0
    #---
    case @action.upcase
    when /ANIMATION[ ](\d+)/i
      animation_id = [$1.to_i]
    when "SKILL ANIMATION", "ANIMATION"
      return unless @subject.current_action.item
      animation_id = [@subject.current_action.item.animation_id]
    when "ATTACK ANIMATION"
      animation_id = [@subject.atk_animation_id1]
      animation_id = [@subject.atk_animation_id2] if @subject.atk_animation_id2 > 0 && @action_values[1].to_i == 2
    when "LAST ANIMATION"
      animation_id = [@last_animation_id]
    end
    mirror = true if @action_values.include?("MIRROR")
    #---
    animation_id = [@subject.atk_animation_id1] if animation_id == [-1]
    #---
    ani_count = 0
    animation_id.each { |id|
      wait_for_animation if ani_count > 0
      mirror = !mirror if ani_count > 0
      animation = $data_animations[id]
      #---
      return unless animation
      if animation.to_screen?; targets[0].animation_id = id; end
      if !animation.to_screen?
        targets.each {|target| target.animation_id = id}
      end
      targets.each {|target| target.animation_mirror = mirror}
      ani_count += 1
    }
    @last_animation_id = animation_id[0]
    return unless @action_values.include?("WAIT")
    wait_for_animation
  end
 
  #--------------------------------------------------------------------------
  # new method: action_skill_effect
  #--------------------------------------------------------------------------
  def action_skill_effect
    return unless @subject
    return unless @subject.alive?
    return unless @subject.current_action.item
    targets = @action_targets.uniq
    item = @subject.current_action.item
    #---
    if @action_values.include?("CLEAR")
      targets.each { |target| target.result.set_calc; target.result.clear }
      return
    end
    #---
    if @action_values.include?("COUNTER CHECK")
      targets.each { |target| target.result.set_counter }
      return
    elsif @action_values.include?("REFLECT CHECK")
      targets.each { |target| target.result.set_reflection }
      return
    end
    #---
    array = []
    array.push("calc") if @action_values.include?("CALC")
    array = ["perfect"] if @action_values.include?("PERFECT")
    @action_values.each {|value| array.push(value.downcase) unless ["PERFECT", "CALC"].include?(value)}
    array = ["calc", "dmg", "effect"] if @action_values.include?("WHOLE") || @action_values.size == 0
    #---
    targets.each {|target|
      target.result.clear_bes_flag
      array.each {|value| str = "target.result.set_#{value}"; eval(str)}
      item.repeats.times { invoke_item(target, item) }
      target.result.clear_change_target
    }
  end
 
  #--------------------------------------------------------------------------
  # new method: action_autosymphony
  #--------------------------------------------------------------------------
  def action_autosymphony
    key = @action_values[0].to_s.upcase
    return unless SYMPHONY::AUTO_SYMPHONY.include?(key)
    actions_list = SYMPHONY::AUTO_SYMPHONY[key]
    perform_actions_list(actions_list, @action_targets)
  end
 
  #--------------------------------------------------------------------------
  # new method: action_create_icon
  #--------------------------------------------------------------------------
  def action_create_icon
    targets = get_action_targets
    return if targets.size == 0
    return if SYMPHONY::View::EMPTY_VIEW
    #---
    case @action_values[1]
    when "WEAPON", "WEAPON1"
      symbol = :weapon1
      attachment = :hand1
    when "WEAPON2"
      symbol = :weapon2
      attachment = :hand2
    when "SHIELD"
      symbol = :shield
      attachment = :shield
    when "ITEM"
      symbol = :item
      attachment = :middle
    else
      symbol = @action_values[1]
      attachment = :middle
    end
    #---
    case @action_values[2]
    when "HAND", "HAND1"
      attachment = :hand1
    when "HAND2", "SHIELD"
      attachment = :hand2
    when "ITEM"
      attachment = :item
    when "MIDDLE", "BODY"
      attachment = :middle
    when "TOP", "HEAD"
      attachment = :top
    when "BOTTOM", "FEET", "BASE"
      attachment = :base
    end
    #---
    targets.each { |target|
      next if target.sprite.nil?
      next if !target.use_charset? && !SYMPHONY::Visual::WEAPON_ICON_NON_CHARSET && [:weapon1, :weapon2].include?(symbol)
      target.create_icon(symbol, @action_values[3].to_i)
      next if target.icons[symbol].nil?
      target.icons[symbol].set_origin(attachment)
    }
  end
 
  #--------------------------------------------------------------------------
  # new method: action_delete_icon
  #--------------------------------------------------------------------------
  def action_delete_icon
    targets = get_action_targets
    return if targets.size == 0
    #---
    case @action_values[1]
    when "WEAPON", "WEAPON1"
      symbol = :weapon1
    when "WEAPON2"
      symbol = :weapon2
    when "SHIELD"
      symbol = :shield
    when "ITEM"
      symbol = :item
    else
      symbol = @action_values[1]
    end
    #---
    targets.each { |target| target.delete_icon(symbol) }
  end
 
  #--------------------------------------------------------------------------
  # new method: action_icon_effect
  #--------------------------------------------------------------------------
  def action_icon_effect
    targets = get_action_targets
    return if targets.size == 0
    #---
    case @action_values[1]
    when "WEAPON", "WEAPON1"
      symbol = :weapon1
    when "WEAPON2"
      symbol = :weapon2
    when "SHIELD"
      symbol = :shield
    when "ITEM"
      symbol = :item
    else
      symbol = @action_values[1]
    end
    #---
    targets.each { |target|
      icon = target.icons[symbol]
      next if icon.nil?
      total_frames = 8
      case @action_values[2]
      when "ANGLE"
        angle = @action_values[3].to_i
        icon.set_angle(angle)
      when "ROTATE", "REROTATE"
        angle = @action_values[3].to_i
        angle = -angle if @action_values[2] == "REROTATE"
        total_frames = @action_values[4].to_i
        total_frames = 8 if total_frames == 0
        icon.create_angle(angle, total_frames)
      when /ANIMATION[ ](\d+)/i
        animation = $1.to_i
        if $data_animations[animation].nil?; return; end
        total_frames = $data_animations[animation].frame_max
        total_frames *= 4 unless $imported["YEA-CoreEngine"]
        total_frames *= YEA::CORE::ANIMATION_RATE if $imported["YEA-CoreEngine"]
        icon.start_animation($data_animations[animation])
      when /MOVE_X[ ](\d+)/i
        move_x = $1.to_i
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        icon.create_movement(move_x, icon.y, total_frames)
      when /MOVE_Y[ ](\d+)/i
        move_y = $1.to_i
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        icon.create_movement(icon.x, move_y, total_frames)
      when /CUR_X[ ]([\-]?\d+)/i
        move_x = icon.x + $1.to_i
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        icon.create_movement(move_x, icon.y, total_frames)
      when /CUR_Y[ ]([\-]?\d+)/i
        move_y = icon.y + $1.to_i
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        icon.create_movement(icon.x, move_y, total_frames)
      when "FADE IN"
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        rate = Integer(256.0/total_frames)
        icon.set_fade(rate)
      when "FADE OUT"
        total_frames = @action_values[3].to_i
        total_frames = 8 if total_frames == 0
        rate = Integer(256.0/total_frames)
        icon.set_fade(-rate)
      when "FLOAT"
        total_frames = @action_values[3].to_i
        total_frames = 24 if total_frames == 0
        icon.create_move_direction(8, total_frames, total_frames)
      when "SWING"
        total_frames = 10
        icon.set_angle(0)
        icon.create_angle(90, total_frames)
      when "UPSWING"
        total_frames = 10
        icon.set_angle(90)
        icon.create_angle(0, total_frames)
      when "STAB", "THRUST"
        total_frames = 8
        direction = Direction.direction(target.pose)
        direction = Direction.opposite(direction) if target.sprite.mirror
        case direction
        when 8
          icon_direction = 8
          icon.set_angle(-45)
        when 4
          icon_direction = 4
          icon.set_angle(45)
        when 6
          icon_direction = 6
          icon.set_angle(-135)
        when 2
          icon_direction = 2
          icon.set_angle(135)
        end
        icon.create_move_direction(Direction.opposite(icon_direction), 40, 1)
        icon.update
        icon.create_move_direction(icon_direction, 32, total_frames)
      when "CLAW"
        total_frames = 8
        direction = Direction.direction(target.pose)
        direction = Direction.opposite(direction) if target.sprite.mirror
        case direction
        when 8
          icon_direction = 7
          back_direction = 3
        when 4
          icon_direction = 1
          back_direction = 9
        when 6
          icon_direction = 3
          back_direction = 7
        when 2
          icon_direction = 9
          back_direction = 1
        end
        icon.create_move_direction(back_direction, 32, 1)
        icon.update
        icon.create_move_direction(icon_direction, 52, total_frames)
      end
      #---
      if @action_values.include?("WAIT")
        update_basic while icon.effecting?
      end
    }
  end
 
  #--------------------------------------------------------------------------
  # new method: action_icon_throw
  #--------------------------------------------------------------------------
  def action_icon_throw
    mains = get_action_mains
    targets = get_action_targets
    return if mains.size == 0
    #---
    case @action_values[1]
    when "WEAPON", "WEAPON1"
      symbol = :weapon1
    when "WEAPON2"
      symbol = :weapon2
    when "SHIELD"
      symbol = :shield
    when "ITEM"
      symbol = :item
    else
      symbol = @action_values[1]
    end
    #---
    mains.each { |main|
      icon = main.icons[symbol]
      next if icon.nil?
      total_frames = @action_values[3].to_i
      total_frames = 12 if total_frames <= 0
      arc = @action_values[2].to_f
      #---
      targets.each { |target|
        move_x = target.screen_x
        move_y = target.screen_y - target.sprite.height / 2
        icon.create_movement(move_x, move_y, total_frames)
        icon.create_arc(arc)
        if @action_values.include?("WAIT")
          update_basic while icon.effecting?
        end
      }
    }
  end
 
  #--------------------------------------------------------------------------
  # new method: action_message
  #--------------------------------------------------------------------------
  def action_message
    user = @subject
    return unless user
    item = @subject.current_action.item
    return unless item
    @log_window.display_use_item(@subject, item)
  end
 
  #--------------------------------------------------------------------------
  # new method: action_move
  #--------------------------------------------------------------------------
  def action_move
    movers = get_action_mains
    return unless movers.size > 0
    return if SYMPHONY::View::EMPTY_VIEW
    #--- Get Location ---
    case @action_values[0]
    #---
    when "FORWARD", "BACKWARD"
      distance = @action_values[1].to_i
      distance = @action_values[0] == "FORWARD" ? 16 : 8 if distance <= 0
      frames = @action_values[2].to_i
      frames = 8 if frames <= 0
      movers.each { |mover|
        next unless mover.exist?
        direction = mover.direction
        destination_x = mover.screen_x
        destination_y = mover.screen_y
        case direction
        when 1; move_x = distance / -2; move_y = distance /  2
        when 2; move_x = distance *  0; move_y = distance *  1
        when 3; move_x = distance / -2; move_y = distance /  2
        when 4; move_x = distance * -1; move_y = distance *  0
        when 6; move_x = distance *  1; move_y = distance *  0
        when 7; move_x = distance / -2; move_y = distance / -2
        when 8; move_x = distance *  0; move_y = distance * -1
        when 9; move_x = distance /  2; move_y = distance / -2
        else; return
        end
        destination_x += @action_values[0] == "FORWARD" ? move_x : - move_x
        destination_y += @action_values[0] == "FORWARD" ? move_y : - move_y
        mover.face_coordinate(destination_x, destination_y) unless @action_values[0] == "BACKWARD"
        mover.create_movement(destination_x, destination_y, frames)
      }
    #---
    when "ORIGIN", "RETURN"
      frames = @action_values[1].to_i
      frames = 20 if frames <= 0
      movers.each { |mover|
        next unless mover.exist?
        destination_x = mover.origin_x
        destination_y = mover.origin_y
        next if destination_x == mover.screen_x && destination_y == mover.screen_y
        mover.face_coordinate(destination_x, destination_y)
        mover.create_movement(destination_x, destination_y, frames)
      }
    #---
    when "TARGET", "TARGETS", "USER"
      frames = @action_values[1].to_i
      frames = 20 if frames <= 0
      #---
      case @action_values[0]
      when "USER"
        targets = [@subject]
      when "TARGET", "TARGETS"
        targets = @action_targets
      end
      #---
      destination_x = destination_y = 0
      case @action_values[1]
      when "BASE", "FOOT", "FEET"
        targets.each { |target|
          destination_x += target.screen_x; destination_y += target.screen_y
          side_l = target.screen_x - target.sprite.width/2
          side_r = target.screen_x + target.sprite.width/2
          side_u = target.screen_y - target.sprite.height
          side_d = target.screen_y
          movers.each { |mover|
            next unless mover.exist?
            if side_l > mover.screen_x
              destination_x -= target.sprite.width/2
              destination_x -= mover.sprite.width/2
            elsif side_r < mover.screen_x
              destination_x += target.sprite.width/2
              destination_x += mover.sprite.width/2
    &
[close]

o seu post é grande demais '-', coloque o script aqui.
pastebin.com

Você pegou esse script direto do blog do yanfly? Tente pegar de lá, acho que está faltando algo, muitos scripter criam um basic module para os scripts, veja se o yanfly faz isso também.

Tinha dois scripts acima como requerimeto, Obrigado.