Ejemplo n.º 1
0
 public StateTileElement()
 {
     _state   = Enumeration.StateTile.normal;
     Priority = Enumeration.PriorityState.Normal;
     Reverse  = Enumeration.SequenceReverse.Normal;
     OffSet   = Vector2.Zero;
 }
Ejemplo n.º 2
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1)
 {
     _state   = state;
     Priority = priority__1;
     Reverse  = Enumeration.SequenceReverse.Normal;
     OffSet   = Vector2.Zero;
 }
 public StateTileElement()
 {
     _state = Enumeration.StateTile.normal;
     Priority = Enumeration.PriorityState.Normal;
     Reverse = Enumeration.SequenceReverse.Normal;
     OffSet = Vector2.Zero;
 }
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, Enumeration.SequenceReverse reverse__2)
 {
     _state = state;
     Priority = priority__1;
     Reverse = reverse__2;
     OffSet = Vector2.Zero;
 }
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1)
 {
     _state = state;
     Priority = priority__1;
     Reverse = Enumeration.SequenceReverse.Normal;
     OffSet = Vector2.Zero;
 }
Ejemplo n.º 6
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, Enumeration.SequenceReverse reverse__2)
 {
     _state   = state;
     Priority = priority__1;
     Reverse  = reverse__2;
     OffSet   = Vector2.Zero;
 }
Ejemplo n.º 7
0
 public StateTileElement(Enumeration.StateTile state, bool iftrue__1)
 {
     _state   = state;
     Priority = Enumeration.PriorityState.Normal;
     Reverse  = Enumeration.SequenceReverse.Normal;
     OffSet   = Vector2.Zero;
     IfTrue   = iftrue__1;
 }
Ejemplo n.º 8
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, System.Nullable <bool> stoppable__2)
 {
     _state    = state;
     Priority  = priority__1;
     Stoppable = stoppable__2;
     Reverse   = Enumeration.SequenceReverse.Normal;
     OffSet    = Vector2.Zero;
 }
Ejemplo n.º 9
0
        public void SubsTileState(Vector2 position, Enumeration.StateTile state)
        {
            int x = (int)position.X;
            int y = (int)position.Y;

            tiles[x, y].tileState.Value().state = state;
            tiles[x, y].tileAnimation.PlayAnimation(tiles[x, y].TileSequence, tiles[x, y].tileState);
        }
Ejemplo n.º 10
0
 public StateTileElement(Enumeration.StateTile state, bool iftrue__1)
 {
     _state = state;
     Priority = Enumeration.PriorityState.Normal;
     Reverse = Enumeration.SequenceReverse.Normal;
     OffSet = Vector2.Zero;
     IfTrue = iftrue__1;
 }
Ejemplo n.º 11
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, System.Nullable<bool> stoppable__2, Enumeration.SequenceReverse reverse__3, Vector2 offSet__4)
 {
     _state = state;
     Priority = priority__1;
     Stoppable = stoppable__2;
     Reverse = reverse__3;
     OffSet = offSet__4;
 }
Ejemplo n.º 12
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, System.Nullable<bool> stoppable__2)
 {
     _state = state;
     Priority = priority__1;
     Stoppable = stoppable__2;
     Reverse = Enumeration.SequenceReverse.Normal;
     OffSet = Vector2.Zero;
 }
Ejemplo n.º 13
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority, bool?stoppable, Enumeration.SequenceReverse reverse, Vector2 offSet)
 {
     _state    = state;
     Priority  = priority;
     Stoppable = stoppable;
     Reverse   = reverse;
     OffSet    = offSet;
 }
Ejemplo n.º 14
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority, bool?stoppable)
 {
     _state    = state;
     Priority  = priority;
     Stoppable = stoppable;
     Reverse   = Enumeration.SequenceReverse.Normal;
     OffSet    = Vector2.Zero;
 }
Ejemplo n.º 15
0
        public void SubsTileState(Vector2 position, Enumeration.StateTile state)
        {
            int x = Convert.ToInt32(Math.Truncate(position.X));
            int y = Convert.ToInt32(Math.Truncate(position.Y));

            tiles[x, y].tileState.Value().state = state;
            tiles[x, y].tileAnimation.PlayAnimation(tiles[x, y].TileSequence, tiles[x, y].tileState.Value());
        }
Ejemplo n.º 16
0
 public StateTileElement(Enumeration.StateTile state, Enumeration.PriorityState priority__1, System.Nullable <bool> stoppable__2, Enumeration.SequenceReverse reverse__3, Vector2 offSet__4)
 {
     _state    = state;
     Priority  = priority__1;
     Stoppable = stoppable__2;
     Reverse   = reverse__3;
     OffSet    = offSet__4;
 }
