ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/commands.ext
(Generate patch)

Comparing deliantra/server/ext/commands.ext (file contents):
Revision 1.49 by root, Sun Jul 1 03:16:56 2007 UTC vs.
Revision 1.57 by root, Sat Jul 28 00:15:03 2007 UTC

68 . ($pl->peaceful ? " [peaceful]" : " [HOSTILE]") 68 . ($pl->peaceful ? " [peaceful]" : " [HOSTILE]")
69 . ($ns->afk ? " [AFK]" : "") 69 . ($ns->afk ? " [AFK]" : "")
70 . ($ob->flag (cf::FLAG_WIZ) ? " [WIZ]" : "") 70 . ($ob->flag (cf::FLAG_WIZ) ? " [WIZ]" : "")
71 . " [" . $pl->ns->version . "]" 71 . " [" . $pl->ns->version . "]"
72 . " [" . ($pl->peaceful || $privileged ? $ob->map->visible_name : $ob->region->name) . "]" 72 . " [" . ($pl->peaceful || $privileged ? $ob->map->visible_name : $ob->region->name) . "]"
73 . (sprintf " [rtt %.3fs]", $pl->ns->rtt * 1e-6) 73 . (sprintf " [rtt %.3fs]", $pl->ns->tcpi_rtt * 1e-6)
74 . ($privileged ? " " . $pl->ns->host : "") 74 . ($privileged ? " " . $pl->ns->host : "")
75 } sort { (lc $a->ob->name) cmp (lc $b->ob->name) } @pl 75 } sort { (lc $a->ob->name) cmp (lc $b->ob->name) } @pl
76 ), 76 ),
77 eval { "* IRC: " . join ", ", ext::irc::users }, 77 eval { "* IRC: " . join ", ", ext::irc::users },
78 ) 78 )
115 my ($ob) = @_; 115 my ($ob) = @_;
116 116
117 # Too hard to try and make a header that lines everything up, so just 117 # Too hard to try and make a header that lines everything up, so just
118 # give a description. (comment from C++) 118 # give a description. (comment from C++)
119 my $reply = 119 my $reply =
120 "The first column is the name of the body location.\n" 120 "The first column is the name of the body location.\n\n"
121 . "The second column is how many of those locations your body has.\n" 121 . "The second column is how many of those locations your body has.\n\n"
122 . "The third column is how many slots in that location are available.\n"; 122 . "The third column is how many slots in that location are available.\n\n";
123 123
124 $reply .= sprintf "%-20s %3s %5s\n", "Location", "You", "Avail"; 124 $reply .= sprintf " %-20s %3s %5s\n", "Location", "You", "Avail";
125 for (0 .. cf::NUM_BODY_LOCATIONS - 1) { 125 for (0 .. cf::NUM_BODY_LOCATIONS - 1) {
126 my $msg = cf::object::slot_nonuse_name $_; 126 my $msg = cf::object::slot_nonuse_name $_;
127 $msg =~ s/^.*? a //; 127 $msg =~ s/^.*? a //;
128 $reply .= sprintf "%-20s %3d %5d\n", $msg, $ob->slot_info ($_), $ob->slot_used ($_) 128 $reply .= sprintf " %-20s %3d %5d\n", $msg, $ob->slot_info ($_), $ob->slot_used ($_)
129 if $ob->slot_info ($_) or $ob->slot_used ($_); 129 if $ob->slot_info ($_) or $ob->slot_used ($_);
130 } 130 }
131 131
132 $reply .= "You are not allowed to wear armor\n" 132 $reply .= "You are not allowed to wear armor\n\n"
133 unless $ob->flag (cf::FLAG_USE_ARMOUR); 133 unless $ob->flag (cf::FLAG_USE_ARMOUR);
134 $reply .= "You are not allowed to use weapons\n" 134 $reply .= "You are not allowed to use weapons\n\n"
135 unless $ob->flag (cf::FLAG_USE_WEAPON); 135 unless $ob->flag (cf::FLAG_USE_WEAPON);
136 136
137 $ob->reply (undef, $reply); 137 $ob->reply (undef, $reply);
138 138
139 1 139 1
185} 185}
186 186
187cf::register_command mapinfo => sub { 187cf::register_command mapinfo => sub {
188 my ($ob) = @_; 188 my ($ob) = @_;
189 189
190 my $observe = $ob->contr->observe;
191
190 my $map = $ob->contr->observe->map 192 my $map = $observe->map
191 or return; 193 or return;
192 $ob->reply (undef, (sprintf "%s (%s) %s", $map->name, $map->path, $ob->region->longname)); 194 $ob->reply (undef, (sprintf "%s (%s) %s", $map->name, $map->path, $observe->region->longname));
193 $ob->reply (undef, (sprintf "players: %d difficulty: %d size: %d start: %dx%d timeout: %d", 195 $ob->reply (undef, (sprintf "players: %d difficulty: %d size: %d start: %dx%d timeout: %d",
194 $map->players, $map->difficulty, $map->width, $map->height, $map->enter_x, $map->enter_y, $map->timeout)) 196 (scalar $map->players), $map->difficulty, $map->width, $map->height, $map->enter_x, $map->enter_y, $map->timeout))
195 if $ob->flag (cf::FLAG_WIZ); 197 if $ob->flag (cf::FLAG_WIZ);
196 $ob->reply (undef, $map->msg); 198 $ob->reply (undef, $map->msg);
197 199
198 1 200 1
199}; 201};
200 202
201cf::register_command whereami => sub { 203cf::register_command whereami => sub {
202 my ($ob) = @_; 204 my ($ob) = @_;
203 205
204 my $reg = $ob->region; 206 my $reg = $ob->contr->observe->region;
205 $ob->reply (undef, (sprintf "You are %s.\n%s", $reg->longname, $reg->msg)); 207 $ob->reply (undef, (sprintf "You are %s.\n%s", $reg->longname, $reg->msg));
206 208
207 1 209 1
208}; 210};
209 211
244 _set_mode "usekeys", $ob, $arg, usekeys => qw(inventory keyrings containers); 246 _set_mode "usekeys", $ob, $arg, usekeys => qw(inventory keyrings containers);
245 247
246 1 248 1
247}; 249};
248 250
251cf::register_command hintmode => sub {
252 my ($ob, $arg) = @_;
253
254 _set_mode "hintmode", $ob, $arg, hintmode => qw(show mark hide);
255
256 1
257};
258
249cf::register_command afk => sub { 259cf::register_command afk => sub {
250 my ($ob, $arg) = @_; 260 my ($ob, $arg) = @_;
251 261
252 $ob->contr->ns->afk ($ob->contr->ns->afk ? 0 : 1); 262 $ob->contr->ns->afk ($ob->contr->ns->afk ? 0 : 1);
253 $ob->reply (undef, $ob->contr->ns->afk ? "You are now AFK" : "You are no longer AFK"); 263 $ob->reply (undef, $ob->contr->ns->afk ? "You are now AFK" : "You are no longer AFK");
277 my ($ob, $arg) = @_; 287 my ($ob, $arg) = @_;
278 288
279 return $ob->reply (undef, sprintf "Output rate is presently %dbps.", $ob->contr->ns->max_rate / $cf::TICK) 289 return $ob->reply (undef, sprintf "Output rate is presently %dbps.", $ob->contr->ns->max_rate / $cf::TICK)
280 unless $arg > 0; 290 unless $arg > 0;
281 291
282 # minimum is 2k/s 292 # minimum is 5k/s
293 # maximum is 100k/s, this should be configurable
283 $ob->contr->ns->max_rate ((List::Util::max 2048, $arg) * $cf::TICK); 294 $ob->contr->ns->max_rate ((List::Util::max 5000, List::Util::min 100000, $arg) * $cf::TICK);
284 $ob->reply (undef, sprintf "Output rate now set to %dbps.", $ob->contr->ns->max_rate / $cf::TICK); 295 $ob->reply (undef, sprintf "Output rate now set to %dbps.", $ob->contr->ns->max_rate / $cf::TICK);
285 296
286 1 297 1
287}; 298};
288 299

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines