aboutsummaryrefslogtreecommitdiff
path: root/worldbuilding_guide/conditions.md
diff options
context:
space:
mode:
Diffstat (limited to 'worldbuilding_guide/conditions.md')
-rw-r--r--worldbuilding_guide/conditions.md66
1 files changed, 66 insertions, 0 deletions
diff --git a/worldbuilding_guide/conditions.md b/worldbuilding_guide/conditions.md
new file mode 100644
index 0000000..ce9f74c
--- /dev/null
+++ b/worldbuilding_guide/conditions.md
@@ -0,0 +1,66 @@
+## Conditions Reference
+
+Conditions are used in talk options, exit gates, on-enter scripts, and toggle checks.
+
+### Simple conditions
+
+```yaml
+# Check a world flag
+condition:
+ flag: gate_open
+ value: true
+
+# Check a world flag is NOT set
+condition:
+ flag: gate_open
+ not: true
+
+# Check a player flag
+condition:
+ player_flag: finished_tutorial
+ value: true
+
+# Check if player has an item
+condition:
+ has_item: bronze_key
+
+# Check if player does NOT have an item
+condition:
+ has_item: bronze_key
+ not: true
+```
+
+### Compound conditions
+
+All must pass:
+```yaml
+condition:
+ all_of:
+ - flag: gate_open
+ value: true
+ - has_item: pass_stub
+```
+
+Any one must pass:
+```yaml
+condition:
+ any_of:
+ - has_item: bronze_key
+ - has_item: iron_key
+ - player_flag: master_of_unlocking
+ value: true
+```
+
+Nested compounds:
+```yaml
+condition:
+ all_of:
+ - player_flag: quest_started
+ value: true
+ - any_of:
+ - has_item: wolf_pelt
+ - has_item: bear_pelt
+```
+
+---
+