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

Comparing deliantra/server/ext/map_lib.ext (file contents):
Revision 1.4 by elmex, Mon Feb 5 11:48:43 2007 UTC vs.
Revision 1.5 by elmex, Sat Feb 2 17:38:36 2008 UTC

107 } 107 }
108 cf::override; 108 cf::override;
109 } 109 }
110 }; 110 };
111 111
112=item object attachment: 'display_info_window'
113
114If you attach this attachment to a sign a window containing the
115message will open in the client when the player applies it.
116
117Use this feature with care, as popups usually are very noisy.
118This is mostly thought for tutorial or other instructions.
119
120=cut
121
122cf::object::attachment display_info_window =>
123 on_apply => sub {
124 my ($self, $pl) = @_;
125
126 return unless $pl->contr->ns->{can_widget};
127
128 my $cfg = $self->{display_info_window};
129
130 if ($pl->contr->ns->{info_wins}->{$self->uuid}) {
131 $pl->contr->ns->{info_wins}->{$self->uuid}->destroy;
132 }
133
134 my $ws = $pl->contr->ns->new_widgetset;
135
136 my $w = $ws->{my_main} = $ws->new (Toplevel =>
137 force_w => 600,
138 force_h => 400,
139 x => 'center',
140 y => 'center',
141 title => 'Information Sign',
142 has_close_button => 1,
143 on_delete => sub { $ws->destroy },
144 );
145 $w->add ($ws->{txt_area} = $ws->new ('TextScroller'));
146 $ws->{txt_area}->add_paragraph ($self->msg);
147 $w->show;
148 $pl->contr->ns->{info_wins}->{$self->uuid} = $ws;
149
150 cf::override 1;
151 };
152
112=back 153=back
113 154
114=cut 155=cut

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines