Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Q&A

Quests::Q&A This is the quest support section

Reply
 
Thread Tools Display Modes
  #1  
Old 07-06-2009, 03:36 AM
mixxit
Hill Giant
 
Join Date: Sep 2006
Posts: 155
Default Help with Quests Objects inside EVENTS

Hi all,

I'm trying to do the following but it doesn't work:

Quote:
sub EVENT_TIMER{
if ($timer eq "underground")
{
quest::emote(" sighs deeply, sigh another shipment soon.");

my $barkeep = $entity_list->GetMobByNpcTypeID(10064);
$barkeep->Say("Another busy day Harlink?");
quest::say("Too busy, I'm not sure what these items are the [Dervishes] need but if I have to move any more of these crates my back may finally go on me!");
$barkeep->Say("Business is business, but i'd never trade with those Dervishes.");
}

}
Works fine if I move it into a hail for EVENT_SAY but not a TIMER
Reply With Quote
  #2  
Old 07-06-2009, 06:21 AM
joligario's Avatar
joligario
Developer
 
Join Date: Mar 2003
Posts: 1,498
Default

You are better off working with quest::signalwith() in that case rather than $barkeep->Say
Reply With Quote
  #3  
Old 07-06-2009, 07:29 AM
Dibalamin
Hill Giant
 
Join Date: Dec 2007
Posts: 182
Default

Yeah, signals would work better for this. Once I get to work I'll post you up an example.
__________________
Retired EMarr
Project1999 Developer
Reply With Quote
  #4  
Old 07-06-2009, 09:46 AM
joligario's Avatar
joligario
Developer
 
Join Date: Mar 2003
Posts: 1,498
Default

Eh, I'll save you the trouble.

For example:

If your 2 NPCs where 10063 and 10064:

10063.pl
Code:
sub EVENT_TIMER {
  if ($timer eq "underground") {
    quest::stoptimer("underground");
    quest::emote("sighs deeply, '...another shipment soon.'");
    quest::signalwith(10064,1,0);
  }
}

sub EVENT_SIGNAL {
  quest::say("Too busy, I'm not sure what these items are the [Dervishes] need but if I have to move any more of these crates my back may finally go on me!");
  quest::signalwith(10064,2,0);
}

sub EVENT_SAY {
  if($text=~/dervishes/i) {
    quest::say("Oh, yes...blah, blah, blah");
  }
}
10064.pl
Code:
sub EVENT_SIGNAL {
  if($signal==1) {
    quest::say("Another busy day Harlink?");
    quest::signal(10063,0);
  }
  if($signal==2) {
    quest::say("Business is business, but i'd never trade with those Dervishes.");
  }
}
Reply With Quote
  #5  
Old 07-06-2009, 11:54 AM
mixxit
Hill Giant
 
Join Date: Sep 2006
Posts: 155
Default

Thanks, code too I like your style!
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 07:33 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3