diff --git a/data/fh/buildings.json b/data/fh/buildings.json index beefe1966..2136c3df8 100644 --- a/data/fh/buildings.json +++ b/data/fh/buildings.json @@ -57,6 +57,12 @@ "hide": 1 } ], + "effectsNormal": [ + "Collectively buy up to 1 %game.resource.metal% for 2 gold", + "Collectively buy up to 2 %game.resource.metal% for 2 gold", + "Collectively buy up to 3 %game.resource.metal% for 2 gold", + "Collectively buy up to 4 %game.resource.metal% for 2 gold" + ], "rewards": [ { "prosperity": 1 @@ -132,6 +138,12 @@ "hide": 2 } ], + "effectsNormal": [ + "Collectively buy up to 1 %game.resource.hide% for 2 gold", + "Collectively buy up to 2 %game.resource.hide% for 2 gold", + "Collectively buy up to 3 %game.resource.hide% for 2 gold", + "Collectively buy up to 4 %game.resource.hide% for 2 gold" + ], "rewards": [ { "prosperity": 1, @@ -208,6 +220,12 @@ "hide": 1 } ], + "effectsNormal": [ + "Collectively buy up to 1 %game.resource.lumber% for 2 gold", + "Collectively buy up to 2 %game.resource.lumber% for 2 gold", + "Collectively buy up to 3 %game.resource.lumber% for 2 gold", + "Collectively buy up to 4 %game.resource.lumber% for 2 gold" + ], "rewards": [ { "prosperity": 1 @@ -271,6 +289,11 @@ "hide": 2 } ], + "effectsNormal": [ + "Collectively buy up to 1 material resource for 2 gold", + "Collectively buy up to 2 different material resource for 2 gold each", + "Collectively buy up to 3 different material resource for 2 gold each" + ], "rewards": [ { "prosperity": 1, @@ -342,6 +365,12 @@ "hide": 1 } ], + "effectsNormal": [ + "Plant herbs, rotate this card 180°, then stop - Gain 1 herb from each planted plot, then rotate this card 180° then stop", + "Plant herbs, rotate this card 180°, then stop - Gain 1 herb from each planted plot, then rotate this card 180° then stop", + "Gain 1 collective herb from each planted plot, then plant herbs", + "Gain 1 collective herb from each planted plot, then plant herbs" + ], "rewards": [ { "prosperity": 1, @@ -479,6 +508,39 @@ "hide": 2 } ], + "effectWrecked": [ + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items" + ], + "interactionsAvailable": [ + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items", + "Craft items" + ], + "interactionsUnavailable": [ + "Lose 1 collective %game.resource.hide%", + "Lose 1 collective %game.resource.hide%", + "Lose 1 collective %game.resource.hide%", + "Lose 2 collective %game.resource.hide%", + "Lose 2 collective %game.resource.hide%", + "Lose 2 collective %game.resource.hide%", + "Lose 3 collective %game.resource.hide%", + "Lose 3 collective %game.resource.hide%", + "Lose 3 collective %game.resource.hide%" + ], "rewards": [ { "items": "1-10" @@ -565,6 +627,21 @@ "hide": 1 } ], + "effectWrecked": [ + "Characters cannot use potions", + "Characters cannot use potions", + "Characters cannot use potions" + ], + "interactionsAvailable": [ + "Brew 2-herb potions", + "Brew and distill 2-herb potions", + "Brew and distill 2- and 3-herb potions" + ], + "interactionsUnavailable": [ + "Brew potions", + "Brew and distill potions", + "Brew and distill potions" + ], "rewards": [ {}, { @@ -634,6 +711,24 @@ "hide": 1 } ], + "effectWrecked": [ + "Lose 5 collective gold", + "Lose 10 collective gold", + "Lose 15 collective gold", + "Lose 20 collective gold" + ], + "interactionsAvailable": [ + "Buy up to one item", + "Buy up to two items", + "Buy up to three items", + "Buy up to four items" + ], + "interactionsUnavailable": [ + "Buy items", + "Buy items", + "Buy items", + "Buy items" + ], "rewards": [ { "prosperity": 1, @@ -700,6 +795,11 @@ "hide": 1 } ], + "effectWrecked": [ + "Damage any one building", + "Damage any one building", + "Damage any one building" + ], "rewards": [ { "prosperity": 1, @@ -762,6 +862,16 @@ "hide": 1 } ], + "effectsNormal": [ + "Each character may lose 5 gold to start the next scenario with %game.condition.bless%x2", + "Each character may lose 5 gold to start the next scenario with %game.condition.bless%x2", + "Each character may lose 5 gold to start the next scenario with %game.condition.bless%x2" + ], + "effectWrecked": [ + "Each character starts the next scenario with %game.condition.curse%", + "Each character starts the next scenario with %game.condition.curse%", + "Each character starts the next scenario with %game.condition.curse%" + ], "rewards": [ { "prosperity": 1, @@ -834,6 +944,29 @@ "hide": 2 } ], + "effectsNormal": [ + "", + "Reduce all enhancement costs by 10 gold", + "Reduce all enhancement costs by 10 gold and level penalties by 10 gold per level", + "Reduce all enhancement costs by 10 gold, level penalties by 10 gold per level, and repeat penalties by 25 gold per enhancement" + ], + "effectWrecked": [ + "Each character starts the next scenario with %game.condition.disarm%", + "Each character starts the next scenario with %game.condition.disarm%", + "Each character starts the next scenario with %game.condition.disarm%" + ], + "interactionsAvailable": [ + "Buy enhancements", + "Buy enhancements", + "Buy enhancements", + "Buy enhancements" + ], + "interactionsUnavailable": [ + "Buy enhancements", + "Buy enhancements", + "Buy enhancements", + "Buy enhancements" + ], "rewards": [ { "prosperity": 1, @@ -887,6 +1020,14 @@ "hide": 1 } ], + "effectsNormal": [ + "Collectively sell up to 1 %game.resource.metal% for 5 gold", + "Collectively sell up to 2 %game.resource.metal% for 5 gold each" + ], + "effectWrecked": [ + "Lose 2 collective %game.resource.metal%", + "Lose 2 collective %game.resource.metal%" + ], "rewards": [ { "prosperity": 1, @@ -931,6 +1072,14 @@ "hide": 1 } ], + "effectsNormal": [ + "Collectively sell up to 1 %game.resource.lumber% for 5 gold", + "Collectively sell up to 2 %game.resource.lumber% for 5 gold each" + ], + "effectWrecked": [ + "Lose 2 collective %game.resource.lumber%", + "Lose 2 collective %game.resource.lumber%" + ], "rewards": [ { "prosperity": 1, @@ -975,6 +1124,14 @@ "hide": 3 } ], + "effectsNormal": [ + "Collectively sell up to 1 %game.resource.hide% for 5 gold", + "Collectively sell up to 2 %game.resource.hide% for 5 gold each" + ], + "effectWrecked": [ + "Lose 2 collective %game.resource.hide%", + "Lose 2 collective %game.resource.hide%" + ], "rewards": [ { "prosperity": 1, @@ -1031,6 +1188,11 @@ "hide": 2 } ], + "effectWrecked": [ + "Lose 1 morale", + "Lose 1 morale", + "Lose 1 morale" + ], "rewards": [ { "prosperity": 1, @@ -1074,6 +1236,14 @@ "hide": 2 } ], + "effectsNormal": [ + "When the trials deck is complete, read %data.section:187.1", + "Access to Tholos' Favors" + ], + "effectWrecked": [ + "Lose 1 morale", + "Lose 1 morale" + ], "rewards": [ { "prosperity": 1, @@ -1130,6 +1300,11 @@ "hide": 2 } ], + "effectWrecked": [ + "Lose 1 inspiration", + "Lose 1 inspiration", + "Lose 1 inspiration" + ], "rewards": [ { "prosperity": 1, @@ -1159,6 +1334,9 @@ "repair": [ 2 ], + "effectWrecked": [ + "Lose 1 collective %game.resource.lumber%" + ], "rebuild": [ { "lumber": 2, @@ -1252,6 +1430,14 @@ "hide": 2 } ], + "effectsNormal": [ + "Reduce all construction costs by 1 material resource", + "Reduce all construction costs by 1 material resource and the extra construction cost by 1 morale" + ], + "effectWrecked": [ + "Lose any 1 collective resource", + "Lose any 1 collective resource" + ], "rewards": [ { "prosperity": 1, @@ -1320,6 +1506,18 @@ "hide": 3 } ], + "effectsNormal": [ + "Bring one pet into each scenario.
Capacity: 4", + "Bring one pet into each scenario.
Capacity: 8", + "Bring two pets into each scenario.
Capacity: 8", + "Bring two pets into each scenario.
Capacity: 12" + ], + "effectWrecked": [ + "Characters cannot use pets", + "Characters cannot use pets", + "Characters cannot use pets", + "Characters cannot use pets" + ], "rewards": [ { "prosperity": 1, @@ -1383,6 +1581,16 @@ "hide": 2 } ], + "effectsNormal": [ + "Draw one challenge and keep up to one. When the challenge deck is complete, read %data.section:190.1%", + "Draw two challenges and keep up to one. When the challenge deck is complete, read %data.section:190.1%", + "Draw three challenges and keep up to two. When the challenge deck is complete, read %data.section:190.1%" + ], + "effectWrecked": [ + "Cannot complete challenges", + "Cannot complete challenges", + "Cannot complete challenges" + ], "rewards": [ { "prosperity": 1, @@ -1436,6 +1644,18 @@ "hide": 1 } ], + "effectsNormal": [ + "Collectively train up to 1 soldier for 3 gold and 1 material resource

Capacity: 4
Effect: advantage and -5 %game.action.attack%", + "Collectively train up to 1 soldier for 3 gold and 1 material resource

Capacity: 6
Effect: advantage and -15 %game.action.attack%", + "Collectively train up to 2 soldiers for 3 gold and 1 material resource

Capacity: 8
Effect: advantage and -25 %game.action.attack%", + "Collectively train up to 2 soldiers for 3 gold and 1 material resource

Capacity: 10
Effect: advantage and -35 %game.action.attack%" + ], + "effectWrecked": [ + "Disadvantage on all attack event resolutions.
Cannot use soldiers.", + "Disadvantage on all attack event resolutions.
Cannot use soldiers.", + "Disadvantage on all attack event resolutions.
Cannot use soldiers.", + "Disadvantage on all attack event resolutions.
Cannot use soldiers." + ], "rewards": [ { "soldiers": 4 diff --git a/data/fh/label/en.json b/data/fh/label/en.json index 93e6450cf..b7341f8f6 100644 --- a/data/fh/label/en.json +++ b/data/fh/label/en.json @@ -407,36 +407,96 @@ } }, "buildings": { - "alchemist": "Alchemist", - "barracks": "Barracks", - "boat": "Boat", - "carpenter": "Carpenter", - "climbing-gear": "Climbing Gear", - "craftsman": "Craftsman", - "enhancer": "Enhancer", - "garden": "Garden", - "hall-of-revelry": "Hall of Revelry", - "hide-depot": "Hide Depot", - "hunting-lodge": "Hunting Lodge", - "inn": "Inn", - "jeweler": "Jeweler", - "library": "Library", - "logging-camp": "Logging Camp", - "lumber-depot": "Lumber Depot", - "metal-depot": "Metal Depot", - "mining-camp": "Mining Camp", - "sled": "Sled", - "stables": "Stables", - "tavern": "Tavern", - "temple": "Temple of the Great Oak", - "town-hall": "Town Hall", - "trading-post": "Trading Post", - "wall-j": "Wall J", - "wall-k": "Wall K", - "wall-l": "Wall L", - "wall-m": "Wall M", - "wall-n": "Wall N", - "workshop": "Workshop" + "alchemist": { + ".": "Alchemist" + }, + "barracks": { + ".": "Barracks" + }, + "boat": { + ".": "Boat" + }, + "carpenter": { + ".": "Carpenter" + }, + "climbing-gear": { + ".": "Climbing Gear" + }, + "craftsman": { + ".": "Craftsman" + }, + "enhancer": { + ".": "Enhancer" + }, + "garden": { + ".": "Garden" + }, + "hall-of-revelry": { + ".": "Hall of Revelry" + }, + "hide-depot": { + ".": "Hide Depot" + }, + "hunting-lodge": { + ".": "Hunting Lodge" + }, + "inn": { + ".": "Inn" + }, + "jeweler": { + ".": "Jeweler" + }, + "library": { + ".": "Library" + }, + "logging-camp": { + ".": "Logging Camp" + }, + "lumber-depot": { + ".": "Lumber Depot" + }, + "metal-depot": { + ".": "Metal Depot" + }, + "mining-camp": { + ".": "Mining Camp" + }, + "sled": { + ".": "Sled" + }, + "stables": { + ".": "Stables" + }, + "tavern": { + ".": "Tavern" + }, + "temple": { + ".": "Temple of the Great Oak" + }, + "town-hall": { + ".": "Town Hall" + }, + "trading-post": { + ".": "Trading Post" + }, + "wall-j": { + ".": "Wall J" + }, + "wall-k": { + ".": "Wall K" + }, + "wall-l": { + ".": "Wall L" + }, + "wall-m": { + ".": "Wall M" + }, + "wall-n": { + ".": "Wall N" + }, + "workshop": { + ".": "Workshop" + } }, "personalQuest": { "581": "The Study of Plants", diff --git a/package-lock.json b/package-lock.json index 39b07fe41..edf124361 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gloomhavensecretariat", - "version": "0.79.3", + "version": "0.79.4", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "gloomhavensecretariat", - "version": "0.79.3", + "version": "0.79.4", "license": "AGPL3", "dependencies": { "@angular/animations": "^16.2.9", diff --git a/package.json b/package.json index bac23151d..03534d7eb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gloomhavensecretariat", - "version": "0.79.3", + "version": "0.79.4", "license": "AGPL3", "description": "Gloomhaven Secretariat is a Gloomhaven Companion app.", "homepage": "https://gloomhaven-secretariat.de", diff --git a/src/app/game/model/data/BuildingData.ts b/src/app/game/model/data/BuildingData.ts index 8671bee0e..e11289e88 100644 --- a/src/app/game/model/data/BuildingData.ts +++ b/src/app/game/model/data/BuildingData.ts @@ -6,6 +6,10 @@ export class BuildingData { manualUpgrades: number = 0; repair: number[] | undefined = undefined; rebuild: BuildingCosts[] = []; + effectNormal: string[] = []; + effectWrecked: string[] = []; + interactionsAvailable: string[] = []; + interactionsUnavailable: string[] = []; requires: string = ""; rewards: BuildingRewards[] = []; prosperityUnlock: boolean = false; diff --git a/src/app/ui/figures/character/character.html b/src/app/ui/figures/character/character.html index c50bd4eb0..b6b157c99 100644 --- a/src/app/ui/figures/character/character.html +++ b/src/app/ui/figures/character/character.html @@ -251,7 +251,7 @@
diff --git a/src/app/ui/helper/keyboard-shortcuts.ts b/src/app/ui/helper/keyboard-shortcuts.ts index e16666df8..f8875fc74 100644 --- a/src/app/ui/helper/keyboard-shortcuts.ts +++ b/src/app/ui/helper/keyboard-shortcuts.ts @@ -165,7 +165,7 @@ export class KeyboardShortcuts implements OnInit, OnDestroy { element.state = elementState; gameManager.stateManager.after(); event.preventDefault(); - } else if ((!this.dialogOpen || this.allowed.indexOf('absent') != -1) && !event.ctrlKey && !event.shiftKey && gameManager.game.state == GameState.next && event.key === 'h') { + } else if ((!this.dialogOpen || this.allowed.indexOf('absent') != -1) && !event.ctrlKey && !event.shiftKey && event.key === 'h') { settingsManager.setHideAbsent(!settingsManager.settings.hideAbsent); event.preventDefault(); } else if ((!this.dialogOpen || this.allowed.indexOf('select') != -1) && !event.ctrlKey && !event.shiftKey && event.key === 's') { diff --git a/src/assets/images/fh/buildings/interaction.svg b/src/assets/images/fh/buildings/interaction.svg new file mode 100644 index 000000000..576c53ef7 --- /dev/null +++ b/src/assets/images/fh/buildings/interaction.svg @@ -0,0 +1,45 @@ + + + + + + + + + +