aboutsummaryrefslogtreecommitdiff
path: root/internal/world/trigger_store.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/world/trigger_store.go')
-rw-r--r--internal/world/trigger_store.go68
1 files changed, 34 insertions, 34 deletions
diff --git a/internal/world/trigger_store.go b/internal/world/trigger_store.go
index b5fac5b..e18ae80 100644
--- a/internal/world/trigger_store.go
+++ b/internal/world/trigger_store.go
@@ -14,12 +14,12 @@ type TriggerStore struct {
mu sync.Mutex
globalByPlayerFlag map[string][]*TriggerDef
- globalByWorldFlag map[string][]*TriggerDef
+ globalByGlobalFlag map[string][]*TriggerDef
roomByPlayerFlag map[int]map[string][]*TriggerDef
- roomByWorldFlag map[int]map[string][]*TriggerDef
+ roomByGlobalFlag map[int]map[string][]*TriggerDef
playerSeqs map[string]*PlayerTriggerSeq
- worldSeqs map[string]*WorldTriggerSeq
+ globalSeqs map[string]*GlobalTriggerSeq
}
type PlayerTriggerSeq struct {
@@ -32,7 +32,7 @@ type PlayerTriggerSeq struct {
FlagValue any
}
-type WorldTriggerSeq struct {
+type GlobalTriggerSeq struct {
TriggerID string
RoomID int
Steps []TriggerStep
@@ -43,11 +43,11 @@ type WorldTriggerSeq struct {
func NewTriggerStore() *TriggerStore {
return &TriggerStore{
globalByPlayerFlag: make(map[string][]*TriggerDef),
- globalByWorldFlag: make(map[string][]*TriggerDef),
+ globalByGlobalFlag: make(map[string][]*TriggerDef),
roomByPlayerFlag: make(map[int]map[string][]*TriggerDef),
- roomByWorldFlag: make(map[int]map[string][]*TriggerDef),
+ roomByGlobalFlag: make(map[int]map[string][]*TriggerDef),
playerSeqs: make(map[string]*PlayerTriggerSeq),
- worldSeqs: make(map[string]*WorldTriggerSeq),
+ globalSeqs: make(map[string]*GlobalTriggerSeq),
}
}
@@ -55,9 +55,9 @@ func (ts *TriggerStore) ClearTriggers() {
ts.mu.Lock()
defer ts.mu.Unlock()
ts.globalByPlayerFlag = make(map[string][]*TriggerDef)
- ts.globalByWorldFlag = make(map[string][]*TriggerDef)
+ ts.globalByGlobalFlag = make(map[string][]*TriggerDef)
ts.roomByPlayerFlag = make(map[int]map[string][]*TriggerDef)
- ts.roomByWorldFlag = make(map[int]map[string][]*TriggerDef)
+ ts.roomByGlobalFlag = make(map[int]map[string][]*TriggerDef)
}
func (ts *TriggerStore) LoadGlobal(dataDir string) error {
@@ -110,13 +110,13 @@ func (ts *TriggerStore) SeedRoomTriggers(roomID int, triggers []TriggerDef) {
ts.roomByPlayerFlag[roomID][t.OnPlayerFlag] = append(
ts.roomByPlayerFlag[roomID][t.OnPlayerFlag], t)
}
- if t.IsWorldFlagTrigger() {
- if ts.roomByWorldFlag[roomID] == nil {
- ts.roomByWorldFlag[roomID] = make(map[string][]*TriggerDef)
+ if t.IsGlobalFlagTrigger() {
+ if ts.roomByGlobalFlag[roomID] == nil {
+ ts.roomByGlobalFlag[roomID] = make(map[string][]*TriggerDef)
}
t.Room = roomID
- ts.roomByWorldFlag[roomID][t.OnFlag] = append(
- ts.roomByWorldFlag[roomID][t.OnFlag], t)
+ ts.roomByGlobalFlag[roomID][t.OnGlobalFlag] = append(
+ ts.roomByGlobalFlag[roomID][t.OnGlobalFlag], t)
}
}
}
@@ -128,9 +128,9 @@ func (ts *TriggerStore) addGlobal(t *TriggerDef) {
ts.globalByPlayerFlag[t.OnPlayerFlag] = append(
ts.globalByPlayerFlag[t.OnPlayerFlag], t)
}
- if t.IsWorldFlagTrigger() {
- ts.globalByWorldFlag[t.OnFlag] = append(
- ts.globalByWorldFlag[t.OnFlag], t)
+ if t.IsGlobalFlagTrigger() {
+ ts.globalByGlobalFlag[t.OnGlobalFlag] = append(
+ ts.globalByGlobalFlag[t.OnGlobalFlag], t)
}
}
@@ -184,23 +184,23 @@ func (ts *TriggerStore) FirePlayerInRoom(playerName string, roomID int, flagName
return started
}
-func (ts *TriggerStore) FireWorld(flagName string, flagValue any) []*WorldTriggerSeq {
+func (ts *TriggerStore) FireGlobal(flagName string, flagValue any) []*GlobalTriggerSeq {
ts.mu.Lock()
defer ts.mu.Unlock()
- var started []*WorldTriggerSeq
+ var started []*GlobalTriggerSeq
- for _, t := range ts.globalByWorldFlag[flagName] {
+ for _, t := range ts.globalByGlobalFlag[flagName] {
if !ts.valueMatches(t.Value, flagValue) {
continue
}
- seq := ts.startWorldSeqLocked(t, flagValue)
+ seq := ts.startGlobalSeqLocked(t, flagValue)
if seq != nil {
started = append(started, seq)
}
}
- for roomID, roomFlags := range ts.roomByWorldFlag {
+ for roomID, roomFlags := range ts.roomByGlobalFlag {
for _, t := range roomFlags[flagName] {
if !ts.valueMatches(t.Value, flagValue) {
continue
@@ -208,7 +208,7 @@ func (ts *TriggerStore) FireWorld(flagName string, flagValue any) []*WorldTrigge
if t.Room == 0 {
t.Room = roomID
}
- seq := ts.startWorldSeqLocked(t, flagValue)
+ seq := ts.startGlobalSeqLocked(t, flagValue)
if seq != nil {
started = append(started, seq)
}
@@ -238,12 +238,12 @@ func (ts *TriggerStore) startPlayerSeqLocked(playerName string, t *TriggerDef, r
return seq
}
-func (ts *TriggerStore) startWorldSeqLocked(t *TriggerDef, flagValue any) *WorldTriggerSeq {
+func (ts *TriggerStore) startGlobalSeqLocked(t *TriggerDef, flagValue any) *GlobalTriggerSeq {
key := t.ID
- if _, exists := ts.worldSeqs[key]; exists {
+ if _, exists := ts.globalSeqs[key]; exists {
return nil
}
- seq := &WorldTriggerSeq{
+ seq := &GlobalTriggerSeq{
TriggerID: t.ID,
RoomID: t.Room,
Steps: make([]TriggerStep, len(t.Steps)),
@@ -253,7 +253,7 @@ func (ts *TriggerStore) startWorldSeqLocked(t *TriggerDef, flagValue any) *World
if len(seq.Steps) > 0 {
seq.Wait = seq.Steps[0].Delay
}
- ts.worldSeqs[key] = seq
+ ts.globalSeqs[key] = seq
return seq
}
@@ -274,11 +274,11 @@ func (ts *TriggerStore) SnapshotPlayerSeqs() []*PlayerTriggerSeq {
return out
}
-func (ts *TriggerStore) SnapshotWorldSeqs() []*WorldTriggerSeq {
+func (ts *TriggerStore) SnapshotGlobalSeqs() []*GlobalTriggerSeq {
ts.mu.Lock()
defer ts.mu.Unlock()
- out := make([]*WorldTriggerSeq, 0, len(ts.worldSeqs))
- for _, s := range ts.worldSeqs {
+ out := make([]*GlobalTriggerSeq, 0, len(ts.globalSeqs))
+ for _, s := range ts.globalSeqs {
out = append(out, s)
}
return out
@@ -291,10 +291,10 @@ func (ts *TriggerStore) RemovePlayerSeq(playerName, triggerID string) {
delete(ts.playerSeqs, key)
}
-func (ts *TriggerStore) RemoveWorldSeq(triggerID string) {
+func (ts *TriggerStore) RemoveGlobalSeq(triggerID string) {
ts.mu.Lock()
defer ts.mu.Unlock()
- delete(ts.worldSeqs, triggerID)
+ delete(ts.globalSeqs, triggerID)
}
func (ts *TriggerStore) AllGlobalTriggers() []*TriggerDef {
@@ -304,7 +304,7 @@ func (ts *TriggerStore) AllGlobalTriggers() []*TriggerDef {
for _, triggers := range ts.globalByPlayerFlag {
out = append(out, triggers...)
}
- for _, triggers := range ts.globalByWorldFlag {
+ for _, triggers := range ts.globalByGlobalFlag {
out = append(out, triggers...)
}
return out
@@ -340,7 +340,7 @@ func (ts *TriggerStore) AllRoomTriggers() map[int][]*TriggerDef {
out[roomID] = append(out[roomID], triggers...)
}
}
- for roomID, byFlag := range ts.roomByWorldFlag {
+ for roomID, byFlag := range ts.roomByGlobalFlag {
for _, triggers := range byFlag {
out[roomID] = append(out[roomID], triggers...)
}