--- deliantra/Deliantra-Client/DC/Protocol.pm 2007/03/16 02:33:49 1.94 +++ deliantra/Deliantra-Client/DC/Protocol.pm 2007/04/04 02:43:30 1.95 @@ -42,6 +42,23 @@ } sort { $a->{par} <=> $b->{par} } CFPlus::Pod::find command => "*"; + $self->connect_ext (event_capabilities => sub { + my ($cap) = @_; + + if (my $ts = $cap->{tileset}) { + if (my ($default) = grep $_->[2] & 1, @$ts) { + $self->{tileset} = $default; + $self->{tilesize} = $default->[3]; + $self->setup_req (tileset => $default->[0]); + + my $w = int $self->{mapw} * 32 / $self->{tilesize}; + my $h = int $self->{maph} * 32 / $self->{tilesize}; + + $self->setup_req (mapsize => "${w}x${h}"); + } + } + }); + $self->{map_widget}->add_command (@$_) for @cmd_help; @@ -681,6 +698,7 @@ sub setup { my ($self, $setup) = @_; + $self->{map_widget}->set_tilesize ($self->{tilesize}); $::MAP->resize ($self->{mapw}, $self->{maph}); }