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 09-18-2008, 01:10 PM
JeremyOC
Fire Beetle
 
Join Date: Sep 2008
Location: Spokane, WA
Posts: 4
Default Only talk to Bertoxxulous Deity

ok i've looked pretty extensivly through the forums and I can't find anything to help me with this one. I want to make a quest that will only talk to people of that deity. Since I did not see a $deity command I have tried to limit class and race of the deity. This is what I have:

sub EVENT_SAY
{
if ($text=~ /Hail/i)
{
if ($class eq 'Cleric','Wizard','Enchanter','Warrior','Shadowkni ght','Necromancer','Rogue','Magician')
{
if ($race eq 'Human','Gnome','Halfelf')
{
quest::say("Do not move young $class, you know not the dangers that lurk in this place. I am Bertoxxulous your god, and ruler of this Crypt of Decay. You are a new born child of mine, so you will do my bidding or face the consequences. Will you bow to me?");
}
}
}

if ($text=~ /Hail/i)
{
if ($class ne 'Cleric','Wizard','Enchanter','Warrior','Shadowkni ght','Necromancer','Rogue','Magician')
{
if ($race ne 'Human','Gnome','Halfelf')
{
quest::say(Begone non-believer!)
quest::castspell($userid,797)
}
}
}


Please could someone tell me what I am doing wrong? Thank you.
Reply With Quote
  #2  
Old 09-18-2008, 03:52 PM
Neiv
Hill Giant
 
Join Date: May 2008
Location: Colorado
Posts: 238
Default

For one thing . . .
Quote:
quest::say(Begone non-believer!)
Try quest::say("Begone non-believer!"); instead (note the quotes around the say text and the semicolon after it). Likewise a semicolon for the quest::castspell function. (Why are you casting by userid instead of by client?)

I have never seen single quotation marks used (such as you have in your class and race arguments). Nor have I seen a comma operate as an "OR" argument (isn't it || instead?). But maybe I'm thinking of separating functions.
Reply With Quote
  #3  
Old 09-18-2008, 06:22 PM
joligario's Avatar
joligario
Developer
 
Join Date: Mar 2003
Posts: 1,497
Default

It's going to be a $client->something command. Page 125 of the lexicon shows the deity chart.

Few other things:
Like he said, should use an else block instead of another if block.

You need to have &&'s or ||'s in your if statement depending on how you want it to work.

Pretty sure it needs to be CastSpell().

Shadowknight is one word.

Hope all this helps you get going in the right direction.
Reply With Quote
  #4  
Old 09-18-2008, 07:13 PM
cavedude's Avatar
cavedude
The PEQ Dude
 
Join Date: Apr 2003
Location: -
Posts: 1,988
Default

$client->GetDeity() is the object you need. Here is an example of its usage:

Code:
sub EVENT_SAY { 
$deity = $client->GetDeity();
if($text=~/Hail/i && $deity == 207){
 quest::summonitem(66172);
}
 }
Here is a list of the Deity values: http://www.eqemulator.net/wiki/wikka...akka=DeityList
Reply With Quote
  #5  
Old 09-18-2008, 07:32 PM
joligario's Avatar
joligario
Developer
 
Join Date: Mar 2003
Posts: 1,497
Default

So following allong your direction above...

Code:
sub EVENT_SAY {
  my $deity = $client->GetDeity();

  if ($text=~/hail/i) {
    if ($deity==207) { #Karana
      quest::say("Do not move young $class, you know not the dangers that lurk in this place. I am Bertoxxulous your god, and ruler of this Crypt of Decay. You are a new born child of mine, so you will do my bidding or face the consequences. Will you bow to me?");
    }
    else {
      quest::say("Begone non-believer!");
      quest::CastSpell($userid,797);
    }
  }
}
Obviously you'll need to put in the proper deity that you want.
Reply With Quote
  #6  
Old 09-18-2008, 07:56 PM
JeremyOC
Fire Beetle
 
Join Date: Sep 2008
Location: Spokane, WA
Posts: 4
Default

That worked, you're the man cavedude.
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:07 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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3