Entrar
Últimos assuntos
» Problema ao entrar por uma porta e voltar por elapor aminaro Seg 06 maio 2024, 10:08
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43
» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16
» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18
» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30
» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07
» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45
» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51
» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31
» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11
» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
Como fazer com que o herói morra e mude o sprite para ele morto?
4 participantes
Página 1 de 1
Como fazer com que o herói morra e mude o sprite para ele morto?
Olá pessoal, tudo bom?
Eu estou com a seguinte dúvida:
Descrição: No meu jogo, quando o personagem encosta em um espinho ele morre e volta para o início da fase.
Dúvida: Eu quero que, quando o personagem encoste nesse tal objeto, ele mude para um sprite dele morto, fique cerca de 1 segundo com esse sprite, e depois volte para o início da fase com o sprite do personagem normal.
Detalhe: Eu quero que, se o personagem morrer virado para a esquerda, troque para o sprite dele morto virado para a esquerda, e se ele morrer virado para a direita, troque para o sprite dele morto virado para a direita.
O que eu já tentei fazer: No obj_heroi está assim: Add Event -> Colision (obj_espinho) -> jump to the start position; Set The Health Relative To -20; Play Sound Dano. Aí eu tentei fazer isso: Nessa mesma aba de colisão com o obj_espinho eu coloquei Change Sprite e selecionei o Sprite do heroi morto, mas não funcionou, ou funcionou e foi tão rápido que está imperceptível, pois o herói morre e volta muito rápido para o início da fase.
Abraços!
Eu estou com a seguinte dúvida:
Descrição: No meu jogo, quando o personagem encosta em um espinho ele morre e volta para o início da fase.
Dúvida: Eu quero que, quando o personagem encoste nesse tal objeto, ele mude para um sprite dele morto, fique cerca de 1 segundo com esse sprite, e depois volte para o início da fase com o sprite do personagem normal.
Detalhe: Eu quero que, se o personagem morrer virado para a esquerda, troque para o sprite dele morto virado para a esquerda, e se ele morrer virado para a direita, troque para o sprite dele morto virado para a direita.
O que eu já tentei fazer: No obj_heroi está assim: Add Event -> Colision (obj_espinho) -> jump to the start position; Set The Health Relative To -20; Play Sound Dano. Aí eu tentei fazer isso: Nessa mesma aba de colisão com o obj_espinho eu coloquei Change Sprite e selecionei o Sprite do heroi morto, mas não funcionou, ou funcionou e foi tão rápido que está imperceptível, pois o herói morre e volta muito rápido para o início da fase.
Abraços!
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
o esquema de esperar 1 segundo pode ser feito com alarmes...aqui esta um otimo tutorial sobre alarmes https://gmbr.forumeiros.com/game-maker-f36/alarmes-wtf-t3936.htm . não poderei te ajudar com o resto
golfinho hipie assasino- Data de inscrição : 22/10/2008
Reputação : 0
Número de Mensagens : 286
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
Obrigado golfinho hipie assasimo!!!
Vou fazer o tutorial do alarme.
Se alguém souber resolver o restante das dúvidas, posta aew
Vou fazer o tutorial do alarme.
Se alguém souber resolver o restante das dúvidas, posta aew
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
Você está usando o código do meu tutorial sobre jogos de plataformas? É simples, então.
Se você observar o início daquele código (no evento Create) verá que eu declarei uma variável chamada lado. Se essa variável fosse igual à 1, o personagem estaria virado para a direita. Se fosse 0, estaria virado para a esquerda.
Crie um objeto que seria seu personagem morto. Nele, coloque o sprite dele morto e esse código no evento Create:
Esse código seta o Alarm 0 para 1 multiplicado pela room_speed, que normalmente tem valor igual à 30. Se você ler meu tutorial sobre alarmes, verá que pra obter um segundo, seria necessário colocar 30 ali. Como a room_speed está em 30, 1 seria basicamente o número de segundos. Se você colocar 2 ao invés de 1, demoraria 2 segundos.
Agora, coloque esse código no evento Alarm 0:
Para a questão dos lados, basta colocar o seguinte código no evento Step:
Deixei o código bem comentado para que você possa entender e aprender como funciona, e não apenas copiar o código, como muitos fazem. (:
Agora, abra o objeto do jogador. Coloque isso no evento de colisão com os espinhos:
Well, vamos às explicações. O comando instance_create(posição x, posição y, nome do objeto serve para criar um objeto.
sound_play(nome do som) é outro comando. Este aqui serve para tocar um som que você escolher.
Por fim, instance_destroy() serve para destruir o objeto que executou esse código.
Espero que tenha entendido tudo. Notei que você gosta de usar Drag 'n Drop, então usei códigos de GML bem básicos e expliquei cada um deles, para que você possa iniciar na linguagem facilmente.
Qualquer dúvida ou erro, poste.
Se você observar o início daquele código (no evento Create) verá que eu declarei uma variável chamada lado. Se essa variável fosse igual à 1, o personagem estaria virado para a direita. Se fosse 0, estaria virado para a esquerda.
Crie um objeto que seria seu personagem morto. Nele, coloque o sprite dele morto e esse código no evento Create:
- Código:
alarm[0] = 1 * room_speed;
Esse código seta o Alarm 0 para 1 multiplicado pela room_speed, que normalmente tem valor igual à 30. Se você ler meu tutorial sobre alarmes, verá que pra obter um segundo, seria necessário colocar 30 ali. Como a room_speed está em 30, 1 seria basicamente o número de segundos. Se você colocar 2 ao invés de 1, demoraria 2 segundos.
Agora, coloque esse código no evento Alarm 0:
- Código:
room_restart();
Para a questão dos lados, basta colocar o seguinte código no evento Step:
- Código:
if (lado == 1) // Se a variável lado for igual à 1
{ //Abre a chave
image_xscale = 1; //Seta a variável image_xscale para 1, ou seja, o sprite fica normal
} //Fecha a chave
else //Se a variável lado NÃO for igual à 1
{ //Abre a chave
image_xscale = -1; //Seta a variável image_xscale para -1, ou seja, inverte o sprite horizontalmente
} //Fecha a chave
Deixei o código bem comentado para que você possa entender e aprender como funciona, e não apenas copiar o código, como muitos fazem. (:
Agora, abra o objeto do jogador. Coloque isso no evento de colisão com os espinhos:
- Código:
oo = instance_create(x,y,obj_personagem_morto); //Cria um objeto do personagem morto na posição atual do personagem. oo foi uma variável que guarda a ID do objeto, para que eu possa me referir ao objeto que foi criado, e não a outro de nome igual que exista na room
oo.lado = lado; //Crio uma variável chamada lado no objeto do personagem morto. Nela, damos o mesmo valor da variável lado do personagem, para que fiquem virados para o mesmo lado
sound_play(som_personagem_morto); //Essa linha é opicional, serve pra tocar um som quando o personagem morrer. Se quiser, pode tirar ela
instance_destroy(); //Destroi o objeto do personagem
Well, vamos às explicações. O comando instance_create(posição x, posição y, nome do objeto serve para criar um objeto.
sound_play(nome do som) é outro comando. Este aqui serve para tocar um som que você escolher.
Por fim, instance_destroy() serve para destruir o objeto que executou esse código.
Espero que tenha entendido tudo. Notei que você gosta de usar Drag 'n Drop, então usei códigos de GML bem básicos e expliquei cada um deles, para que você possa iniciar na linguagem facilmente.
Qualquer dúvida ou erro, poste.
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
CPinheiro, o seu tutorial está muito bom. Eu estou lendo os comentários para entender como funciona a programação no Game Maker.
Porém, ocorreu o seguinte erro: Quando o personagem encosta no espinho, ele fica com o sprite dele morto agarrado no espinho e não volta para o início da fase. Acho que teria que colocar em forma de código o evento "Jump to the start position"
---------------------------------
EDIT: Quando o personagem encosta no espinho, aparece ele morto só virado pra esquerda, independente da posição que ele esteja.
Eu estou usando a engine de plataforma que você criou mesmo.
Porém, ocorreu o seguinte erro: Quando o personagem encosta no espinho, ele fica com o sprite dele morto agarrado no espinho e não volta para o início da fase. Acho que teria que colocar em forma de código o evento "Jump to the start position"
---------------------------------
EDIT: Quando o personagem encosta no espinho, aparece ele morto só virado pra esquerda, independente da posição que ele esteja.
Eu estou usando a engine de plataforma que você criou mesmo.
Última edição por Viper7 em Qua 02 Dez 2009, 19:52, editado 2 vez(es)
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
IRMAIZINHO!!!!
nao sei como você fez o movimento... mas não custa nada ver se isso funciona...
cria um alarme (0), dentro dele você coloca o...
na colisão com o espinho...
alarm[0]=60 ativa o alarme que você criou anteriormente, o alarme conta 60 passos de tempo para axecultar a ação de retornar ao inicio.
bem!!! não testei aqui. mas é basicamente isso. tenta aí pra ver falow???
nao sei como você fez o movimento... mas não custa nada ver se isso funciona...
cria um alarme (0), dentro dele você coloca o...
- Código:
x=xstart;
y=ystart;
na colisão com o espinho...
- Código:
if (direction=0) // se a direção for direita
{
with (other) instance_destroy(); // destroi o espinho
sprite_index=morto_direita; // troca o sprite para morto direito
alarm[0]=60;
}
if (direction=180) // se a direção for esquerda
{
with (other) instance_destroy();
sprite_index=morto_esquerda; // troca o sprite para morto esquerdo
alarm[0]=60;
}
alarm[0]=60 ativa o alarme que você criou anteriormente, o alarme conta 60 passos de tempo para axecultar a ação de retornar ao inicio.
bem!!! não testei aqui. mas é basicamente isso. tenta aí pra ver falow???
diassis- Data de inscrição : 07/11/2009
Reputação : 0
Número de Mensagens : 312
Prêmios :
x 0 x 0 x 0
x 1 x 1 x 0
x 0 x 0 x 0
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
Beleza diassis, vou tentar o seu método aqui também com outro personagem.
-------------------------------
EDIT: Eu entendi o seu raciocínio diassis, mas eu executei o código e não aconteceu nada, rsrs.. parece que o código não estava no jogo. O que será que aconteceu?
-------------------------------
EDIT: Eu entendi o seu raciocínio diassis, mas eu executei o código e não aconteceu nada, rsrs.. parece que o código não estava no jogo. O que será que aconteceu?
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
Estranho isso. Era pra estar funcionando.
Nota: pro esquema do image_xscale dar certo, seu sprite tem que estar virado para a direita.
Bem, mude o código da morte para isso:
E isso no alarm 0:
Substitua os códigos.
Era pra ter funcionado antes, mas já que não funcionou, tente agora.
Nota: pro esquema do image_xscale dar certo, seu sprite tem que estar virado para a direita.
Bem, mude o código da morte para isso:
- Código:
oo = instance_create(x,y,obj_personagem_morto); //Cria um objeto do personagem morto na posição atual do personagem. oo foi uma variável que guarda a ID do objeto, para que eu possa me referir ao objeto que foi criado, e não a outro de nome igual que exista na room
oo.lado = lado; //Crio uma variável chamada lado no objeto do personagem morto. Nela, damos o mesmo valor da variável lado do personagem, para que fiquem virados para o mesmo lado
oo.xinicial = xstart;
oo.yinicial = ystart;
sound_play(som_personagem_morto); //Essa linha é opicional, serve pra tocar um som quando o personagem morrer. Se quiser, pode tirar ela
instance_destroy(); //Destroi o objeto do personagem
E isso no alarm 0:
- Código:
instance_create(xinicial,yinicial,obj_jogador);
Substitua os códigos.
Era pra ter funcionado antes, mas já que não funcionou, tente agora.
Re: Como fazer com que o herói morra e mude o sprite para ele morto?
CONSEGUI!!!
Grande Mestre CPinheiro, o seu primeiro tutorial está correto, funcionando perfeitamente. Eu tentei fazê-lo novamente aqui e funcionou. Na primeira vez em que eu tentei, eu coloquei alguns comandos em objetos errados. Eu ainda sinto um pouco de dificuldade em trabalhar com códigos, mas eu vou começar a ler o FAQ do Game Maker para aprender a trabalhar melhor com esses códigos.
Mais uma vez, obrigado pela ajuda e obrigado pelos dois tutoriais!
Obrigado também ao diassis, por ter tentado me ajudar!
Um grande abraço a todos!!!
Grande Mestre CPinheiro, o seu primeiro tutorial está correto, funcionando perfeitamente. Eu tentei fazê-lo novamente aqui e funcionou. Na primeira vez em que eu tentei, eu coloquei alguns comandos em objetos errados. Eu ainda sinto um pouco de dificuldade em trabalhar com códigos, mas eu vou começar a ler o FAQ do Game Maker para aprender a trabalhar melhor com esses códigos.
Mais uma vez, obrigado pela ajuda e obrigado pelos dois tutoriais!
Obrigado também ao diassis, por ter tentado me ajudar!
Um grande abraço a todos!!!
Tópicos semelhantes
» [Resolvido]como fazer que quando o objeto vá para cima ele mude de sprite e quando ele caia ele mude para outro sprite ?
» como fasso para fazer o sprite do inimigo transformar em morto quando a vida acabar?
» { Resolvido }Como fazer para que o player morra quando cair embaixo da room mais parar no lado e em cima da room !?
» como fazer mudar para sprite de pulo ao pular?
» [resolvido]Como fazer com que o background mude a cada inicialização do jogo?
» como fasso para fazer o sprite do inimigo transformar em morto quando a vida acabar?
» { Resolvido }Como fazer para que o player morra quando cair embaixo da room mais parar no lado e em cima da room !?
» como fazer mudar para sprite de pulo ao pular?
» [resolvido]Como fazer com que o background mude a cada inicialização do jogo?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos