Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::Support > Archive::Windows Servers

Archive::Windows Servers Archive area for Windows Servers's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 09-14-2004, 12:06 AM
ajb20
Hill Giant
 
Join Date: Jul 2004
Posts: 106
Default 5.8 and EVENT_ITEM

I, among others, noticed that with the release of 5.8, the sub EVENT_ITEM for perl is no longer functional. Me and another server op have spent the entire night now comparing between 5.7 and 5.8 files to find the error but with no luck. If anyone has found the problem and would be willing to share the solution, I would be very grateful.
Reply With Quote
  #2  
Old 09-15-2004, 04:44 AM
ajb20
Hill Giant
 
Join Date: Jul 2004
Posts: 106
Default

Ok its pinpointed to itemcount{} not working. can use $item1, $item2, etc, but not $itemcount{}....
Reply With Quote
  #3  
Old 09-15-2004, 04:54 AM
smogo
Discordant
 
Join Date: Jan 2004
Location: 47
Posts: 339
Default

hmm, that would mean something is broken in perl->eval() ?

As this is where itemcount is built (and it's pure perl processing)
Code:
string hashname = packagename + std::string("::itemcount"); 
			perl->eval(std::string("%").append(hashname).append(" = ();").c_str()); 
			perl->eval(std::string("++$").append(hashname).append("{$").append(packagename).append("::item1};").c_str()); 
			perl->eval(std::string("++$").append(hashname).append("{$").append(packagename).append("::item2};").c_str()); 
			perl->eval(std::string("++$").append(hashname).append("{$").append(packagename).append("::item3};").c_str()); 
			perl->eval(std::string("++$").append(hashname).append("{$").append(packagename).append("::item4};").c_str());
Merely rebulds the %quest::itemcount hash everytime before EVENT_ITEM sub is entrered.
This part didn't change from 0.5.7dr6 to 0.5..8. Or did it ?

Strange, very strange ...
__________________
EQEMu Quest Repository is down until something new :(
Reply With Quote
  #4  
Old 09-15-2004, 08:30 AM
monalin crusader
Hill Giant
 
Join Date: May 2004
Posts: 238
Default

maybe your useing the wrong syntax, use $itemcount{"ID"}
instead of $itemcount{ID}
__________________
Ascending Dawn Server Op
Coder/Quester/Mysql
Reply With Quote
  #5  
Old 09-15-2004, 06:50 PM
ajb20
Hill Giant
 
Join Date: Jul 2004
Posts: 106
Default

Code:
         if($itemcount{"40001"} == 1)
         {
                 quest::say("Make Haste! Evil Spreads Fast!");
                 quest::summonitem(40001);
                 quest::movepc(158,-1186,366,-38);
        }
Code:
         if($itemcount{40001} == 1)
         {
                 quest::say("Make Haste! Evil Spreads Fast!");
                 quest::summonitem(40001);
                 quest::movepc(158,-1186,366,-38);
        }
neither way worked, just ate the item, so its not the syntax that is the problem /sigh
Reply With Quote
  #6  
Old 09-16-2004, 03:10 PM
jimbox114
Hill Giant
 
Join Date: Jun 2004
Posts: 231
Default

This sure would cause a major problem for my server :/ I use itemcount on all my item turn in quests.
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 10:23 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