this is what I used
Code:
$ProxDist = 40;
sub EVENT_SPAWN {
$x = $npc->GetX();
$y = $npc->GetY();
$z = $npc->GetZ();
quest::set_proximity($x - $ProxDist, $x + $ProxDist, $y - $ProxDist, $y + $ProxDist, $z - $ProxDist, $z + $ProxDist);
quest::settimer("setprox", 2);
}
sub EVENT_TIMER {
if ($timer eq "setprox") {
my $x = $npc->GetX();
my $y = $npc->GetY();
my $z = $npc->GetZ();
quest::clear_proximity();
quest::set_proximity($x - $ProxDist, $x + $ProxDist, $y - $ProxDist, $y + $ProxDist, $z - $ProxDist, $z + $ProxDist);
}
}
sub EVENT_ENTER {
$client->Message(14,"You hear a voice as something emerges from the crystalline walls.");
quest::spawn2(999341,0,0,2312,1120,459,187);
}
sub EVENT_EXIT {
$client->Message(14,"The image shimmers and fades into the shadows...");
quest::depopall(999341);
}
Doesn't check for class, but im pretty sure you can add a class check in and it should work fine... ill dig around in a second and see if I can get it to work.