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

◆ PlaceItemInFrame()

static void Terraria.GameContent.Tile_Entities.TEWeaponsRack.PlaceItemInFrame ( Player player,
int x,
int y )
inlinestaticprivate

Definition at line 247 of file TEWeaponsRack.cs.

248 {
249 if (!player.ItemTimeIsZero)
250 {
251 return;
252 }
253 x -= Main.tile[x, y].frameX % 54 / 18;
254 y -= Main.tile[x, y].frameY % 54 / 18;
255 int num = Find(x, y);
256 if (num == -1)
257 {
258 return;
259 }
260 if (((TEWeaponsRack)TileEntity.ByID[num]).item.stack > 0)
261 {
262 WorldGen.KillTile(x, y, fail: true);
263 if (Main.netMode == 1)
264 {
265 NetMessage.SendData(17, -1, -1, null, 0, Player.tileTargetX, y, 1f);
266 }
267 }
268 if (Main.netMode == 1)
269 {
270 NetMessage.SendData(123, -1, -1, null, x, y, player.selectedItem, player.whoAmI, 1);
271 }
272 else
273 {
274 TryPlacing(x, y, player.inventory[player.selectedItem].netID, player.inventory[player.selectedItem].prefix, 1);
275 }
276 player.inventory[player.selectedItem].stack--;
277 if (player.inventory[player.selectedItem].stack <= 0)
278 {
279 player.inventory[player.selectedItem].SetDefaults();
280 Main.mouseItem.SetDefaults();
281 }
282 if (player.selectedItem == 58)
283 {
284 Main.mouseItem = player.inventory[player.selectedItem].Clone();
285 }
286 player.releaseUseItem = false;
287 player.mouseInterface = true;
288 player.PlayDroppedItemAnimation(20);
289 WorldGen.RangeFrame(x, y, x + 3, y + 3);
290 }
static Dictionary< int, TileEntity > ByID
Definition TileEntity.cs:18
static void TryPlacing(int x, int y, int netid, int prefix, int stack)

References Terraria.DataStructures.TileEntity.ByID, Terraria.Item.Clone(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.Find(), Terraria.Player.inventory, Terraria.Player.ItemTimeIsZero, Terraria.WorldGen.KillTile(), Terraria.Main.mouseItem, Terraria.Item.netID, Terraria.Main.netMode, Terraria.Player.PlayDroppedItemAnimation(), Terraria.Item.prefix, Terraria.WorldGen.RangeFrame(), Terraria.Player.selectedItem, Terraria.NetMessage.SendData(), Terraria.Item.SetDefaults(), Terraria.Item.stack, Terraria.Main.tile, Terraria.Player.tileTargetX, Terraria.GameContent.Tile_Entities.TEWeaponsRack.TryPlacing(), and Terraria.Entity.whoAmI.

Referenced by Terraria.GameContent.Tile_Entities.TEWeaponsRack.OnPlayerInteraction().