improved configurability of tape date and time display positions
[rocksndiamonds.git] / src / conf_gfx.c
index d503d1b8f57dce33bd6b6fc1299a7c7715c2e950..96ff7825da2219bf8aedc4ddb73c64822cb1cf16 100644 (file)
@@ -1,15 +1,13 @@
-/***********************************************************
-* Rocks'n'Diamonds -- McDuffin Strikes Back!               *
-*----------------------------------------------------------*
-* (c) 1995-2006 Artsoft Entertainment                      *
-*               Holger Schemel                             *
-*               Detmolder Strasse 189                      *
-*               33604 Bielefeld                            *
-*               Germany                                    *
-*               e-mail: info@artsoft.org                   *
-*----------------------------------------------------------*
-* conf_gfx.c                                               *
-***********************************************************/
+// ============================================================================
+// Rocks'n'Diamonds - McDuffin Strikes Back!
+// ----------------------------------------------------------------------------
+// (c) 1995-2014 by Artsoft Entertainment
+//                         Holger Schemel
+//                 info@artsoft.org
+//                 http://www.artsoft.org/
+// ----------------------------------------------------------------------------
+// conf_gfx.c
+// ============================================================================
 
 #include "libgame/libgame.h"
 #include "main.h"
@@ -59,6 +57,7 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".post_delay_random",              ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".name",                           ARG_UNDEFINED,  TYPE_STRING     },
   { ".scale_up_factor",                        ARG_UNDEFINED,  TYPE_INTEGER    },
+  { ".tile_size",                      ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".clone_from",                     ARG_UNDEFINED,  TYPE_GRAPHIC    },
   { ".fade_mode",                      ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".fade_delay",                     ARG_UNDEFINED,  TYPE_INTEGER    },
@@ -4744,6 +4743,9 @@ struct ConfigInfo image_config[] =
   { "game.button.gfx.sound_simple.pressed_xoffset", "-100"             },
   { "game.button.gfx.sound_simple.active_yoffset", "-30"               },
 
+  { "game.button.gfx.save",                    UNDEFINED_FILENAME      },
+  { "game.button.gfx.load",                    UNDEFINED_FILENAME      },
+
   { "tape.button.gfx.eject",                   "RocksDoor.png"         },
   { "tape.button.gfx.eject.x",                 "305"                   },
   { "tape.button.gfx.eject.y",                 "357"                   },
@@ -5226,6 +5228,97 @@ struct ConfigInfo image_config[] =
   { "editor.cascade_list.active.ypos",         "8"                     },
   { "editor.cascade_list.active.frames",       "1"                     },
 
+  { "editor.palette.button",                   "RocksDoor.png"         },
+  { "editor.palette.button.x",                 "525"                   },
+  { "editor.palette.button.y",                 "30"                    },
+  { "editor.palette.button.width",             "20"                    },
+  { "editor.palette.button.height",            "20"                    },
+  { "editor.palette.button.pressed_xoffset",   "-20"                   },
+
+  { "editor.palette.scroll_up",                        "RocksDoor.png"         },
+  { "editor.palette.scroll_up.x",              "750"                   },
+  { "editor.palette.scroll_up.y",              "0"                     },
+  { "editor.palette.scroll_up.width",          "10"                    },
+  { "editor.palette.scroll_up.height",         "10"                    },
+  { "editor.palette.scroll_up.pressed_xoffset",        "-10"                   },
+
+  { "editor.palette.scroll_down",              "RocksDoor.png"         },
+  { "editor.palette.scroll_down.x",            "750"                   },
+  { "editor.palette.scroll_down.y",            "10"                    },
+  { "editor.palette.scroll_down.width",                "10"                    },
+  { "editor.palette.scroll_down.height",       "10"                    },
+  { "editor.palette.scroll_down.pressed_xoffset", "-10"                        },
+
+  { "editor.palette.scrollbar",                        "RocksDoor.png"         },
+  { "editor.palette.scrollbar.x",              "750"                   },
+  { "editor.palette.scrollbar.y",              "20"                    },
+  { "editor.palette.scrollbar.width",          "10"                    },
+  { "editor.palette.scrollbar.height",         "10"                    },
+  { "editor.palette.scrollbar.pressed_xoffset",        "-10"                   },
+
+  { "editor.playfield.scroll_up",              "RocksDoor.png"         },
+  { "editor.playfield.scroll_up.x",            "724"                   },
+  { "editor.playfield.scroll_up.y",            "0"                     },
+  { "editor.playfield.scroll_up.width",                "16"                    },
+  { "editor.playfield.scroll_up.height",       "16"                    },
+  { "editor.playfield.scroll_up.pressed_xoffset", "-16"                        },
+
+  { "editor.playfield.scroll_down",            "RocksDoor.png"         },
+  { "editor.playfield.scroll_down.x",          "724"                   },
+  { "editor.playfield.scroll_down.y",          "16"                    },
+  { "editor.playfield.scroll_down.width",      "16"                    },
+  { "editor.playfield.scroll_down.height",     "16"                    },
+  { "editor.playfield.scroll_down.pressed_xoffset", "-16"              },
+
+  { "editor.playfield.scroll_left",            "RocksDoor.png"         },
+  { "editor.playfield.scroll_left.x",          "724"                   },
+  { "editor.playfield.scroll_left.y",          "32"                    },
+  { "editor.playfield.scroll_left.width",      "16"                    },
+  { "editor.playfield.scroll_left.height",     "16"                    },
+  { "editor.playfield.scroll_left.pressed_xoffset", "-16"              },
+
+  { "editor.playfield.scroll_right",           "RocksDoor.png"         },
+  { "editor.playfield.scroll_right.x",         "724"                   },
+  { "editor.playfield.scroll_right.y",         "48"                    },
+  { "editor.playfield.scroll_right.width",     "16"                    },
+  { "editor.playfield.scroll_right.height",    "16"                    },
+  { "editor.playfield.scroll_right.pressed_xoffset", "-16"             },
+
+  { "editor.playfield.scrollbar",              "RocksDoor.png"         },
+  { "editor.playfield.scrollbar.x",            "724"                   },
+  { "editor.playfield.scrollbar.y",            "64"                    },
+  { "editor.playfield.scrollbar.width",                "16"                    },
+  { "editor.playfield.scrollbar.height",       "16"                    },
+  { "editor.playfield.scrollbar.pressed_xoffset", "-16"                        },
+
+  { "editor.button.gfx.prev_level",            "RocksDoor.png"         },
+  { "editor.button.gfx.prev_level.x",          "724"                   },
+  { "editor.button.gfx.prev_level.y",          "32"                    },
+  { "editor.button.gfx.prev_level.width",      "16"                    },
+  { "editor.button.gfx.prev_level.height",     "16"                    },
+  { "editor.button.gfx.prev_level.pressed_xoffset", "-16"              },
+
+  { "editor.button.gfx.next_level",            "RocksDoor.png"         },
+  { "editor.button.gfx.next_level.x",          "724"                   },
+  { "editor.button.gfx.next_level.y",          "48"                    },
+  { "editor.button.gfx.next_level.width",      "16"                    },
+  { "editor.button.gfx.next_level.height",     "16"                    },
+  { "editor.button.gfx.next_level.pressed_xoffset", "-16"              },
+
+  { "editor.button.gfx.properties",            "RocksDoor.png"         },
+  { "editor.button.gfx.properties.x",          "505"                   },
+  { "editor.button.gfx.properties.y",          "110"                   },
+  { "editor.button.gfx.properties.width",      "90"                    },
+  { "editor.button.gfx.properties.height",     "20"                    },
+  { "editor.button.gfx.properties.pressed_yoffset", "-20"              },
+
+  { "editor.input.gfx.level_number",           "RocksDoor.png"         },
+  { "editor.input.gfx.level_number.x",         "529"                   },
+  { "editor.input.gfx.level_number.y",         "5"                     },
+  { "editor.input.gfx.level_number.width",     "42"                    },
+  { "editor.input.gfx.level_number.height",    "16"                    },
+  { "editor.input.gfx.level_number.border_size","1"                    },
+
   { "background",                              UNDEFINED_FILENAME      },
   { "background.TITLE_INITIAL",                        UNDEFINED_FILENAME      },
   { "background.TITLE",                                UNDEFINED_FILENAME      },
@@ -5254,6 +5347,16 @@ struct ConfigInfo image_config[] =
   { "background.PANEL.y",                      "0"                     },
   { "background.PANEL.width",                  "100"                   },
   { "background.PANEL.height",                 "280"                   },
+  { "background.PALETTE",                      "RocksDoor.png"         },
+  { "background.PALETTE.x",                    "500"                   },
+  { "background.PALETTE.y",                    "0"                     },
+  { "background.PALETTE.width",                        "100"                   },
+  { "background.PALETTE.height",               "280"                   },
+  { "background.TOOLBOX",                      "RocksDoor.png"         },
+  { "background.TOOLBOX.x",                    "700"                   },
+  { "background.TOOLBOX.y",                    "236"                   },
+  { "background.TOOLBOX.width",                        "100"                   },
+  { "background.TOOLBOX.height",               "144"                   },
 
   { "background.titlescreen_initial_1",                UNDEFINED_FILENAME      },
   { "background.titlescreen_initial_2",                UNDEFINED_FILENAME      },
@@ -5329,62 +5432,74 @@ struct ConfigInfo image_config[] =
   { "door_1.gfx.part_1.y",                     "0"                     },
   { "door_1.gfx.part_1.width",                 "100"                   },
   { "door_1.gfx.part_1.height",                        "77"                    },
+  { "door_1.gfx.part_1.frames",                        "1"                     },
   { "door_1.gfx.part_2",                       "RocksDoor.png"         },
   { "door_1.gfx.part_2.x",                     "0"                     },
   { "door_1.gfx.part_2.y",                     "77"                    },
   { "door_1.gfx.part_2.width",                 "100"                   },
   { "door_1.gfx.part_2.height",                        "63"                    },
+  { "door_1.gfx.part_2.frames",                        "1"                     },
   { "door_1.gfx.part_3",                       "RocksDoor.png"         },
   { "door_1.gfx.part_3.x",                     "0"                     },
   { "door_1.gfx.part_3.y",                     "140"                   },
   { "door_1.gfx.part_3.width",                 "100"                   },
   { "door_1.gfx.part_3.height",                        "63"                    },
+  { "door_1.gfx.part_3.frames",                        "1"                     },
   { "door_1.gfx.part_4",                       "RocksDoor.png"         },
   { "door_1.gfx.part_4.x",                     "0"                     },
   { "door_1.gfx.part_4.y",                     "203"                   },
   { "door_1.gfx.part_4.width",                 "100"                   },
   { "door_1.gfx.part_4.height",                        "77"                    },
+  { "door_1.gfx.part_4.frames",                        "1"                     },
   { "door_1.gfx.part_5",                       "RocksDoor.png"         },
   { "door_1.gfx.part_5.x",                     "100"                   },
   { "door_1.gfx.part_5.y",                     "0"                     },
   { "door_1.gfx.part_5.width",                 "100"                   },
   { "door_1.gfx.part_5.height",                        "77"                    },
+  { "door_1.gfx.part_5.frames",                        "1"                     },
   { "door_1.gfx.part_6",                       "RocksDoor.png"         },
   { "door_1.gfx.part_6.x",                     "100"                   },
   { "door_1.gfx.part_6.y",                     "77"                    },
   { "door_1.gfx.part_6.width",                 "100"                   },
   { "door_1.gfx.part_6.height",                        "63"                    },
+  { "door_1.gfx.part_6.frames",                        "1"                     },
   { "door_1.gfx.part_7",                       "RocksDoor.png"         },
   { "door_1.gfx.part_7.x",                     "100"                   },
   { "door_1.gfx.part_7.y",                     "140"                   },
   { "door_1.gfx.part_7.width",                 "100"                   },
   { "door_1.gfx.part_7.height",                        "63"                    },
+  { "door_1.gfx.part_7.frames",                        "1"                     },
   { "door_1.gfx.part_8",                       "RocksDoor.png"         },
   { "door_1.gfx.part_8.x",                     "100"                   },
   { "door_1.gfx.part_8.y",                     "203"                   },
   { "door_1.gfx.part_8.width",                 "100"                   },
   { "door_1.gfx.part_8.height",                        "77"                    },
+  { "door_1.gfx.part_8.frames",                        "1"                     },
 
   { "door_2.gfx.part_1",                       "RocksDoor.png"         },
   { "door_2.gfx.part_1.x",                     "0"                     },
   { "door_2.gfx.part_1.y",                     "280"                   },
   { "door_2.gfx.part_1.width",                 "100"                   },
   { "door_2.gfx.part_1.height",                        "50"                    },
+  { "door_1.gfx.part_1.frames",                        "1"                     },
   { "door_2.gfx.part_2",                       "RocksDoor.png"         },
   { "door_2.gfx.part_2.x",                     "0"                     },
   { "door_2.gfx.part_2.y",                     "330"                   },
   { "door_2.gfx.part_2.width",                 "100"                   },
   { "door_2.gfx.part_2.height",                        "50"                    },
+  { "door_1.gfx.part_2.frames",                        "1"                     },
   { "door_2.gfx.part_3",                       "RocksDoor.png"         },
   { "door_2.gfx.part_3.x",                     "100"                   },
   { "door_2.gfx.part_3.y",                     "280"                   },
   { "door_2.gfx.part_3.width",                 "100"                   },
   { "door_2.gfx.part_3.height",                        "50"                    },
