Beefy Boxes and Bandwidth Generously Provided by pair Networks Bob
more useful options
 
PerlMonks  

Re^2: "flashing"-like stuff

by Anonymous Monk
on Sep 26, 2011 at 17:35 UTC ( #927907=note: print w/ replies, xml ) Need Help??


in reply to Re: "flashing"-like stuff
in thread "flashing"-like stuff

I solved this way:

#!/usr/bin/perl start: $|=1; use Term::ReadKey; ReadMode 3; ($w, $h) = GetTerminalSize; $n = 0.97; #AI sternght $l = 10; #difficulty $x1 = $w/2; $y1 = $h/2; @dxs = (-0.09, -0.08, -0.07, -0.06, -0.05, 0.05, 0.06, 0.07, 0.08, 0.0 +9); @d = (0.05, -0.05); $dx = $d[rand @d]; $dy = $d[rand @d]; $x = $w/2-5; while (1) { $key = ReadKey -1; if ($key eq "d") {$x++; $x = $w-10 if $x > $w-10} if ($key eq "a") {$x--; $x = 0 if $x < 0} $s = " " x (($x1-5)*$n) . "[========]"; $s .= "\n" x $y1 . " " x $x1 . "o"; $s .= "\n" x ($h-$y1-4) . " " x $x . "[========]\n\nyou:\t\t$you\ncomp +uter:\t$pc\n\r"; print $s; $dx *= -1 if $x1 >= $w-1 || $x1 <= 0; $dy *= -1 if ($y1 >= $h-5 && $x1 > $x && $x1 < $x+10) || ($y1 <= 1 && + $x1 > (($x1-5)*$n) && $x1 < (($x1+5)*$n)); $dx = $dxs[$x1-$x] if ($y1 >= $h-5 && $x1 > $x && $x1 < $x+10) || ($y +1 <= 1 && $x1 > (($x1-5)*$n) && $x1 < (($x1+5)*$n)); $x1 += $dx; $y1 += $dy; if ($y1 < 0) {ReadMode 0; ++$you; sleep 1; goto start} if ($y1 > $h-4) {ReadMode 0; ++$pc; sleep 1; goto start} select(undef, undef, undef, 0.005/$l); system('clear'); } ReadMode 0;
saving everything inside $s (: now it works perfectly (it has some minor bugs, but whatever)


Comment on Re^2: "flashing"-like stuff
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://927907]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (10)
As of 2014-04-16 23:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (436 votes), past polls