Save-Point
Scrolling Panorama - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+---- Forum: RPGMaker XP (RGSS) Engine (https://www.save-point.org/forum-116.html)
+---- Thread: Scrolling Panorama (/thread-274.html)



Scrolling Panorama - Legacy - 05-03-2010

Scrolling Panorama by Regashi (A.k.A Legacy)

version: 0.1


introduction:
After seeing a few people wanting this, including myself, i decided to create a very simple scrolling paranoma script.
so enjoy ^_^

How to use:

Call the script from an event using this syntax:
Code:
$game_map.move_panorama(x,y)
or set up the Auto feature like so.
Code:
#AUTOSCROLL_MAP = {map_id => [x movement, y movement]
  AUTOSCROLL_MAP = {   }

place above main, and below Scene_debug.

Script:
Code:
#===============================================================================
# ~** [Regashi] Scrolling Panorama **~                              
#-------------------------------------------------------------------------------
#  Author:      Regashi
#  Version:     0.1
#  Build Date:  2010-03-24
#  Last Update: 2010-04-30
#-------------------------------------------------------------------------------
#  This little script allow you to move the Panorama.
#  You can move the panorama with this command
#  $game_map.move_panorama(x,y).
#  Else you can compile the AUTOSCROLL_MAP hash for an auto movement in
#  specificated map.
#===============================================================================
module Regashi
  #AUTOSCROLL_MAP = {map_id => [x movement, y movement]
  AUTOSCROLL_MAP = {   }
  AUTOSCROLL_MAP.default = [0,0]
end

class Game_Map
  attr_reader   :panorama_ox
  attr_reader   :panorama_oy
  
  alias regashi_game_map_setup setup
  def setup(map_id)
    regashi_game_map_setup(map_id)
    @panorama_ox = 0
    @panorama_oy = 0
  end
  def move_panorama(x,y)
    @panorama_ox += x
    @panorama_oy += y
  end
  
  alias regashi_game_map_update update
  def update
    regashi_game_map_update
    move_panorama(Regashi::AUTOSCROLL_MAP[@map_id][0],Regashi::AUTOSCROLL_MAP[@map_id][1])
  end
end

class Spriteset_Map
alias regashi_spriteset_map_update update
  def update
    regashi_spriteset_map_update
    @panorama.ox += $game_map.panorama_ox
    @panorama.oy += $game_map.panorama_oy
  end
end

Script Compatiblity problems:

This script will most likely not work with any script modifing the Game_Map, a list of incompatible scripts will be listed here, when found. And eventualy patches to conter these problems.