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); } } }
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); }