aboutsummaryrefslogtreecommitdiff
path: root/internal/behavior
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-07-05 22:35:21 -0400
committerhistoria <[not public]>2026-07-05 22:35:21 -0400
commit94823b52168b44894fb5e9c960358ed02ebb122b (patch)
tree3060799b89bb7edfa708c72bdd981107d40f4d09 /internal/behavior
parent843fa6db681e494bf46e191655323a40577542b5 (diff)
downloadthehouseoficarus-94823b52168b44894fb5e9c960358ed02ebb122b.tar.gz
feat: courses gui overhaul, add course tab to map, add hidden exits to give courses structure
Diffstat (limited to 'internal/behavior')
-rw-r--r--internal/behavior/types.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/internal/behavior/types.go b/internal/behavior/types.go
index 99f09a0..03876e5 100644
--- a/internal/behavior/types.go
+++ b/internal/behavior/types.go
@@ -145,14 +145,22 @@ type ObstacleData struct {
StartRoom int
ObstacleXP int
CompletionXP int
- FailChance float64
+ // FailChance is the resolved failure probability for this attempt.
+ // nil => derived at runtime from agility level vs RequiredLevel.
+ FailChance *float64
FailDamageMin int
FailDamageMax int
- Messages []any
- TicksPerPhase float64
+ Phases []PhaseData
RequiredLevel int
}
+// PhaseData is the runtime form of an obstacle phase.
+type PhaseData struct {
+ Message string
+ Delay float64
+ FailCheck bool
+}
+
type FarmData struct {
Prefix string
SeedID string