$self->{gui}->time(undef);
$self->{gui}->best_lap(undef, undef);
$self->{gui}->time(undef);
$self->{gui}->best_lap(undef, undef);
Glib::Timeout->add($timeout, \&semaphore_step, $self);
} elsif ($self->{semaphore} == 6) {
$self->{race_running} = 1;
Glib::Timeout->add($timeout, \&semaphore_step, $self);
} elsif ($self->{semaphore} == 6) {
$self->{race_running} = 1;
$self->{start_in_progress} = undef;
$self->{gui}->show_semaphore(0);
Glib::Timeout->add($SEMAPHORE_STEP, \&semaphore_step, $self);
} else {
$self->{gui}->show_semaphore(undef);
$self->{semaphore} = undef;
$self->{start_in_progress} = undef;
$self->{gui}->show_semaphore(0);
Glib::Timeout->add($SEMAPHORE_STEP, \&semaphore_step, $self);
} else {
$self->{gui}->show_semaphore(undef);
$self->{semaphore} = undef;
- $self->{race_running} = 0;
- $self->{qualification_running} = 0;
- $self->{start_in_progress} = 0;
-
- $self->{gui}->time(undef);
- $self->{gui}->best_lap(undef);
-}
-
-sub reset {
- my ($self) = @_;
-
$self->{race_running} = 0;
$self->{qualification_running} = 0;
$self->{start_in_progress} = 0;
$self->{race_finishing} = 0;
$self->{race_running} = 0;
$self->{qualification_running} = 0;
$self->{start_in_progress} = 0;
$self->{race_finishing} = 0;
|| $time < $self->{best_lap}) {
$self->{best_lap} = $time;
$self->{gui}->best_lap($time, $who);
|| $time < $self->{best_lap}) {
$self->{best_lap} = $time;
$self->{gui}->best_lap($time, $who);
+
+ for my $car (0..5) {
+ $self->car($car)->set_global_best($car == $id);
+ $self->car($car)->print_best_lap;
+ }
+
+ if (!$self->{race_running} || $self->{round} > 1) {
+ # skip the first round in the race
+ $self->{sound}->best_lap($id);
+ }