Onde as mentes criativas se encontram!


 
Higor Melo
Membro
Membro
Autor
Mensagens: 42
Registrado em: Seg Mar 28, 2016 4:55 pm
Localização: SP

Player ser empurrado para trás ao atirar - TOPDOWN

Seg Out 16, 2017 9:25 pm

Como faço o player ser empurrado para trás ao atirar? O jogo é no estile TOPVIEW.
 
Avatar do usuário
Alex FC
Administrador
Administrador
Mensagens: 335
Registrado em: Dom Abr 24, 2016 11:50 pm
Localização: Itaporã-MS

Contato:

Re: Player ser empurrado para trás ao atirar - TOPDOWN

Qua Out 18, 2017 9:26 am

Fica complicado se você não postar o código de movimento e nem o de tiro. Não é qualquer código que vai se encaixar ao seu.

Ex: Se está manipulando as posições x e y diretamente, vai depender da sprite pra determinar qual é a direção:

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}


Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

speed = 5;
direction = direction + 180;


O código acima iria depender se está utilizando algum valor no friction ou alguma outra forma de parar o movimento continuo.

Enfim são suposições, sem o código que você está utilizando fica difícil dar a resposta com precisão. Ainda mais se tiver limitações como "não poder se mover enquanto se afasta".

FLWS!
Começando com o Game Maker? Olhou para assinatura certa!

Imagem

Tutoriais e vídeo aulas de programação! Clique no Banner e confira!
 
Avatar do usuário
garooc
Membro
Membro
Mensagens: 24
Registrado em: Sex Out 14, 2016 8:51 pm

Re: Player ser empurrado para trás ao atirar - TOPDOWN

Qua Out 18, 2017 8:38 pm

Alex FC escreveu:
Fica complicado se você não postar o código de movimento e nem o de tiro. Não é qualquer código que vai se encaixar ao seu.

Ex: Se está manipulando as posições x e y diretamente, vai depender da sprite pra determinar qual é a direção:

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}


Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

speed = 5;
direction = direction + 180;


O código acima iria depender se está utilizando algum valor no friction ou alguma outra forma de parar o movimento continuo.

Enfim são suposições, sem o código que você está utilizando fica difícil dar a resposta com precisão. Ainda mais se tiver limitações como "não poder se mover enquanto se afasta".

FLWS!

Tambem seria bacana dizer se o personagem se movimenta em 360 graus ou apenas nos quatros pontos cardiais.
 
Higor Melo
Membro
Membro
Autor
Mensagens: 42
Registrado em: Seg Mar 28, 2016 4:55 pm
Localização: SP

Re: Player ser empurrado para trás ao atirar - TOPDOWN

Sex Nov 03, 2017 1:23 pm

garooc escreveu:
Alex FC escreveu:
Fica complicado se você não postar o código de movimento e nem o de tiro. Não é qualquer código que vai se encaixar ao seu.

Ex: Se está manipulando as posições x e y diretamente, vai depender da sprite pra determinar qual é a direção:

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}


Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

speed = 5;
direction = direction + 180;


O código acima iria depender se está utilizando algum valor no friction ou alguma outra forma de parar o movimento continuo.

Enfim são suposições, sem o código que você está utilizando fica difícil dar a resposta com precisão. Ainda mais se tiver limitações como "não poder se mover enquanto se afasta".

FLWS!

Tambem seria bacana dizer se o personagem se movimenta em 360 graus ou apenas nos quatros pontos cardiais.

Valeu galera, mas resolvi meu problema com esse código:
direction=point_direction(x,y,mouse_x,mouse_y);
if mouse_check_button(mb_left) speed=-3 else speed=0;

Assim, sempre que clica para um lado, o player é empurrado para o oposto.

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes