fixed not closing doors simultaneously after solving a level
[rocksndiamonds.git] / src / conf_gfx.c
index 2d3d99eb276ce711efb401fcd6ba59c709f290c0..1fa9a01ec4fcd24eda37ab34e189d15dbb808b82 100644 (file)
@@ -13,9 +13,9 @@
 #include "main.h"
 
 
-/* List values that are not defined in the configuration file are set to
-   reliable default values. If that value is GFX_ARG_UNDEFINED, it will
-   be dynamically determined, using some of the other list values. */
+// List values that are not defined in the configuration file are set to
+// reliable default values. If that value is GFX_ARG_UNDEFINED, it will
+// be dynamically determined, using some of the other list values.
 
 struct ConfigTypeInfo image_config_suffix[] =
 {
@@ -61,7 +61,9 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".post_delay_fixed",               ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".post_delay_random",              ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".init_event",                     ARG_UNDEFINED,  TYPE_STRING     },
+  { ".init_event_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".anim_event",                     ARG_UNDEFINED,  TYPE_STRING     },
+  { ".anim_event_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".name",                           ARG_UNDEFINED,  TYPE_STRING     },
   { ".scale_up_factor",                        ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".tile_size",                      ARG_UNDEFINED,  TYPE_INTEGER    },
@@ -89,7 +91,7 @@ struct ConfigInfo image_config[] =
   // image definitions for game elements (for in-game and editor graphics)
   // ==========================================================================
 
-  /* images for Boulder Dash style elements and actions */
+  // images for Boulder Dash style elements and actions
 
   { "bd_wall",                                 "RocksDC.png"           },
   { "bd_wall.xpos",                            "12"                    },
@@ -291,7 +293,7 @@ struct ConfigInfo image_config[] =
   { "bd_firefly.down.EDITOR.xpos",             "15"                    },
   { "bd_firefly.down.EDITOR.ypos",             "12"                    },
 
-  /* images for Supaplex style elements and actions */
+  // images for Supaplex style elements and actions
 
   { "[sp_default].exploding",                  "RocksSP.png"           },
   { "[sp_default].exploding.xpos",             "8"                     },
@@ -829,7 +831,7 @@ struct ConfigInfo image_config[] =
   { "sp_hardware_base_6.ypos",                 "4"                     },
   { "sp_hardware_base_6.frames",               "1"                     },
 
-  /* images for Sokoban style elements and actions */
+  // images for Sokoban style elements and actions
 
   { "sokoban_object",                          "RocksElements.png"     },
   { "sokoban_object.xpos",                     "9"                     },
@@ -857,7 +859,7 @@ struct ConfigInfo image_config[] =
   { "sokoban_field_player.EDITOR.xpos",                "1"                     },
   { "sokoban_field_player.EDITOR.ypos",                "15"                    },
 
-  /* images for Emerald Mine style elements and actions */
+  // images for Emerald Mine style elements and actions
 
   { "empty_space",                             "RocksSP.png"           },
   { "empty_space.xpos",                                "0"                     },
@@ -1722,7 +1724,7 @@ struct ConfigInfo image_config[] =
   { "em_steel_exit.closing.delay",             "6"                     },
   { "em_steel_exit.closing.anim_mode",         "linear"                },
 
-  /* images for Emerald Mine Club style elements and actions */
+  // images for Emerald Mine Club style elements and actions
 
   { "balloon",                                 "RocksDC.png"           },
   { "balloon.xpos",                            "12"                    },
@@ -1820,7 +1822,7 @@ struct ConfigInfo image_config[] =
   { "emc_wall_8.ypos",                         "7"                     },
   { "emc_wall_8.frames",                       "1"                     },
 
-  /* images for Diamond Caves style elements and actions */
+  // images for Diamond Caves style elements and actions
 
   { "invisible_steelwall",                     "RocksSP.png"           },
   { "invisible_steelwall.xpos",                        "3"                     },
@@ -2459,7 +2461,7 @@ struct ConfigInfo image_config[] =
   { "dc_steelwall_2_single.ypos",              "0"                     },
   { "dc_steelwall_2_single.frames",            "1"                     },
 
-  /* images for DX Boulderdash style elements and actions */
+  // images for DX Boulderdash style elements and actions
 
   { "tube_right_down",                         "RocksDC.png"           },
   { "tube_right_down.xpos",                    "9"                     },
@@ -2535,7 +2537,7 @@ struct ConfigInfo image_config[] =
   { "dx_supabomb.ypos",                                "9"                     },
   { "dx_supabomb.frames",                      "1"                     },
 
-  /* images for Rocks'n'Diamonds style elements and actions */
+  // images for Rocks'n'Diamonds style elements and actions
 
   { "key_1",                                   "RocksElements.png"     },
   { "key_1.xpos",                              "4"                     },
@@ -3247,7 +3249,7 @@ struct ConfigInfo image_config[] =
   { "stoneblock.ypos",                         "1"                     },
   { "stoneblock.frames",                       "1"                     },
 
-  /* images for other elements and actions */
+  // images for other elements and actions
 
   { "player_1",                                        "RocksHeroes.png"       },
   { "player_1.xpos",                           "0"                     },
@@ -5669,7 +5671,7 @@ struct ConfigInfo image_config[] =
   { "df_mine.ypos",                            "8"                     },
   { "df_mine.frames",                          "1"                     },
 
-  /* (these are only defined as elements to support ".PANEL" definitions) */
+  // (these are only defined as elements to support ".PANEL" definitions)
   { "graphic_1",                               UNDEFINED_FILENAME      },
   { "graphic_2",                               UNDEFINED_FILENAME      },
   { "graphic_3",                               UNDEFINED_FILENAME      },
@@ -5679,27 +5681,27 @@ struct ConfigInfo image_config[] =
   { "graphic_7",                               UNDEFINED_FILENAME      },
   { "graphic_8",                               UNDEFINED_FILENAME      },
 
-#include "conf_chr.c"  /* include auto-generated data structure definitions */
-#include "conf_cus.c"  /* include auto-generated data structure definitions */
-#include "conf_grp.c"  /* include auto-generated data structure definitions */
+#include "conf_chr.c"  // include auto-generated data structure definitions
+#include "conf_cus.c"  // include auto-generated data structure definitions
+#include "conf_grp.c"  // include auto-generated data structure definitions
 
 
   // ==========================================================================
   // image definitions not associated with game elements (menu screens etc.)
   // ==========================================================================
 
-  /* keyword to stop parser: "NO_MORE_ELEMENT_IMAGES" <-- do not change! */
+  // keyword to stop parser: "NO_MORE_ELEMENT_IMAGES" <-- do not change!
 
 #if 1
-  /* !!! TEMPORARILY STORED HERE -- PROBABLY TO BE CHANGED !!! */
+  // !!! TEMPORARILY STORED HERE -- PROBABLY TO BE CHANGED !!!
 
-  /* (for testing, change filename back to "emc_objects dot png") */
+  // (for testing, change filename back to "emc_objects dot png")
   { "emc_object",                              "RocksEMC.png"          },
 #if 0
   { "emc_object.scale_up_factor",              "2"                     },
 #endif
 
-  /* (for testing, change filename back to "emc_players dot png") */
+  // (for testing, change filename back to "emc_players dot png")
   { "emc_sprite",                              "RocksEMC.png"          },
 #if 0
   { "emc_sprite.scale_up_factor",              "2"                     },
@@ -6079,6 +6081,18 @@ struct ConfigInfo image_config[] =
   { "menu.button_quit.active",                 UNDEFINED_FILENAME      },
   { "menu.button_quit.active.clone_from",      "menu.button.active"    },
 
+  { "menu.button_first_level",                 UNDEFINED_FILENAME      },
+  { "menu.button_first_level.active",          UNDEFINED_FILENAME      },
+  { "menu.button_last_level",                  UNDEFINED_FILENAME      },
+  { "menu.button_last_level.active",           UNDEFINED_FILENAME      },
+  { "menu.button_level_number",                        UNDEFINED_FILENAME      },
+  { "menu.button_level_number.active",         UNDEFINED_FILENAME      },
+
+  { "menu.button_insert_solution",             UNDEFINED_FILENAME      },
+  { "menu.button_insert_solution.active",      UNDEFINED_FILENAME      },
+  { "menu.button_play_solution",               UNDEFINED_FILENAME      },
+  { "menu.button_play_solution.active",                UNDEFINED_FILENAME      },
+
   { "menu.scrollbar",                          "RocksDC.png"           },
   { "menu.scrollbar.xpos",                     "8"                     },
   { "menu.scrollbar.ypos",                     "10"                    },
@@ -6660,6 +6674,9 @@ struct ConfigInfo image_config[] =
   { "font.info.levelset",                      UNDEFINED_FILENAME      },
   { "font.info.levelset.clone_from",           "font.level_number"     },
 
+  { "font.main.network_players",               UNDEFINED_FILENAME      },
+  { "font.main.network_players.clone_from",    "font.level_number"     },
+
   { "editor.element_border",                   "RocksMore.png"         },
   { "editor.element_border.xpos",              "0"                     },
   { "editor.element_border.ypos",              "2"                     },
@@ -7115,6 +7132,14 @@ struct ConfigInfo image_config[] =
   { "gfx.editor.input.level_number.height",    "16"                    },
   { "gfx.editor.input.level_number.border_size","1"                    },
 
+  { "setup.input.text",                                "RocksSP.png"           },
+  { "setup.input.text.x",                      "0"                     },
+  { "setup.input.text.y",                      "0"                     },
+  { "setup.input.text.width",                  "32"                    },
+  { "setup.input.text.height",                 "32"                    },
+  { "setup.input.text.active_xoffset",         "0"                     },
+  { "setup.input.text.border_size",            "0"                     },
+
   { "global.border",                           "RocksScreen.png"       },
   { "global.border.MAIN",                      UNDEFINED_FILENAME      },
   { "global.border.SCORES",                    UNDEFINED_FILENAME      },
@@ -7329,8 +7354,8 @@ struct ConfigInfo image_config[] =
   { "door_2.top_border_correction.width",      "108"                   },
   { "door_2.top_border_correction.height",     "8"                     },
 
-  /* the last image entry apparently gets overwritten by very last entry
-     of "image_config[]"; so far this bug could not be found and fixed */
+  // the last image entry apparently gets overwritten by very last entry
+  // of "image_config[]"; so far this bug could not be found and fixed
   { "last_image_entry_bug",                    UNDEFINED_FILENAME      },
 
 
@@ -7338,10 +7363,10 @@ struct ConfigInfo image_config[] =
   // non-image definitions
   // ==========================================================================
 
-  /* the following directives are not associated with an image, but
-     probably make sense to be defined in "graphicsinfo.conf", too */
+  // the following directives are not associated with an image, but
+  // probably make sense to be defined in "graphicsinfo.conf", too
 
-  /* keyword to start parser: "CONFIG_VARS_START" <-- do not change! */
+  // keyword to start parser: "CONFIG_VARS_START" <-- do not change!
 
   { "[title_initial].fade_mode",               "fade"                  },
   { "[title_initial].fade_delay",              "500"                   },
@@ -7887,11 +7912,23 @@ struct ConfigInfo image_config[] =
   { "main.button.quit.x",                      "0"                     },
   { "main.button.quit.y",                      "288"                   },
 
+  { "main.button.first_level.x",               "-1"                    },
+  { "main.button.first_level.y",               "-1"                    },
+  { "main.button.last_level.x",                        "-1"                    },
+  { "main.button.last_level.y",                        "-1"                    },
+  { "main.button.level_number.x",              "-1"                    },
+  { "main.button.level_number.y",              "-1"                    },
+
   { "main.button.prev_level.x",                        "320"                   },
   { "main.button.prev_level.y",                        "96"                    },
   { "main.button.next_level.x",                        "448"                   },
   { "main.button.next_level.y",                        "96"                    },
 
+  { "main.button.insert_solution.x",           "-1"                    },
+  { "main.button.insert_solution.y",           "-1"                    },
+  { "main.button.play_solution.x",             "-1"                    },
+  { "main.button.play_solution.y",             "-1"                    },
+
   { "main.text.name.x",                                "-1"                    },
   { "main.text.name.y",                                "-1"                    },
   { "main.text.name.width",                    "-1"                    },
@@ -8038,6 +8075,24 @@ struct ConfigInfo image_config[] =
   { "main.input.name.valign",                  "top"                   },
   { "main.input.name.font",                    "font.input_1"          },
 
+  { "main.network_players.x",                  "68"                    },
+  { "main.network_players.y",                  "448"                   },
+  { "main.network_players.align",              "center"                },
+  { "main.network_players.valign",             "middle"                },
+  { "main.network_players.font",               "font.main.network_players" },
+  { "main.network_players.tile_size",          "16"                    },
+  { "main.network_players.border_size",                "2"                     },
+
+  { "main.preview_players.x",                  "474"                   },
+  { "main.preview_players.y",                  "448"                   },
+  { "main.preview_players.align",              "center"                },
+  { "main.preview_players.valign",             "middle"                },
+  { "main.preview_players.tile_size",          "32"                    },
+  { "main.preview_players.border_size",                "2"                     },
+  { "main.preview_players.vertical",           "false"                 },
+  { "main.preview_players.xoffset",            "-1"                    },
+  { "main.preview_players.yoffset",            "-1"                    },
+
   { "preview.x",                               "272"                   },
   { "preview.y",                               "380"                   },
   { "preview.align",                           "center"                },
@@ -9343,20 +9398,20 @@ struct ConfigInfo image_config[] =
   { "request.button.no.y",                     "250"                   },
   { "request.button.confirm.x",                        "2"                     },
   { "request.button.confirm.y",                        "250"                   },
-  { "request.button.player_1.x",               "20"                    },
-  { "request.button.player_1.y",               "200"                   },
+  { "request.button.player_1.x",               "35"                    },
+  { "request.button.player_1.y",               "185"                   },
   { "request.button.player_1.draw_player",     "true"                  },
   { "request.button.player_1.tile_size",       "16"                    },
-  { "request.button.player_2.x",               "50"                    },
-  { "request.button.player_2.y",               "200"                   },
+  { "request.button.player_2.x",               "65"                    },
+  { "request.button.player_2.y",               "215"                   },
   { "request.button.player_2.draw_player",     "true"                  },
   { "request.button.player_2.tile_size",       "16"                    },
-  { "request.button.player_3.x",               "20"                    },
-  { "request.button.player_3.y",               "230"                   },
+  { "request.button.player_3.x",               "35"                    },
+  { "request.button.player_3.y",               "245"                   },
   { "request.button.player_3.draw_player",     "true"                  },
   { "request.button.player_3.tile_size",       "16"                    },
-  { "request.button.player_4.x",               "50"                    },
-  { "request.button.player_4.y",               "230"                   },
+  { "request.button.player_4.x",               "5                    },
+  { "request.button.player_4.y",               "215"                   },
   { "request.button.player_4.draw_player",     "true"                  },
   { "request.button.player_4.tile_size",       "16"                    },
 
@@ -9391,6 +9446,10 @@ struct ConfigInfo image_config[] =
 
   { "viewport.window.width",                   "672"                   },
   { "viewport.window.height",                  "560"                   },
+  { "viewport.window.min_width",               "-1"                    },
+  { "viewport.window.min_height",              "-1"                    },
+  { "viewport.window.max_width",               "-1"                    },
+  { "viewport.window.max_height",              "-1"                    },
   { "viewport.window.TITLE.width",             ARG_DEFAULT             },
   { "viewport.window.TITLE.height",            ARG_DEFAULT             },
 
@@ -9398,79 +9457,174 @@ struct ConfigInfo image_config[] =
   { "viewport.playfield.y",                    "6"                     },
   { "viewport.playfield.width",                        "548"                   },
   { "viewport.playfield.height",               "548"                   },
+  { "viewport.playfield.min_width",            "-1"                    },
+  { "viewport.playfield.min_height",           "-1"                    },
+  { "viewport.playfield.max_width",            "-1"                    },
+  { "viewport.playfield.max_height",           "-1"                    },
+  { "viewport.playfield.margin_left",          "0"                     },
+  { "viewport.playfield.margin_right",         "0"                     },
+  { "viewport.playfield.margin_top",           "0"                     },
+  { "viewport.playfield.margin_bottom",                "0"                     },
+  { "viewport.playfield.border_left",          "-1"                    },
+  { "viewport.playfield.border_right",         "-1"                    },
+  { "viewport.playfield.border_top",           "-1"                    },
+  { "viewport.playfield.border_bottom",                "-1"                    },
   { "viewport.playfield.border_size",          "2"                     },
+  { "viewport.playfield.align_size",           "16"                    },
+  { "viewport.playfield.align",                        "left"                  },
+  { "viewport.playfield.valign",               "top"                   },
   { "viewport.playfield.MAIN.x",               ARG_DEFAULT             },
   { "viewport.playfield.MAIN.y",               ARG_DEFAULT             },
   { "viewport.playfield.MAIN.width",           ARG_DEFAULT             },
   { "viewport.playfield.MAIN.height",          ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.min_width",       ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.min_height",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.max_width",       ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.max_height",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_left",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_right",    ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_top",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_bottom",   ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_left",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_right",    ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_top",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_bottom",   ARG_DEFAULT             },
   { "viewport.playfield.MAIN.border_size",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.align_size",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.align",           ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.valign",          ARG_DEFAULT             },
   { "viewport.playfield.SCORES.x",             ARG_DEFAULT             },
   { "viewport.playfield.SCORES.y",             ARG_DEFAULT             },
   { "viewport.playfield.SCORES.width",         ARG_DEFAULT             },
   { "viewport.playfield.SCORES.height",                ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.min_width",     ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.min_height",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.max_width",     ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.max_height",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_left",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_right",  ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_top",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_bottom", ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_left",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_right",  ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_top",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_bottom", ARG_DEFAULT             },
   { "viewport.playfield.SCORES.border_size",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.align_size",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.align",         ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.valign",                ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.x",             ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.y",             ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.width",         ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.height",                ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.min_width",     ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.min_height",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.max_width",     ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.max_height",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_left",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_right",  ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_top",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_bottom", ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_left",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_right",  ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_top",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_bottom", ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.border_size",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.align_size",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.align",         ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.valign",                ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.x",            ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.y",            ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.width",                ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.height",       ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.min_width",    ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.min_height",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.max_width",    ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.max_height",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_left",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_right", ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_top",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_bottom",        ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_left",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_right", ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_top",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_bottom",        ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.border_size",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.align_size",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.align",                ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.valign",       ARG_DEFAULT             },
 
   { "viewport.door_1.x",                       "566"                   },
   { "viewport.door_1.y",                       "60"                    },
   { "viewport.door_1.width",                   "100"                   },
   { "viewport.door_1.height",                  "280"                   },
   { "viewport.door_1.border_size",             "4"                     },
+  { "viewport.door_1.align",                   "left"                  },
+  { "viewport.door_1.valign",                  "top"                   },
   { "viewport.door_1.MAIN.x",                  ARG_DEFAULT             },
   { "viewport.door_1.MAIN.y",                  ARG_DEFAULT             },
   { "viewport.door_1.MAIN.width",              ARG_DEFAULT             },
   { "viewport.door_1.MAIN.height",             ARG_DEFAULT             },
   { "viewport.door_1.MAIN.border_size",                ARG_DEFAULT             },
+  { "viewport.door_1.MAIN.align",              ARG_DEFAULT             },
+  { "viewport.door_1.MAIN.valign",             ARG_DEFAULT             },
   { "viewport.door_1.SCORES.x",                        ARG_DEFAULT             },
   { "viewport.door_1.SCORES.y",                        ARG_DEFAULT             },
   { "viewport.door_1.SCORES.width",            ARG_DEFAULT             },
   { "viewport.door_1.SCORES.height",           ARG_DEFAULT             },
   { "viewport.door_1.SCORES.border_size",      ARG_DEFAULT             },
+  { "viewport.door_1.SCORES.align",            ARG_DEFAULT             },
+  { "viewport.door_1.SCORES.valign",           ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.x",                        ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.y",                        ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.width",            ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.height",           ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.border_size",      ARG_DEFAULT             },
+  { "viewport.door_1.EDITOR.align",            ARG_DEFAULT             },
+  { "viewport.door_1.EDITOR.valign",           ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.x",               ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.y",               ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.width",           ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.height",          ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.border_size",     ARG_DEFAULT             },
+  { "viewport.door_1.PLAYING.align",           ARG_DEFAULT             },
+  { "viewport.door_1.PLAYING.valign",          ARG_DEFAULT             },
 
   { "viewport.door_2.x",                       "566"                   },
   { "viewport.door_2.y",                       "400"                   },
   { "viewport.door_2.width",                   "100"                   },
   { "viewport.door_2.height",                  "100"                   },
   { "viewport.door_2.border_size",             "4"                     },
+  { "viewport.door_2.align",                   "left"                  },
+  { "viewport.door_2.valign",                  "top"                   },
   { "viewport.door_2.MAIN.x",                  ARG_DEFAULT             },
   { "viewport.door_2.MAIN.y",                  ARG_DEFAULT             },
   { "viewport.door_2.MAIN.width",              ARG_DEFAULT             },
   { "viewport.door_2.MAIN.height",             ARG_DEFAULT             },
   { "viewport.door_2.MAIN.border_size",                ARG_DEFAULT             },
+  { "viewport.door_2.MAIN.align",              ARG_DEFAULT             },
+  { "viewport.door_2.MAIN.valign",             ARG_DEFAULT             },
   { "viewport.door_2.SCORES.x",                        ARG_DEFAULT             },
   { "viewport.door_2.SCORES.y",                        ARG_DEFAULT             },
   { "viewport.door_2.SCORES.width",            ARG_DEFAULT             },
   { "viewport.door_2.SCORES.height",           ARG_DEFAULT             },
   { "viewport.door_2.SCORES.border_size",      ARG_DEFAULT             },
+  { "viewport.door_2.SCORES.align",            ARG_DEFAULT             },
+  { "viewport.door_2.SCORES.valign",           ARG_DEFAULT             },
   { "viewport.door_2.EDITOR.x",                        "566"                   },
   { "viewport.door_2.EDITOR.y",                        "356"                   },
   { "viewport.door_2.EDITOR.width",            "100"                   },
   { "viewport.door_2.EDITOR.height",           "144"                   },
   { "viewport.door_2.EDITOR.border_size",      "4"                     },
+  { "viewport.door_2.EDITOR.align",            "left"                  },
+  { "viewport.door_2.EDITOR.valign",           "top"                   },
   { "viewport.door_2.PLAYING.x",               ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.y",               ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.width",           ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.height",          ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.border_size",     ARG_DEFAULT             },
+  { "viewport.door_2.PLAYING.align",           ARG_DEFAULT             },
+  { "viewport.door_2.PLAYING.valign",          ARG_DEFAULT             },
 
   { NULL,                                      NULL                    }
 };