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 08-11-2011, 01:02 AM
Congdar
Developer
 
Join Date: Jul 2007
Location: my own little world
Posts: 751
Default

i'm wondering if you are setting the timer correctly. I've seen them typically as quest::settimer("depop",10); and quest::stoptimer("depop"); and i'm not quite sure what you're doing here. do you have your npc qglobals enabled in the database?
one thing i've done to help me with debugging these scripts is to put quest:say("setting timer"); type of things everywhere and repop the npc and see what they say. Then you'll know how far your script is getting. Also, in your log files you will see perl errors in files with the name similar to eqemu_quest_zone_0222.log

void QuestManager::settimer(const char *timer_name, int seconds)
__________________
The Realm

Last edited by Congdar; 08-11-2011 at 01:21 AM..
Reply With Quote
  #2  
Old 08-11-2011, 01:49 AM
Ignorance
Fire Beetle
 
Join Date: Jun 2006
Location: baconland
Posts: 14
Default

Yes, the mob is permitted to use qglobals.
I actually do the same as you when debugging; I just posted my non-debug file to keep things cleaner.

Pertaining to settimer...
All settimer ids represent time passed.
Despawning, advertising time passed, and determining when to translocate, $timer controls, and is used in, them all.

I do recognize that settimer wants a char for the id, and, in trying to determine if that was the problem, added "quest::settimer( 0, 0 );", which works in my other scripts, to the beginning of EVENT_SPAWN, which I know executes; still nothing happened.
I'll see about enforcing a conversion to const char and report back with the results.
Reply With Quote
  #3  
Old 08-11-2011, 04:58 AM
Ignorance
Fire Beetle
 
Join Date: Jun 2006
Location: baconland
Posts: 14
Default

It turns out that the const char requirement of settimer() was causing the issue.
Code:
quest::settimer( $timerID, $timerID );   # Does not work
quest::settimer( "$timerID", $timerID ); # Works
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 06:27 PM.


 

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