Ejemplo n.º 1
0
        public override void Execute(TileManager tileManager, Tile tile, TilePosition pos)
        {
            pos += delta;

            if (tileManager.IsValidTile(pos))
            {
                if (value == true)
                {
                    tileManager.SetTileDynamic(pos, value, gravity, timeout);
                }
                else if (tileManager.GetTileDynamic(pos))
                {
                    //Call DynamicTile.MakeStatic because if the tile is inside it's update cycle
                    //when this rule is executed, then the array of components would become invalid
                    DynamicTile dynamicTile = tileManager.GetDynamicTile(pos);

                    dynamicTile.MakeStatic();
                }
            }
        }