From 618c78d82a6f48b021519696f4abe902da4f336e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lazar=20Slavkovi=C4=87-Raco?= Date: Wed, 2 Aug 2023 14:32:28 +0200 Subject: [PATCH] PF2e Encounter Builder (#195) * add: encounter class for pf2e * edit:renamed function * add & refactor: added encounter difficulty and some formatting * edit:add pf2e to xp system selection * refactor: formatting * refactor: implement PR changes * edit: Add trivial coloring (gray) * edit: edit cssClass comment * edit: add correct logic for threat levels * fix: prevent .split null calls * edit: fix tracker bar labels * fix: PR changes --------- Co-authored-by: Caedis --- src/encounter/ui/Encounter.svelte | 3 + src/encounter/ui/EncounterRow.svelte | 3 + src/tracker/ui/Difficulty.svelte | 8 +- src/utils/rpg-system/dnd5e-lazygm.ts | 5 + src/utils/rpg-system/dnd5e.ts | 7 ++ src/utils/rpg-system/index.ts | 14 ++- src/utils/rpg-system/pf2e.ts | 135 +++++++++++++++++++++++++++ src/utils/rpg-system/rpgSystem.ts | 2 + 8 files changed, 172 insertions(+), 5 deletions(-) create mode 100644 src/utils/rpg-system/pf2e.ts diff --git a/src/encounter/ui/Encounter.svelte b/src/encounter/ui/Encounter.svelte index 3f7ff4ae..da349d2d 100644 --- a/src/encounter/ui/Encounter.svelte +++ b/src/encounter/ui/Encounter.svelte @@ -273,6 +273,9 @@ .easy .difficulty-label { color: green; } + .trivial .difficulty-label { + color: #AAAAAA; + } .icons { display: flex; } diff --git a/src/encounter/ui/EncounterRow.svelte b/src/encounter/ui/EncounterRow.svelte index 222da673..bfcb559c 100644 --- a/src/encounter/ui/EncounterRow.svelte +++ b/src/encounter/ui/EncounterRow.svelte @@ -221,6 +221,9 @@ .easy .difficulty-label { color: green; } + .trivial .difficulty-label { + color: #AAAAAA; + } .icons { display: flex; } diff --git a/src/tracker/ui/Difficulty.svelte b/src/tracker/ui/Difficulty.svelte index cb1be4cd..cc21d9fd 100644 --- a/src/tracker/ui/Difficulty.svelte +++ b/src/tracker/ui/Difficulty.svelte @@ -2,6 +2,8 @@ import { tweened } from "svelte/motion"; import { cubicOut } from "svelte/easing"; import { getContext } from "svelte"; + import { getRpgSystem } from "src/utils" + import type { RpgSystem } from "src/utils/rpg-system/rpgSystem"; import type InitiativeTracker from "src/main"; import { tracker } from "../stores/tracker"; @@ -11,6 +13,8 @@ const dif = difficulty(plugin); + const rpgSystem: RpgSystem = getRpgSystem(plugin); + const difficultyBar = tweened(0, { duration: 400, easing: cubicOut @@ -26,7 +30,7 @@
- Easy + {rpgSystem.SystemDifficulties[0]} - Deadly + {rpgSystem.SystemDifficulties.slice(-1)}