EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Quests::Q&A (https://www.eqemulator.org/forums/forumdisplay.php?f=599)
-   -   Player quest looping (https://www.eqemulator.org/forums/showthread.php?t=28183)

covou 05-11-2009 02:02 PM

Player quest looping
 
OK this is my first attempt at a player quest, and it isnt functionin as intended.

Whenever someone who has a $spelllevel != 150000 their spells script seems to loop. unscribing the spells. scribing them and displaying the message id...

Anyone hazard a guess as to why?

Code:

sub EVENT_ENTERZONE
{
                my $spelllevel = $qglobals{spellspent};
                if(!defined $qglobals{SpellRescribe})
                {       
                        if($class eq 'Enchanter' || $class eq 'Magician' || $class eq 'Shadowknight' || $class eq 'Wizard' || $class eq 'Necromancer' || $class eq 'Druid' || $class eq 'Shaman' || $class eq 'Cleric' || $class eq 'Paladin' || $class eq 'Ranger' || $class eq 'Beastlord' || $class eq 'Bard')
                        {
                        quest::unscribespells();
                        if($spelllevel == 0 && $ulevel =< 29)
                                {
                                quest::scribespells($ulevel);
                                }
                        if($spelllevel => 2200 && $spelllevel =< 2399)
                                {
                                quest::scribespells(30);
                                }
                        if($spelllevel => 2400 && $spelllevel =< 2599)
                                {
                                quest::scribespells(31);
                                }
                        if($spelllevel => 2600 && $spelllevel =< 2799)
                                {
                                quest::scribespells(32);
                                }
                        if($spelllevel => 2800 && $spelllevel =< 2999)
                                {
                                quest::scribespells(33);
                                }
                        if($spelllevel => 3000 && $spelllevel =< 3199)
                                {
                                quest::scribespells(34);
                                }
                        if($spelllevel => 3200 && $spelllevel =< 3399)
                                {
                                quest::scribespells(35);
                                }
                        if($spelllevel => 3400 && $spelllevel =< 3599)
                                {
                                quest::scribespells(36);
                                }
                        if($spelllevel => 3600 && $spelllevel =< 3799)
                                {
                                quest::scribespells(37);
                                }
                        if($spelllevel => 3800 && $spelllevel =< 3999)
                                {
                                quest::scribespells(38);
                                }
                        if($spelllevel => 4000 && $spelllevel =< 4199)
                                {
                                quest::scribespells(39);
                                }
                        if($spelllevel => 4200 && $spelllevel =< 4399)
                                {
                                quest::scribespells(40);
                                }
                        if($spelllevel => 4400 && $spelllevel =< 4599)
                                {
                                quest::scribespells(41);
                                }
                        if($spelllevel => 4600 && $spelllevel =< 4799)
                                {
                                quest::scribespells(42);
                                }
                        if($spelllevel => 4800 && $spelllevel =< 4999)
                                {
                                quest::scribespells(43);
                                }
                        if($spelllevel => 5000 && $spelllevel =< 5199)
                                {
                                quest::scribespells(44);
                                }
                        if($spelllevel => 5200 && $spelllevel =< 5399)
                                {
                                quest::scribespells(45);
                                }
                        if($spelllevel => 5400 && $spelllevel =< 5599)
                                {
                                quest::scribespells(46);
                                }
                        if($spelllevel => 5600 && $spelllevel =< 5799)
                                {
                                quest::scribespells(47);
                                }
                        if($spelllevel => 5800 && $spelllevel =< 5999)
                                {
                                quest::scribespells(48);
                                }
                        if($spelllevel => 6000 && $spelllevel =< 6199)
                                {
                                quest::scribespells(49);
                                }
                        if($spelllevel => 6200 && $spelllevel =< 6399)
                                {
                                quest::scribespells(50);
                                }
                        if($spelllevel => 6400 && $spelllevel =< 6599)
                                {
                                quest::scribespells(51);
                                }
                        if($spelllevel => 6600 && $spelllevel =< 6799)
                                {
                                quest::scribespells(52);
                                }
                        if($spelllevel => 6800 && $spelllevel =< 6999)
                                {
                                quest::scribespells(53);
                                }
                        if($spelllevel => 7000 && $spelllevel =< 7199)
                                {
                                quest::scribespells(54);
                                }
                        if($spelllevel => 7200 && $spelllevel =< 7399)
                                {
                                quest::scribespells(55);
                                }
                        if($spelllevel => 7400 && $spelllevel =< 7599)
                                {
                                quest::scribespells(56);
                                }
                        if($spelllevel => 7600 && $spelllevel =< 7799)
                                {
                                quest::scribespells(57);
                                }
                        if($spelllevel => 7800 && $spelllevel =< 7999)
                                {
                                quest::scribespells(58);
                                }
                        if($spelllevel => 8000 && $spelllevel =< 8299)
                                {
                                quest::scribespells(59);
                                }
                        if($spelllevel => 8400 && $spelllevel =< 8499)
                                {
                                quest::scribespells(60);
                                }
                        if($spelllevel => 8500 && $spelllevel =< 8999)
                                {
                                quest::scribespells(61);
                                }
                        if($spelllevel => 9000 && $spelllevel =< 9999)
                                {
                                quest::scribespells(62);
                                }
                        if($spelllevel => 10000 && $spelllevel =< 10999)
                                {
                                quest::scribespells(63);
                                }
                        if($spelllevel => 11000 && $spelllevel =< 11999)
                                {
                                quest::scribespells(64);
                                }
                        if($spelllevel => 12000 && $spelllevel =< 12999)
                                {
                                quest::scribespells(65);
                                }
                        if($spelllevel => 13000 && $spelllevel =< 14999)
                                {
                                quest::scribespells(66);
                                }
                        if($spelllevel => 15000 && $spelllevel =< 15999)
                                {
                                quest::scribespells(67);
                                }
                        if($spelllevel => 16000 && $spelllevel =< 17999)
                                {
                                quest::scribespells(68);
                                }
                        if($spelllevel => 18000 && $spelllevel =< 19999)
                                {
                                quest::scribespells(69);
                                }
                        if($spelllevel => 20000 && $spelllevel =< 21499)
                                {
                                quest::scribespells(70);
                                }
                        if($spelllevel => 21500 && $spelllevel =< 39999)
                                {
                                if($ulevel == 71)
                                        {
                                        quest::scribespells(71);
                                        }
                                if($ulevel == 72)
                                        {
                                        quest::scribespells(72);
                                        }
                                if($ulevel > 72)
                                        {
                                        quest::scribespells(73);
                                        }
                                }
                        if($spelllevel => 40000 && $spelllevel =< 41999)
                                {
                                quest::scribespells(74);
                                }
                        if($spelllevel => 42000 && $spelllevel =< 43999)
                                {
                                quest::scribespells(75);
                                }
                        if($spelllevel => 44000 && $spelllevel =< 45999)
                                {
                                quest::scribespells(76);
                                }
                        if($spelllevel => 46000 && $spelllevel =< 49999)
                                {
                                quest::scribespells(77);
                                }
                        if($spelllevel => 50000 && $spelllevel =< 109999)
                                {
                                quest::scribespells(78);
                                }
                        if($spelllevel => 110000 && $spelllevel =< 114999)
                                {
                                quest::scribespells(79);
                                }
                        if($spelllevel => 115000 && $spelllevel =< 119999)
                                {
                                quest::scribespells(80);
                                }
                        if($spelllevel => 120000 && $spelllevel =< 124999)
                                {
                                quest::scribespells(81);
                                }
                        if($spelllevel => 125000 && $spelllevel =< 129999)
                                {
                                quest::scribespells(82);
                                }
                        if($spelllevel => 130000 && $spelllevel =< 134999)
                                {
                                quest::scribespells(83);
                                }
                        if($spelllevel => 135000 && $spelllevel =< 149999)
                                {
                                quest::scribespells(84);
                                }
                        if($spelllevel == 150000)
                                {
                                quest::scribespells(85);
                                }                               
                        $client->Message(15, "Your spells have been reset due to a new spell file implementation. Apologies.");
                        quest::setglobal("SpellRescribe",1,5,F);
                        }
                }
}


Andrew80k 05-11-2009 02:37 PM

You have to be careful using "=>" in perl. That is typically used as a dereference operator on objects. You should use ">=" for greater than or equal to. "=<" is ok though. Give that a whirl.


All times are GMT -4. The time now is 05:04 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.