diff --git a/data/fh/sections/157-3.json b/data/fh/sections/157-3.json index 0c887411c..9fa082d83 100644 --- a/data/fh/sections/157-3.json +++ b/data/fh/sections/157-3.json @@ -5,6 +5,7 @@ "conclusion": true, "named": true, "unlocks": [ - "93" + "93A", + "93B" ] } \ No newline at end of file diff --git a/data/toa/character/three-eyes.json b/data/toa/character/three-eyes.json index 73f96eba1..c812182a4 100644 --- a/data/toa/character/three-eyes.json +++ b/data/toa/character/three-eyes.json @@ -185,7 +185,7 @@ "effects": [ { "type": "custom", - "value": "%game.coloredToken.c7386a.toa-ritualist%: %game.condition.enfeeble% / %game.coloredToken.336fa2.toa-conquerer%: %game.condition.enfeeble%", + "value": "%game.coloredToken.c7386a.toa-ritualist%: %game.condition.enfeeble% / %game.coloredToken.336fa2.toa-conquerer%: %game.condition.empower%", "effects": [ { "type": "specialTarget", @@ -245,7 +245,7 @@ "effects": [ { "type": "custom", - "value": "%game.coloredToken.5cac66.toa-reaver%: %game.condition.rupture% / %game.coloredToken.c7386a.toa-ritualist%: %game.condition.empower%", + "value": "%game.coloredToken.5cac66.toa-reaver%: %game.condition.rupture% / %game.coloredToken.c7386a.toa-ritualist%: %game.condition.enfeeble%", "effects": [ { "type": "specialTarget", diff --git a/package-lock.json b/package-lock.json index e52bfaf10..7c3ef1b08 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "gloomhavensecretariat", - "version": "0.99.9", + "version": "0.99.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "gloomhavensecretariat", - "version": "0.99.9", + "version": "0.99.10", "license": "AGPL3", "dependencies": { "@angular/animations": "^18.0.3", @@ -8701,9 +8701,9 @@ } }, "node_modules/engine.io": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", - "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz", + "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==", "dev": true, "dependencies": { "@types/cookie": "^0.4.1", @@ -8715,7 +8715,7 @@ "cors": "~2.8.5", "debug": "~4.3.1", "engine.io-parser": "~5.2.1", - "ws": "~8.11.0" + "ws": "~8.17.1" }, "engines": { "node": ">=10.2.0" @@ -15423,13 +15423,13 @@ } }, "node_modules/socket.io-adapter": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz", - "integrity": "sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg==", + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", "dev": true, "dependencies": { "debug": "~4.3.4", - "ws": "~8.11.0" + "ws": "~8.17.1" } }, "node_modules/socket.io-parser": { @@ -17349,27 +17349,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/webpack-merge": { "version": "5.10.0", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", @@ -17630,16 +17609,16 @@ "dev": true }, "node_modules/ws": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", - "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", "dev": true, "engines": { "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "utf-8-validate": ">=5.0.2" }, "peerDependenciesMeta": { "bufferutil": { diff --git a/package.json b/package.json index f35db5ee2..052ce56d4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gloomhavensecretariat", - "version": "0.99.9", + "version": "0.99.10", "license": "AGPL3", "description": "Gloomhaven Secretariat is a Gloomhaven/Frosthaven Companion app.", "homepage": "https://gloomhaven-secretariat.de", diff --git a/src/app/game/businesslogic/GameManager.ts b/src/app/game/businesslogic/GameManager.ts index bd5df4810..d43443a96 100644 --- a/src/app/game/businesslogic/GameManager.ts +++ b/src/app/game/businesslogic/GameManager.ts @@ -370,13 +370,9 @@ export class GameManager { return this.sortFiguresByTypeAndName(a, b); } return a.getInitiative() - b.getInitiative(); - } else if (a.getInitiative() > 0) { - return 1; - } else if (b.getInitiative() > 0) { - return -1; } - return this.sortFiguresByTypeAndName(a, b); + return 0; }); } diff --git a/src/app/ui/figures/ability/abilities-dialog.ts b/src/app/ui/figures/ability/abilities-dialog.ts index f79599a4e..0430c937a 100644 --- a/src/app/ui/figures/ability/abilities-dialog.ts +++ b/src/app/ui/figures/ability/abilities-dialog.ts @@ -66,6 +66,7 @@ export class AbiltiesDialogComponent implements OnInit { shuffle(upcoming: boolean = false) { gameManager.stateManager.before("shuffleAbilityDeck" + (upcoming ? "Upcoming" : ""), "data.monster." + this.monster.name); gameManager.monsterManager.shuffleAbilities(this.monster, upcoming); + gameManager.sortFigures(); gameManager.stateManager.after(); this.update(); } @@ -73,6 +74,7 @@ export class AbiltiesDialogComponent implements OnInit { draw() { gameManager.stateManager.before("drawAbility", "data.monster." + this.monster.name); gameManager.monsterManager.drawAbility(this.monster); + gameManager.sortFigures(); gameManager.stateManager.after(); this.update(); } @@ -89,6 +91,7 @@ export class AbiltiesDialogComponent implements OnInit { if (gameManager.game.state == GameState.next) { gameManager.monsterManager.drawExtra(this.monster); } + gameManager.sortFigures(); gameManager.stateManager.after(); } this.update(); @@ -125,6 +128,7 @@ export class AbiltiesDialogComponent implements OnInit { if (sameDeckMonster) { gameManager.monsterManager.applySameDeck(sameDeckMonster); } + gameManager.sortFigures(); gameManager.stateManager.after(); this.update(); }