Página 1 de 1

Problemas com dano

Enviado: Dom Jan 06, 2019 1:33 am
por 186557
Quando o player toma dano ele deveria ser "empurrado" para tras e piscaria, o problema é que ele só é empurrado para um lado e ao inves de só o player piscas, a barra de vida do player tambem pisca.

create:

Código: Selecionar todos

//empurrado
recoilSpeed=5;
playerRecoil=-1;
playerStop=-1;

//piscando
piscando=0
piscando_alarm=0
step

Código: Selecionar todos

//piscar ao levar dano
if (place_meeting(x,y,obj_inimigo)) {
playerRecoil=10;
hp -= 10;
piscando=1
piscando_alarm=1
alarm[2]=2*room_speed  
}

if piscando=1 and piscando_alarm=1
{alarm[1]=2
piscando_alarm=0}

//ser empurrado ao levar dano
if(playerRecoil!=-1){
    playerRecoil-=1;
   direction = image_angle-180;
   speed= recoilSpeed;
   playerStop=1;
}

if(playerRecoil=-1 && playerStop=1){
    speed=0;
    playerStop=-1;
    }
alarme 1 (os dois são da da funçao de piscar)

Código: Selecionar todos

if visible=1
{visible=0}
else
{visible=1}
piscando_alarm=1
alarme 2

Código: Selecionar todos

piscando=0
visible=true

Re: Problemas com dano

Enviado: Dom Jan 06, 2019 5:53 am
por jonnyall
o problema é que vc esta aqui "direction = image_angle-180;" , não sei qual foi a sua intenção ao usar image_angle neste trecho de código, mas se vc nunca muda esse valor, ele sempre será -180 pq o valor default da image_angle 0, se vc quer q ele seja empurrado a direção contra do inimigo vc precisa pegar a diferença de angulo do player com exatamente o inimigo q ele esta "colidindo"

Enquanto a vida ficar piscando deve ser pq vc esta usando o evento draw do player ... se vc faz uma objeto ter false em visible o evento draw deste objeto é ignorado