[100juizo's tuto] - Mario Bros (Parte 1)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Gostaram do Tutorial?

50% 50% 
[ 1 ]
0% 0% 
[ 0 ]
50% 50% 
[ 1 ]
 
Total dos votos : 2

[100juizo's tuto] - Mario Bros (Parte 1)

Mensagem por Luiz A. Oliveira em Sex 26 Nov 2010, 11:18

Nome: Criando um jogo do Mario (Parte1)
Descrição: Bem é meu primeiro tutorial se me esqueci de alguma coisa me avisem; mas primeiro vamos criar a movimentação do mario.
(Usei uma movimentação simples de GuiEdu, essa parte do tuto tem créditos a ele)
Nível de dificuldade: iniciante/mediano
Requerimentos: Versão do GM7/8 - Pro/Lite(?)
Desenvolvimento: Bem vou passar para frente oque aprendi e estou criando no meu jogo.
(!)Use este link AQUI para conseguir sprites, backgrounds e tiles que vamos usar.
Crie 6 sprites; Parado_esq, Parado_dir, Andando_esq, Andando_dir, Pulando_esq, Pulando_dir, Mascara(um quadrado com ponta triangular), Todas com dimensões 26x32, no Centro e marque a opção separe collision masks.
Crie um objeto: obj_mario
No Creat vamos definir as variaveis:
Código:

image_speed=1/3 /*Velocidade da animação*/
podeandar = false /*Variavel para andar*/
podepular = false /*Variavel para pular*/
esquerda = false /*Variavel de movimentação*/
direita = false /*Variavel de movimentação*/
direcao = 0 /*/Variavel de direção*/
(!) A variavel "direcao" é essencial para a criação do fantasma MAIS TARDE.
Ela define a direção. Se seu valor é "0" significa direita, se o valor é "1" é esquerda. As outras variaveis ja estão bem explicadas

Agora no Step vamos criar a movimentação:
Código:

if keyboard_check(vk_right) and place_free(x+5,y)  /*Se precionar Direita e o player estiver no chão*/
{
hspeed = 4 /*Velocidade para Direita=4*/
sprite_index = Andando_dir /*Muda a Sprite*/
direita = true
direcao = 0 /*Direção Direita*/
}
{
if keyboard_check_released(vk_right) /*Ao soltar a tecla*/
{
    hspeed = 0 /*Velocidade =0, Player parado*/
    sprite_index = Parado_dir
    direita = false
    direcao = 0
}
}

if keyboard_check(vk_left) and place_free(x-5,y)
{
    hspeed = -4
    sprite_index = Andando_esq
    esquerda = true
    direcao = 1 /*Direção Esquerda*/
}
{
if keyboard_check_released(vk_left)
    {
    hspeed = 0
    sprite_index = Parado_esq
    esquerda = false
    direcao = 1
    }
}
////////////////////////////////////////////////////////
/*TROCAS DE SPRITE AO PULAR:*/
if place_free(x,y+.7) && keyboard_check(vk_right)
{
    if direita = true
    sprite_index = Pulando_dir 
}

if place_free(x,y+.7) && keyboard_check(vk_left)
{
    if direita = false
    sprite_index = Pulando_esq
}

/*Anti BUG, Para o player não colar na parede*/
if not place_free(x+5,y) && direita = true && keyboard_check(vk_anykey)
{
    hspeed = 0
}
if not place_free(x-5,y) && esquerda = true && keyboard_check(vk_anykey)
{
    hspeed = 0
}
Agora adicione outro Code ao Step:
Código:

{
if place_free(x,y+1)/*se o player está no ar)*/
gravity=1/*determina a gravidade*/
else/*senão (se ele estiver no chão)*/
gravity=0

if (vspeed > 15) vspeed=15 //limita a velocidade para 15
}
Agora Crie um obj_block16, solido e invisivel, com a sprite de cor preta de preferencia, com as dimensões 16x16 e com 50% de opacidade.
No evento de colisão do player com ele coloque:
Código:

move_contact_solid(direction,12)/*para o player não passar direto pelo chão*/
vspeed=0
A movimentação ja esta pronta! agora vamos fazer o Mario pular:
Adicione um evento press :
Código:


if not place_free(x,y+1)//"se não há espaço livre abaixo" ou seja se ele estiver no chão
{
    vspeed=-10//vertical speed = 15, ele pula (15 no caso é a altura que ele pula)
    image_speed =1/-1
    */sound_play(jump)*/
}
else
{
*/sound_stop(jump)*/
}
(!)No */sound_play(jump)*/ ou */sound_play(jump)*/ você pode colocar um som para isso apague o "/*"

Agora Crie uma room com as tiles que baixou e insira o obj_block16 e o obj_mario...

Próxima aulas:
Blocos Solid top
Player Morrer
Inimigos
Click aqui para ir á próxima aula


Última edição por luiz_100juizo em Qua 22 Dez 2010, 13:46, editado 1 vez(es)

Luiz A. Oliveira

Ranking : Nota C
Número de Mensagens : 914
Idade : 19
Data de inscrição : 08/09/2010
Notas recebidas : D-B-C
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://luizgm.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [100juizo's tuto] - Mario Bros (Parte 1)

Mensagem por Fireheaddew em Sex 26 Nov 2010, 16:35

luiz_100juizo escreveu:Se seu valor é "0" significa direita, se o valor é "1" é direita.

Não seria "Se seu valor é "0" significa direita, se o valor é "1" é esquerda." ou " Se seu valor é "0" significa esquerda, se o valor é "1" é direita." ou estou errado?

Fireheaddew

Número de Mensagens : 235
Data de inscrição : 04/11/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [100juizo's tuto] - Mario Bros (Parte 1)

Mensagem por Luiz A. Oliveira em Sab 27 Nov 2010, 21:00

opa foi malz vo dar um edit qnd tiver nu meu pc

Luiz A. Oliveira

Ranking : Nota C
Número de Mensagens : 914
Idade : 19
Data de inscrição : 08/09/2010
Notas recebidas : D-B-C
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://luizgm.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [100juizo's tuto] - Mario Bros (Parte 1)

Mensagem por Conteúdo patrocinado Hoje à(s) 14:35


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum