home · contact · privacy
Read default order of windows from file config/toggle_win_order.
[plomrogue] / src / main.c
index dff5d208414e02ea3749a85b96980de8dccfe37e..06f53ab39d14945c11d04a4bf89ce9aad8da683d 100644 (file)
@@ -5,8 +5,8 @@
 #include <stdio.h> /* for FILE typedef, F_OK, rename() */
 #include <ncurses.h> /* for initscr(), noecho(), curs_set(), keypad(), raw() */
 #include <time.h> /* for time() */
-#include <unistd.h> /* for unlink(), getopt(), optarg */
-#include <stdint.h> /* for uint8_t */
+#include <unistd.h> /* for getopt(), optarg */
+#include <stdint.h> /* for uint16_t, uint32_t */
 #include <errno.h> /* for errno */
 #include "windows.h" /* for structs WinMeta, Win, init_win(), init_win_meta(),
                       * draw_all_wins()
 #include "draw_wins.h" /* for draw_keys_win(), draw_map_win(), draw_info_win(),
                         * draw_log_win()
                         */
-#include "keybindings.h" /* for initkeybindings(), get_action_key() */
+#include "keybindings.h" /* for init_keybindings(), get_action_key() */
 #include "readwrite.h" /* for [read/write]_uint[8/16/32][_bigendian]() */
 #include "map_objects.h" /* for structs Monster, Item, Player,
                           * init_map_object_defs(), read_map_objects(),
                           * build_map_objects()
                           */
-#include "map_object_actions.h" /* for player_wait(), move_player() */
 #include "map.h" /* for struct Map, init_map() */
-#include "misc.h" /* for update_log(), toggle_window(), find_passable_pos(),
-                   * save_game()
-                   */
-#include "yx_uint16.h" /* for dir enum */
+#include "misc.h" /* for update_log(), find_passable_pos(), save_game() */
+#include "wincontrol.h" /* for toggle_window() */
 #include "rrand.h" /* for rrand(), rrand_seed() */
 #include "rexit.h" /* for exit_game() */
 #include "control.h" /* for meta_control() */
+#include "command_db.h" /* for init_command_db() */
+
 
 
 int main(int argc, char *argv[])
 {
     struct World world;
 
+    init_command_db(&world);
+    set_cleanup_flag(CLEANUP_COMMAND_DB);
+
     /* Check for corrupted savefile / recordfile savings. */
     char * recordfile = "record";
     char * savefile = "savefile";
@@ -100,7 +102,7 @@ int main(int argc, char *argv[])
     world.player = &player;
     world.monster = 0;
     world.item = 0;
-    init_map_object_defs(&world, "defs");
+    init_map_object_defs(&world, "config/defs");
 
     /* For interactive mode, try to load world state from savefile. */
     char * err_o = "Trouble loading game (fopen() in main()) / "
@@ -218,10 +220,7 @@ int main(int argc, char *argv[])
     struct Win win_map = init_win(&win_meta, "Map",
                                   0, width_mapwin, &world, draw_map_win);
     world.wins.map = &win_map;
-    toggle_window(&win_meta, world.wins.keys);
-    toggle_window(&win_meta, world.wins.map);
-    toggle_window(&win_meta, world.wins.info);
-    toggle_window(&win_meta, world.wins.log);
+    sorted_wintoggle(&world);
 
     /* Replay mode. */
     int key;
@@ -245,7 +244,7 @@ int main(int argc, char *argv[])
             draw_all_wins(&win_meta);
             key = getch();
             if (   EOF != action
-                && key == get_action_key(world.keybindings, "wait / next turn"))
+                && key == get_action_key(world.keybindings, "wait"))
             {
                 action = getc(file);
                 if (EOF != action)