+  { "door_1.gfx.part_3.frames",                        "1"                     },
   { "door_2.gfx.part_4",                       "RocksDoor.png"         },
   { "door_2.gfx.part_4.x",                     "100"                   },
   { "door_2.gfx.part_4.y",                     "330"                   },
   { "door_2.gfx.part_4.width",                 "100"                   },
   { "door_2.gfx.part_4.height",                        "50"                    },
+  { "door_1.gfx.part_4.frames",                        "1"                     },
   { "door_2.gfx.part_5",                       UNDEFINED_FILENAME      },
   { "door_2.gfx.part_6",                       UNDEFINED_FILENAME      },
   { "door_2.gfx.part_7",                       UNDEFINED_FILENAME      },
@@ -5625,10 +5740,10 @@ struct ConfigInfo image_config[] =
   { "titlemessage_5.post_delay",               ARG_DEFAULT             },
   { "titlemessage_5.auto_delay",               ARG_DEFAULT             },
 
-  { "readme.x",                                        "272"                   },
-  { "readme.y",                                        "150"                   },
-  { "readme.width",                            "480"                   },
-  { "readme.height",                           "364"                   },
+  { "readme.x",                                        "-1"                    },
+  { "readme.y",                                        "-1"                    },
+  { "readme.width",                            "-1"                    },
+  { "readme.height",                           "-1"                    },
   { "readme.chars",                            "-1"                    },
   { "readme.lines",                            "-1"                    },
   { "readme.align",                            "center"                },
@@ -5739,6 +5854,8 @@ struct ConfigInfo image_config[] =
   { "menu.draw_yoffset.SETUP[ARTWORK]",                "0"                     },
   { "menu.draw_xoffset.SETUP[INPUT]",          "0"                     },
   { "menu.draw_yoffset.SETUP[INPUT]",          "0"                     },
+  { "menu.draw_xoffset.SETUP[TOUCH]",          "0"                     },
+  { "menu.draw_yoffset.SETUP[TOUCH]",          "0"                     },
   { "menu.draw_xoffset.SETUP[SHORTCUTS]",      "0"                     },
   { "menu.draw_yoffset.SETUP[SHORTCUTS]",      "0"                     },
   { "menu.draw_xoffset.SETUP[SHORTCUTS_1]",    "0"                     },
@@ -6912,6 +7029,10 @@ struct ConfigInfo image_config[] =
   { "game.button.sound_loops.y",               "245"                   },
   { "game.button.sound_simple.x",              "65"                    },
   { "game.button.sound_simple.y",              "245"                   },
+  { "game.button.save.x",                      "-1"                    },
+  { "game.button.save.y",                      "-1"                    },
+  { "game.button.load.x",                      "-1"                    },
+  { "game.button.load.y",                      "-1"                    },
 
   { "tape.button.eject.x",                     "5"                     },
   { "tape.button.eject.y",                     "77"                    },
@@ -6976,14 +7097,104 @@ struct ConfigInfo image_config[] =
   { "tape.text.date.align",                    "left"                  },
   { "tape.text.date.valign",                   "top"                   },
   { "tape.text.date.digits",                   "-1"                    },
+  { "tape.text.date.xoffset",                  "27"                    },
+  { "tape.text.date.2nd_xoffset",              "64"                    },
   { "tape.text.date.font",                     "font.tape_recorder"    },
