예제 #1
0
        public static void Main(string[] args)
        {
            // create server socket handler
            var server = GameServiceManager.RegisterService(new NetworkServer(27015, 20));

            // create chat system handler
            var chatSystem = GameServiceManager.RegisterService(new ServerChatManager());

            // start logging and network server service
            GameServiceManager.StartServices();


            Thread server_thread = new Thread(UpdateServer);

            server_thread.Start();

            Console.WriteLine("type quit and press enter to exit");

            while (true)
            {
                String input = Console.ReadLine();

                if (input == "exit" || input == "quit")
                {
                    lock (close_server)
                    {
                        close_server = true;
                        break;
                    }
                }
            }

            // shutdown properly and exit
            GameServiceManager.Shutdown();
        }
 public void JoinLocalGame()
 {
     GameServiceManager.RegisterService(new ConfigHandler());
     GameServiceManager.RegisterService(new NetworkClient());
     GameServiceManager.RegisterService(new ChatClient(this, ChannelList, ChannelPrefab, UserList));
     GameServiceManager.StartServices();
 }
        public void HostGame()
        {
            try
            {
                GameServiceManager.RegisterService(new ConfigHandler());
                // create server socket handler
                GameServiceManager.RegisterService(new NetworkServer(27015, 20));
                // create chat system handler
                GameServiceManager.RegisterService(new ServerChatManager());

                GameServiceManager.RegisterService(new NetworkClient());
                GameServiceManager.RegisterService(new ChatClient(this, ChannelList, ChannelPrefab, UserList));
                GameServiceManager.StartServices();
            }
            catch (Exception e)
            {
                Debug.Log(e);
                throw;
            }
        }