public bool SelectServer(Server server) { if (!GameNetwork.IsInNetwork(server)) return false; _selected_server = server; return true; }
public Game(Network game_network, Player current_player) { _mediator = new SynchronousMediator(); GameNetwork = game_network; Attacker = current_player; _selected_server = null; _undo_stack = new UndoStack(64, _mediator); State = GameStates.Network; }
public void AddRootServer(Server server) { if (server != null) { _root_servers.Add(server); Stack<Server> server_stack = new Stack<Server>(); server_stack.Push(server); for (Server s = server_stack.Pop(); server_stack.Count > 0; s = server_stack.Pop()) { foreach(Server child in s.ChildServers) { if (!_all_servers.ContainsKey(child.Id)) { _all_servers.Add(child.Id, child); server_stack.Push(child); } } } } }
public void UpdateHackedServer(Server server) { if (IsInNetwork(server)) foreach (Server child in server.ChildServers) if (!_all_servers.ContainsKey(child.Id)) _all_servers.Add(child.Id, child); }
public bool IsInNetwork(Server server) { return IsInNetwork(server.Id); }
public void AddToParent(Server parent, Server child) { _all_servers[parent.Id].AddChildServer(child); _all_servers.Add(child.Id, child); }
public void AddParentServer(Server parent) { if (parent != null) { foreach (Server p in _parents) if (p == parent) return; _parents.Add(parent); } }
public void AddChildServer(Server child) { if (child != null) { foreach (Server c in _children) if (c == child) return; child.AddParentServer(this); _children.Add(child); } }