… | |
… | |
105 | our $INVR; |
105 | our $INVR; |
106 | our $INVR_LBL; |
106 | our $INVR_LBL; |
107 | our $OPENCONT; |
107 | our $OPENCONT; |
108 | |
108 | |
109 | sub status { |
109 | sub status { |
110 | $STATUSBOX->add ($_[0], pri => -10, group => "status", timeout => 20, fg => [1, 1, 0, 1]); |
110 | $STATUSBOX->add (CFClient::UI::Label::escape $_[0], pri => -10, group => "status", timeout => 20, fg => [1, 1, 0, 1]); |
111 | } |
111 | } |
112 | |
112 | |
113 | sub debug { |
113 | sub debug { |
114 | $DEBUG_STATUS->set_text ($_[0]); |
114 | $DEBUG_STATUS->set_text ($_[0]); |
115 | my ($w, $h) = $DEBUG_STATUS->size_request; |
115 | my ($w, $h) = $DEBUG_STATUS->size_request; |
… | |
… | |
786 | bg => [0, 0, 0, 0.5], |
786 | bg => [0, 0, 0, 0.5], |
787 | user_w => int $::WIDTH / 3, |
787 | user_w => int $::WIDTH / 3, |
788 | user_h => int $::HEIGHT / 5, |
788 | user_h => int $::HEIGHT / 5, |
789 | child => (my $vbox = new CFClient::UI::VBox); |
789 | child => (my $vbox = new CFClient::UI::VBox); |
790 | |
790 | |
791 | $vbox->add ($LOGVIEW = new CFClient::UI::TextView |
791 | $vbox->add ($LOGVIEW); |
792 | expand => 1, |
|
|
793 | font => $FONT_FIXED, |
|
|
794 | fontsize => $::CFG->{log_fontsize}, |
|
|
795 | ); |
|
|
796 | |
792 | |
797 | $vbox->add (my $input = new CFClient::UI::Entry |
793 | $vbox->add (my $input = new CFClient::UI::Entry |
798 | connect_focus_in => sub { |
794 | connect_focus_in => sub { |
799 | my ($input, $prev_focus) = @_; |
795 | my ($input, $prev_focus) = @_; |
800 | |
796 | |
… | |
… | |
914 | } |
910 | } |
915 | } |
911 | } |
916 | }); |
912 | }); |
917 | $MAPWIDGET->show; |
913 | $MAPWIDGET->show; |
918 | $MAPWIDGET->focus_in; |
914 | $MAPWIDGET->focus_in; |
|
|
915 | |
|
|
916 | $LOGVIEW = new CFClient::UI::TextView |
|
|
917 | expand => 1, |
|
|
918 | font => $FONT_FIXED, |
|
|
919 | fontsize => $::CFG->{log_fontsize}, |
|
|
920 | ; |
919 | |
921 | |
920 | $BUTTONBAR = new CFClient::UI::HBox; |
922 | $BUTTONBAR = new CFClient::UI::HBox; |
921 | |
923 | |
922 | $BUTTONBAR->add (new CFClient::UI::Flopper text => "Client Setup", other => client_setup); |
924 | $BUTTONBAR->add (new CFClient::UI::Flopper text => "Client Setup", other => client_setup); |
923 | $BUTTONBAR->add (new CFClient::UI::Flopper text => "Server Setup", other => server_setup); |
925 | $BUTTONBAR->add (new CFClient::UI::Flopper text => "Server Setup", other => server_setup); |
… | |
… | |
1746 | |
1748 | |
1747 | Typing B<climb> will display a list of commands with I<climb> in their |
1749 | Typing B<climb> will display a list of commands with I<climb> in their |
1748 | name, such as I<ready_skill climbing> and I<use_skill climbing>. |
1750 | name, such as I<ready_skill climbing> and I<use_skill climbing>. |
1749 | |
1751 | |
1750 | You can abbreviate commands by typing only the first character of every |
1752 | You can abbreviate commands by typing only the first character of every |
1751 | word. For example, typing I<iwor> will likely select I<invoke word of |
1753 | word (or even characters within the word - the client will try to make |
1752 | recall>, while I<ccfo> will select I<cast create food>. Likewise, I<rscli> |
1754 | a good guess, as long as the characters are in order). For example, |
1753 | will likely select I<ready_skill climbing> and I<usl> will give you |
1755 | typing I<iwor> will likely select I<invoke word of recall>, while I<ccfo> |
1754 | I<use_skill levitation>. |
1756 | will select I<cast create food>. Likewise, I<rscli> will likely select |
|
|
1757 | I<ready_skill climbing> and I<usl> will give you I<use_skill levitation>. |
|
|
1758 | |
|
|
1759 | You can enter space and other text as arguemnt to the command. For |
|
|
1760 | example, C<cfoo waybread> will expand to C<cast create food waybread>. |
1755 | |
1761 | |
1756 | =head2 The map overview |
1762 | =head2 The map overview |
1757 | |
1763 | |
1758 | #TODO# |
1764 | #TODO# |
1759 | |
1765 | |