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.44 by elmex, Fri Jun 2 16:32:12 2006 UTC vs.
Revision 1.45 by elmex, Fri Jun 2 16:52:49 2006 UTC

936sub make_pickup_cfg_window { 936sub make_pickup_cfg_window {
937 $PICKUP_CFG = new CFClient::UI::FancyFrame 937 $PICKUP_CFG = new CFClient::UI::FancyFrame
938 title => "Autopickup configuration", 938 title => "Autopickup configuration",
939 x => "center", 939 x => "center",
940 y => "center", 940 y => "center",
941 force_w => $WIDTH * 3/10, 941 force_w => $WIDTH * 6/10,
942 force_h => $HEIGHT * 9/10; 942 force_h => $HEIGHT * 9/10;
943 943
944
945 $PICKUP_CFG->add (my $vb = new CFClient::UI::VBox);
946 $vb->add (my $gen_tbl = new CFClient::UI::Table expand => 1);
947 $vb->add (my $hb = new CFClient::UI::HBox expand => 1);
944 my $tbl = new CFClient::UI::Table; 948 $hb->add (my $ltbl = new CFClient::UI::Table expand => 1);
949 $hb->add (my $rtbl = new CFClient::UI::Table expand => 1);
950
951 my $tbl = 0;
945 my $tblrow = 0; 952 my $tblrow = 0;
946 953
947 $PICKUP_CFG->add (my $sw = new CFClient::UI::ScrolledWindow scrolled => $tbl, expand => 1);
948
949 for ( 954 for (
955 ["General", $gen_tbl],
950 ["Enable (new) autopickup" => CFClient::Pickup::PU_NEWMODE], 956 ["Enable autopickup" => CFClient::Pickup::PU_NEWMODE],
951 ["Inhibit autopickup" => CFClient::Pickup::PU_INHIBIT], 957 ["Inhibit autopickup" => CFClient::Pickup::PU_INHIBIT],
952 ["Stop before pickup" => CFClient::Pickup::PU_STOP], 958 ["Stop before pickup" => CFClient::Pickup::PU_STOP],
953 ["Debug autopickup" => CFClient::Pickup::PU_DEBUG], 959 ["Debug autopickup" => CFClient::Pickup::PU_DEBUG],
954 ["Weapons"], 960 ["Weapons", $ltbl],
955 ["All weapons" => CFClient::Pickup::PU_ALLWEAPON], 961 ["All weapons" => CFClient::Pickup::PU_ALLWEAPON],
956 ["Missile weapons" => CFClient::Pickup::PU_MISSILEWEAPON], 962 ["Missile weapons" => CFClient::Pickup::PU_MISSILEWEAPON],
957 ["Bows" => CFClient::Pickup::PU_BOW], 963 ["Bows" => CFClient::Pickup::PU_BOW],
958 ["Arrows" => CFClient::Pickup::PU_ARROW], 964 ["Arrows" => CFClient::Pickup::PU_ARROW],
959 ["Armour"], 965 ["Armour"],
961 ["Shields" => CFClient::Pickup::PU_SHIELD], 967 ["Shields" => CFClient::Pickup::PU_SHIELD],
962 ["Body Armour" => CFClient::Pickup::PU_ARMOUR], 968 ["Body Armour" => CFClient::Pickup::PU_ARMOUR],
963 ["Boots" => CFClient::Pickup::PU_BOOTS], 969 ["Boots" => CFClient::Pickup::PU_BOOTS],
964 ["Gloves" => CFClient::Pickup::PU_GLOVES], 970 ["Gloves" => CFClient::Pickup::PU_GLOVES],
965 ["Cloaks" => CFClient::Pickup::PU_CLOAK], 971 ["Cloaks" => CFClient::Pickup::PU_CLOAK],
966 ["Readables"], 972 ["Readables", $rtbl],
967 ["Spellbooks" => CFClient::Pickup::PU_SPELLBOOK], 973 ["Spellbooks" => CFClient::Pickup::PU_SPELLBOOK],
968 ["Skillscrolls" => CFClient::Pickup::PU_SKILLSCROLL], 974 ["Skillscrolls" => CFClient::Pickup::PU_SKILLSCROLL],
969 ["Normal Books/Scrolls" => CFClient::Pickup::PU_READABLES], 975 ["Normal Books/Scrolls" => CFClient::Pickup::PU_READABLES],
970 ["Misc"], 976 ["Misc"],
971 ["Food" => CFClient::Pickup::PU_FOOD], 977 ["Food" => CFClient::Pickup::PU_FOOD],
977 ["Magic Devices" => CFClient::Pickup::PU_MAGIC_DEVICE], 983 ["Magic Devices" => CFClient::Pickup::PU_MAGIC_DEVICE],
978 ["Ignore cursed" => CFClient::Pickup::PU_NOT_CURSED], 984 ["Ignore cursed" => CFClient::Pickup::PU_NOT_CURSED],
979 ["Jewelery" => CFClient::Pickup::PU_JEWELS], 985 ["Jewelery" => CFClient::Pickup::PU_JEWELS],
980 ) 986 )
981 { 987 {
982 unless (defined $_->[1]) { 988 if (ref $_->[1]) {
989 $tbl = $_->[1];
990 $tblrow = 0;
983 $tbl->add (0, $tblrow++, new CFClient::UI::Label text => $_->[0], align => 0); 991 $tbl->add (0, $tblrow++, new CFClient::UI::Label text => $_->[0], align => -1);
992 } elsif (not defined $_->[1]) {
993 $tbl->add (0, $tblrow++, new CFClient::UI::Label text => $_->[0], align => -1);
984 } else { 994 } else {
985 my $mask = $_->[1]; 995 my $mask = $_->[1];
986 $tbl->add (0, $tblrow, new CFClient::UI::Label text => $_->[0], align => -1); 996 $tbl->add (0, $tblrow, new CFClient::UI::Label text => $_->[0], align => 1, expand => 1);
987 $tbl->add (1, $tblrow++, new CFClient::UI::CheckBox 997 $tbl->add (1, $tblrow++, new CFClient::UI::CheckBox
988 state => $CFG->{pickup} & $mask, 998 state => $CFG->{pickup} & $mask,
989 on_changed => sub { 999 on_changed => sub {
990 my ($box, $value) = @_; 1000 my ($box, $value) = @_;
991 if ($value) { 1001 if ($value) {
992 $CFG->{pickup} |= $mask; 1002 $::CFG->{pickup} |= $mask;
993 } else { 1003 } else {
994 $CFG->{pickup} = $CFG->{pickup} & ~$mask; 1004 $::CFG->{pickup} = $::CFG->{pickup} & ~$mask;
995 } 1005 }
996 $::CONN->send (sprintf "command pickup %u", $CFG->{pickup}); 1006 $::CONN->send (sprintf "command pickup %u", $::CFG->{pickup})
1007 if defined $::CONN;
997 }); 1008 });
998 } 1009 }
999 } 1010 }
1000 1011
1001 $PICKUP_CFG 1012 $PICKUP_CFG

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines