--- deliantra/Deliantra-Client/bin/cfplus 2006/05/26 18:56:14 1.11 +++ deliantra/Deliantra-Client/bin/cfplus 2006/05/26 20:50:35 1.13 @@ -31,7 +31,7 @@ use Event; use Crossfire; -use Crossfire::Protocol::Base; +use Crossfire::Protocol::Constants; use Compress::LZF; @@ -550,45 +550,47 @@ sub update_stats_window { my ($stats) = @_; - # i love text protocols!!! - my $hp = $stats->{Crossfire::Protocol::Base::CS_STAT_HP} * 1; - my $hp_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXHP} * 1; - my $sp = $stats->{Crossfire::Protocol::Base::CS_STAT_SP} * 1; - my $sp_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXSP} * 1; - my $fo = $stats->{Crossfire::Protocol::Base::CS_STAT_FOOD} * 1; + # I love text protocols... + + my $hp = $stats->{+CS_STAT_HP} * 1; + my $hp_m = $stats->{+CS_STAT_MAXHP} * 1; + my $sp = $stats->{+CS_STAT_SP} * 1; + my $sp_m = $stats->{+CS_STAT_MAXSP} * 1; + my $fo = $stats->{+CS_STAT_FOOD} * 1; my $fo_m = 999; - my $gr = $stats->{Crossfire::Protocol::Base::CS_STAT_GRACE} * 1; - my $gr_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXGRACE} * 1; + my $gr = $stats->{+CS_STAT_GRACE} * 1; + my $gr_m = $stats->{+CS_STAT_MAXGRACE} * 1; $GAUGES->{hp} ->set_value ($hp, $hp_m); $GAUGES->{mana} ->set_value ($sp, $sp_m); $GAUGES->{food} ->set_value ($fo, $fo_m); $GAUGES->{grace} ->set_value ($gr, $gr_m); - $GAUGES->{exp} ->set_text ("Exp: " . (formsep $stats->{Crossfire::Protocol::Base::CS_STAT_EXP64}) - . " (lvl " . ($stats->{Crossfire::Protocol::Base::CS_STAT_LEVEL} * 1) . ")"); - my $rng = $stats->{Crossfire::Protocol::Base::CS_STAT_RANGE}; + $GAUGES->{exp} ->set_text ("Exp: " . (formsep $stats->{+CS_STAT_EXP64}) + . " (lvl " . ($stats->{+CS_STAT_LEVEL} * 1) . ")"); + my $rng = $stats->{+CS_STAT_RANGE}; $rng =~ s/^Range: //; # thank you so much dear server $GAUGES->{range} ->set_text ("Rng: " . $rng); - my $title = $stats->{Crossfire::Protocol::Base::CS_STAT_TITLE}; + my $title = $stats->{+CS_STAT_TITLE}; $title =~ s/^Player: //; $STATWIDS->{title} ->set_text ("Title: " . $title); - $STATWIDS->{st_str} ->set_text (sprintf "%d", $stats->{5}); - $STATWIDS->{st_dex} ->set_text (sprintf "%d", $stats->{8}); - $STATWIDS->{st_con} ->set_text (sprintf "%d", $stats->{9}); - $STATWIDS->{st_int} ->set_text (sprintf "%d", $stats->{6}); - $STATWIDS->{st_wis} ->set_text (sprintf "%d", $stats->{7}); - $STATWIDS->{st_pow} ->set_text (sprintf "%d", $stats->{22}); - $STATWIDS->{st_cha} ->set_text (sprintf "%d", $stats->{10}); - $STATWIDS->{st_wc} ->set_text (sprintf "%d", $stats->{13}); - $STATWIDS->{st_ac} ->set_text (sprintf "%d", $stats->{14}); - $STATWIDS->{st_dam} ->set_text (sprintf "%d", $stats->{15}); - $STATWIDS->{st_arm} ->set_text (sprintf "%d", $stats->{16}); - $STATWIDS->{st_spd} ->set_text (sprintf "%.1f", $stats->{Crossfire::Protocol::Base::CS_STAT_SPEED}); - $STATWIDS->{st_wspd}->set_text (sprintf "%.1f", $stats->{Crossfire::Protocol::Base::CS_STAT_WEAP_SP}); + $STATWIDS->{st_str} ->set_text (sprintf "%d" , $stats->{+CS_STAT_STR}); + $STATWIDS->{st_dex} ->set_text (sprintf "%d" , $stats->{+CS_STAT_DEX}); + $STATWIDS->{st_con} ->set_text (sprintf "%d" , $stats->{+CS_STAT_CON}); + $STATWIDS->{st_int} ->set_text (sprintf "%d" , $stats->{+CS_STAT_INT}); + $STATWIDS->{st_wis} ->set_text (sprintf "%d" , $stats->{+CS_STAT_WIS}); + $STATWIDS->{st_pow} ->set_text (sprintf "%d" , $stats->{+CS_STAT_POW}); + $STATWIDS->{st_cha} ->set_text (sprintf "%d" , $stats->{+CS_STAT_CHA}); + $STATWIDS->{st_wc} ->set_text (sprintf "%d" , $stats->{+CS_STAT_WC}); + $STATWIDS->{st_ac} ->set_text (sprintf "%d" , $stats->{+CS_STAT_AC}); + $STATWIDS->{st_dam} ->set_text (sprintf "%d" , $stats->{+CS_STAT_DAM}); + $STATWIDS->{st_arm} ->set_text (sprintf "%d" , $stats->{+CS_STAT_ARMOUR}); + $STATWIDS->{st_spd} ->set_text (sprintf "%.1f", $stats->{+CS_STAT_SPEED}); + $STATWIDS->{st_wspd}->set_text (sprintf "%.1f", $stats->{+CS_STAT_WEAP_SP}); - $STATWIDS->{m_weight}->set_text (sprintf "Max weight: %.1fkg", $stats->{Crossfire::Protocol::Base::CS_STAT_WEIGHT_LIM} / 1000); + $STATWIDS->{m_weight}->set_text (sprintf "Max weight: %.1fkg", $stats->{+CS_STAT_WEIGHT_LIM} / 1000); + # TODO: replace by CS_STAT_RES_xxx constants my %tbl = ( phys => 100, magic => 101, @@ -607,13 +609,11 @@ depl => 113, deat => 115, holyw => 116, - blind => 117 + blind => 117, ); - for (keys %tbl) { - $STATWIDS->{"res_$_"}->set_text (sprintf "%d%", $stats->{$tbl{$_}}); - } - + $STATWIDS->{"res_$_"}->set_text (sprintf "%d%", $stats->{$tbl{$_}}) + for keys %tbl; } sub metaserver_dialog { @@ -907,12 +907,12 @@ $invwin->add (my $hb = new CFClient::UI::HBox expand => 1); $hb->add (my $vb1 = new CFClient::UI::VBox expand => 1); - $vb1->add (my $lbl = new CFClient::UI::Label xalign => 0.5); + $vb1->add (my $lbl = new CFClient::UI::Label align => 0); $lbl->set_text ("Player"); $vb1->add ($INV = new CFClient::UI::Inventory expand => 1); $hb->add (my $vb2 = new CFClient::UI::VBox expand => 1); - $vb2->add ($INVR_LBL = new CFClient::UI::Label xalign => 0.5); + $vb2->add ($INVR_LBL = new CFClient::UI::Label align => 0); $INVR_LBL->set_text ("Floor"); $vb2->add ($INVR = new CFClient::UI::Inventory expand => 1);