--- deliantra/maps/perl/schmorp-clientchk.ext 2006/08/21 07:13:54 1.2 +++ deliantra/maps/perl/schmorp-clientchk.ext 2006/08/25 13:24:06 1.3 @@ -2,22 +2,23 @@ # check client version and string for old clients and possibly issue warnings for them -sub on_login { - my ($pl, $host) = @_; +cf::attach_to_players + on_login => sub { + my ($pl) = @_; + + my $client = $pl->client; + + my $is_cf = $client =~ /^(?:GTK|X11) (?:Unix|Win32) Client ([.0-9]+)/ + ? join "", map chr, split /\./, $1 + : undef; + + if ($is_cf && $is_cf lt v1.9.2) { + $pl->ob->message ("(enabling workaround for client buffer overflow)", cf::NDI_RED | cf::NDI_UNIQUE); + $pl->buggy_mapscroll; + } - my $client = $pl->client; - - my $is_cf = $client =~ /^(?:GTK|X11) (?:Unix|Win32) Client ([.0-9]+)/ - ? join "", map chr, split /\./, $1 - : undef; - - if ($is_cf && $is_cf lt v1.9.2) { - $pl->ob->message ("(enabling workaround for client buffer overflow)", cf::NDI_RED | cf::NDI_UNIQUE); - $pl->buggy_mapscroll; - } - - if ($is_cf && $is_cf lt v1.9.1) { - $pl->ob->message (<ob->message (<