Example #1
0
 public bool SelectServer(Server server)
 {
     if (!GameNetwork.IsInNetwork(server))
         return false;
     _selected_server = server;
     return true;
 }
Example #2
0
 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;
 }
Example #3
0
 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);
                 }
             }
         }
     }
 }
Example #4
0
 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);
 }
Example #5
0
 public bool IsInNetwork(Server server)
 {
     return IsInNetwork(server.Id);
 }
Example #6
0
 public void AddToParent(Server parent, Server child)
 {
     _all_servers[parent.Id].AddChildServer(child);
     _all_servers.Add(child.Id, child);
 }
Example #7
0
 public void AddParentServer(Server parent)
 {
     if (parent != null)
     {
         foreach (Server p in _parents)
             if (p == parent)
                 return;
         _parents.Add(parent);
     }
 }
Example #8
0
 public void AddChildServer(Server child)
 {
     if (child != null)
     {
         foreach (Server c in _children)
             if (c == child)
                 return;
         child.AddParentServer(this);
         _children.Add(child);
     }
 }