private Ja2Data.JsdTile DownloadJsdTile(JsdTile aTileRec, bool aIsHiDefenition) { Ja2Data.JsdTile _tile = new Ja2Data.JsdTile(aIsHiDefenition); int _flags = 0; foreach (JsdTileTileFlag _flag in aTileRec.JsdTileTileFlag) { _flags |= _flag.JsdTileFlags.Mask.Value; } _tile.Flags = (Ja2Data.JsdTile.JsdTileFlags)((byte)_flags); _tile.PosRelToBase = aTileRec.PosRelToBase; _tile.Unused = aTileRec.Unused; _tile.VehicleHitLocation = aTileRec.VehicleHitLocation; _tile.XPosRelToBase = (sbyte)aTileRec.XPosRelToBase; _tile.YPosRelToBase = (sbyte)aTileRec.YPosRelToBase; List <JsdCell> _cells = this.FJsdCells .Where(x => x.JsdTileId == aTileRec.JsdTileId) .ToList(); _cells.Sort(); _tile.Shape = _cells.Select(x => x.Value).ToArray(); return(_tile); }
private JsdTile LoadJsdTile(Ja2Data.JsdTile aTile) { JsdTile _tileRec = new JsdTile(); _tileRec.PosRelToBase = aTile.PosRelToBase; _tileRec.Unused = aTile.Unused; _tileRec.VehicleHitLocation = aTile.VehicleHitLocation; _tileRec.XPosRelToBase = (short)aTile.XPosRelToBase; _tileRec.YPosRelToBase = (short)aTile.YPosRelToBase; _tileRec.DateCreated = DateTime.Now; _tileRec.UserId = this.FUserId; var _flags = this.FTilesFlags.Where(x => (x.Mask & (byte)aTile.Flags) != 0); foreach (Flag _flag in _flags) { JsdTileTileFlag _tileToFlag = new JsdTileTileFlag(); _tileToFlag.JsdTile = _tileRec; _tileToFlag.FlagId = (byte)_flag.Id; this.FJsdTileTileFlag.Add(_tileToFlag); } this.LoadJsdTileCells(aTile.Shape, _tileRec); return(_tileRec); }