]> skyeroc.xyz Git - dgamelaunch/commitdiff
Update TODO
authorPasi Kallinen <paxed@alt.org>
Sun, 13 Jan 2008 12:21:31 +0000 (12:21 +0000)
committerPasi Kallinen <paxed@alt.org>
Sun, 13 Jan 2008 12:21:31 +0000 (12:21 +0000)
git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@415 db0b04b0-f4d1-0310-9a6d-de3e77497b0e

TODO

diff --git a/TODO b/TODO
index 2c2bf80587bce272b0e87f3c220a14c24381230c..1c93f11c3b5178d4f14add7912e65956bbd5258a 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,21 +1,99 @@
+-add new config file commands:
+  -chpasswd       (change user's password)
+  -chmail         (change user's email address)
+  -watch_menu     (go to the watching menu)
+  -login          (login user)
+  -newuser        (register new user)
+  -quit           (quit from dgl)
+  -game_menu "x"  (go to game menu "x")
+  -return         (return to main menu)
+  -start_game     (start the selected game)
+
 -maybe allow new menu options configurable in config file, like
  commands['O', "Edit config file with foo"] = exec "foo" "rcfile"
 
- menu {
-  option {
-   keys = 'o', 'O'
-   name = "Edit config file with foo"
-   commands = exec "foo" "rcfile"
-  }
-  option {
-   keys = 'x', 'X'
-   name = "Blahblahblah"
-   commands = blahblah
-   require_login = 1
-  }
- } 
-
- menus:  main menu, game-specific menu, ...
+ OR:
+
+ menu "mainmenu_anon" {
+     option {
+        keys = 'l'
+       name = "l) Login"
+        commands = login
+     }
+     option {
+        keys = 'r'
+        name = "r) Register new user"
+       commands = newuser
+       flags = allow_new_nicks
+     }
+     option {
+        keys = 'w'
+       name = "w) Watch games in progress"
+        commands = watch_menu
+     }
+     emptyline
+     option {
+       keys = 'q', 'Q'
+       name = "q) Quit"
+       commands = quit
+     }
+ }
+
+ possibly adding a location = (x,y) key into menu option, allowing
+ absolute positioning of the option.
+
+
+ OR: (this looks nicer, but requires also editing the external text files)
+
+ menu "mainmenu_anon" {
+       banner = "dglmenu_main_anon.txt"
+       cursor = (x,y)
+       commands['l'] = login
+       commands['r'] = newuser
+       commands['w'] = watch_menu
+       commands['q'] = quit
+ }
+
+ menu "mainmenu_loggedin" {
+       banner = "dglmenu_main_loggedin.txt"
+       cursor = (x,y)
+       commands['c'] = chpasswd
+       commands['e'] = chmail
+       commands['w'] = watch_menu
+       commands['q', 'Q'] = quit
+       commands['1'] = game_menu "NH343"
+       commands['2'] = game_menu "Crxxx"
+       commands['3'] = game_menu "NhStb"
+ }
+
+ and the game submenus?
+
+ define {
+    blahblahblah game data here
+    short_name = "NH343"
+    menu {
+      banner = "dglmenu_game_nh343.txt"
+      cursor = (x,y)
+      commands['c'] = chpasswd
+      commands['e'] = chmail
+      commands['w'] = watch_menu
+      commands['o'] = exec "virus" "%rrcfiles/%n.nethackrc"
+      commands['q'] = return
+      commands['p'] =   # back up savefile
+                     commands = cp "/var/games/nethack/save/%u%n.gz" "/var/games/nethack/save/%u%n.gz.bak",
+                       # set NETHACKOPTIONS to point to the rcfile
+                     setenv "NETHACKOPTIONS" "@%rrcfiles/%n.nethackrc",
+                       # set up nethack mail stuff, assuming it's compiled with it...
+                      setenv "MAIL" "/var/mail/%n",
+                      setenv "SIMPLEMAIL" "1",
+                       # don't let the mail file grow
+                      unlink "/var/mail/%n",
+                       # aannnd we're off!
+                     start_game
+    }
+ }
+
+ and maybe allow changing the watching-screen layout too?
 
 
 -allow setting the default watch-screen sortmode in config file.