15.05.2018, 17:17
Hello.
It seems that you can move actors and their original position does not change or update:
When I try to check for changes in position, nothing happens:
It seems that you can move actors and their original position does not change or update:
When I try to check for changes in position, nothing happens:
PHP Code:
#define Loop(%0,%1,%2) for(new %0 = %2; %0 < %1; %0++)
new ActorPos[MAX_ACTORS][4];
stock new_CreateActor(skin,Float:x,Float:y,Float:z,Float:a)
{
new aid = CreateActor(skin,x,y,z,a);
ActorPos[aid][0] = x,ActorPos[aid][1] = y,ActorPos[aid][2] = z,ActorPos[aid][3] = a;
SetActorVirtualWorld(aid, 0);
SetActorInvulnerable(aid, 1);
return aid;
}
stock CheckActorPos()
{
new Float:Pos[3];
Loop(i,GetActorPoolSize()+1,0)
{
if(IsValidActor(i))
{
if(GetActorVirtualWorld(i) == 0)
{
GetActorPos(i, Pos[0], Pos[1], Pos[2]);
if(Pos[0] != ActorPos[i][0] || Pos[1] != ActorPos[i][1] || Pos[2] != ActorPos[i][2])
{
SetActorPos(i, ActorPos[i][0],ActorPos[i][1],ActorPos[i][2]);
SetActorFacingAngle(i, ActorPos[i][3]);
}
}
}
}
return 1;
}