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

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Quando inimigo encosta joga player longe

5 participantes

Página 1 de 2 1, 2  Seguinte

Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 00:00

Código:


if (global.matar=false){
with (_obj_jogador){
if (image_xscale=1 ){

}
if (image_xscale=-1){



}
}
}


tipo ai está meu código só que vcs podem perceber que nos dois if (image_xscale) não há variaveis não há nada, eu queria saber como faz pra tipo, quando o jogador encostar no inimigo, tipo só encostar, o inimigo dar um impulso nele pra tras e pra cima, tipo como se o player sai-se voando na diagonal, tipo quando um inimigo fortao pega o player e joga longe, qual comando uso para gerar uma movimentaçao do jogador em direção diagonal?

tipo aqui ta uma imagem explicando, o carinha da direita é o inimigo, ele da um soco, e o carinha da esquerda ( o jogador ) sai vuando na direção da flecha vermelha
(canto esquerdo superior) https://imgur.com/TVW6jG3
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 08:41

Olá Isquilo.
Talvez isso funcione tente ai.

if (global.matar=false){
with (_obj_jogador){
if (image_xscale=1 ){
vspeed=-10 x-=8;
}
if (image_xscale=-1){
vspeed=-10 x+=8;


}
}
}
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 12:32

estou usando esse seu código ai Black e deu tudo certo, mas o problema é que depois que o jogador leva o primeiro ataque ele fica infinitamente pulando pra cima, será q vc pode me ajudar a fazer tipo para o jogador só executar uma vez essa funçao ai de vspeed e tals porque fica repetindo
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por AxeInLine Seg 02 Mar 2015, 12:50

Usa alguma variavel para isso.
Tipo:
Código:
//create
efeito = true;//pode mudar o nome

//step
if (global.matar=false){
with (_obj_jogador){
if (efeito = true){
if (image_xscale=1 ){
vspeed=-10 x-=8;
}
if (image_xscale=-1){
vspeed=-10 x+=8;

}
alarm[0] = 10;//ou outro alarm sem utilidade
efeito = false;
}
}
}
//alarm0
efeito = true;

Acho que isso pode dar certo, testa ai e fala!
A, e cara, tenta retornar o valor da variavel global.matar para true depois da ação, talvez também de (se ela for para poder fazer a ação de pular).
AxeInLine
AxeInLine

Data de inscrição : 23/03/2014
Reputação : 40
Número de Mensagens : 211
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Mateus O de Andrade Seg 02 Mar 2015, 13:53

Boa tarde Esquilo,
Como o colega acime disse, é só reativar a variável.
Imagino que quando o inimigo toque o player ele mude ela para false.
Dai a expressão é checada se está false para executar o evento.
Basta acrescentar no evento global.matar=true

Código:

