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

◆ CheckWoman()

static void Terraria.WorldGen.CheckWoman ( int i,
int j )
inlinestatic

Definition at line 37498 of file WorldGen.cs.

37499 {
37500 if (destroyObject)
37501 {
37502 return;
37503 }
37504 int num = i;
37505 int num2 = j - Main.tile[i, j].frameY / 18;
37506 int num3;
37507 for (num3 = Main.tile[i, j].frameX; num3 >= 100; num3 -= 100)
37508 {
37509 }
37510 while (num3 >= 36)
37511 {
37512 num3 -= 36;
37513 }
37514 num -= num3 / 18;
37515 bool flag = false;
37516 for (int k = 0; k <= 1; k++)
37517 {
37518 for (int l = 0; l <= 2; l++)
37519 {
37520 int num4 = num + k;
37521 int num5 = num2 + l;
37522 int num6;
37523 for (num6 = Main.tile[num4, num5].frameX; num6 >= 100; num6 -= 100)
37524 {
37525 }
37526 if (num6 >= 36)
37527 {
37528 num6 -= 36;
37529 }
37530 if (!Main.tile[num4, num5].active() || Main.tile[num4, num5].type != 269 || Main.tile[num4, num5].frameY != l * 18 || num6 != k * 18)
37531 {
37532 flag = true;
37533 }
37534 }
37535 }
37536 if (!SolidTileAllowBottomSlope(num, num2 + 3) || !SolidTileAllowBottomSlope(num + 1, num2 + 3))
37537 {
37538 flag = true;
37539 }
37540 if (!flag)
37541 {
37542 return;
37543 }
37544 destroyObject = true;
37545 Item.NewItem(GetItemSource_FromTileBreak(i, j), i * 16, j * 16, 32, 32, 1989);
37546 for (int m = 0; m <= 1; m++)
37547 {
37548 for (int n = 0; n <= 2; n++)
37549 {
37550 int num7 = num + m;
37551 int num8 = num2 + n;
37552 if (Main.tile[num7, num8].active() && Main.tile[num7, num8].type == 269)
37553 {
37554 KillTile(num7, num8);
37555 }
37556 }
37557 }
37558 destroyObject = false;
37559 }
static bool destroyObject
Definition WorldGen.cs:1020
static void KillTile(int i, int j, bool fail=false, bool effectOnly=false, bool noItem=false)
static bool SolidTileAllowBottomSlope(int i, int j)
static IEntitySource GetItemSource_FromTileBreak(int x, int y)

References Terraria.Item.NewItem(), and Terraria.Main.tile.