Hoje falaremos sobre ciclos e depois dos sprites
7.1: Ciclos
Todos os jogos precisão de ciclos para rodarem, durante as aulas de Scenes nós vimos sobre o loop do ele torna um ciclo em sua scene
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
Este ciclo vai rodando durante todo o tempo que o jogo se encontra na scene referente ao script, mas a todo o momento estamos em uma Scene: Scene_Map, Scene_Title... isso significa que a todo tempo em um jogo esta definido em um loop do, menos quando esta carregando a Scene, mas como assim
Exemplo: em um script de uma sene começamos com a def main la na def main no final esta definido o loop do assim fica o resto do sistema da scene atualizando dados apartir do loop do: # Atualização da tela de jogo, # Atualizar a informaçao de entrada, # Atualização dos frames
veja a conclusão analisando o script dento do "spoiler"
conclusão : o computador carrega o script nele a uma regra para atualizar alguns dodos (loop do), no caso da tela de titulo quando o jogador escolhe a opção "novo jogo"(*), o comando do loop "updat"(**) é executado, que manda o computador fazer o comando "new_game"(*1) neste comando a tela de titulo é alterada, e então o comando do loop "if $scene != self"(*2) tambem é execultado em "break" manda o computador parar o loop sendo assim que a tela do jogo é alterada inicia-se um novo loop do
# Dados para iniciação do script
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 # (*2)
break
end
end
Def updat
[...]
case command_windo.index
when 0
command_newgame#(*)
when 1
command_load
when 2
command_shutdown
end
end
#--------------------------------------------------------------------------
# Comando: Novo Jogo
#--------------------------------------------------------------------------
def command_new_game
#Descrição do comando
$scene = Scene_Map.new# (*1)
end
[...]
7.2: Sprites
Para o quê serve a class_sprite ? serve para inserir, editar, mover imagens
Só isso ? parece ser pouca coisa... mas não é, as coisas que da para fazer com as imagens são muitas, hoje não precisaremos ver tanta coisa assim
Agora iremos falar sobre mover as imagens, em sua class Scene_Title veja as linhas 36 e 37
Logo apos a linha 37 cole estes comando e teste seu jogo...
@sprite.x = + 300 @sprite.y = - 300
teste o jogo e veja oque aconteceu ...
ela saiu do lugar isso foi por que alteramos as coordenas x e y, se voce aumenta a coordenada x move para a direita
se você diminui a coordenada y move para acima. na def update cole:
teste o jogo...
a imagem saiu da tela, mas a um comando que faz ela voltar para isto basta trocar @sprite = Sprite.new por @sprite = Plane.new teste o jogo a imagem vai e volta.