//step
if (global.matar=false)
{
with (_obj_jogador)
{
  {
   if (image_xscale=1 )
   {
   vspeed=-10 x-=8;
  global.matar=true
   }
   if (image_xscale=-1)
      {
      vspeed=-10 x+=8;
     global.matar=true
      }
   }
}

Isso deve resolver.
Qualquer coisa poste ai novamente.
Abração.
Mateus O de Andrade
Mateus O de Andrade

Games Ranking : Nota D

Data de inscrição : 25/03/2014
Reputação : 37
Número de Mensagens : 410
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 13:57

Acho isso funciona:


Create
Código:
pula=false;

step

Código:
if place_meeting(x,y,objcolisao) {pula=true}else{pula=false};

if pula=true{
if (global.matar=false){
with (_obj_jogador){
if (image_xscale=1 ){
vspeed=-10 x-=8;
}
if (image_xscale=-1){
vspeed=-10 x+=8;


}
}
}
}
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 19:00

Mateus O de Andrade escreveu:Boa tarde Esquilo,
Como o colega acime disse, é só reativar a variável.
Imagino que quando o inimigo toque o player ele mude ela para false.
Dai a expressão é checada se está false para executar o evento.
Basta acrescentar no evento global.matar=true

Código:

//step
if (global.matar=false)
{
with (_obj_jogador)
{
  {
   if (image_xscale=1 )
   {
   vspeed=-10 x-=8;
  global.matar=true
   }
   if (image_xscale=-1)
      {
      vspeed=-10 x+=8;
     global.matar=true
      }
   }
}

Isso deve resolver.
Qualquer coisa poste ai novamente.
Abração.

global.matar=true é quando o jogador pula em cima do inimigo faz uma checagem e se global.matar=true o inimigo morre esmagado, por isso estou usando o global.matar=false
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 19:14

Pessoal o problema que estou tendo é que tipo, o jogador depois de colidir uma vez com o inimigo ele fica pra sempre realizando a açao de pular lá
tipo quando ele incosta no inimigo isso acontece
vspeed=-10 x-=8;
e também coloquei uma variavel
efeito=false
se efeito=false nao vai jogar o player longe
mas o problema é fazer isso

if (efeito=false){

}

eu não sei como fazer para tipo criar uma ação que iniba esse comando
vspeed=-10 x-=8;

ja tentei colocar vspeed=0 x=0 mas não deu, estou em duvida do que fazer para inibir esse vspeed=-10 x-=8


Usuário advertido por "Flood" (+10%)
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 20:00

Cuidado com o flood Isquilo.
Olha me envia uma GMK que eu arrumo isso em segundos.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 21:20

Ai meu deus que negocio é esse, nossa que grande flood que eu fiz em , dois comentários não é flood, flood de verdade seriam varias mensagens, meu deus pra que essa frescura toda, Black Horn em relação ao meu projeto eu gostaria de adquirir ajuda apenas, entregar meu projeto é algo muito arriscado mesmo que seja para alguem como você, por isso estou pedindo da forma mais amigavel por isso porfavor entenda isso da melhor forma possível, eu só quero saber como fazer o code funcionar
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Willy Seg 02 Mar 2015, 21:53

Autor escreveu:Ai meu deus que negocio é esse, nossa que grande flood que eu fiz em , dois comentários não é flood, flood de verdade seriam varias mensagens, meu deus pra que essa frescura toda
Sim, é flood (double post) e isso não é tolerado por aqui. Frescura ou não, são os termos de permanência do fórum e esterá sujeito a punições.

Quanto ao seu problema...
Se você definir vspeed=-10, a velocidade do objeto será constantemente -10. Se quer que o efeito seja momentâneo, use vspeed-=10; (note que troquei o sinal de menos com o sinal de igual)
Willy
Willy

Games Ranking : Nota A

Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Reputação : 264
Número de Mensagens : 1890
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 2 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://willy-gmbr.blogspot.com/

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 21:56

Willy falando sobre o mesmo assunto.
Como parar o player com esse código?
Código:
if place_meeting(x,y,obj2){
if image_xscale=1   {motion_set(135,3)};
if image_xscale=-1  {motion_set(45,3)};
};

Quando ele colidi ela anda para trás sem fim, e até o momento não consegui resolver.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Willy Seg 02 Mar 2015, 22:00

A explicação é a mesma pro caso do vspeed. A diferença é que motion_set define uma velocidade constante, e motion_add adiciona uma velocidade.
Willy
Willy

Games Ranking : Nota A

Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Reputação : 264
Número de Mensagens : 1890
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 2 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://willy-gmbr.blogspot.com/

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 22:03

Eu ja tentei das duas formas e de todas as formas que consegui imaginar, e não consegui resolver.
E eu acho que motion_set seria melhor do que usar o vspeed e o x, por isso estou tentando fazer com o mesmo.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 22:08

Obrigado black horn, realmente está sendo complicado fazer isso não importa o jeito que for feito, mas não consigo fazer de forma alguma, willy da uma ajuda pra nós ai
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 22:14

Depois de muito custo consegui fazer.

Coloque no create;

Código:
horn=noone;

No step:
Código:

if place_meeting(x+1,y,obj2){
horn=true
if image_xscale=1  {motion_add(135,6);alarm[0]=8;};
}

if place_meeting(x-1,y,obj2){
horn=true
if image_xscale=-1  {motion_add(45,6);alarm[0]=8;};
}

if horn=false{speed=0;horn=noone};

No alarm[0];

Código:
horn=false;


Flw Isquilo.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Willy Seg 02 Mar 2015, 22:19

Ah, me desculpem... motion_add adiciona um valor ao montante, por isso o mesmo continuará em movimento.
Se quiserem parar o movimento, basta setar speed=0; Se ainda sim continuar, significa que o código do motion_set ainda está sendo setado.
Willy
Willy

Games Ranking : Nota A

Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Reputação : 264
Número de Mensagens : 1890
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 2 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://willy-gmbr.blogspot.com/

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 22:20

Ok willy, ja tinha resolvido o problema.

Acho que deu por encerrado o tópico, a não ser que o autor queria fazer outra pergunta ou não foi solucionado o caso.
Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Isquilo_Roedor Seg 02 Mar 2015, 22:26

Eu coloco esse codigo ai no obj_jogador? eu nao entendi o que por no "obj2"
Isquilo_Roedor
Isquilo_Roedor

Games Ranking : Nota D

Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Reputação : 18
Número de Mensagens : 336
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Wendryos Seg 02 Mar 2015, 22:26

obj2 é o cara da colisão (Inimigo), então coloca no objeto jogador.

Wendryos
Wendryos

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 21/04/2014
Reputação : 12
Número de Mensagens : 194
Prêmios : inimigo - Quando inimigo encosta joga player longe Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1

Ir para o topo Ir para baixo

inimigo - Quando inimigo encosta joga player longe Empty Re: Quando inimigo encosta joga player longe

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Página 1 de 2 1, 2  Seguinte

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos