Games-2048
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/Games/2048/Animation.pm view on Meta::CPAN
has first_value => is => 'rw', default => 0;
has last_value => is => 'rw', default => 1;
sub value {
my $self = shift;
my $value = $self->cur_frame / ($self->frame_count - 1);
my $range = $self->last_value - $self->first_value;
return $value * $range + $self->first_value;
}
sub update {
my $self = shift;
return if $self->cur_frame >= $self->frame_count;
$self->cur_frame($self->cur_frame + 1);
return 1;
}
sub frame_count {
my $self = shift;
return floor($self->duration / Games::2048::FRAME_TIME);
}
lib/Games/2048/Util.pm view on Meta::CPAN
my $delta_time = $new_time - $time;
my $delay = $frame_time - $delta_time;
$time = $new_time;
if ($delay > 0) {
Time::HiRes::sleep($delay);
$time += $delay;
}
}
}
sub update_window_size {
($_window_size) = eval { GetTerminalSize *STDOUT };
$_window_size //= 80;
}
sub window_size {
$_window_size;
}
sub window_size_is_automatic {
$_window_size_is_automatic;
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.533 second using v1.00-cache-2.02-grep-82fe00e-cpan-4673cadbf75 )