#_______________________________________________________________________________
# ++++ MOG Animated Panorama XP V2.1 +++
#_______________________________________________________________________________
# By Moghunter
# http://www.atelier-rgss.com
#_______________________________________________________________________________
# Animação de panorama por frames.
# É necessário ter as imagens extras dos frames para que a animação ocorra.
# Exemplo.
#
# Nuvem.png (Frame 1)(Essa é a imagem do Database)
# Nuvem1.png (Frame 2)
# Nuvem2.png (Frame 3)
# Nuvem3.png (Frame 4)
# Nuvem4.png (Frame 5)
# Etc...
#_______________________________________________________________________________
module MOG
# Velocidade da animação
PANOREFRESH = 8
# É possível mudar a velocidade da animação usando este código através do
# comando chamar script.
#
# $game_system.pano_anime_speed = X
#
# X = Velocidade da animação.
#
end
#===============================================================================
# ? Game_System
#===============================================================================
class Game_System
attr_accessor :pano_anime_speed
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
alias mog14_initialize initialize
def initialize
mog14_initialize
@pano_anime_speed = MOG::PANOREFRESH
end
end
#===============================================================================
# ? Spriteset_Map
#===============================================================================
class Spriteset_Map
#--------------------------------------------------------------------------
# ? Initialize
#--------------------------------------------------------------------------
alias mog14_initialize initialize
def initialize
@panospeed = 0
@panoframes = 0
@panorama_animated = false
mog14_initialize
end
#--------------------------------------------------------------------------
# ? Update
#--------------------------------------------------------------------------
alias mog14_update update
def update
can_panorama_animation
mog14_update
update_panorama_animation
end
#--------------------------------------------------------------------------
# ? can_panorama_animation
#--------------------------------------------------------------------------
def can_panorama_animation
if @panorama_name != $game_map.panorama_name or
@panorama_hue != $game_map.panorama_hue
@panospeed = 0
@panoframes = 0
@panorama_animated = false
image = RPG::Cache.panorama($game_map.panorama_name + "1", $game_map.panorama_hue) rescue nil
if image != nil
@panorama_animated = true
image.dispose
end
end
end
#--------------------------------------------------------------------------
# ? update_panorama_animation
#--------------------------------------------------------------------------
def update_panorama_animation
return unless @panorama_animated
return if @panorama.bitmap == nil
@panospeed += 1
if @panospeed > $game_system.pano_anime_speed
@panospeed = 0
@panoframes += 1
@panorama.bitmap = RPG::Cache.panorama(@panorama_name + @panoframes.to_s, @panorama_hue) rescue nil
if @panorama.bitmap == nil
@panoframes = 0
@panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
end
$game_map.panorama_name = @panorama_name
$game_map.panorama_hue = @panorama_hue
end
end
end
$mog_rgss_animemated_panorama = true