Thread: Quest issues
View Single Post
  #2  
Old 08-01-2008, 07:55 AM
Derision
Developer
 
Join Date: Feb 2004
Location: UK
Posts: 1,540
Default

Easiest way to find syntax errors in your perl scripts is to run it through perl from a command prompt. For this script, I got:

Code:
Scalar found where operator expected at test.pl line 17, near ")
$client"
        (Missing semicolon on previous line?)
syntax error at test.pl line 17, near ")
$client"
Execution of test.pl aborted due to compilation errors.
You have some missing braces for the last if statement. This is the script with missing braces put in:

Code:
#
#Quest Name: Enlightenment
#Author: Sayin of Freedom
#

sub EVENT_SAY
{
        if(($text=~/hail/i)&&($ulevel<= 65))
        {
                quest::say ("Hey there, $name. Looks like your trainer sent you to see me, but didn't prepare you very well... no matter, I can [help]");
        }
        if ($text =~/Help/i)
        {
                quest::say ("My power in this world is unlimited! Simply ask me to [touch] you, and you will be enlightened.");
        }
        if ($text =~/Touch/i) {
                $client->Message(6, "Your body begins to glow with energy as you are lifted from the ground.");
                quest::level(65);
                quest::setallskill(252);
                quest::scribespells();
                quest::say ("There, it's done. You might check the merchant behind me for armor and weapons. I have asked them to waive the charges.");
        }

}
Reply With Quote