NAME
Game::Battleship::Craft
VERSION
version 0.0602
SYNOPSIS
use Game::Battleship::Craft;
my $craft = Game::Battleship::Craft->new(
id => 'T',
name => 'tug boat',
points => 1,
)
my $points_remaining = $craft->hit;
DESCRIPTION
A Game::Battleship::Craft
object represents the profile of a Battleship craft.
PUBLIC METHODS
new
id => $STRING
A scalar identifier to use to indicate position on the grid. If one is not provided, the upper-cased first name character will be used by default.
Currently, it is required that this be a single uppercase letter (the first letter of the craft name, probably), since a
hit
will be indicated by "lower-casing" this mark on a player grid.name => $STRING
A required attribute provided to give the craft a name.
points => $INTEGER
The number of total points that a craft is worth.
position => [$X, $Y]
The position of the craft bow ("nose") on the grid.
orient => $BOOLEAN
The vertical or horizontal orientation of the craft.
Set this to
0
for vertical and1
for horizontal.If not defined, the craft is randomly oriented on creation.
hits => $INTEGER
Computed
hit
$points_remaining = $craft->hit;
Increment the craft's hit
attribute value and return what's left of the craft (total point value minus the number of hits).
TO DO
Have different numbers of different weapons.
Allow a craft to have a width.
AUTHOR
Gene Boggs <gene@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2020 by Gene Boggs.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.