[RESOLVED][Split] Tons of Add-ons: Problem with Arrow Over Player

Started by Andreavnn, April 22, 2012, 06:57:34 pm

Previous topic - Next topic

Andreavnn

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.  

ForeverZer0

I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Andreavnn


ForeverZer0

Can you link or post to some of them scripts.
I would pick on Dynamic_Lights and Dynamic_Shadow first.
I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Andreavnn

Yeah no problem, I can do one better for you uploading a demo.

Demo - 476KB


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

ForeverZer0

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?
I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Andreavnn

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:

ForeverZer0

I'm sure that if there is an incompatibility like I believe, he will want to make sure it is corrected.
I am done scripting for RMXP. I will likely not offer support for even my own scripts anymore, but feel free to ask on the forum, there are plenty of other talented scripters that can help you.

Andreavnn


Blizzard

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.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Andreavnn

April 23, 2012, 10:24:44 am #10 Last Edit: April 23, 2012, 10:55:42 am by Andreavnn
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.


Blizzard

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.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Andreavnn

That is why Blizz is number one, thanks for the quick fixing.:)