Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


    Criando jogos em VB.NET - Movimentando o personagem

    DragonicK
    DragonicK
    Experiente
    Experiente


    Mensagens : 542
    Créditos : 81

    Ficha do personagem
    Nível: 1
    Experiência:
    Criando jogos em VB.NET - Movimentando o personagem Left_bar_bleue0/0Criando jogos em VB.NET - Movimentando o personagem Empty_bar_bleue  (0/0)
    Vida:
    Criando jogos em VB.NET - Movimentando o personagem Left_bar_bleue30/30Criando jogos em VB.NET - Movimentando o personagem Empty_bar_bleue  (30/30)

    Criando jogos em VB.NET - Movimentando o personagem Empty Criando jogos em VB.NET - Movimentando o personagem

    Mensagem por DragonicK Qua Jan 25, 2012 9:46 pm

    Movimentando o personagem;
    Em propriedades do Form, há uma opção chamada KeyPreview.
    Para eu conseguir manipular as informações de teclas pressionadas no form, eu preciso dela ativa (True), caso contrário, todas as teclas pressionadas vão para os botões selecionados.

    Criando jogos em VB.NET - Movimentando o personagem Keyzr

    Vamos criar uma Estrutura para armazenar as informações do personagem.
    Uma estrutura é a melhor maneira de se trabalhar com muitas variáveis. Aqui nós temos os dados de cada personagem organizado.

    Criando jogos em VB.NET - Movimentando o personagem Structm

    Vá para o evento KeyDown do Formulário.
    Primeiro selecione a esquerda, Form1 Events. Depois a direita escolha KeyDown.

    E uma nova Sub será adicionada.

    Criando jogos em VB.NET - Movimentando o personagem Keydown

    Agora vamos recortar o código que está no Button1 e adiocionar ao evento KeyDown.
    Já podemos deletar o botão.

    Criando jogos em VB.NET - Movimentando o personagem Frentek

    Agora adicione o código abaixo.

    Criando jogos em VB.NET - Movimentando o personagem Keydowndraw

    No quadro violeta temos.
    KeyUp
    Muda o valor da variável CurrentAnimation (AtualAnimação) para costas. Ele está subindo.
    Personagem.Position.Y -= 5 não muda o valor para 5, apenas diminui a quantidade em 5.

    KeyDown
    Muda o valor da variável CurrentAnimation (AtualAnimação) para frente. Pois o personagem está descendo.
    Personagem.Position.Y += 5 não muda o valor para 5, apenas aumenta a quantidade em 5.

    KeyLeft
    Muda o valor da variável CurrentAnimation (AtualAnimação) para esquerda. Pois o personagem está indo para a esquerda. (ah vá, é memo?)
    Personagem.Position.X -= 5 não muda o valor para 5, apenas diminui a quantidade em 5.

    KeyRight
    Muda o valor da variável CurrentAnimation (AtualAnimação) para direita. Pois o personagem está indo para a direita. (ah vá, é memo?)
    Personagem.Position.X += 5 não muda o valor para 5, apenas aumenta a quantidade em 5.

    Aqui não vou explicar novamente, apenas altere 0, 0. Coloque o personagem.position.x e personagem.position.y.

    E no lugar de frente, coloque Personagem.CurrentAnimation. Como mostra a imagem acima. Dê um play no código e agora aperte as setas do teclado.

    Criando jogos em VB.NET - Movimentando o personagem Nobackh

    Fica desse jeito, por que?

    Nós estamos fazendo uma animação, então, sempre devemos limpar onde desenhamos para a nova animação. Caso isso não aconteça só iremos desenhar em cima de onde já desenhamos ficando toda essa bagunça.

    Em cima de DesenharImagem adicione :
    g.Clear(Color.Black)

    Criando jogos em VB.NET - Movimentando o personagem Cleara
    Criando jogos em VB.NET - Movimentando o personagem Compelt

    Chegamos ao final de mais uma aula, aqui já demos outro grande passo na criação de jogos. Espero vocês na próxima até mais.

    Projeto Aula

    "Nota: CurrentAnimation está como Byte na imagem, caso você siga esta aula altere para Integer. Se baixou o projeto aula não precisa mudar.

      Data/hora atual: Qui maio 02, 2024 2:15 am