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

◆ DropItemLocalPerClientAndSetNPCMoneyTo0()

static void Terraria.GameContent.ItemDropRules.CommonCode.DropItemLocalPerClientAndSetNPCMoneyTo0 ( NPC npc,
int itemId,
int stack,
bool interactionRequired = true )
inlinestatic

Definition at line 25 of file CommonCode.cs.

26 {
27 if (itemId <= 0 || itemId >= ItemID.Count)
28 {
29 return;
30 }
31 if (Main.netMode == 2)
32 {
33 int num = Item.NewItem(npc.GetItemSource_Loot(), (int)npc.position.X, (int)npc.position.Y, npc.width, npc.height, itemId, stack, noBroadcast: true, -1);
34 Main.timeItemSlotCannotBeReusedFor[num] = 54000;
35 for (int i = 0; i < 255; i++)
36 {
37 if (Main.player[i].active && (npc.playerInteraction[i] || !interactionRequired))
38 {
39 NetMessage.SendData(90, i, -1, null, num);
40 }
41 }
42 Main.item[num].active = false;
43 }
44 else
45 {
46 DropItemFromNPC(npc, itemId, stack);
47 }
48 npc.value = 0f;
49 }
static void DropItemFromNPC(NPC npc, int itemId, int stack, bool scattered=false)
Definition CommonCode.cs:9
static readonly short Count
Definition ItemID.cs:12138

References Terraria.ID.ItemID.Count, Terraria.GameContent.ItemDropRules.CommonCode.DropItemFromNPC(), Terraria.NPC.GetItemSource_Loot(), Terraria.Entity.height, Terraria.Main.item, Terraria.Main.netMode, Terraria.Item.NewItem(), Terraria.Main.player, Terraria.NPC.playerInteraction, Terraria.Entity.position, Terraria.NetMessage.SendData(), Terraria.Main.timeItemSlotCannotBeReusedFor, Terraria.Entity.width, Microsoft.Xna.Framework.Vector2.X, and Microsoft.Xna.Framework.Vector2.Y.

Referenced by Terraria.GameContent.ItemDropRules.DropLocalPerClientAndResetsNPCMoneyTo0.TryDroppingItem().