--- deliantra/server/ext/dmcommands.ext 2007/03/02 13:43:58 1.18 +++ deliantra/server/ext/dmcommands.ext 2007/09/19 21:56:30 1.23 @@ -1,4 +1,4 @@ -#! perl +#! perl # mandatory # wizard commands @@ -43,6 +43,8 @@ return unless $ob->may ("command_teleport"); cf::async { + $Coro::current->{desc} = "teleport $arg"; + my $other = cf::player::find $arg or return $ob->reply (undef, "$arg: no such player."); @@ -93,7 +95,7 @@ return unless $ob->may ("command_wizlook"); - $ob->clear_los; + $ob->contr->clear_los; $ob->reply (undef, "You can temporarily see through walls."); @@ -111,6 +113,7 @@ $_->enter_link for @pl; cf::async { my $name = $map->visible_name; + $Coro::current->{desc} = "reset $name"; $map->reset; $_->leave_link for @pl; @@ -120,6 +123,17 @@ 1 }; + +cf::register_command observe => sub { + my ($ob, $arg) = @_; + + return unless $ob->may ("command_observe"); + + my $other = cf::player::find_active $arg; + $ob->contr->set_observe ($other ? $other->ob : undef); + + 1 +}; for my $command (qw(summon arrest banish)) { my $method = "command_$command";