… | |
… | |
159 | $table->add (0, 7, new CFClient::UI::Label valign => 0, align => 1, text => "Server Log Fontsize"); |
159 | $table->add (0, 7, new CFClient::UI::Label valign => 0, align => 1, text => "Server Log Fontsize"); |
160 | $table->add (1, 7, new CFClient::UI::Slider range => [$CFG->{log_fontsize}, 0.7, 1.7, 0.1], connect_changed => sub { |
160 | $table->add (1, 7, new CFClient::UI::Slider range => [$CFG->{log_fontsize}, 0.7, 1.7, 0.1], connect_changed => sub { |
161 | $LOGVIEW->set_fontsize ($CFG->{log_fontsize} = 0.1 * int $_[1] * 10); |
161 | $LOGVIEW->set_fontsize ($CFG->{log_fontsize} = 0.1 * int $_[1] * 10); |
162 | }); |
162 | }); |
163 | |
163 | |
|
|
164 | $table->add (0, 8, new CFClient::UI::Label valign => 0, align => 1, text => "Stats Fontsize"); |
|
|
165 | $table->add (1, 8, new CFClient::UI::Slider range => [$CFG->{stat_fontsize}, 0.7, 1.7, 0.1], connect_changed => sub { |
|
|
166 | $CFG->{stat_fontsize} = 0.1 * int $_[1] * 10; |
|
|
167 | &set_stats_window_fontsize; |
|
|
168 | }); |
|
|
169 | |
|
|
170 | |
164 | $table->add (1, 8, new CFClient::UI::Button expand => 1, align => 0, text => "Apply", connect_activate => sub { |
171 | $table->add (1, 9, new CFClient::UI::Button expand => 1, align => 0, text => "Apply", connect_activate => sub { |
165 | video_shutdown (); |
172 | video_shutdown (); |
166 | video_init (); |
173 | video_init (); |
167 | }); |
174 | }); |
168 | |
175 | |
169 | $table->add (0, 9, new CFClient::UI::Label valign => 0, align => 1, text => "Audio Enable"); |
176 | $table->add (0, 10, new CFClient::UI::Label valign => 0, align => 1, text => "Audio Enable"); |
170 | $table->add (1, 9, new CFClient::UI::CheckBox state => $CFG->{audio_enable}, connect_changed => sub { |
177 | $table->add (1, 10, new CFClient::UI::CheckBox state => $CFG->{audio_enable}, connect_changed => sub { |
171 | $CFG->{audio_enable} = $_[1]; |
178 | $CFG->{audio_enable} = $_[1]; |
172 | }); |
179 | }); |
173 | # $table->add (0, 9, new CFClient::UI::Label valign => 0, align => 1, text => "Effects Volume"); |
180 | # $table->add (0, 9, new CFClient::UI::Label valign => 0, align => 1, text => "Effects Volume"); |
174 | # $table->add (1, 8, new CFClient::UI::Slider range => [$CFG->{effects_volume}, 0, 128, 1], connect_changed => sub { |
181 | # $table->add (1, 8, new CFClient::UI::Slider range => [$CFG->{effects_volume}, 0, 128, 1], connect_changed => sub { |
175 | # $CFG->{effects_volume} = $_[1]; |
182 | # $CFG->{effects_volume} = $_[1]; |
176 | # }); |
183 | # }); |
177 | $table->add (0, 10, new CFClient::UI::Label valign => 0, align => 1, text => "Background Music"); |
184 | $table->add (0, 11, new CFClient::UI::Label valign => 0, align => 1, text => "Background Music"); |
178 | $table->add (1, 10, my $hbox = new CFClient::UI::HBox); |
185 | $table->add (1, 11, my $hbox = new CFClient::UI::HBox); |
179 | $hbox->add (new CFClient::UI::CheckBox expand => 1, state => $CFG->{bgm_enable}, connect_changed => sub { |
186 | $hbox->add (new CFClient::UI::CheckBox expand => 1, state => $CFG->{bgm_enable}, connect_changed => sub { |
180 | $CFG->{bgm_enable} = $_[1]; |
187 | $CFG->{bgm_enable} = $_[1]; |
181 | }); |
188 | }); |
182 | $hbox->add (new CFClient::UI::Slider expand => 1, range => [$CFG->{bgm_volume}, 0, 1, 0.1], connect_changed => sub { |
189 | $hbox->add (new CFClient::UI::Slider expand => 1, range => [$CFG->{bgm_volume}, 0, 1, 0.1], connect_changed => sub { |
183 | $CFG->{bgm_volume} = $_[1]; |
190 | $CFG->{bgm_volume} = $_[1]; |
184 | CFClient::MixMusic::volume $_[1] * 128; |
191 | CFClient::MixMusic::volume $_[1] * 128; |
185 | }); |
192 | }); |
186 | |
193 | |
187 | $table->add (1, 11, new CFClient::UI::Button expand => 1, align => 0, text => "Apply", connect_activate => sub { |
194 | $table->add (1, 12, new CFClient::UI::Button expand => 1, align => 0, text => "Apply", connect_activate => sub { |
188 | audio_shutdown (); |
195 | audio_shutdown (); |
189 | audio_init (); |
196 | audio_init (); |
190 | }); |
197 | }); |
191 | |
198 | |
192 | $dialog |
199 | $dialog |
193 | } |
200 | } |
194 | |
201 | |
|
|
202 | sub set_stats_window_fontsize { |
|
|
203 | for (values %{$STATWIDS}, values %{$GAUGES}) { |
|
|
204 | $_->set_fontsize ($::CFG->{stat_fontsize}); |
|
|
205 | } |
|
|
206 | } |
|
|
207 | |
195 | sub make_stats_window { |
208 | sub make_stats_window { |
196 | my $tgw = new CFClient::UI::FancyFrame (x => $WIDTH * 2/5, y => 0, title => "Stats"); |
209 | my $tgw = new CFClient::UI::FancyFrame (x => $WIDTH * 2/5, y => 0, title => "Stats"); |
197 | |
210 | |
198 | $tgw->add (my $vb = new CFClient::UI::VBox); |
211 | $tgw->add (my $vb = new CFClient::UI::VBox); |
199 | $vb->add ($STATWIDS->{title} = new CFClient::UI::Label valign => 0, align => -1, text => "Title:"); |
|
|
200 | $vb->add (my $lhb = new CFClient::UI::HBox); |
212 | $vb->add (my $uhb = new CFClient::UI::HBox); |
|
|
213 | $uhb->add ($STATWIDS->{title} = new CFClient::UI::Label valign => 0, align => -1, text => "Title:", expand => 1); |
|
|
214 | $uhb->add ($STATWIDS->{map} = new CFClient::UI::Label valign => 0, align => -1, text => "Map:", expand => 1); |
|
|
215 | $vb->add (my $dhb = new CFClient::UI::HBox); |
201 | $lhb->add ($STATWIDS->{exp} = new CFClient::UI::Label valign => 0, align => -1, text => "Exp:", expand => 1); |
216 | $dhb->add ($STATWIDS->{exp} = new CFClient::UI::Label valign => 0, align => -1, text => "Exp:", expand => 1); |
202 | $lhb->add ($STATWIDS->{lvl} = new CFClient::UI::Label valign => 0, align => -1, text => "Level:", expand => 1); |
217 | $dhb->add ($STATWIDS->{lvl} = new CFClient::UI::Label valign => 0, align => -1, text => "Level:", expand => 1); |
203 | |
218 | |
204 | $vb->add (my $hb = new CFClient::UI::HBox expand => 1); |
219 | $vb->add (my $hb = new CFClient::UI::HBox expand => 1); |
205 | $hb->add (my $hg = new CFClient::UI::Gauge type => 'hp', expand => 1); |
220 | $hb->add (my $hg = new CFClient::UI::Gauge type => 'hp', expand => 1); |
206 | $hb->add (my $mg = new CFClient::UI::Gauge type => 'mana', expand => 1); |
221 | $hb->add (my $mg = new CFClient::UI::Gauge type => 'mana', expand => 1); |
207 | $hb->add (my $gg = new CFClient::UI::Gauge type => 'grace', expand => 1); |
222 | $hb->add (my $gg = new CFClient::UI::Gauge type => 'grace', expand => 1); |
… | |
… | |
224 | $tbl->add (1, 2, $STATWIDS->{st_dam} = new CFClient::UI::Label valign => 0, align => -1, text => "Dam"); |
239 | $tbl->add (1, 2, $STATWIDS->{st_dam} = new CFClient::UI::Label valign => 0, align => -1, text => "Dam"); |
225 | $tbl->add (1, 3, $STATWIDS->{st_arm} = new CFClient::UI::Label valign => 0, align => -1, text => "Arm"); |
240 | $tbl->add (1, 3, $STATWIDS->{st_arm} = new CFClient::UI::Label valign => 0, align => -1, text => "Arm"); |
226 | $tbl->add (1, 4, $STATWIDS->{st_spd} = new CFClient::UI::Label valign => 0, align => -1, text => "Sp"); |
241 | $tbl->add (1, 4, $STATWIDS->{st_spd} = new CFClient::UI::Label valign => 0, align => -1, text => "Sp"); |
227 | $tbl->add (1, 5, $STATWIDS->{st_wspd} = new CFClient::UI::Label valign => 0, align => -1, text => "WSp"); |
242 | $tbl->add (1, 5, $STATWIDS->{st_wspd} = new CFClient::UI::Label valign => 0, align => -1, text => "WSp"); |
228 | } else { |
243 | } else { |
229 | $tbl->add (0, 0, new CFClient::UI::Label valign => 0, align => +1, text => "S"); |
244 | $tbl->add (0, 0, $STATWIDS->{st_str_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "S"); |
230 | $tbl->add (0, 1, new CFClient::UI::Label valign => 0, align => +1, text => "D"); |
245 | $tbl->add (0, 1, $STATWIDS->{st_dex_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "D"); |
231 | $tbl->add (0, 2, new CFClient::UI::Label valign => 0, align => +1, text => "Co"); |
246 | $tbl->add (0, 2, $STATWIDS->{st_con_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Co"); |
232 | $tbl->add (0, 3, new CFClient::UI::Label valign => 0, align => +1, text => "I"); |
247 | $tbl->add (0, 3, $STATWIDS->{st_int_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "I"); |
233 | $tbl->add (0, 4, new CFClient::UI::Label valign => 0, align => +1, text => "W"); |
248 | $tbl->add (0, 4, $STATWIDS->{st_wis_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "W"); |
234 | $tbl->add (0, 5, new CFClient::UI::Label valign => 0, align => +1, text => "P"); |
249 | $tbl->add (0, 5, $STATWIDS->{st_pow_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "P"); |
235 | $tbl->add (0, 6, new CFClient::UI::Label valign => 0, align => +1, text => "Ch"); |
250 | $tbl->add (0, 6, $STATWIDS->{st_cha_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Ch"); |
236 | |
251 | |
237 | $tbl->add (1, 0, $STATWIDS->{st_str} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
252 | $tbl->add (1, 0, $STATWIDS->{st_str} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
238 | $tbl->add (1, 1, $STATWIDS->{st_dex} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
253 | $tbl->add (1, 1, $STATWIDS->{st_dex} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
239 | $tbl->add (1, 2, $STATWIDS->{st_con} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
254 | $tbl->add (1, 2, $STATWIDS->{st_con} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
240 | $tbl->add (1, 3, $STATWIDS->{st_int} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
255 | $tbl->add (1, 3, $STATWIDS->{st_int} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
241 | $tbl->add (1, 4, $STATWIDS->{st_wis} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
256 | $tbl->add (1, 4, $STATWIDS->{st_wis} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
242 | $tbl->add (1, 5, $STATWIDS->{st_pow} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
257 | $tbl->add (1, 5, $STATWIDS->{st_pow} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
243 | $tbl->add (1, 6, $STATWIDS->{st_cha} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
258 | $tbl->add (1, 6, $STATWIDS->{st_cha} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
244 | |
259 | |
245 | $tbl->add (2, 0, new CFClient::UI::Label valign => 0, align => +1, text => "Wc"); |
260 | $tbl->add (2, 0, $STATWIDS->{st_wc_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Wc"); |
246 | $tbl->add (2, 1, new CFClient::UI::Label valign => 0, align => +1, text => "Ac"); |
261 | $tbl->add (2, 1, $STATWIDS->{st_ac_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Ac"); |
247 | $tbl->add (2, 2, new CFClient::UI::Label valign => 0, align => +1, text => "Dam"); |
262 | $tbl->add (2, 2, $STATWIDS->{st_dam_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Dam"); |
248 | $tbl->add (2, 3, new CFClient::UI::Label valign => 0, align => +1, text => "Arm"); |
263 | $tbl->add (2, 3, $STATWIDS->{st_arm_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Arm"); |
249 | $tbl->add (2, 4, new CFClient::UI::Label valign => 0, align => +1, text => "Sp"); |
264 | $tbl->add (2, 4, $STATWIDS->{st_spd_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "Sp"); |
250 | $tbl->add (2, 5, new CFClient::UI::Label valign => 0, align => +1, text => "WSp"); |
265 | $tbl->add (2, 5, $STATWIDS->{st_wspd_lbl} = new CFClient::UI::Label valign => 0, align => +1, text => "WSp"); |
251 | |
266 | |
252 | $tbl->add (3, 0, $STATWIDS->{st_wc} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
267 | $tbl->add (3, 0, $STATWIDS->{st_wc} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
253 | $tbl->add (3, 1, $STATWIDS->{st_ac} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
268 | $tbl->add (3, 1, $STATWIDS->{st_ac} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
254 | $tbl->add (3, 2, $STATWIDS->{st_dam} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
269 | $tbl->add (3, 2, $STATWIDS->{st_dam} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
255 | $tbl->add (3, 3, $STATWIDS->{st_arm} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
270 | $tbl->add (3, 3, $STATWIDS->{st_arm} = new CFClient::UI::Label valign => 0, align => -1, text => ""); |
… | |
… | |
277 | $col += 2; |
292 | $col += 2; |
278 | $row = 0; |
293 | $row = 0; |
279 | } |
294 | } |
280 | } |
295 | } |
281 | |
296 | |
|
|
297 | &set_stats_window_fontsize; |
282 | update_stats_window ({}); |
298 | update_stats_window ({}); |
283 | |
299 | |
284 | $tgw |
300 | $tgw |
285 | } |
301 | } |
286 | |
302 | |
287 | sub update_stats_window { |
303 | sub update_stats_window { |
288 | my ($stats) = @_; |
304 | my ($stats) = @_; |
289 | |
305 | |
290 | # i love text protocols!!! |
306 | # i love text protocols!!! |
291 | my $hp = $stats->{1}; |
307 | my $hp = $stats->{1} * 1; |
292 | my $hp_m = $stats->{2}; |
308 | my $hp_m = $stats->{2} * 1; |
293 | my $sp = $stats->{3}; |
309 | my $sp = $stats->{3} * 1; |
294 | my $sp_m = $stats->{4}; |
310 | my $sp_m = $stats->{4} * 1; |
295 | my $fo = $stats->{18}; |
311 | my $fo = $stats->{18} * 1; |
296 | my $fo_m = 999; |
312 | my $fo_m = 999; |
297 | my $gr = $stats->{23}; |
313 | my $gr = $stats->{23} * 1; |
298 | my $gr_m = $stats->{24}; |
314 | my $gr_m = $stats->{24} * 1; |
299 | |
315 | |
300 | $GAUGES->{hp} ->set_value ($hp, $hp_m); |
316 | $GAUGES->{hp} ->set_value ($hp, $hp_m); |
301 | $GAUGES->{mana} ->set_value ($sp, $sp_m); |
317 | $GAUGES->{mana} ->set_value ($sp, $sp_m); |
302 | $GAUGES->{food} ->set_value ($fo, $fo_m); |
318 | $GAUGES->{food} ->set_value ($fo, $fo_m); |
303 | $GAUGES->{grace} ->set_value ($gr, $gr_m); |
319 | $GAUGES->{grace} ->set_value ($gr, $gr_m); |
… | |
… | |
873 | $x += $ox; |
889 | $x += $ox; |
874 | $y += $oy; |
890 | $y += $oy; |
875 | |
891 | |
876 | $self->{map_info} = [$hash, $x, $y, $w, $h]; |
892 | $self->{map_info} = [$hash, $x, $y, $w, $h]; |
877 | |
893 | |
|
|
894 | $STATWIDS->{map}->set_text ("Map: " . $self->{map_info}[0]); |
|
|
895 | |
878 | $self->load_map ($hash, $x, $y); |
896 | $self->load_map ($hash, $x, $y); |
879 | } |
897 | } |
880 | |
898 | |
881 | sub conn::face_find { |
899 | sub conn::face_find { |
882 | my ($self, $facenum, $face) = @_; |
900 | my ($self, $facenum, $face) = @_; |
… | |
… | |
1045 | fast => 0, |
1063 | fast => 0, |
1046 | fow_enable => 1, |
1064 | fow_enable => 1, |
1047 | fow_intensity => 0.45, |
1065 | fow_intensity => 0.45, |
1048 | fow_smooth => 0, |
1066 | fow_smooth => 0, |
1049 | gui_fontsize => 1, |
1067 | gui_fontsize => 1, |
1050 | log_fontsize => 14, |
1068 | log_fontsize => 1, |
|
|
1069 | stat_fontsize => 1, |
1051 | mapsize => 100, |
1070 | mapsize => 100, |
1052 | host => "crossfire.schmorp.de", |
1071 | host => "crossfire.schmorp.de", |
1053 | say_command => 'say', |
1072 | say_command => 'say', |
1054 | audio_enable => 1, |
1073 | audio_enable => 1, |
1055 | bgm_enable => 1, |
1074 | bgm_enable => 1, |