Nez.Tiled.TiledTilesetTile.processProperties C# (CSharp) Method

processProperties() private method

private processProperties ( ) : void
return void
		internal void processProperties()
		{
			string value;
			if( properties.TryGetValue( "nez:isDestructable", out value ) )
				isDestructable = bool.Parse( value );

			if( properties.TryGetValue( "nez:isSlope", out value ) )
				isSlope = bool.Parse( value );

			if( properties.TryGetValue( "nez:isOneWayPlatform", out value ) )
				isOneWayPlatform = bool.Parse( value );

			if( properties.TryGetValue( "nez:slopeTopLeft", out value ) )
				slopeTopLeft = int.Parse( value );

			if( properties.TryGetValue( "nez:slopeTopRight", out value ) )
				slopeTopRight = int.Parse( value );
		}

Usage Example

Example #1
0
        protected override TiledMap Read(ContentReader reader, TiledMap existingInstance)
        {
            var backgroundColor = reader.ReadColor();
            var renderOrder     = (TiledRenderOrder)Enum.Parse(typeof(TiledRenderOrder), reader.ReadString(), true);
            var tiledMap        = new TiledMap(firstGid: reader.ReadInt32(),
                                               width: reader.ReadInt32(),
                                               height: reader.ReadInt32(),
                                               tileWidth: reader.ReadInt32(),
                                               tileHeight: reader.ReadInt32(),
                                               orientation: (TiledMapOrientation)reader.ReadInt32())
            {
                backgroundColor = backgroundColor,
                renderOrder     = renderOrder
            };

            readCustomProperties(reader, tiledMap.properties);

            var tilesetCount = reader.ReadInt32();

            for (var i = 0; i < tilesetCount; i++)
            {
                var isStandardTileset = reader.ReadBoolean();

                // image collections will have not texture associated with them
                var       textureName = reader.ReadString();
                Texture2D texture     = null;
                if (textureName != string.Empty)
                {
                    var textureAssetName = reader.getRelativeAssetPath(textureName);
                    texture = reader.ContentManager.Load <Texture2D>(textureAssetName);
                }

                var tileset = tiledMap.createTileset(
                    texture: texture,
                    firstId: reader.ReadInt32(),
                    tileWidth: reader.ReadInt32(),
                    tileHeight: reader.ReadInt32(),
                    isStandardTileset: isStandardTileset,
                    spacing: reader.ReadInt32(),
                    margin: reader.ReadInt32());
                readCustomProperties(reader, tileset.properties);

                // tiledset tile array
                var tileCount = reader.ReadInt32();
                for (var j = 0; j < tileCount; j++)
                {
                    var tile = new TiledTilesetTile(reader.ReadInt32(), tiledMap);

                    var tileAnimationFrameCount = reader.ReadInt32();
                    if (tileAnimationFrameCount > 0)
                    {
                        tile.animationFrames = new List <TiledTileAnimationFrame>(tileAnimationFrameCount);
                    }

                    for (var k = 0; k < tileAnimationFrameCount; k++)
                    {
                        tile.animationFrames.Add(new TiledTileAnimationFrame(reader.ReadInt32(), reader.ReadSingle()));
                    }

                    // image source is optional
                    if (reader.ReadBoolean())
                    {
                        var rect = new Rectangle(reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32());
                        ((TiledImageCollectionTileset)tileset).setTileTextureRegion(tileset.firstId + tile.id, rect);
                    }

                    readCustomProperties(reader, tile.properties);

                    // give the TiledTilesetTile a change to process and cache any data required
                    tile.processProperties();
                    tileset.tiles.Add(tile);
                }
            }

            var layerCount = reader.ReadInt32();

            for (var i = 0; i < layerCount; i++)
            {
                var layer = readLayer(reader, tiledMap);
                readCustomProperties(reader, layer.properties);
            }


            var objectGroupCount = reader.ReadInt32();

            for (var i = 0; i < objectGroupCount; i++)
            {
                readObjectGroup(reader, tiledMap);
            }

            return(tiledMap);
        }
All Usage Examples Of Nez.Tiled.TiledTilesetTile::processProperties