ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/ext/setup.ext
(Generate patch)

Comparing deliantra/server/ext/setup.ext (file contents):
Revision 1.1 by root, Thu Jul 5 20:52:23 2007 UTC vs.
Revision 1.10 by root, Fri Dec 19 22:47:29 2008 UTC

7sub send_capabilities { 7sub send_capabilities {
8 my ($ns) = @_; 8 my ($ns) = @_;
9 9
10 return unless $ns->extcmd; 10 return unless $ns->extcmd;
11 11
12 $ns->ext_event (capabilities => 12 $ns->ext_msg (capabilities =>
13 # id, name, flags (1 == 2d), edge length 13 # id, name, flags (1 == 2d), edge length
14 tileset => [[1, "default 64x64 faceset", 1, 64], [0, "default 32x32 faceset", 1, 32]], 14 tileset => [[1, "default 64x64 faceset", 1, 64], [0, "default 32x32 faceset", 1, 32]],
15 ); 15 );
16} 16}
17 17
54 54
55 } elsif ($k eq "mapinfocmd") { 55 } elsif ($k eq "mapinfocmd") {
56 $ns->mapinfocmd ($v); 56 $ns->mapinfocmd ($v);
57 57
58 } elsif ($k eq "extcmd") { 58 } elsif ($k eq "extcmd") {
59 $ns->extcmd ($v > 0); 59 $ns->extcmd (min 2, $v);
60 send_capabilities $ns; 60 send_capabilities $ns;
61 61
62 } elsif ($k eq "extmap") { 62 } elsif ($k eq "extmap") {
63 $ns->extmap ($v); 63 $ns->extmap ($v);
64 64
88 $setup{$k} = $ns->itemcmd; 88 $setup{$k} = $ns->itemcmd;
89 89
90 } elsif ($k eq "mapsize") { 90 } elsif ($k eq "mapsize") {
91 my ($x, $y) = split /x/, $v; 91 my ($x, $y) = split /x/, $v;
92 92
93 # we *need* to make sure we use an odd map size, as the remaining
94 # code relies on this.
93 $ns->mapx ($x = max 9, min cf::MAP_CLIENT_X, ($x - 1) | 1); 95 $ns->mapx ($x = max 9, min +(cf::MAP_CLIENT_X - 1) | 1, ($x - 1) | 1);
94 $ns->mapy ($y = max 9, min cf::MAP_CLIENT_Y, ($y - 1) | 1); 96 $ns->mapy ($y = max 9, min +(cf::MAP_CLIENT_Y - 1) | 1, ($y - 1) | 1);
95 97
96 $setup{$k} = "${x}x${y}"; 98 $setup{$k} = "${x}x${y}";
97 99
98 } elsif ($k eq "extendedMapInfos") { 100 } elsif ($k eq "extendedMapInfos") {
99 $ns->ext_mapinfos ($v); 101 $ns->ext_mapinfos ($v);
103 105
104 } elsif ($k eq "smoothing") { # cfplus-style smoothing 106 } elsif ($k eq "smoothing") { # cfplus-style smoothing
105 $ns->smoothing ($v); 107 $ns->smoothing ($v);
106 108
107 } elsif ($k eq "fxix") { 109 } elsif ($k eq "fxix") {
108 $ns->fxix ($setup{$k} = min 2, $v); 110 $ns->fxix ($setup{$k} = min 3, $v);
109 111
110 } elsif ($k eq "msg") { 112 } elsif ($k eq "msg") {
111 $ns->can_msg ($setup{$k} = min 2, $v); 113 $ns->can_msg ($setup{$k} = min 2, $v);
112 114
113 } elsif ($k eq "xwidget") { 115 } elsif ($k eq "widget") {
114 # eXperimental server-side widgets 116 # server-side widgets
117 $v = $v > 1;
115 $ns->{can_widget} = 1; 118 $ns->{can_widget} = $v;
119 $ns->fx_want (6 => 1); # need support for RSRC
120 $setup{$k} = $v ? 2 : 0;
121
122 } elsif ($k eq "lzf") {
123 # the lzf packet simply contains an lzf-compressed packet as argument
124 $ns->{can_lzf} = $v == 1;
125
126 } elsif ($k eq "frag") {
127 # the frag packet contains data which gets appended to the existing packet buffer.
128 # empty frag packet means end of packet.
129 $ns->{can_frag} = $v == 1;
116 130
117 } elsif ($k eq "excmd") { 131 } elsif ($k eq "excmd") {
118 # we support it 132 # we support it
119 133
120 } else { 134 } else {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines