MCPcopy Create free account
hub / github.com/GoMudEngine/GoMud / handleUnset

Method handleUnset

modules/zombiemode/command.zombie.go:247–286  ·  view source on GitHub ↗
(field string, valueArgs []string, user *users.UserRecord, cfg ZombieConfig)

Source from the content-addressed store, hash-verified

245}
246
247func (m *ZombieModule) handleUnset(field string, valueArgs []string, user *users.UserRecord, cfg ZombieConfig) (bool, error) {
248 value := strings.Join(valueArgs, ` `)
249
250 switch field {
251 case `combat`:
252 if value == `` || value == `all` {
253 cfg.CombatTargets = nil
254 user.SendText(`All combat targets cleared.`)
255 } else {
256 cfg.CombatTargets = removeString(cfg.CombatTargets, value)
257 user.SendText(fmt.Sprintf(`Combat target <ansi fg="yellow">%s</ansi> removed.`, value))
258 }
259 m.configs[user.UserId] = cfg
260
261 case `roam`:
262 cfg.RoamRadius = 0
263 m.configs[user.UserId] = cfg
264 user.SendText(`Roaming disabled.`)
265
266 case `rest`:
267 cfg.RestThreshold = 0
268 m.configs[user.UserId] = cfg
269 user.SendText(`Rest threshold disabled.`)
270
271 case `loot`:
272 if value == `` || value == `all` {
273 cfg.LootTargets = nil
274 user.SendText(`All loot targets cleared.`)
275 } else {
276 cfg.LootTargets = removeString(cfg.LootTargets, value)
277 user.SendText(fmt.Sprintf(`Loot target <ansi fg="yellow">%s</ansi> removed.`, value))
278 }
279 m.configs[user.UserId] = cfg
280
281 default:
282 user.SendText(`Unknown setting. Valid settings: combat, roam, rest, loot`)
283 }
284
285 return true, nil
286}
287
288func (m *ZombieModule) showConfig(user *users.UserRecord, cfg ZombieConfig) {
289 _, isActive := m.active[user.UserId]

Callers 1

zombieCommandMethod · 0.95

Calls 2

removeStringFunction · 0.85
SendTextMethod · 0.45

Tested by

no test coverage detected