O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

RGSS3 | Sprites Usando e Abusando PArte I

Iniciado por Mepps, 13/10/2013 às 16:54


[box class=titlebg]
RGSS3 , Sprites e Plane
[/box]

Olá Pessoal bem vindo a mais uma Aulinha de Ruby do Tio mepps
e hoje veremos o uso de sprites que nada mais são que Imagens
Bom primeiramente vamos Criar um Novo Projeto no maker.
apos isso Abra o Editor de Script e vamos iniciar

Vamos pegar a Tela de Titulo Para Aprender
entao vamos refaze-la. , primeiro criamos a classe
e o metodo de exibição das imagens.




Bom Agora Rode o Jogo e Veja a Tela Ficou Escura Certo?
ou seja e porque refizemos a classe Scene_Title. pessoal umas coisa que
vocÊs precisam memorizar  e que nem todas usam o initialize como o methodo inical

as Window usam o Initialize
as Scenes  usam o Start

pode ver que quase todas as scenes iniciam com o def start


[box class=titlebg]
Sprites
[/box]

Pessoal Vamos Falar de Sprites, Sprites sao imagens que são representadas
na tela do jogo, como o personagem que você controla. o Mapa que você ve
anda entre outras coisas.  a diferença entre Sprites e Plane e que sprites nao
tem a função de Movimento como a plane , por exemplo ela nao possui o metodo
ox e o oy de translação pela tela logo vocês irão entender do que eu estou falando.
Vamos criar nossa primeira Sprite.

onde esta Sprite::new e so Remover o  jogo da velha da frente
pra que assim o codigo possa ser lido. bom ja criamos um objeto do tipo imagem(sprite)
agora precisamos passar uma Imagem para ser exibida.

para isso usamos o seguinte codigo

@img1.bitmap = Cache.system("Imagem1")


ta mepps mais porque o .bitmap aparece ali
pessoal o bitmap ele vai criar a area onde podemos
desenhar ou dispor a nossa imagem. por isso ele e preciso
seguido da localização da imagem. na pasta system

Aqui esta a imagem que deve Estar pasta system
e so baixar e colocar lá certinho.



Seu Codigo deve Estar Assim



Agora rode o Seu Jogo. e Walaaa . a Imagem esta ai Não é?
so que ela nao Pode ser Animada que peninha. mais a uns metodos
bem basicos que podemos usar nela. como por Exemplo

@img1.opacity = 100   #< = Aqui você troca pela opacidade que quiser, trata-se da visibilidade
@img1.x = 100 # <= Aqui define a Posição x da Imagem
@img1.y =  # <= Define a Posição Y da imagem

entre muitas outras coisas pessoal, eu vou Fazer um Anexo
cobrindo todos os metodos mais afrente

[box class=titlebg]
Plane
[/box]

com certeza a mais interessante de se Trabalhar , pois elas São animadas =)
Pessoal faça o Seguinte na linha onde tem o @img1 = Sprite::new
mude o Sprite para plane ficando :

@img1 = Plane::new
@img.bitmap = Cache.system("Imagem1")


Otimo pessoal a Classe ja Esta pronta para Ser Animada, mais sozinha
ela nao faz nada, então ela precisa que você diga a ela como ela precisa
ser animada...

[/font]

[box class=titlebg]
Update
[/box]

Pessoal pra nossa imagem ser animada nos precisamos do metodo Update
que ira atualizar a nossa Scene, vamos criar um update pra nossa Scene

def update
  Graphics.update
  Input.update
end

Bom pessoal o Graphics Representa o Grafico Exibido entao o update vai atualizar
constantemente o grafico para que possamos ver a animação, enquanto o Input
gerencia todas as teclas que serão pressionadas. ou seja ele vai pegar tudo oque
o Usuario pressionar

otimo ja Criamos o Update. Agora vamos animar nossa imagem
você lembra quando eu falei do metodo ox e oy. esse metodos eles se referem a
translação da imagem na Tela. vamos brincar dentro o def update e abaixo do
Input.update coloque isso.

@img1.ox += 1

isso Significa que a cada vez que o ox. for chamado pelo update da tela ele vai incrementar
+1 a posição da imagem fazendo assim ela se mover...

Seu codigo deve Estar Assim



Otimo Rode o Game e Vera a Magica.
Ficou animado não éh? hehe  :XD:

[box class=titlebg]
Criando nosso Cache
[/box]

Pessoal fora isso nao Tenha muito haver com sprites terei que falar
sobre isso pra vocês na maioria das vezes quando trabalhamos com
imagens e tipico  jogarmos tudo na Pasta system. oque nao é bom
gera muito bagunça então hoje estaremos criando um Cache para
cada area de imagens que estaremos usando. Vamos começar

#--------------------------------------
# Centro RPG Maker Tutorias
#---------------------------------------
module Cache

def self.titulo(filename)
  load_bitmap("Graphics/Titulo/", filename)
end

Esse comando entra-ra no Lugar de system
assim substituindo a localização da imagem.

def self.titulo("name_da_imagem")

Esse aqui se encarregara de Carregar
a Imagem no Seguinte Diretorio , Graphics/Titulo

load_bitmap("Graphics/Titulo/", filename)

Agora oque era Jogado na System podera ser colocado em outro
diretorio assim deixando o seu projeto mais Arrumado tambem.

e so mudar a seguinte linha no seu codigo
@img1.bitmap = Cache.titulo("Imagem1")

assim o System nao Sera mais tão necessario

[box class=titlebg]
Fim da 1 Aula
[/box]

Bom pessoal Esta Aula Acaba Por Aqui proxima Aula Falarei mais alguns metodos da Plane
Como, Tom , Zoom , Blend_type , Movimentação e como Criar uma colisão tambem