PDA

View Full Version : Perl compiled into eqemu?


Aerewen
12-26-2006, 01:33 PM
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


...
} 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 :D

JrFaust
12-26-2006, 04:06 PM
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

John Adams
12-27-2006, 05:33 AM
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.

Cripp
12-27-2006, 09:26 AM
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..

Aerewen
12-27-2006, 10:03 AM
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.