Terraria v1.4.4.9
Terraria source code documentation
All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros

◆ GetItem()

Item Terraria.Player.GetItem ( int plr,
Item newItem,
GetItemSettings settings )
inline

Definition at line 37130 of file Player.cs.

37131 {
37132 bool isACoin = newItem.IsACoin;
37133 Item item = newItem;
37134 int num = 50;
37135 if (newItem.noGrabDelay > 0)
37136 {
37137 return item;
37138 }
37139 int num2 = 0;
37140 if (newItem.uniqueStack && HasItem(newItem.type))
37141 {
37142 return item;
37143 }
37144 if (isACoin)
37145 {
37146 num2 = -4;
37147 num = 54;
37148 }
37149 if (item.FitsAmmoSlot())
37150 {
37151 item = FillAmmo(plr, item, settings);
37152 if (item.type == 0 || item.stack == 0)
37153 {
37154 return new Item();
37155 }
37156 }
37157 for (int i = num2; i < 50; i++)
37158 {
37159 int num3 = i;
37160 if (num3 < 0)
37161 {
37162 num3 = 54 + i;
37163 }
37165 {
37166 return new Item();
37167 }
37168 }
37169 if (!isACoin && newItem.useStyle != 0)
37170 {
37171 for (int j = 0; j < 10; j++)
37172 {
37174 {
37175 return new Item();
37176 }
37177 }
37178 }
37179 if (newItem.favorited)
37180 {
37181 for (int k = 0; k < num; k++)
37182 {
37184 {
37185 return new Item();
37186 }
37187 }
37188 }
37189 else
37190 {
37191 for (int num4 = num - 1; num4 >= 0; num4--)
37192 {
37194 {
37195 return new Item();
37196 }
37197 }
37198 }
37199 if (settings.CanGoIntoVoidVault && IsVoidVaultEnabled && CanVoidVaultAccept(newItem) && GetItem_VoidVault(plr, bank4.item, newItem, settings, item))
37200 {
37201 return new Item();
37202 }
37203 return item;
37204 }
Item[] item
Definition Chest.cs:41
bool IsVoidVaultEnabled
Definition Player.cs:3376
bool CanVoidVaultAccept(Item item)
Definition Player.cs:37229
bool GetItem_FillEmptyInventorySlot(int plr, Item newItem, GetItemSettings settings, Item returnItem, int i)
Definition Player.cs:37353
bool HasItem(int type)
Definition Player.cs:52305
bool GetItem_VoidVault(int plr, Item[] inventory, Item newItem, GetItemSettings settings, Item returnItem)
Definition Player.cs:37206
bool GetItem_FillIntoOccupiedSlot(int plr, Item newItem, GetItemSettings settings, Item returnItem, int i)
Definition Player.cs:37278
Item FillAmmo(int plr, Item newItem, GetItemSettings settings)
Definition Player.cs:37067

References Terraria.GetItemSettings.CanGoIntoVoidVault, System.item, and Terraria.Chest.item.

Referenced by Terraria.Lang.BartenderHelpText(), Terraria.Player.dropItemCheck(), Terraria.Player.DropSelectedItem(), Terraria.Initializers.UILinksInitializer.Load(), and Terraria.UI.ChestUI.LootAll().