Maze 2008: Sample Program

0403.pl


#!/usr/bin/perl

require Term::Screen;
$crt=new Term::Screen;
$crt->clrscr();
$Y=10;
$X=10;
$crt->at($Y,$X)->puts("O");
while($end_game != 1)
{
  $key = $crt->getch();
  if (length($key) != 1) # Handle multi-character input
  {
    $crt->at($Y,$X)->puts(" ");
    if ($key eq "kl") {
      $X--; }
    elsif ($key eq "kr") {
         $X++; }
      elsif ($key eq "ku") {
          $Y--; }
        elsif ($key eq "kd") {
          $Y++; }
    $crt->at($Y,$X)->puts("O");
  }
  else
  {
    if ( ($key eq 'Q') || ($key eq 'q') )
    {
      $end_game = 1;
    }
  }
}