Wallace Júnior- Iniciante
- Mensagens : 38
Créditos : 1
por Wallace Júnior Dom Fev 26, 2012 9:36 pm
- Spoiler:
#==============================================================================
# ** KBL_Title 1.2 - Autor: Darkness
#-----------------------------------------------------------------------------
# Modifica a tela de Titulo
#==============================================================================
#==============================================================================
# Configurações
#==============================================================================
#=============================================================================
# LISTA DE CORES:
#----------------------------------------------------------------------------
# 0 => BRANCO
# 1 => VERMELHO
# 2 => VERDE
# 3 => AZUL
# 4 => AMARELO
# 5 => AZUL BEBE
# 6 => ROSA
# 7 => PRETO
#=============================================================================
#------------------------------------------------------------------------------
# Titulo
#------------------------------------------------------------------------------
TITULO_ATIVO = true # Define se o texto com o título aparece
TITULO_TEXTO = "AX_Title 1.2" # Título do jogo
TITULO_FONTE = "Arial" # Fonte do título
TITULO_TAMANHO = 76 # Tamanho da fonte do título
TITULO_COR = 0 # Cor da fonte do título (0 - 7)
TITULO_POS_X = 70 # Posição X do título
TITULO_POS_Y = 0 # Posição Y do título
#------------------------------------------------------------------------------
# Press Start
#------------------------------------------------------------------------------
PRESS_START_ATIVO = false # Habilita o Press Start (true - false)
PRESS_START_TEXTO = "Press_Start" # Texto do Press Start
PRESS_START_FONTE = "Arial" # Fonte do Press Start
PRESS_START_TAMANHO = 22 # Tamanho da fonte do Press Start
PRESS_START_COR = 0 # Cor da fonte do Press Start (0 - 7)
PRESS_START_TEMPO = 100 # Tempo de aparição do Press Start
PRESS_START_POS_X = 210 # Posição X do Press Start
PRESS_START_POS_Y = 300 # Posição Y do Press Start
#------------------------------------------------------------------------------
# Janela de comandos
#------------------------------------------------------------------------------
COMANDOS_TEXTOS = [ # Textos dos comandos
"Continuar", # Texto do comando "Continuar"
"Novo Jogo", # Texto do comando "Novo Jogo"
"Sair" # Texto do comando "Sair"
]
COMANDOS_POS_X = 340 # Posição X da janela de comandos ( 0 - 544)
COMANDOS_POS_Y = 288 # Posição Y da janela de comandos ( 0 - 416)
COMANDOS_LARGURA = 172 # Largura da janela de comandos
COMANDOS_ALTURA = 104 # Altura da janela de comandos
COMANDOS_OPACIDADE = 255 # Opacidade da janela de comandos ( 0 - 255)
COMANDOS_CONTINUAR_H = false # Se não ouver jogo salvo a opção continuar ficará habilitada? ( true - false )
COMANDOS_INICIAR = 1 # Define em qual opção que vai se iniciar ( 0 - 2)
#------------------------------------------------------------------------------
# Imagem de título aleatória
#------------------------------------------------------------------------------
TITULO_ALEATORIO = false # Define se a Imagem da tela de titulo é aleatória
TITULOS = [ # Lista de Imagem de Titulo
"Title",
"GameOver"
]
#------------------------------------------------------------------------------
# Musica de título aleatória
#------------------------------------------------------------------------------
MUSICA_ALEATORIA = false # Define se a Musica da tela de titulo é aleatória
MUSICAS = [ # Lista de Musicas
"Town1",
"Town2",
"Town3"
]
#------------------------------------------------------------------------------
# FOG 1
#------------------------------------------------------------------------------
FOG_1_ATIVO = false # Define se o FOG ficara habilitado
FOG_1_IMAGEM = "" # Nome da imagem do FOG ( A Imagem deve ficar na pasta "Graphics\Fog" do seu projeto)
FOG_1_PLANE = true # Define se o FOG fica do tamanho da tela ( true - false)
FOG_1_POS_X = 0 # Posição X inicial do FOG ( 0 - 544)
FOG_1_POS_Y = 0 # Posição Y inicial do FOG ( 0 - 416)
FOG_1_OPACIDADE = 80 # Opacidade do FOG ( 0 - 255)
FOG_1_MOVIMENTO_X = 0 # Movimento X do FOG
FOG_1_MOVIMENTO_Y = 0 # Movimento Y do FOG
#------------------------------------------------------------------------------
# FOG 2
#------------------------------------------------------------------------------
FOG_2_ATIVO = false # Define se o FOG ficara habilitado
FOG_2_IMAGEM = "" # Nome da imagem do FOG ( A Imagem deve ficar na pasta "Graphics\Fog" do seu projeto)
FOG_2_PLANE = true # Define se o FOG fica do tamanho da tela ( true - false)
FOG_2_POS_X = 0 # Posição X inicial do FOG ( 0 - 544)
FOG_2_POS_Y = 0 # Posição Y inicial do FOG ( 0 - 416)
FOG_2_OPACIDADE = 80 # Opacidade do FOG ( 0 - 255)
FOG_2_MOVIMENTO_X = 0 # Movimento X do FOG
FOG_2_MOVIMENTO_Y = 0 # Movimento Y do FOG
#------------------------------------------------------------------------------
# FOG 3
#------------------------------------------------------------------------------
FOG_3_ATIVO = false # Define se o FOG ficara habilitado
FOG_3_IMAGEM = "" # Nome da imagem do FOG ( A Imagem deve ficar na pasta "Graphics\Fog" do seu projeto)
FOG_3_PLANE = true # Define se o FOG fica do tamanho da tela ( true - false)
FOG_3_POS_X = 0 # Posição X inicial do FOG ( 0 - 544)
FOG_3_POS_Y = 0 # Posição Y inicial do FOG ( 0 - 416)
FOG_3_OPACIDADE = 80 # Opacidade do FOG ( 0 - 255)
FOG_3_MOVIMENTO_X = 0 # Movimento X do FOG
FOG_3_MOVIMENTO_Y = 0 # Movimento Y do FOG
#==============================================================================
# script
#==============================================================================
module Cache
#--------------------------------------------------------------------------
# Carregamento das fogs
# filename : nome do arquivo
#--------------------------------------------------------------------------
def self.fog(filename)
load_bitmap("Graphics/Fogs/", filename)
end
end
class Scene_Title < Scene_Base
#--------------------------------------------------------------------------
# Inicialização do processo
#--------------------------------------------------------------------------
def start
super
load_database # Carrega o banco de dados
create_game_objects # Cria os objetos do jogo
check_continue # Verifica se há arquivos salvos
create_command_window # Cria a janela de comandos
create_title_graphic # Cria o gráfico de título
play_title_music # Toca a música de título
if PRESS_START_ATIVO == true
create_press_start # Cria o Press Start
end
if TITULO_ATIVO == true
titulo
end
end
#--------------------------------------------------------------------------
# Transição
#--------------------------------------------------------------------------
def perform_transition
Graphics.transition(20)
end
#--------------------------------------------------------------------------
# Início do processo
#--------------------------------------------------------------------------
def post_start
super
if PRESS_START_ATIVO == true
close_command_window
window_start(true)
command_window(false)
else
open_command_window
end
end
#--------------------------------------------------------------------------
# Preparação para fim do processo
#--------------------------------------------------------------------------
def pre_terminate
super
close_command_window
end
#--------------------------------------------------------------------------
# Fim do processo
#--------------------------------------------------------------------------
def terminate
super
dispose_command_window
snapshot_for_background
dispose_title_graphic
if PRESS_START_ATIVO == true
dispose_press_start
end
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def update
super
fog_animacao
@command_window.update
if PRESS_START_ATIVO == true
@window_start.update
end
if @command_window.active
if Input.trigger?(Input::C)
case @command_window.index
when 0 # Continuar
command_continue
when 1 # Novo Jogo
command_new_game
when 2 # Sair
command_shutdown
end
end
end
if PRESS_START_ATIVO == true
if @window_start.active
if @gando > 0
@gando -= 1
end
if @gando > (PRESS_START_TEMPO / 2)
@window_start.visible = true
else
@window_start.visible = false
end
if @gando == 0
start_restore
end
end
if @window_start.active
if Input.trigger?(Input::C)
Sound.play_decision
window_start(false)
command_window(true)
open_command_window
end
end
if Input.trigger?(Input::B)
Sound.play_cancel
close_command_window
window_start(true)
command_window(false)
end
end
end
#--------------------------------------------------------------------------
# Ativa/desativa a janela do Press Start
#--------------------------------------------------------------------------
def window_start(ativo)
@window_start.active = ativo
@window_start.visible = ativo
end
def command_window(ativo)
@command_window.active = ativo
@command_window.visible = ativo
end
#--------------------------------------------------------------------------
# * Start_Restore
#--------------------------------------------------------------------------
def start_restore
@gando = PRESS_START_TEMPO
end
#--------------------------------------------------------------------------
# Atualização da tela
#--------------------------------------------------------------------------
def fog_animacao
if FOG_1_ATIVO == true
@FOG_1.ox += FOG_1_MOVIMENTO_X
@FOG_1.oy += FOG_1_MOVIMENTO_Y
end
if FOG_2_ATIVO == true
@FOG_2.ox += FOG_2_MOVIMENTO_X
@FOG_2.oy += FOG_2_MOVIMENTO_Y
end
if FOG_3_ATIVO == true
@FOG_3.ox += FOG_3_MOVIMENTO_X
@FOG_3.oy += FOG_3_MOVIMENTO_Y
end
end
#--------------------------------------------------------------------------
# Criação do gráfico de título
#--------------------------------------------------------------------------
def create_title_graphic
@sprite = Sprite.new
if TITULO_ALEATORIO == true
@sprite.bitmap = Cache.system(TITULOS[rand(TITULOS.length)])
else
@sprite.bitmap = Cache.system("Title")
end
#--------------------------------------------------------------------------
# Criação do FOG_1
#--------------------------------------------------------------------------
if FOG_1_ATIVO == true
if FOG_1_PLANE == true
@FOG_1 = Plane.new
else
@FOG_1 = Sprite.new
end
@FOG_1.bitmap = Cache.fog(FOG_1_IMAGEM)
@FOG_1.ox = FOG_1_POS_X
@FOG_1.oy = FOG_1_POS_Y
@FOG_1.opacity = FOG_1_OPACIDADE
end
#--------------------------------------------------------------------------
# Criação do FOG_2
#--------------------------------------------------------------------------
if FOG_2_ATIVO == true
if FOG_2_PLANE == true
@FOG_2 = Plane.new
else
@FOG_2 = Sprite.new
end
@FOG_2.bitmap = Cache.fog(FOG_2_IMAGEM)
@FOG_2.ox = FOG_2_POS_X
@FOG_2.oy = FOG_2_POS_Y
@FOG_2.opacity = FOG_2_OPACIDADE
end
#--------------------------------------------------------------------------
# Criação do FOG_3
#--------------------------------------------------------------------------
if FOG_3_ATIVO == true
if FOG_3_PLANE == true
@FOG_3 = Plane.new
else
@FOG_3 = Sprite.new
end
@FOG_3.bitmap = Cache.fog(FOG_3_IMAGEM)
@FOG_3.ox = FOG_3_POS_X
@FOG_3.oy = FOG_3_POS_Y
@FOG_3.opacity = FOG_3_OPACIDADE
end
end
#--------------------------------------------------------------------------
# Criação da janela de comandos
#--------------------------------------------------------------------------
def create_command_window
@command_window = Window_Command.new(172, COMANDOS_TEXTOS)
@command_window.x = COMANDOS_POS_X
@command_window.y = COMANDOS_POS_Y
@command_window.lammer = COMANDOS_LARGURA
@command_window.height = COMANDOS_ALTURA
@command_window.opacity = COMANDOS_OPACIDADE
if @continue_enabled # Se houver arquivos salvos
@command_window.index = 0 # Opção habilitada
else # Se não houver arquivos salvos
@command_window.draw_item(0, COMANDOS_CONTINUAR_H) # Opção desabilitada
end
@command_window.index = COMANDOS_INICIAR
@command_window.openness = 0
@command_window.open
end
#--------------------------------------------------------------------------
# Criação do Press Start
#--------------------------------------------------------------------------
def create_press_start
@gando = PRESS_START_TEMPO
@window_start = Press_Start.new # Criar janela do "Press Start"
end
#--------------------------------------------------------------------------
# Criação do Titulo
#--------------------------------------------------------------------------
def titulo
@Titulo = Titulo.new # Criar janela do "Press Start"
end
#--------------------------------------------------------------------------
# * Dispose do Press start
#--------------------------------------------------------------------------
def dispose_press_start
@window_start.dispose
end
#--------------------------------------------------------------------------
# Toca a música de título
#--------------------------------------------------------------------------
def play_title_music
if MUSICA_ALEATORIA == true
Audio.bgm_play('Audio/BGM/' + MUSICAS[rand(MUSICAS.length)])
else
$data_system.title_bgm.play
end
RPG::BGS.stop
RPG::ME.stop
end
#--------------------------------------------------------------------------
# Comando: Novo Jogo
#--------------------------------------------------------------------------
def command_new_game
confirm_player_location
Sound.play_decision
$game_party.setup_starting_members # A equipe (party) inicial
$game_map.setup($data_system.start_map_id) # Posição inicial no mapa
$game_player.moveto($data_system.start_x, $data_system.start_y)
$game_player.refresh
$scene = Scene_Map.new
RPG::BGM.fade(1500)
close_command_window
Graphics.fadeout(60)
if TITULO_ATIVO == true
@Titulo.visible = false
end
Graphics.wait(40)
Graphics.frame_count = 0
RPG::BGM.stop
$game_map.autoplay
end
end
#-------------------------------------------------------------------------------
# ADD para Window_Base
#-------------------------------------------------------------------------------
class Window_Base < Window
def texto_cor(cor_id)
case cor_id
when 0
@R = 255
@G = 255
@B = 255
when 1
@R = 255
@G = 0
@B = 0
when 2
@R = 0
@G = 255
@B = 0
when 3
@R = 0
@G = 0
@B = 255
when 4
@R = 255
@G = 255
@B = 0
when 5
@R = 0
@G = 255
@B = 255
when 6
@R = 255
@G = 0
@B = 255
when 7
@R = 0
@G = 0
@B = 0
end
self.contents.font.color.set(@R, @G, @B)
end
end
#-------------------------------------------------------------------------------
# PRESS START
#-------------------------------------------------------------------------------
class Press_Start < Window_Base
def initialize
super( 0, 0, 544, 416)
self.opacity = 0
self.contents.font.name = PRESS_START_FONTE
self.contents.font.size = PRESS_START_TAMANHO
texto_cor(PRESS_START_COR)
self.contents.draw_text(PRESS_START_POS_X, PRESS_START_POS_Y, PRESS_START_TEXTO.length*PRESS_START_TAMANHO, 100, PRESS_START_TEXTO)
end
end
#-------------------------------------------------------------------------------
# TITULO
#-------------------------------------------------------------------------------
class Titulo < Window_Base
def initialize
super( 0, 0, 544, 416)
self.opacity = 0
self.contents.font.name = TITULO_FONTE
self.contents.font.size = TITULO_TAMANHO
texto_cor(TITULO_COR)
self.contents.draw_text(TITULO_POS_X, TITULO_POS_Y, TITULO_TEXTO.length*TITULO_TAMANHO, 100, TITULO_TEXTO)
end
end