Пример #1
0
        public void Read(BytesReader buffer)
        {
            id     = buffer.ReadInt32();
            type   = buffer.ReadInt32();
            localX = buffer.ReadFloat();
            localY = buffer.ReadFloat();
            isRoot = buffer.ReadInt32();

            grids.Clear();
            int numOfGrids = buffer.ReadInt32();

            for (int i = 0; i < MaxGrid; i++)
            {
                int col = buffer.ReadInt32();
                int row = buffer.ReadInt32();
                if (i < numOfGrids)
                {
                    grids.Add(new GridPosition(col, row));
                }
            }

            connections.Clear();
            int numOfConnection = buffer.ReadInt32();

            for (int i = 0; i < MaxConnection; i++)
            {
                int n = buffer.ReadInt32();
                if (i < numOfConnection)
                {
                    connections.Add(n);
                }
            }
        }
Пример #2
0
        private bool ReadHeader(BytesReader buffer)
        {
            uint flag = buffer.ReadUInt32();

            if (flag != HeaderFlag)
            {
                return(false);
            }

            mapType    = (ELevelMapType)buffer.ReadInt32();
            minCol     = buffer.ReadInt32();
            maxBallId  = buffer.ReadInt32();
            ballRadius = buffer.ReadFloat();

            return(true);
        }