Exemple #1
0
        public void BattleStartHandler(NetConnection connection, object data)
        {
            PlayerInitDatas inits = GCli.Deserialize <PlayerInitDatas>((byte[])data);

            GCli.ClearPacketHandler();
            room.SetActive(false);
            menu.SetActive(false);

            GCli.SetPacketHandler(MessageType.Snapshot, DataType.Bytes, SnapshotHandler);
            GCli.SetPacketHandler(MessageType.ReplyWon, DataType.Int32, ReplyWonHandler);
            GCli.SetPacketHandler(MessageType.BattleEnd, DataType.Null, BattleEndHandler);
            GCli.SetPacketHandler(MessageType.ReplySetBlock, DataType.Bytes, ReplySetBlockHandler);
            GCli.SetPacketHandler(MessageType.ReplyFire, DataType.Int32, ReplyFire);

            foreach (PlayerInitData init in inits.datas)
            {
                if (init.sync.userid == Players.userid)
                {
                    World.SetCoreFaction(init.faction);

                    Players.AddPlayer(init);
                }
            }
            foreach (PlayerInitData init in inits.datas)
            {
                if (init.sync.userid != Players.userid)
                {
                    Players.AddOtherPlayer(init);
                }
            }
        }