[lore] [ucc] Murphy's Lore: Call for submissions
David Basden
davidb-0fm0 at rcpt.to
Fri Mar 28 00:04:59 WST 2008
On Thu, Mar 27, 2008 at 10:51:09PM +0900, Grahame Bowland wrote:
> Hey guys
>
> For those of you that don't know, Murphy's Lore is that UCC's
> occasionally published magazine. The last one we put out was jam
> packed with quality journalism, delay slots, and pheromones.
>
> If you want to see the last edition published, grab it here:
> http://grahame.ucc.asn.au/lore_2006.pdf
>
> I'm after articles for the next edition. If you've got something you'd
> like to write about, please, contribute. Articles accepted in any
> format I can read, and please let me know when you submit that the
> article that you're happy to license it under the following license:
> http://creativecommons.org/licenses/by-nc-sa/2.5/au/
> (or something more permissive if you like..)
>
> Some ideas for articles:
> - write about an upcoming event
> - write about an event that just happened, and how awesome it was
> - how to commit evil in your favourite programming language (perl,
> python, C, ML, ...)
> - an article about a feature others might not know about in a language
> - make a sudoku, crossword, where's Zanchey, etc
> - hardware! computer architectures! something cool you learnt!
> - ... whatever, I'll read it and might even print it :-)
>
> If you've already sent in articles, please send them again or at least
> let me know you sent them so I know to look for them.
>
> I'll be at UCC next Friday night (the 4th) - I'll shout pizza for
> people that want to do some Lore type stuff.
>
> Anyway, have fun
> Grahame
Friends don't let friends do PERL.
use Term::ReadKey;use vars qw($XW $XH $FX $FY @W @X $D $GBy);sub Wc{return
(rand($XW),rand($XH));}sub tZ{my($NX,$NY)=Wc();while($X[$NY]->[$NX]ne' '){
($NX,$NY)=Wc();}$X[$FY]->[$FX]=' ';$X[$NY]->[$NX]='%';$FY=$NY;$FX=$NX;}sub
MoK{print "\nThe dungeon collapses. You die.\n";print "Your score was ".
scalar(@W)."\n";exit(0);}sub BgK{my($OX)=$W[0]->[0];my($OY)=$W[0]->[1];my(
$NX)=$OX;my($NY)=$OY;D:{if($D==8){$NY--;last D;}if($D==2){$NY++;last D;}if
($D==4){$NX--;last D;}if($D==6){$NX++;last D;}}if(($NX<0)||($NX>=$XW)){MoK()
;}if(($NY<0)||($NY>=$XH)){MoK();}my($N)=$X[$NY]->[$NX];C:{if($N eq '%'){$GBy
+=3;tZ();last C;}if($N ne ' '){MoK();}}$X[$NY]->[$NX]='@';unshift(@W,[$NX,
$NY]);if(scalar(@W)>1){$X[$OY]->[$OX]='*';}if($GBy){$GBy--;}else{my($w,$wx,
$wy);$w=pop(@W);$wx=$w->[0];$wy=$w->[1];$X[$wy]->[$wx]=' ';}}sub ae{my($w,
$h,$g)=@_;$XW=$w;$XH=$h;print '^[[H^[[J';@W=();push(@W,[0,0]);my($fT,$lYH,
$Zm);for $lYH(1..$XH){$Zm=[];for $fT(1..$XW){push(@$Zm,' ');}push(@X,$Zm);
}$X[0]->[0]='@';$D=6;$GBy=$g;$FX=$XW/2;$FY=$XH/2;$X[$XH/2]->[$XW/2]='%';}
sub pR{my($bH);print '^[[H';for(1..($XW*2+1)){$bH.='#';}print $bH."\n";
foreach(@X){print '#'.join(' ',@{$_})."#\n";}print $bH."\n";}sub mW{my($iL
);ReadMode 4;while(defined($iL=ReadKey(-1))){K:{if(($iL eq '4')||($iL eq
'h')){$D=4;last K;}if(($iL eq '6')||($iL eq 'l')){$D=6;last K;}if(($iL
eq '8')||($iL eq 'k')){$D=8;last K;}if(($iL eq '2')||($iL eq 'j')){$D=2;last
K;}if($iL eq '5'){$D=2;last K;}}}ReadMode 0;}sub pH{ae(35,22,10);pR();for(;
;){select(undef,undef,undef,0.15);mW();BgK();pR();}}pH();
More information about the lore
mailing list