Conectar-se
Quem está conectado
16 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 16 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 17/11/2012
Número de Mensagens : 138
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 30

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

[ajuda]como fazer objeto seguir com gravidade

em Sab 17 Ago 2013, 19:30
olá pessoal!
alguem pode me explicar, como faço para fazer um inimigo, quando o perssonagem estiver em uma certa distancia, o inimigo comessar a seguir o perssonagem, sem que ele avoe ou comesse a pular, e com a gravidade?


Última edição por Bruno_13 em Dom 18 Ago 2013, 10:56, editado 2 vez(es)
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6041
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Sab 17 Ago 2013, 19:38
Um jeito que funcionaria perfeitamente é um 'replay' do que o personagem fez. Isso pode ser visto no jogo Super Shit Boy, do Willian Lima.

Se você gostou da ideia, posso tentar fazer algo relacionado ou achar um exemplo já pronto.

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 03/06/2013
Número de Mensagens : 134
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 22

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Sab 17 Ago 2013, 19:38
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/04/2013
Número de Mensagens : 354
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 40

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Sab 17 Ago 2013, 21:39
nois dois estamos com o mesmo problema no nosso jogo o jogo é um plataforma missingno não em top-view!
avatar
Ranking : Nota D
Notas recebidas : D+D
Data de inscrição : 05/10/2010
Número de Mensagens : 836
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 12

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Sab 17 Ago 2013, 23:14
coloca no step do inimigo:
Código:
if distance_to_object(obj_personagem)<200 {
if x>obj_personagem.x hspeed=-5;
if x<obj_personagem.x hspeed=5
}
eu nao testei, mas é por aí. Se o inimigo tiver a menos de 200 pixels de distancia do player, inimigo se moverá:
-pra direita, caso personagem esteja à direita dele;
- pra esquerda, caso personagem esteja à esquerda dele.
avatar
Data de inscrição : 14/08/2013
Número de Mensagens : 76
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 6
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 08:43
ele segue blz mas não devia do bloco da plataforma nem pula
avatar
Ranking : Nota B
Notas recebidas : E + B+B
Data de inscrição : 02/06/2009
Número de Mensagens : 513
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 27

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 10:21
fala ai pessoal, blz? Eu faço isso de uma certa forma,
Mas caso alguém tenha um jeito + eficiente, seria bom postar aqui .
Spoiler:
Bom, o Inimigo está seguindo o Player, mas então há um "degrau" ou "bloco" a sua frente. E ele fica preso.

Dentro do mesmo código que move o Inimigo para Esquerda e Direita, no Step,
vc pode verificar se há algum bloco a sua frente:
para Esquerda:
Código:
if( !(place_free(x -20,y)) and (place_free(x -20,y-50)))
{
    if !(place_free(x,y+1)) {
     vspeed = - 13; }
}
Isso faria ele "pular", então vc deve colocar Gravidade nele, igual ao do Player.
Mas isso não discrimina qual o objeto , então ele pularia se houver qualquer
coisa a sua frente.
avatar
Data de inscrição : 17/11/2012
Número de Mensagens : 138
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 30

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 10:43
ele segue o player, mais fica tremendo, tem como consertar isto?
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6041
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 11:20
Código:
dist = distance_to_object(obj_personagem);
if (dist < 200)
hspeed = sign(obj_personagem.x - x) * 5 * (abs(dist) > 5);

if (!place_free(x, y+1) && (!place_free(x -20, y) || !place_free(x+20, y)))
vspeed = -13;
Isso fará com que ele siga apenas se a distância for maior que 5 e menor que 200. Também fará com que pule obstáculos simples.

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Data de inscrição : 29/05/2013
Número de Mensagens : 212
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 11:29
@PedroX escreveu:
Código:
dist = distance_to_object(obj_personagem);
if (dist < 200)
hspeed = sign(obj_personagem.x - x) * 5 * (abs(dist) > 5);

if (!place_free(x, y+1) && (!place_free(x -20, y) || !place_free(x+20, y)))
vspeed = -13;
Isso fará com que ele siga apenas se a distância for maior que 5 e menor que 200. Também fará com que pule obstáculos simples.
O que é "abs" é "sign"?
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6041
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 11:36
abs(x) Returns the absolute value of x.
sign(x) Returns the sign of x (-1, 0 or 1).
abs() torna o número positivo.

sign() retorna o sinal (negativo, neutro, positivo)

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Data de inscrição : 29/05/2013
Número de Mensagens : 212
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 11:39
entendi!
avatar
Data de inscrição : 17/11/2012
Número de Mensagens : 138
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 30

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [ajuda]como fazer objeto seguir com gravidade

em Dom 18 Ago 2013, 15:05
mais quando pulamos em cima ele continua tremendo
Conteúdo patrocinado

Re: [ajuda]como fazer objeto seguir com gravidade

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum