Jim Bacon
and 1 contributors

NAME

Games::Dukedom::Signal = provide "interrupts" to drive the state-machine

SYNOPSIS

 use Games::Dukedom;
  
 my $game = Games::Dukedom->new();
  
 $game->throw( 'This is a simple message' );
  
 $game->throw(
    msg     => 'This is also a simple message',
 )
  
 $game->throw(
    msg     => 'Do you want to be King? ',
    action  => 'get_yn',
 )
  
 $game->throw(
    msg     => 'Are you sure [Y/n]? ',
    action  => 'get_yn',
    default => 'Y'
 )
  

DESCRIPTION

This module is used to signal the application code that a display or input action is needed. This is accomplished by means of the Throwable role.

ATTRIBUTES

All attributes have read-only accessors.

msg

Holds a message to be presented to the user by the caller, if present.

action

Tells the caller what action should be taken before re-entering the main state-machine loop, if present. Currently takes one of the following values:

undef

Indicates that no action is needed other than displaying any message that is present.

get_yn

Indicates that the caller should supply a "y" or "n" response in $game->input.

get_value

Indicates that the caller should supply a numeric response in $game->input.

default

Provides a default response, if present, that may be used if desired to satisfy the requested action.

METHODS

as_string

This method will provide a string representing the error, containing the error's message.

SEE ALSO

Games::Dukedom

AUTHOR

Jim Bacon, <jim@nortx.com>

COPYRIGHT AND LICENSE

Copyright (C) 2014 by Jim Bacon

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version or, at your option, any later version of Perl 5 you may have available.