menhir()
{
drup = getent("drup","targetname");
level.menhir_pos = [];
level.menhir_pos[0] = (drup.origin);
level.menhir_pos[1] = (0,0,0);
level.menhir_pos[2] = (0,0,0);
level.menhir_pos[3] = (0,0,0);
level.menhir_pos[4] = (0,0,0);
level.menhir_pos[5] = (0,0,0);
level.menhir_pos[6] = (0,0,0);
level.menhir_radius = 50;
drup thread checkforplayers();
while(1)
{
if(isDefined(firsttime))
drup waittill("new position");
else
firsttime = 1;
randompos = level.menhir_pos[randomint(6)];
drup.origin = randompos;
}
}
checkforplayers()
{
while(1)
{
players = getentarray("player","classname");
for(a=0;a<players.size;a++)
{
if(distance(players[a].origin, drup.origin) < level.menhir_radius)
{
// alles wat menhir moet doen als een speler dicht komt
break;
}
}
self notify("new position");
wait 1;
}
}