View Single Post
  #1  
Old 02-27-2004, 05:59 AM
smogo
Discordant
 
Join Date: Jan 2004
Location: 47
Posts: 339
Default perl quest testing addition

here is a small addition to variable displaying ( ala Lurker_005's default.pl). It allows to get ALL exported vars, including qglobals. It is dynamic, so no update should be needed when server changes, and also, it works with all quest files, not only default.pl

Add the following lines in EVENT_SAY :
Code:
   if ($text=~/allvars/i){
      my($pack, $filename, $line, $subr, $has_args, $want_array)=caller(0);

      #get all variables in caller's scope
      no strict 'refs';
      my $package;
        ($package=$subr) =~ s/::\w+// ;
        my $stash = *{$package . '::'}{HASH};
        my $n;
        foreach $n (keys %$stash) {
          my $fullname = $package . '::' . $n;
          if( defined $$fullname){
            $$n=${$fullname};
            quest::say("$n -> $$n (fully $fullname)\n");
          }
        }
   }
Then say 'allvars' to the target.

The output is a bit long, but could prove usefull
Reply With Quote