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

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

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 09-25-2004, 06:13 PM
Malignus Wingnut
Hill Giant
 
Join Date: Sep 2004
Posts: 233
Default Idea using Timers and Signals

Was wondering if this would work, dont want to waste my time doing it if it wont.

Three quest scripts, one for a main boss mob, one for the untargetable version of the main boss, one a smaller mob.

Main Boss Script has a timer that loops around every 1 second. Each time the timer loops, it quest::signal the smaller mob script.


Smaller mob script when signaled checks if the x, y, and z coords of the mob are greater than or equal to a value, if true, it quest::signal both the Boss mob script AND the untargetable mob script.

Main boss script when signaled will despawn the main boss, and respawn with an untargetable version of itself.

Untargetable boss mob script when spawned will start two timers. One that will loop every 1 second, that will signal the Smaller Mob script, and one that will loop say every...60 seconds.

Since the untargetable mob script is now spawned, IF it is signaled by the smaller mob script, it will despawn itself and then respawn the exact same untargetable mob, resetting the 60second timer.

If the 60 second timer finishes without being reset, the untargetable mob will despawn, and spawn the original targetable boss mob.


In case I lost you anywhere in there here's a basic overview. NOT full quest scripts, just ideas.

MAIN BOSS MOB

Code:
sub EVENT_SPAWN
{
           quest::settimer(1,1);
}

sub EVENT_TIMER
{
        quest::signal(SmallerMob);
}

sub EVENT_SIGNAL
{
           quest::stoptimer(1);
           quest::spawn(UntargetableMob,0,0,$x,$y,$z);
           quest::depop();
}
SMALLER MOB

Code:
sub EVENT_SIGNAL
{
           if($x >= 50 && y <= 50 && z == 100)
            {
                   quest::signal(BossMob);
             }

}

UNTARGETABLE MOB

Code:
sub EVENT_SPAWN
{
           quest::settimer(1,1);
           quest::settimer(2,60);
}


sub EVENT_TIMER
{
          quest::signal(SmallerMob);
}

{
          quest::stoptimer(1);
          quest::stoptimer(2);
          quest::spawn(BossMob,0,0,$x,$y,$z);
          quest::depop();
}

sub EVENT_SIGNAL
{
         quest::stoptimer(1);
         quest::stoptimer(2);
         quest::spawn(UntargetableMob,0,0,$x,$y,$z);
}

I just thought this up tonight, dunno if it will work. Plz post feedback.
Reply With Quote
 


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:29 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