Thread: Quest timers
View Single Post
  #2  
Old 04-04-2008, 12:26 AM
AndMetal
Developer
 
Join Date: Mar 2007
Location: Ohio
Posts: 648
Default

This is a pretty basic example:

Code:
sub EVENT_SPAWN {
	quest::settimer("repeat", 60); // First trigger after 60 seconds
}

sub EVENT_TIMER {
	if ($timer eq "repeat") {
		quest::stoptimer("repeat");
		quest::shout("I fart in your general direction! Your mother was a hamster and your father smelt of elderberries!");
		quest::settimer("repeat", 60); // Keep repeating every 60 seconds
	}
}
Zone Reset Quest on a Timer can be useful as a general reference, but the idea is to clear the timer & restart it. You could also use quest::ChooseRandom to make the repeated text a little more random (90 seconds vs 60, etc):

Code:
quest::settimer("repeat", quest::ChooseRandom(60, 60, 90));
That would give a little better odds for it to take 60 seconds, but sometimes take 90 seconds.

Another cool thing is that you can change quest::shout to quest::shout2, and it will shout across ALL zones.

Hope this does what you're looking for.
__________________
GM-Impossible of 'A work in progress'
A non-legit PEQ DB server
How to create your own non-legit server

My Contributions to the Wiki
Reply With Quote