Skip to content

Commit 58c8737

Browse files
committed
List domains in /materials as well, use same data in /books and /weaponmats
1 parent 841d63f commit 58c8737

File tree

6 files changed

+178
-82
lines changed

6 files changed

+178
-82
lines changed

src/commands/characters/books.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,22 @@ export default class Books extends Command {
2727

2828
async run(source: CommandSource): Promise<SendMessage | undefined> {
2929
const { data } = client
30-
const { books } = data
30+
const { materials } = data
31+
32+
const allBooks = Object.values(materials)
33+
.filter(x => x.type == "Talent Level-Up Material" && x.stars == 3)
34+
35+
const days = [
36+
["Monday & Thursday", "Monday/Thursday/Sunday"],
37+
["Tuesday & Friday", "Tuesday/Friday/Sunday"],
38+
["Wednesday & Saturday", "Wednesday/Saturday/Sunday"]
39+
].map(([days, source]) => {
40+
const books = allBooks.filter(b => b.sources?.some(s => s.endsWith(`(${source})`))).map(b => b.name)
41+
return { days, books }
42+
})
3143

3244
return sendMessage(source, `**Talent Books**:
33-
${Object.entries(books).map(([day, books]) => `**${day}**: ${books.map(book => `${data.emoji(`Guide to ${book}`)} ${book}`).join(" / ")}`).join("\n")}
45+
${days.map(({ days, books }) => `**${days}**: ${books.map(book => `${data.emoji(book)} ${book.split(" ").pop()}`).join(" / ")}`).join("\n")}
3446
**Sunday**: All books are available`)
3547
}
3648
}

src/commands/weapons/weaponmats.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,22 @@ export default class WeaponMats extends Command {
2727

2828
async run(source: CommandSource): Promise<SendMessage | undefined> {
2929
const { data } = client
30-
const { weaponMats } = data
30+
const { materials } = data
31+
32+
const allWeaponMats = Object.values(materials)
33+
.filter(x => x.type == "Weapon Ascension Material" && x.stars == 3)
34+
35+
const days = [
36+
["Monday & Thursday", "Monday/Thursday/Sunday"],
37+
["Tuesday & Friday", "Tuesday/Friday/Sunday"],
38+
["Wednesday & Saturday", "Wednesday/Saturday/Sunday"]
39+
].map(([days, source]) => {
40+
const weaponMats = allWeaponMats.filter(wm => wm.sources?.some(s => s.endsWith(`(${source})`))).map(wm => wm.name)
41+
return { days, weaponMats }
42+
})
3143

3244
return sendMessage(source, `**Weapon Ascension Materials**:
33-
${Object.entries(weaponMats).map(([day, mats]) => `**${day}**: ${mats.map(mat => data.emoji(mat, true)).join(" / ")}`).join("\n")}
45+
${days.map(({ days, weaponMats }) => `**${days}**: ${weaponMats.map(weaponMat => `${data.emoji(weaponMat)} ${weaponMat}`).join(" / ")}`).join("\n")}
3446
**Sunday**: All materials are available`)
3547
}
3648
}

src/data/gamedata/books.json

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)