+  { "tape.text.date.draw_masked",              "false"                 },
+
+  { "tape.text.date_yyyy.x",                   "-1"                    },
+  { "tape.text.date_yyyy.y",                   "-1"                    },
+  { "tape.text.date_yyyy.align",               "left"                  },
+  { "tape.text.date_yyyy.valign",              "top"                   },
+  { "tape.text.date_yyyy.digits",              "2"                     },
+  { "tape.text.date_yyyy.font",                        "font.tape_recorder"    },
+  { "tape.text.date_yyyy.draw_masked",         "true"                  },
+  { "tape.text.date_yy.x",                     "-1"                    },
+  { "tape.text.date_yy.y",                     "-1"                    },
+  { "tape.text.date_yy.align",                 "left"                  },
+  { "tape.text.date_yy.valign",                        "top"                   },
+  { "tape.text.date_yy.digits",                        "2"                     },
+  { "tape.text.date_yy.font",                  "font.tape_recorder"    },
+  { "tape.text.date_yy.draw_masked",           "true"                  },
+  { "tape.text.date_mmm.x",                    "-1"                    },
+  { "tape.text.date_mmm.y",                    "-1"                    },
+  { "tape.text.date_mmm.align",                        "left"                  },
+  { "tape.text.date_mmm.valign",               "top"                   },
+  { "tape.text.date_mmm.digits",               "2"                     },
+  { "tape.text.date_mmm.font",                 "font.tape_recorder"    },
+  { "tape.text.date_mmm.draw_masked",          "true"                  },
+  { "tape.text.date_mm.x",                     "-1"                    },
+  { "tape.text.date_mm.y",                     "-1"                    },
+  { "tape.text.date_mm.align",                 "left"                  },
+  { "tape.text.date_mm.valign",                        "top"                   },
+  { "tape.text.date_mm.digits",                        "2"                     },
+  { "tape.text.date_mm.font",                  "font.tape_recorder"    },
+  { "tape.text.date_mm.draw_masked",           "true"                  },
+  { "tape.text.date_dd.x",                     "-1"                    },
+  { "tape.text.date_dd.y",                     "-1"                    },
+  { "tape.text.date_dd.align",                 "left"                  },
+  { "tape.text.date_dd.valign",                        "top"                   },
+  { "tape.text.date_dd.digits",                        "2"                     },
+  { "tape.text.date_dd.font",                  "font.tape_recorder"    },
+  { "tape.text.date_dd.draw_masked",           "true"                  },
 
   { "tape.text.time.x",                                "44"                    },
   { "tape.text.time.y",                                "55"                    },
   { "tape.text.time.align",                    "left"                  },
   { "tape.text.time.valign",                   "top"                   },
   { "tape.text.time.digits",                   "-1"                    },
+  { "tape.text.time.xoffset",                  "27"                    },
   { "tape.text.time.font",                     "font.tape_recorder"    },
+  { "tape.text.time.draw_masked",              "false"                 },
+
+  { "tape.text.time_hh.x",                     "-1"                    },
+  { "tape.text.time_hh.y",                     "-1"                    },
+  { "tape.text.time_hh.align",                 "left"                  },
+  { "tape.text.time_hh.valign",                        "top"                   },
+  { "tape.text.time_hh.digits",                        "2"                     },
+  { "tape.text.time_hh.font",                  "font.tape_recorder"    },
+  { "tape.text.time_hh.draw_masked",           "true"                  },
+  { "tape.text.time_mm.x",                     "-1"                    },
+  { "tape.text.time_mm.y",                     "-1"                    },
+  { "tape.text.time_mm.align",                 "left"                  },
+  { "tape.text.time_mm.valign",                        "top"                   },
+  { "tape.text.time_mm.digits",                        "2"                     },
+  { "tape.text.time_mm.font",                  "font.tape_recorder"    },
+  { "tape.text.time_mm.draw_masked",           "true"                  },
+  { "tape.text.time_ss.x",                     "-1"                    },
+  { "tape.text.time_ss.y",                     "-1"                    },
+  { "tape.text.time_ss.align",                 "left"                  },
+  { "tape.text.time_ss.valign",                        "top"                   },
+  { "tape.text.time_ss.digits",                        "2"                     },
+  { "tape.text.time_ss.font",                  "font.tape_recorder"    },
+  { "tape.text.time_ss.draw_masked",           "true"                  },
+
+  { "tape.show_game_buttons",                  "false"                 },
+
+  { "editor.button.prev_level.x",              "5"                     },
+  { "editor.button.prev_level.y",              "5"                     },
+  { "editor.button.next_level.x",              "79"                    },
+  { "editor.button.next_level.y",              "5"                     },
+  { "editor.button.properties.x",              "5"                     },
+  { "editor.button.properties.y",              "230"                   },
+  { "editor.input.level_number.x",             "29"                    },
+  { "editor.input.level_number.y",             "5"                     },
+
+  { "editor.palette.x",                                "5"                     },
+  { "editor.palette.y",                                "30"                    },
+  { "editor.palette.cols",                     "4"                     },
+  { "editor.palette.rows",                     "10"                    },
+  { "editor.palette.tile_size",                        "16"                    },
+
+  { "editor.palette.element_left.x",           "6"                     },
+  { "editor.palette.element_left.y",           "258"                   },
+  { "editor.palette.element_left.tile_size",   "16"                    },
+  { "editor.palette.element_middle.x",         "42"                    },
+  { "editor.palette.element_middle.y",         "258"                   },
+  { "editor.palette.element_middle.tile_size", "16"                    },
+  { "editor.palette.element_right.x",          "78"                    },
+  { "editor.palette.element_right.y",          "258"                   },
+  { "editor.palette.element_right.tile_size",  "16"                    },
 
   { "request.button.yes.x",                    "2"                     },
   { "request.button.yes.y",                    "250"                   },