Ah I forgot, you have to do a distance check, of course:
#define enemy_dist skill98
#define enemy skill99
void enemy_event()
{
if(event_type == EVENT_SCAN)
if(result < your.enemy_dist) // result is automatically set
{
your.enemy = handle(me);
your.enemy_dist = result;
}
}
my.event = enemy_event;
my.emask |= ENABLE_SCAN;
...
In your NPC action:
my.enemy_dist = 1000; // your scan range
c_scan(my.x,...)
if(my.enemy)
{
you = ptr_for_handle(my.enemy);
...
}