Chaos Project

RPG Maker => RPG Maker Scripts => Script Troubleshooting => Topic started by: Andreavnn on April 22, 2012, 06:57:34 pm

Title: [RESOLVED][Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 22, 2012, 06:57:34 pm
I am having a problem with Ton-of-Addons. I am using the plugin "Arrow over player" and it is only showing up in the top left quadrant, even if not behind something. I reload installed the script and still that same effect. I have a list of scripts I am using in my signature. Any help would be greatly appreciated.  
Title: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: ForeverZer0 on April 22, 2012, 07:02:09 pm
Is it on all maps, or just one specific map?
Title: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 22, 2012, 07:05:32 pm
@ForeverZer0  All maps  :facepalm:
Title: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: ForeverZer0 on April 22, 2012, 07:07:51 pm
Can you link or post to some of them scripts.
I would pick on Dynamic_Lights and Dynamic_Shadow first.
Title: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 22, 2012, 07:12:12 pm
Yeah no problem, I can do one better for you uploading a demo.

Demo - 476KB
Spoiler: ShowHide
http://www.mediafire.com/?senkcoa4ndo4wc8 (http://www.mediafire.com/?senkcoa4ndo4wc8)


Dynamic_Reflection
Spoiler: ShowHide
#==============================================================================
# ** Sprite Reflection
#------------------------------------------------------------------------------
#    Based on Sprite Mirror
#    modified by JmsPlDnl
#    rewritten entirely by Rataime
#    New Edits by DerVVulfman
#    February 12, 2008
#------------------------------------------------------------------------------
#
# Introduction:
#  This system allows you and events to have their image reflected on various
#  tagged surfaces.
#
#------------------------------------------------------------------------------
#
# Revisions to note:
#
#  1) Added formatted headers and comments throughout the script.
#  2) Compatability with Near Fantastica's Squad Movement systems.
#  3) Compatability with Ccoa's Caterpillar system.
#  4) Compatability with Trickster's Caterpillar system.
#  5) Added the REFLECT_TAG value into the configurables
#
#==============================================================================



   #========================================================================
   #  **  C  O  N  F  I  G  U  R  A  T  I  O  N      S  Y  S  T  E  M  **  #
   #========================================================================
    # Caterpillar Systems
    CATERPILLAR_COMPATIBLE      = false   # Toggle for Fukuyama's original 
    SQUAD_MOVE_COMPATIBLE       = false   # Toggle for Near Fantastica's SBABS
    CCOA_CATER_COMPATIBLE       = false   # Toggle for Ccoa's Caterpillar
    TRICKSTER_CATER_COMPATIBLE  = false   # Toggle for Trickster's Caterpillar
   
    # Reflection Specific Systems
    REFLECT_TAG                 = 7       # Terrain tag used by reflective tiles

   
   #========================================================================
   #  ****   E N D   O F   C O N F I G U R A T I O N   S Y S T E M   ****  #
   #========================================================================


#==============================================================================
# ** Game_Party
#------------------------------------------------------------------------------
#  This class handles the party. It includes information on amount of gold
#  and items. Refer to "$game_party" for the instance of this class.
#==============================================================================

class Game_Party
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_reader :characters
end


#==============================================================================
# ** Sprite_Reflection
#------------------------------------------------------------------------------
#  This sprite is used to position character reflection relative to map position.
#  It observes the Game_Character class and automatically changes sprite
#  conditions.
#==============================================================================

class Sprite_Reflection < RPG::Sprite
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :character           
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     viewport   : viewport
  #     character  : character (Game_Character)
  #     self_angle : id
  #--------------------------------------------------------------------------
  def initialize(viewport=nil, character=nil, self_angle = 180)
    super(viewport)
    @character    = character
    @self_angle   = self_angle
    self.opacity  = 0
    @reflected    = false
    @former       = false
    @moving       = false
    if $game_map.terrain_tag(@character.real_x / 128,
      @character.real_y / 128 + 1) == REFLECT_TAG
      @reflected  = true
      @former     = true
    end
    update
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    # If tile ID, file name, or hue are different from current ones
    if @tile_id != @character.tile_id or
       @character_name != @character.character_name or
       @character_hue != @character.character_hue
      # Remember tile ID, file name, and hue
      @tile_id = @character.tile_id
      @character_name = @character.character_name
      @character_hue = @character.character_hue
      # If tile ID value is valid 
      if @tile_id >= 384
        self.bitmap = RPG::Cache.tile($game_map.tileset_name,
          @tile_id, @character.character_hue)
        self.src_rect.set(0, 0, 32, 32)
        self.ox = 16
        self.oy = 32
      # If tile ID value is invalid   
      else
        self.bitmap = RPG::Cache.character(@character.character_name,
          @character.character_hue)
        @cw = bitmap.width / 4
        @ch = bitmap.height / 4
        self.ox = @cw / 2
        self.oy = @ch
      end
    end
    # Set visible situation
    self.visible = (not @character.transparent)
    # If graphic is character
    if @tile_id == 0
      sx = (@character.pattern) * @cw
      sy = (@character.direction - 2) / 2 * @ch
      sy = ( 4 - 2) / 2 * @ch   if @character.direction == 6
      sy = ( 6 - 2) / 2 * @ch   if @character.direction== 4
      if @character.direction != 4 and @character.direction != 6
        sy = (@character.direction - 2) / 2 * @ch
      end
    end
    # Set sprite coordinates   
    self.x = @character.screen_x
    self.y = @character.screen_y-5
    @moving =! (@character.real_x % 128 == 0 and @character.real_y % 128 == 0)
    @d = @character.direction
    @rect = [sx, sy, @cw, @ch]
    if !(@moving)
      if $game_map.terrain_tag(@character.real_x / 128,
          @character.real_y / 128 + 1) == REFLECT_TAG
        @reflected=true
        @former=true
      else
        @reflected=false 
        @former=false
      end
    else
      case @d
      when 2
        if $game_map.terrain_tag(@character.real_x / 128,
            @character.real_y / 128 + 2) == REFLECT_TAG
          @reflected=true
          if @former == false
            @offset = (@character.screen_y % 32) * @ch / 32
            @rect = [sx, sy, @cw, @offset]
            self.y = @character.screen_y - 5
          end
        else
          @reflected = false 
        end
      when 4
        if $game_map.terrain_tag(@character.real_x / 128,
            @character.real_y / 128 + 1) != REFLECT_TAG
          @offset = ((@character.screen_x - @cw / 2) % 32) * @cw / 32
          @rect = [sx, sy, @offset, @ch]
          self.x = @character.screen_x
        else
          @reflected = true
          if @former == false
            @offset = ((@character.screen_x - @cw / 2) % 32) * @cw / 32
            @rect = [sx + @offset, sy, @cw - @offset, @ch]
            self.x = @character.screen_x - @offset
          end
        end
      when 6
        if $game_map.terrain_tag(@character.real_x / 128 + 1,
            @character.real_y / 128 + 1) != REFLECT_TAG
          @offset = ((@character.screen_x - @cw / 2) % 32) * @cw / 32
          @rect = [sx + @offset, sy, @cw - @offset, @ch]
          self.x = @character.screen_x - @offset
        else
          @reflected = true
          if @former == false
            @offset = ((@character.screen_x - @cw / 2) % 32) * @cw / 32
            @rect = [sx, sy, @offset, @ch]
            self.x = @character.screen_x
           end
         end
      when 8
        if $game_map.terrain_tag(@character.real_x / 128, @character.real_y / 128 + 2) == REFLECT_TAG
          @reflected=true
          if $game_map.terrain_tag(@character.real_x / 128, @character.real_y / 128 + 1) != REFLECT_TAG
            @offset = (@character.screen_y%32)*@ch/32
            @rect=[sx, sy, @cw, @offset]
            self.y=@character.screen_y-5
          end
        else
          @reflected=false 
        end
      end
    end
    if @reflected
      self.opacity=128
    else
      @rect=[sx, sy, @cw, @ch]
      self.opacity=0
    end
    if $game_map.terrain_tag((@character.real_x + 64) / 128, @character.real_y / 128 + 2) != REFLECT_TAG
      if $game_map.terrain_tag((@character.real_x + 64) / 128, @character.real_y / 128 + 2) != REFLECT_TAG
        @rect[1]= @rect[1]+@ch/2
        @rect[3]= @rect[3]/2
        self.y = self.y - @ch/2
      else
        @reflected=false
      end
    end
    self.src_rect.set(@rect[0],@rect[1],@rect[2],@rect[3])
    @character.is_a?(Game_Player) ? self.z = 9 : self.z = 5
    # Set opacity level, blend method, and bush depth
    self.blend_type = @character.blend_type
    self.bush_depth = @character.bush_depth
    # Animation
    if @character.animation_id != 0
      animation = $data_animations[@character.animation_id]
      animation(animation, true)
      @character.animation_id = 0
    end
    self.angle = @self_angle
  end
end



#==============================================================================
# ** Sprite_Character
#------------------------------------------------------------------------------
#  This sprite is used to display the character.It observes the Game_Character
#  class and automatically changes sprite conditions.
#==============================================================================

class Sprite_Character < RPG::Sprite
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias reflect_initialize initialize
  alias reflect_update update
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     viewport  : viewport
  #     character : character (Game_Character)
  #-------------------------------------------------------------------------- 
  def initialize(viewport, character = nil)
    @character = character
    @reflection = []
    super(viewport)
    if (character.is_a?(Game_Event) and character.list != nil and
      character.list[0].code == 108 and
      character.list[0].parameters == ["r"])
     @reflection.push(Sprite_Reflection.new(viewport,@character))
    end
    if (character.is_a?(Game_Event) and character.list != nil and
      character.list[0].code == 108 and
      character.list[0].parameters == ["hero_r"])
      @reflection.push(Sprite_Reflection.new(viewport,$game_player))
      #===================================================
      # * Compatibility with Caterpillar Functions
      #===================================================
      if CATERPILLAR_COMPATIBLE and $game_party.characters != nil
        for member in $game_party.characters
          @reflection.push(Sprite_Reflection.new(viewport, member))
        end
      end
      if SQUAD_MOVE_COMPATIBLE and $game_allies.values != nil
        for member in $game_allies.values
          @reflection.push(Sprite_Reflection.new(viewport, member))
        end
      end
      if CCOA_CATER_COMPATIBLE and $game_train.actors != nil
        for member in $game_train.actors
          @reflection.push(Sprite_Reflection.new(viewport, member))
        end
      end
      if TRICKSTER_CATER_COMPATIBLE and $game_party.followers != nil
        for member in $game_party.followers
          @reflection.push(Sprite_Reflection.new(viewport, member))
        end
      end
      #===================================================
      # ** End of the compatibility
      #===================================================       
    end
    # Perform the original call
    reflect_initialize(viewport, @character)
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    reflect_update
    if @reflection != nil
      for reflect in @reflection
        reflect.update
      end
    end
  end
end


Dynamic_Shadow
Spoiler: ShowHide
#==============================================================================
# Sprite_Shadow (Sprite_Ombre )
#
# A shadow is created when an opaque object is near a light source, so in the
# event that is the light source (example:fire) put a comment (on page 1)
# and simlpy write 's' (without the apostraphys)
#
# Based on Genzai Kawakami's shadows, dynamisme&features by Rataime, extra features Boushy
#==============================================================================

CATERPILLAR_COMPATIBLE = false

class Game_Party
attr_reader :characters
end

class Sprite_Shadow < RPG::Sprite

attr_accessor :character

def initialize(viewport, character = nil,source = nil,anglemin=0,anglemax=0,distancemax=0)
   super(viewport)
   @anglemin=anglemin.to_f
   @anglemax=anglemax.to_f
   @distancemax=distancemax.to_f
   @character = character
   @source = source
   update
end

def update
   super
   
   if @tile_id != @character.tile_id or
      @character_name != @character.character_name or
      @character_hue != @character.character_hue
     @tile_id = @character.tile_id
     @character_name = @character.character_name
     @character_hue = @character.character_hue
     if @tile_id >= 384
       self.bitmap = RPG::Cache.tile($game_map.tileset_name,
         @tile_id, @character.character_hue)
       self.src_rect.set(0, 0, 32, 32)
       self.ox = 16
       self.oy = 32
     else
       self.bitmap = RPG::Cache.character(@character.character_name,
         @character.character_hue)
       @cw = bitmap.width / 4
       @ch = bitmap.height / 4
       self.ox = @cw / 2
       self.oy = @ch
     end
   end
   self.visible = (not @character.transparent)
   if @tile_id == 0
     sx = @character.pattern * @cw
     sy = (@character.direction - 2) / 2 * @ch
     if self.angle>90 or angle<-90
       if @character.direction== 6
              sy = ( 4- 2) / 2 * @ch
       end
       if @character.direction== 4
              sy = ( 6- 2) / 2 * @ch
       end
       if @character.direction== 2
              sy = ( 8- 2) / 2 * @ch
       end
       if @character.direction== 8
              sy = ( 2- 2) / 2 * @ch
       end
     end
     self.src_rect.set(sx, sy, @cw, @ch)
   end
   self.x = @character.screen_x
   self.y = @character.screen_y-5
   self.z = @character.screen_z(@ch)-1
   self.opacity = @character.opacity
   self.blend_type = @character.blend_type
   self.bush_depth = @character.bush_depth
   if @character.animation_id != 0
     animation = $data_animations[@character.animation_id]
     animation(animation, true)
     @character.animation_id = 0
   end
   @deltax=@source.x-self.x
   @deltay= @source.y-self.y
   self.angle = 57.3*Math.atan2(@deltax, @deltay )
   @angle_trigo=self.angle+90
   if @angle_trigo<0
     @angle_trigo=360+@angle_trigo
   end
   self.color = Color.new(0, 0, 0)
   @distance = ((@deltax ** 2) + (@deltay ** 2))
   if$game_map.shadows==-1
     self.opacity = 0
   else
     self.opacity = 1200000/(@distance+6000)   
   end
   @distance = @distance ** 0.5
   if @distancemax !=0 and @distance>=@distancemax
     self.opacity=0
   end
   if @anglemin !=0 or @anglemax !=0
      if (@angle_trigo<@anglemin or @angle_trigo>@anglemax) and @anglemin<@anglemax
        self.opacity=0
      end
      if (@angle_trigo<@anglemin and @angle_trigo>@anglemax) and @anglemin>@anglemax
        self.opacity=0
      end     
   end
end
end

#===================================================
# ¥ CLASS Sprite_Character edit
#===================================================

class Sprite_Character < RPG::Sprite
alias shadow_initialize initialize

def initialize(viewport, character = nil)
   @character = character
   super(viewport)
   @ombrelist=[]
   if (character.is_a?(Game_Event) and character.list!=nil and character.list[0].code == 108 and character.list[0].parameters == ["s"])
     if (character.list[1]!=nil and character.list[1].code == 108)
       @anglemin=character.list[1].parameters[0]
     end
     if (character.list[2]!=nil and character.list[2].code == 108)
       @anglemax=character.list[2].parameters[0]
     end
     if (character.list[3]!=nil and character.list[3].code == 108)
       @distancemax=character.list[3].parameters[0]
     end 
    for i in $game_map.events.keys.sort
     if ($game_map.events[i].is_a?(Game_Event) and $game_map.events[i].list!=nil and $game_map.events[i].list[0].code == 108 and $game_map.events[i].list[0].parameters == ["o"])
       @ombrelist[i+1] = Sprite_Shadow.new(viewport, $game_map.events[i],self,@anglemin,@anglemax,@distancemax)
     end
    end
    @ombrelist[1] = Sprite_Shadow.new(viewport, $game_player,self,@anglemin,@anglemax,@distancemax)
#===================================================
# œ Compatibility with fukuyama's caterpillar script
#===================================================
if CATERPILLAR_COMPATIBLE and $game_party.characters!=nil

for member in $game_party.characters
   @ombrelist.push(Sprite_Shadow.new(viewport, member,self,@anglemin,@anglemax,@distancemax))
end

end
#===================================================
# œ End of the compatibility
#===================================================
   end
   shadow_initialize(viewport, @character)
end

alias shadow_update update

def update
   shadow_update
   if @ombrelist!=[]
     for i in 1..@ombrelist.size
       if @ombrelist[i]!=nil
         @ombrelist[i].update
       end
     end
   end
end 

end

#===================================================
# ¥ CLASS Scene_Save edit
#===================================================
class Scene_Save < Scene_File

alias shadows_write_save_data write_save_data

def write_save_data(file)
   $game_map.shadows = nil
   shadows_write_save_data(file)
end
end

#===================================================
# ¥ CLASS Game_Map edit
#===================================================
class Game_Map
attr_accessor :shadows
end


Dynamic_Lights
Spoiler: ShowHide
#==============================================================================
# ** Dynamic Lights
#------------------------------------------------------------------------------
# by kellessdee
# Version: 1.00
# Date: 23/05/2011
#------------------------------------------------------------------------------
# Version History:
#
#   1.00 - First release
#------------------------------------------------------------------------------
# Description:
#
#   Allows the user to set up dynamic lights on the game map
#------------------------------------------------------------------------------
# Compatibility:
#
#------------------------------------------------------------------------------
# Instructions:
#
#   To create an event as a light source, create an event and set the first
#   command as a comment. The syntax is as follows:
#       render_light filename
#       radius
#       tone_red tone_green tone_blue
#       flicker
#       glow
#       brightness
#------------------------------------------------------------------------------
# Parameters:
#
#   filename      :the light picture file
#   radius        :radius in pixels
#   tone_red      :tone red value to be mixed (0 - 255)
#   tone_green    :tone green value to be mixed (0 - 255)
#   tone_blue     :tone blue value to be mixed (0 - 255)
#   flicker       :type true if you want the lights to flicker
#   glow          :type true if you want the lights to glow
#   brightness    :the brightness of the light source (0 - 255)
#------------------------------------------------------------------------------
# Notes:
#
#   Any questions, comments or issues you may reach me at:
#
#     kellessdee@gmail.com
#     http://www.rmxpunlimited.com/forums (look for kellessdee)
#     http://wakingdreams.weebly.com/
#
#==============================================================================

#==============================================================================
# ** Sprite_Light_Source
#------------------------------------------------------------------------------
#   Displays the light on the screen
#==============================================================================
class Light_Source < Sprite
  #----------------------------------------------------------------------------
  # * Constants
  #----------------------------------------------------------------------------
  DEFAULT = 'light_render'
  #----------------------------------------------------------------------------
  # * Public Instance Variables
  #----------------------------------------------------------------------------
  attr_accessor :event
  #----------------------------------------------------------------------------
  # * Object Initialization
  #----------------------------------------------------------------------------
  def initialize(event, radius, tone, flicker, glow, brightness, filename)
    super()
    self.z = 1000
    self.tone = tone
    self.opacity = brightness
    self.x = (event.real_x - radius * 2 - $game_map.display_x) / 4 + 12
    self.y = (event.real_y - radius * 2 - $game_map.display_y) / 4 + 6
    bmp = filename == nil ? RPG::Cache.picture(DEFAULT) : RPG::Cache.picture(filename)
    self.bitmap = Bitmap.new(radius, radius)
    self.bitmap.stretch_blt(Rect.new(0, 0, radius, radius), bmp, bmp.rect)
    @radius = radius
    @brightness = brightness
    @event = event
    @flicker = flicker
    @glow = glow
    @step = 0.001
    @flicker_count = -1
    @count = 0
  end
  #----------------------------------------------------------------------------
  # * Update Frame
  #----------------------------------------------------------------------------
  def update
    # Update flicker effect
    if @flicker
      self.opacity += rand(5) * @flicker_count
      @flicker_count = -@flicker_count if self.opacity >= @brightness || self.opacity <= 0
    end
    # Update Glow effect
    if @glow
      self.zoom_x += @step
      self.zoom_y += @step
      @count += 1
      if @count == 220
        @step = -@step
        @count = 0
      end
    end
    self.x = (@event.real_x - (@radius * 2).to_f * self.zoom_x - $game_map.display_x) / 4 + 12
    self.y = (@event.real_y - (@radius * 2).to_f * self.zoom_y - $game_map.display_y) / 4 + 6
  end
end
#==============================================================================
# ** Spriteset_Map
#------------------------------------------------------------------------------
#   Redefine initialization to create light array
#   Redefine update to update light array
#   Redefine dispose to destroy light array
#   Added render light method to set up light array
#==============================================================================
class Spriteset_Map
  #----------------------------------------------------------------------------
  # * Method Aliases
  #----------------------------------------------------------------------------
  unless self.method_defined?(:new_light_render_init)
    alias :new_light_render_init :initialize
  end
  unless self.method_defined?(:new_light_render_updt)
    alias :new_light_render_updt :update
  end
  unless self.method_defined?(:new_light_render_disp)
    alias :new_light_render_disp :dispose
  end
  #----------------------------------------------------------------------------
  # * Object Initialization
  #----------------------------------------------------------------------------
  def initialize
    @light_source = []
    render_light_source
    new_light_render_init
  end
  #----------------------------------------------------------------------------
  # * Update Frame
  #----------------------------------------------------------------------------
  def update
    @light_source.each {|light| light.update } unless @light_source == []
    new_light_render_updt
  end
  #----------------------------------------------------------------------------
  # * Dispose Object
  #----------------------------------------------------------------------------
  def dispose
    new_light_render_disp
    @light_source.each {|light| light.dispose }
    @light_source = []
  end
  #----------------------------------------------------------------------------
  # * Render Light Source
  #----------------------------------------------------------------------------
  def render_light_source
    $game_map.events.values.each {|event|
      next if event.list == nil
      if event.list[0].code == 108 && event.list[0].parameters[0].split[0] == 'render_light'
        # Get file name
        filename = event.list[0].parameters[0].split[1]
        parms = []
        (1..5).each {|i|
          if event.list[i].code == 108
            parms << event.list[i].parameters
          end
        }
        5.times {|i| parms[i] = [0] if parms[i] == [nil] }
        # Get Radius
        rad = parms[0][0].to_i
        t = parms[1][0].split
        ton = Tone.new(-t[0].to_i, -t[1].to_i, -t[2].to_i)
        fli = (parms[2] == ['true'])
        glo = (parms[3] == ['true'])
        bri = parms[4][0].to_i
        @light_source << Light_Source.new(event, rad, ton, fli, glo, bri, filename)
        @light_source << Light_Source.new(event, rad + 50, ton, fli, glo, bri - 25, filename)
        @light_source << Light_Source.new(event, rad + 100, ton, fli, glo, bri - 50, filename)
      end
    }
  end
end


Dynamic_Footprint Sounds
Spoiler: ShowHide
#===============================================================================
# Terrain Step Sound
# Version 1.1
# Author game_guy
#-------------------------------------------------------------------------------
# Intro:
# Create nice aesthetics with terrain noise. As you walk across grass or sand,
# let it play a beautiful noise to add to the atmosphere and realism of the
# game.
#
# Features:
# Specific Sound for Each Terrain
# Specific Sounds for Each Tileset
# Specify Volume and Pitch
#
# Instructions:
# Setup the config below, its pretty self explanatory, more instructions
# with config.
#
# Credits:
# game_guy ~ For creating it
# Tuggernuts ~ For requesting it a long time ago
# Sase ~ For also requeseting it
#===============================================================================
module TSS
  # In Frames Recommended 5-10
  Wait = 5
  # Ignore the next 2 lines
  Terrains = []
  Tilesets = []
  #===========================================================================
  # Enter in sounds for each terrain tag
  # Goes from 0-8. Set as nil to disable that terrain or delete the line.
  #===========================================================================
  Terrains[0] = '001-System01'
  Terrains[1] = 'fs_wood_hard1'
  Terrains[2] = 'fs_grass03'
  Terrains[3] = 'fs_stone_hoof2'
  Terrains[4] = 'as_na_grassmove2'
  Terrains[5] = 'fs_water_hard1'
  Terrains[6] = 'fs_dirt_hard1'
  #===========================================================================
  # If you would like to specifiy a volume and pitch, simply set the
  # terrain as an array.
  # Terrains[7] = ["sound", volume, pitch]
  # Just set it as a string if you would like the volume to be at 100 and
  # pitch at 0.
  # This also applies for tilesets below.
  #===========================================================================
  Terrains[7] = ["sound", 80, 10]
  #===========================================================================
  # With tilesets, you can set specific sounds for each tileset so you don't
  # have the same sounds. Add a new line and put
  # Tilesets[tileset id] = []
  # Then for each terrain put
  # Tilesets[tileset id][terrain id] = "sound file"
  # If a sound doesn't exist for a tileset, it will play a default sound,
  # if a default doesn't exist, no sound at all.
  #===========================================================================
  Tilesets[1] = []
  Tilesets[1][0] = "Sound"
  Tilesets[1][1] = ["sound", 75, 50]
end
class Game_Map
  def terrain_sound
    if TSS::Tilesets[@map.tileset_id] != nil
      return TSS::Tilesets[@map.tileset_id][$game_player.terrain_tag]
    else
      return TSS::Terrains[$game_player.terrain_tag]
    end
    return nil
  end
end
class Scene_Map
  alias gg_init_terrain_sounds_lat initialize
  def initialize
    @tsswait = TSS::Wait
    gg_init_terrain_sounds_lat
  end
  alias gg_update_terrain_sounds_lat update
  def update
    if $game_player.moving?
      @tsswait = 1
      terrain = $game_map.terrain_sound
      if terrain != nil
        if @tsswait == 0
          vol = terrain.is_a?(Array) ? terrain[1] : 100
          pit = terrain.is_a?(Array) ? terrain[2] : 0
          son = terrain.is_a?(Array) ? terrain[0] : terrain
          Audio.se_play('Audio/SE/' + son, vol, pit)
          @tsswait = TSS::Wait
        end
      end
    end
    gg_update_terrain_sounds_lat
  end
end
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: ForeverZer0 on April 22, 2012, 10:19:19 pm
Well, I got the problem narrowed down, but can't didn't find the precise problem. Its actually a conflict with BlizzABS, though I am inexperienced with BABS to nail the exact problem. I don't see anything in the BABS where it aliases Spriteset_Map to cause a problem, so I dunno.

I checked the map, making sure it was setup correctly, erased every single script except TOA and BABS, and it still does it. The scripts are in the correct order, too. I removed BABS and the arrow begin working properly. Blizz?
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 22, 2012, 10:25:05 pm
Thanks for splitting this off. Yah, I tried what I knew too and I couldn't get working either. Now mind you my scripting is very limited  :facepalm:

QuoteBlizz?
:haha:
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: ForeverZer0 on April 22, 2012, 11:03:50 pm
I'm sure that if there is an incompatibility like I believe, he will want to make sure it is corrected.
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 22, 2012, 11:07:23 pm
Why he is the best  8)