Ejemplo n.º 17
0
        public void Add(Enumeration.StateTile state, Enumeration.PriorityState priority, System.Nullable <bool> stoppable, Vector2 offSet)
        {
            if (data.Count == iSize)
            {
                data.Dequeue();
            }

            data.Enqueue(new StateTileElement(state, priority, stoppable, Enumeration.SequenceReverse.Normal, offSet));
        }
Ejemplo n.º 18
0
        public void Add(Enumeration.StateTile state, Enumeration.PriorityState priority, bool?stoppable)
        {
            if (data.Count == iSize)
            {
                data.Dequeue();
            }

            data.Enqueue(new StateTileElement(state, priority, stoppable, Enumeration.SequenceReverse.Normal));
        }
Ejemplo n.º 19
0
        public Tile(Room room, Enumeration.TileType tileType, Enumeration.StateTile state, Enumeration.Items eitem, Enumeration.TileType NextTileType)
        {
            tileAnimation = new AnimationSequence(this);
            this.room     = room;
            nextTileType  = NextTileType;

            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(tileSequence.GetType());

            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PoP.CONFIG_PATH_CONTENT + PoP.CONFIG_PATH_SEQUENCES + tileType.ToString() + "_sequence.xml");

            //TextReader txtReader = File.OpenText(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString() + "_sequence.xml");


            tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in tileSequence)
            {
                s.Initialize();
            }

            //Search in the sequence the right type
            Sequence result = tileSequence.Find(delegate(Sequence s)
            {
                return(s.name.ToUpper() == state.ToString().ToUpper());
            });

            if (result != null)
            {
                //AMF to be adjust....
                result.frames[0].SetTexture((Texture2D)Maze.Content[PoP.CONFIG_TILES + result.frames[0].value]);
                //result.frames[0].SetTexture(Content.Load<Texture2D>(PrinceOfPersiaGame.CONFIG_TILES + result.frames[0].value));

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            StateTileElement stateTileElement = new StateTileElement();

            stateTileElement.state = state;
            tileState.Add(stateTileElement);
            tileAnimation.PlayAnimation(tileSequence, tileState);

            //load item
            switch (eitem)
            {
            case Enumeration.Items.flask:
                item = new Flask();
                break;

            case Enumeration.Items.sword:
                item = new Sword();
                break;
            }
        }
Ejemplo n.º 20
0
        public void Add(Enumeration.StateTile state, Enumeration.PriorityState priority, Enumeration.SequenceReverse reverse)
        {
            if (data.Count == iSize)
            {
                data.Dequeue();
            }

            data.Enqueue(new StateTileElement(state, priority, reverse));
        }
Ejemplo n.º 21
0
 public Enumeration.StateTile Next(Enumeration.StateTile state)
 {
     switch (state)
     {
     //case Enumeration.StateTile.freefall:
     //    return Enumeration.StateTile.crouch;
     default:
         return(Enumeration.StateTile.normal);
     }
 }
Ejemplo n.º 22
0
        public void Add(Enumeration.StateTile state, bool ifTrue)
        {
            //if (Value().state == state)
            //    return;

            if (data.Count == iSize)
            {
                data.Dequeue();
            }

            data.Enqueue(new StateTileElement(state, ifTrue));
        }
Ejemplo n.º 23
0
        private Tile LoadTile(Enumeration.TileType tiletype, Enumeration.StateTile state, int switchButton, Enumeration.Items item, Enumeration.TileType nextTileType, float timeOpen)
        {
            switch (tiletype)
            {
            case Enumeration.TileType.spikes:
                return(new Spikes(this, content, tiletype, state, nextTileType));



            case Enumeration.TileType.lava:
                return(new Lava(this, content, tiletype, state, nextTileType));



            case Enumeration.TileType.pressplate:
                return(new PressPlate(this, content, tiletype, state, switchButton, nextTileType));


            case Enumeration.TileType.closeplate:
                return(new ClosePlate(this, content, tiletype, state, switchButton, nextTileType));

            case Enumeration.TileType.gate:
                return(new Gate(this, content, tiletype, state, switchButton, nextTileType, timeOpen));

            case Enumeration.TileType.mirror:
                return(new Mirror(this, content, tiletype, state, switchButton, nextTileType, timeOpen));

            case Enumeration.TileType.loose:
                return(new Loose(this, content, tiletype, state, nextTileType));



            case Enumeration.TileType.block:
                return(new Block(this, content, tiletype, state, nextTileType));



            case Enumeration.TileType.chomper:
                return(new Chomper(this, content, tiletype, state, nextTileType));

            case Enumeration.TileType.exit:
                return(new Exit(this, content, tiletype, state, 0, nextTileType));



            default:

                return(new Tile(this, content, tiletype, state, item, nextTileType));
            }
        }
Ejemplo n.º 24
0
        public Gate(Room room, Enumeration.TileType tileType, Enumeration.StateTile state, int switchButton, Enumeration.TileType NextTileType)
        {
            collision    = Enumeration.TileCollision.Platform;
            base.room    = room;
            nextTileType = NextTileType;


            switchButtons.Add(switchButton);
            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(tileSequence.GetType());
            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PoP.CONFIG_PATH_CONTENT + PoP.CONFIG_PATH_SEQUENCES + tileType.ToString() + "_sequence.xml");

            //TextReader txtReader = File.OpenText(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString() + "_sequence.xml");

            tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in tileSequence)
            {
                s.Initialize();
            }

            if (state == Enumeration.StateTile.normal)
            {
                state = Enumeration.StateTile.closed;
            }

            //Search in the sequence the right type
            Sequence result = tileSequence.Find(delegate(Sequence s)
            {
                return(s.name.ToUpper() == state.ToString().ToUpper());
            });

            if (result != null)
            {
                //AMF to be adjust....
                result.frames[0].SetTexture((Texture2D)Maze.Content[PoP.CONFIG_TILES + result.frames[0].value]);
                //result.frames[0].SetTexture(Content.Load<Texture2D>(PrinceOfPersiaGame.CONFIG_TILES + result.frames[0].value));

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            tileState.Value().state = state;
            tileAnimation.PlayAnimation(tileSequence, tileState);
        }
Ejemplo n.º 25
0
        private Tile LoadTile(Enumeration.TileType tiletype, Enumeration.StateTile state, int switchButton, Enumeration.Items item, Enumeration.TileType nextTileType)
        {
            switch (tiletype)
            {
            case Enumeration.TileType.spikes:
                return(new Spikes(this, tiletype, state, nextTileType));

                break;

            case Enumeration.TileType.pressplate:
                return(new PressPlate(this, tiletype, state, switchButton, nextTileType));

                break;

            case Enumeration.TileType.gate:
                return(new Gate(this, tiletype, state, switchButton, nextTileType));

                break;

            case Enumeration.TileType.loose:
                return(new Loose(this, tiletype, state, nextTileType));

                break;

            case Enumeration.TileType.block:
                return(new Block(this, tiletype, state, nextTileType));

                break;

            case Enumeration.TileType.exit:
                return(new Exit(this, tiletype, state, switchButton, nextTileType));

                break;

            case Enumeration.TileType.chomper:
                return(new Chomper(this, tiletype, state, nextTileType));

                break;

            default:
                return(new Tile(this, tiletype, state, item, nextTileType));
            }
        }
Ejemplo n.º 26
0
        public Chomper(Room room, Enumeration.TileType tileType, Enumeration.StateTile state, Enumeration.TileType NextTileType)
        {
            base.room = room;

            nextTileType = NextTileType;
            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(tileSequence.GetType());

            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PoP.CONFIG_PATH_CONTENT + PoP.CONFIG_PATH_SEQUENCES + tileType.ToString() + "_sequence.xml");

            tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in tileSequence)
            {
                s.Initialize();
            }

            //Search in the sequence the right type
            Sequence result = tileSequence.Find(delegate(Sequence s)
            {
                return(s.name.ToUpper() == state.ToString().ToUpper());
            });

            if (result != null)
            {
                result.frames[0].SetTexture((Texture2D)Maze.Content[PoP.CONFIG_TILES + result.frames[0].value]);

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            tileState.Value().state = state;
            tileAnimation.PlayAnimation(tileSequence, tileState);
        }
Ejemplo n.º 27
0
        public Mirror(RoomNew room, ContentManager Content, Enumeration.TileType tileType, Enumeration.StateTile state, int switchButton, Enumeration.TileType NextTileType__1, float TimeOpen__2)
        {
            collision    = Enumeration.TileCollision.Platform;
            base.room    = room;
            nextTileType = NextTileType__1;
            timeOpen     = TimeOpen__2;

            this.switchButton = switchButton;
            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(tileSequence.GetType());
            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString().ToUpper() + "_sequence.xml");

            //TextReader txtReader = File.OpenText(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString().ToUpper() + "_sequence.xml");

            tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in tileSequence)
            {
                s.Initialize(Content);
            }

            if (state == Enumeration.StateTile.normal)
            {
                state = Enumeration.StateTile.closed;
            }

            //Search in the sequence the right type
            Sequence result = tileSequence.Find((Sequence s) => s.name == state.ToString().ToUpper());

            if (result != null)
            {
                //AMF to be adjust....
                result.frames[0].SetTexture(Content.Load <Texture2D>(PrinceOfPersiaGame.CONFIG_TILES[0] + result.frames[0].value));

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            tileState.Value().state = state;
            tileAnimation.PlayAnimation(tileSequence, tileState.Value());
        }
Ejemplo n.º 28
0
        public void LoadTilesApoplexy(Apoplexy.level Apoplexylevel, Apoplexy.tile[] ApoplexyTiles, Apoplexy.guard[] Apoplexyguards, Apoplexy.@event[] Apoplexyevents)
        {
            int ix           = 0;
            int switchButton = 0;

            tiles = new Tile[10, 3]; //30 fix...sorry
            Enumeration.Items item = Enumeration.Items.none;
            for (int x = 0; x < 10; x++)
            {
                for (int y = 0; y < 3; y++)
                {
                    ix = 10 * y + x;

                    Enumeration.TileType  nextTileType = Enumeration.TileType.space;
                    Enumeration.TileType  myTileType   = Enumeration.TileType.space;
                    Enumeration.StateTile myStateTile  = Enumeration.StateTile.normal;
                    //convert TileType to
                    myTileType   = Utils.ParseTileType(ApoplexyTiles[ix].element);
                    myStateTile  = Utils.ParseStateType(ref myTileType, ApoplexyTiles[ix].modifier);
                    switchButton = Utils.ParseSwitchButton(myTileType, ApoplexyTiles[ix].modifier);


                    if (myTileType == Enumeration.TileType.flask)
                    {
                        myTileType  = Enumeration.TileType.floor;
                        myStateTile = Enumeration.StateTile.normal;
                        item        = Enumeration.Items.flask;
                    }
                    else if (myTileType == Enumeration.TileType.sword)
                    {
                        myTileType  = Enumeration.TileType.floor;
                        myStateTile = Enumeration.StateTile.normal;
                        item        = Enumeration.Items.sword;
                    }
                    else
                    {
                        item = Enumeration.Items.none;
                    }


                    tiles[x, y] = LoadTile(myTileType, myStateTile, switchButton, item, nextTileType);

                    Vector2 v = new Vector2(x * Tile.WIDTH, (y * Tile.HEIGHT) - Tile.HEIGHT_VISIBLE);

                    tiles[x, y].Position   = new Position(Vector2.Zero, new Vector2(Tile.WIDTH, Tile.REALHEIGHT));
                    tiles[x, y].Position.X = v.X;
                    tiles[x, y].Position.Y = v.Y;
                }
            }
            //LOAD GUARD
            foreach (Apoplexy.guard g in Apoplexyguards)
            {
                if (g.location != "0")
                {
                    int iLocation = int.Parse(g.location);
                    int xGuard    = iLocation % 10 - 1;
                    int yGuard    = iLocation / 10 + 1;

                    xGuard = xGuard * Tile.WIDTH + Player.SPRITE_SIZE_X;
                    yGuard = (yGuard * (Tile.HEIGHT)) - Sprite.SPRITE_SIZE_Y + Room.TOP_BORDER;
                    Guard guardSprite = new Guard(this, new Vector2(xGuard, yGuard), maze.graphicsDevice, SpriteEffects.None); //to be fixed direction
                    level.sprites.Add(guardSprite);
                }
            }
        }
