Ricardo SIGNES > Games-Board-1.011 > Games::Board

Download:
Games-Board-1.011.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 1.011   Source   Latest Release: Games-Board-1.013

NAME ^

Games::Board -- a parent class for board games

VERSION ^

 $Id: /my/cs/projects/board/trunk/lib/Games/Board.pm 27799 2006-11-11T02:23:32.940873Z rjbs  $

SYNOPSIS ^

        use Games::Board;

        my $board = Games::Board->new;

        $board->add_space(
                id  => 'go',
                dir => { next => 'mediterranean', prev => 'boardwalk' },
                cost => undef
        );

        my $tophat = Games::Board::Piece->new(id => 'tophat')->move(to => 'go');

DESCRIPTION ^

This module provides a base class for representing board games.

METHODS ^

new

This method constructs a new game board and returns it. As constructed it has no spaces or pieces on it.

space($id)

This method returns the space with the given $id. If no space with that id exists, undef is returned.

add_space(%args)

This method adds a space to the board. It is passed a hash of attributes to use in creating a Games::Board::Space object. The object is created by calling the constructor on the class whose name is returned by the spaceclass method. This class must inherit from Games::Board::Space.

piececlass

This method returns the class used for pieces on this board.

spaceclass

This method returns the class used for spaces on this board.

add_piece(%args)

This method adds a piece to the board. It is passed a hash of attributes to use in creating a Games::Board::Piece object. The object is created by calling the constructor on the class whose name is returned by the piececlass method. This class must inherit from Games::Board::Piece.

TODO ^

Lots. First up: write a TODO list.

SEE ALSO ^

AUTHOR ^

Ricardo SIGNES <rjbs@cpan.org>

COPYRIGHT ^

Copyright 2003-2004 by Ricardo Signes <rjbs@cpan.org>

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html

syntax highlighting: