示例#1
0
        public ServerBattleDataMsg OnWorldBattleData(MyPacket packet)
        {
            m_receiveStream.ResetRead(packet);
            ServerBattleDataMsg msg = VRage.Serialization.MySerializer.CreateAndRead <ServerBattleDataMsg>(m_receiveStream);

            return(msg);
        }
        void OnServerBattleData(ref ServerBattleDataMsg msg)
        {
            Battle = true;

            m_worldName = msg.WorldName;
            m_gameMode = msg.GameMode;
            m_hostName = msg.HostName;
            m_worldSize = msg.WorldSize;
            m_appVersion = msg.AppVersion;
            m_membersLimit = msg.MembersLimit;
            m_dataHash = msg.DataHash;

            m_battleData.LoadData(msg.BattleData);
        }
        protected override void SendServerData()
        {
            ServerBattleDataMsg msg = new ServerBattleDataMsg();
            msg.WorldName = m_worldName;
            msg.GameMode = m_gameMode;
            msg.HostName = m_hostName;
            msg.WorldSize = m_worldSize;
            msg.AppVersion = m_appVersion;
            msg.MembersLimit = m_membersLimit;
            msg.DataHash = m_dataHash;
            msg.BattleData = m_battleData.SaveData();

            ReplicationLayer.SendWorldBattleData(ref msg);
        }