Skip to content

Commit bf5ce61

Browse files
committed
fix(skills): track Well-Read achievement properly
1 parent 51e729e commit bf5ce61

File tree

2 files changed

+20
-10
lines changed

2 files changed

+20
-10
lines changed

apps/stardew.app/src/components/cards/dialog-card.tsx

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import {
2727
} from "@/components/ui/dialog";
2828

2929
import { useMultiSelect } from "@/contexts/multi-select-context";
30-
import { Stardrop, IslandUpgradeMail } from "@/lib/parsers/general";
30+
import { IslandUpgradeMail, Stardrop } from "@/lib/parsers/general";
3131
import { ChevronRightIcon } from "@radix-ui/react-icons";
3232

3333
interface Props {
@@ -36,7 +36,14 @@ interface Props {
3636
iconURL: string;
3737
completed?: boolean;
3838
_id: string;
39-
_type: "stardrop" | "note" | "scrap" | "walnut" | "power" | "rarecrow" | "island_upgrade";
39+
_type:
40+
| "stardrop"
41+
| "note"
42+
| "scrap"
43+
| "walnut"
44+
| "power"
45+
| "rarecrow"
46+
| "island_upgrade";
4047
/**
4148
* Whether the user prefers to see new content
4249
*
@@ -134,21 +141,20 @@ export const DialogCard = ({
134141
case "power":
135142
let powers = new Set(activePlayer?.powers?.collection ?? []);
136143

137-
console.log("initial powers:", powers);
138-
139144
if (status) powers.add(_id);
140145
else powers.delete(_id);
141146

142-
console.log("final powers:", powers);
143-
144147
patch = {
145148
powers: {
146149
collection: Array.from(powers),
147150
},
148151
};
152+
break;
149153

150154
case "island_upgrade":
151-
const islandUpgrades = new Set(activePlayer.general?.islandUpgrades ?? []);
155+
const islandUpgrades = new Set(
156+
activePlayer.general?.islandUpgrades ?? [],
157+
);
152158
if (status) islandUpgrades.add(_id as IslandUpgradeMail);
153159
else islandUpgrades.delete(_id as IslandUpgradeMail);
154160

apps/stardew.app/src/pages/skills.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,14 @@ export default function SkillsMasteryPowers() {
5858
additionalDescription = ` - ${reqs[name] - maxLevelCount} left`;
5959
}
6060
} else if (powers.has(name)) {
61-
// use the size of playerPowers and compare to reqs
62-
if (playerPowers.size >= reqs[name]) completed = true;
61+
// use the length of books from playerPowers and compare to reqs
62+
const books = Array.from(playerPowers).filter((power) =>
63+
power.startsWith("Book"),
64+
);
65+
66+
if (books.length >= reqs[name]) completed = true;
6367
else {
64-
additionalDescription = ` - ${reqs[name] - playerPowers.size} left`;
68+
additionalDescription = ` - ${reqs[name] - books.length} left`;
6569
}
6670
}
6771
}

0 commit comments

Comments
 (0)