aboutsummaryrefslogtreecommitdiff
path: root/internal/action
diff options
context:
space:
mode:
Diffstat (limited to 'internal/action')
-rw-r--r--internal/action/behavior.go20
1 files changed, 13 insertions, 7 deletions
diff --git a/internal/action/behavior.go b/internal/action/behavior.go
index d7f683a..d8eb909 100644
--- a/internal/action/behavior.go
+++ b/internal/action/behavior.go
@@ -38,16 +38,22 @@ type TalkOption struct {
}
type NodeAction struct {
- SetFlags map[string]any `yaml:"set_flags"`
- GiveItem string `yaml:"give_item"`
- TakeItem string `yaml:"take_item"`
+ SetFlags map[string]any `yaml:"set_flags"`
+ SetPlayerFlags map[string]any `yaml:"set_player_flags"`
+ GiveItem string `yaml:"give_item"`
+ TakeItem string `yaml:"take_item"`
+ Teleport int `yaml:"teleport"`
+ Heal int `yaml:"heal"`
}
type Condition struct {
- Flag string `yaml:"flag"`
- Value any `yaml:"value"`
- Not bool `yaml:"not"`
- HasItem string `yaml:"has_item"`
+ Flag string `yaml:"flag"`
+ Value any `yaml:"value"`
+ Not bool `yaml:"not"`
+ PlayerFlag string `yaml:"player_flag"`
+ HasItem string `yaml:"has_item"`
+ AllOf []Condition `yaml:"all_of"`
+ AnyOf []Condition `yaml:"any_of"`
}
type UseConfig struct {