private ACDItem GetKeystoneItem()
{
IEnumerable<ACDItem> itemEnumerableSource = ZetaDia.Me.Inventory.Backpack;
List<CacheACDItem> items = new List<CacheACDItem>();
foreach (var i in itemEnumerableSource)
{
if (i.BaseAddress != IntPtr.Zero)
{
CacheACDItem cacheitem = new CacheACDItem(i);
items.Add(cacheitem);
}
}
if (KeyType == KeystoneType.Tiered)
{
if (!KeyStoneHighest)
items = items.OrderBy(i => i.KeystoneRank).ToList();
else
items = items.OrderByDescending(i => i.KeystoneRank).ToList();
}
foreach (var tempitem in items)
{
if (tempitem.ItemType == PluginItemTypes.KeyStone)
{
int tieredLevel = tempitem.KeystoneRank;
if (KeyType == KeystoneType.Fragment)
{
if (tieredLevel == -1)
return tempitem.ACDItem;
continue;
}
if (KeyType == KeystoneType.Trial)
{
if (tieredLevel == 0)
return tempitem.ACDItem;
continue;
}
if (KeyType == KeystoneType.Tiered)
{
if (tieredLevel > 0 && tieredLevel <= FunkyBaseExtension.Settings.AdventureMode.MaximumTieredRiftKeyAllowed)
return tempitem.ACDItem;
}
}
}
return null;
}