diff --git a/docs/sourceMap.md b/docs/sourceMap.md index 5a7476b1..30b608f8 100644 --- a/docs/sourceMap.md +++ b/docs/sourceMap.md @@ -147,6 +147,7 @@ _Support content creators. Only use or include sources that you own._ | PiP | Peril in Pinegrove | adventure | | PotA | Princes of the Apocalypse | adventure | | QftIS | Quests from the Infinite Staircase | adventure | +| RHW | Ravenloft: The Horrors Within | book | | RMBRE | The Lost Dungeon of Rickedness: Big Rick Energy | adventure | | RMR | Dungeons & Dragons vs. Rick and Morty: Basic Rules | book | | RoT | The Rise of Tiamat | adventure | diff --git a/src/main/java/dev/ebullient/convert/tools/dnd5e/Json2QuteCommon.java b/src/main/java/dev/ebullient/convert/tools/dnd5e/Json2QuteCommon.java index 11d8a386..113be8f9 100644 --- a/src/main/java/dev/ebullient/convert/tools/dnd5e/Json2QuteCommon.java +++ b/src/main/java/dev/ebullient/convert/tools/dnd5e/Json2QuteCommon.java @@ -3,6 +3,7 @@ import static dev.ebullient.convert.StringUtil.isPresent; import static dev.ebullient.convert.StringUtil.joinConjunct; import static dev.ebullient.convert.StringUtil.toOrdinal; +import static dev.ebullient.convert.StringUtil.uppercaseFirst; import java.nio.file.Path; import java.text.Normalizer; @@ -372,6 +373,12 @@ private String proficiencyPrereq(JsonNode profPrereq) { replaceText(prof.getValue().asText()))); case "weaponGroup" -> profs.add(String.format("%s weapons", replaceText(prof.getValue().asText()))); + case "skill" -> { + List skills = new ArrayList<>(); + prof.getValue().forEach(x -> skills.add(uppercaseFirst(replaceText(x.asText())))); + profs.add(String.format("the %s skill", + joinConjunct(" or ", skills))); + } default -> { tui().warnf(Msg.UNKNOWN, "unknown proficiency prereq %s from %s / %s", p.toString(), getSources().getKey(), parseState().getSource()); diff --git a/src/main/resources/sourceMap.yaml b/src/main/resources/sourceMap.yaml index 3b9b1e2a..3b486ec1 100644 --- a/src/main/resources/sourceMap.yaml +++ b/src/main/resources/sourceMap.yaml @@ -391,6 +391,9 @@ config5e: QftIS: name: "Quests from the Infinite Staircase" date: "2024-07-16" + RHW: + name: "Ravenloft: The Horrors Within" + date: "2026-06-16" RMBRE: name: "The Lost Dungeon of Rickedness: Big Rick Energy" date: "2019-11-19" diff --git a/src/test/resources/5e-sourceTypes.json b/src/test/resources/5e-sourceTypes.json index 788cf433..ba23f8fe 100644 --- a/src/test/resources/5e-sourceTypes.json +++ b/src/test/resources/5e-sourceTypes.json @@ -161,6 +161,7 @@ "NF", "LFL", "EFA", - "CaBoMP" + "CaBoMP", + "RHW" ] } \ No newline at end of file