X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=dart%2Fdart-schiffe.pl;h=bf3652f5912eb1b05096af3b567e8654115e9799;hb=8d8a2269a1d6e35085fb73f39dc2488216961f3f;hp=e2a3e35ec5d5ea187dd522f528f275dbeb6e8e9c;hpb=6fb4173508723ddbb43ae1942e766ec08a6d937a;p=svn42.git diff --git a/dart/dart-schiffe.pl b/dart/dart-schiffe.pl index e2a3e35..bf3652f 100755 --- a/dart/dart-schiffe.pl +++ b/dart/dart-schiffe.pl @@ -10,10 +10,10 @@ our %y = array_to_hash(@y); our @schiffe = reverse sort qw/ 4 5 6 /; $|=1; -my (@player) = @ARGV; - +my ($shout_fifo, @player) = @ARGV; my $dart = new Dart(player_names=>\@player, + shout_fifo=>$shout_fifo, callbacks => { shoot=>\&shoot, before_shoot=>\&print_score, @@ -173,6 +173,7 @@ sub shoot $self->shout_last_shoot(); if ($player->{sel_x} && $player->{sel_y}) { + $player->{highlight}{selected}=Clone::clone($self->{empty_matrix}); my $x_middle = $player->{sel_x}; my $y_middle = $player->{sel_y}; my $mult_x = $player->{mult_x}; @@ -204,9 +205,9 @@ sub prcl { my $self = shift; my ($color,@what)=@_; - print STDERR color($color) if defined $color; - print STDERR @what; - print STDERR color('reset'); + print color($color) if defined $color; + print @what; + print color('reset'); } sub get_color @@ -218,7 +219,7 @@ sub get_color { return 'bold red'; } elsif ($player->{highlight}{selected}{$x}{$y}) { - return 'bold green'; + return 'black on_green'; } elsif ($player->{score}{$x}{$y} eq 'o') { return 'blue'; } elsif ($player->{score}{$x}{$y} eq 'X') { @@ -242,20 +243,20 @@ sub print_score my $sel_y= $player->{sel_y}; my $mult_x=$player->{mult_x}; my $mult_y=$player->{mult_y}; - printf STDERR "Runde\t%d\n\n",$self->{round}; - printf STDERR "Player\t%s\t\tSchuss\t%d\n\n",$player->{name},$self->{current_shoot_count}; - printf STDERR "x: %dx%2d\n",$player->{mult_x},$player->{sel_x}; - printf STDERR "y: %dx%2d\n",$player->{mult_y},$player->{sel_y}; + printf "Runde\t%d\n\n",$self->{round}; + printf "Player\t%s\t\tSchuss\t%d\n\n",$player->{name},$self->{current_shoot_count}; + printf "x: %dx%2d\n",$player->{mult_x},$player->{sel_x}; + printf "y: %dx%2d\n",$player->{mult_y},$player->{sel_y}; - print STDERR " "; + print " "; for my $y (@main::y) { - printf STDERR " %2d",$y; + printf " %2d",$y; } - print STDERR "\n"; + print "\n"; for my $x (@main::x) { - printf STDERR "%2d",$x; + printf "%2d",$x; for my $y (@main::y) { my $field = $self->get_current_player()->{score}->{$x}{$y}; @@ -266,13 +267,13 @@ sub print_score &prxy($self,$x,$y," ."); } } - printf STDERR " %d",$x; - print STDERR "\n"; + printf " %d",$x; + print "\n"; } - print STDERR " "; + print " "; for my $y (@main::y) { - printf STDERR " %2d",$y; + printf " %2d",$y; } - print STDERR "\n\n"; + print "\n\n"; }