Página 1 de 1

Player ser empurrado para trás ao atirar - TOPDOWN

Enviado: Seg Out 16, 2017 9:25 pm
por Higor Melo
Como faço o player ser empurrado para trás ao atirar? O jogo é no estile TOPVIEW.

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

Enviado: Qua Out 18, 2017 9:26 am
por All-x
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:

Código: Selecionar todos

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}
Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

Código: Selecionar todos

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!

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

Enviado: Qua Out 18, 2017 8:38 pm
por garooc
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:

Código: Selecionar todos

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}
Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

Código: Selecionar todos

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.

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

Enviado: Sex Nov 03, 2017 1:23 pm
por Higor Melo
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:

Código: Selecionar todos

if sprite_index == spr_direita
{
    if place_free(x - 4, y) x -= 4;
}
Ex2: Se você está utilizando hspeed e vspeed pra movimentar:

Código: Selecionar todos

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.