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

◆ DropCoins()

long Terraria.Player.DropCoins ( )
inline

Definition at line 50750 of file Player.cs.

50751 {
50753 long num = 0L;
50754 for (int i = 0; i < 59; i++)
50755 {
50756 if (inventory[i].IsACoin)
50757 {
50758 int num2 = Item.NewItem(itemSource_Death, (int)position.X, (int)position.Y, width, height, inventory[i].type);
50759 int num3 = inventory[i].stack / 2;
50760 if (Main.expertMode)
50761 {
50762 num3 = (int)((double)inventory[i].stack * 0.25);
50763 }
50764 if (Main.masterMode)
50765 {
50766 num3 = 0;
50767 }
50768 num3 = inventory[i].stack - num3;
50769 inventory[i].stack -= num3;
50770 if (inventory[i].type == 71)
50771 {
50772 num += num3;
50773 }
50774 if (inventory[i].type == 72)
50775 {
50776 num += (long)num3 * 100L;
50777 }
50778 if (inventory[i].type == 73)
50779 {
50780 num += (long)num3 * 10000L;
50781 }
50782 if (inventory[i].type == 74)
50783 {
50784 num += (long)num3 * 1000000L;
50785 }
50786 if (inventory[i].stack <= 0)
50787 {
50788 inventory[i] = new Item();
50789 }
50790 Main.item[num2].stack = num3;
50791 Main.item[num2].velocity.Y = (float)Main.rand.Next(-20, 1) * 0.2f;
50792 Main.item[num2].velocity.X = (float)Main.rand.Next(-20, 21) * 0.2f;
50793 Main.item[num2].noGrabDelay = 100;
50794 if (Main.netMode == 1)
50795 {
50796 NetMessage.SendData(21, -1, -1, null, num2);
50797 }
50798 if (i == 58)
50799 {
50800 Main.mouseItem = inventory[i].Clone();
50801 }
50802 }
50803 }
50804 lostCoins = num;
50805 lostCoinString = Main.ValueToCoins(lostCoins);
50806 return num;
50807 }
Vector2 position
Definition Entity.cs:14
Item Clone()
Definition Item.cs:49916
int stack
Definition Item.cs:149
IEntitySource GetItemSource_Death()
Definition Player.cs:9282
Item[] inventory
Definition Player.cs:1257
string lostCoinString
Definition Player.cs:603

References Terraria.Item.Clone(), Terraria.Main.expertMode, Terraria.Main.item, System.L, Terraria.Main.masterMode, Terraria.Main.netMode, Terraria.Item.NewItem(), Terraria.Main.rand, Terraria.NetMessage.SendData(), Terraria.Item.stack, System.type, Terraria.Item.type, and Terraria.Main.ValueToCoins().