Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Linux Servers

Support::Linux Servers Support forum for Linux EQEMu users.

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 11-29-2003, 01:38 PM
Eglin
Hill Giant
 
Join Date: Nov 2003
Posts: 168
Default

Oh, yeah.... $(eqemu_basedir)/quests/default.pl gets compiled and applied to any npc who does not have a .pl file of their own.

I used something like the following when I was testing implementing the Perl stuff.
Code:
sub EVENT_SAY() {
	quest::say("Greetings. $name... I can tell you about [variables] and [commands] or you can give me items.") if ($text=~/hail/i);
	quest::say("Want to test a variable?  Try [name]. [race]. [class]. [userid]. [ulevel]. [uguildid]. [mobid]. [mlevel]. [faction]. [zonesn]. [zoneln]. or [status]") if ($text=~/variabl/i);
	quest::say("name = $name") if($text=~/name/i);
	quest::say("race = $race") if($text=~/race/i);
	quest::say("class = $class") if($text=~/class/i);
	quest::say("userid = $userid") if($text=~/userid/i);
	quest::say("ulevel = $ulevel") if($text=~/ulevel/i);
	quest::say("uguildid = $uguildid") if($text=~/uguildid/i);
	quest::say("mobid = $mobid") if($text=~/mobid/i);
	quest::say("mlevel = $mlevel") if($text=~/mlevel/i);
	quest::say("faction = $faction") if($text=~/faction/i);
	quest::say("zonesn = $zonesn") if($text=~/zonesn/i);
	quest::say("zoneln = $zoneln") if($text=~/zoneln/i);
	quest::say("status = $status") if($text=~/status/i);
	quest::say("Want to test a command?  Try [emote]. [shout]. [spawn]. [echo]. [summonitem]. [castspell]. [depop]. [cumflag]. [flagnpc]. [flagclient].[exp]. [level]. [safemove]. [rain]. [snow]. [givecash]. [pvp]. [doanim]. [addskill]. or [me]") if($text=~/command/i);
	quest::emote("emotes before you.") if ($text=~/emote/i);
	quest::shout("Is this shouting?") if ($text=~/shout/i);
	quest::say("I don't feel like spawning anything right now") if($text=~/spawn/i);
	quest::echo("this is an echo echo echo echo echo") if ($text=~/echo/i);
	quest::summonitem(17969) if ($text=~/summonitem/i);
	quest::castspell(278, $id) if ($text=~/castspell/i);
	quest::say("awww... I don't wanna!") if ($text=~/depop/i);
	quest::exp(100) if ($text=~/exp/i);
	quest::level($ulevel + 1) if ($text=~/level/i);
	quest::safemove() if ($text=~/safemove/i);
	quest::rain(1) if ($text=~/rain/i);
	quest::snow(1) if ($text=~/snow/i);
	quest::givecash(0,0,0,50) if ($text=~/givecash/i);
	quest::pvp("on") if ($text=~/pvp/i);
	quest::doanim(3) if ($text=~/doanim/i);
	quest::me("The heavens applaud you.") if ($text=~/me/i);
}
Obviously, this means that I haven't tested the spawn commands and depop commands and a few others. rain and snow seem to be pretty unstable ATM... I'm probably passing the arguments to the underlying C++ subsystem incorrectly (haven't taken the time to look into this yet - hey, it is a first revision!). Also, some commands aren't mutually exclusive (so telling the npc "emote" will result in both emote and me), but no biggie. You probably shouldn't be using this as a default anyway.
Reply With Quote
 


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:12 PM.


 

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 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3