the initial commit to the repo.

This commit is contained in:
NukedBart 2025-10-25 01:27:14 +08:00
parent 025c032b8c
commit 1b757591b9
264 changed files with 21882 additions and 0 deletions

View file

@ -0,0 +1,125 @@
using System;
using EFT.InventoryLogic;
using stupid.solutions;
using stupid.solutions.Data;
using stupid.solutions.Utils;
namespace stupid.solutions.stupid.solutions.Data;
public class ContainerItem
{
public Item Item { get; }
public string ItemID { get; private set; }
public string LocalizedName { get; private set; }
public string ShortName { get; private set; }
public ItemCategories Itemcat { get; private set; }
public int? itemprice { get; private set; }
public int Count { get; set; } = 1;
public ContainerItem(Item lootItem)
{
if (lootItem == null)
{
throw new ArgumentNullException("lootItem");
}
Item = lootItem;
LocalizedName = string.Empty;
ItemID = string.Empty;
ShortName = string.Empty;
Itemcat = ItemCategories.Uninitialized;
itemprice = null;
Count = 1;
}
public void CalculateItemPrice()
{
if (Item == null)
return;
if (Item.Template == null)
return;
itemprice = GameUtils.GetItemPriceBYID(Item.TemplateId) * Count;
}
public void SetItemCat()
{
if (Item == null)
return;
if (Item.Template == null)
return;
string text = Item.LocalizedName();
string item = Item.TemplateId;
if (QuestESP.QuestItemIds.Contains(text))
{
Itemcat = ItemCategories.Quest;
return;
}
if (Main.IsSuperrare(text))
{
Itemcat = ItemCategories.Superrare;
return;
}
if (Main.IsKappa(text))
{
Itemcat = ItemCategories.Kappa;
return;
}
if (Main.IsStim(text))
{
Itemcat = ItemCategories.Stim;
return;
}
if (Main.SearchedItem(text))
{
Itemcat = ItemCategories.Searched;
return;
}
if (Main.wishlistitemids.Contains(item))
{
Itemcat = ItemCategories.Wishlist;
return;
}
if (Main.hideoutitemids.Contains(item))
{
Itemcat = ItemCategories.Hideout;
return;
}
Itemcat = ItemCategories.Common;
}
public bool IsSameItem(ContainerItem other)
{
if (other == null)
return false;
return ItemID == other.ItemID;
}
public void RecalculateDynamics()
{
if (Item == null)
return;
if (Item.Template == null)
return;
if (string.IsNullOrEmpty(LocalizedName))
LocalizedName = Item.LocalizedName();
if (string.IsNullOrEmpty(ItemID))
ItemID = Item.TemplateId.ToString();
if (string.IsNullOrEmpty(ShortName))
ShortName = Item.ShortName.Localized();
}
}