52772 {
52773
52774
52775
52776
52777
52778
52779
52780
52781
52782
52783
52784
52785
52787 Point
result =
default(Point);
52790 {
52792 }
52793 if ((Main.tile[x,
num].active() && Main.tile[x,
num].type != 71) || Main.tile[x,
num].liquid == 0 || Main.tile[x,
num].liquidType() != 0)
52794 {
52796 }
52797 while (Main.tile[x,
num].liquid > 0 &&
num > 50)
52798 {
52800 }
52802 if (Main.tile[x,
num].active() || Main.tile[x,
num - 1].active() || Main.tile[x,
num].liquid == 0 || Main.tile[x,
num].liquidType() != 0)
52803 {
52805 }
52806 if (Main.tile[x,
num].wall != 0 && Main.tile[x,
num].wall != 80 && Main.tile[x,
num].wall != 81 && Main.tile[x,
num].wall != 69 && (Main.tile[x,
num].wall < 63 || Main.tile[x,
num].wall > 68))
52807 {
52809 }
52812 for (
int i = x -
num2; i <= x +
num2; i++)
52813 {
52815 {
52816 if (Main.tile[i,
k].active() && Main.tile[i,
k].type == 519)
52817 {
52819 break;
52820 }
52821 }
52822 }
52824 {
52826 }
52828 for (
l =
num; (!Main.tile[x,
l].active() || !Main.tileSolid[Main.tile[x,
l].type] || Main.tileSolidTop[Main.tile[x,
l].type]) &&
l < Main.maxTilesY - 50;
l++)
52829 {
52830 if (Main.tile[x,
l].active() && Main.tile[x,
l].type != 71)
52831 {
52833 }
52834 }
52837 {
52839 }
52841 {
52843 }
52844 int type = Main.tile[x,
l].type;
52845 if (!Main.tile[x,
l].nactive())
52846 {
52848 }
52850 switch (type)
52851 {
52852 case 2:
52853 case 477:
52855 break;
52856 case 53:
52858 {
52860 }
52862 break;
52863 case 199:
52864 case 234:
52865 case 662:
52867 break;
52868 case 23:
52869 case 112:
52870 case 661:
52872 break;
52873 case 70:
52875 break;
52876 }
52878 {
52880 }
52881 if (Main.tile[x,
l].topSlope() &&
gen &&
genRand.Next(3) != 0)
52882 {
52883 Main.tile[x,
l].slope(0);
52884 }
52885 else if (Main.tile[x,
l].topSlope() || Main.tile[x,
l].halfBrick())
52886 {
52888 }
52890 Main.tile[x,
num].active(active:
true);
52891 Main.tile[x,
num].type = 519;
52892 Main.tile[x,
num].frameX = 0;
52893 Main.tile[x,
num].frameY = (short)
num5;
52894 Main.tile[x,
num].halfBrick(halfBrick:
false);
52895 Main.tile[x,
num].slope(0);
52896 Main.tile[x,
num].CopyPaintAndCoating(Main.tile[x,
num + 1]);
52898 return new Point(x,
num);
52899 }
static UnifiedRandom genRand
static readonly int beachDistance
static void SquareTileFrame(int i, int j, bool resetFrame=true)
static int catTailDistance