Ejemplo n.º 29
0
        public static Enumeration.StateTile ParseStateType(ref Enumeration.TileType tileType, string modifier)
        {
            int iModifier = int.Parse(modifier);

            Enumeration.StateTile stateTile = Enumeration.StateTile.normal;

            switch (tileType)
            {
            case Enumeration.TileType.space:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.normal;
                }
                if (iModifier >= 1 & iModifier <= 2)
                {
                    //stateTile = Enumeration.StateTile.back_wall; //to be implement TEXTURE...
                    stateTile = Enumeration.StateTile.normal;
                }
                if (iModifier == 3)
                {
                    //stateTile = Enumeration.StateTile.window;
                    stateTile = Enumeration.StateTile.normal;     //to be implement TEXTURE...
                }
                break;

            case Enumeration.TileType.floor:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.normal;
                }
                if (iModifier >= 1 & iModifier <= 3)
                {
                    //stateTile = Enumeration.StateTile.back_wall;
                    stateTile = Enumeration.StateTile.normal;
                }
                break;

            case Enumeration.TileType.spikes:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.normal;
                }
                if (iModifier == 9)
                {
                    stateTile = Enumeration.StateTile.stuck;
                }
                break;

            case Enumeration.TileType.block:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.normal;
                }
                if (iModifier == 1)
                {
                    //stateTile = Enumeration.StateTile.palace_pattern;//to be implement TEXTURE...
                    stateTile = Enumeration.StateTile.normal;
                }

                break;

            case Enumeration.TileType.flask:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.empty;
                }

                break;

            case Enumeration.TileType.exit:
                if (iModifier == 0 | iModifier == 255)
                {
                    stateTile = Enumeration.StateTile.exit;
                }
                break;

            case Enumeration.TileType.exit2:
                if (iModifier == 0 | iModifier == 255)
                {
                    tileType = Enumeration.TileType.exit;
                }
                stateTile = Enumeration.StateTile.exit2;
                break;

            case Enumeration.TileType.pressplate:
                stateTile = Enumeration.StateTile.normal;
                break;

            case Enumeration.TileType.upressplate:
                stateTile = Enumeration.StateTile.dpressplate;

                break;

            default:
                break;
            }

            return(stateTile);
        }
Ejemplo n.º 30
0
        public Chomper(RoomNew room, ContentManager Content, Enumeration.TileType tileType, Enumeration.StateTile state, Enumeration.TileType NextTileType__1)
        {
            base.room = room;

            nextTileType = NextTileType__1;
            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(tileSequence.GetType());

            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString().ToUpper() + "_sequence.xml");

            tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in tileSequence)
            {
                s.Initialize(Content);
            }

            //Search in the sequence the right type
            //Sequence result = tileSequence.Find((Sequence s) => s.name.ToUpper() == state.ToString().ToUpper());
            Sequence result = tileSequence.Find((Sequence s) => s.name == state.ToString().ToUpper());

            if (result != null)
            {
                result.frames[0].SetTexture(Content.Load <Texture2D>(PrinceOfPersiaGame.CONFIG_TILES[0] + result.frames[0].value));

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            tileState.Value().state = state;
            tileAnimation.PlayAnimation(tileSequence, tileState.Value());
        }
Ejemplo n.º 31
0
        public Tile(RoomNew room, ContentManager Content, Enumeration.TileType tileType, Enumeration.StateTile state, Enumeration.Items eitem, Enumeration.TileType NextTileType__1)
        {
            this.room    = room;
            nextTileType = NextTileType__1;

            System.Xml.Serialization.XmlSerializer ax = new System.Xml.Serialization.XmlSerializer(m_tileSequence.GetType());

            Stream txtReader = Microsoft.Xna.Framework.TitleContainer.OpenStream(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString().ToUpper() + "_sequence.xml");

            //TextReader txtReader = File.OpenText(PrinceOfPersiaGame.CONFIG_PATH_CONTENT + PrinceOfPersiaGame.CONFIG_PATH_SEQUENCES + tileType.ToString().ToUpper() + "_sequence.xml");


            m_tileSequence = (List <Sequence>)ax.Deserialize(txtReader);

            foreach (Sequence s in m_tileSequence)
            {
                s.Initialize(Content);
            }

            //Search in the sequence the right type
            Sequence result = m_tileSequence.Find((Sequence s) => s.name == state.ToString().ToUpper());

            if (result != null)
            {
                //AMF to be adjust....
                result.frames[0].SetTexture(Content.Load <Texture2D>(PrinceOfPersiaGame.CONFIG_TILES[0] + result.frames[0].value));

                collision = result.collision;
                Texture   = result.frames[0].texture;
            }
            Type = tileType;


            //change statetile element
            StateTileElement stateTileElement = new StateTileElement();

            stateTileElement.state = state;
            tileState.Add(stateTileElement);
            tileAnimation.PlayAnimation(m_tileSequence, tileState.Value());

            //load item
            switch (eitem)
            {
            case Enumeration.Items.flask:
                item = new Flask(Content);
                break;     // TODO: might not be correct. Was : Exit Select

            case Enumeration.Items.flaskbig:
                item = new FlaskBig(Content);
                break;     // TODO: might not be correct. Was : Exit Select

            case Enumeration.Items.sword:
                item = new Sword(Content);
                break;     // TODO: might not be correct. Was : Exit Select
            }
        }