Página 1 de 1

[AJUDA] Objeto na mesma posição do Player

Enviado: Qui Jul 21, 2016 9:24 pm
por X4BLAU
Bom Dia/ Boa Noite/ Boa Tarde forum !

Eu estou desenvolvendo um game totalmente feito em GML, mas to com um problema a semanas que não consigo resolver

eu tenho o seguinte código:

Step (Obj_Feet):

Código: Selecionar todos

phy_position_x = obj_player.phy_position_x;  //Posição X na fisica é a mesma que a posição x do player
phy_position_y = obj_player.phy_position_y;  //Posição Y na fisica é a mesma que a posição y do player
Create (Obj_Player):

Código: Selecionar todos

instance_create(phy_position_x, phy_position_y, obj_feet); //Spawna os pés do player na mesma posição em que ele está


Porém quando o meu player se move os pés ficam uns 2 pixels atrás do player como se estivessem atrasados para se mover, e eu ja chequei os objetos em questão e estão todos configurados corretamente, ja tentem usar outras variaveis e funções para fazer que o obj_feet (Os pés) fiquem no centro do obj_player mas não adiantou nada, mesmo eu usando x e y invés de Phy_position, alguem pfv me ajuda? 

Re: [AJUDA] Objeto na mesma posição do Player

Enviado: Qui Jul 21, 2016 9:35 pm
por thyago
 Tente colocar o código em end step, ao invés de step, talvez esolva, o código dos pés tem que ser depois do movimento do player, se é que eu entendi, até mais

Re: [AJUDA] Objeto na mesma posição do Player

Enviado: Sex Jul 22, 2016 1:31 am
por X4BLAU
thyago escreveu: Tente colocar o código em end step, ao invés de step, talvez esolva, o código dos pés tem que ser depois do movimento do player, se é que eu entendi, até mais
Eu tentei e não alterou nada, continua a mesma coisa ... quando o player colide com a parede o obj_feet fica na posição certa mas quando o player se move não fica

Re: [AJUDA] Objeto na mesma posição do Player

Enviado: Sex Jul 22, 2016 11:21 am
por Superbomber
Realmente há esse atraso quando você tenta fazer um objeto acompanhar outro. Não sei como burlar esse problema, mas sei que ao invés de você usar um objeto para os pes , usar um evento draw para desenha-los e muito mais eficiente.

Um exemplo simples:

Create do player

Código: Selecionar todos

animFeet = 0
Draw do player

Código: Selecionar todos

draw_self();
draw_sprite_ext( spr_feet, animFeet, x, y, image_xscale, image_yscale, image_angle, c_white, 1);
animFeet += 0.3;
if (animFeet > 3) animFeet = 3;
EDIT: altere o 3 acima para a quantidade de subimages do sprite dos pés - 1
Exemplo: são 5 subimages? Bote 4.

+/- isso. Bye