RMRK is retiring.
Server is paid up for the rest of 2026, but the forum may go after that. See here for more information. Please archive or save anything you would like to keep before 2027.
Main Menu
  • Welcome to The RPG Maker Resource Kit.

A sweet animated script

Started by blazinhandle, January 19, 2007, 08:02:19 AM

0 Members and 1 Guest are viewing this topic.

blazinhandle

Here's an awesome Animated CBS by Minkoff:

[code]#------------------------------------------------------------------------------#  Animated Battlers by Minkoff#  Enhancements by DerVVulfman        #  Low percentage and Status Poses #     Concept & Base coding by Twin Matrix#  Hero & Enemy z.depth concept by Min-Chan and Caldaron ( totally redone :) )#  Collapse stack-error found by JirbyTaylor(fixed) / Code by SephirothSpawn#============================================================================== ##  INTRODUCTION:##  This script is not a battlesystem but a graphic overlay system that can con-#  vert a frontview 'Strategy'  battlesystem into a Sideview battlesystem.   It#  has gone through a number of changes over the months that I have put my spin#  on the system, originally coded by Minkoff himself.##  As of now, this system works  with the default battlesystem, the RTAB system#  by Cogwheel, ParaDog's ATB, XRXS's system,  and a number of systems designed#  by Trickster.##  Again,  this system  changes the  'graphic'  overlay system  and is meant to #  change the battlers  and battler's startup positions  for a sideview system.#  It is not meant  to alter  anything else,  including combat values,  defense#  levels, or any other graphics other than those related to the battlers them-#  selves.##  #============================================================================== ##   ADDITIONAL CALLS AVAILABLE PRIOR TO COMBAT:##------------------------------------------------------------------------------#  SIDEVIEW MIRROR:     This value switches  the positions  of both enemies and#                       heroes to opposite ends of the screen.##   Script : $sideview_mirror = [number]#   number : a value indicating whether the hero & enemy positions are switched#            0 = Default:  Enemies on the left, Heroes on the right#            1 = Switched: Heroes on the left, Enemies on the right##------------------------------------------------------------------------------#  BATTLER FORMATIONS:  This value changes the way your heroes line up when the#                       battle starts.##   Script : $formation_style = [number]#   number : a value indicating the type of formation your heroes will use#            0 = Diagonal (Default)    4 = Column Pattern 1#            1 = Diagonal Pattern 2    5 = Column Pattern 2#            2 = Slanted Pattern 1     6 = Wave Formation 1#            3 = Slanted Pattern 2     7 = Wave Formation 2 ##            8 = Randomized (system will choose from 0 to 7)##------------------------------------------------------------------------------ #  FORMATION OPTIONS:   These values  may expand your system  to go beyond the#                       default four player system.##   Script : $formation_max_member = [number]#   number : A value indicating the maximum number of members in your party.#             (default = 4)#             #   Script : $formation_max_height = [number]#   number : A value indicating (in pixels) the top height of your party shown#            in the Battle Screen.  The higher the number, the lower the party#            on the screen. (default = 220)##   Script : $formation_max_width  = [number]#   number : The left/right width of the party's formation.  (default = 128)##   Script : $battlestatus_height = [number]#   number : The actual height of your battlestatus window. (default = 160)##  NOTE: The combined $formation_max_height and $battlestatus_height determines#        the vertical distance between battlers in their formation.##============================================================================== # Things added since original version by Minkoff:#   Can reverse the battler positions#   Editable spritesheet layout in script#   Able to define total/max frames per pose#   Can define individual # of frames per each pose#   Can use 'red-out' RTP death or 'battler death' pose#   Can show battler falling before death.#   'Casting' pose now available for RTAB/Skill Timing users#   Can show battler celebrating before victory pose#   Can tag battlers who's victory pose loops indefinitely#   Can show actor battlers get ready before battle starts.#   Separate poses for 'skills', 'items' or 'weapons' based on their id#   Can allow the battlers to step forward before using items & skills (FFVII+)#   Attacking battlers rush towards their targets while item & skill users don't#   Certain weapons can force the battler NOT to move#   Certain items & skills can force battlers to 'rush' the enemy#   Certain skills or items can force movement to the center of the screen#   Stationary enemies. In case enemies do NOT move when they attack.#   Adjustable 'low health' checker. Set your low health to 25%... 30%... 10%...#   Poses now available for status ailments#   Dead revert to 'victory' pose bug fixed.#   Default battlers now available for actors and/or enemies#   Default battlers now usable by ID number (had to rewrite red-out for that)#   Escaping Enemies bug found by SteveE22.  Fixed just as fast.#   Hero Formations (total of 8 hardwired -& 1 random- ... add at your own risk)#   Z-Depth for attack overlapping purposes#   Corrected attack overlap offset routine.  Overlap now based on battler size#   Certain skills and items can now prevent movement#   Can allow battlers to take step forward before performing 'attack' pose.(FF)#   Certain weapons can move battlers to center screen instead of a full move.#   Escaping Enemies can now have a pose before disappearing (was a rush pose)#   Redesigned Scene_Battle's movement routine#   Added pose for Critical Hits#   Added the enemy's hash for frame number based on poses#   Added the actor's hash for frame number based on poses#   Re-Tooled the formations to go beyond the default four party system#   Minor value added for compatability with Delissa's Battle Cry script#   Default Collapse Stack-Error fixed(code by SephirothSpawn) found JirbyTaylor#   Removed dependancy on $game_system for the Sideview Mirror system#   Fixed the 'Blocking during Victory State' bug discovered by Kaze950#   Battler tones now adapt to the background tones, requested by doom900#   Fixed changing battler/battler system.  Include fade-in switch req by Neonyo#   Set individual Actors/Enemies that phase on an attack#   Translucent battlers... a personal desire for ghosts you can see through!#   Adjustable opacity for translucent battlers... can't forget that.#   Includes an Adaptation Switch for use with RTAB's Connected Attacking script#   #   45 counted.#==============================================================================# ** Sprite_Battler#------------------------------------------------------------------------------#  This sprite is used to display the battler.It observes the Game_Character#  class and automatically changes sprite conditions.#==============================================================================class Sprite_Battler < RPG::Sprite    attr_accessor :battler_offset         # Degree of action forcing    attr_accessor :skill_used             # Degree of action forcing    attr_accessor :item_used              # Degree of action forcing      #--------------------------------------------------------------------------  # * Initialize  #--------------------------------------------------------------------------  alias cbs_initialize initialize   def initialize(viewport, battler = nil)    # * Configuration System *        # * Default Battler Style Switches    #--------------------------------------------------------------------------            $default_enemy = false              # If true, these switches allows the use    $default_actor = false              # of default battlers for actors/enemies    $default_enemy_id = [6]             # Ids of enemies using default battlers    $default_actor_id = []              # Ids of actors using default battlers    @default_collapse_actor   = false   # If true, restores the old 'red fade'    @default_collapse_enemy   = true    #   collapse effect (using spritesheets)            # * Animation Frames and Animation Speed    #--------------------------------------------------------------------------        @speed              = 4      # Framerate speed of the battlers    @poses              = 11     # Maximum # of poses (stances) in the template    @frames             = 4      # Maximum # of frames in each pose    @frames_standard    = 4      # Standard # of frames played in each pose.    @low_hp_percentage  = 0.25   # Determines health% of battler for WOOZY pose.        # * Poses Control     #--------------------------------------------------------------------------            # Editable Template (Some people wanted to change their template design)    $p1   =   0   # Sets the 'Ready Pose'  ($p1) to be pose  #1 in your template    $p2   =   1   # Sets the 'Struck Pose' ($p2) to be pose  #2 in your template    $p3   =   2   # Sets the 'Woozy Pose'  ($p3) to be pose  #3 in your template    $p4   =   3   # Sets the 'Block Pose'  ($p4) to be pose  #4 in your template    $p5   =   4   # Sets the 'Charge Pose' ($p5) to be pose  #5 in your template    $p6   =   5   # Sets the 'Retreat Pose'($p6) to be pose  #6 in your template    $p7   =   6   # Sets the 'Attack Pose' ($p7) to be pose  #7 in your template    $p8   =   7   # Sets the 'Item Pose'   ($p8) to be pose  #8 in your template    $p9   =   8   # Sets the 'Skill Pose'  ($p9) to be pose  #9 in your template    $p10  =   9   # Sets the 'Victory Pose'($p10)to be pose #10 in your template    $p11  =  10   # Sets the 'Defeat Pose' ($p11)to be pose #11 in your template    # Non-Default Poses (can expand beyond the default 11 poses here)    @poses_setup         = nil         # Choose animation pose for 'preparation'    @poses_casting       = nil         # Set casting pose to 'Block' for example    $poses_escaping      = nil         # Set 'coward' pose for fleeing monsters)        $poses_critical      = nil         # Set 'critical' hit pose for BIG hits.    @poses_dying         = nil         # Choose animation pose for dying throws.    @poses_winning       = nil         # Set winning dance to 'block' for examp.    @poses_winning_loops = [7]         # Set victory non-freezing actor as #7    # Non-Default Pose Hashes (poses dependant on .id values)    @poses_status  = {3 => 2, 4 => 3}  # Default: #3(Venom)&#4(Dazzle) is 'Woozy'    $poses_skills  = {57 => 6}         # Default: #57(Cross Cut) does 'Attack'    $poses_items   = {13 => 3}         # Default: #13(Sharp Stone) does 'Block'    $poses_weapons = {}                # Didn't set any weapons to any poses        # * Frames Control     #--------------------------------------------------------------------------        @frames_per_pose    = {0 => 2}            # Set #of frames to pose(by index)    # Advanced Individual Pose/Frame Hashes   # Advanced Individual Poses  uses                                              # hashes within hashes. As a demo     $poses_actor = {7 => {0 => 4}}            # you can see that enemy #1 has 2    $poses_enemy = {1 => {0 => 2, 3 => 2}}    # sets of controls:  index 0 (for                                              # a ready pose is set to 1 frame,    # while index 3 (block) is set to 'two' frames.   Likewise, for the actor's    # hash, Actor #7 (Gloria) has only 1 control hash.   It sets index pose '0'     # (the ready pose again) to use four frames of animation (even though I had    # set the ready pose to just use '2' with the @frames_per_pose hash earlier.            # Individual Battler Settings    @mirror_enemies     = true     # Enemy battlers use reversed image    @stationary_enemies = false    # If the enemies don't move while attacking    @stationary_actors  = false    # If the actors don't move while attacking    @calculate_speed    = false    # System calculates a mean/average speed        # Transparency Settings    @translucency       = 127      # Degree of transparency    @translucent_actor  = [1]      # ID of actor at translucency settings    @translucent_enemy  = [1]      # ID of enemy at translucency settings    @phasing            = false    # If battlers fade in/out while charging    @phasing_actor      = [1, 2]   # IDs of actors that fade in/out if charging    @phasing_enemy      =
  •       # IDs of enemies that fade in/out if charging    @fade_in            = true     # Battler fades in if replaced or transparent            # * Movement Settings (Step-Forward / Final Fantasy-Style)    #--------------------------------------------------------------------------        $rush_offset        = 0        # How much additional space between battlers    $rush_attack        = false    # If true, battler steps forward to attack    $rush_skill         = true     # If true, battler steps forward to use skill    $rush_item          = true     # If true, battler steps forward to use item            # * Movement Arrays (Arrays for skill/weapon/item IDs that affect movement)    #--------------------------------------------------------------------------        $moving_item_atk    = [1]     # Examples are items that need to be applied.    $moving_skill_atk   = [57,61] # Examples are martial-arts and sneak attacks    $move2center_atk    = []      # Moves battler to center based on weapon id!    $move2center_item   = [5]     # Moves battler to center for a big item atk!    $move2center_skill  = [7]     # Moves battler to center for a big skill atk!        # * Stationary Arrays (Arrays for skill/weapon/item IDs that halt movement)     #--------------------------------------------------------------------------        # Array that holds the id # of skills, items or weapons that affect movement    $stationary_enemyid = []       # Enemies that don't RUN during melee attacks    @stationary_weapons = [17,18,19,20,21,22,23,24] # (examples are bows & guns)    @stationary_skills  = []       # (examples are bows & guns)    @stationary_items   = []       # (examples are bows & guns)        # Adaptation Switches    $RTAB_Connected_Attacking = false  # Needed to be on if RTAB and Con. Attk.        # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -         # DO NOT EDIT BELOW THIS LINE UNLESS YOU KNOW WHAT YOU'RE DOING    @frame, @pose = 0, 0    @last_time = 0    @last_move_time = 0    @battler_offset = 0    @skill_used = 0    @item_used = 0    $casted  = false    $casting = false    @dying   = true    @s_pose  = false    $victory = false    @winning = true    cbs_initialize(viewport, battler)    viewport.z = 99    $formation = $formation_style    # Setting values called from EVENT scripts    $sv_mirror = $sideview_mirror    $sv_mirror = 0 if $sideview_mirror == nil    $max_member = $formation_max_member    $max_member = 4 if $formation_max_member == nil    $formation_top = $formation_max_height    $formation_top = 220 if $formation_max_height == nil    $formation_width = $formation_max_width    $formation_width = 128 if $formation_max_width == nil    $battlestat_height = $battlestatus_height    $battlestat_height = 160 if $battlestatus_height == nil    $formation = $formation_style    $formation = 0 if $formation_style == nil    # if Formation is random     if $formation == 8 then      $formation = rand(8).to_i    end  end  #--------------------------------------------------------------------------  # * Update  #--------------------------------------------------------------------------  alias cbs_update update  def update    return unless @battler    if @battler.battler_name != @battler_name      @started = false    end        # Regular Update    cbs_update    if @battler.is_a?(Game_Actor) and @battler_visible      if @translucent_actor.include?(@battler.id)        if $game_temp.battle_main_phase          self.opacity = @translucency        else          self.opacity = @translucency - 32        end      end    end        if @battler.is_a?(Game_Enemy) and @battler_visible      if @translucent_enemy.include?(@battler.id)        if $game_temp.battle_main_phase          self.opacity = @translucency        else          self.opacity = @translucency - 32        end      end    end    # Reset hash for Advanced Pose/Frames    pose_temp = {}    # Start Routine    unless @started            @pose = state            if @battler.is_a?(Game_Enemy)        if not $default_enemy          if $default_enemy_id == nil            # Set up Spritesheet Standards              @width = @width / @frames            @height = @height / @poses          else            if not $default_enemy_id.include?(@battler.id)              @width = @width / @frames              @height = @height / @poses            end          end        end      end        if @battler.is_a?(Game_Actor)         if not $default_actor          if $default_actor_id == nil            # Set up Spritesheet Standards              @width = @width / @frames            @height = @height / @poses          else            if not $default_actor_id.include?(@battler.id)              @width = @width / @frames              @height = @height / @poses            end          end        end      end            @battler_offset = @width * 0.75          @display_x = @battler.screen_x      @display_y = @battler.screen_y      @display_z = @battler.screen_z      @destination_x = @display_x      @destination_y = @display_y      @destination_z = @display_z      if @fade_in        self.opacity = 0      end      @started = true    end      # Cut Out Frame     # Enemy Battler Routine    if @battler.is_a?(Game_Enemy)      if $default_enemy        self.src_rect.set(@width * 0, @height * 0, @width, @height)      else        if $default_enemy_id !=nil          if $default_enemy_id.include?(@battler.id)            self.src_rect.set(@width * 0, @height * 0, @width, @height)          else            self.src_rect.set(@width * @frame, @height * @pose, @width, @height)          end        else          self.src_rect.set(@width * @frame, @height * @pose, @width, @height)        end      end    end        # Actor Battler Routine    if @battler.is_a?(Game_Actor)      if $default_actor        self.src_rect.set(@width * 0, @height * 0, @width, @height)      else        if $default_actor_id !=nil          if $default_actor_id.include?(@battler.id)            self.src_rect.set(@width * 0, @height * 0, @width, @height)          else            self.src_rect.set(@width * @frame, @height * @pose, @width, @height)          end        else          self.src_rect.set(@width * @frame, @height * @pose, @width, @height)        end      end    end       # Position Sprite     self.x = @display_x    self.y = @display_y    self.z = @display_z    self.ox = @width / 2    self.oy = @height        # Adjust sprite direction if facing the other way...    if $sv_mirror == 1      if @battler.is_a?(Game_Actor)        self.mirror = !!battler      else        if not @mirror_enemies          self.mirror = !!battler        end      end    else      if @battler.is_a?(Game_Enemy)        if @mirror_enemies          self.mirror = !!battler        end      end    end        # Setup Frames per Pose    poseframe = @frames_standard    poseframe = @frames_per_pose[@pose] if @frames_per_pose.include?(@pose)    # Set Advanced Poses for Actors    if @battler.is_a?(Game_Actor)      pose_temp = $poses_actor[@battler.id] if $poses_actor.include?(@battler.id)      poseframe = pose_temp[@pose] if pose_temp.include?(@pose)    end        # Set Advanced Poses for Enemies    if @battler.is_a?(Game_Enemy)      pose_temp = $poses_enemy[@battler.id] if $poses_enemy.include?(@battler.id)      poseframe = pose_temp[@pose] if pose_temp.include?(@pose)    end      # Setup Animation     time = Graphics.frame_count / (Graphics.frame_rate / @speed)    if @last_time < time      @frame = (@frame + 1) % poseframe      if @frame == 0        if @freeze          @frame = poseframe - 1          return        end        @pose = state      end    end    @last_time = time    # Setup Dying Animation    if @battler.dead?      if @dying == true        @pose = state        @dying = false      end    else      if @battler.is_a?(Game_Actor)        if @poses_setup != nil          if @s_pose == false            @pose = @poses_setup            @s_pose = true          end        end        if $victory == true          if @winning == true            @pose = state            @winning = false          end        end      end    end        # Move It    move if moving  end    #--------------------------------------------------------------------------   # * Current State  #--------------------------------------------------------------------------  def state        unless @battler.dead?      if @battler.is_a?(Game_Enemy) and @translucent_enemy.include?(@battler.id)        self.opacity = @translucency      end      if @battler.is_a?(Game_Actor) and @translucent_actor.include?(@battler.id)        self.opacity = @translucency      end    end        # Damage State    if [nil,{}].include?(@battler.damage)      # Battler Fine      @state = $p1      # Battler Wounded      @state = $p3 if @battler.hp < @battler.maxhp * @low_hp_percentage      # Battler Status-Effect      for i in @battler.states        @state = @poses_status if @poses_status.include?(i)      end      # If Battler Dead      if @battler.dead?         # If using default battlers or default collapse        if (@default_collapse_actor and @battler.is_a?(Game_Actor)) or          (@default_collapse_enemy and @battler.is_a?(Game_Enemy)) or          ($default_actor and @battler.is_a?(Game_Actor)) or          ($default_enemy and @battler.is_a?(Game_Enemy)) or          ($default_enemy_id.include?(@battler.id) and @battler.is_a?(Game_Enemy)) or          ($default_actor_id.include?(@battler.id) and @battler.is_a?(Game_Actor))          # Do absolutely nothing :)        else          # Use Poses system          if @poses_dying != nil            if @dying == true              @state = @poses_dying            else              @state = $p11            end          else            @state = $p11          end          # Fix Opacity          if @battler.is_a?(Game_Enemy)             if @translucent_enemy.include?(@battler.id)              self.opacity = @translucency            else              self.opacity = 255            end          else            if @translucent_actor.include?(@battler.id)              self.opacity = @translucency            else              self.opacity = 255                  end          end        end      end    end      # Casting State     if $casted      if @battler.rtp != 0        if @poses_casting != nil        @state = @poses_casting        end      end    end        # Victory State    if @battler.is_a?(Game_Actor)      if $victory        if @poses_winning != nil          if @winning == true            if not @battler.dead?              @state = @poses_winning            end          else            if not @battler.dead?            @state = $p10              if not @poses_winning_loops.include?(@battler.id)                @freeze = true              end            end          end        else          if not @battler.dead?            @state = $p10            if not @poses_winning_loops.include?(@battler.id)              @freeze = true            end          end        end              end    end        # Guarding State (not if dead OR in victory)    if not @battler.dead?      if not $victory        @state = $p4 if @battler.guarding?      end    end    # Moving State     if moving    # Adjust sprite direction if facing the other way...      if $sv_mirror == 1        # If enemy battler moving        if @battler.is_a?(Game_Enemy)           # Battler Moving Left          @state = $p5 if moving.eql?(0)          # Battler Moving Right          @state = $p6 if moving.eql?(1)        # Else actor battler moving        else          # Battler Moving Left          @state = $p6 if moving.eql?(0)          # Battler Moving Right          @state = $p5 if moving.eql?(1)        end      else              # If enemy battler moving        if @battler.is_a?(Game_Enemy)           # Battler Moving Left          @state = $p6 if moving.eql?(0)          # Battler Moving Right          @state = $p5 if moving.eql?(1)        # Else actor battler moving        else          # Battler Moving Left          @state = $p5 if moving.eql?(0)          # Battler Moving Right          @state = $p6 if moving.eql?(1)        end      end    end    # Return State    return @state  end    #--------------------------------------------------------------------------   # * Move  #--------------------------------------------------------------------------  def move    time = Graphics.frame_count / (Graphics.frame_rate.to_f / (@speed * 5))    if @last_move_time < time      # Pause for Animation      return if @pose != state        opa = 255        if @battler.is_a?(Game_Enemy) and @translucent_enemy.include?(@battler.id)          opa = @translucency        end        if @battler.is_a?(Game_Actor) and @translucent_actor.include?(@battler.id)          opa = @translucency        end            # Phasing      if @phasing        d1 = (@display_x - @original_x).abs        d2 = (@display_y - @original_y).abs        d3 = (@display_x - @destination_x).abs        d4 = (@display_y - @destination_y).abs        self.opacity = [opa - ([d1 + d2, d3 + d4].min * 1.75).to_i, 0].max              end      # Phasing per Actor/Enemy      if @battler.is_a?(Game_Actor)        if @phasing_actor.include?(@battler.id)          d1 = (@display_x - @original_x).abs          d2 = (@display_y - @original_y).abs          d3 = (@display_x - @destination_x).abs          d4 = (@display_y - @destination_y).abs          self.opacity = [opa - ([d1 + d2, d3 + d4].min * 1.75).to_i, 0].max        end      else              if @phasing_enemy.include?(@battler.id)          d1 = (@display_x - @original_x).abs          d2 = (@display_y - @original_y).abs          d3 = (@display_x - @destination_x).abs          d4 = (@display_y - @destination_y).abs          self.opacity = [opa - ([d1 + d2, d3 + d4].min * 1.75).to_i, 0].max        end      end            # Calculate Difference      difference_x = (@display_x - @destination_x).abs      difference_y = (@display_y - @destination_y).abs      difference_z = (@display_z - @destination_z).abs        # Done? Reset, Stop      if [difference_x, difference_y].max.between?(0, 8)        @display_x = @destination_x        @display_y = @destination_y        @display_z = @destination_z        @pose = state        return      end            # Calculate Movement Increments      increment_x = increment_y = 1      if difference_x < difference_y        increment_x = 1.0 / (difference_y.to_f / difference_x)      elsif difference_y < difference_x        increment_y = 1.0 / (difference_x.to_f / difference_y)      end      increment_z = increment_y        # Calculate Movement Speed       if @calculate_speed        total = 0; $game_party.actors.each{ |actor| total += actor.agi }        speed = @battler.agi.to_f / (total / $game_party.actors.size)        increment_x *= speed        increment_y *= speed        increment_z *= speed      end            # Multiply and Move      multiplier_x = (@destination_x - @display_x > 0 ? 8 : -8)      multiplier_y = (@destination_y - @display_y > 0 ? 8 : -8)      multiplier_z = (@destination_z - @display_z > 0 ? 8 : -8)            @display_x += (increment_x * multiplier_x).to_i      @display_y += (increment_y * multiplier_y).to_i      @display_z += (increment_z * multiplier_z).to_i          end    @last_move_time = time  end    #--------------------------------------------------------------------------  # * Set Movement  #--------------------------------------------------------------------------  def setmove(destination_x, destination_y, destination_z)    unless (@battler.is_a?(Game_Enemy) and @stationary_enemies) or           (@battler.is_a?(Game_Actor) and @stationary_actors)      unless @stationary_weapons.include?(@battler.weapon_id) or             @stationary_skills.include?(@skill_used) or             @stationary_items.include?(@item_used)        @original_x = @display_x        @original_y = @display_y        @original_z = @display_z                  @destination_x = destination_x        @destination_y = destination_y        @destination_z = destination_z      end    end  end    #--------------------------------------------------------------------------   # * Movement Check  #--------------------------------------------------------------------------  def moving    if (@display_x != @destination_x and @display_y != @destination_y and !@battler.dead?)      return (@display_x > @destination_x ? 0 : 1)    end  end    #--------------------------------------------------------------------------  # * Set Pose  #--------------------------------------------------------------------------  def pose=(pose)    @pose = pose    @frame = 0  end    #--------------------------------------------------------------------------  # * Freeze  #--------------------------------------------------------------------------  def freeze    @freeze = true  end    #--------------------------------------------------------------------------   # * Fallen Pose  #--------------------------------------------------------------------------  if @derv_anim_bat_stack.nil?    @derv_anim_bat_stack = true    alias cbs_collapse collapse    def collapse      if @default_collapse_enemy        cbs_collapse if @battler.is_a?(Game_Enemy)      end      if @default_collapse_actor        cbs_collapse if @battler.is_a?(Game_Actor)      end      if $default_enemy        cbs_collapse if @battler.is_a?(Game_Enemy)      end      if $default_actor        cbs_collapse if @battler.is_a?(Game_Actor)      end      if $default_enemy_id != nil        if $default_enemy_id.include?(@battler.id)          cbs_collapse if @battler.is_a?(Game_Enemy)        end      end      if $defend_actor.id != nil        if $default_actor_id.include?(@battler.id)          cbs_collapse if @battler.is_a?(Game_Actor)        end          end    end  endend    #============================================================================== # ** Game_System#------------------------------------------------------------------------------#  This class handles data surrounding the system. Backround music, etc.#  is managed here as well. Refer to "$game_system" for the instance of #  this class.#==============================================================================class Game_System  #--------------------------------------------------------------------------  # * Public Instance Variables  #--------------------------------------------------------------------------  attr_accessor   :sideview_mirror  #--------------------------------------------------------------------------  # * Object Initialization  #--------------------------------------------------------------------------  alias initialize_cbs_customize initialize  def initialize    # Call original initialization process    initialize_cbs_customize    @sideview_mirror = 0  endend    #==============================================================================# ** Game_Actor#------------------------------------------------------------------------------#  This class handles the actor. It's used within the Game_Actors class#  ($game_actors) and refers to the Game_Party class ($game_party).#==============================================================================class Game_Actor  #--------------------------------------------------------------------------  # * Actor X Coordinate  #--------------------------------------------------------------------------  def screen_x    # Determine minimum horizontal space between battlers    x_spacer = $formation_width / $max_member    if self.index != nil      case $formation      when 0                                    # DIAGONAL PATTERN 1        if $sv_mirror == 1          return self.index * -x_spacer + (($max_member+1)*x_spacer) #202                else          return self.index * x_spacer + (640-(($max_member+1)*x_spacer))#450        end                when 1                                    # DIAGONAL PATTERN 2           if $sv_mirror == 1          return self.index * x_spacer + x_spacer #64                else          return self.index * -x_spacer + (640-x_spacer*2) #576        end              when 2                                    # 2-ROW SLANT        if $sv_mirror == 1          if self.index < ($max_member/2)            return self.index + (($max_member+1)*x_spacer) + (x_spacer * self.index)          else            return self.index + (x_spacer * self.index) - x_spacer * 0.5           end        else          if self.index < ($max_member/2)            return self.index + (640-(($max_member+1)* x_spacer)) + (-x_spacer * self.index)          else            return self.index + (640-((x_spacer*0.5)-x_spacer)) + (-x_spacer * self.index)          end        end      when 3                                    # 2 ROW - SLANT        if $sv_mirror == 1          if self.index < ($max_member/2)            return self.index + (x_spacer/2)+(($max_member+1)* x_spacer) + (-x_spacer * self.index)           else            return self.index + (($max_member+1)* x_spacer) + (-x_spacer * self.index)          end                else          if self.index < ($max_member/2)            return self.index + 442 + (x_spacer * self.index)           else            return self.index  + 430 + (x_spacer * self.index)          end                end      when 4                                    # Column Pattern 1               if $sv_mirror == 1          if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )            return self.index + ($max_member*(x_spacer*1.5)) + (-(x_spacer*1.5) * (self.index-1))           else            return self.index + ($max_member*(x_spacer*1.5)) + (-(x_spacer*1.5) * self.index)          end                else          if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )            return self.index + 640-($max_member*(x_spacer*1.5)) + ((x_spacer*1.5) * (self.index-1))          else            return self.index + 640-($max_member*(x_spacer*1.5)) + ((x_spacer*1.5) * self.index)          end                end      when 5                                    # Column Pattern 2        if $sv_mirror == 1          if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )            return self.index + ($max_member*(x_spacer*1.5)) + (-(x_spacer*1.5) * (self.index-1))           else            return self.index + ($max_member*(x_spacer*1.5)) + (-(x_spacer*1.5) * self.index)          end                else          if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )            return self.index + 640-($max_member*(x_spacer*1.5)) + ((x_spacer*1.5) * (self.index-1))          else            return self.index + 640-($max_member*(x_spacer*1.5)) + ((x_spacer*1.5) * self.index)          end             end      when 6                                    # Wave Formation 1        if $sv_mirror == 1          if self.index < ($max_member/2)            return 170          else            return  90          end                else          if self.index < ($max_member/2)            return 470          else            return 550          end                end      else                                      # Wave Formation 2        if $sv_mirror == 1          if self.index < ($max_member/2)            return 170          else            return  90          end                else          if self.index < ($max_member/2)            return 470          else            return 550          end                end      end    else      return 0    end  end  #--------------------------------------------------------------------------   # * Actor Y Coordinate  #--------------------------------------------------------------------------  def screen_y    # Determine minimum vertical space between battlers    y_spacer = (480 - $battlestat_height - $formation_top) / $max_member    if self.index != nil      case $formation      when 0        return self.index * (y_spacer*1.25) + $formation_top      when 1        return self.index * (y_spacer*1.25) + $formation_top      when 2        if self.index < ($max_member/2)          return $formation_top + ((y_spacer*2.5) * self.index)        else          return ($formation_top - (y_spacer*($max_member+1))) + ((y_spacer*2.5) * self.index) #was 60        end              when 3        if self.index < ($max_member/2)          return $formation_top + ((y_spacer*2.5) * self.index)        else          return ($formation_top - (y_spacer*($max_member+1))) + ((y_spacer*2.5) * self.index) # was 60        end      when 4        if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )                     return $formation_top + ($battlestat_height/2)        else          return $formation_top + ($battlestat_height/6)        end      when 5        if ((self.index + 1) / 2) >= (((self.index + 1).to_f) / 2 )                     return $formation_top + ($battlestat_height/6)        else          return $formation_top + ($battlestat_height /2)        end      when 6         if self.index < ($max_member/2)          return $formation_top + (y_spacer * 2.5 * self.index)        else          return $formation_top + (y_spacer * 2.5 * ((self.index) - ($max_member/2)))        end        else        if self.index < ($max_member/2)          return $formation_top + (y_spacer*2.5*(($max_member/2)-1))+ (y_spacer * 2.5 * -self.index)        else          return $formation_top + (y_spacer*2.5*(($max_member/2)-1)) + (y_spacer * 2.5 * -((self.index) - ($max_member/2)))        end        end    end  end  #--------------------------------------------------------------------------  # * Actor Z Coordinate  #--------------------------------------------------------------------------  def screen_z    return screen_y  endend#==============================================================================# ** Game_Enemy#------------------------------------------------------------------------------#  This class handles enemies. It's used within the Game_Troop class#  ($game_troop).#==============================================================================class Game_Enemy < Game_Battler   def screen_x    if self.index != nil      if $sv_mirror == 1        return 640 - $data_troops[@troop_id].members[@member_index].x      else        return $data_troops[@troop_id].members[@member_index].x      end    end  endend    #==============================================================================# ** Scene_Battle #------------------------------------------------------------------------------ #  This class performs battle screen processing.#==============================================================================class Scene_Battle    #--------------------------------------------------------------------------  # * Make Skill Action Results (alias used to determine skill used)  #--------------------------------------------------------------------------  alias make_skill_action_result_anim make_skill_action_result  def make_skill_action_result(battler = @active_battler, plus_id = 0)    @rtab = !@target_battlers    if $RTAB_Connected_Attacking      make_skill_action_result_anim(battler, plus_id)    else      @rtab ? make_skill_action_result_anim(battler) : make_skill_action_result_anim    end    @skill_used = @skill.id  end    #--------------------------------------------------------------------------  # * Make Item Action Results (alias used to determine item used)  #--------------------------------------------------------------------------  alias make_item_action_result_anim make_item_action_result  def make_item_action_result(battler = @active_battler)    @rtab = !@target_battlers    @rtab ? make_item_action_result_anim(battler) : make_item_action_result_anim    @item_used = @item.id    @item_usage = @item.scope  end    #--------------------------------------------------------------------------   # * Frame Update (main phase step 1 : action preparation) (Casting Routine)  #--------------------------------------------------------------------------  alias update_phase4_step1_anim update_phase4_step1  def update_phase4_step1(battler = @active_battler)     @rtab = !@target_battlers    if $rtab_detected == true      update_phase4_step1_anim(battler)      if battler.current_action.kind == 1 and        (not battler.current_action.forcing or @force != 2)        if battler.rtp != 0              $casted = true        end      end    else      update_phase4_step1_anim    end  end    #--------------------------------------------------------------------------   # * Action Animation, Movement  #--------------------------------------------------------------------------  alias cbs_update_phase4_step3 update_phase4_step3  def update_phase4_step3(battler = @active_battler)    @rtab = !@target_battlers    target = (@rtab ? battler.target : @target_battlers)[0]    # If enemy is a default battler    if battler.is_a?(Game_Enemy)      if $default_enemy        if @rtab then battler.white_flash = true end        if @rtab then battler.wait = 10 end      end      if $default_enemy_id != nil        if $default_enemy_id.include?(@battler.id)          if @rtab then battler.white_flash = true end          if @rtab then battler.wait = 10 end        end       end            end    # If actor is a default battler    if battler.is_a?(Game_Actor)      if $default_actor        if @rtab then battler.white_flash = true end        if @rtab then battler.wait = 10 end      end      if $default_actor_id != nil        if $default_actor_id.include?(@battler.id)          if @rtab then battler.white_flash = true end          if @rtab then battler.wait = 10 end        end       end                    end    # Set values and poses based on Action     case battler.current_action.kind    when 0  # Attack      rush_type = $rush_attack      full_moving = true ; if rush_type; full_moving = false; end      if $move2center_atk.include?(battler.weapon_id); center_move=true ; end      if $stationary_enemyid.include?(battler.id) and battler.is_a?(Game_Enemy)        full_moving = false        center_move = false        rush_type = false      end      if battler.current_action.basic == 2        # If escaping, disable all movement        full_moving = false        center_move = false        rush_type = false              end      base_pose = $p7      base_pose = $poses_weapons[battler.weapon_id] if $poses_weapons.include?(battler.weapon_id)            if battler.current_action.basic == 2        base_pose = $poses_escaping if $poses_escaping != nil      end          when 1  # Skill      rush_type = $rush_skill      if $moving_skill_atk.include?(@skill_used) ; full_moving = true ; end      if $move2center_skill.include?(@skill_used) ; center_move = true ; end              base_pose = $p9      base_pose = $poses_skills[@skill_used] if $poses_skills.include?(@skill_used)    when 2  # Item      rush_type = $rush_item      if $moving_item_atk.include?(@item_used) or @item_scope == 1..2 ; full_moving = true ; end      if $move2center_item.include?(@item_used); center_move = true; end      base_pose = $p8      base_pose = $poses_items[@item_used] if $poses_items.include?(@item_used)    end    # Control Movement and use current pose     @moved = {} unless @moved    return if @spriteset.battler(battler).moving    if not (@moved[battler] or battler.guarding?)      offset = offset_value(battler)              if rush_type        # Steps forward        @spriteset.battler(battler).setmove(battler.screen_x - offset, battler.screen_y + 1, battler.screen_z)      end      if full_moving      # Runs to target        @spriteset.battler(battler).setmove(target.screen_x + offset, target.screen_y - 1, target.screen_z + 10)      end      if center_move      # Runs to center        @spriteset.battler(battler).setmove(320+(offset/4), battler.screen_y-1, battler.screen_z)      end      @moved[battler] = true      re

Irock

Please place it in code.



What is code?

This is code.

It can be broken if it isn't.

blazinhandle

Sorry about that, here's a link to it:

http://www.dubealex.com/asylum/index.php?showtopic=11827&st=0

I know its Creation Asylum (meeeeh) but it is a nice and useful script! Here's what I've done with it so far....

I just spent the last couple of hours editing some sprites with Idraw (is there a more useful program than this? sheesh) and here's what one character looks like:



Do you think it looks too small? I mean compared to the ones around it, it is tiny. Is there a way you can zoom or make it look bigger?

I want to make it so that each skill is an animation so I that there's more detail and zing. Lol here's what I'm working with:



And I'm pretty much trying to create something like this:

http://www.youtube.com/watch?v=ux8faA4kbD4


Any suggestions or criticisms? I'm horrible with spriting so some thoughts or even help would be nice.