A simple little game inspired by pmichauds talks at YAPC-NA in Pittsburgh.
#!/usr/local/bin/perl6
my $guesses = 5;
say qq{{{{{
A Hurkle is hiding on a 10 by 10 grid. The south-west corner of the g
+rid is
point 0,0 and any gridpoint is a pair of whole numbers seperated by a
+comma.
Try to guess the Hurkle's gridpoint. You get $guesses tries. After e
+ach try,
I will tell you the approximate direction to go to look for the Hurkle
+.
}}}}};
my $guess = 0;
my $hurkle_x = 10.rand.int;
my $hurkle_y = 10.rand.int;
regex digit { [0..9] };
regex seperator { \s* ',' \s* };
while ($guess++ != $guesses) {
my $input = prompt "Guess #$guess ";
$input ~~ / $<x>=<digit> <seperator> $<y>=<digit> /;
unless ( ?$<x> && ?$<y> ) {
say 'Huh?';
redo;
}
if ( ($<x> - $hurkle_x).abs + ($<y> - $hurkle_y).abs == 0) {
say "\nYou found him in $guess guesses!";
exit 0;
}
say 'Go ', ($<y> < $hurkle_y)
?? 'North'
!! ($<y> > $hurkle_y)
?? 'South'
!! '',
($<x> < $hurkle_x)
?? 'East'
!! ($<x> > $hurkle_x)
?? 'West'
!! '';
}
say "\nSorry that's $guesses guesses. The Hurkle is at $hurkle_x,$hu
+rkle_y";
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|