public bool Remove(string id) { if (_default_main != null) { IPlayerInputDevice device; if (_dict.TryGetValue(id, out device) && device == _default_main) { if (_dict.Remove(id)) { _default_main = null; return(true); } else { return(false); } } else { return(_dict.Remove(id)); } } else { return(_dict.Remove(id)); } }
public void Add(string id, IPlayerInputDevice dev) { if (this.Contains(dev) && !(_dict.ContainsKey(id) && _dict[id] == dev)) { throw new System.ArgumentException("Manager already contains input device for other player."); } _dict[id] = dev; }
public string GetId(IPlayerInputDevice dev) { foreach (var pair in _dict) { if (pair.Value == dev) { return(pair.Key); } } throw new System.ArgumentException("Unknown input device."); }
public bool Contains(IPlayerInputDevice dev) { return((_dict.Values as ICollection <IPlayerInputDevice>).Contains(dev)); }