コード例 #1
0
ファイル: Background.cs プロジェクト: cadahl/defense
 public void SetTile(int x, int y, int tx, int ty)
 {
     _blocks[x + y * _width] = new MapBlock(BlockType.Solid, (ushort)(tx + ty * 16));
 }
コード例 #2
0
ファイル: MapLoader.cs プロジェクト: cadahl/defense
        private void RemoveUnusedTilesetsAndZeroBase(List<int> flattened, List<Tsx> tsxs)
        {
            Blocks = new List<MapBlock>();

            var emptyBlock = new MapBlock(BlockType.Empty, 0);

            Blocks = (	from gid in flattened
                        let tsx = tsxs.Find(t => t.SpawnsOnly && gid >= t.FirstGid && gid <= t.LastGid)
                        let localId = (int)Math.Max (0, ((int)gid - tsx.FirstGid - 1))
                        select gid == 0 ? emptyBlock : new MapBlock(tsx.BlockTypes[localId + 1], (ushort)localId)
                      ).ToList();

            // Output tileset paths
            TilemapNames = (from tsx in tsxs where tsx.SpawnsOnly select tsx.TilemapName).ToList();
        }