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

◆ PlaceWeapon()

void Terraria.Player.PlaceWeapon ( int x,
int y )
inline

Definition at line 50556 of file Player.cs.

50557 {
50558 if (Main.tile[x, y].active() && Main.tile[x, y].type == 334)
50559 {
50560 int frameY = Main.tile[x, y].frameY;
50561 int num = 1;
50562 frameY /= 18;
50563 while (num > frameY)
50564 {
50565 y++;
50566 frameY = Main.tile[x, y].frameY;
50567 frameY /= 18;
50568 }
50569 while (num < frameY)
50570 {
50571 y--;
50572 frameY = Main.tile[x, y].frameY;
50573 frameY /= 18;
50574 }
50575 int num2 = Main.tile[x, y].frameX;
50576 int num3 = 0;
50577 while (num2 >= 5000)
50578 {
50579 num2 -= 5000;
50580 num3++;
50581 }
50582 if (num3 != 0)
50583 {
50584 num2 = (num3 - 1) * 18;
50585 }
50586 bool flag = false;
50587 if (num2 >= 54)
50588 {
50589 num2 -= 54;
50590 flag = true;
50591 }
50592 x -= num2 / 18;
50593 int num4 = Main.tile[x, y].frameX;
50594 WorldGen.KillTile(x, y, fail: true);
50595 if (Main.netMode == 1)
50596 {
50597 NetMessage.SendData(17, -1, -1, null, 0, x, y, 1f);
50598 }
50599 if (Main.netMode == 1)
50600 {
50601 NetMessage.SendData(17, -1, -1, null, 0, x + 1, y, 1f);
50602 }
50603 while (num4 >= 5000)
50604 {
50605 num4 -= 5000;
50606 }
50607 Main.blockMouse = true;
50608 int num5 = 5000;
50609 int num6 = 10000;
50610 if (flag)
50611 {
50612 num5 = 20000;
50613 num6 = 25000;
50614 }
50615 Main.tile[x, y].frameX = (short)(inventory[selectedItem].netID + num5 + 100);
50616 Main.tile[x + 1, y].frameX = (short)(inventory[selectedItem].prefix + num6);
50617 if (Main.netMode == 1)
50618 {
50619 NetMessage.SendTileSquare(-1, x, y);
50620 }
50621 if (Main.netMode == 1)
50622 {
50623 NetMessage.SendTileSquare(-1, x + 1, y);
50624 }
50626 if (inventory[selectedItem].stack <= 0)
50627 {
50629 Main.mouseItem.SetDefaults();
50630 }
50631 if (selectedItem == 58)
50632 {
50633 Main.mouseItem = inventory[selectedItem].Clone();
50634 }
50635 releaseUseItem = false;
50636 mouseInterface = true;
50637 }
50638 }
Item Clone()
Definition Item.cs:49916
int stack
Definition Item.cs:149
void SetDefaults(int Type=0)
Definition Item.cs:47332
bool mouseInterface
Definition Player.cs:1137
bool releaseUseItem
Definition Player.cs:1413
Item[] inventory
Definition Player.cs:1257

References Terraria.Item.Clone(), Terraria.WorldGen.KillTile(), Terraria.Main.mouseItem, Terraria.Main.netMode, System.prefix, Terraria.NetMessage.SendData(), Terraria.NetMessage.SendTileSquare(), Terraria.Item.SetDefaults(), Terraria.Item.stack, and Terraria.Main.tile.