=pod
=head1 NAME
SDLx::Controller::State - the state of a SDLx::Controller::Interface
=head1 CATEGORY
Extension, Controller
=head1 SYNOPSIS
# you'll most likely get a State object from a SDLx::Controller::Interface
# object. Just in case, here's how you would construct one by hand:
my $state1 = SDLx::Controller::State->new;
my $state2 = SDLx::Controller::State->new( $x, $y, $v_x, $v_y, $rotation, $ang_v );
# attributes are just simple accessors:
$state->x(10);
$state->x; # 10
# same goes for the rest:
$state->y;
$state->ang_v;
# etc.
=head1 DESCRIPTION
A state object is a simple container for any given state inside a running
L<SDLx::Controller::Interface> instance.
=head1 METHODS
=head2 new()
=head2 new( $x, $y, $v_x, $v_y, $rotation, $ang_v )
Creates a new state container object. Can optionally set the initial value
of all its attributes (see below).
=head1 ACCESSORS
=head2 x
Accessor to get/set the x value, usually used to position the item or check for collisions.
=head2 y
Accessor to get/set the y value, usually used to position the item or check for collisions.
=head2 v_x
Accessor to get/set the x velocity of the instance, for moving objects dynamically.
=head2 v_y
Accessor to get/set the y velocity of the instance, for moving objects dynamically.
=head2 rotation
Accessor to get/set the rotation of the object, in degrees (0..360).
=head2 ang_v
Accessor to get/set the angular velocity, for rotating objects dynamically.
=head2 AUTHORS
See L<SDL/AUTHORS>
=cut