diff options
Diffstat (limited to 'internal/world/trigger_store.go')
| -rw-r--r-- | internal/world/trigger_store.go | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/internal/world/trigger_store.go b/internal/world/trigger_store.go index 04d77f4..e50ae81 100644 --- a/internal/world/trigger_store.go +++ b/internal/world/trigger_store.go @@ -9,6 +9,7 @@ import ( "gopkg.in/yaml.v3" "thehouseoficarus/internal/behavior" + "thehouseoficarus/internal/engine" ) type TriggerStore struct { @@ -262,7 +263,7 @@ func (ts *TriggerStore) valueMatches(want, got any) bool { if want == nil { return true } - return valuesEqual(want, got) + return engine.ValuesEqual(want, got) } func (ts *TriggerStore) SnapshotPlayerSeqs() []*PlayerTriggerSeq { @@ -311,27 +312,6 @@ func (ts *TriggerStore) AllGlobalTriggers() []*TriggerDef { return out } -func valuesEqual(a, b any) bool { - ai, aok := numericValue(a) - bi, bok := numericValue(b) - if aok && bok { - return ai == bi - } - return a == b -} - -func numericValue(v any) (float64, bool) { - switch x := v.(type) { - case int: - return float64(x), true - case int64: - return float64(x), true - case float64: - return x, true - } - return 0, false -} - func (ts *TriggerStore) AllRoomTriggers() map[int][]*TriggerDef { ts.mu.Lock() defer ts.mu.Unlock() |
