X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=dart%2Fdart-x01.pl;h=de5a7f351abcd2f4c05ce624ead63dcbf3ba0f24;hb=ff9137d257207a3a4b03c4f453cc1b7ce1e3cf17;hp=22bcbcbe19201a5eadc72d2bbc7a22a48201f7f7;hpb=fd324a0bfe9ee3b2a2b0ddcb89b39986071b6215;p=svn42.git diff --git a/dart/dart-x01.pl b/dart/dart-x01.pl old mode 100644 new mode 100755 index 22bcbcb..de5a7f3 --- a/dart/dart-x01.pl +++ b/dart/dart-x01.pl @@ -5,9 +5,10 @@ use Dart; $|=1; my $maxScore = $0; $maxScore =~ s/.*\-(\d+).pl$/\1/; -my (@player) = @ARGV; +my ($shout_fifo, @player) = @ARGV; my $dart = new Dart(player_names=>\@player, + shout_fifo=>$shout_fifo, callbacks => { shoot=>\&shoot, next_player=>\&next_player, @@ -15,6 +16,8 @@ my $dart = new Dart(player_names=>\@player, init=>\&init, } ); + + exit $dart->run(); ### =============================== @@ -49,6 +52,7 @@ sub shoot else { $self->shout("miss"); + $self->get_current_player()->{score} = $self->get_current_player()->{last_score}; $self->finish_player_round(); } } @@ -56,21 +60,22 @@ sub shoot sub next_player { my $self=shift; + $self->get_current_player()->{last_score} = $self->get_current_player()->{score}; } sub print_score { my ($self)=@_; - printf STDERR "\n\n"; - printf STDERR "Runde\t%d\n\n",$self->{round}; + printf "\n\n"; + printf "Runde\t%d\n\n",$self->{round}; for my $player_idx (0..($self->{player_count}-1)) { - printf STDERR "%s\t", ($player_idx == $self->{current_player})?"(".$self->get_player($player_idx)->{name}.")":$self->get_player($player_idx)->{name}; + printf "%s\t", ($player_idx == $self->{current_player})?"(".$self->get_player($player_idx)->{name}.")":$self->get_player($player_idx)->{name}; } - print STDERR "\n"; + print "\n"; for my $player_idx (0..($self->{player_count}-1)) { - printf STDERR "%s\t", $self->get_player($player_idx)->{score}; + printf "%s\t", $self->get_player($player_idx)->{score}; } - print STDERR "\n"; + print "\n"; }