diff --git a/docs/changelog.txt b/docs/changelog.txt index fc706cdba..14c2d7620 100644 --- a/docs/changelog.txt +++ b/docs/changelog.txt @@ -44,6 +44,7 @@ changelog.txt uses a syntax similar to RST, with a few special sequences: - `work-now`: reinstated, renamed from ``workNow``: reduce the time that dwarves are left without a task after completing a job ## Fixes +- DFHack screen backgrounds now use appropriate tiles in DF Classic ## Misc Improvements - Terminal console no longer appears in front of the game window on startup diff --git a/library/lua/gui.lua b/library/lua/gui.lua index b2c90d076..7e991e1df 100644 --- a/library/lua/gui.lua +++ b/library/lua/gui.lua @@ -9,7 +9,7 @@ local getval = utils.getval local to_pen = dfhack.pen.parse -CLEAR_PEN = to_pen{tile=909, ch=32, fg=0, bg=0, write_to_lower=true} +CLEAR_PEN = to_pen{tile=df.global.init.texpos_border_interior, ch=32, fg=0, bg=0, write_to_lower=true} TRANSPARENT_PEN = to_pen{tile=0, ch=0} KEEP_LOWER_PEN = to_pen{ch=32, fg=0, bg=0, keep_lower=true} diff --git a/library/lua/gui/widgets.lua b/library/lua/gui/widgets.lua index 7aa79cbc3..5653dff94 100644 --- a/library/lua/gui/widgets.lua +++ b/library/lua/gui/widgets.lua @@ -853,7 +853,7 @@ local function scrollbar_is_visible(scrollbar) return scrollbar.elems_per_page < scrollbar.num_elems end -local SBSO = 922 --Scroll Bar Spritesheet Offset / change this to point to a different spritesheet (ui themes, anyone? :p) +local SBSO = df.global.init.scrollbar_texpos[0] --Scroll Bar Spritesheet Offset / change this to point to a different spritesheet (ui themes, anyone? :p) local SCROLLBAR_UP_LEFT_PEN = to_pen{tile=SBSO+0, ch=47, fg=COLOR_CYAN, bg=COLOR_BLACK} local SCROLLBAR_UP_RIGHT_PEN = to_pen{tile=SBSO+1, ch=92, fg=COLOR_CYAN, bg=COLOR_BLACK} local SCROLLBAR_DOWN_LEFT_PEN = to_pen{tile=SBSO+24, ch=92, fg=COLOR_CYAN, bg=COLOR_BLACK} @@ -2144,34 +2144,35 @@ function FilteredList:onFilterChar(char, text) return true end +local TSO = df.global.init.tabs_texpos[0] -- tab spritesheet offset local DEFAULT_ACTIVE_TAB_PENS = { text_mode_tab_pen=to_pen{fg=COLOR_YELLOW}, text_mode_label_pen=to_pen{fg=COLOR_WHITE}, - lt=to_pen{tile=1005, write_to_lower=true}, - lt2=to_pen{tile=1006, write_to_lower=true}, - t=to_pen{tile=1007, fg=COLOR_BLACK, write_to_lower=true, top_of_text=true}, - rt2=to_pen{tile=1008, write_to_lower=true}, - rt=to_pen{tile=1009, write_to_lower=true}, - lb=to_pen{tile=1015, write_to_lower=true}, - lb2=to_pen{tile=1016, write_to_lower=true}, - b=to_pen{tile=1017, fg=COLOR_BLACK, write_to_lower=true, bottom_of_text=true}, - rb2=to_pen{tile=1018, write_to_lower=true}, - rb=to_pen{tile=1019, write_to_lower=true}, + lt=to_pen{tile=TSO+5, write_to_lower=true}, + lt2=to_pen{tile=TSO+6, write_to_lower=true}, + t=to_pen{tile=TSO+7, fg=COLOR_BLACK, write_to_lower=true, top_of_text=true}, + rt2=to_pen{tile=TSO+8, write_to_lower=true}, + rt=to_pen{tile=TSO+9, write_to_lower=true}, + lb=to_pen{tile=TSO+15, write_to_lower=true}, + lb2=to_pen{tile=TSO+16, write_to_lower=true}, + b=to_pen{tile=TSO+17, fg=COLOR_BLACK, write_to_lower=true, bottom_of_text=true}, + rb2=to_pen{tile=TSO+18, write_to_lower=true}, + rb=to_pen{tile=TSO+19, write_to_lower=true}, } local DEFAULT_INACTIVE_TAB_PENS = { text_mode_tab_pen=to_pen{fg=COLOR_BROWN}, text_mode_label_pen=to_pen{fg=COLOR_DARKGREY}, - lt=to_pen{tile=1000, write_to_lower=true}, - lt2=to_pen{tile=1001, write_to_lower=true}, - t=to_pen{tile=1002, fg=COLOR_WHITE, write_to_lower=true, top_of_text=true}, - rt2=to_pen{tile=1003, write_to_lower=true}, - rt=to_pen{tile=1004, write_to_lower=true}, - lb=to_pen{tile=1010, write_to_lower=true}, - lb2=to_pen{tile=1011, write_to_lower=true}, - b=to_pen{tile=1012, fg=COLOR_WHITE, write_to_lower=true, bottom_of_text=true}, - rb2=to_pen{tile=1013, write_to_lower=true}, - rb=to_pen{tile=1014, write_to_lower=true}, + lt=to_pen{tile=TSO+0, write_to_lower=true}, + lt2=to_pen{tile=TSO+1, write_to_lower=true}, + t=to_pen{tile=TSO+2, fg=COLOR_WHITE, write_to_lower=true, top_of_text=true}, + rt2=to_pen{tile=TSO+3, write_to_lower=true}, + rt=to_pen{tile=TSO+4, write_to_lower=true}, + lb=to_pen{tile=TSO+10, write_to_lower=true}, + lb2=to_pen{tile=TSO+11, write_to_lower=true}, + b=to_pen{tile=TSO+12, fg=COLOR_WHITE, write_to_lower=true, bottom_of_text=true}, + rb2=to_pen{tile=TSO+13, write_to_lower=true}, + rb=to_pen{tile=TSO+14, write_to_lower=true}, } --------- diff --git a/library/modules/Screen.cpp b/library/modules/Screen.cpp index dcb18dd91..6ccf246aa 100644 --- a/library/modules/Screen.cpp +++ b/library/modules/Screen.cpp @@ -209,7 +209,7 @@ static bool doSetTile_default(const Pen &pen, int x, int y, bool map) } } else if (pen.ch) { screen[0] = uint8_t(pen.ch); - *texpos_lower = 909; // basic black background + *texpos_lower = df::global::init->texpos_border_interior; // basic black background } auto rgb_fg = &gps->uccolor[fg][0]; diff --git a/plugins/pathable.cpp b/plugins/pathable.cpp index dd26a712f..06394f838 100644 --- a/plugins/pathable.cpp +++ b/plugins/pathable.cpp @@ -7,6 +7,8 @@ #include "LuaTools.h" #include "PluginManager.h" +#include "df/init.h" + using namespace DFHack; DFHACK_PLUGIN("pathable"); @@ -37,8 +39,8 @@ static void paintScreen(df::coord target, bool skip_unrevealed = false) { int selected_tile_texpos = 0; Screen::findGraphicsTile("CURSORS", 4, 3, &selected_tile_texpos); - long pathable_tile_texpos = 779; - long unpathable_tile_texpos = 782; + long pathable_tile_texpos = df::global::init->load_bar_texpos[1]; + long unpathable_tile_texpos = df::global::init->load_bar_texpos[4]; long on_off_texpos = Textures::getOnOffTexposStart(); if (on_off_texpos > 0) { pathable_tile_texpos = on_off_texpos + 0;