Term::Animation

NAME
    Term::Animation::Entity

SYNOPSIS
      use Term::Animation::Entity;

      # Constructor
      my $entity = Term::Animation::Entity->new(
          shape         => ';-)',
          position      => [ 1, 2, 3 ],
          callback_args => [ 0, 1, 0, 0 ],
      );

ABSTRACT
    A sprite object for use with Term::Animation

DESCRIPTION
    Term::Animation::Entity is used by Term::Animation to represent a single
    sprite on the screen.

PARAMETERS
      name < SCALAR >
            A string uniquely identifying this object

      shape < REF >
            The ASCII art for this object. It can be provided as:
                      1) A single multi-line text string (no animation)
                      2) An array of multi-line text strings, where each
                         element is a single animation frame
                      3) An array of 2D arrays. Each element in the outer
                         array is a single animation frame.
            If you provide an array, each element is a single frame of animation.
            If you provide either 1) or 2), a single newline will be stripped off
            of the beginning of each string. 3) is what the module uses internally.

      auto_trans < BOOLEAN >
            Whether to automatically make whitespace at the beginning of each line
            transparent.  Default: 0

      position < ARRAY_REF >
            A list specifying initial x,y and z coordinates
            Default: [ 0, 0, 0 ]

      callback < SUBROUTINE_REF >
            Callback routine for this entity. Default: I

      callback_args < REF >
            Arguments to the callback routine.

      curr_frame < INTEGER >
            Animation frame to begin with. Default: 0

      wrap < BOOLEAN >
            Whether this entity should wrap around the edge of the screen. Default: 0

      transparent < SCALAR >
            Character used to indicate transparency. Default: ?

      die_offscreen < BOOLEAN >
            Whether this entity should be killed if
            it goes off the screen. Default: 0

      die_entity < ENTITY >
            Specifies an entity (ref or name). When the named
            entity dies, this entity should die as well. Default: undef

      die_time < INTEGER >
            The time at which this entity should be killed. This 
            should be a UNIX epoch time, as returned
            by I