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

◆ PlaceThing_Walls_FillEmptySpace()

void Terraria.Player.PlaceThing_Walls_FillEmptySpace ( )
inlineprivate

Definition at line 37443 of file Player.cs.

37444 {
37445 if (inventory[selectedItem].stack <= 1)
37446 {
37447 return;
37448 }
37449 int createWall = inventory[selectedItem].createWall;
37450 for (int i = 0; i < 4; i++)
37451 {
37452 int num = tileTargetX;
37453 int num2 = tileTargetY;
37454 if (i == 0)
37455 {
37456 num--;
37457 }
37458 if (i == 1)
37459 {
37460 num++;
37461 }
37462 if (i == 2)
37463 {
37464 num2--;
37465 }
37466 if (i == 3)
37467 {
37468 num2++;
37469 }
37470 if (Main.tile[num, num2].wall != 0)
37471 {
37472 continue;
37473 }
37474 int num3 = 0;
37475 for (int j = 0; j < 4; j++)
37476 {
37477 int num4 = num;
37478 int num5 = num2;
37479 if (j == 0)
37480 {
37481 num4--;
37482 }
37483 if (j == 1)
37484 {
37485 num4++;
37486 }
37487 if (j == 2)
37488 {
37489 num5--;
37490 }
37491 if (j == 3)
37492 {
37493 num5++;
37494 }
37495 if (Main.tile[num4, num5].wall == createWall)
37496 {
37497 num3++;
37498 }
37499 }
37500 if (num3 != 4)
37501 {
37502 continue;
37503 }
37504 WorldGen.PlaceWall(num, num2, createWall);
37505 if (Main.tile[num, num2].wall == createWall)
37506 {
37508 if (inventory[selectedItem].stack == 0)
37509 {
37511 }
37512 if (Main.netMode == 1)
37513 {
37514 NetMessage.SendData(17, -1, -1, null, 3, num, num2, createWall);
37515 }
37516 if (autoPaint && builderAccStatus[3] == 0)
37517 {
37519 }
37520 }
37521 }
37522 }
int stack
Definition Item.cs:149
int createWall
Definition Item.cs:163
void SetDefaults(int Type=0)
Definition Item.cs:47332
void TryPainting(int x, int y, bool paintingAWall=false, bool applyItemAnimation=true)
Definition Player.cs:39598
static int tileTargetY
Definition Player.cs:2085
static int tileTargetX
Definition Player.cs:2083
int[] builderAccStatus
Definition Player.cs:599
Item[] inventory
Definition Player.cs:1257

References Terraria.Item.createWall, Terraria.Main.netMode, Terraria.WorldGen.PlaceWall(), Terraria.NetMessage.SendData(), Terraria.Item.SetDefaults(), Terraria.Item.stack, and Terraria.Main.tile.