Esempio n. 1
0
        private bool ShouldIncludeItem(ACDItem item)
        {
            if (item == null)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: NullItem");
#endif
                return(false);
            }

            if (item.GetIsPickupNoClick() && TrinityCombat.Loot.IsBackpackFull)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: Backpack is Full - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            if (item.GetIsMyDroppedItem())
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: Dropped Item - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            if (item.GetIsUntargetable())
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: Untargetable - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            if (!item.GetIsCosmeticItem() &&
                item.ItemQualityLevel <= ItemQuality.Rare4 &&
                item.Distance > CharacterSettings.Instance.LootRadius)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: OutOfRange {CharacterSettings.Instance.LootRadius} - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            if (!TrinityCombat.Loot.ShouldPickup(item))
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeItem)}] IGNORE: LootProvider.ShouldPickup - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            return(true);
        }
Esempio n. 2
0
        private bool ShouldIncludeGold(ACDItem item)
        {
            if (item == null)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeGold)}] IGNORE: NullItem");
#endif
                return(false);
            }

            if (!Core.Settings.Items.PickupGold)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeGold)}] IGNORE: GoldPickupDisabled - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            if (item.GetGoldAmount() < Core.Settings.Items.MinGoldStack)
            {
#if LOG_TARGETS_CACHE
                s_logger.Verbose($"[{nameof(ShouldIncludeGold)}] IGNORE: MinGoldStack - Item: \"{item?.Name}\", InternalName: \"{item?.InternalName}\", Sno: {item?.ActorSnoId}, GBId: 0x{item?.GameBalanceId:x8}, RawItemType: {item.GetRawItemType()}");
#endif
                return(false);
            }

            return(true);
        }
Esempio n. 3
0
 public static ItemType GetItemType(this ACDItem item)
 {
     return(TypeConversions.GetItemType(item.GetRawItemType()));
 }
Esempio n. 4
0
 public static TrinityItemType GetTrinityItemType(this ACDItem item)
 {
     return(TypeConversions.GetTrinityItemType(item.GetRawItemType(), item.GemType));
 }
Esempio n. 5
0
 public static bool GetIsGold(this ACDItem item)
 {
     return(item.GetRawItemType() == RawItemType.Gold);
 }