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
» Retorno da GMBR!!!
por theguitarmester Ter 19 Mar 2024, 22:38

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» 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

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


Quando inimigo encosta joga player longe

5 participantes

Página 1 de 2 1, 2  Seguinte

Ir para baixo

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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 : 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

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