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
Personagem encostando em seu inimigo, e não está acontecendo nada!
+3
Sr. Sinistro
Rhino
Klash
7 participantes
Página 1 de 2
Página 1 de 2 • 1, 2
Personagem encostando em seu inimigo, e não está acontecendo nada!
Estou criando um jogo que eu vi na NET, só que estou com um problema. Quando o personagem encosta em seu inimigo não acontece nada, o certo seria, se ele encostar, ele perde ou volta ao início. Como faço para com certar isso?
Uma imagem para ter a noção do jogo que eu estou criando:
Grato!
Uma imagem para ter a noção do jogo que eu estou criando:
Grato!
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Você pode usar os comandos room_restart, pois assim, quando o personagem encostar no inimigo, automaticamente a room irá reiniciar, assim como tudo que está nela. Por exemplo:
Evento de Colisão do personagem com o inimigo:
Não sei se você quer que a room reinicie também, mas com este código, o personagem volta pro começo dela também.
Evento de Colisão do personagem com o inimigo:
- Código:
room_restart() //Tudo na room irá ficar do jeito que você programou
Não sei se você quer que a room reinicie também, mas com este código, o personagem volta pro começo dela também.
Rhino- Games Ranking :
Notas recebidas : C-B
Data de inscrição : 17/04/2010
Reputação : 11
Número de Mensagens : 136
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Huumm, deu certo!Rhino escreveu:Você pode usar os comandos room_restart, pois assim, quando o personagem encostar no inimigo, automaticamente a room irá reiniciar, assim como tudo que está nela. Por exemplo:
Evento de Colisão do personagem com o inimigo:
- Código:
room_restart() //Tudo na room irá ficar do jeito que você programou
Não sei se você quer que a room reinicie também, mas com este código, o personagem volta pro começo dela também.
Eu quero fazer assim agora:
1 - Colocar uma bandeira no final, e quando o personagem chegar lá ele passa de fase.
Objetivos:
1 - Colocar uma bandeira.
2 - Criar uma 2 fase.
3 - Quando passar pela fase 2 aparecer: "Parabéns! Você venceu".
Como posso fazer tudo isso?
Sou iniciante (:
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
1 - Evento de colisão do player com a bandeira
2 - É só criar mais uma room, após a primeira
3 - No evento de colisão do player com a bandeira, coloca:
- Código:
room_goto()//Dentro dos parênteses coloca a próxima room
2 - É só criar mais uma room, após a primeira
3 - No evento de colisão do player com a bandeira, coloca:
- Código:
show_message('')//Dentro das aspas coloque Parabéns, você venceu!
Sr. Sinistro- Data de inscrição : 23/06/2009
Reputação : 8
Número de Mensagens : 542
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Você pode fazer como o Edu4 falou, caso o objeto_bandeira seja quem vá controlar a passagem entre uma room ou outra.
Caso você queira que, por exemplo, ao sair da room, você passe de fase, você pode usar o comando Outside Room e colocar dentro dele:
Outside Room
É claro que se você fizer isso, tenha cuidado caso seu jogo possua buracos, pois dai você teria que criar um objeto para fazer com que o jogador morra e não deixá-lo passar para a próxima room!
Caso você queira que, por exemplo, ao sair da room, você passe de fase, você pode usar o comando Outside Room e colocar dentro dele:
Outside Room
- Código:
room_goto(nome_da_próxima_room) //Faz com que você vá a uma room especificada
É claro que se você fizer isso, tenha cuidado caso seu jogo possua buracos, pois dai você teria que criar um objeto para fazer com que o jogador morra e não deixá-lo passar para a próxima room!
Rhino- Games Ranking :
Notas recebidas : C-B
Data de inscrição : 17/04/2010
Reputação : 11
Número de Mensagens : 136
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Para colocar vidas, basta colocar no Create:
vidas=3 //Define as vidas para 3
Agora, na colisão com o inimigo:
//Tira uma vida e reinicia room
vidas -=1
room_restart()
vidas=3 //Define as vidas para 3
Agora, na colisão com o inimigo:
//Tira uma vida e reinicia room
vidas -=1
room_restart()
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
As 2 eu consegui fazer, só a 3 que não entendi. Tem como explicar em detalhes como fazer?Edu4 escreveu:1 - Evento de colisão do player com a bandeira
- Código:
room_goto()//Dentro dos parênteses coloca a próxima room
2 - É só criar mais uma room, após a primeira
3 - No evento de colisão do player com a bandeira, coloca:
- Código:
show_message('')//Dentro das aspas coloque Parabéns, você venceu!
Eu sou iniciante!
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Evento de colisão do player com a bandeira:
- Código:
show_message('Parabéns, você venceu!')
andreh- Games Ranking :
Notas recebidas : C
Data de inscrição : 09/03/2011
Reputação : 3
Número de Mensagens : 183
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Consegui, apareceu uma tela " Parabéns, você venceu!, ai tem a opção de clicar em OK, só quando clica não sai do jogo.andreh escreveu:Evento de colisão do player com a bandeira:Quando o player colidir com a bandeira vai dar essa mensagem, mas preste atenção, vc vai ter q fazer 2 bandeiras, uma pra passar de fase e outra pro fim do jogo, senão ele vai dar a mensagem e ainda passar pra proxima room.
- Código:
show_message('Parabéns, você venceu!')
Como faço isso?
Quando clicar em OK, aparece outra tela "Deseja continuar?", ai vai ter as opções "Sim" e "Não". Se apertar "Sim", começa de novo. Se apertar "Não" fecha a janela.
Mais duas pergunta!
1 - Se o personagem encostar volta ao começo. Como eu faço para mudar isso? Quero fazer assim:
Quando encostar no personagem perde 1 vida e volta ao começo.
OBS.: Tem que fazer as vidas que ele tem!
2 - Como colocar som?
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Sobre a mensagem faça isso:
Sobre a vida:
Create do player:
Colisão do player com o inimigo:
Marque a room como persistent
Sobre o som: Você quer som de fundo ou efeito sonoro?
- Código:
mensagem = show_message_ext('Parabéns, você venceu! Deseja continuar?','Sim','','Não')
if mensagem = 1
{game_restart()}
else
if mensagem = 3
{game_end()}
Sobre a vida:
Create do player:
- Código:
lives = 3 //Mude o 3 para o numero de vida que vc quiser
Colisão do player com o inimigo:
- Código:
if lives>1
lives -= 1
room_restart()
else
show_message('Você perdeu!')
game_restart()
Marque a room como persistent
Sobre o som: Você quer som de fundo ou efeito sonoro?
andreh- Games Ranking :
Notas recebidas : C
Data de inscrição : 09/03/2011
Reputação : 3
Número de Mensagens : 183
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
1 - Apareceu a mensagem, só que quando clica em "Continuar" ou "Sair" não acontece nada.andreh escreveu:Sobre a mensagem faça isso:
- Código:
mensagem = show_message_ext('Parabéns, você venceu! Deseja continuar?','Sim','','Não')
if mensagem = 1
{game_restart()}
else
if mensagem = 3
{game_end()}
Sobre a vida:
Create do player:
- Código:
lives = 3 //Mude o 3 para o numero de vida que vc quiser
Colisão do player com o inimigo:
- Código:
if lives>1
lives -= 1
room_restart()
else
show_message('Você perdeu!')
game_restart()
Marque a room como persistent
Sobre o som: Você quer som de fundo ou efeito sonoro?
2 - Como assim Create do Player?
3 - Como faço essa colisão do Player com o Inimigo? Tem várias opções "Move Fixed" etc.
4 - Efeito sonoro!
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Hmmm... Acho que colocar o if na linha do else resolveria.
O evento Create. Você sabe o que é um evento Create, não sabe? Add Event -> Create
Colisão é com eventos, não com ações. Add Event -> Collision -> (Escolha o objeto que vai colidir) -> Coloque o código lá
- Código:
mensagem = show_message_ext('Parabéns, você venceu! Deseja continuar?','Sim','','Não')
if mensagem = 1
{game_restart()}
else if mensagem = 3
{game_end()}
O evento Create. Você sabe o que é um evento Create, não sabe? Add Event -> Create
Colisão é com eventos, não com ações. Add Event -> Collision -> (Escolha o objeto que vai colidir) -> Coloque o código lá
Markituh- Games Ranking :
Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
1 - Pra fazer uma janela de perguntas no Game Maker, você precisa fazer o seguinte:
2 - O Create do Player que ele se refere é ao Evento Create, cujo o símbolo é uma lâmpada. Nele, você deve declarar as variáveis que você quer que sejam usadas tanto nele (variáveis comuns) como em todos os objetos (variáveis globais).
3 - Para criar um Evento de Colisão, você tem que clicar em Add e depois naquelas duas setinhas vermelhas. Nisso, você deve especificar com qual objeto que você quer fazer a colisão. No caso, seria com o seu inimigo, portanto, na hora de selecionar o objeto, selecione o objeto_inimigo.
4 - Para adicionar um efeito sonoro, você pode ir na pasta Sounds, criar o som, depois clicar em Load Sound e escolher o som desejado. Se for uma música de fundo, selecione a opção (que fica logo abaixo) "Background Music" ou se for um efeito sonoro comum, como som de pontos, por exemplo, selecione "Normal Sound".
EDIT: Verdade Markituh, comi bola ali. Valeu pela correção.
- Código:
switch (show_message_ext("Parabéns, você venceu! Gostaria de continuar?","Sim","","Não"))
{
case 1:
room_goto(nome_da_room)
break
case 3:
//alguma ação que você quer que ocorra caso a opção escolhida seja NÃO
break
}
2 - O Create do Player que ele se refere é ao Evento Create, cujo o símbolo é uma lâmpada. Nele, você deve declarar as variáveis que você quer que sejam usadas tanto nele (variáveis comuns) como em todos os objetos (variáveis globais).
3 - Para criar um Evento de Colisão, você tem que clicar em Add e depois naquelas duas setinhas vermelhas. Nisso, você deve especificar com qual objeto que você quer fazer a colisão. No caso, seria com o seu inimigo, portanto, na hora de selecionar o objeto, selecione o objeto_inimigo.
4 - Para adicionar um efeito sonoro, você pode ir na pasta Sounds, criar o som, depois clicar em Load Sound e escolher o som desejado. Se for uma música de fundo, selecione a opção (que fica logo abaixo) "Background Music" ou se for um efeito sonoro comum, como som de pontos, por exemplo, selecione "Normal Sound".
EDIT: Verdade Markituh, comi bola ali. Valeu pela correção.
Última edição por Rhino em Sáb 30 Abr 2011, 15:55, editado 1 vez(es)
Rhino- Games Ranking :
Notas recebidas : C-B
Data de inscrição : 17/04/2010
Reputação : 11
Número de Mensagens : 136
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
1 - Mas eu testei e deu certo, vc não tirou nd do código né?
2 - Evento Create do objeto player
3 - Abra o objeto player > Add Event > Collision > objeto inimigo
Então coloque o código q eu falei antes.
4 - Na colisão com alguma coisa (o mesmo esquema de cima), coloque o código:
Testa ae e fala o resultado
2 - Evento Create do objeto player
3 - Abra o objeto player > Add Event > Collision > objeto inimigo
Então coloque o código q eu falei antes.
4 - Na colisão com alguma coisa (o mesmo esquema de cima), coloque o código:
- Código:
sound_play(nome do som)
Testa ae e fala o resultado
andreh- Games Ranking :
Notas recebidas : C
Data de inscrição : 09/03/2011
Reputação : 3
Número de Mensagens : 183
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Em verdade Rhino, a sua declaração switch está equivocada. A função só retorna 0 caso for pressionado ESC, 1 para a primeira opção, 2 para a segunda e 3 para a terceira. E já que temos o Sim na primeira, a segunda vazia, e o Não na terceira, os cases iam ser 1 e 3. Usar switch é um método prático, então se quiseres:
- Código:
switch (show_message_ext("Parabéns, você venceu! Gostaria de continuar?","Sim","","Não"))
{
case 1:
room_goto(nome_da_room)
break;
case 3:
//alguma ação que você quer que ocorra caso a opção escolhida seja NÃO
break;
}
Markituh- Games Ranking :
Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Sim, eu sei que é para fazer isso. Add Event > Collision > Escolher o objeto. Só que eu não sei onde colocar esse código. Eu tenho que clicar em "Move Fixed", "Move Free", aonde?Markituh escreveu:Hmmm... Acho que colocar o if na linha do else resolveria.
- Código:
mensagem = show_message_ext('Parabéns, você venceu! Deseja continuar?','Sim','','Não')
if mensagem = 1
{game_restart()}
else if mensagem = 3
{game_end()}
O evento Create. Você sabe o que é um evento Create, não sabe? Add Event -> Create
Colisão é com eventos, não com ações. Add Event -> Collision -> (Escolha o objeto que vai colidir) -> Coloque o código lá
Tem MSN para poder ajudar melhor?
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Não, não. O q estamos te passando são códigos. Códigos vc coloca em outro lugar. Veja o retangulo maior q vc marcou na sua foto, no canto direito dele tem varias abas, clique na aba Control, nessa aba, vai ter um icone com uma pasta desenhada, se vc deixar o mouse sobre o icone vai aparecer o nome "Execute Code", é aí q vc coloca o q a gente te passou!
andreh- Games Ranking :
Notas recebidas : C
Data de inscrição : 09/03/2011
Reputação : 3
Número de Mensagens : 183
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Agora sim (:andreh escreveu:Não, não. O q estamos te passando são códigos. Códigos vc coloca em outro lugar. Veja o retangulo maior q vc marcou na sua foto, no canto direito dele tem varias abas, clique na aba Control, nessa aba, vai ter um icone com uma pasta desenhada, se vc deixar o mouse sobre o icone vai aparecer o nome "Execute Code", é aí q vc coloca o q a gente te passou!
Deu tudo certo. Apenas uma problema!
if lives>1
lives -= 1
room_restart()
else
show_message('Você perdeu!')
game_restart()
Executei o jogo, e deu erro na linha 4 else. O que eu faço?
Como eu coloco um menu em cima mostrando quantas vidas o player tem?
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Sempre use "{" depois dos códigos e sempre termine com "}". São as famosas chaves. Assim, você evita de gerar possíveis bugs. No caso, vai ficar assim:
- Código:
if lives>1
{
lives -= 1
room_restart()
}
else
{
show_message('Você perdeu!')
game_restart()
}
Rhino- Games Ranking :
Notas recebidas : C-B
Data de inscrição : 17/04/2010
Reputação : 11
Número de Mensagens : 136
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Personagem encostando em seu inimigo, e não está acontecendo nada!
Fiz isso, só que quando ele encosta 3 vezes no inimigo, apenas aparece "Você perdeu". Eu quero colocar o menu em cima, mostrando o tanto de vidas que o player tem.Rhino escreveu:Sempre use "{" depois dos códigos e sempre termine com "}". São as famosas chaves. Assim, você evita de gerar possíveis bugs. No caso, vai ficar assim:
- Código:
if lives>1
{
lives -= 1
room_restart()
}
else
{
show_message('Você perdeu!')
game_restart()
}
Página 1 de 2 • 1, 2
Tópicos semelhantes
» O que está acontecendo afinal ? Consegui fazer o game maker entrar em "contradição" de argumentos externos ?
» Oq esta acontecendo com os links?
» [Pergunta]O Que está acontecendo no meu GM8.1?
» checar se evento não esta acontecendo
» Oque pode está acontecendo ?
» Oq esta acontecendo com os links?
» [Pergunta]O Que está acontecendo no meu GM8.1?
» checar se evento não esta acontecendo
» Oque pode está acontecendo ?
Página 1 de 2
Permissões neste sub-fórum
Não podes responder a tópicos
|
|