Games::Nintendo::Mario::SMB - a class for mushroom-eating Italian plumbers


Games-Nintendo-Mario documentation Contained in the Games-Nintendo-Mario distribution.

Index


Code Index:

NAME

Top

Games::Nintendo::Mario::SMB - a class for mushroom-eating Italian plumbers

VERSION

Top

version 0.204

SYNOPSIS

Top

  use Games::Nintendo::Mario::SMB;

  my $hero = new Games::Nintendo::Mario::SMB
                   name  => 'Luigi',
                   state => 'normal';

  $hero->powerup('mushroom'); # doop doop doop!
  $hero->powerup('flower');   # change clothes

  $hero->damage for (1 .. 2); # cue the Mario Death Music

DESCRIPTION

Top

This class subclasses Games::Nintendo::Mario, providing a model of the behavior of the Mario Brothers in Super Mario Brothers. All of the methods described in the Mario interface exist as documented.

NAMES

The plumber may be named Mario or Luigi.

STATES

The plumber's state may be any of: normal, super, or fire

POWERUPS

Valid powerups are: mushroom and flower

METHODS

Top

games

This ruleset reflects Mario in Super Mario Bros., the original SMB game.

AUTHOR

Top

Ricardo SIGNES <rjbs@cpan.org>

COPYRIGHT

Top


Games-Nintendo-Mario documentation Contained in the Games-Nintendo-Mario distribution.

use strict;
use warnings;
package Games::Nintendo::Mario::SMB;

our $VERSION = '0.204';

use base qw(Games::Nintendo::Mario);

sub _names  { qw[Mario Luigi] }
sub _states { qw[normal super fire] }
sub _items  { qw[mushroom flower] }

sub _goto_hash { 
  {
    damage => {
      normal => 'dead',
      _else  => 'normal'
    },
    mushroom => {
      fire  => 'fire',
      _else => 'super',
    },
    flower => {
      normal => 'super',
      _else  => 'fire'
    }
  }
}

sub games {
  return ('Super Mario Bros.');
}

"It's-a me!  Mario!";

__END__