- Caiobz009Novo Membro
- Mensagens : 136
Reputação : 51
VX Fog System
Dom Set 26, 2010 4:16 pm
VX Fog System
por VitorJ
por VitorJ
Introdução
Não sei se perceberam, mas, O VX não tem fog como o XP... Então eu resolvi procurar e achei um indentico =]
Características
- Otimo para quem esta acostumado a atribuir fog com mapas
- Ainda ocorre um pequeno problema de coordenada em mapas com loop
- Muito facil de usar
Como usar
Só colar acima do main.
Comandos
Aqui comandos que haviam no RPG Maker XP
Todos os comandos devem ser usado no comando de evento "Chamar script".
$game_map.start_fog_tone_change(tone, duration)
tone é a tonalidade que deve ser Tone.new(r,g,b,s) (r=Vermelho,g=Verde,b=Azul,s=Saturação)
pode ser usado valor negativo no Tone.new
duration é o tempo que vai demorar para mudar a tonalidade em frames
$game_map.start_fog_opacity_change(opacity,duration)
opacity é a opacidade de 0 a 255 quanto maior mais visivel.
duration é o tempo que vai demorar para mudar a opacidade em frames
==============================================================================#
Para mudar o nome da fog use:
$game_map.fog_name = "nome"
no lugar de nome coloque o nome da imagen que esta na pasta Graphics\System
Para mudar a tonalidade instantaniamente use:
$game_map.fog_hue = tone
tone é a tonalidade que deve ser Tone.new(r,g,b,s) (r=Vermelho,g=Verde,b=Azul,s=Saturação)
pode ser usado valor negativo no Tone.new
Para mudar a opacidade instantaniamente use:
$game_map.fog_opacity = opacity
opacity é a opacidade de 0 a 255 quanto maior mais visivel.
Para mudar a velocidade de movimento use:
$game_map.fog_sx = velo # para horizontal
$game_map.fog_sy = velo # para vertical
velo é a velocidade de movimento, pode ser usado valo negativo, para mover
na diagonal mude o valor dos 2
Para mudar o zoom use:
$game_map.fog_zoom = zoom
coloque um zoom, 100 é o padrão 50 é a metade e 200 é o dobro e assim por diante
Demo
Download aqui
Script
- Spoiler:
- Código:
#==============================================================================#
# VX Fog System By VitorJ
#==============================================================================#
# Classes modificadas com esse Script:
# Game_Map, Spriteset_Map
#==============================================================================#
# Como usar:
# Aqui comandos que haviam no RPG Maker XP
# Todos os comandos devem ser usado no comando de evento "Chamar script".
# $game_map.start_fog_tone_change(tone, duration)
# tone é a tonalidade que deve ser Tone.new(r,g,b,s) (r=Vermelho,g=Verde,b=Azul,s=Saturação)
# pode ser usado valor negativo no Tone.new
# duration é o tempo que vai demorar para mudar a tonalidade em frames
#
# $game_map.start_fog_opacity_change(opacity,duration)
# opacity é a opacidade de 0 a 255 quanto maior mais visivel.
# duration é o tempo que vai demorar para mudar a opacidade em frames
#==============================================================================#
# Para mudar o nome da fog use:
# $game_map.fog_name = "nome"
# no lugar de nome coloque o nome da imagen que esta na pasta Graphics\System
#
# Para mudar a tonalidade instantaniamente use:
# $game_map.fog_hue = tone
# tone é a tonalidade que deve ser Tone.new(r,g,b,s) (r=Vermelho,g=Verde,b=Azul,s=Saturação)
# pode ser usado valor negativo no Tone.new
#
# Para mudar a opacidade instantaniamente use:
# $game_map.fog_opacity = opacity
# opacity é a opacidade de 0 a 255 quanto maior mais visivel.
#
# Para mudar a velocidade de movimento use:
# $game_map.fog_sx = velo # para horizontal
# $game_map.fog_sy = velo # para vertical
# velo é a velocidade de movimento, pode ser usado valo negativo, para mover
# na diagonal mude o valor dos 2
#
# Para mudar o zoom use:
# $game_map.fog_zoom = zoom
# coloque um zoom, 100 é o padrão 50 é a metade e 200 é o dobro e assim por diante
module FogVX
FOG_MAP = [1,2] # Mapas que já vão começar com FOG.
FOG_NAME = ["003-Shade01","001-Fog01"] # Nome do fog, Na mesma ordem dos mapas.
FOG_HUE = [Tone.new(0, 0, 0, 0),Tone.new(0, 0, 0, 0)] # Tonalidade da fog
FOG_OPA = [100,100] # Opacidade da fog
FOG_BLEND = [1,1] # Sintencidade da fog (0 normal,1 multiplicar, 2 inverter)
FOG_ZOOM = [150,100] # Zoom do fog.
FOG_SX = [1,3] # Velocidade horizontal do fog.
FOG_SY = [-1,3] # Velocidade vertical do fog.
end
############
# Game_Map #
############
class Game_Map
include FogVX
attr_accessor :fog_name # nome do arquivo de Névoa
attr_accessor :fog_hue # cor da névoa
attr_accessor :fog_opacity # nível de opacidade da Névoa
attr_accessor :fog_blend_type # método de combinação de Névoa
attr_accessor :fog_zoom # magnitude de Névea
attr_accessor :fog_sx # sx de Névoa (velocidade x)
attr_accessor :fog_sy # sx de Névoa (velocidade y)
attr_reader :fog_ox # Início da coordenada x de Névoa
attr_reader :fog_oy # início da coordenada y de Névoa
attr_reader :fog_tone # cor da Névoa
alias vx_fog_bvj_gmap_setup setup
def setup(map_id)
@fog_name = ""
@fog_hue = Tone.new(0, 0, 0, 0)
@fog_opacity = 0
@fog_blend_type = 0
@fog_zoom = 0
@fog_sx = 0
@fog_sy = 0
@fog_ox = 0
@fog_oy = 0
@fog_tone = Tone.new(0, 0, 0, 0)
@fog_tone_target = Tone.new(0, 0, 0, 0)
@fog_tone_duration = 0
@fog_opacity_duration = 0
@fog_opacity_target = 0
for i in 0..FOG_MAP.size
if FOG_MAP[i] == map_id
@fog_name = FOG_NAME[i]
@fog_hue = FOG_HUE[i]
@fog_tone = FOG_HUE[i]
@fog_opacity = FOG_OPA[i]
@fog_blend_type = FOG_BLEND[i]
@fog_zoom = FOG_ZOOM[i]
@fog_sx = FOG_SX[i]
@fog_sy = FOG_SY[i]
end
end
vx_fog_bvj_gmap_setup(map_id)
end
def start_fog_tone_change(tone, duration)
@fog_tone_target = tone.clone
@fog_tone_duration = duration
if @fog_tone_duration == 0
@fog_tone = @fog_tone_target.clone
end
end
def start_fog_opacity_change(opacity, duration)
@fog_opacity_target = opacity * 1.0
@fog_opacity_duration = duration
if @fog_opacity_duration == 0
@fog_opacity = @fog_opacity_target
end
end
alias vx_fog_bvj_gmap_update update
def update
vx_fog_bvj_gmap_update
@fog_ox -= @fog_sx / 8.0
@fog_oy -= @fog_sy / 8.0
if @fog_tone_duration >= 1
d = @fog_tone_duration
target = @fog_tone_target
@fog_tone.red = (@fog_tone.red * (d - 1) + target.red) / d
@fog_tone.green = (@fog_tone.green * (d - 1) + target.green) / d
@fog_tone.blue = (@fog_tone.blue * (d - 1) + target.blue) / d
@fog_tone.gray = (@fog_tone.gray * (d - 1) + target.gray) / d
@fog_tone_duration -= 1
end
if @fog_opacity_duration >= 1
d = @fog_opacity_duration
@fog_opacity = (@fog_opacity * (d - 1) + @fog_opacity_target) / d
@fog_opacity_duration -= 1
end
end
end
################
# Sriteset_Map #
################
class Spriteset_Map
alias vx_fog_bvj_smap_ini initialize
def initialize
@fog = Plane.new(@viewport1)
@fog.z = 50
vx_fog_bvj_smap_ini
end
alias vx_fog_bvj_smap_dispose dispose
def dispose
@fog.dispose
vx_fog_bvj_smap_dispose
end
alias vx_fog_bvj_smap_update update
def update
if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
@fog_name = $game_map.fog_name
@fog_hue = $game_map.fog_hue
if @fog.bitmap != nil
@fog.bitmap.dispose
@fog.bitmap = nil
end
if @fog_name != ""
@fog.bitmap = Cache.system(@fog_name)
@fog.tone = @fog_hue
end
Graphics.frame_reset
end
@fog.zoom_x = $game_map.fog_zoom / 100.0
@fog.zoom_y = $game_map.fog_zoom / 100.0
@fog.opacity = $game_map.fog_opacity
@fog.blend_type = $game_map.fog_blend_type
@fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
@fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
@fog.tone = $game_map.fog_tone
vx_fog_bvj_smap_update
end
end
- Créditos e Agradecimentos
- VitorJ, criador do script
Use e abuse, Com os devidos creditos.
- Max KeisersMembro
- Mensagens : 267
Reputação : 49
Re: VX Fog System
Dom Set 26, 2010 4:38 pm
| I LOVE FOGSS ! |
- Caiobz009Novo Membro
- Mensagens : 136
Reputação : 51
Re: VX Fog System
Dom Set 26, 2010 4:42 pm
Me too ! :D
Fogs are so good ! (:
Fogs are so good ! (:
- kabrionNovato
- Mensagens : 56
Reputação : 18
Re: VX Fog System
Dom Set 26, 2010 6:29 pm
+rep, pela disponibilização de algo bastante necessário para um bom game ;D
- Caiobz009Novo Membro
- Mensagens : 136
Reputação : 51
Re: VX Fog System
Dom Set 26, 2010 7:41 pm
Valeu cara. :D
- eduardofelNovo Membro
- Mensagens : 163
Reputação : 14
Re: VX Fog System
Ter Set 28, 2010 4:56 pm
Vlw man pela disponibilizazação quase que nun sai
+rep pa vc
+rep pa vc
- Lhu!Novo Membro
- Mensagens : 167
Reputação : 20
Re: VX Fog System
Qui Jun 14, 2012 1:30 pm
Obrigado por disponibilizar amigo ^^!
Permissões neste sub-fórum
Não podes responder a tópicos
|
|