public static TransmuteRecipe GetRecipeToCurrency(CurrencyType to, ACDItem item) { var quality = item.GetTrinityItemQuality(); switch (to) { case CurrencyType.ArcaneDust: return(quality == TrinityItemQuality.Rare ? Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromRare : Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromNormal); case CurrencyType.VeiledCrystal: return(quality == TrinityItemQuality.Magic ? Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromMagic : Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromNormal); case CurrencyType.ReusableParts: return(quality == TrinityItemQuality.Rare ? Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromRare : Zeta.Game.TransmuteRecipe.ConvertCraftingMaterialsFromMagic); default: return((TransmuteRecipe)(-1)); } }
public string LogTemplate(ItemAction action, ACDItem item) => $"{Environment.NewLine}" + $"{DateTime.UtcNow.ToLocalTime():f} {Environment.NewLine}" + $"{item.Name} ({item.ActorSnoId}), {item.GetRawItemType()} {Environment.NewLine}" + $"{item.ItemBaseType}: {item.GetTrinityItemType()}, {item.GetTrinityItemQuality()}" + $"{(item.Stats.IsAncient ? ", Ancient" : string.Empty)}, {item.Stats}" + $"{Environment.NewLine}";
private void LogItem(ItemAction action, ACDItem item) { if (!IsEnabled || !Core.Settings.Advanced.LogItems) { return; } if (item.GetTrinityItemQuality() < TrinityItemQuality.Legendary && !Core.Settings.Advanced.LogAllItems) { return; } if (action == ItemAction.Dropped && !Core.Settings.Advanced.LogDroppedItems) { return; } var file = $"{action} - {Core.Player.ActorClass}.log"; var path = Path.Combine(FileManager.LoggingPath, file); var message = LogTemplate(action, item); File.AppendAllText(path, message); }
public void RecordItemStats(ItemStats stats, ACDItem item) { if (!IsRunning) { return; } stats.Total++; if (item.Stats.IsAncient) { stats.Ancients++; } if (GameData.PetTable.Contains(item.GameBalanceId) || GameData.PetSnoIds.Contains(item.ActorSnoId)) { stats.Pets++; } if (GameData.TransmogTable.Contains(item.GameBalanceId)) { stats.Transmog++; } if (Core.Settings.Items.SpecialItems.HasFlag(SpecialItemTypes.Wings) && GameData.WingsTable.Contains(item.GameBalanceId) || GameData.CosmeticSnoIds.Contains(item.ActorSnoId)) { stats.Wings++; } if (item.GetTrinityItemType() == TrinityItemType.HealthPotion) { stats.Potions++; } if (item.GetTrinityItemType() == TrinityItemType.UberReagent) { stats.Ubers++; } if (item.GetTrinityItemType() == TrinityItemType.ConsumableAddSockets) { stats.Gifts++; } if (item.IsCraftingReagent) { stats.Crafting++; stats.CraftingStackQuantity += item.ItemStackQuantity; } if (item.GetIsEquipment()) { stats.Equipment++; switch (item.GetTrinityItemQuality()) { case TrinityItemQuality.Set: stats.Sets++; break; case TrinityItemQuality.Legendary: stats.Legendaries++; break; case TrinityItemQuality.Rare: stats.Rares++; break; case TrinityItemQuality.Magic: stats.Magics++; break; case TrinityItemQuality.Inferior: case TrinityItemQuality.Common: stats.Normals++; break; } } }