… | |
… | |
13 | }, |
13 | }, |
14 | on_version => sub { |
14 | on_version => sub { |
15 | my ($ns, $arg) = @_; |
15 | my ($ns, $arg) = @_; |
16 | |
16 | |
17 | if ($arg =~ /^\{/) { |
17 | if ($arg =~ /^\{/) { |
18 | # past 2.10 |
18 | # post 2.10 |
19 | my $ver = $cf::json_coder->decode ($arg); |
19 | my $ver = $cf::json_coder->decode ($arg); |
20 | $ns->{version} = $ver; |
20 | $ns->{version} = $ver; |
21 | $ns->{who_version} = "$ver->{clientver} $ver->{osver}"; |
21 | $ns->{who_version} = "$ver->{clientver} $ver->{osver}"; |
22 | |
|
|
23 | } elsif ($arg =~ /^(\d+) (\d+) (.*)$/) { |
22 | } elsif ($arg =~ /^(\d+) (\d+) (.*)$/) { |
24 | # 2.10 and earlier |
23 | # 2.10 and earlier |
25 | $ns->{who_version} = $3; |
24 | $ns->{who_version} = $3; |
26 | $ns->{version} = { |
25 | $ns->{version} = { |
27 | protover => 0, |
26 | protover => 0, |
28 | cs_version => $1, |
27 | cs_version => $1, |
29 | sc_version => $2, |
28 | sc_version => $2, |
30 | client => $3, |
29 | client => $3, |
31 | }; |
30 | }; |
32 | } |
31 | } |
|
|
32 | |
|
|
33 | $ns->ext_msg (capabilities => |
|
|
34 | # id, name, flags (1 == 2d), edge length |
|
|
35 | tileset => [[1, "default 64x64 faceset", 1, 64], [0, "default 32x32 faceset", 1, 32], [2, "default text faceset", 2, 1]], |
|
|
36 | ); |
|
|
37 | |
|
|
38 | # dclient prefers bump messages |
|
|
39 | $ns->bumpmsg ($ns->{client} eq "dclient"); |
|
|
40 | |
33 | }, |
41 | }, |
34 | ); |
42 | ); |
35 | |
43 | |