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 12-26-2006, 01:33 PM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default Perl compiled into eqemu?

i seem to remember reading somewhere that perl no longer needs to be installed as it was compiled into eqemu...

i seem to think that it was and possibly was done so improperly... in working on tutorial quests i ran into this problem

Code:
...
  } elsif ($item1 == 54229){
    quest::say("Well done $name! I'll get right to work.' Absor trots over the forge and begins to shape the bronze into a weapon. When he's finally done and the blade is cooled he hands it back to you. 'There you go $name. That should do well for caving kobol skulls!' You swing the weapon a few times to test the balance as a sly grin sneaks across your face. Absor says, 'I hear rumors that the Slavemaster Ruga has a secret stash of iron as well. If you bring me some, I can make you an even better weapon.");
    if(($class eq "Warrior") || ($class eq "Paladin") || ($class eq "Ranger") || ($class eq "Shadowknight")){
      quest::summonitem(54231);
    }
    elsif(($class eq "Rogue") || ($class eq "Beastlord") || ($class eq "Enchanter") || ($class eq "Shaman") || ($class eq "Wizard") || ($class eq "Necromancer")){
      quest::summonitem(54230);
    }
    elsif($class eq "Berzerker"){
      quest::summonitem(54233);
    }
    elsif(($class eq "Magician") || ($class eq "Monk")){
      quest::summonitem(54232);
    }
  } els{
    quest::say("I have no need for this item $name, you can have it back.");
    if($item1 != 0){
      quest::summonitem($item1);
    }
    if($item2 != 0){
      quest::summonitem($item2);
    }
    if($item3 != 0){
      quest::summonitem($item3);
    }
    if($item4 != 0){
      quest::summonitem($item4);
    }
  }
now you would think that the following code would only return the items given to him in the event they did not match any of the quest hand in's... but nooooo... he gives you the item back regardless of whether it checks out earlier in the if/else chain... so what's with that? :p

i can't have people handing in the same item over and over again any more than i can have people hand in the wrong item and never see it again
Reply With Quote
  #2  
Old 12-26-2006, 04:06 PM
JrFaust
Sarnak
 
Join Date: Aug 2005
Location: Overthere
Posts: 82
Default

I do believe that you have a spelling mistake in your if-then-else statement, els should be else if I'm not mistaken. As for the rest of the code I'm not sure on, but it looks like the start { and end } symbols might be messed up in the elsif and else area but we don
Reply With Quote
  #3  
Old 12-27-2006, 05:33 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

The "elsif" appears to be correct, but I cannot find a reference to "els". Perl is kookey tho. It's likely they are both completely valid.

I have not had much luck with quests on a server with Perl uninstalled... so I leave it in. I too thought the Emu didn't need it anymore.
Reply With Quote
  #4  
Old 12-27-2006, 09:26 AM
Cripp's Avatar
Cripp
Discordant
 
Join Date: Oct 2003
Location: The Shire
Posts: 474
Default

still need perl installed. you just dont need to install IO::Scalar and those other things ^_^

as for els/elsif..
elsif is valid...
els is not valid i dont think..
else is valid pretty sure..
__________________
Nug Blazers - ServerOP / founder
^^comming... later!

www.nugblazers.com
Reply With Quote
  #5  
Old 12-27-2006, 10:03 AM
Aerewen
Hill Giant
 
Join Date: Dec 2006
Posts: 110
Default

you are correct. els is not valid which is why it was executing the code within the brackets regardless

perl statements are quirky but you hit it right on target

if(){
blah
} elsif() {
blah
} else {
blah
}

id proper syntax for perl
the quests will be finished sometime this week and posted as a zip.
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 01:49 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