X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=SCX%2FCar.pm;h=4ef5543c1d089909cd38ba9093d958b5e3dd0cdb;hb=345e8e96dea605056d0c35461c4f16234c247fba;hp=75aa503c49167763e89eca986f2691f87ee1ca31;hpb=39fe205a0db4c322660e0fbf7c54d4dad8f6ed40;p=slotcarman.git diff --git a/SCX/Car.pm b/SCX/Car.pm index 75aa503..4ef5543 100644 --- a/SCX/Car.pm +++ b/SCX/Car.pm @@ -88,15 +88,18 @@ sub set_lap { $self->{avg_lap} = $avg; $self->gui->set_avg_lap($self->{order}, $avg); } else { - $self->gui->set_avg_lap($self->{order}, '--'); + $self->gui->set_avg_lap($self->{order}, undef); } } sub set_laptime { my ($self, $lap_time) = @_; + return if $self->same('laptime', $lap_time); + + $self->gui->set_laptime($self->{order}, $lap_time); + if (defined $lap_time) { - $lap_time = sprintf("%.2f", $lap_time); if ($lap_time > 1.0 && !$self->{in_pit_lane} && (!defined $self->{best_lap} || $self->{best_lap} > $lap_time @@ -110,18 +113,9 @@ sub set_laptime { $global); } } else { - $self->gui->set_best_lap($self->{order}, '--'); + $self->gui->set_best_lap($self->{order}, $lap_time); $self->{best_lap} = undef; } - - return if (!defined $self->{laptime} && !defined $lap_time) - || (defined $self->{laptime} && defined $lap_time - && $self->{laptime} == $lap_time); - - $self->{laptime} = $lap_time; - - $self->gui->set_laptime($self->{order}, defined $lap_time - ? $lap_time : '--'); } sub set_driver { @@ -157,15 +151,14 @@ sub set_order { $self->gui->set_name($self->{order}, $self->{driver}); $self->gui->set_car_icon($self->{order}, $self->{car_icon}); $self->gui->set_throttle($self->{order}, $self->{throttle}); - $self->gui->set_lap($self->{order}, defined $self->{lap} - ? $self->{lap} : '--'); - $self->gui->set_laptime($self->{order}, defined $self->{laptime} - ? $self->{laptime} : '--'); - $self->gui->set_best_lap($self->{order}, defined $self->{best_lap} - ? $self->{best_lap} : '--'); - $self->gui->set_avg_lap($self->{order}, defined $self->{avg_lap} - ? $self->{avg_lap} : '--'); + $self->gui->set_lap($self->{order}, $self->{lap}); + $self->gui->set_laptime($self->{order}, $self->{laptime}); + $self->gui->set_best_lap($self->{order}, $self->{best_lap}); + $self->gui->set_avg_lap($self->{order}, $self->{avg_lap}); $self->gui->set_fuel($self->{order}, $self->{fuel}); + if ($self->{in_pit_lane}) { + $self->gui->enter_pit_lane; + } } 1;