public void Dispose() { lock (_creatures) { foreach (var creature in _creatures) creature.Disappears -= this.OnDisappears; _creatures.Clear(); } }