X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/f850d8bca38d6f025cd26b62b6e5504dd4d77ad1..2735a0c0aa4788e25cd2017fa1541d7ca0b8e5ba:/nethack.plp?ds=sidebyside
diff --git a/nethack.plp b/nethack.plp
index bba68fb..7a317a8 100644
--- a/nethack.plp
+++ b/nethack.plp
@@ -1,87 +1,48 @@
<(common.inc.plp)><:
- our $VERSION = 'v1.0';
- use Shiar_Sheet::KeySigns qw(%sign);
+Html({
+ title => 'nethack cheat sheet',
+ version => 'v1.1',
+ description => [
+ "Keyboard overview sheet for the Nethack console RPG game,",
+ "describing the default controls.",
+ ],
+ keywords => [qw'
+ nethack rogue game control controls sheet reference overview keyboard
+ '],
+ stylesheet => [qw'light dark circus mono red terse'],
+ keys => 1,
+});
- $header{content_type} = "text/html; charset=$sign{charset}";
-
-:>
-
-
-
-
-nethack cheat sheet
-<:= stylesheet(qw'light dark circus mono red terse') :>
-
-<:
- our $showkeys = exists $get{keys} && $get{keys} ne '0';
- print "\n".''
- unless $showkeys;
- print "\n".''
- if $showkeys and $get{keys} eq 'ghost';
:>
-
-
-
-
NetHack cheat sheet
normal gameplay
-
-
--
-
-
-
<:
-use Shiar_Sheet::Keyboard;
-my $keys = Shiar_Sheet::Keyboard->new({do 'nethack.inc.pl'});
+use Shiar_Sheet::Keyboard 2;
+my $info = do 'nethack.eng.inc.pl' or die $@;
+$info->{def} = do 'nethack.inc.pl';
+my $keys = Shiar_Sheet::Keyboard->new($info);
+$_->{"\e"} = ['me mode'] for values %{ $info->{def} };
+ # static reset button, even though it's not (officially) in the game
$keys->map($get{map}) or undef $get{map};
$keys->print_rows($get{rows} || '4321-421', [3,2,1,0]);
:>
-
-
- - direction
-
- Direction to move to or target a command (<:= $sign{motion} :>).
-
- move
-
- Other character movement.
-
- act
-
- Direct action command: takes a turn.
-
- info
-
- Informational command: shows/does something without ending the turn.
-
- invertory
-
- Display invertory menu.
-
- menu
-
- Enters some other menu.
-
+<: $keys->print_legend('legend-types', [qw( pm po co mi mo mv )]) :>
-
- - key<:= $sign{arg} :>
-
- Commands with a dot need at least one argument afterwards.
-
- key<:= $sign{argi} :>
-
- Asks for an inventory item.
-
- key<:= $sign{argm} :>
-
- Requires a direction afterwards.
-
+<: $keys->print_legend('legend-options', [qw( arg argi argm )]) :>
- keyboard map is
<:= $get{map} ? 'set to ' : '' :><:= $keys->{map} :>
-
- ascii mode is
- <:= defined $sign{-ascii} && 'forced ' :><:=
- $sign{-ascii} ? 'on' : 'off' :>
- keys are
<:= $showkeys ? 'always shown' : 'hidden if unassigned' :><:=
!exists $get{keys} && ' by default' :>
@@ -91,14 +52,3 @@ $keys->print_rows($get{rows} || '4321-421', [3,2,1,0]);
-
-
-