ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC/Protocol.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC/Protocol.pm (file contents):
Revision 1.161 by root, Wed Aug 22 16:52:34 2007 UTC vs.
Revision 1.162 by root, Wed Aug 22 21:14:06 2007 UTC

478 for keys %RES_TBL; 478 for keys %RES_TBL;
479 479
480 my $sktbl = $::STATWIDS->{skill_tbl}; 480 my $sktbl = $::STATWIDS->{skill_tbl};
481 my @skills = keys %{ $self->{skill_info} }; 481 my @skills = keys %{ $self->{skill_info} };
482 482
483 if (grep +(exists $stats->{$_}) != (exists $prev->{$_}), @skills) { 483 my @order = sort { $stats->{$b->[0]}[1] <=> $stats->{$a->[0]}[1] or $a->[1] cmp $b->[1] }
484 map [$_, $self->{skill_info}{$_}],
485 grep exists $stats->{$_},
486 @skills;
487
488 if ($self->{stat_order} ne join ",", map $_->[0], @order) {
489 $self->{stat_order} = join ",", map $_->[0], @order;
490
484 $sktbl->clear; 491 $sktbl->clear;
485 492
486 my $sw = $self->{skillwid}{""} ||= [ 493 my $sw = $self->{skillwid}{""} ||= [
487 0, 0, (new CFPlus::UI::Label text => "Experience", align => 1), 494 0, 0, (new CFPlus::UI::Label text => "Experience", align => 1),
488 1, 0, (new CFPlus::UI::Label text => "Lvl.", align => 1), 495 1, 0, (new CFPlus::UI::Label text => "Lvl.", align => 1),
500 507
501 my @TOOLTIP_LVL = (tooltip => "<b>Level</b>. The level of the skill.$TOOLTIP_ALL", can_events => 1, can_hover => 1); 508 my @TOOLTIP_LVL = (tooltip => "<b>Level</b>. The level of the skill.$TOOLTIP_ALL", can_events => 1, can_hover => 1);
502 my @TOOLTIP_EXP = (tooltip => "<b>Experience</b>. The experience points you have in this skill.$TOOLTIP_ALL", can_events => 1, can_hover => 1); 509 my @TOOLTIP_EXP = (tooltip => "<b>Experience</b>. The experience points you have in this skill.$TOOLTIP_ALL", can_events => 1, can_hover => 1);
503 510
504 my ($x, $y) = (0, 1); 511 my ($x, $y) = (0, 1);
505 for ( 512 for (@order) {
506 sort { $stats->{$b->[0]}[1] <=> $stats->{$a->[0]}[1] or $a->[1] cmp $b->[1] }
507 map [$_, $self->{skill_info}{$_}],
508 grep exists $stats->{$_},
509 @skills
510 ) {
511 my ($idx, $name) = @$_; 513 my ($idx, $name) = @$_;
512 514
513 my $spell_cb = sub { 515 my $spell_cb = sub {
514 my ($widget, $ev) = @_; 516 my ($widget, $ev) = @_;
515 517
561 563
562 $sktbl->add_at (@add); 564 $sktbl->add_at (@add);
563 } 565 }
564 566
565 for (grep exists $stats->{$_}, @skills) { 567 for (grep exists $stats->{$_}, @skills) {
568 next if $prev->{$_} == $stats->{$_};
569
566 my $sw = $self->{skillwid}{$_}; 570 my $sw = $self->{skillwid}{$_};
567 $sw->[0]->set_text (::formsep ($stats->{$_}[1])); 571 $sw->[0]->set_text (::formsep ($stats->{$_}[1]));
568 $sw->[1]->set_text ($stats->{$_}[0] * 1); 572 $sw->[1]->set_text ($stats->{$_}[0] * 1);
569 $sw->[2]->set_value (@{$stats->{$_}}); 573 $sw->[2]->set_value (@{$stats->{$_}});
570 } 574 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines