antes de começarmos a botar em pratica o assunto "Scenes" vamos ver um modelo de estrutura
#---------------------------------------------------------------------------#modelo de uma scene#aula de RGSS #7#---------------------------------------------------------------------------classScene_Exemplo#---------------------------------------------------------------------------# em toda scene deve ter:#--------------------------------------------------------------------------- def main #Esta def pode ser dividida em duas partes #parte 1: criando objetos @window_actor=Window_Actor.new @window_actor.x =00 @window_actor.y =00 @img=("Granpincs/pictures/imagem 01")#----------------------------------------------------------------------------#parte 2: disposição @window_actor.dispose @img.dispose #----------------------------------------------------------------------------#parte 3:loop do loop do # Atualização da tela de jogo Graphics.update # Atualizar a informaçao de entrada Input.update # Atualização dos frames update # Aborta o loop principal se a tela for alterada if $scene !=self break end end end def updat #atualizar if input trigger?(Input::C)? @comando_sair #se o botão c ou barra de espaço for apertado acontece o comando sair end#---------------------------------------------------------------------------# Nem todas scenes tem:#--------------------------------------------------------------------------- def camando_sair #aqui é definido o comando sair end#OBS: quis dizer que todas scenes definem main e updat, mas nem todas definem outras coisas só dei o exemplo do camando sair
e em:
s1 = $data_system.words.item s2 = $data_system.words.skill s3 = $data_system.words.equip s4 ="Status" s5 ="Salvar" s6 ="Fim de Jogo" @command_window=Window_Command.new(160,[s1, s2, s3, s4, s5, s6]) @command_window.index =@menu_index
ai temos 6 vars e depois um array
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
este array contem as variaveis s1, s2, s3... s6
Mas o que é array ?
array é um método que ajuda muito na conexão com as variaveis, só neste array em negrito temos o tamanho da letra e as opções (s1, s2, s3... s6) cada var que você cria reserva um espaço no seu computador, as vars declaradas em uma array ficam em um unico espaço o da array
Botando em pratica
1 crie uma class de scene
2 declare a def main
3 crie uma variavel que seja igual a Window_Playtime.new e suas cordenadas x e y
4 coloque @bgm = ("Audio/BGM/batlle01")
5 coloque @sprite = ("Granpincs/Title/title01")
6 disponibilize as variaveis
7 adicione o ciclo de scene
8 loop do
9 declare a def updat
10 se o botão c for precionado a tela de titulo é chamada
11 em um evento no mapa crie um evento pela opção chamar evento escrito: $Scene = Scene_nome da scene
seu script devera estar mais ou menos assim:
classScene_Test def main @window_playtime=Window_Playtime.new @window_playtime.x =100 @window_playtime.y =100 @sprite=Sprite.new @sprite=("Granpincs/Title/title01") @bgm=("Audio/BGM/batlle01") @window_playtime.dispose @sprite.dispose @bgm.dispose loop do # Atualização da tela de jogo Graphics.update # Atualizar a informaçao de entrada Input.update # Atualização dos frames update # Aborta o loop principal se a tela for alterada if $scene !=self break end end end def updat #se o botão c for presionado if input trigger?(Input::C)? $Scene =Scene_Title.new end endend
agora teste o seu jogo deu certo ?, aula que vem vamos continuar com esse asunto