46866 {
46867 for (
int k = i - size;
k <=
i +
size;
k++)
46868 {
46869 for (
int l =
j - size;
l <=
j +
size;
l++)
46870 {
46872 {
46873 continue;
46874 }
46875 Tile tile = Main.tile[
k,
l];
46876 int type = tile.type;
46877 int wall = tile.wall;
46879 {
46880 case 4:
46882 {
46884 {
46885 tile.wall = 81;
46887 NetMessage.SendTileSquare(-1,
k,
l);
46888 }
46890 {
46891 tile.wall = 83;
46893 NetMessage.SendTileSquare(-1,
k,
l);
46894 }
46896 {
46897 tile.wall = 218;
46899 NetMessage.SendTileSquare(-1,
k,
l);
46900 }
46902 {
46903 tile.wall = 221;
46905 NetMessage.SendTileSquare(-1,
k,
l);
46906 }
46908 {
46909 tile.wall = 192;
46911 NetMessage.SendTileSquare(-1,
k,
l);
46912 }
46914 {
46915 tile.wall = 193;
46917 NetMessage.SendTileSquare(-1,
k,
l);
46918 }
46920 {
46921 tile.wall = 194;
46923 NetMessage.SendTileSquare(-1,
k,
l);
46924 }
46926 {
46927 tile.wall = 195;
46929 NetMessage.SendTileSquare(-1,
k,
l);
46930 }
46932 {
46934 tile.type = 203;
46936 NetMessage.SendTileSquare(-1,
k,
l);
46937 }
46939 {
46941 tile.type = 662;
46943 NetMessage.SendTileSquare(-1,
k,
l);
46944 }
46946 {
46948 tile.type = 199;
46950 NetMessage.SendTileSquare(-1,
k,
l);
46951 }
46953 {
46955 tile.type = 200;
46957 NetMessage.SendTileSquare(-1,
k,
l);
46958 }
46960 {
46962 tile.type = 234;
46964 NetMessage.SendTileSquare(-1,
k,
l);
46965 }
46967 {
46968 tile.type = 399;
46970 NetMessage.SendTileSquare(-1,
k,
l);
46971 }
46973 {
46974 tile.type = 401;
46976 NetMessage.SendTileSquare(-1,
k,
l);
46977 }
46979 {
46980 tile.type = 352;
46982 NetMessage.SendTileSquare(-1,
k,
l);
46983 }
46984 }
46985 continue;
46986 case 2:
46988 {
46989 continue;
46990 }
46992 {
46993 tile.wall = 70;
46995 NetMessage.SendTileSquare(-1,
k,
l);
46996 }
46998 {
46999 tile.wall = 28;
47001 NetMessage.SendTileSquare(-1,
k,
l);
47002 }
47004 {
47005 tile.wall = 219;
47007 NetMessage.SendTileSquare(-1,
k,
l);
47008 }
47010 {
47011 tile.wall = 222;
47013 NetMessage.SendTileSquare(-1,
k,
l);
47014 }
47016 {
47017 tile.wall = 200;
47019 NetMessage.SendTileSquare(-1,
k,
l);
47020 }
47022 {
47023 tile.wall = 201;
47025 NetMessage.SendTileSquare(-1,
k,
l);
47026 }
47028 {
47029 tile.wall = 202;
47031 NetMessage.SendTileSquare(-1,
k,
l);
47032 }
47034 {
47035 tile.wall = 203;
47037 NetMessage.SendTileSquare(-1,
k,
l);
47038 }
47040 {
47042 tile.type = 117;
47044 NetMessage.SendTileSquare(-1,
k,
l);
47045 }
47047 {
47049 tile.type = 492;
47051 NetMessage.SendTileSquare(-1,
k,
l);
47052 }
47054 {
47056 tile.type = 109;
47058 NetMessage.SendTileSquare(-1,
k,
l);
47059 }
47061 {
47063 tile.type = 164;
47065 NetMessage.SendTileSquare(-1,
k,
l);
47066 }
47068 {
47070 tile.type = 116;
47072 NetMessage.SendTileSquare(-1,
k,
l);
47073 }
47075 {
47076 tile.type = 402;
47078 NetMessage.SendTileSquare(-1,
k,
l);
47079 }
47081 {
47082 tile.type = 403;
47084 NetMessage.SendTileSquare(-1,
k,
l);
47085 }
47087 {
47089 if (Main.netMode == 1)
47090 {
47091 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47092 }
47093 }
47094 if (
type == 59 && (Main.tile[
k - 1,
l].type == 109 || Main.tile[
k + 1,
l].type == 109 || Main.tile[
k,
l - 1].type == 109 || Main.tile[
k,
l + 1].type == 109))
47095 {
47096 tile.type = 0;
47098 NetMessage.SendTileSquare(-1,
k,
l);
47099 }
47100 continue;
47101 case 1:
47103 {
47105 {
47106 tile.wall = 69;
47108 NetMessage.SendTileSquare(-1,
k,
l);
47109 }
47111 {
47112 tile.type = 661;
47114 NetMessage.SendTileSquare(-1,
k,
l);
47115 }
47117 {
47118 tile.wall = 3;
47120 NetMessage.SendTileSquare(-1,
k,
l);
47121 }
47123 {
47124 tile.wall = 217;
47126 NetMessage.SendTileSquare(-1,
k,
l);
47127 }
47129 {
47130 tile.wall = 220;
47132 NetMessage.SendTileSquare(-1,
k,
l);
47133 }
47135 {
47136 tile.wall = 188;
47138 NetMessage.SendTileSquare(-1,
k,
l);
47139 }
47141 {
47142 tile.wall = 189;
47144 NetMessage.SendTileSquare(-1,
k,
l);
47145 }
47147 {
47148 tile.wall = 190;
47150 NetMessage.SendTileSquare(-1,
k,
l);
47151 }
47153 {
47154 tile.wall = 191;
47156 NetMessage.SendTileSquare(-1,
k,
l);
47157 }
47159 {
47161 tile.type = 25;
47163 NetMessage.SendTileSquare(-1,
k,
l);
47164 }
47166 {
47168 tile.type = 23;
47170 NetMessage.SendTileSquare(-1,
k,
l);
47171 }
47173 {
47175 tile.type = 163;
47177 NetMessage.SendTileSquare(-1,
k,
l);
47178 }
47180 {
47182 tile.type = 112;
47184 NetMessage.SendTileSquare(-1,
k,
l);
47185 }
47187 {
47188 tile.type = 398;
47190 NetMessage.SendTileSquare(-1,
k,
l);
47191 }
47193 {
47194 tile.type = 400;
47196 NetMessage.SendTileSquare(-1,
k,
l);
47197 }
47199 {
47200 tile.type = 32;
47202 NetMessage.SendTileSquare(-1,
k,
l);
47203 }
47204 }
47205 continue;
47206 case 3:
47208 {
47209 tile.wall = 80;
47211 NetMessage.SendTileSquare(-1,
k,
l);
47212 }
47213 if (tile.type == 60)
47214 {
47216 tile.type = 70;
47218 NetMessage.SendTileSquare(-1,
k,
l);
47219 }
47221 {
47223 if (Main.netMode == 1)
47224 {
47225 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47226 }
47227 }
47228 continue;
47229 case 5:
47231 {
47232 continue;
47233 }
47235 {
47236 tile.wall = 187;
47238 NetMessage.SendTileSquare(-1,
k,
l);
47239 }
47241 {
47242 tile.wall = 216;
47244 NetMessage.SendTileSquare(-1,
k,
l);
47245 }
47247 {
47248 int num = 53;
47250 {
47251 num = 397;
47252 }
47254 tile.type = (ushort)num;
47256 NetMessage.SendTileSquare(-1,
k,
l);
47257 }
47259 {
47260 tile.type = 397;
47262 NetMessage.SendTileSquare(-1,
k,
l);
47263 }
47265 {
47267 tile.type = 396;
47269 NetMessage.SendTileSquare(-1,
k,
l);
47270 }
47272 {
47274 if (Main.netMode == 1)
47275 {
47276 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47277 }
47278 }
47279 continue;
47280 case 6:
47282 {
47283 continue;
47284 }
47286 {
47287 tile.wall = 71;
47289 NetMessage.SendTileSquare(-1,
k,
l);
47290 }
47292 {
47293 tile.wall = 40;
47295 NetMessage.SendTileSquare(-1,
k,
l);
47296 }
47298 {
47300 tile.type = 147;
47302 NetMessage.SendTileSquare(-1,
k,
l);
47303 }
47305 {
47307 tile.type = 161;
47309 NetMessage.SendTileSquare(-1,
k,
l);
47310 }
47312 {
47314 if (Main.netMode == 1)
47315 {
47316 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47317 }
47318 }
47319 continue;
47320 case 7:
47322 {
47323 continue;
47324 }
47326 {
47327 tile.wall = 1;
47329 NetMessage.SendTileSquare(-1,
k,
l);
47330 }
47332 {
47333 tile.wall = 2;
47335 NetMessage.SendTileSquare(-1,
k,
l);
47336 }
47338 {
47339 tile.wall = 196;
47341 NetMessage.SendTileSquare(-1,
k,
l);
47342 }
47344 {
47345 tile.wall = 197;
47347 NetMessage.SendTileSquare(-1,
k,
l);
47348 }
47350 {
47351 tile.wall = 198;
47353 NetMessage.SendTileSquare(-1,
k,
l);
47354 }
47356 {
47357 tile.wall = 199;
47359 NetMessage.SendTileSquare(-1,
k,
l);
47360 }
47362 {
47364 tile.type = 1;
47366 NetMessage.SendTileSquare(-1,
k,
l);
47367 }
47369 {
47371 tile.type = 477;
47373 NetMessage.SendTileSquare(-1,
k,
l);
47374 }
47376 {
47378 tile.type = 2;
47380 NetMessage.SendTileSquare(-1,
k,
l);
47381 }
47383 {
47386 {
47388 }
47390 tile.type = (ushort)
num2;
47392 NetMessage.SendTileSquare(-1,
k,
l);
47393 }
47395 {
47397 if (Main.netMode == 1)
47398 {
47399 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47400 }
47401 }
47402 continue;
47403 }
47404 if (tile.wall == 69 || tile.wall == 70 || tile.wall == 81)
47405 {
47406 if ((
double)
l < Main.worldSurface)
47407 {
47409 {
47410 tile.wall = 65;
47411 }
47412 else
47413 {
47414 tile.wall = 63;
47415 }
47416 }
47417 else
47418 {
47419 tile.wall = 64;
47420 }
47422 NetMessage.SendTileSquare(-1,
k,
l);
47423 }
47425 {
47426 tile.wall = 1;
47428 NetMessage.SendTileSquare(-1,
k,
l);
47429 }
47431 {
47432 tile.wall = 61;
47434 NetMessage.SendTileSquare(-1,
k,
l);
47435 }
47437 {
47438 tile.wall = 185;
47440 NetMessage.SendTileSquare(-1,
k,
l);
47441 }
47443 {
47444 tile.wall = 212;
47446 NetMessage.SendTileSquare(-1,
k,
l);
47447 }
47449 {
47450 tile.wall = 213;
47452 NetMessage.SendTileSquare(-1,
k,
l);
47453 }
47455 {
47456 tile.wall = 214;
47458 NetMessage.SendTileSquare(-1,
k,
l);
47459 }
47461 {
47462 tile.wall = 215;
47464 NetMessage.SendTileSquare(-1,
k,
l);
47465 }
47466 else if (tile.wall == 80)
47467 {
47468 if ((
double)
l < Main.worldSurface + 4.0 + (
double)
genRand.Next(3) || (
double)
l > ((
double)Main.maxTilesY + Main.rockLayer) / 2.0 - 3.0 + (
double)
genRand.Next(3))
47469 {
47470 tile.wall = 15;
47472 NetMessage.SendTileSquare(-1,
k,
l);
47473 }
47474 else
47475 {
47476 tile.wall = 64;
47478 NetMessage.SendTileSquare(-1,
k,
l);
47479 }
47480 }
47482 {
47483 tile.wall = 216;
47485 NetMessage.SendTileSquare(-1,
k,
l);
47486 }
47488 {
47489 tile.wall = 187;
47491 NetMessage.SendTileSquare(-1,
k,
l);
47492 }
47493 if (tile.type == 492)
47494 {
47496 tile.type = 477;
47498 NetMessage.SendTileSquare(-1,
k,
l);
47499 }
47501 {
47503 tile.type = 60;
47505 NetMessage.SendTileSquare(-1,
k,
l);
47506 }
47508 {
47510 tile.type = 2;
47512 NetMessage.SendTileSquare(-1,
k,
l);
47513 }
47515 {
47517 tile.type = 1;
47519 NetMessage.SendTileSquare(-1,
k,
l);
47520 }
47522 {
47524 tile.type = 53;
47526 NetMessage.SendTileSquare(-1,
k,
l);
47527 }
47529 {
47530 tile.type = 397;
47532 NetMessage.SendTileSquare(-1,
k,
l);
47533 }
47535 {
47536 tile.type = 396;
47538 NetMessage.SendTileSquare(-1,
k,
l);
47539 }
47541 {
47543 tile.type = 161;
47545 NetMessage.SendTileSquare(-1,
k,
l);
47546 }
47548 {
47550 tile.type = 60;
47552 NetMessage.SendTileSquare(-1,
k,
l);
47553 }
47554 else if (tile.type == 32 || Main.tile[
k,
l].type == 352)
47555 {
47557 if (Main.netMode == 1)
47558 {
47559 NetMessage.SendData(17, -1, -1,
null, 0,
k,
l);
47560 }
47561 }
47562 }
47563 }
47564 }
static double Abs(double value)
static bool[] MushroomGrass
static bool[] HardenedSand
static bool[] JungleGrass
static readonly ushort Count
static bool[] HardenedSand
static bool[] CanBeConvertedToGlowingMushroom
static readonly ushort Count
static bool BlockBelowMakesSandConvertIntoHardenedSand(int i, int j)
static bool TileIsExposedToAir(int x, int y)
static void KillTile(int i, int j, bool fail=false, bool effectOnly=false, bool noItem=false)
static UnifiedRandom genRand
static void SquareWallFrame(int i, int j, bool resetFrame=true)
static bool TryKillingTreesAboveIfTheyWouldBecomeInvalid(int i, int j, int newFloorType)
static bool InWorld(int x, int y, int fluff=0)
static void SquareTileFrame(int i, int j, bool resetFrame=true)