Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ StartRoomCheck()

static bool Terraria.WorldGen.StartRoomCheck ( int x,
int y )
inlinestatic

Definition at line 2581 of file WorldGen.cs.

2582 {
2583 roomHasStinkbug = false;
2584 roomHasEchoStinkbug = false;
2585 roomX1 = x;
2586 roomX2 = x;
2587 roomY1 = y;
2588 roomY2 = y;
2589 numRoomTiles = 0;
2591 for (int i = 0; i < TileID.Count; i++)
2592 {
2593 houseTile[i] = false;
2594 }
2595 canSpawn = true;
2596 if (Main.tile[x, y].nactive() && Main.tileSolid[Main.tile[x, y].type])
2597 {
2598 roomCheckFailureReason = TownNPCRoomCheckFailureReason.RoomCheckStartedInASolidTile;
2599 canSpawn = false;
2600 return false;
2601 }
2603 CheckRoom(x, y);
2604 if (!canSpawn)
2605 {
2606 return false;
2607 }
2608 if (numRoomTiles < 60)
2609 {
2611 canSpawn = false;
2612 return false;
2613 }
2614 if (canSpawn)
2615 {
2616 return true;
2617 }
2618 return false;
2619 }
static readonly ushort Count
Definition TileID.cs:1698
static void CheckRoom(int x, int y)
Definition WorldGen.cs:2621
static int roomCeilingsCount
Definition WorldGen.cs:1052
static int roomY2
Definition WorldGen.cs:1064
static int roomX2
Definition WorldGen.cs:1060
static bool roomHasEchoStinkbug
Definition WorldGen.cs:1090
static bool roomHasStinkbug
Definition WorldGen.cs:1088
static bool canSpawn
Definition WorldGen.cs:1066
static TownNPCRoomCheckFailureReason roomCheckFailureReason
Definition WorldGen.cs:1106
static bool[] houseTile
Definition WorldGen.cs:1068
static int roomY1
Definition WorldGen.cs:1062
static int roomX1
Definition WorldGen.cs:1058
static int numRoomTiles
Definition WorldGen.cs:1046

References Terraria.WorldGen.canSpawn, Terraria.WorldGen.CheckRoom(), Terraria.ID.TileID.Count, Terraria.WorldGen.houseTile, Terraria.WorldGen.numRoomTiles, Terraria.WorldGen.roomCeilingsCount, Terraria.WorldGen.roomCheckFailureReason, Terraria.WorldGen.roomHasEchoStinkbug, Terraria.WorldGen.roomHasStinkbug, Terraria.WorldGen.roomX1, Terraria.WorldGen.roomX2, Terraria.WorldGen.roomY1, Terraria.WorldGen.roomY2, Terraria.Main.tile, and Terraria.Main.tileSolid.

Referenced by Terraria.Player.CheckSpawn_Internal(), Terraria.WorldGen.MoveTownNPC(), Terraria.WorldGen.QuickFindHome(), and Terraria.WorldGen.SpawnTownNPC().