View Single Post
  #11  
Old 10-29-2010, 09:26 AM
lich2594
Sarnak
 
Join Date: Jun 2006
Location: Tennessee, USA
Posts: 77
Default

Actually, here is my exact script to charge money on the user level for buffs. I don't have a feature to automatically shout or anything (as I have the tag "buffs" under it's name). But this is how my script works:

Code:
sub EVENT_SAY{

	$client->Message(7, " ");
	my $NPCName = $npc->GetCleanName();

	if($text=~/Hail/i) {
		if ($ulevel <= 10) {
			quest::selfcast(5415);
			quest::selfcast(5312);
			quest::selfcast(5405);
			quest::selfcast(5409);
			quest::selfcast(5521);
			quest::selfcast(5365);
			quest::selfcast(278);
			quest::selfcast(939);
			quest::selfcast(3391);
			quest::selfcast(5390);
			$client->Message(315, "$NPCName whispers to you, 'Since you are level 10 or lower you get free buffs, $name! Good luck to you.'");
		}
		if (($ulevel > 10) && ($ulevel < 25)) {
		$client->Message(315, "$NPCName whispers to you, 'Hello $name, I will give you buffs for 100 platinum.'");
		}
		if (($ulevel >= 25) && ($ulevel < 80)) {
		$client->Message(315, "$NPCName whispers to you, 'Hello $name, I will give you buffs for 500 platinum.'");
		}
		if ($ulevel >= 80) {
		$client->Message(315, "$NPCName whispers to you, 'Hello $name, I will give you buffs for 1,000 platinum.'");
		}
	}
}


sub EVENT_ITEM {

	$client->Message(7, " ");
	my $NPCName = $npc->GetCleanName();
	
	if ($platinum == 1000) {
		if ($ulevel >= 80) {
			quest::selfcast(5278);
			quest::selfcast(5415);
			quest::selfcast(5312);
			quest::selfcast(5405);
			quest::selfcast(5409);
			quest::selfcast(5521);
			quest::selfcast(5365);
			quest::selfcast(278);
			quest::selfcast(939);
			quest::selfcast(3391);
			quest::selfcast(5390);
			$client->Message(315, "$NPCName whispers to you, 'Thank you $name!'");
		} else {
			$client->Message(315, "$NPCName whispers to you, 'Use the correct amount, $name!'");
			quest::givecash($copper,$silver,$gold,$platinum);
		}
	}
	if ($platinum == 500) {
		if (($ulevel < 80)&&($ulevel >= 25)) {
			quest::selfcast(5278);
			quest::selfcast(5415);
			quest::selfcast(5312);
			quest::selfcast(5405);
			quest::selfcast(5409);
			quest::selfcast(5521);
			quest::selfcast(5365);
			quest::selfcast(278);
			quest::selfcast(939);
			quest::selfcast(3391);
			quest::selfcast(5390);
			$client->Message(315, "$NPCName whispers to you, 'Thank you $name!'");
		} else {
			$client->Message(315, "$NPCName whispers to you, 'Use the correct amount, $name!'");
			quest::givecash($copper,$silver,$gold,$platinum);
		}
	}
	if ($platinum == 100) {
		if (($ulevel > 10) && ($ulevel < 25)) {
			quest::selfcast(5415);
			quest::selfcast(5312);
			quest::selfcast(5405);
			quest::selfcast(5409);
			quest::selfcast(5521);
			quest::selfcast(5365);
			quest::selfcast(278);
			quest::selfcast(939);
			quest::selfcast(3391);
			quest::selfcast(5390);
			$client->Message(315, "$NPCName whispers to you, 'Thank you $name!'");
		} else {
			$client->Message(315, "$NPCName whispers to you, 'Use the correct amount, $name!'");
			quest::givecash($copper,$silver,$gold,$platinum);
		}
	}
	if (($platinum < 100) || ($platinum < 500) && ($platinum > 100) || ($platinum < 1000) && ($platinum > 100) && ($platinum > 500) || ($platinum > 1000)) {
		$client->Message(315, "$NPCName whispers to you, 'Use the correct amount, $name!'");
		quest::givecash($copper,$silver,$gold,$platinum);
	}
}
It simply charges a fee based on the user level. It also buffs them upon correct payment.

Enjoy!
__________________
Reply With Quote