From ccc4674758b082c5ec60b74ba109bc59ddbd35ec Mon Sep 17 00:00:00 2001 From: Christian Doczkal <20443222+chdoc@users.noreply.github.com> Date: Fri, 15 May 2026 21:12:59 +0200 Subject: [PATCH] `gui/petition`: fix deity display --- changelog.txt | 2 ++ list-agreements.lua | 16 ++++++++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/changelog.txt b/changelog.txt index 9ca3d5e44..3a8381999 100644 --- a/changelog.txt +++ b/changelog.txt @@ -32,6 +32,8 @@ Template for new versions: ## Fixes +- `gui/petitions`: fix deity display + ## Misc Improvements ## Removed diff --git a/list-agreements.lua b/list-agreements.lua index 887eaf174..a2e8b125c 100644 --- a/list-agreements.lua +++ b/list-agreements.lua @@ -71,11 +71,19 @@ function get_agr_party_name(agr) return party_name end +---@param agr df.agreement function get_deity_name(agr) - local religion_id = agr.details[0].data.Location.deity_data.Religion - local deities = df.global.world.entities.all[religion_id].relations.deities - if #deities == 0 then return 'An Unknown Deity' end - return dfhack.translation.translateName(df.global.world.history.figures[deities[0]].name,true) + local practice_type = agr.details[0].data.Location.deity_type + local practice_id = agr.details[0].data.Location.deity_data.practice_id -- could be either entity_id or hf_id + if practice_type == df.religious_practice_type.WORSHIP_HFID then + local hf = df.historical_figure.find(practice_id) + if not hf then return 'An Unknown Deity' end + return dfhack.translation.translateName(hf.name, true) + else + local deities = df.global.world.entities.all[practice_id].relations.deities + if #deities == 0 then return 'An Unknown Deity' end + return dfhack.translation.translateName(df.global.world.history.figures[deities[0]].name, true) + end end --get resolution status, and string