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

◆ PlaceThing_XMasTreeTops()

void Terraria.Player.PlaceThing_XMasTreeTops ( )
inlineprivate

Definition at line 39361 of file Player.cs.

39362 {
39363 if (inventory[selectedItem].type < 1874 || inventory[selectedItem].type > 1905 || !Main.tile[tileTargetX, tileTargetY].active() || Main.tile[tileTargetX, tileTargetY].type != 171 || !(position.X / 16f - (float)tileRangeX - (float)inventory[selectedItem].tileBoost - (float)blockRange <= (float)tileTargetX) || !((position.X + (float)width) / 16f + (float)tileRangeX + (float)inventory[selectedItem].tileBoost - 1f + (float)blockRange >= (float)tileTargetX) || !(position.Y / 16f - (float)tileRangeY - (float)inventory[selectedItem].tileBoost - (float)blockRange <= (float)tileTargetY) || !((position.Y + (float)height) / 16f + (float)tileRangeY + (float)inventory[selectedItem].tileBoost - 2f + (float)blockRange >= (float)tileTargetY) || !ItemTimeIsZero || itemAnimation <= 0 || !controlUseItem)
39364 {
39365 return;
39366 }
39368 if (type >= 1874 && type <= 1877)
39369 {
39370 type -= 1873;
39371 if (WorldGen.checkXmasTreeDrop(tileTargetX, tileTargetY, 0) != type)
39372 {
39374 WorldGen.dropXmasTree(tileTargetX, tileTargetY, 0);
39375 WorldGen.setXmasTree(tileTargetX, tileTargetY, 0, type);
39376 int num = tileTargetX;
39377 int num2 = tileTargetY;
39378 if (Main.tile[tileTargetX, tileTargetY].frameX < 10)
39379 {
39380 num -= Main.tile[tileTargetX, tileTargetY].frameX;
39381 num2 -= Main.tile[tileTargetX, tileTargetY].frameY;
39382 }
39383 NetMessage.SendTileSquare(-1, num, num2);
39384 }
39385 }
39386 else if (type >= 1878 && type <= 1883)
39387 {
39388 type -= 1877;
39389 if (WorldGen.checkXmasTreeDrop(tileTargetX, tileTargetY, 1) != type)
39390 {
39392 WorldGen.dropXmasTree(tileTargetX, tileTargetY, 1);
39393 WorldGen.setXmasTree(tileTargetX, tileTargetY, 1, type);
39394 int num3 = tileTargetX;
39395 int num4 = tileTargetY;
39396 if (Main.tile[tileTargetX, tileTargetY].frameX < 10)
39397 {
39398 num3 -= Main.tile[tileTargetX, tileTargetY].frameX;
39399 num4 -= Main.tile[tileTargetX, tileTargetY].frameY;
39400 }
39401 NetMessage.SendTileSquare(-1, num3, num4);
39402 }
39403 }
39404 else if (type >= 1884 && type <= 1894)
39405 {
39406 type -= 1883;
39407 if (WorldGen.checkXmasTreeDrop(tileTargetX, tileTargetY, 2) != type)
39408 {
39410 WorldGen.dropXmasTree(tileTargetX, tileTargetY, 2);
39411 WorldGen.setXmasTree(tileTargetX, tileTargetY, 2, type);
39412 int num5 = tileTargetX;
39413 int num6 = tileTargetY;
39414 if (Main.tile[tileTargetX, tileTargetY].frameX < 10)
39415 {
39416 num5 -= Main.tile[tileTargetX, tileTargetY].frameX;
39417 num6 -= Main.tile[tileTargetX, tileTargetY].frameY;
39418 }
39419 NetMessage.SendTileSquare(-1, num5, num6);
39420 }
39421 }
39422 else
39423 {
39424 if (type < 1895 || type > 1905)
39425 {
39426 return;
39427 }
39428 type -= 1894;
39429 if (WorldGen.checkXmasTreeDrop(tileTargetX, tileTargetY, 3) != type)
39430 {
39432 WorldGen.dropXmasTree(tileTargetX, tileTargetY, 3);
39433 WorldGen.setXmasTree(tileTargetX, tileTargetY, 3, type);
39434 int num7 = tileTargetX;
39435 int num8 = tileTargetY;
39436 if (Main.tile[tileTargetX, tileTargetY].frameX < 10)
39437 {
39438 num7 -= Main.tile[tileTargetX, tileTargetY].frameX;
39439 num8 -= Main.tile[tileTargetX, tileTargetY].frameY;
39440 }
39441 NetMessage.SendTileSquare(-1, num7, num8);
39442 }
39443 }
39444 }
Vector2 position
Definition Entity.cs:14
int tileBoost
Definition Item.cs:159
void ApplyItemTime(Item sItem)
Definition Player.cs:3752
bool ItemTimeIsZero
Definition Player.cs:3525
static int tileTargetY
Definition Player.cs:2085
static int tileRangeX
Definition Player.cs:2075
static int tileTargetX
Definition Player.cs:2083
static int tileRangeY
Definition Player.cs:2077
Item[] inventory
Definition Player.cs:1257
bool controlUseItem
Definition Player.cs:1391

References Terraria.WorldGen.checkXmasTreeDrop(), Terraria.WorldGen.dropXmasTree(), Terraria.NetMessage.SendTileSquare(), Terraria.WorldGen.setXmasTree(), Terraria.Main.tile, Terraria.Item.tileBoost, System.type, and Terraria.Item.type.