Beispiel #1
0
        public Task GameStarts(byte[] data)
        {
            Packet.GameStarts packet = PacketSerializer.Deserialize <Packet.GameStarts>(data);
            IGameGrain        game   = base.GrainFactory.GetGrain <IGameGrain>(packet.Game);

            return(game.GameStarts(packet.Players));
        }
Beispiel #2
0
        public Task Heartbeat(byte[] data)
        {
            Packet.Heartbeat packet = PacketSerializer.Deserialize <Packet.Heartbeat>(data);
            IGameGrain       game   = base.GrainFactory.GetGrain <IGameGrain>(packet.Game);

            return(game.UpdateGameStatistics(packet.Status));
        }
Beispiel #3
0
        private void SendGameEnds()
        {
            GameEnds data = new GameEnds();

            data.Game = this.Game;
            dispatcher.GameEnds(PacketSerializer.Serialize(data)).Wait();
        }
Beispiel #4
0
        private void SendGameStarts(List <Player> playerList)
        {
            List <long> players = new List <long>();

            foreach (Player player in playerList)
            {
                players.Add(player.Id);
            }

            GameStarts data = new GameStarts(this.Game, players);

            dispatcher.GameStarts(PacketSerializer.Serialize(data)).Wait();
        }
Beispiel #5
0
        private void SendHeartbeat(List <Player> playerList)
        {
            Heartbeat data = new Heartbeat();

            foreach (Player player in playerList)
            {
                Progression progression = new Progression();
                progression.Experience = player.Status.Experience;
                progression.Death      = player.Status.Death;
                progression.Kills      = player.Status.Kills;
                data.Status.AddPlayer(player.Id, progression);
            }
            data.Game = this.Game;
            dispatcher.Heartbeat(PacketSerializer.Serialize(data));
        }