diff --git a/game.py b/game.py index 895a424..a9edc37 100644 --- a/game.py +++ b/game.py @@ -6080,6 +6080,9 @@ ORDER_RECIPES, ORDER_RAW = _order_sources() # What changed, shown on the Patch notes page. Newest first; every shipped change adds a # line here (new / balance / fix), and a new release a new entry on top. PATCH_NOTES = [ + {"date": "2026-10-26", "title": "Fittings", "notes": [ + ("new", "Construction โบ Fittings: โ Fitted on the ones the town already has (โ Paused while the building is damaged)."), + ]}, {"date": "2026-10-25", "title": "Titles", "notes": [ ("new", "๐ Achievements (under You): 127 to collect. Masterwork patterns per dungeon (7 each), the 7 uniques, titles, " "boss emblems, caravan looks, home. Tap an icon for what it is and how to get it. Nothing is awarded there, it only keeps track."), diff --git a/static/app.js b/static/app.js index 7679ca7..30495a3 100644 --- a/static/app.js +++ b/static/app.js @@ -882,6 +882,15 @@ function needTag(id) { return n ? `๐๏ธ ${fmt(n.qty)}` : ""; } +// A fitting the town already has: working, or paused while its building is damaged. +function fittedTag(id) { + const f = C.fittings.find((x) => x.id === id), b = f && S.city.buildings[f.building]; + if (!b?.fittings.includes(id)) return ""; + const where = `${C.buildings[f.building].icon} ${C.buildings[f.building].name}`; + return b.damaged ? `โ Paused` + : `โ Fitted`; +} + // --- skill pages ---------------------------------------------------------- function skillPage(id) { @@ -1695,7 +1704,7 @@ function actionCard(a) { return `