Spoiler: ShowHide
(http://static.fjcdn.com/comments/this+is+from+9gag+please+tell+me+how+_b7a4fb97ef80e60822c04fa57e5d1507.jpg)
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Blizzard on April 23, 2012, 02:59:26 am
I can take a look at this later. I'm not sure if winkio changed something later on in Blizz-ABS or if I did before my retirement.
Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 23, 2012, 10:24:44 am
Thanks Blizz  :haha:

*EDIT* I has something to do with 8-directional movement and pixel rate. If I set pixel rate to 0 and turn off 8-directional movement is works correctly. It might be my sprite, but I don't know haven't tested it yet. Doing it now.
**EDIT** I tested it with the normal RTP sprites and same effect, it had something to do with the 8-directional movement and pixel rate. Maybe movement repair too. I can't tell. Hope that helps narrow it down for you.

Title: Re: [Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Blizzard on April 23, 2012, 01:43:22 pm
The fix was simple. I used game_player.x and .y instead of .real_x / 128 and .real_y / 128. Since Blizz-ABS supports pixel movement, just using .x and .y directly causes problems. I have updated Tons to v7.6.
Title: Re: [RESOLVED][Split] Tons of Add-ons: Problem with Arrow Over Player
Post by: Andreavnn on April 23, 2012, 05:46:52 pm
That is why Blizz is number one, thanks for the quick fixing.:)