09-17-2009, 12:42 PM 
	
	
	Battler Sprite Addons
Version: 1.2
Version: 1.2
Introduction
Adds on additional properties from the Sprite class to battler sprites which weren't included before such as Angle, Tone, Color, Mirror, Zoom_X and Zoom_Y. As of version 1.1, it also allows devs to change certain properties of battler sprites.
Features
- Gives battler sprites additional properties from the Sprite class such as angle, tone, color, mirror, zoom_x and zoom_y.
 
- Change the color, tone, angle and size of battler sprites with script calls.
 
- 1 customization option. (See Customization section in text file.)
 
Code:
=begin
????????????????????????????????????????????????????????????????????????????????
? Battler Sprite Addons                                                        ?
? Version 1.2 by Punk                                                          ?
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
? ? Description:                                                               ?
? ?? Adds on additional properties to battler sprites which weren't included   ?
?    before such as Angle, Tone, Color, Mirror, Zoom_X and Zoom_Y.             ?
????????????????????????????????????????????????????????????????????????????????
? ? Features:                                                                  ?
? ?? Gives battler sprites additional properties from the Sprite class such    ?
? ?  as angle, tone, color, mirror, zoom_x and zoom_y.                         ?
? ?? Change the angle, size, color, tone of a battler sprite as well as        ?
?    flipping it horizontally with script calls. (New to Version 1.1)          ?
????????????????????????????????????????????????????????????????????????????????
? ? Customization                                                              ?
? ?? For those who don't like how in the zoom functions, the value 1.0         ?
?    signifies "actual pixel size", I've changed it a bit to make the value    ?
?    100.0 signify actual pixel size. For those who may not like the update,   ?
?    you can disable this by jumping to the third line after this long box     ?
?    and set BattlerSpriteZoom100 to false.                                    ?
????????????????????????????????????????????????????????????????????????????????
? ? Usage:                                                                     ?
? ? ? Tones.                                                                   ?
? ?? How do I change the tone of an actor's sprite?                            ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace red green blue saturation with values):          ?
? ?        $game_actors[id].tone = Tone.new(red, green, blue(, sat))           ?
? ?        $game_party.actors[index].tone = Tone.new(red, green, blue(, sat)   ?
? ?        return true                                                         ?
? ?? How do I change the tone of an event's sprite?                            ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace id with an enemy id):                            ?
? ?        $game_troop.enemies[id].tone = Tone.new(red, green, blue(, sat))    ?
? ?        return true                                                         ?
? ?? Example usage? I may still be confused.                                   ?
? ?     $game_actors[1].tone = Tone.new(100, 100, 100, 255);return true        ?
? ?     $game_party.actors[0].tone = Tone.new(100, 100, 100, 255);return true  ?
? ?     $game_troop.enemies[0].tone = Tone.new(-64, 0, -64, 0);return true     ?
? ?     $game_troop.enemies[0].tone = Tone.new(-64, 0, -64);return true        ?
? ? ? Angles.                                                                  ?
? ?? How do I change the angle of the actors's sprite?                         ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace angle with a value):                             ?
? ?        $game_actors[id].angle = value                                      ?
? ?        $game_party.actors[index].angle = value                             ?
? ?? How do I change the angle of an enemy's sprite?                           ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace angle with a value, id with an event id):        ?
? ?        $game_troop.enemies[id].angle = value                               ?
? ? ? Colors.                                                                  ?
? ?? How do I change the color of the first actor's sprite?                    ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace red green blue alpha with values):               ?
? ?        $game_actors[1].color = Color.new(red, green, blue(, alpha))        ?
? ?        return true                                                         ?
? ?? How do I change the angle of an enemy's sprite?                           ?
? ?     1. Use Call script event command.                                      ?
? ?     2. Type this (replace id with an event id):                            ?
? ?        $game_troop.enemies[id].color = Color.new(red, green, blue(, alpha))?
? ?        return true                                                         ?
? ?? Example usage? I may still be confused.                                   ?
? ?     $game_actors[1].color = Color.new(100, 100, 100, 100);return true      ?
? ?     $game_party.actors[0].color = Color.new(200, 0, 200, 255);return true  ?
? ?     $game_troop.enemies[0].color = Color.new(200, 0, 200);return true      ?
? ?                                                                            ?
? ? ? zoom_x and zoom_y.                                                       ?
? ?? How do I change the sprite's x-axis zoom level?                           ?
? ?     For actor: $game_party.actors[index].zoom_x = value                    ?
? ?     For enemy: $game_troop.enemies[index].zoom_x = value                   ?
? ?? How do I change the sprite's y-axis zoom level?                           ?
? ?     For actor: $game_party.actors[index].zoom_y = value                    ?
? ?     For enemy: $game_troop.enemies[index].zoom_y = value                   ?
? ? ? Mirror.                                                                  ?
? ?? How do I flip battler sprites horizontally?                               ?
? ?     For actors: $game_party.actors[index].mirror = true                    ?
? ?     For events: $game_troop.enemies[index].mirror = true                   ?
? ?? Okay, how do I unflip them?                                               ?
?       For actors: $game_party.actors[index].mirror = false                   ?
?       For events: $game_troop.enemies[index].mirror = false                  ?
????????????????????????????????????????????????????????????????????????????????
? ? Methods Aliased:                                                           ?
? ?? update - Sprite_Battler < RPG::Sprite                                     ?
? ?? initialize - Game_Battler                                                 ?
????????????????????????????????????????????????????????????????????????????????
? ? Changelog:                                                                 ?
? ?? Version 1.1 (5/10/09) - Replaced attr_reader with attr_accessor.          ?
? ?? Version 1.2 (5/12/09) - Updated the zoom stuff. (More info below)         ?
????????????????????????????????????????????????????????????????????????????????
? ? About Version 1.2 change:                                                  ?
?   Originally, the value '1.0' for properties zoom_x and zoom_y stood for     ?
?   the battler sprite's actual size. I felt like trying to explain that in    ?
?   the instructions of this script and add-ons made to it would just confuse  ?
?   some people. So I wanted to make the value 100.0 denote the actual pixel   ?
?   size of the sprite.                                                        ?
????????????????????????????????????????????????????????????????????????????????
=end
#????????????????????????????????????????????????????????????????????????????????
#? ? Customize                                                                 ?
#????????????????????????????????????????????????????????????????????????????????
class PK8
  BattlerSpriteZoom100 = true
  # If false, sprite's zoom level value 1.0 would denote actual pixel size.
  # If true, sprite's zoom level value 100.0 would denote actual pixel size.
end
#===============================================================================?
# ** Game_Battler
#===============================================================================?
class Game_Battler
  #-----------------------------------------------------------------------------
  # * Public Instance Variables
  #-----------------------------------------------------------------------------
  attr_accessor :tone
  attr_accessor :angle
  attr_accessor :zoom_x
  attr_accessor :zoom_y
  attr_accessor :mirror
  attr_accessor :color
  #-----------------------------------------------------------------------------
  # * Alias Listings
  #-----------------------------------------------------------------------------
  alias_method :pk8_battler_sprite_addons_initialize, :initialize
  #-----------------------------------------------------------------------------
  # * Object Initialization
  #-----------------------------------------------------------------------------
  def initialize(*args)
    @tone   = Tone.new(0, 0, 0, 0)
    @angle  = 0
    @zoom_x = (PK8::BattlerSpriteZoom100 ? 100.0 : 1.0)
    @zoom_y = (PK8::BattlerSpriteZoom100 ? 100.0 : 1.0)
    @mirror = false
    @color  = Color.new(0, 0, 0, 0)
    pk8_battler_sprite_addons_initialize(*args)
  end
end
#===============================================================================?
# ** Sprite_Battler
#===============================================================================?
class Sprite_Battler < RPG::Sprite
  #-----------------------------------------------------------------------------
  # * Alias Listings
  #-----------------------------------------------------------------------------
  alias_method :pk8_battler_sprite_addons_update, :update
  #-----------------------------------------------------------------------------
  # * Update
  #-----------------------------------------------------------------------------
  def update
    pk8_battler_sprite_addons_update
    return unless @battler
    self.tone = @battler.tone
    self.angle = @battler.angle
    if PK8::BattlerSpriteZoom100 == true
      self.zoom_x = @battler.zoom_x / 100.0
      self.zoom_y = @battler.zoom_y / 100.0
    elsif PK8::BattlerSpriteZoom100 == false
      self.zoom_x = @battler.zoom_x
      self.zoom_y = @battler.zoom_y
    end
    self.mirror = @battler.mirror
    self.color = @battler.color
  end
endInstructions
Copy-paste! Also, look for any add-on topics which may link to this as a requirement for use.
FAQ
 Changing the tone of a battler sprite
  			
		 Example usage of changing battler sprite tone?
  			
		 Changing the color of a battler sprite.
  			
		 Example usage of changing battler sprite color?
  			
		 Changing the angle of a battler sprite
  			
		 Changing the x-axis and y-axis zoom level of a battler sprite
  			
		 Flipping battler sprite horizontally
  			
		Compatibility
This aliases the following methods from the following classes.
- Sprite_Battler < RPG::Sprite- update
 
 
- update
- Game_Battler- initialize
 
 
- initialize
I want scripters to add on to it. :3
Terms and Conditions
It's not necessary to credit me for this. <--Thats what PK8 said in his battler sprite addons script. This is a remix of his "Character Sprite Addons" tailored to battlers, so it isn't necessary for you to credit ME for this (I mean you can) but I would like you to credit PK8 even if he doesn't say so =P
 ------------------------------ 
Add-onsBattler Tone, Angle, Color, Mirror and Size comment commands. (Should be posted later tonight I hope)

 
 
 Battler Sprite Addons
 Battler Sprite Addons
 
 
![[Image: Button-BOTB.png]](https://i.postimg.cc/tTyHps78/Button-BOTB.png)
![[Image: Save-Point.gif]](https://i.postimg.cc/26znDy3v/Save-Point.gif)
![[Image: Button-You-Tube2.png]](https://i.postimg.cc/MphKJF38/Button-You-Tube2.png)
![[Image: Button-Sound-Cloud2.png]](https://i.postimg.cc/cLK4jSmm/Button-Sound-Cloud2.png)
![[Image: Button-Audio-Mack2.png]](https://i.postimg.cc/0Q8zw08x/Button-Audio-Mack2.png)
![[Image: LS-Banner.gif]](https://i.postimg.cc/9MRtf4jm/LS-Banner.gif)