ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/bin/cfplus
(Generate patch)

Comparing deliantra/Deliantra-Client/bin/cfplus (file contents):
Revision 1.11 by root, Fri May 26 18:56:14 2006 UTC vs.
Revision 1.12 by root, Fri May 26 19:14:33 2006 UTC

29use Time::HiRes 'time'; 29use Time::HiRes 'time';
30use Pod::POM; 30use Pod::POM;
31use Event; 31use Event;
32 32
33use Crossfire; 33use Crossfire;
34use Crossfire::Protocol::Base; 34use Crossfire::Protocol::Constants;
35 35
36use Compress::LZF; 36use Compress::LZF;
37 37
38use CFClient; 38use CFClient;
39use CFClient::OpenGL (); 39use CFClient::OpenGL ();
548} 548}
549 549
550sub update_stats_window { 550sub update_stats_window {
551 my ($stats) = @_; 551 my ($stats) = @_;
552 552
553 # i love text protocols!!! 553 # I love text protocols...
554 my $hp = $stats->{Crossfire::Protocol::Base::CS_STAT_HP} * 1; 554
555 my $hp = $stats->{+CS_STAT_HP} * 1;
555 my $hp_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXHP} * 1; 556 my $hp_m = $stats->{+CS_STAT_MAXHP} * 1;
556 my $sp = $stats->{Crossfire::Protocol::Base::CS_STAT_SP} * 1; 557 my $sp = $stats->{+CS_STAT_SP} * 1;
557 my $sp_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXSP} * 1; 558 my $sp_m = $stats->{+CS_STAT_MAXSP} * 1;
558 my $fo = $stats->{Crossfire::Protocol::Base::CS_STAT_FOOD} * 1; 559 my $fo = $stats->{+CS_STAT_FOOD} * 1;
559 my $fo_m = 999; 560 my $fo_m = 999;
560 my $gr = $stats->{Crossfire::Protocol::Base::CS_STAT_GRACE} * 1; 561 my $gr = $stats->{+CS_STAT_GRACE} * 1;
561 my $gr_m = $stats->{Crossfire::Protocol::Base::CS_STAT_MAXGRACE} * 1; 562 my $gr_m = $stats->{+CS_STAT_MAXGRACE} * 1;
562 563
563 $GAUGES->{hp} ->set_value ($hp, $hp_m); 564 $GAUGES->{hp} ->set_value ($hp, $hp_m);
564 $GAUGES->{mana} ->set_value ($sp, $sp_m); 565 $GAUGES->{mana} ->set_value ($sp, $sp_m);
565 $GAUGES->{food} ->set_value ($fo, $fo_m); 566 $GAUGES->{food} ->set_value ($fo, $fo_m);
566 $GAUGES->{grace} ->set_value ($gr, $gr_m); 567 $GAUGES->{grace} ->set_value ($gr, $gr_m);
567 $GAUGES->{exp} ->set_text ("Exp: " . (formsep $stats->{Crossfire::Protocol::Base::CS_STAT_EXP64}) 568 $GAUGES->{exp} ->set_text ("Exp: " . (formsep $stats->{+CS_STAT_EXP64})
568 . " (lvl " . ($stats->{Crossfire::Protocol::Base::CS_STAT_LEVEL} * 1) . ")"); 569 . " (lvl " . ($stats->{+CS_STAT_LEVEL} * 1) . ")");
569 my $rng = $stats->{Crossfire::Protocol::Base::CS_STAT_RANGE}; 570 my $rng = $stats->{+CS_STAT_RANGE};
570 $rng =~ s/^Range: //; # thank you so much dear server 571 $rng =~ s/^Range: //; # thank you so much dear server
571 $GAUGES->{range} ->set_text ("Rng: " . $rng); 572 $GAUGES->{range} ->set_text ("Rng: " . $rng);
572 my $title = $stats->{Crossfire::Protocol::Base::CS_STAT_TITLE}; 573 my $title = $stats->{+CS_STAT_TITLE};
573 $title =~ s/^Player: //; 574 $title =~ s/^Player: //;
574 $STATWIDS->{title} ->set_text ("Title: " . $title); 575 $STATWIDS->{title} ->set_text ("Title: " . $title);
575 576
576 $STATWIDS->{st_str} ->set_text (sprintf "%d", $stats->{5}); 577 $STATWIDS->{st_str} ->set_text (sprintf "%d" , $stats->{+CS_STAT_STR});
577 $STATWIDS->{st_dex} ->set_text (sprintf "%d", $stats->{8}); 578 $STATWIDS->{st_dex} ->set_text (sprintf "%d" , $stats->{+CS_STAT_DEX});
578 $STATWIDS->{st_con} ->set_text (sprintf "%d", $stats->{9}); 579 $STATWIDS->{st_con} ->set_text (sprintf "%d" , $stats->{+CS_STAT_CON});
579 $STATWIDS->{st_int} ->set_text (sprintf "%d", $stats->{6}); 580 $STATWIDS->{st_int} ->set_text (sprintf "%d" , $stats->{+CS_STAT_INT});
580 $STATWIDS->{st_wis} ->set_text (sprintf "%d", $stats->{7}); 581 $STATWIDS->{st_wis} ->set_text (sprintf "%d" , $stats->{+CS_STAT_WIS});
581 $STATWIDS->{st_pow} ->set_text (sprintf "%d", $stats->{22}); 582 $STATWIDS->{st_pow} ->set_text (sprintf "%d" , $stats->{+CS_STAT_POW});
582 $STATWIDS->{st_cha} ->set_text (sprintf "%d", $stats->{10}); 583 $STATWIDS->{st_cha} ->set_text (sprintf "%d" , $stats->{+CS_STAT_CHA});
583 $STATWIDS->{st_wc} ->set_text (sprintf "%d", $stats->{13}); 584 $STATWIDS->{st_wc} ->set_text (sprintf "%d" , $stats->{+CS_STAT_WC});
584 $STATWIDS->{st_ac} ->set_text (sprintf "%d", $stats->{14}); 585 $STATWIDS->{st_ac} ->set_text (sprintf "%d" , $stats->{+CS_STAT_AC});
585 $STATWIDS->{st_dam} ->set_text (sprintf "%d", $stats->{15}); 586 $STATWIDS->{st_dam} ->set_text (sprintf "%d" , $stats->{+CS_STAT_DAM});
586 $STATWIDS->{st_arm} ->set_text (sprintf "%d", $stats->{16}); 587 $STATWIDS->{st_arm} ->set_text (sprintf "%d" , $stats->{+CS_STAT_ARMOUR});
587 $STATWIDS->{st_spd} ->set_text (sprintf "%.1f", $stats->{Crossfire::Protocol::Base::CS_STAT_SPEED}); 588 $STATWIDS->{st_spd} ->set_text (sprintf "%.1f", $stats->{+CS_STAT_SPEED});
588 $STATWIDS->{st_wspd}->set_text (sprintf "%.1f", $stats->{Crossfire::Protocol::Base::CS_STAT_WEAP_SP}); 589 $STATWIDS->{st_wspd}->set_text (sprintf "%.1f", $stats->{+CS_STAT_WEAP_SP});
589 590
590 $STATWIDS->{m_weight}->set_text (sprintf "Max weight: %.1fkg", $stats->{Crossfire::Protocol::Base::CS_STAT_WEIGHT_LIM} / 1000); 591 $STATWIDS->{m_weight}->set_text (sprintf "Max weight: %.1fkg", $stats->{+CS_STAT_WEIGHT_LIM} / 1000);
591 592
593 # TODO: replace by CS_STAT_RES_xxx constants
592 my %tbl = ( 594 my %tbl = (
593 phys => 100, 595 phys => 100,
594 magic => 101, 596 magic => 101,
595 fire => 102, 597 fire => 102,
596 elec => 103, 598 elec => 103,
605 tund => 112, 607 tund => 112,
606 fear => 113, 608 fear => 113,
607 depl => 113, 609 depl => 113,
608 deat => 115, 610 deat => 115,
609 holyw => 116, 611 holyw => 116,
610 blind => 117 612 blind => 117,
611 ); 613 );
612 614
613 for (keys %tbl) {
614 $STATWIDS->{"res_$_"}->set_text (sprintf "%d%", $stats->{$tbl{$_}}); 615 $STATWIDS->{"res_$_"}->set_text (sprintf "%d%", $stats->{$tbl{$_}})
615 } 616 for keys %tbl;
616
617} 617}
618 618
619sub metaserver_dialog { 619sub metaserver_dialog {
620 my $dialog = new CFClient::UI::FancyFrame 620 my $dialog = new CFClient::UI::FancyFrame
621 title => "Server List", 621 title => "Server List",

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines