This is an example of how far you can go with just a little imagination - I have two bots in PoK, one for mana and one for HP buffs. they med when no one's talking to them, stand when hailed, and talk/wave to each other.
Also, I had placed random signal scripts all around PoK so you get the impression they are oocing what they sell. I think this is an older script as I had also randomized their "time to ooc" so they would drive you nuts with their offers.
Code:
#zone:PoKnowledge
#Angelox
sub EVENT_SAY {
if(($text=~/hail/i)&&($ulevel<= 45)){
$npc->SetAppearance(0);
quest::say("Hello $name, I can buff you with clarity for a fee of 5pp, and my friend over there has cleric buffs.");
quest::emote("waves at Qadar");
quest::doanim("29");
}
elsif(($text=~/hail/i)&&($ulevel=>46)){
$npc->SetAppearance(0);
quest::say("Hello $name, I can buff you with KEI for a fee of 15pp, and my friend over there has cleric buffs");
quest::emote("waves at Qadar");
quest::doanim("29");
}
}
sub EVENT_SPAWN
{
$x = $npc->GetX();
$y = $npc->GetY();
quest::set_proximity($x - 90, $x + 90, $y - 90, $y + 90);
}
sub EVENT_ENTER
{
$npc->SetAppearance(1);
my $random_result = int(rand(100));
if ($random_result<=15){
quest::shout("Casting KEI and Clarity for donations on the rock behind the main bank!");
}else{
#Do Nothing
}
}
sub EVENT_ITEM{
if (($platinum>=15)&&($ulevel=> 46)){
$npc->SetAppearance(0);
quest::selfcast(2570);
quest::say("Casting KEI, Good hunting!");
}elsif(($platinum>=5)&&($ulevel<= 45)){
$npc->SetAppearance(0);
$npc->CastSpell(174,$userid);
quest::say("Casting Clarity, Good hunting!");
}else{
quest::say("Thank you for your donation $name, it wasn't enough though ...");
}
}
sub EVENT_SIGNAL {
quest::shout("Casting KEI and Clarity for donations on the rock behind the main bank!");
}