Slow Motion
Página 1 de 1
Slow Motion
Lembrando que esse script não foi feito por mim eu só estou desponibilizando para voceis intão ta aque
Todas as instruções estão no script:
Todas as instruções estão no script:
- Código:
#==============================================================================#
# [RGSS/RGSS2] Slow Motion Versão 1.0 #
#------------------------------------------------------------------------------#
# $Rafiscripts.by = Rafidelis(Rafis) #
# $Rafiscripts.version = 1.0 #
# $Rafiscripts.release_date = 28/12/09 (d/m/y) #
# $Rafiscripts.email = Rafa_Fidelis@hotmail.com or Rafa_Fidelis@yahoo.com.br #
# $Rafiscripts.website = www.ReinoRPG.com or www.ReinoRPG.com/forum #
#==============================================================================#
# [** $Rafiscripts.desc **] // Sobre o script / About script #
#------------------------------------------------------------------------------#
# Este script foi primeiramente criado por Fênix,então crêditos a ele tambem. #
# Na versão criada pelo Fenix,o script somente deixava a tela lenta e não #
# exibia os'rastros dos sprites' dos eventos e do jogador na telas. #
# Funciona no RPGMaker VX e no RPGMaker XP #
#==============================================================================#
# [** $Rafiscripts.instr ] // Instruções / Instructions: #
#------------------------------------------------------------------------------#
# ? 1° - Colar acima do Main #
# ? 2° - Edite a opção Effect_Only_In_Visible_Events na Linha 38 se desejar. #
# ? 3° - Para ativar o efeito de slow_motion use no comando chamar script: #
# $game_temp.slow_motion = true #
# E para desativar o Efeito de slow motion quando ele estiver habilitado,use: #
# $game_temp.slow_motion = false #
# ? 4° - Para definir se o sprite do personagem jogavel vai sofrer o efeito do #
# 'slow' motion,use: #
# $game_temp.slow_motion_effect_in_player = valor #
# valor deve ser true ou false,true ativa o efeito,e false desliga #
# 5° - Para mudar o tempo de atualização da tela,durante o slow motion use: # #
# $game_temp.slow_motion_time = valor #
# valor deve ser um numero inteiro maior que 0,padrão = 4 #
#==============================================================================#
#==============================================================================#
# [ ** Modulo necessarios para usar os scripts Criados por Rafidelis ** ] #
#==============================================================================#
module Rafidelis
#==============================================================================#
# Rafidelis.add_script - Name : Name of script - Version : Version of script #
#------------------------------------------------------------------------------#
def self.add_script(name,version)
$Rafiscripts = [] if $Rafiscripts.nil?
$Rafiscripts.push("Name : #{name} - Version: #{version}")
$Rafiscripts.compact!
end
#==============================================================================#
# Rafidelis.script_exist? - Name : Name of script - Version : Version of script#
#------------------------------------------------------------------------------#
def self.script_exist?(name,version)
$Rafiscripts = [] if $Rafiscripts.nil?
return $Rafiscripts.include?("Name : #{name} - Version: #{version}")
end
#==============================================================================#
# Rafidelis.scripts - Return all scripts create by Rafidelis(Rafiscripts) #
#------------------------------------------------------------------------------#
def self.scripts
print $Rafiscripts
end
#==============================================================================#
# Rafidelis.create_txt - Create a .txt with all Rafidelis(Rafiscripts) scripts #
#------------------------------------------------------------------------------#
def self.create_txt(filename="Rafideliscripts")
file = File.open("#{filename}.txt","wb")
for i in 0...$Rafiscripts.size
file.write("#{$Rafiscripts[i]}\r\n")
end
end
#==============================================================================#
# Modulo com Opções do script de Slow Motion #
#------------------------------------------------------------------------------#
module Slow_Motion
# Adicionando o script ao Sistema.Não Modificar
name = "Fenix Slow Motion - Edit"
version = "1.0"
Rafidelis.add_script(name,version)
# script adicionado ao Sistema.
#===========================================================================
# Defina abaixo se o efeito de slow motion,terá efeito somente nos eventos
# visiveis no mapa,ou se todos os eventos sofrerão o efeito de slow motion
# false = todos os eventos sofrerão o efeito
# true = somente os eventos viseveis no mapa sofrerão efeito
# Recomendado deixar em true
#===========================================================================
Effect_Only_In_Visible_Events = true
#===========================================================================
# Tempo de 'Recriação dos Sprites'
#===========================================================================
Time = 4
end
end
#==============================================================================#
# Verificando se o script esta incluso no sistema #
#==============================================================================#
name = "Fenix Slow Motion - Edit"
version = "1.0"
if Rafidelis.script_exist?(name,version)
class Game_Temp
attr_accessor :slow_motion
attr_accessor :slow_motion_time
attr_accessor :slow_motion_effect_in_player
#--------------------------------------------------------------------------
# Processamento Principal
#--------------------------------------------------------------------------
alias slow_motion_initialize initialize
def initialize
@slow_motion = false
@slow_motion_time = Rafidelis::Slow_Motion::Time
@slow_motion_effect_in_player = true
slow_motion_initialize
end
#--------------------------------------------------------------------------
# Slow Motion xD
#--------------------------------------------------------------------------
def slow_motion=(valor)
return if @slow_motion == valor
@slow_motion = valor
$scene = Scene_Map.new if valor.is_a?(FalseClass)
end
end
#==============================================================================
# Scene_Map
#------------------------------------------------------------------------------
# Esta classe processa a tela de Mapa
# Aliases:
# * main
# * update
#==============================================================================
class Scene_Map
include Rafidelis::Slow_Motion
#--------------------------------------------------------------------------
# Processamento Principal
#--------------------------------------------------------------------------
alias slow_motion_main main
def main
@sprites_slow_motion = []
@slow_motion_time = 0
slow_motion_main
for sprite in @sprites_slow_motion
next if sprite.disposed?
sprite.opacity = 0
sprite.dispose
end
end
#--------------------------------------------------------------------------
# Atualização do Frame
#--------------------------------------------------------------------------
alias slow_motion_update update
def update
# Se o efeito estiver ligado
if $game_temp.slow_motion
# Se já chegou ao tempo limite
if @slow_motion_time >= $game_temp.slow_motion_time
Graphics.transition
Graphics.freeze
events = $game_map.events
for i in events.keys
if Effect_Only_In_Visible_Events and event_in_screen?(events[i])
sprite = Sprite_Character.new(nil, events[i])
@sprites_slow_motion.push(sprite)
else
sprite = Sprite_Character.new(nil, events[i])
@sprites_slow_motion.push(sprite)
end
end
# Criando Sprite do Jogador
@sprites_slow_motion.push(Sprite_Character.new(nil, $game_player)) if $game_temp.slow_motion_effect_in_player
# Resetando o tempo
@slow_motion_time = 0
# Deletando todos os sprites
for sprite in @sprites_slow_motion
next if sprite.disposed?
sprite.opacity -= 100
sprite.dispose if sprite.opacity <= 0
end
# Se ainda não deu o tempo
else
sprite = @sprites_slow_motion
for i in 0...sprite.size
next if sprite[i].nil?
if sprite[i].disposed?
sprite.delete_at(i)
end
end
# Adicionando mais um ao tempo
@slow_motion_time += 1
end
else
# Recriando a variavel
@sprites_slow_motion = [] if @sprites_slow_motion != []
end
slow_motion_update
end
#--------------------------------------------------------------------------
# Verificação se o evento esta na tela
#--------------------------------------------------------------------------
def event_in_screen?(event)
if event.screen_x >= 0 and event.screen_x <= 640 and
event.screen_y >= 0 and event.screen_y <= 480
return true
end
return false
end
end
end
Lemuri- Mensagens : 9
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|