Sistema de morte estilo SuperMário

Morrendo estilo SuperMarioBros
Descrição: Neste tutorial encinarei como fazer que quando morrer o jogador pular e cair atravessando o chão e logo em seguida recomeçar a fase.
Dificuldade: Iniciante
Matérial: Sprite do jogador vivo,morrendo e um chão ou parede, como preferir.






Para começar crie dois objetos, objVivo,objMorto e objSolido, no objVivo coloque a sprite do jogador vivo, em seu Step coloque:
if place_free(x,y+2){gravity=1} //Se estiver livre de colisões 2 pixels abaixo, a gravidade será 1 else //senão gravity=0 //a gravidade será 0

Este código cria a gravidade do objVivo.
Agora no objSolido marque sólido e coloque o sprite do chão, e novamente ao objVivo coloque na colisão com o objSolido:
if not place_free(x+hspeed,y) { hspeed=0 } else { move_contact_solid(direction,16) vspeed=0 }

Isto faz que quando o objVivo colidir com o objMorto ele pare de se movimentar, mas somente para baixo.
Agora no objMorto deph(Deph ou Depht?):-45, no seu Create coloque:
vspeed=-12 image_speed=0.2 gravity_direction=270 gravity=0.4

Isto cria as váriaveis do objMorto, incluindo a gravidade, e agora no Outside Room:
if vspeed>28 instance_destroy() transition_kind=21 room_restart() }

Isto faz que ele pule e quando sair da tela morrer e recomeçar a fase com um efeito Blend. No caso da fase ter música coloque no final do código, antes do } sound_stop_all().
Agora pronto, é só testar e morrer e ver o que acontece, no caso de fazer isto no Outside Room, creio que nao dará certo, e recomendo criar um objeto invísivel para fazer que ele morra ao cair num buraco.
Próximo tutorial:Criando uma Plataforma Fantasma
Expilcação:Objeto não sólido por baixo, mas sólido por cima.



Até! flw

0 comentários:

Postar um comentário

A equipe Tutorialistas Agradece o seu comentário!

 
Coding Lux © 2010 | Designed by Trucks, in collaboration with MW3, Broadway Tickets, and Distubed Tour