Hello! I was working on RC with Chandler earlier today and I came up with these distance checks.
I needed them for a few things and I thought it might be awesome to let the public be able to use them as well.
=]
The class checks for the NPC can be changed as you wish. There is another function to this set. But I have not completed it yet, so when I do I'll make sure to post it here! =D
PHP Code:
public function playerInRange()
{
for ( pl: players )
{
if ( pl.x in this.getPlayerVec( 2, 2 )[0] )
{
if ( pl.y in this.getPlayerVec( 2, 2 )[1] )
{
return true;
}
}
else
{
return false;
}
}
}
public function enemyInRange()
{
for ( cl: findareanpcs( this.getPlayerVec( 10, 10 )[0], this.getPlayerVec( 10, 10 )[1], 64, 64 ) )
{
if ( cl.isinclass( "mud_enemyfunctions" ) )
{
if ( cl.x in this.getVec( 2, 2 )[0] )
{
if ( cl.y in this.getVec( 2, 2 )[1] )
{
return true;
}
}
else
{
return false;
}
}
}
}
public function getPlayerVec( xDist, yDist )
{
temp.dx = player.x + 1 + vecx( player.dir ) * temp.xDist;
temp.dy = player.y - 1 + vecy( player.dir ) * temp.yDist;
return ( { temp.dx, temp.dy } )
}