public override void RandomUpdate(int i, int j)
{
// 15 is the inverse of the Frequency
if (WorldGen.genRand.Next(15) == 0)
{
// 10 is the Range
Convert(i, j, 10);
}
}
public static void Convert(int i, int j, int size)
{
for (int k = i - size; k <= i + size; k++)
{
for (int l = j - size; l <= j + size; l++)
{
if (WorldGen.InWorld(k, l, 1) && Math.Abs(k - i) + Math.Abs(l - j) < Math.Sqrt(size * size + size * size))
{
int type = (int)Main.tile[k, l].type;
int wall = (int)Main.tile[k, l].wall;
if (Main.tile[k, l].wall == 69 || Main.tile[k, l].wall == 70 || Main.tile[k, l].wall == 81)
{
if ((double)l < Main.worldSurface)
{
if (WorldGen.genRand.Next(10) == 0)
{
Main.tile[k, l].wall = 65;
}
else
{
Main.tile[k, l].wall = 63;
}
}
else
{
Main.tile[k, l].wall = 64;
}
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].wall == 3 || Main.tile[k, l].wall == 28 || Main.tile[k, l].wall == 83)
{
Main.tile[k, l].wall = 1;
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].wall == 80)
{
if ((double)l < Main.worldSurface + 4.0 + (double)WorldGen.genRand.Next(3) || (double)l > ((double)Main.maxTilesY + Main.rockLayer) / 2.0 - 3.0 + (double)WorldGen.genRand.Next(3))
{
Main.tile[k, l].wall = 15;
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 3);
}
else
{
Main.tile[k, l].wall = 64;
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 3);
}
}
else if (WallID.Sets.Conversion.HardenedSand[wall] && wall != 216)
{
Main.tile[k, l].wall = 216;
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (WallID.Sets.Conversion.Sandstone[wall] && wall != 187)
{
Main.tile[k, l].wall = 187;
WorldGen.SquareWallFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
if (Main.tile[k, l].type == 23 || Main.tile[k, l].type == 109 || Main.tile[k, l].type == 199)
{
Main.tile[k, l].type = 2;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 117 || Main.tile[k, l].type == 25 || Main.tile[k, l].type == 203)
{
Main.tile[k, l].type = 1;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 112 || Main.tile[k, l].type == 116 || Main.tile[k, l].type == 234)
{
Main.tile[k, l].type = 53;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 398 || Main.tile[k, l].type == 402 || Main.tile[k, l].type == 399)
{
Main.tile[k, l].type = 397;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 400 || Main.tile[k, l].type == 403 || Main.tile[k, l].type == 401)
{
Main.tile[k, l].type = 396;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 164 || Main.tile[k, l].type == 163 || Main.tile[k, l].type == 200)
{
Main.tile[k, l].type = 161;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 70)
{
Main.tile[k, l].type = 60;
WorldGen.SquareTileFrame(k, l, true);
NetMessage.SendTileSquare(-1, k, l, 1);
}
else if (Main.tile[k, l].type == 32 || Main.tile[k, l].type == 352)
{
WorldGen.KillTile(k, l, false, false, false);
if (Main.netMode == 1)
{
NetMessage.SendData(17, -1, -1, "", 0, (float)k, (float)l, 0f, 0, 0, 0);
}
}
}
}
}
}