… | |
… | |
129 | # unless $ob; |
129 | # unless $ob; |
130 | # |
130 | # |
131 | # $pl->contr->mark ($ob); |
131 | # $pl->contr->mark ($ob); |
132 | # $pl->reply (undef, (sprintf "Marked item %s", $ob->name, $ob->title)); |
132 | # $pl->reply (undef, (sprintf "Marked item %s", $ob->name, $ob->title)); |
133 | # } else { |
133 | # } else { |
134 | # my $ob = $pl->find_marked_object; |
134 | # my $ob = $pl->mark; |
135 | # |
135 | # |
136 | # $pl->reply (undef, $ob |
136 | # $pl->reply (undef, $ob |
137 | # ? (sprintf "%s %s * is marked.", $ob->name, $ob->title) |
137 | # ? (sprintf "%s %s * is marked.", $ob->name, $ob->title) |
138 | # : "You have no marked object."); |
138 | # : "You have no marked object."); |
139 | # } |
139 | # } |
… | |
… | |
145 | my $observe = $ob->contr->observe; |
145 | my $observe = $ob->contr->observe; |
146 | |
146 | |
147 | my $map = $observe->map |
147 | my $map = $observe->map |
148 | or return; |
148 | or return; |
149 | |
149 | |
|
|
150 | my $msg = ''; |
|
|
151 | |
|
|
152 | if ($map->name ne '') { |
|
|
153 | $msg .= sprintf "%s [%s] ", $map->name, $map->visible_name |
|
|
154 | } else { |
|
|
155 | $msg .= sprintf "%s ", $map->visible_name |
|
|
156 | } |
|
|
157 | |
|
|
158 | if ($map->visible_name ne $map->path) { |
|
|
159 | $msg .= sprintf "(%s) ", $map->path; |
|
|
160 | } |
|
|
161 | |
150 | my $msg = sprintf "%s (%s)\r%s", $map->name, $map->path, $observe->region->longname; |
162 | $msg .= sprintf "\r%s", $observe->region->longname; |
151 | $msg .= sprintf "\rplayers: %d difficulty: %d size: %d start: %dx%d timeout: %d", |
163 | |
152 | (scalar $map->players), $map->difficulty, $map->width, $map->height, $map->enter_x, $map->enter_y, $map->timeout |
164 | $msg .= sprintf "\rplayers: %d difficulty: %d" |
|
|
165 | . "\rsize: %dx%d start: %dx%d position: (%d|%d) timeout: %d", |
|
|
166 | (scalar $map->players), |
|
|
167 | $map->difficulty, |
|
|
168 | $map->width, $map->height, |
|
|
169 | $map->enter_x, $map->enter_y, |
|
|
170 | $ob->x, $ob->y, |
|
|
171 | $map->timeout |
153 | if $ob->flag (cf::FLAG_WIZ); |
172 | if $ob->flag (cf::FLAG_WIZ); |
154 | |
173 | |
155 | $ob->send_msg ("c/mapinfo" => $msg, cf::NDI_REPLY | cf::NDI_CLEAR); |
174 | $ob->send_msg ("c/mapinfo" => $msg, cf::NDI_REPLY | cf::NDI_CLEAR); |
156 | }; |
175 | }; |
157 | |
176 | |
… | |
… | |
248 | my ($ob, $arg) = @_; |
267 | my ($ob, $arg) = @_; |
249 | |
268 | |
250 | return $ob->reply (undef, sprintf "Output rate is presently %dbps.", $ob->contr->ns->max_rate / $cf::TICK) |
269 | return $ob->reply (undef, sprintf "Output rate is presently %dbps.", $ob->contr->ns->max_rate / $cf::TICK) |
251 | unless $arg > 0; |
270 | unless $arg > 0; |
252 | |
271 | |
253 | # minimum is 5k/s |
272 | $ob->contr->ns->max_rate ((cf::clamp $arg, $OUTPUT_RATE_MIN, $OUTPUT_RATE_MAX) * $TICK); |
254 | # maximum is 100k/s, this should be configurable |
|
|
255 | $ob->contr->ns->max_rate ((List::Util::max 5000, List::Util::min 100000, $arg) * $cf::TICK); |
|
|
256 | $ob->reply (undef, sprintf "Output rate now set to %dbps.", $ob->contr->ns->max_rate / $cf::TICK); |
273 | $ob->reply (undef, sprintf "Output rate now set to %dbps.", $ob->contr->ns->max_rate / $TICK); |
257 | }; |
274 | }; |
258 | |
275 | |
259 | cf::register_command 'output-count' => sub { |
276 | cf::register_command 'output-count' => sub { |
260 | my ($ob, $arg) = @_; |
277 | my ($ob, $arg) = @_; |
261 | |
278 | |
… | |
… | |
321 | |
338 | |
322 | if (length $from) { |
339 | if (length $from) { |
323 | $item = $ob->find_best_object_match ($from) |
340 | $item = $ob->find_best_object_match ($from) |
324 | or return $ob->message ("rename: could not find a matching item to rename."); |
341 | or return $ob->message ("rename: could not find a matching item to rename."); |
325 | } else { |
342 | } else { |
326 | $item = $ob->find_marked_object |
343 | $item = $ob->mark |
327 | or return $ob->message ("rename: no from name and no marked item found to rename."); |
344 | or return $ob->message ("rename: no from name and no marked item found to rename."); |
328 | } |
345 | } |
329 | |
346 | |
330 | $item->custom_name (length $to ? $to : undef); |
347 | $item->custom_name (length $to ? $to : undef); |
331 | |
348 | |