Terraria.TileObjectData.GetTileData C# (CSharp) Method

GetTileData() public static method

public static GetTileData ( Tile getTile ) : TileObjectData
getTile Tile
return TileObjectData
        public static TileObjectData GetTileData(Tile getTile)
        {
            if (getTile == null || !getTile.active())
                return (TileObjectData)null;
            int index1 = (int)getTile.type;
            if (index1 < 0 || index1 >= TileObjectData._data.Count)
                throw new ArgumentOutOfRangeException("Function called with a bad tile type");
            TileObjectData tileObjectData1 = TileObjectData._data[index1];
            if (tileObjectData1 == null)
                return (TileObjectData)null;
            int num1 = (int)getTile.frameX / tileObjectData1.CoordinateFullWidth;
            int num2 = (int)getTile.frameY / tileObjectData1.CoordinateFullHeight;
            int num3 = tileObjectData1.StyleWrapLimit;
            if (num3 == 0)
                num3 = 1;
            int num4 = !tileObjectData1.StyleHorizontal ? num1 * num3 + num2 : num2 * num3 + num1;
            int index2 = num4 / tileObjectData1.StyleMultiplier;
            int num5 = num4 % tileObjectData1.StyleMultiplier;
            if (tileObjectData1._subTiles != null && index2 >= 0 && index2 < tileObjectData1.SubTiles.Count)
            {
                TileObjectData tileObjectData2 = tileObjectData1.SubTiles[index2];
                if (tileObjectData2 != null)
                    tileObjectData1 = tileObjectData2;
            }
            if (tileObjectData1._alternates != null)
            {
                for (int index3 = 0; index3 < tileObjectData1.Alternates.Count; ++index3)
                {
                    TileObjectData tileObjectData2 = tileObjectData1.Alternates[index3];
                    if (tileObjectData2 != null && num5 >= tileObjectData2.Style && num5 <= tileObjectData2.Style + tileObjectData2.RandomStyleRange)
                        return tileObjectData2;
                }
            }
            return tileObjectData1;
        }

Same methods

TileObjectData::GetTileData ( int type, int style, int alternate ) : TileObjectData