72592 {
72594 {
72596 return;
72597 }
72599 bool flag = (double)Main.windSpeedTarget < -0.4 || (double)Main.windSpeedTarget > 0.4;
72601 bool flag2 =
false;
72602 bool flag3 =
false;
72603 int num = 0;
72607 for (
int i = 0;
i < 255;
i++)
72608 {
72609 if (Main.player[i].active)
72610 {
72612 }
72613 }
72615 for (
int j = 0;
j < 200;
j++)
72616 {
72617 if (Main.npc[
j].active)
72618 {
72619 switch (Main.npc[
j].type)
72620 {
72621 case 315:
72622 case 325:
72623 case 327:
72624 case 328:
72625 case 344:
72626 case 345:
72627 case 346:
72628 num5 += Main.npc[
j].npcSlots;
72629 break;
72630 }
72631 }
72632 }
72634 for (
int k = 0;
k < 255;
k++)
72635 {
72636 if (!Main.player[
k].active || Main.player[
k].dead)
72637 {
72638 continue;
72639 }
72642 {
72643 continue;
72644 }
72645 if (Main.slimeRain)
72646 {
72648 }
72649 bool flag4 =
false;
72650 bool flag5 =
false;
72651 bool flag6 =
false;
72652 bool flag7 =
false;
72653 bool flag8 =
false;
72654 bool flag9 =
false;
72661 if (Main.player[
k].active && Main.invasionType > 0 && Main.invasionDelay == 0 && Main.invasionSize > 0 && ((
double)Main.player[
k].position.Y < Main.worldSurface * 16.0 + (
double)
sHeight || Main.remixWorld))
72662 {
72664 if ((
double)Main.player[
k].position.X > Main.invasionX * 16.0 - (
double)
num7 && (
double)Main.player[
k].position.X < Main.invasionX * 16.0 + (
double)
num7)
72665 {
72667 }
72668 else if (Main.invasionX >= (double)(Main.maxTilesX / 2 - 5) && Main.invasionX <= (double)(Main.maxTilesX / 2 + 5))
72669 {
72670 for (
int l = 0;
l < 200;
l++)
72671 {
72672 if (Main.npc[
l].townNPC &&
Math.
Abs(Main.player[
k].position.X - Main.npc[
l].Center.X) < (
float)
num7)
72673 {
72674 if (Main.rand.Next(3) != 0)
72675 {
72677 }
72678 break;
72679 }
72680 }
72681 }
72682 }
72683 if (Main.player[
k].ZoneTowerSolar || Main.player[
k].ZoneTowerNebula || Main.player[
k].ZoneTowerVortex || Main.player[
k].ZoneTowerStardust)
72684 {
72686 }
72687 int num8 = (int)(Main.player[
k].position.X + (
float)(Main.player[
k].width / 2)) / 16;
72688 int num9 = (int)(Main.player[
k].position.Y + (
float)(Main.player[
k].height / 2)) / 16;
72689 if (Main.wallHouse[Main.tile[
num8,
num9].wall])
72690 {
72692 }
72693 if (Main.tile[
num8,
num9].wall == 87)
72694 {
72696 }
72700 if (Main.hardMode)
72701 {
72704 }
72705 if (Main.player[
k].position.Y > (
float)(Main.UnderworldLayer * 16))
72706 {
72708 }
72709 else if ((
double)Main.player[
k].position.Y > Main.rockLayer * 16.0 + (double)
sHeight)
72710 {
72711 if (Main.remixWorld)
72712 {
72713 if (Main.hardMode)
72714 {
72717 }
72718 else
72719 {
72722 }
72723 }
72724 else
72725 {
72728 }
72729 }
72730 else if ((
double)Main.player[
k].position.Y > Main.worldSurface * 16.0 + (double)
sHeight)
72731 {
72732 if (Main.remixWorld)
72733 {
72736 }
72737 else if (Main.hardMode)
72738 {
72741 }
72742 else
72743 {
72746 }
72747 }
72748 else if (Main.remixWorld)
72749 {
72750 if (!Main.dayTime)
72751 {
72754 }
72755 }
72756 else if (!Main.dayTime)
72757 {
72760 if (Main.bloodMoon)
72761 {
72764 }
72765 if ((Main.pumpkinMoon || Main.snowMoon) && (double)Main.player[
k].position.Y < Main.worldSurface * 16.0)
72766 {
72769 }
72770 }
72771 else if (Main.dayTime && Main.eclipse)
72772 {
72775 }
72776 if (Main.remixWorld)
72777 {
72778 if (!Main.dayTime)
72779 {
72780 if (Main.bloodMoon)
72781 {
72784 if ((
double)Main.player[
k].position.Y > Main.rockLayer * 16.0 + (double)
sHeight)
72785 {
72787 }
72788 }
72789 if (Main.pumpkinMoon || Main.snowMoon)
72790 {
72793 if ((
double)Main.player[
k].position.Y > Main.rockLayer * 16.0 + (double)
sHeight)
72794 {
72796 }
72797 }
72798 }
72799 else if (Main.dayTime && Main.eclipse)
72800 {
72803 }
72804 }
72805 if (Main.player[
k].ZoneSnow && (
double)(Main.player[
k].position.Y / 16f) < Main.worldSurface)
72806 {
72809 }
72810 if (Main.drunkWorld && Main.tile[
num8,
num9].wall == 86)
72811 {
72814 }
72815 if (Main.player[
k].ZoneDungeon)
72816 {
72819 }
72820 else if (Main.player[
k].ZoneSandstorm)
72821 {
72824 }
72825 else if (Main.player[
k].ZoneUndergroundDesert)
72826 {
72829 }
72830 else if (Main.player[
k].ZoneJungle)
72831 {
72832 if (Main.player[
k].townNPCs == 0f)
72833 {
72836 }
72837 else if (Main.player[
k].townNPCs == 1f)
72838 {
72841 }
72842 else if (Main.player[
k].townNPCs == 2f)
72843 {
72846 }
72847 else
72848 {
72851 }
72852 }
72853 else if (Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson)
72854 {
72857 }
72858 else if (Main.player[
k].ZoneMeteor)
72859 {
72862 }
72864 {
72867 if (Main.remixWorld)
72868 {
72871 }
72872 }
72873 if (Main.remixWorld && (Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson) && (double)(Main.player[
k].position.Y / 16f) < Main.worldSurface)
72874 {
72877 }
72878 if (Main.player[
k].ZoneHallow && (
double)Main.player[
k].position.Y > Main.rockLayer * 16.0 + (double)
sHeight)
72879 {
72882 }
72883 if (Main.wofNPCIndex >= 0 && Main.player[
k].position.Y > (
float)(Main.UnderworldLayer * 16))
72884 {
72887 }
72888 if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.2)
72889 {
72891 }
72892 else if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.4)
72893 {
72895 }
72896 else if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.6)
72897 {
72899 }
72900 else if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.8)
72901 {
72903 }
72904 if ((
double)(Main.player[
k].position.Y / 16f) > (Main.worldSurface + Main.rockLayer) / 2.0 || Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson)
72905 {
72906 if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.2)
72907 {
72909 }
72910 else if ((
double)Main.player[
k].nearbyActiveNPCs < (double)
maxSpawns * 0.4)
72911 {
72913 }
72914 }
72916 if (Main.remixWorld && (
double)(Main.player[
k].position.Y / 16f) < Main.worldSurface && (Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson))
72917 {
72921 }
72922 if (Main.player[
k].invis)
72923 {
72926 }
72927 if (Main.player[
k].calmed)
72928 {
72931 }
72932 if (Main.player[
k].sunflower)
72933 {
72936 }
72937 if (Main.player[
k].anglerSetSpawnReduction)
72938 {
72941 }
72942 if (Main.player[
k].enemySpawns)
72943 {
72946 }
72947 if (Main.player[
k].ZoneWaterCandle || Main.player[
k].inventory[Main.player[
k].selectedItem].type == 148)
72948 {
72949 if (!Main.player[
k].ZonePeaceCandle && Main.player[
k].inventory[Main.player[
k].selectedItem].type != 3117)
72950 {
72953 }
72954 }
72955 else if (Main.player[
k].ZonePeaceCandle || Main.player[
k].inventory[Main.player[
k].selectedItem].type == 3117)
72956 {
72959 }
72960 if (Main.player[
k].ZoneShadowCandle || Main.player[
k].inventory[Main.player[
k].selectedItem].type == 5322)
72961 {
72962 Main.player[
k].townNPCs = 0f;
72963 }
72964 if (Main.player[
k].ZoneWaterCandle && (
double)(Main.player[
k].position.Y / 16f) < Main.worldSurface * 0.3499999940395355)
72965 {
72967 }
72968 if (Main.player[
k].isNearFairy())
72969 {
72972 }
72974 {
72976 }
72978 {
72980 }
72981 if (Main.getGoodWorld)
72982 {
72985 }
72986 if (Main.GameModeInfo.IsJourneyMode)
72987 {
72990 {
72991 if (
power.GetShouldDisableSpawnsFor(
k))
72992 {
72993 continue;
72994 }
72996 {
72999 }
73000 }
73001 }
73002 if ((Main.pumpkinMoon || Main.snowMoon) && (Main.remixWorld || (double)Main.player[
k].position.Y < Main.worldSurface * 16.0))
73003 {
73006 }
73008 {
73011 }
73013 {
73016 }
73018 {
73020 }
73021 if (!
flag6 && ((!Main.bloodMoon && !Main.pumpkinMoon && !Main.snowMoon) || Main.dayTime) && (!Main.eclipse || !Main.dayTime) && !Main.player[
k].ZoneDungeon && !Main.player[
k].ZoneCorrupt && !Main.player[
k].ZoneCrimson && !Main.player[
k].ZoneMeteor && !Main.player[
k].ZoneOldOneArmy)
73022 {
73023 if (Main.player[
k].Center.Y / 16f > (
float)Main.UnderworldLayer && (!Main.remixWorld || !((double)(Main.player[
k].Center.X / 16f) > (double)Main.maxTilesX * 0.39 + 50.0) || !((double)(Main.player[
k].Center.X / 16f) < (double)Main.maxTilesX * 0.61)))
73024 {
73025 if (Main.player[
k].townNPCs == 1f)
73026 {
73027 if (Main.rand.Next(2) == 0)
73028 {
73030 }
73031 if (Main.rand.Next(10) == 0)
73032 {
73035 }
73036 else
73037 {
73039 }
73040 }
73041 else if (Main.player[
k].townNPCs == 2f)
73042 {
73043 if (Main.rand.Next(4) != 0)
73044 {
73046 }
73047 if (Main.rand.Next(5) == 0)
73048 {
73051 }
73052 else
73053 {
73055 }
73056 }
73057 else if (Main.player[
k].townNPCs >= 3f)
73058 {
73059 if (Main.rand.Next(10) != 0)
73060 {
73062 }
73063 if (Main.rand.Next(3) == 0)
73064 {
73067 }
73068 else
73069 {
73071 }
73072 }
73073 }
73074 else if (Main.player[
k].townNPCs == 1f)
73075 {
73077 if (Main.player[
k].ZoneGraveyard)
73078 {
73080 if (Main.rand.Next(9) == 1)
73081 {
73084 }
73085 }
73086 else if (Main.rand.Next(3) == 1)
73087 {
73090 }
73091 else
73092 {
73094 }
73095 }
73096 else if (Main.player[
k].townNPCs == 2f)
73097 {
73099 if (Main.player[
k].ZoneGraveyard)
73100 {
73102 if (Main.rand.Next(6) == 1)
73103 {
73106 }
73107 }
73108 else if (Main.rand.Next(3) != 0)
73109 {
73112 }
73113 else
73114 {
73116 }
73117 }
73118 else if (Main.player[
k].townNPCs >= 3f)
73119 {
73121 if (Main.player[
k].ZoneGraveyard)
73122 {
73124 if (Main.rand.Next(3) == 1)
73125 {
73128 }
73129 }
73130 else
73131 {
73132 if (!Main.expertMode || Main.rand.Next(30) != 0)
73133 {
73135 }
73137 }
73138 }
73139 }
73141 if (Main.player[
k].active && !Main.player[
k].dead && Main.player[
k].nearbyActiveNPCs < (
float)
maxSpawns && Main.rand.Next(
spawnRate) == 0)
73142 {
73143 bool flag16 = Main.player[
k].ZoneTowerNebula || Main.player[
k].ZoneTowerSolar || Main.player[
k].ZoneTowerStardust || Main.player[
k].ZoneTowerVortex;
73148 if (Main.player[
k].inventory[Main.player[
k].selectedItem].type == 1254 || Main.player[
k].inventory[Main.player[
k].selectedItem].type == 1299 || Main.player[
k].scope)
73149 {
73150 float num11 = 1.5f;
73151 if (Main.player[
k].inventory[Main.player[
k].selectedItem].type == 1254 && Main.player[
k].scope)
73152 {
73154 }
73155 else if (Main.player[
k].inventory[Main.player[
k].selectedItem].type == 1254)
73156 {
73158 }
73159 else if (Main.player[
k].inventory[Main.player[
k].selectedItem].type == 1299)
73160 {
73162 }
73163 else if (Main.player[
k].scope)
73164 {
73166 }
73171 }
73181 {
73183 }
73184 if (
num13 > Main.maxTilesX)
73185 {
73186 num13 = Main.maxTilesX;
73187 }
73189 {
73191 }
73192 if (
num15 > Main.maxTilesY)
73193 {
73194 num15 = Main.maxTilesY;
73195 }
73196 for (
int m = 0;
m < 50;
m++)
73197 {
73201 {
73203 {
73204 continue;
73205 }
73206 if (!
flag6 && (
double)
num21 < Main.worldSurface * 0.3499999940395355 && !
flag12 && ((double)
num20 < (
double)Main.maxTilesX * 0.45 || (double)
num20 > (
double)Main.maxTilesX * 0.55 || Main.hardMode))
73207 {
73213 }
73214 else if (!
flag6 && (
double)
num21 < Main.worldSurface * 0.44999998807907104 && !
flag12 && Main.hardMode && Main.rand.Next(10) == 0)
73215 {
73221 }
73222 else
73223 {
73225 {
73226 if (Main.tile[
num20,
n].nactive() && Main.tileSolid[Main.tile[
num20,
n].type])
73227 {
73229 {
73234 }
73235 break;
73236 }
73237 }
73238 }
73239 if (Main.player[
k].ZoneShadowCandle)
73240 {
73242 }
73244 {
73246 }
73248 {
73254 {
73256 }
73257 if (
num23 > Main.maxTilesX)
73258 {
73260 }
73262 {
73264 }
73265 if (
num25 > Main.maxTilesY)
73266 {
73268 }
73270 {
73272 {
73274 {
73276 {
73278 break;
73279 }
73281 {
73283 break;
73284 }
73285 }
73286 }
73287 }
73289 {
73291 }
73292 }
73293 }
73295 {
73296 break;
73297 }
73298 }
73299 }
73301 {
73304 {
73305 if (Main.player[
num28].active)
73306 {
73309 {
73311 }
73312 }
73313 }
73314 }
73316 {
73317 if (Main.player[
k].ZoneDungeon && (!Main.tileDungeon[Main.tile[num,
num2].type] || Main.tile[num,
num2 - 1].wall == 0))
73318 {
73320 }
73321 if (Main.tile[num,
num2 - 1].liquid > 0 && Main.tile[num,
num2 - 2].liquid > 0 && !Main.tile[num,
num2 - 1].lava())
73322 {
73323 if (Main.tile[num,
num2 - 1].shimmer())
73324 {
73326 }
73327 if (Main.tile[num,
num2 - 1].honey())
73328 {
73330 }
73331 else
73332 {
73334 }
73335 }
73336 int num29 = (int)Main.player[
k].Center.X / 16;
73337 int num30 = (int)(Main.player[
k].Bottom.Y + 8f) / 16;
73338 if (Main.tile[num,
num2].type == 367)
73339 {
73341 }
73342 else if (Main.tile[num,
num2].type == 368)
73343 {
73345 }
73346 else if (Main.tile[
num29,
num30].type == 367)
73347 {
73349 }
73350 else if (Main.tile[
num29,
num30].type == 368)
73351 {
73353 }
73354 else
73355 {
73356 int num31 = Main.rand.Next(20, 31);
73357 int num32 = Main.rand.Next(1, 4);
73358 if (num -
num31 < 0)
73359 {
73361 }
73363 {
73365 }
73366 if (num +
num31 >= Main.maxTilesX)
73367 {
73368 num31 = Main.maxTilesX - num - 1;
73369 }
73371 {
73373 }
73375 {
73376 int num34 = Main.rand.Next(1, 4);
73378 {
73380 {
73382 }
73384 {
73386 }
73387 }
73388 }
73389 num31 = Main.rand.Next(30, 61);
73390 num32 = Main.rand.Next(3, 7);
73392 {
73394 }
73396 {
73398 }
73400 {
73402 }
73404 {
73406 }
73408 {
73409 int num37 = Main.rand.Next(3, 7);
73411 {
73413 {
73415 }
73417 {
73419 }
73420 }
73421 }
73422 }
73424 {
73426 }
73427 if ((
num3 == 477 ||
num3 == 492) && !Main.bloodMoon && !Main.eclipse && Main.invasionType <= 0 && !Main.pumpkinMoon && !Main.snowMoon && !Main.slimeRain && Main.rand.Next(100) < 10)
73428 {
73430 }
73431 }
73433 {
73434 continue;
73435 }
73436 if (Main.remixWorld)
73437 {
73439 }
73440 bool flag17 = (double)
num2 <= Main.rockLayer;
73441 if (Main.remixWorld)
73442 {
73443 flag17 = (double)
num2 > Main.rockLayer &&
num2 <= Main.maxTilesY - 190;
73444 }
73445 bool flag18 = (double)
num2 > Main.rockLayer &&
num2 < Main.UnderworldLayer;
73446 if (Main.dontStarveWorld)
73447 {
73449 }
73451 {
73452 if (Main.rand.Next(3) == 0)
73453 {
73454 int num39 = Main.rand.Next(5, 15);
73455 if (num -
num39 >= 0 && num +
num39 < Main.maxTilesX)
73456 {
73458 {
73460 {
73462 {
73464 }
73465 }
73466 }
73467 }
73468 }
73469 else
73470 {
73471 int num42 = (int)Main.player[
k].position.X / 16;
73472 int num43 = (int)Main.player[
k].position.Y / 16;
73474 {
73476 }
73477 }
73478 }
73480 {
73481 if (Main.rand.Next(3) == 0)
73482 {
73483 int num44 = Main.rand.Next(5, 15);
73484 if (num -
num44 >= 0 && num +
num44 < Main.maxTilesX)
73485 {
73487 {
73489 {
73491 {
73493 }
73494 }
73495 }
73496 }
73497 }
73498 else
73499 {
73500 int num47 = (int)Main.player[
k].position.X / 16;
73501 int num48 = (int)Main.player[
k].position.Y / 16;
73503 {
73505 }
73506 }
73507 }
73510 int num50 = Main.tile[num,
num2 - 1].wall;
73511 if (Main.tile[num,
num2 - 2].wall == 244 || Main.tile[num,
num2].wall == 244)
73512 {
73514 }
73516 bool flag20 = (double)
num2 <= Main.worldSurface;
73517 bool flag21 = (double)
num2 >= Main.rockLayer;
73518 bool flag22 = ((num < WorldGen.oceanDistance || num > Main.maxTilesX -
WorldGen.oceanDistance) && Main.tileSand[
num49] && (
double)
num2 < Main.rockLayer) || (
num3 == 53 &&
WorldGen.oceanDepths(num,
num2));
73520 bool flag24 = Main.cloudAlpha > 0f;
73522 if (Main.remixWorld)
73523 {
73525 flag21 = (((double)
num2 > Main.worldSurface && (
double)
num2 < Main.rockLayer) ?
true :
false);
73526 if ((
double)
num2 < Main.worldSurface + 5.0)
73527 {
73528 Main.raining = false;
73529 Main.cloudAlpha = 0f;
73530 Main.dayTime = false;
73531 }
73533 if (Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson)
73534 {
73537 }
73538 if ((double)num < (double)Main.maxTilesX * 0.43 || (double)num > (double)Main.maxTilesX * 0.57)
73539 {
73540 if ((
double)
num2 > Main.rockLayer - 200.0 &&
num2 < Main.maxTilesY - 200 && Main.rand.Next(2) == 0)
73541 {
73543 }
73544 if ((
double)
num2 > Main.rockLayer - 200.0 &&
num2 < Main.maxTilesY - 200 && Main.rand.Next(2) == 0)
73545 {
73547 }
73548 }
73549 if ((
double)
num2 > Main.rockLayer - 20.0)
73550 {
73551 if (
num2 <= Main.maxTilesY - 190 && Main.rand.Next(3) != 0)
73552 {
73554 Main.dayTime = false;
73555 if (Main.rand.Next(2) == 0)
73556 {
73557 Main.dayTime = true;
73558 }
73559 }
73560 else if ((Main.bloodMoon || (Main.eclipse && Main.dayTime)) && (double)num > (double)Main.maxTilesX * 0.38 + 50.0 && (double)num < (double)Main.maxTilesX * 0.62)
73561 {
73563 }
73564 }
73565 }
73570 if (Main.player[
k].ZoneTowerNebula)
73571 {
73575 {
73576 num51 = Utils.SelectRandom<
int>(Main.rand, 424, 424, 424, 423, 423, 423, 421, 421, 421, 420, 420);
73579 {
73581 }
73583 {
73585 }
73587 {
73589 }
73590 }
73592 {
73594 }
73595 }
73596 else if (Main.player[
k].ZoneTowerVortex)
73597 {
73601 {
73602 num52 = Utils.SelectRandom<
int>(Main.rand, 429, 429, 429, 429, 427, 427, 425, 425, 426);
73605 {
73607 }
73609 {
73611 }
73613 {
73615 }
73616 }
73618 {
73620 }
73621 }
73622 else if (Main.player[
k].ZoneTowerStardust)
73623 {
73624 int num53 = Utils.SelectRandom<
int>(Main.rand, 411, 411, 411, 409, 409, 407, 402, 405);
73626 {
73628 }
73629 }
73630 else if (Main.player[
k].ZoneTowerSolar)
73631 {
73635 {
73636 num54 = Utils.SelectRandom<
int>(Main.rand, 518, 419, 418, 412, 417, 416, 415);
73638 if (
num54 == 418 && Main.rand.Next(2) == 0)
73639 {
73640 num54 = Utils.SelectRandom<
int>(Main.rand, 415, 416, 419, 417);
73641 }
73643 {
73645 }
73647 {
73649 }
73650 }
73652 {
73654 }
73655 }
73657 {
73660 bool flag28 = (float)
Math.
Abs(num - Main.maxTilesX / 2) / (float)(Main.maxTilesX / 2) > 0.33f && (Main.wallLight[Main.tile[
num8,
num9].wall] || Main.tile[
num8,
num9].wall == 73);
73662 {
73664 }
73665 if (Main.player[
k].ZoneWaterCandle)
73666 {
73669 }
73670 if (
flag6 && Main.invasionType == 4)
73671 {
73673 }
73675 {
73677 }
73679 {
73681 }
73682 else if (Main.hardMode && !
AnyNPCs(87) && !
flag5 && Main.rand.Next(10) == 0)
73683 {
73685 }
73686 else if (Main.hardMode && !
AnyNPCs(87) && !
flag5 && Main.rand.Next(10) == 0 && (Main.player[
k].inventory[Main.player[
k].selectedItem].type == 148 || Main.player[
k].ZoneWaterCandle))
73687 {
73689 }
73691 {
73693 }
73694 else
73695 {
73697 }
73698 }
73700 {
73701 if (Main.invasionType == 1)
73702 {
73703 if (Main.hardMode && !
AnyNPCs(471) && Main.rand.Next(30) == 0)
73704 {
73706 }
73707 else if (Main.rand.Next(9) == 0)
73708 {
73710 }
73711 else if (Main.rand.Next(5) == 0)
73712 {
73714 }
73715 else if (Main.rand.Next(3) == 0)
73716 {
73718 }
73719 else if (Main.rand.Next(3) == 0)
73720 {
73722 }
73723 else
73724 {
73726 }
73727 }
73728 else if (Main.invasionType == 2)
73729 {
73730 if (Main.rand.Next(7) == 0)
73731 {
73733 }
73734 else if (Main.rand.Next(3) == 0)
73735 {
73737 }
73738 else
73739 {
73741 }
73742 }
73743 else if (Main.invasionType == 3)
73744 {
73745 if (Main.invasionSize < Main.invasionSizeStart / 2 && Main.rand.Next(20) == 0 && !
AnyNPCs(491) && !Collision.SolidTiles(num - 20, num + 20,
num2 - 40,
num2 - 10))
73746 {
73748 }
73749 else if (Main.rand.Next(30) == 0 && !
AnyNPCs(216))
73750 {
73752 }
73753 else if (Main.rand.Next(11) == 0)
73754 {
73756 }
73757 else if (Main.rand.Next(9) == 0)
73758 {
73760 }
73761 else if (Main.rand.Next(7) == 0)
73762 {
73764 }
73765 else if (Main.rand.Next(3) == 0)
73766 {
73768 }
73769 else
73770 {
73772 }
73773 }
73774 else if (Main.invasionType == 4)
73775 {
73777 int num56 = Main.rand.Next(7);
73778 bool flag29 = (float)(Main.invasionSizeStart - Main.invasionSize) / (float)Main.invasionSizeStart >= 0.3f && !
AnyNPCs(395);
73779 if (Main.rand.Next(45) == 0 &&
flag29)
73780 {
73782 }
73783 else if (
num56 >= 6)
73784 {
73785 if (Main.rand.Next(20) == 0 &&
flag29)
73786 {
73788 }
73789 else
73790 {
73791 int num57 = Main.rand.Next(2);
73793 {
73795 }
73797 {
73799 }
73800 }
73801 }
73802 else if (
num56 >= 4)
73803 {
73804 int num58 = Main.rand.Next(5);
73806 }
73807 else
73808 {
73809 int num59 = Main.rand.Next(4);
73811 {
73813 {
73815 }
73816 else
73817 {
73818 num59 = Main.rand.Next(3);
73819 }
73820 }
73822 {
73824 }
73826 {
73828 }
73830 {
73832 }
73833 }
73835 {
73837 }
73838 }
73839 }
73840 else if (
num50 == 244 && !Main.remixWorld)
73841 {
73843 {
73845 {
73847 }
73848 else
73849 {
73851 }
73852 }
73853 else if ((
double)
num2 > Main.worldSurface)
73854 {
73855 if (Main.rand.Next(3) == 0)
73856 {
73858 {
73860 }
73861 else
73862 {
73864 }
73865 }
73866 else if (Main.rand.Next(2) == 0)
73867 {
73869 }
73871 {
73873 }
73874 else if (Main.rand.Next(3) != 0)
73875 {
73877 }
73878 }
73879 else if (Main.player[
k].RollLuck(2) == 0)
73880 {
73882 Main.npc[
newNPC].timeLeft *= 10;
73883 }
73885 {
73887 }
73889 {
73891 }
73892 else if (Main.halloween && Main.rand.Next(3) != 0)
73893 {
73895 }
73896 else if (Main.xMas && Main.rand.Next(3) != 0)
73897 {
73899 }
73901 {
73903 }
73904 else if (Main.rand.Next(3) == 0)
73905 {
73907 }
73908 else
73909 {
73911 }
73912 }
73914 {
73916 }
73917 else if (Main.tile[num,
num2].wall == 62 ||
flag11)
73918 {
73920 if (Main.dontStarveWorld)
73921 {
73923 }
73925 {
73927 }
73928 else if (Main.hardMode && Main.rand.Next(10) != 0)
73929 {
73931 }
73932 else
73933 {
73935 }
73936 }
73938 {
73939 float num60 = 1.15f;
73940 if ((
double)
num2 > (Main.rockLayer * 2.0 + (
double)Main.maxTilesY) / 3.0)
73941 {
73943 }
73944 else if ((
double)
num2 > Main.rockLayer)
73945 {
73947 }
73949 {
73951 }
73952 else if (Main.hardMode && Main.rand.Next((
int)(45f *
num60)) == 0 && !
flag5 && (
double)
num2 > Main.worldSurface + 100.0)
73953 {
73955 }
73956 else if (Main.rand.Next((
int)(45f *
num60)) == 0 && !
flag5 && (
double)
num2 > Main.worldSurface + 100.0 &&
CountNPCS(513) == 0)
73957 {
73959 }
73960 else if (Main.hardMode && Main.rand.Next(5) != 0)
73961 {
73963 if (Main.player[
k].ZoneCorrupt)
73964 {
73967 }
73968 if (Main.player[
k].ZoneCrimson)
73969 {
73972 }
73973 if (Main.player[
k].ZoneHallow)
73974 {
73977 }
73978 if (
list.Count == 0)
73979 {
73982 }
73983 if (Main.player[
k].ZoneCorrupt || Main.player[
k].ZoneCrimson)
73984 {
73987 }
73988 else
73989 {
73992 }
73994 int num61 = Utils.SelectRandom(Main.rand,
list.ToArray());
73997 }
73998 else
73999 {
74000 int num62 = Utils.SelectRandom<
int>(Main.rand, 69, 580, 580, 580, 581);
74001 if (Main.rand.Next(15) == 0)
74002 {
74004 }
74005 else if (Main.rand.Next(10) == 0)
74006 {
74008 {
74009 case 580:
74011 break;
74012 case 581:
74014 break;
74015 }
74016 }
74018 }
74019 }
74020 else if (Main.hardMode &&
flag7 && Main.player[
k].ZoneJungle && Main.rand.Next(3) != 0)
74021 {
74023 }
74024 else if (Main.hardMode &&
flag7 && Main.player[
k].ZoneCrimson && Main.rand.Next(3) != 0)
74025 {
74027 }
74028 else if (Main.hardMode &&
flag7 && Main.player[
k].ZoneCrimson && Main.rand.Next(3) != 0)
74029 {
74031 }
74033 {
74036 {
74039 {
74041 {
74043 break;
74044 }
74045 }
74047 {
74049 }
74051 {
74054 }
74055 }
74057 {
74060 if (((
double)
num2 < Main.worldSurface || Main.remixWorld) &&
num2 > 50)
74061 {
74063 {
74065 {
74068 {
74070 }
74071 if (Main.wallHouse[Main.tile[num,
num65].wall])
74072 {
74074 }
74075 break;
74076 }
74077 }
74079 {
74081 }
74083 {
74085 }
74086 }
74087 if (
num65 > 0 && !
flag15 && Main.rand.Next(10) == 0)
74088 {
74090 }
74091 else if (Main.rand.Next(10) == 0)
74092 {
74093 int num68 = Main.rand.Next(3);
74095 {
74097 }
74099 {
74101 }
74102 else if (
num68 == 2)
74103 {
74106 {
74108 }
74110 {
74112 }
74113 else
74114 {
74116 }
74117 }
74118 }
74119 else if (Main.rand.Next(40) == 0)
74120 {
74122 }
74123 else if (Main.rand.Next(18) == 0)
74124 {
74126 }
74127 else if (Main.rand.Next(8) == 0)
74128 {
74130 }
74131 else if (Main.rand.Next(3) == 0)
74132 {
74134 }
74135 else
74136 {
74138 }
74139 }
74140 }
74142 {
74144 }
74146 {
74148 if (
num49 == 60 &&
flag20 &&
num2 > 50 && Main.rand.Next(3) == 0 && Main.dayTime)
74149 {
74152 {
74154 {
74156 break;
74157 }
74158 }
74160 {
74162 }
74164 {
74166 if (Main.rand.Next(4) == 0)
74167 {
74170 }
74171 else if (!flag && Main.cloudAlpha == 0f)
74172 {
74174 int num72 = Main.rand.Next(1, 4);
74176 {
74178 {
74180 }
74181 else
74182 {
74184 }
74185 }
74186 }
74187 }
74188 }
74190 {
74191 if (Main.hardMode && Main.rand.Next(3) > 0)
74192 {
74194 }
74195 else
74196 {
74198 }
74199 }
74200 }
74201 else if (!
flag12 &&
flag7 && (
double)
num2 > Main.worldSurface && Main.rand.Next(3) == 0)
74202 {
74203 if (Main.hardMode && Main.rand.Next(3) > 0)
74204 {
74206 }
74207 else
74208 {
74210 }
74211 }
74212 else if (
flag7 && Main.rand.Next(4) == 0 && ((num >
WorldGen.oceanDistance && num < Main.maxTilesX -
WorldGen.oceanDistance) || (
double)
num2 > Main.worldSurface + 50.0))
74213 {
74214 if (Main.player[
k].ZoneCorrupt)
74215 {
74217 }
74218 else if (Main.player[
k].ZoneCrimson)
74219 {
74221 }
74223 {
74226 {
74228 {
74230 break;
74231 }
74232 }
74234 {
74236 }
74238 {
74239 if (Main.rand.Next(5) == 0 && (
num3 == 2 ||
num3 == 477))
74240 {
74242 }
74243 else if (
num3 == 53)
74244 {
74245 if (Main.rand.Next(2) == 0 && !flag && Main.cloudAlpha == 0f)
74246 {
74247 int num76 = Main.rand.Next(1, 4);
74249 {
74251 {
74253 }
74254 else
74255 {
74257 }
74258 }
74259 }
74260 else
74261 {
74263 }
74264 }
74265 else if (Main.rand.Next(2) == 0)
74266 {
74268 }
74269 else
74270 {
74272 }
74273 }
74274 else if (
num3 == 53 && num >
WorldGen.beachDistance && num < Main.maxTilesX -
WorldGen.beachDistance)
74275 {
74277 }
74279 {
74281 }
74282 else
74283 {
74285 }
74286 }
74287 else if (
num3 == 53 && num >
WorldGen.beachDistance && num < Main.maxTilesX -
WorldGen.beachDistance)
74288 {
74290 }
74292 {
74294 }
74295 else
74296 {
74298 }
74299 }
74301 {
74303 }
74305 {
74307 }
74309 {
74311 }
74313 {
74314 if (Main.player[
k].ZoneGraveyard)
74315 {
74317 {
74318 if (Main.rand.Next(2) == 0)
74319 {
74321 }
74322 else
74323 {
74325 }
74326 }
74327 }
74329 {
74331 {
74334 if (((
double)
num2 < Main.worldSurface || Main.remixWorld) &&
num2 > 50)
74335 {
74337 {
74339 {
74342 {
74344 }
74345 break;
74346 }
74347 }
74349 {
74351 }
74353 {
74355 }
74356 }
74357 if (Main.rand.Next(2) == 0)
74358 {
74359 int num81 = Main.rand.Next(3);
74361 {
74363 }
74365 {
74367 }
74368 else if (
num81 == 2)
74369 {
74372 {
74374 }
74376 {
74378 }
74379 else
74380 {
74382 }
74383 }
74384 }
74386 {
74388 }
74389 }
74390 else
74391 {
74393 }
74394 }
74396 {
74398 {
74400 }
74401 else
74402 {
74404 }
74405 if (Main.rand.Next(3) == 0)
74406 {
74408 }
74409 if (Main.rand.Next(3) == 0)
74410 {
74412 }
74413 }
74415 {
74416 if (
flag20 &&
num2 > 50 && Main.rand.Next(3) != 0 && Main.dayTime)
74417 {
74420 {
74422 {
74424 break;
74425 }
74426 }
74428 {
74430 }
74432 {
74434 {
74435 case 60:
74436 if (Main.rand.Next(3) != 0 && !flag && Main.cloudAlpha == 0f)
74437 {
74438 int num87 = Main.rand.Next(1, 4);
74440 {
74442 {
74444 }
74445 else
74446 {
74448 }
74449 }
74450 }
74451 else
74452 {
74454 }
74455 break;
74456 case 53:
74457 if (Main.rand.Next(3) != 0 && !flag && Main.cloudAlpha == 0f)
74458 {
74459 int num85 = Main.rand.Next(1, 4);
74461 {
74463 {
74465 }
74466 else
74467 {
74469 }
74470 }
74471 }
74472 else
74473 {
74475 }
74476 break;
74477 default:
74478 if (Main.rand.Next(5) == 0 && (
num3 == 2 ||
num3 == 477))
74479 {
74481 }
74482 else if (Main.rand.Next(2) == 0)
74483 {
74485 }
74486 else
74487 {
74489 }
74490 break;
74491 }
74492 }
74493 else if (
num3 == 53 && num >
WorldGen.beachDistance && num < Main.maxTilesX -
WorldGen.beachDistance)
74494 {
74496 }
74498 {
74500 }
74501 else
74502 {
74504 }
74505 }
74506 else if (
num3 == 53 && num >
WorldGen.beachDistance && num < Main.maxTilesX -
WorldGen.beachDistance)
74507 {
74509 }
74511 {
74513 }
74514 else
74515 {
74517 }
74518 }
74520 {
74521 if (Main.rand.Next(2) == 0)
74522 {
74524 }
74525 else
74526 {
74528 }
74529 }
74530 else if (
num49 == 60)
74531 {
74532 if (Main.dayTime && Main.rand.Next(3) != 0)
74533 {
74534 switch (Main.rand.Next(5))
74535 {
74536 case 0:
74538 break;
74539 case 1:
74541 break;
74542 case 2:
74544 break;
74545 case 3:
74547 break;
74548 default:
74550 break;
74551 }
74552 }
74553 else
74554 {
74556 }
74557 }
74558 else if (
num49 == 53)
74559 {
74561 }
74562 else
74563 {
74565 {
74566 break;
74567 }
74569 if (Main.raining &&
num2 <= Main.UnderworldLayer)
74570 {
74571 if (
flag21 && Main.rand.Next(5) == 0)
74572 {
74574 }
74575 else if (
flag21 && Main.rand.Next(5) == 0)
74576 {
74578 }
74580 {
74582 }
74583 else if (Main.rand.Next(3) != 0)
74584 {
74586 }
74588 {
74590 }
74591 else
74592 {
74594 }
74595 }
74596 else if (!Main.dayTime && Main.numClouds <= 55 && Main.cloudBGActive == 0f &&
Star.starfallBoost > 3f &&
flag33 && Main.player[
k].RollLuck(2) == 0)
74597 {
74599 }
74601 {
74604 {
74606 }
74609 {
74611 }
74613 {
74615 }
74617 {
74619 }
74621 {
74623 }
74624 }
74625 else if (Main.cloudAlpha == 0f && !Main.dayTime && Main.rand.Next(5) == 0 &&
flag33)
74626 {
74628 }
74629 else if (Main.dayTime && Main.time < 18000.0 && Main.rand.Next(3) != 0 &&
flag33)
74630 {
74631 int num90 = Main.rand.Next(4);
74633 {
74635 }
74636 else
74637 {
74639 {
74640 case 0:
74642 break;
74643 case 1:
74645 break;
74646 default:
74648 break;
74649 }
74650 }
74651 }
74653 {
74655 if (Main.rand.Next(4) == 0)
74656 {
74658 }
74659 if (Main.rand.Next(4) == 0)
74660 {
74662 }
74663 }
74665 {
74667 {
74669 }
74670 else
74671 {
74673 }
74674 if (Main.rand.Next(4) == 0)
74675 {
74677 }
74678 if (Main.rand.Next(4) == 0)
74679 {
74681 }
74682 }
74684 {
74686 {
74688 }
74689 else
74690 {
74692 }
74693 if (Main.rand.Next(3) != 0)
74694 {
74696 }
74697 if (Main.rand.Next(2) == 0)
74698 {
74700 }
74701 if (Main.rand.Next(3) == 0)
74702 {
74704 }
74705 if (Main.rand.Next(4) == 0)
74706 {
74708 }
74709 }
74710 else if (Main.rand.Next(2) == 0 &&
flag33)
74711 {
74712 int num91 = Main.rand.Next(4);
74714 {
74716 }
74717 else
74718 {
74720 {
74721 case 0:
74723 break;
74724 case 1:
74726 break;
74727 default:
74729 break;
74730 }
74731 }
74732 }
74733 else if (
num2 > Main.UnderworldLayer)
74734 {
74735 if (Main.remixWorld && (
double)(Main.player[
k].Center.X / 16f) > (
double)Main.maxTilesX * 0.39 + 50.0 && (
double)(Main.player[
k].Center.X / 16f) < (
double)Main.maxTilesX * 0.61 && Main.rand.Next(2) == 0)
74736 {
74737 if (Main.rand.Next(2) == 0)
74738 {
74740 }
74741 else
74742 {
74744 }
74745 }
74746 else
74747 {
74749 }
74750 }
74752 {
74754 }
74756 {
74758 }
74759 else if (Main.halloween && Main.rand.Next(3) != 0)
74760 {
74762 }
74763 else if (Main.xMas && Main.rand.Next(3) != 0)
74764 {
74766 }
74768 {
74770 }
74771 else if (Main.rand.Next(3) == 0)
74772 {
74773 if (Main.remixWorld)
74774 {
74775 if ((
double)
num2 < Main.rockLayer && (
double)
num2 > Main.worldSurface)
74776 {
74777 if (Main.rand.Next(5) == 0)
74778 {
74780 }
74781 }
74783 {
74785 }
74786 }
74787 else if ((
double)
num2 >= Main.rockLayer &&
num2 <= Main.UnderworldLayer)
74788 {
74789 if (Main.rand.Next(5) == 0)
74790 {
74792 }
74793 }
74795 {
74797 }
74798 }
74799 else if (Main.remixWorld)
74800 {
74801 if ((
double)
num2 < Main.rockLayer && (
double)
num2 > Main.worldSurface)
74802 {
74803 if ((
double)
num2 >= Main.rockLayer &&
num2 <= Main.UnderworldLayer)
74804 {
74805 if (Main.rand.Next(5) == 0)
74806 {
74808 }
74809 }
74810 else
74811 {
74813 }
74814 }
74815 }
74816 else if ((
double)
num2 >= Main.rockLayer &&
num2 <= Main.UnderworldLayer)
74817 {
74818 if (Main.rand.Next(5) == 0)
74819 {
74821 }
74822 }
74823 else
74824 {
74826 }
74827 }
74828 }
74829 else if (Main.player[
k].ZoneDungeon)
74830 {
74832 ushort wall = Main.tile[num,
num2].wall;
74833 ushort
wall2 = Main.tile[num,
num2 - 1].wall;
74834 if (wall == 94 || wall == 96 || wall == 98 ||
wall2 == 94 ||
wall2 == 96 ||
wall2 == 98)
74835 {
74837 }
74838 if (wall == 95 || wall == 97 || wall == 99 ||
wall2 == 95 ||
wall2 == 97 ||
wall2 == 99)
74839 {
74841 }
74842 if (Main.player[
k].RollLuck(7) == 0)
74843 {
74844 num92 = Main.rand.Next(3);
74845 }
74847 if (Main.drunkWorld && Main.player[
k].position.Y / 16f < (
float)(Main.dungeonY + 40))
74848 {
74850 }
74852 {
74854 }
74856 {
74858 }
74859 else if (
flag14 && Main.rand.Next(30) == 0)
74860 {
74862 }
74863 else if (
flag14 &&
num92 == 0 && Main.rand.Next(15) == 0)
74864 {
74866 }
74867 else if (
flag14 &&
num92 == 1 && Main.rand.Next(15) == 0)
74868 {
74870 }
74871 else if (
flag14 &&
num92 == 2 && Main.rand.Next(15) == 0)
74872 {
74874 }
74876 {
74878 }
74880 {
74882 }
74883 else if (
flag14 && Main.rand.Next(20) == 0)
74884 {
74887 {
74889 }
74891 {
74893 }
74894 num93 += Main.rand.Next(2);
74896 {
74898 }
74899 }
74900 else if (
flag14 && Main.rand.Next(3) != 0)
74901 {
74904 {
74906 }
74908 {
74910 }
74912 }
74913 else if (Main.player[
k].RollLuck(35) == 0)
74914 {
74916 }
74918 {
74920 }
74921 else if (
num92 == 2 && Main.rand.Next(5) == 0)
74922 {
74924 }
74925 else if (
num92 == 0 && Main.rand.Next(7) == 0)
74926 {
74928 }
74929 else if (Main.rand.Next(7) == 0)
74930 {
74932 }
74933 else
74934 {
74935 switch (Main.rand.Next(5))
74936 {
74937 case 0:
74939 break;
74940 case 1:
74942 break;
74943 case 2:
74945 break;
74946 default:
74948 if (Main.rand.Next(4) == 0)
74949 {
74950 Main.npc[
newNPC].SetDefaults(-14);
74951 }
74952 else if (Main.rand.Next(5) == 0)
74953 {
74954 Main.npc[
newNPC].SetDefaults(-13);
74955 }
74956 break;
74957 }
74958 }
74959 }
74960 else if (Main.player[
k].ZoneMeteor)
74961 {
74963 }
74965 {
74967 }
74968 else if ((Main.remixWorld || (
double)
num2 <= Main.worldSurface) && !Main.dayTime && Main.snowMoon)
74969 {
74971 if (Main.rand.Next(30) == 0 &&
CountNPCS(341) < 4)
74972 {
74974 }
74975 else if (
num95 >= 20)
74976 {
74977 int num96 = Main.rand.Next(3);
74979 {
74981 {
74985 };
74986 }
74987 }
74988 else if (
num95 >= 19)
74989 {
74990 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(345) < 4) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(346) < 5) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) != 0 ||
CountNPCS(344) >= 7) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344))));
74991 }
74992 else if (
num95 >= 18)
74993 {
74994 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(345) < 3) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(346) < 4) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(344) < 6) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348) : ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 351))))));
74995 }
74996 else if (
num95 >= 17)
74997 {
74998 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(345) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(346) < 3) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(344) < 5) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(4) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 351))))));
74999 }
75000 else if (
num95 >= 16)
75001 {
75002 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(345) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(346) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(344) < 4) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 352)))));
75003 }
75004 else if (
num95 >= 15)
75005 {
75006 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(345)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(346) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(344) < 3) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347)))));
75007 }
75008 else
75009 {
75011 {
75012 case 14:
75013 if (Main.rand.Next(10) == 0 && !
AnyNPCs(345))
75014 {
75016 }
75017 else if (Main.rand.Next(10) == 0 && !
AnyNPCs(346))
75018 {
75020 }
75021 else if (Main.rand.Next(10) == 0 && !
AnyNPCs(344))
75022 {
75024 }
75025 else if (Main.rand.Next(3) == 0)
75026 {
75028 }
75029 break;
75030 case 13:
75031 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(345)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 && !
AnyNPCs(346)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(3) != 0) ? ((Main.rand.
Next(6) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 352))));
75032 break;
75033 case 12:
75034 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(345)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(10) == 0 && !
AnyNPCs(344)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(8) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 343))));
75035 break;
75036 case 11:
75037 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(345)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 345) : ((Main.rand.
Next(6) != 0) ? ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 352)));
75038 break;
75039 case 10:
75040 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(346)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(344) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(6) != 0) ? ((Main.rand.
Next(3) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 351))));
75041 break;
75042 case 9:
75043 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(346)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(10) == 0 && !
AnyNPCs(344)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(2) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348))));
75044 break;
75045 case 8:
75046 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(346)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(8) != 0) ? ((Main.rand.
Next(3) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 351)));
75047 break;
75048 case 7:
75049 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(346)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 346) : ((Main.rand.
Next(3) != 0) ? ((Main.rand.
Next(4) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)));
75050 break;
75051 case 6:
75052 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(344) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(4) != 0) ? ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 347)));
75053 break;
75054 case 5:
75055 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(344)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(4) != 0) ? ((Main.rand.
Next(8) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350)));
75056 break;
75057 case 4:
75058 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(344)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 344) : ((Main.rand.
Next(4) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350)));
75059 break;
75060 case 3:
75061 newNPC = ((Main.rand.Next(8) != 0) ? ((Main.rand.Next(4) != 0) ? ((Main.rand.Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.Next(338, 341)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 342)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 350)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 348));
75062 break;
75063 case 2:
75065 break;
75066 default:
75068 break;
75069 }
75070 }
75071 }
75072 else if ((Main.remixWorld || (
double)
num2 <= Main.worldSurface) && !Main.dayTime && Main.pumpkinMoon)
75073 {
75076 {
75078 {
75079 if (Main.rand.Next(2) == 0 &&
CountNPCS(327) < 2)
75080 {
75082 }
75083 else if (Main.rand.Next(3) != 0 &&
CountNPCS(325) < 2)
75084 {
75086 }
75088 {
75090 }
75091 }
75092 }
75093 else
75094 {
75096 {
75097 case 19:
75098 if (Main.rand.Next(5) == 0 &&
CountNPCS(327) < 2)
75099 {
75101 }
75102 else if (Main.rand.Next(5) == 0 &&
CountNPCS(325) < 2)
75103 {
75105 }
75107 {
75109 }
75110 break;
75111 case 18:
75112 if (Main.rand.Next(7) == 0 &&
CountNPCS(327) < 2)
75113 {
75115 }
75117 break;
75118 case 17:
75119 if (Main.rand.Next(7) == 0 &&
CountNPCS(327) < 2)
75120 {
75122 }
75123 newNPC = ((Main.rand.Next(7) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(7) == 0 &&
CountNPCS(315) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 315) : ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330))));
75124 break;
75125 case 16:
75126 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(327) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 327) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(315) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 315) : ((Main.rand.
Next(6) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330))));
75127 break;
75128 case 15:
75129 if (Main.rand.Next(10) == 0 && !
AnyNPCs(327))
75130 {
75132 }
75133 newNPC = ((Main.rand.Next(7) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(5) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330)));
75134 break;
75135 case 14:
75136 if (Main.rand.Next(10) == 0 && !
AnyNPCs(327))
75137 {
75139 }
75140 newNPC = ((Main.rand.Next(7) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(10) == 0 && !
AnyNPCs(315)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 315) : ((Main.rand.
Next(10) != 0) ? ((Main.rand.
Next(7) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330))));
75141 break;
75142 case 13:
75143 newNPC = ((Main.rand.Next(7) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(10) == 0 &&
CountNPCS(315) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 315) : ((Main.rand.
Next(6) != 0) ? ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330))));
75144 break;
75145 case 12:
75147 break;
75148 case 11:
75150 break;
75151 case 10:
75152 newNPC = ((Main.rand.Next(10) == 0 && !
AnyNPCs(327)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 327) : ((Main.rand.
Next(3) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329)));
75153 break;
75154 case 9:
75155 newNPC = ((Main.rand.Next(10) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(8) != 0) ? ((Main.rand.
Next(5) != 0) ? ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 329)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330)));
75156 break;
75157 case 8:
75159 break;
75160 case 7:
75162 break;
75163 case 6:
75164 newNPC = ((Main.rand.Next(7) == 0 &&
CountNPCS(325) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 325) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326)));
75165 break;
75166 case 5:
75168 break;
75169 case 4:
75170 newNPC = ((Main.rand.Next(8) == 0 && !
AnyNPCs(325)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 330) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, Main.rand.
Next(305, 315)) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 326)));
75171 break;
75172 case 3:
75174 break;
75175 case 2:
75177 break;
75178 default:
75180 break;
75181 }
75182 }
75183 }
75184 else if (((
double)
num2 <= Main.worldSurface || (Main.remixWorld && (
double)
num2 > Main.rockLayer)) && Main.dayTime && Main.eclipse)
75185 {
75188 {
75190 }
75191 newNPC = ((
downedPlantBoss && Main.rand.Next(80) == 0 && !
AnyNPCs(477)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 477) : ((Main.rand.
Next(50) == 0 && !
AnyNPCs(251)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 251) : ((
downedPlantBoss && Main.rand.
Next(5) == 0 && !
AnyNPCs(466)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 466) : ((
downedPlantBoss && Main.rand.
Next(20) == 0 && !
AnyNPCs(463)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 463) : ((
downedPlantBoss && Main.rand.
Next(20) == 0 &&
CountNPCS(467) < 2) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 467) : ((Main.rand.
Next(15) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 159) : ((
flag35 && Main.rand.
Next(13) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 253) : ((Main.rand.
Next(8) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 469) : ((
downedPlantBoss && Main.rand.
Next(7) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 468) : ((
downedPlantBoss && Main.rand.
Next(5) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 460) : ((Main.rand.
Next(4) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 162) : ((Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 461) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 166) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 462))))))))))))));
75192 }
75194 {
75195 int num98 = Main.rand.Next(583, 586);
75196 if (Main.tenthAnniversaryWorld && !Main.getGoodWorld && Main.rand.Next(4) != 0)
75197 {
75199 }
75201 Main.npc[
newNPC].ai[2] = 2f;
75202 Main.npc[
newNPC].TargetClosest();
75203 Main.npc[
newNPC].ai[3] = 0f;
75204 }
75205 else if (!Main.remixWorld && !
flag7 && (!Main.dayTime || Main.tile[num,
num2].wall > 0) && Main.tile[
num8,
num9].wall == 244 && !Main.eclipse && !Main.bloodMoon && Main.player[
k].RollLuck(30) == 0 &&
CountNPCS(624) <= Main.rand.Next(3))
75206 {
75208 }
75209 else if (!Main.player[
k].ZoneCorrupt && !Main.player[
k].ZoneCrimson && !
flag7 && !Main.eclipse && !Main.bloodMoon && Main.player[
k].RollLuck(
range) == 0 && ((!Main.remixWorld && (
double)
num2 >= Main.worldSurface * 0.800000011920929 && (
double)
num2 < Main.worldSurface * 1.100000023841858) || (Main.remixWorld && (
double)
num2 > Main.rockLayer &&
num2 < Main.maxTilesY - 350)) &&
CountNPCS(624) <= Main.rand.Next(3) && (!Main.dayTime || Main.tile[num,
num2].wall > 0) && (Main.tile[num,
num2].wall == 63 || Main.tile[num,
num2].wall == 2 || Main.tile[num,
num2].wall == 196 || Main.tile[num,
num2].wall == 197 || Main.tile[num,
num2].wall == 198 || Main.tile[num,
num2].wall == 199))
75210 {
75212 }
75213 else if (Main.hardMode &&
num3 == 70 &&
flag7)
75214 {
75216 }
75217 else if (
num3 == 70 && (
double)
num2 <= Main.worldSurface && Main.rand.Next(3) != 0)
75218 {
75219 if ((!Main.hardMode && Main.rand.Next(6) == 0) || Main.rand.Next(12) == 0)
75220 {
75222 }
75223 else if (Main.rand.Next(3) != 0)
75224 {
75226 }
75227 else if (Main.rand.Next(4) != 0)
75228 {
75230 }
75231 else if (Main.hardMode && Main.rand.Next(3) != 0)
75232 {
75234 Main.npc[
newNPC].ai[0] = num;
75236 Main.npc[
newNPC].netUpdate =
true;
75237 }
75238 else
75239 {
75241 Main.npc[
newNPC].ai[0] = num;
75243 Main.npc[
newNPC].netUpdate =
true;
75244 }
75245 }
75246 else if (
num3 == 70 && Main.hardMode && (
double)
num2 >= Main.worldSurface && Main.rand.Next(3) != 0 && (!Main.remixWorld || Main.getGoodWorld ||
num2 < Main.maxTilesY - 360))
75247 {
75248 if (Main.hardMode && Main.player[
k].RollLuck(5) == 0)
75249 {
75251 }
75252 else if ((!Main.hardMode && Main.rand.Next(4) == 0) || Main.rand.Next(8) == 0)
75253 {
75255 }
75256 else if (Main.rand.Next(4) != 0)
75257 {
75259 }
75260 else if (Main.hardMode && Main.rand.Next(3) != 0)
75261 {
75263 Main.npc[
newNPC].ai[0] = num;
75265 Main.npc[
newNPC].netUpdate =
true;
75266 }
75267 else
75268 {
75270 Main.npc[
newNPC].ai[0] = num;
75272 Main.npc[
newNPC].netUpdate =
true;
75273 }
75274 }
75275 else if (Main.player[
k].ZoneCorrupt && Main.rand.Next(
maxValue) == 0 && !
flag5)
75276 {
75278 }
75279 else if (Main.remixWorld && !Main.hardMode && (
double)
num2 > Main.worldSurface && Main.player[
k].RollLuck(100) == 0)
75280 {
75282 }
75283 else if (Main.hardMode && (
double)
num2 > Main.worldSurface && Main.player[
k].RollLuck(Main.tenthAnniversaryWorld ? 25 : 75) == 0)
75284 {
75285 newNPC = ((Main.rand.Next(2) == 0 && Main.player[
k].ZoneCorrupt && !
AnyNPCs(473)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 473) : ((Main.rand.
Next(2) == 0 && Main.player[
k].ZoneCrimson && !
AnyNPCs(474)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 474) : ((Main.rand.
Next(2) == 0 && Main.player[
k].ZoneHallow && !
AnyNPCs(475)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 475) : ((Main.tenthAnniversaryWorld && Main.rand.
Next(2) == 0 && Main.player[
k].ZoneJungle && !
AnyNPCs(476)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 476) : ((!Main.player[
k].ZoneSnow) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 85) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 629))))));
75286 }
75287 else if (Main.hardMode && Main.tile[num,
num2].wall == 2 && Main.rand.Next(20) == 0)
75288 {
75290 }
75291 else if (Main.hardMode && (
double)
num2 <= Main.worldSurface && !Main.dayTime && (Main.rand.Next(20) == 0 || (Main.rand.Next(5) == 0 && Main.moonPhase == 4)))
75292 {
75294 }
75295 else if (Main.hardMode && Main.halloween && (
double)
num2 <= Main.worldSurface && !Main.dayTime && Main.rand.Next(10) == 0)
75296 {
75298 }
75299 else if (
num49 == 60 && Main.player[
k].RollLuck(500) == 0 && !Main.dayTime)
75300 {
75302 }
75303 else if (
num49 == 60 && (
double)
num2 > Main.worldSurface && Main.rand.Next(60) == 0)
75304 {
75306 }
75307 else if ((
double)
num2 > Main.worldSurface &&
num2 < Main.maxTilesY - 210 && !Main.player[
k].ZoneSnow && !Main.player[
k].ZoneCrimson && !Main.player[
k].ZoneCorrupt && !Main.player[
k].ZoneJungle && !Main.player[
k].ZoneHallow && Main.rand.Next(8) == 0)
75308 {
75310 {
75312 }
75313 else
75314 {
75316 }
75317 }
75318 else if ((
double)
num2 > Main.worldSurface &&
num2 < Main.maxTilesY - 210 && !Main.player[
k].ZoneSnow && !Main.player[
k].ZoneCrimson && !Main.player[
k].ZoneCorrupt && !Main.player[
k].ZoneJungle && !Main.player[
k].ZoneHallow && Main.rand.Next(13) == 0)
75319 {
75321 {
75323 }
75324 else
75325 {
75327 }
75328 }
75329 else if ((
double)
num2 > Main.worldSurface && (
double)
num2 < (Main.rockLayer + (
double)Main.maxTilesY) / 2.0 && !Main.player[
k].ZoneSnow && !Main.player[
k].ZoneCrimson && !Main.player[
k].ZoneCorrupt && !Main.player[
k].ZoneHallow && Main.rand.Next(13) == 0)
75330 {
75332 }
75333 else if (
flag20 && Main.player[
k].ZoneJungle && !Main.player[
k].ZoneCrimson && !Main.player[
k].ZoneCorrupt && Main.rand.Next(7) == 0)
75334 {
75335 if (Main.dayTime && Main.time < 43200.00064373016 && Main.rand.Next(3) != 0)
75336 {
75337 switch (Main.rand.Next(5))
75338 {
75339 case 0:
75341 break;
75342 case 1:
75344 break;
75345 case 2:
75347 break;
75348 case 3:
75350 break;
75351 default:
75353 break;
75354 }
75355 }
75356 else
75357 {
75359 }
75360 }
75361 else if (
num49 == 225 && Main.rand.Next(2) == 0)
75362 {
75363 if (Main.hardMode && Main.rand.Next(4) != 0)
75364 {
75366 if (Main.rand.Next(10) == 0)
75367 {
75368 Main.npc[
newNPC].SetDefaults(-18);
75369 }
75370 if (Main.rand.Next(10) == 0)
75371 {
75372 Main.npc[
newNPC].SetDefaults(-19);
75373 }
75374 if (Main.rand.Next(10) == 0)
75375 {
75376 Main.npc[
newNPC].SetDefaults(-20);
75377 }
75378 if (Main.rand.Next(10) == 0)
75379 {
75380 Main.npc[
newNPC].SetDefaults(-21);
75381 }
75382 }
75383 else
75384 {
75385 switch (Main.rand.Next(8))
75386 {
75387 case 0:
75389 if (Main.rand.Next(4) == 0)
75390 {
75391 Main.npc[
newNPC].SetDefaults(-56);
75392 }
75393 else if (Main.rand.Next(4) == 0)
75394 {
75395 Main.npc[
newNPC].SetDefaults(-57);
75396 }
75397 break;
75398 case 1:
75400 if (Main.rand.Next(4) == 0)
75401 {
75402 Main.npc[
newNPC].SetDefaults(-58);
75403 }
75404 else if (Main.rand.Next(4) == 0)
75405 {
75406 Main.npc[
newNPC].SetDefaults(-59);
75407 }
75408 break;
75409 case 2:
75411 if (Main.rand.Next(4) == 0)
75412 {
75413 Main.npc[
newNPC].SetDefaults(-60);
75414 }
75415 else if (Main.rand.Next(4) == 0)
75416 {
75417 Main.npc[
newNPC].SetDefaults(-61);
75418 }
75419 break;
75420 case 3:
75422 if (Main.rand.Next(4) == 0)
75423 {
75424 Main.npc[
newNPC].SetDefaults(-62);
75425 }
75426 else if (Main.rand.Next(4) == 0)
75427 {
75428 Main.npc[
newNPC].SetDefaults(-63);
75429 }
75430 break;
75431 case 4:
75433 if (Main.rand.Next(4) == 0)
75434 {
75435 Main.npc[
newNPC].SetDefaults(-64);
75436 }
75437 else if (Main.rand.Next(4) == 0)
75438 {
75439 Main.npc[
newNPC].SetDefaults(-65);
75440 }
75441 break;
75442 default:
75444 if (Main.rand.Next(4) == 0)
75445 {
75446 Main.npc[
newNPC].SetDefaults(-16);
75447 }
75448 else if (Main.rand.Next(4) == 0)
75449 {
75450 Main.npc[
newNPC].SetDefaults(-17);
75451 }
75452 break;
75453 }
75454 }
75455 }
75456 else if (
num49 == 60 && Main.hardMode && Main.rand.Next(3) != 0)
75457 {
75458 if (
flag20 && !Main.dayTime && Main.rand.Next(3) == 0)
75459 {
75461 }
75462 else if (
flag20 && Main.dayTime && Main.rand.Next(4) != 0)
75463 {
75465 }
75466 else if ((
double)
num2 > Main.worldSurface && Main.rand.Next(100) == 0)
75467 {
75469 }
75470 else if ((
double)
num2 > Main.worldSurface && Main.rand.Next(5) == 0)
75471 {
75473 }
75474 else if ((
double)
num2 > Main.worldSurface && Main.rand.Next(4) != 0)
75475 {
75477 if (Main.rand.Next(10) == 0)
75478 {
75479 Main.npc[
newNPC].SetDefaults(-18);
75480 }
75481 if (Main.rand.Next(10) == 0)
75482 {
75483 Main.npc[
newNPC].SetDefaults(-19);
75484 }
75485 if (Main.rand.Next(10) == 0)
75486 {
75487 Main.npc[
newNPC].SetDefaults(-20);
75488 }
75489 if (Main.rand.Next(10) == 0)
75490 {
75491 Main.npc[
newNPC].SetDefaults(-21);
75492 }
75493 }
75494 else if (Main.rand.Next(3) == 0)
75495 {
75497 Main.npc[
newNPC].ai[0] = num;
75499 Main.npc[
newNPC].netUpdate =
true;
75500 }
75501 else
75502 {
75504 }
75505 }
75507 {
75509 }
75510 else if (
num50 == 86 && Main.rand.Next(8) != 0)
75511 {
75512 switch (Main.rand.Next(8))
75513 {
75514 case 0:
75516 if (Main.rand.Next(4) == 0)
75517 {
75518 Main.npc[
newNPC].SetDefaults(-56);
75519 }
75520 else if (Main.rand.Next(4) == 0)
75521 {
75522 Main.npc[
newNPC].SetDefaults(-57);
75523 }
75524 break;
75525 case 1:
75527 if (Main.rand.Next(4) == 0)
75528 {
75529 Main.npc[
newNPC].SetDefaults(-58);
75530 }
75531 else if (Main.rand.Next(4) == 0)
75532 {
75533 Main.npc[
newNPC].SetDefaults(-59);
75534 }
75535 break;
75536 case 2:
75538 if (Main.rand.Next(4) == 0)
75539 {
75540 Main.npc[
newNPC].SetDefaults(-60);
75541 }
75542 else if (Main.rand.Next(4) == 0)
75543 {
75544 Main.npc[
newNPC].SetDefaults(-61);
75545 }
75546 break;
75547 case 3:
75549 if (Main.rand.Next(4) == 0)
75550 {
75551 Main.npc[
newNPC].SetDefaults(-62);
75552 }
75553 else if (Main.rand.Next(4) == 0)
75554 {
75555 Main.npc[
newNPC].SetDefaults(-63);
75556 }
75557 break;
75558 case 4:
75560 if (Main.rand.Next(4) == 0)
75561 {
75562 Main.npc[
newNPC].SetDefaults(-64);
75563 }
75564 else if (Main.rand.Next(4) == 0)
75565 {
75566 Main.npc[
newNPC].SetDefaults(-65);
75567 }
75568 break;
75569 default:
75571 if (Main.rand.Next(4) == 0)
75572 {
75573 Main.npc[
newNPC].SetDefaults(-16);
75574 }
75575 else if (Main.rand.Next(4) == 0)
75576 {
75577 Main.npc[
newNPC].SetDefaults(-17);
75578 }
75579 break;
75580 }
75581 }
75582 else if (
num49 == 60 && ((!Main.remixWorld && (
double)
num2 > (Main.worldSurface + Main.rockLayer) / 2.0) || (Main.remixWorld && ((
double)
num2 < Main.rockLayer || Main.rand.Next(2) == 0))))
75583 {
75584 if (Main.rand.Next(4) == 0)
75585 {
75587 }
75588 else if (Main.rand.Next(4) == 0)
75589 {
75591 Main.npc[
newNPC].ai[0] = num;
75593 Main.npc[
newNPC].netUpdate =
true;
75594 }
75595 else
75596 {
75597 switch (Main.rand.Next(8))
75598 {
75599 case 0:
75601 if (Main.rand.Next(4) == 0)
75602 {
75603 Main.npc[
newNPC].SetDefaults(-56);
75604 }
75605 else if (Main.rand.Next(4) == 0)
75606 {
75607 Main.npc[
newNPC].SetDefaults(-57);
75608 }
75609 break;
75610 case 1:
75612 if (Main.rand.Next(4) == 0)
75613 {
75614 Main.npc[
newNPC].SetDefaults(-58);
75615 }
75616 else if (Main.rand.Next(4) == 0)
75617 {
75618 Main.npc[
newNPC].SetDefaults(-59);
75619 }
75620 break;
75621 case 2:
75623 if (Main.rand.Next(4) == 0)
75624 {
75625 Main.npc[
newNPC].SetDefaults(-60);
75626 }
75627 else if (Main.rand.Next(4) == 0)
75628 {
75629 Main.npc[
newNPC].SetDefaults(-61);
75630 }
75631 break;
75632 case 3:
75634 if (Main.rand.Next(4) == 0)
75635 {
75636 Main.npc[
newNPC].SetDefaults(-62);
75637 }
75638 else if (Main.rand.Next(4) == 0)
75639 {
75640 Main.npc[
newNPC].SetDefaults(-63);
75641 }
75642 break;
75643 case 4:
75645 if (Main.rand.Next(4) == 0)
75646 {
75647 Main.npc[
newNPC].SetDefaults(-64);
75648 }
75649 else if (Main.rand.Next(4) == 0)
75650 {
75651 Main.npc[
newNPC].SetDefaults(-65);
75652 }
75653 break;
75654 default:
75656 if (Main.rand.Next(4) == 0)
75657 {
75658 Main.npc[
newNPC].SetDefaults(-16);
75659 }
75660 else if (Main.rand.Next(4) == 0)
75661 {
75662 Main.npc[
newNPC].SetDefaults(-17);
75663 }
75664 break;
75665 }
75666 }
75667 }
75668 else if (
num49 == 60 && Main.rand.Next(4) == 0)
75669 {
75671 }
75672 else if (
num49 == 60 && Main.rand.Next(8) == 0)
75673 {
75675 Main.npc[
newNPC].ai[0] = num;
75677 Main.npc[
newNPC].netUpdate =
true;
75678 }
75680 {
75682 {
75684 }
75685 else if (Main.hardMode && Main.rand.Next(20) == 0 && !
AnyNPCs(541))
75686 {
75688 }
75689 else if (Main.hardMode && !
flag5 && Main.rand.Next(3) == 0 &&
CountNPCS(510) < 4)
75690 {
75692 }
75693 else if (!Main.hardMode ||
flag5 || Main.rand.Next(2) != 0)
75694 {
75695 newNPC = ((Main.hardMode &&
num49 == 53 && Main.rand.Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 78) : ((Main.hardMode &&
num49 == 112 && Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 79) : ((Main.hardMode &&
num49 == 234 && Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 630) : ((Main.hardMode &&
num49 == 116 && Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 80) : ((Main.rand.
Next(2) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 546) : ((Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 581) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 580)))))));
75696 }
75697 else
75698 {
75701 {
75703 }
75705 {
75707 }
75709 {
75711 }
75713 }
75714 }
75715 else if (Main.hardMode &&
num49 == 53 && Main.rand.Next(3) == 0)
75716 {
75718 }
75719 else if (Main.hardMode &&
num49 == 112 && Main.rand.Next(2) == 0)
75720 {
75722 }
75723 else if (Main.hardMode &&
num49 == 234 && Main.rand.Next(2) == 0)
75724 {
75726 }
75727 else if (Main.hardMode &&
num49 == 116 && Main.rand.Next(2) == 0)
75728 {
75730 }
75732 {
75733 if (
downedPlantBoss && (Main.remixWorld || (!Main.dayTime && Main.time < 16200.0)) &&
flag20 && Main.player[
k].RollLuck(10) == 0 && !
AnyNPCs(661))
75734 {
75736 }
75737 else if (!
flag24 ||
AnyNPCs(244) || Main.rand.Next(12) != 0)
75738 {
75740 }
75741 else
75742 {
75744 }
75745 }
75747 {
75749 }
75751 {
75752 bool flag36 = (double)
num2 >= Main.rockLayer;
75753 if (Main.remixWorld)
75754 {
75756 }
75757 if (Main.hardMode &&
flag36 && Main.rand.Next(40) == 0 && !
flag5)
75758 {
75760 }
75761 else if (Main.hardMode &&
flag36 && Main.rand.Next(5) == 0 && !
flag5)
75762 {
75764 }
75765 else if (Main.hardMode &&
flag36 && Main.rand.Next(2) == 0)
75766 {
75768 }
75769 else if (Main.hardMode && Main.rand.Next(3) == 0)
75770 {
75772 if (Main.rand.Next(3) == 0)
75773 {
75774 Main.npc[
newNPC].SetDefaults(-24);
75775 }
75776 else if (Main.rand.Next(3) == 0)
75777 {
75778 Main.npc[
newNPC].SetDefaults(-25);
75779 }
75780 }
75781 else if (Main.hardMode && (Main.rand.Next(2) == 0 || ((
double)
num2 > Main.worldSurface && !Main.remixWorld)))
75782 {
75784 }
75785 else if ((Main.tile[num,
num2].wall > 0 && Main.rand.Next(4) != 0) || Main.rand.Next(8) == 0)
75786 {
75788 }
75789 else if (Main.rand.Next(2) == 0)
75790 {
75792 }
75793 else
75794 {
75796 if (Main.rand.Next(3) == 0)
75797 {
75798 Main.npc[
newNPC].SetDefaults(-22);
75799 }
75800 else if (Main.rand.Next(3) == 0)
75801 {
75802 Main.npc[
newNPC].SetDefaults(-23);
75803 }
75804 }
75805 }
75807 {
75808 bool flag37 = (double)
num2 >= Main.rockLayer;
75809 if (Main.remixWorld)
75810 {
75812 }
75813 if (Main.hardMode &&
flag37 && Main.rand.Next(40) == 0 && !
flag5)
75814 {
75816 }
75817 else if (Main.hardMode &&
flag37 && Main.rand.Next(3) == 0)
75818 {
75820 Main.npc[
newNPC].ai[0] = num;
75822 Main.npc[
newNPC].netUpdate =
true;
75823 }
75824 else if (Main.hardMode && Main.rand.Next(3) == 0)
75825 {
75827 }
75828 else if (Main.hardMode && (Main.rand.Next(2) == 0 ||
flag37))
75829 {
75831 }
75832 else
75833 {
75835 if (Main.rand.Next(3) == 0)
75836 {
75837 Main.npc[
newNPC].SetDefaults(-11);
75838 }
75839 else if (Main.rand.Next(3) == 0)
75840 {
75841 Main.npc[
newNPC].SetDefaults(-12);
75842 }
75843 }
75844 }
75846 {
75847 bool flag38 = (float)
Math.
Abs(num - Main.maxTilesX / 2) / (float)(Main.maxTilesX / 2) > 0.33f;
75849 {
75851 }
75852 if (Main.player[
k].ZoneGraveyard && !
flag7 && (
num3 == 2 ||
num3 == 477) && Main.rand.Next(10) == 0)
75853 {
75854 if (Main.rand.Next(2) == 0)
75855 {
75857 }
75858 else
75859 {
75861 }
75862 }
75863 else if (Main.player[
k].ZoneSnow && Main.hardMode &&
flag24 && !
AnyNPCs(243) && Main.player[
k].RollLuck(20) == 0)
75864 {
75866 }
75867 else if (!Main.player[
k].ZoneSnow && Main.hardMode &&
flag24 &&
CountNPCS(250) < 2 && Main.rand.Next(10) == 0)
75868 {
75870 }
75872 {
75874 }
75875 else if (!Main.player[
k].ZoneGraveyard && Main.dayTime)
75876 {
75879 {
75881 {
75882 if (Main.rand.Next(2) == 0)
75883 {
75885 }
75886 else
75887 {
75889 }
75890 }
75892 {
75894 if (Main.rand.Next(4) == 0)
75895 {
75897 }
75898 if (Main.rand.Next(4) == 0)
75899 {
75901 }
75902 }
75904 {
75906 {
75908 }
75909 else
75910 {
75912 }
75913 if (Main.rand.Next(4) == 0)
75914 {
75916 }
75917 if (Main.rand.Next(4) == 0)
75918 {
75920 }
75921 }
75923 {
75925 {
75927 }
75928 else
75929 {
75931 }
75932 if (Main.rand.Next(3) != 0)
75933 {
75935 }
75936 if (Main.rand.Next(2) == 0)
75937 {
75939 }
75940 if (Main.rand.Next(3) == 0)
75941 {
75943 }
75944 if (Main.rand.Next(4) == 0)
75945 {
75947 }
75948 }
75950 {
75952 }
75954 {
75956 }
75957 else if (Main.halloween && Main.rand.Next(3) != 0)
75958 {
75960 }
75961 else if (Main.xMas && Main.rand.Next(3) != 0)
75962 {
75964 }
75966 {
75968 }
75969 else if (Main.rand.Next(3) == 0 && (
double)
num2 <= Main.worldSurface)
75970 {
75972 }
75973 else
75974 {
75976 }
75977 }
75978 else if (!
flag7 && num >
WorldGen.beachDistance && num < Main.maxTilesX -
WorldGen.beachDistance && Main.rand.Next(12) == 0 &&
num49 == 53)
75979 {
75981 }
75983 {
75985 {
75987 }
75988 else
75989 {
75991 }
75992 if (Main.rand.Next(3) == 0)
75993 {
75995 }
75996 if (Main.rand.Next(3) == 0)
75997 {
75999 }
76000 }
76002 {
76003 int num101 = Main.rand.Next(4);
76005 {
76007 }
76008 else
76009 {
76011 {
76012 case 0:
76014 break;
76015 case 1:
76017 break;
76018 default:
76020 break;
76021 }
76022 }
76023 }
76025 {
76026 int num102 = Main.rand.Next(4);
76028 {
76030 }
76031 else
76032 {
76034 {
76035 case 0:
76037 break;
76038 case 1:
76040 break;
76041 default:
76043 break;
76044 }
76045 }
76046 }
76048 {
76050 }
76052 {
76053 if (!
flag7 && Main.rand.Next(10) == 0)
76054 {
76056 }
76058 {
76062 {
76064 {
76066 {
76069 {
76071 }
76072 break;
76073 }
76074 }
76076 {
76078 }
76080 {
76082 }
76083 }
76084 if (Main.rand.Next(10) == 0)
76085 {
76086 int num106 = Main.rand.Next(3);
76088 {
76090 }
76092 {
76094 }
76096 {
76099 {
76101 }
76103 {
76105 }
76106 else
76107 {
76109 }
76110 }
76111 }
76112 }
76113 }
76115 {
76117 }
76119 {
76121 }
76122 else if (!
flag7 && (
num100 > Main.maxTilesX / 3 || Main.remixWorld) && (Main.rand.Next(15) == 0 || (!
downedGoblins &&
WorldGen.shadowOrbSmashed && Main.rand.Next(7) == 0)))
76123 {
76125 }
76126 else if (Main.raining && Main.rand.Next(4) == 0)
76127 {
76129 }
76130 else if (!
flag7 && Main.raining && Main.rand.Next(2) == 0)
76131 {
76133 }
76135 {
76137 }
76139 {
76141 }
76143 {
76146 {
76147 case 60:
76148 Main.npc[
newNPC].SetDefaults(-10);
76149 break;
76150 case 147:
76151 case 161:
76152 Main.npc[
newNPC].SetDefaults(147);
76153 break;
76154 default:
76155 if (Main.halloween && Main.rand.Next(3) != 0)
76156 {
76157 Main.npc[
newNPC].SetDefaults(302);
76158 }
76159 else if (Main.xMas && Main.rand.Next(3) != 0)
76160 {
76161 Main.npc[
newNPC].SetDefaults(Main.rand.Next(333, 337));
76162 }
76163 else if (Main.rand.Next(3) == 0 || (
num100 < 200 && !Main.expertMode))
76164 {
76165 Main.npc[
newNPC].SetDefaults(-3);
76166 }
76167 else if (Main.rand.Next(10) == 0 && (
num100 > 400 || Main.expertMode))
76168 {
76169 Main.npc[
newNPC].SetDefaults(-7);
76170 }
76171 break;
76172 }
76173 }
76174 }
76175 else
76176 {
76178 {
76181 {
76183 }
76186 {
76188 }
76190 {
76192 }
76194 {
76196 }
76198 {
76200 }
76201 }
76202 else if ((Main.halloween || Main.player[
k].ZoneGraveyard) && Main.rand.Next(12) == 0)
76203 {
76205 }
76206 else if (Main.player[
k].ZoneGraveyard && Main.rand.Next(30) == 0)
76207 {
76209 }
76210 else if (Main.player[
k].ZoneGraveyard && Main.hardMode && (
double)
num2 <= Main.worldSurface && Main.rand.Next(10) == 0)
76211 {
76213 }
76214 else if (Main.rand.Next(6) == 0 || (Main.moonPhase == 4 && Main.rand.Next(2) == 0))
76215 {
76216 if (Main.hardMode && Main.rand.Next(3) == 0)
76217 {
76219 }
76220 else if (Main.halloween && Main.rand.Next(2) == 0)
76221 {
76223 }
76224 else if (Main.rand.Next(2) == 0)
76225 {
76227 if (Main.rand.Next(4) == 0)
76228 {
76229 Main.npc[
newNPC].SetDefaults(-43);
76230 }
76231 }
76232 else
76233 {
76234 switch (Main.rand.Next(5))
76235 {
76236 case 0:
76238 if (Main.rand.Next(3) == 0)
76239 {
76240 Main.npc[
newNPC].SetDefaults(-38);
76241 }
76242 break;
76243 case 1:
76245 if (Main.rand.Next(3) == 0)
76246 {
76247 Main.npc[
newNPC].SetDefaults(-39);
76248 }
76249 break;
76250 case 2:
76252 if (Main.rand.Next(3) == 0)
76253 {
76254 Main.npc[
newNPC].SetDefaults(-40);
76255 }
76256 break;
76257 case 3:
76259 if (Main.rand.Next(3) == 0)
76260 {
76261 Main.npc[
newNPC].SetDefaults(-41);
76262 }
76263 break;
76264 case 4:
76266 if (Main.rand.Next(3) == 0)
76267 {
76268 Main.npc[
newNPC].SetDefaults(-42);
76269 }
76270 break;
76271 }
76272 }
76273 }
76274 else if (Main.hardMode && Main.rand.Next(50) == 0 && Main.bloodMoon && !
AnyNPCs(109))
76275 {
76277 }
76278 else if (Main.rand.Next(250) == 0 && (Main.bloodMoon || Main.player[
k].ZoneGraveyard))
76279 {
76281 }
76282 else if (Main.rand.Next(250) == 0 && (Main.bloodMoon || Main.player[
k].ZoneGraveyard))
76283 {
76285 }
76286 else if (!Main.dayTime && Main.moonPhase == 0 && Main.hardMode && Main.rand.Next(3) != 0)
76287 {
76289 }
76290 else if (!Main.dayTime && Main.hardMode && Main.rand.Next(3) == 0)
76291 {
76293 }
76294 else if (Main.bloodMoon && Main.rand.Next(5) < 2)
76295 {
76297 }
76299 {
76300 newNPC = ((!Main.player[
k].ZoneGraveyard && Main.hardMode && Main.rand.Next(4) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 169) : ((!Main.player[
k].ZoneGraveyard && Main.hardMode && Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 155) : ((!Main.expertMode || Main.rand.
Next(2) != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 161) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 431))));
76301 }
76302 else if (Main.raining && Main.rand.Next(2) == 0)
76303 {
76305 if (Main.rand.Next(3) == 0)
76306 {
76307 if (Main.rand.Next(2) == 0)
76308 {
76309 Main.npc[
newNPC].SetDefaults(-54);
76310 }
76311 else
76312 {
76313 Main.npc[
newNPC].SetDefaults(-55);
76314 }
76315 }
76316 }
76317 else
76318 {
76319 int num109 = Main.rand.Next(7);
76322 if (Main.player[
k].statLifeMax <= 100)
76323 {
76325 num110 -= Main.CurrentFrameFlags.ActivePlayersCount / 2;
76327 {
76329 }
76330 }
76331 if (Main.player[
k].ZoneGraveyard && Main.rand.Next(
maxValue4) == 0)
76332 {
76334 }
76335 else if (Main.rand.Next(
num110) == 0)
76336 {
76338 }
76339 else if (Main.halloween && Main.rand.Next(2) == 0)
76340 {
76342 }
76343 else if (Main.xMas && Main.rand.Next(2) == 0)
76344 {
76346 }
76347 else if (
num109 == 0 && Main.expertMode && Main.rand.Next(3) == 0)
76348 {
76350 }
76351 else if (
num109 == 2 && Main.expertMode && Main.rand.Next(3) == 0)
76352 {
76354 }
76355 else if (
num109 == 3 && Main.expertMode && Main.rand.Next(3) == 0)
76356 {
76358 }
76359 else if (
num109 == 4 && Main.expertMode && Main.rand.Next(3) == 0)
76360 {
76362 }
76363 else if (
num109 == 5 && Main.expertMode && Main.rand.Next(3) == 0)
76364 {
76366 }
76367 else if (
num109 == 6 && Main.expertMode && Main.rand.Next(3) == 0)
76368 {
76370 }
76371 else
76372 {
76374 {
76375 case 0:
76377 if (Main.rand.Next(3) == 0)
76378 {
76379 if (Main.rand.Next(2) == 0)
76380 {
76381 Main.npc[
newNPC].SetDefaults(-26);
76382 }
76383 else
76384 {
76385 Main.npc[
newNPC].SetDefaults(-27);
76386 }
76387 }
76388 break;
76389 case 1:
76391 if (Main.rand.Next(3) == 0)
76392 {
76393 if (Main.rand.Next(2) == 0)
76394 {
76395 Main.npc[
newNPC].SetDefaults(-28);
76396 }
76397 else
76398 {
76399 Main.npc[
newNPC].SetDefaults(-29);
76400 }
76401 }
76402 break;
76403 case 2:
76405 if (Main.rand.Next(3) == 0)
76406 {
76407 if (Main.rand.Next(2) == 0)
76408 {
76409 Main.npc[
newNPC].SetDefaults(-30);
76410 }
76411 else
76412 {
76413 Main.npc[
newNPC].SetDefaults(-31);
76414 }
76415 }
76416 break;
76417 case 3:
76419 if (Main.rand.Next(3) == 0)
76420 {
76421 if (Main.rand.Next(2) == 0)
76422 {
76423 Main.npc[
newNPC].SetDefaults(-32);
76424 }
76425 else
76426 {
76427 Main.npc[
newNPC].SetDefaults(-33);
76428 }
76429 }
76430 break;
76431 case 4:
76433 if (Main.rand.Next(3) == 0)
76434 {
76435 if (Main.rand.Next(2) == 0)
76436 {
76437 Main.npc[
newNPC].SetDefaults(-34);
76438 }
76439 else
76440 {
76441 Main.npc[
newNPC].SetDefaults(-35);
76442 }
76443 }
76444 break;
76445 case 5:
76447 if (Main.rand.Next(3) == 0)
76448 {
76449 if (Main.rand.Next(2) == 0)
76450 {
76451 Main.npc[
newNPC].SetDefaults(-36);
76452 }
76453 else
76454 {
76455 Main.npc[
newNPC].SetDefaults(-37);
76456 }
76457 }
76458 break;
76459 case 6:
76461 if (Main.rand.Next(3) == 0)
76462 {
76463 if (Main.rand.Next(2) == 0)
76464 {
76465 Main.npc[
newNPC].SetDefaults(-44);
76466 }
76467 else
76468 {
76469 Main.npc[
newNPC].SetDefaults(-45);
76470 }
76471 }
76472 break;
76473 }
76474 }
76475 }
76476 if (Main.player[
k].ZoneGraveyard)
76477 {
76479 }
76480 }
76481 }
76483 {
76484 if (!
flag5 && Main.rand.Next(50) == 0 && !Main.player[
k].ZoneSnow)
76485 {
76486 newNPC = ((!Main.hardMode) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 10, 1) : ((Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 10, 1) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 95, 1)));
76487 }
76488 else if (Main.hardMode && Main.rand.Next(3) == 0)
76489 {
76491 }
76492 else if (Main.hardMode && Main.rand.Next(4) != 0)
76493 {
76495 }
76496 else if (Main.remixWorld)
76497 {
76498 if (
num3 == 147 ||
num3 == 161 ||
num3 == 163 ||
num3 == 164 ||
num3 == 162 || Main.player[
k].ZoneSnow)
76499 {
76501 }
76502 else
76503 {
76505 if (Main.rand.Next(3) == 0)
76506 {
76507 Main.npc[
newNPC].SetDefaults(-9);
76508 }
76509 else
76510 {
76511 Main.npc[
newNPC].SetDefaults(-8);
76512 }
76513 }
76514 }
76515 else if (
num49 == 147 ||
num49 == 161 || Main.player[
k].ZoneSnow)
76516 {
76518 }
76519 else
76520 {
76522 if (Main.rand.Next(5) == 0)
76523 {
76524 Main.npc[
newNPC].SetDefaults(-9);
76525 }
76526 else if (Main.rand.Next(2) == 0)
76527 {
76528 Main.npc[
newNPC].SetDefaults(1);
76529 }
76530 else
76531 {
76532 Main.npc[
newNPC].SetDefaults(-8);
76533 }
76534 }
76535 }
76536 else if (
num2 > Main.maxTilesY - 190)
76537 {
76538 newNPC = ((Main.remixWorld && (double)num > (
double)Main.maxTilesX * 0.38 + 50.0 && (double)num < (
double)Main.maxTilesX * 0.62) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 59) : ((Main.hardMode && !
savedTaxCollector && Main.rand.
Next(20) == 0 && !
AnyNPCs(534)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 534) : ((Main.rand.
Next(8) == 0) ?
SpawnNPC_SpawnLavaBaitCritters(num,
num2) : ((Main.rand.
Next(40) == 0 && !
AnyNPCs(39)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 39, 1) : ((Main.rand.
Next(14) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 24) : ((Main.rand.
Next(7) == 0) ? ((Main.rand.
Next(10) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 66) : ((!Main.hardMode || !
downedMechBossAny || Main.rand.
Next(5) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 62) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 156))) : ((Main.rand.
Next(3) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 59) : ((!Main.hardMode || !
downedMechBossAny || Main.rand.
Next(5) == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 60) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 151)))))))));
76539 }
76541 {
76543 }
76544 else if (Main.rand.Next(60) == 0)
76545 {
76547 }
76548 else if ((
num49 == 116 ||
num49 == 117 ||
num49 == 164) && Main.hardMode && !
flag5 && Main.rand.Next(8) == 0)
76549 {
76551 }
76552 else if ((
num3 == 147 ||
num3 == 161 ||
num3 == 162 ||
num3 == 163 ||
num3 == 164 ||
num3 == 200) && !
flag5 && Main.hardMode && Main.player[
k].ZoneCorrupt && Main.rand.Next(30) == 0)
76553 {
76555 }
76556 else if ((
num3 == 147 ||
num3 == 161 ||
num3 == 162 ||
num3 == 163 ||
num3 == 164 ||
num3 == 200) && !
flag5 && Main.hardMode && Main.player[
k].ZoneHallow && Main.rand.Next(30) == 0)
76557 {
76559 }
76560 else if ((
num3 == 147 ||
num3 == 161 ||
num3 == 162 ||
num3 == 163 ||
num3 == 164 ||
num3 == 200) && !
flag5 && Main.hardMode && Main.player[
k].ZoneCrimson && Main.rand.Next(30) == 0)
76561 {
76563 }
76564 else if (Main.hardMode && Main.player[
k].ZoneSnow && Main.rand.Next(10) == 0)
76565 {
76567 }
76568 else if (!
flag5 && Main.rand.Next(100) == 0 && !Main.player[
k].ZoneHallow)
76569 {
76570 newNPC = (Main.hardMode ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 95, 1) : ((!Main.player[
k].ZoneSnow) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 10, 1) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 185)));
76571 }
76572 else if (Main.player[
k].ZoneSnow && Main.rand.Next(20) == 0)
76573 {
76575 }
76576 else if ((!Main.hardMode && Main.rand.Next(10) == 0) || (Main.hardMode && Main.rand.Next(20) == 0))
76577 {
76578 if (Main.player[
k].ZoneSnow)
76579 {
76581 }
76582 else if (Main.rand.Next(3) == 0)
76583 {
76585 Main.npc[
newNPC].SetDefaults(-6);
76586 }
76587 else
76588 {
76590 }
76591 }
76592 else if (!Main.hardMode && Main.rand.Next(4) == 0)
76593 {
76595 if (Main.player[
k].ZoneJungle)
76596 {
76597 Main.npc[
newNPC].SetDefaults(-10);
76598 }
76599 else if (Main.player[
k].ZoneSnow)
76600 {
76601 Main.npc[
newNPC].SetDefaults(184);
76602 }
76603 else
76604 {
76605 Main.npc[
newNPC].SetDefaults(-6);
76606 }
76607 }
76608 else if (Main.rand.Next(2) != 0)
76609 {
76610 newNPC = ((Main.hardMode && (Main.player[
k].ZoneHallow & (Main.rand.Next(2) == 0))) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 138) : (Main.player[
k].ZoneJungle ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 51) : ((Main.player[
k].ZoneGlowshroom && (
num3 == 70 ||
num3 == 190)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 634) : ((Main.hardMode && Main.player[
k].ZoneHallow) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 137) : ((Main.hardMode && Main.rand.
Next(6) > 0) ? ((Main.rand.
Next(3) != 0 || (
num3 != 147 &&
num3 != 161 &&
num3 != 162)) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 93) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 150)) : ((
num3 != 147 &&
num3 != 161 &&
num3 != 162) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 49) : ((!Main.hardMode) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 150) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 169))))))));
76611 }
76612 else if (Main.rand.Next(35) == 0 &&
CountNPCS(453) == 0)
76613 {
76615 }
76616 else if (Main.rand.Next(80) == 0)
76617 {
76619 }
76620 else if (Main.hardMode && (Main.remixWorld || (
double)
num2 > (Main.rockLayer + (
double)Main.maxTilesY) / 2.0) && Main.rand.Next(200) == 0)
76621 {
76623 }
76624 else if ((Main.remixWorld || (
double)
num2 > (Main.rockLayer + (
double)Main.maxTilesY) / 2.0) && (Main.rand.Next(200) == 0 || (Main.rand.Next(50) == 0 && (Main.player[
k].armor[1].type == 4256 || (Main.player[
k].armor[1].type >= 1282 && Main.player[
k].armor[1].type <= 1287)) && Main.player[
k].armor[0].type != 238)))
76625 {
76627 }
76628 else if (
flag10 && Main.rand.Next(4) != 0)
76629 {
76631 }
76632 else if (
flag9 && Main.rand.Next(5) != 0)
76633 {
76635 }
76636 else if (Main.hardMode && Main.rand.Next(10) != 0)
76637 {
76638 if (Main.rand.Next(2) != 0)
76639 {
76641 }
76642 else if (Main.player[
k].ZoneSnow)
76643 {
76645 }
76646 else
76647 {
76649 if ((Main.remixWorld || (
double)
num2 > (Main.rockLayer + (
double)Main.maxTilesY) / 2.0) && Main.rand.Next(5) == 0)
76650 {
76651 Main.npc[
newNPC].SetDefaults(-15);
76652 }
76653 }
76654 }
76655 else if (!
flag5 && (Main.halloween || Main.player[
k].ZoneGraveyard) && Main.rand.Next(30) == 0)
76656 {
76658 }
76659 else if (Main.rand.Next(20) == 0)
76660 {
76662 }
76664 {
76666 }
76667 else if (Main.player[
k].ZoneSnow)
76668 {
76670 }
76671 else if (Main.rand.Next(3) == 0)
76672 {
76674 }
76675 else if (Main.player[
k].ZoneGlowshroom && (
num3 == 70 ||
num3 == 190))
76676 {
76678 }
76679 else if (Main.halloween && Main.rand.Next(2) == 0)
76680 {
76682 }
76683 else if (Main.expertMode && Main.rand.Next(3) == 0)
76684 {
76685 int num111 = Main.rand.Next(4);
76686 newNPC = ((
num111 == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 449) : ((
num111 == 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 450) : ((
num111 != 0) ?
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 452) :
NewNPC(
GetSpawnSourceForNaturalSpawn(), num * 16 + 8,
num2 * 16, 451))));
76687 }
76688 else
76689 {
76690 switch (Main.rand.Next(4))
76691 {
76692 case 0:
76694 if (Main.rand.Next(3) == 0)
76695 {
76696 if (Main.rand.Next(2) == 0)
76697 {
76698 Main.npc[
newNPC].SetDefaults(-47);
76699 }
76700 else
76701 {
76702 Main.npc[
newNPC].SetDefaults(-46);
76703 }
76704 }
76705 break;
76706 case 1:
76708 if (Main.rand.Next(3) == 0)
76709 {
76710 if (Main.rand.Next(2) == 0)
76711 {
76712 Main.npc[
newNPC].SetDefaults(-49);
76713 }
76714 else
76715 {
76716 Main.npc[
newNPC].SetDefaults(-48);
76717 }
76718 }
76719 break;
76720 case 2:
76722 if (Main.rand.Next(3) == 0)
76723 {
76724 if (Main.rand.Next(2) == 0)
76725 {
76726 Main.npc[
newNPC].SetDefaults(-51);
76727 }
76728 else
76729 {
76730 Main.npc[
newNPC].SetDefaults(-50);
76731 }
76732 }
76733 break;
76734 case 3:
76736 if (Main.rand.Next(3) == 0)
76737 {
76738 if (Main.rand.Next(2) == 0)
76739 {
76740 Main.npc[
newNPC].SetDefaults(-53);
76741 }
76742 else
76743 {
76744 Main.npc[
newNPC].SetDefaults(-52);
76745 }
76746 }
76747 break;
76748 }
76749 }
76750 if (Main.npc[
newNPC].type == 1 && Main.player[
k].RollLuck(180) == 0)
76751 {
76752 Main.npc[
newNPC].SetDefaults(-4);
76753 }
76754 if (Main.tenthAnniversaryWorld && Main.npc[
newNPC].type == 1 && Main.player[
k].RollLuck(180) == 0)
76755 {
76756 Main.npc[
newNPC].SetDefaults(667);
76757 }
76758 if (Main.netMode == 2 &&
newNPC < 200)
76759 {
76760 NetMessage.SendData(23, -1, -1,
null,
newNPC);
76761 }
76762 break;
76763 }
76764 }
static double Abs(double value)
static readonly CreativePowerManager Instance
static bool ReadyToFindBartender
static void SpawnNPC(ref int newNPC)
static bool[] AllowsUndergroundDesertEnemiesToSpawn
static void SpawnNPC_SpawnFrog(int spawnTileX, int spawnTileY, int plr)
static CoinLossRevengeSystem RevengeManager
static int CountNPCS(int Type)
static int stinkBugChance
static void ResetRemixHax()
static bool downedMechBoss2
static int goldCritterChance
static bool unlockedSlimePurpleSpawn
static bool NearSpikeBall(int x, int y)
static bool savedTaxCollector
static int MoonLordFightingDistance
static int SpawnNPC_SpawnLavaBaitCritters(int spawnTileX, int spawnTileY)
static int butterflyChance
static readonly int AFKTimeNeededForNoWorms
static bool downedMechBossAny
static int[,] cavernMonsterType
static int SpawnNPC_TryFindingProperGroundTileType(int spawnTileType, int x, int y)
static int defaultSpawnRate
static bool FindCattailTop(int landX, int landY, out int cattailX, out int cattailY)
static bool downedMechBoss3
static void SlimeRainSpawns(int plr)
static bool AnyDanger(bool quickBossNPCCheck=false, bool ignorePillarsAndMoonlordCountdown=false)
static bool AnyNPCs(int Type)
static int SpawnNPC_GetGemBunnyToSpawn()
static bool SpawnNPC_CheckToSpawnUndergroundFairy(int spawnTileX, int spawnTileY, int plr)
static int RollDragonflyType(int tileType=2)
static bool unlockedSlimeOldSpawn
static bool downedGoblins
static bool Spawning_SandstoneCheck(int x, int y)
static int NewNPC(IEntitySource source, int X, int Y, int Type, int Start=0, float ai0=0f, float ai1=0f, float ai2=0f, float ai3=0f, int Target=255)
static void SpawnOnPlayer(int plr, int Type)
static int fireFlyFriendly
static bool downedGolemBoss
static bool downedMartians
static int SpawnNPC_GetGemSquirrelToSpawn()
static bool downedPlantBoss
static bool savedBartender
static bool TooWindyForButterflies
static int defaultMaxSpawns
static IEntitySource GetSpawnSourceForNaturalSpawn()
static bool SpawnTileOrAboveHasAnyWallInSet(int x, int y, bool[] wallTypes)
static bool downedMechBoss1
static bool SpawnNPC_CheckToSpawnRockGolem(int spawnTileX, int spawnTileY, int plr, int tileType)
static int fireFlyMultiple