コード例 #1
0
 public LobbyManager(ClientMessaging clientMessaging, ConnectedPlayers connectedPlayers)
 {
     _clientMessaging = clientMessaging;
     _clientMessaging.RegisterMessaging((short)NetworkMessages.OpenScene, OpenScene);
     _clientMessaging.RegisterMessaging((short)NetworkMessages.StartGame, StartGameClient);
     SetupPlayers(connectedPlayers);
 }
コード例 #2
0
        public ClientConnectedPlayers(ClientMessaging clientMessaging, string name) : base(name)
        {
            _clientMessaging = clientMessaging;

            _clientMessaging.RegisterMessaging((short)NetworkMessages.GetPlayerFromClient, SendPlayerBack);

            _clientMessaging.RegisterMessaging((short)NetworkMessages.AddPlayerOnClient, AddPlayerClient);
            _clientMessaging.RegisterMessaging((short)NetworkMessages.RemovePlayerOnClient, RemovePlayerClient);
            _clientMessaging.RegisterMessaging((short)NetworkMessages.UpdatePlayerOnClient, UpdatePlayerClient);
        }
コード例 #3
0
        public static User GetUser(string username)
        {
            ClientMessaging clientMessaging = new ClientMessaging("user_queue");
            var             request         = new Dictionary <string, object>
            {
                { "Username", username }
            };
            var response = clientMessaging.Send(request);

            if (!response.ContainsKey("user"))
            {
                clientMessaging.Close();
                throw new Exception(response.ContainsKey("error") ? (string)response["error"] : "Error occured");
            }
            User user = JsonConvert.DeserializeObject <User>((string)response["user"]);

            clientMessaging.Close();
            return(user);
        }
コード例 #4
0
        public static Bill CreateBill(User user, IEnumerable <ItemLine> lines)
        {
            ClientMessaging _clientMessaging = new ClientMessaging("bill_queue");
            List <BillLine> billLines        = new List <BillLine>();

            foreach (ItemLine line in lines)
            {
                var billline = new BillLine(line.Item, line.Quantity);
                billLines.Add(billline);
            }
            var request = new Dictionary <string, object>
            {
                { "user", JsonConvert.SerializeObject(user) },
                { "products", JsonConvert.SerializeObject(billLines) }
            };
            var response = _clientMessaging.Send(request);
            var bill     = JsonConvert.DeserializeObject <Bill>((string)response["bill"]);

            _clientMessaging.Close();
            return(bill);
        }
コード例 #5
0
        public override void OnStartClient(NetworkClient client)
        {
            base.OnStartClient(client);
            Debug.Log("Client Started");
            if (OnClientStarted != null)
            {
                OnClientStarted();
            }

            _clientMessaging = new ClientMessaging(client, this);
            if (!NetworkServer.active)
            {
                Players = new ClientConnectedPlayers(_clientMessaging, _userName);
            }

            if (this.client.connection == null)
            {
                StartCoroutine(WaitConnection());
            }
            else
            {
                Players.SetClient(this.client);
            }
        }
コード例 #6
0
 public StockManager()
 {
     _clientMessaging = new ClientMessaging("stock_queue");
 }