| 54 | } |
| 55 | |
| 56 | type MutatorSpec struct { |
| 57 | MutatorId string `yaml:"mutatorid,omitempty"` // Short text that will uniquely identify this modifier ("dusty") |
| 58 | // Text based changes |
| 59 | NameModifier *TextModifier `yaml:"namemodifier,omitempty"` |
| 60 | DescriptionModifier *TextModifier `yaml:"descriptionmodifier,omitempty"` |
| 61 | AlertModifier *TextModifier `yaml:"alertmodifier,omitempty"` // These can only append. |
| 62 | // End text based changes |
| 63 | DecayIntoId string `yaml:"decayintoid,omitempty"` // Id of another Mutator that replaces this one when it decays. This can be a circular behavior. |
| 64 | PlayerBuffIds []int `yaml:"playerbuffids,omitempty"` // buffId's that apply conditionally TO PLAYERS AND PLAYER FOLLOWERS |
| 65 | MobBuffIds []int `yaml:"mobbuffids,omitempty"` // buffId's that apply conditionally TO MOBS |
| 66 | NativeBuffIds []int `yaml:"nativebuffids,omitempty"` // buffId's that apply conditionally TO MOBS THAT SPAWNED IN THIS ROOM |
| 67 | DecayRate string `yaml:"decayrate,omitempty"` // how long until it is gone |
| 68 | RespawnRate string `yaml:"respawnrate,omitempty"` // daily, weekly, 1 day, 3 day, monthly, etc. |
| 69 | LightMod int `yaml:"lightmod,omitempty"` // -2 to 2 (change). If result is 0 = none. 1 = can see this room. 2 = can see this room and all exits |
| 70 | Exits map[string]exit.RoomExit `yaml:"exits,omitempty"` // name/roomId pairs of exits only available while mutator is live. |
| 71 | Pvp PvpOverride `yaml:"pvp,omitempty"` // optionally force room pvp attributes. |
| 72 | Tags []string `yaml:"tags,omitempty"` // tags applied to the room while this mutator is active. |
| 73 | } |
| 74 | |
| 75 | func GetAllMutatorSpecs() []MutatorSpec { |
| 76 | mutSpec := []MutatorSpec{} |
nothing calls this directly
no outgoing calls
no test coverage detected