public ItemDBEntry(int id, string name, ItemRarity rarity, int level) { this.ID = id; this.Name = name; this.Rarity = rarity; this.Level = level; }
public void Should_parse_all_rarities(IEnumerable<string> lines, ItemRarity itemRarity, ItemType expectedItemType) { itemRarityParser.Parse(Arg.Any<IEnumerable<string>>()).Returns(itemRarity); var target = new ItemTypeParser(wandDefinitions, itemRarityParser); target.Parse(lines).Should().Be(expectedItemType); }
private static int GetItemTypeLineIndex(ItemRarity itemRarity) { switch (itemRarity) { case ItemRarity.Normal: case ItemRarity.Magic: case ItemRarity.Gem: case ItemRarity.Currency: return 1; case ItemRarity.Rare: case ItemRarity.Unique: return 2; } return -1; }
private static MultiplayerItem ConvertToMultiplayerItem(Guid itemId, int count, bool owned, DateTime?unlockedOn = null, InventoryResponse.ItemInstance itemInstance = null) { var catalogItem = StateSingleton.Instance.catalog.result.items.Find(match => match.id == itemId); ItemCategory category = Enum.TryParse(catalogItem.category, true, out ItemCategory itemCategory) ? itemCategory : ItemCategory.Invalid; ItemRarity rarity = Enum.TryParse(Enum.GetName(catalogItem.rarity), true, out ItemRarity itemRarity) ? itemRarity : ItemRarity.Invalid; var multiplayerItem = new MultiplayerItem { count = count, guid = itemId, owned = owned, category = new MultiplayerItemCategory { loc = category, value = (int)category }, rarity = new MultiplayerItemRarity { loc = rarity, value = (int)rarity } }; if (unlockedOn != null) { multiplayerItem.unlocked = new MultiplayerItemUnlocked { on = EpochTime.GetIntDate(unlockedOn.Value) }; } if (itemInstance != null) { multiplayerItem.instance_data = itemInstance; } return(multiplayerItem); }
public ItemUsefulProperties(string name, IEntity item) { var mods = item.GetComponent <Mods>(); var socks = item.GetComponent <Sockets>(); Map map = item.HasComponent <Map>() ? item.GetComponent <Map>() : null; Quality qualityComponent = item.HasComponent <Quality>() ? item.GetComponent <Quality>() : null; Name = name; itemLevel = mods.ItemLevel; numLinks = socks.LargestLinkSize; numSockets = socks.NumberOfSockets; rarity = mods.ItemRarity; mapLevel = map == null ? 0 : 1; isCurrency = item.Path.Contains("Currency"); isSkillGem = item.HasComponent <SkillGem>(); quality = qualityComponent == null ? 0 : qualityComponent.ItemQuality; isRgb = socks.IsRGB; isWeapon = item.HasComponent <Weapon>(); isArmour = item.HasComponent <Armour>(); isFlask = item.HasComponent <Flask>(); isVaalFragment = item.Path.Contains("VaalFragment"); }
/// <summary> /// 매개변수로 받은 ItemSpawnChance 기반으로 무작위 아이템 데이터를 선택 /// </summary> /// <param name="spawnChance">스폰 확률 정보</param> /// <returns>무작위로 선택된 아이템 데이터</returns> public ItemData SelectRandomItemData(ItemSpawnChance spawnChance) { if (UnityEngine.Random.value <= spawnChance.SpawnChance) { ItemRarity selectedRarity = spawnChance.GetRandomItemRarity(); if (ItemDatasByRarity.TryGetValue(selectedRarity, out var itemDatas)) { int randomIndex = UnityEngine.Random.Range(0, itemDatas.Count); return(itemDatas[randomIndex]); } else { Debug.LogWarning($"{nameof(ItemRarity)}: {selectedRarity}에 해당하는 아이템 데이터 컬렉션이 없습니다"); return(null); } } else { // 아이템을 스폰하지 않음 return(null); } }
/// <summary> /// Use this for initialization /// </summary> public Item(string name, int id, Sprite borderImage, int imageID, bool stackable, ItemRarity itemRarity, SlotType slotType, ResourceType resourceType) { Name = name; ID = id; BorderImage = borderImage; ImageID = imageID; Stackable = stackable; ItemRarity = itemRarity; SlotType = slotType; ResourceType = resourceType; BonusStats = new BonusStats(); BonusAttached = new List <Tuple <BonusType, float> >(); AddBonus(BonusType, B_Amount); }
private static int RollModCount(ItemRarity r, string itemclass) { if (r == ItemRarity.Magic) { int roll = RNG.Gen.Next(MagicModCountWeights[0] + MagicModCountWeights[1]); return((roll < MagicModCountWeights[0]) ? 1 : 2); } else if (r == ItemRarity.Rare) { if (itemclass.Contains("Jewel")) { int roll = RNG.Gen.Next(JewelModCountWeights[0] + JewelModCountWeights[1]); return((roll < JewelModCountWeights[0]) ? 3 : 4); } else { int roll = RNG.Gen.Next(ModCountWeights[0] + ModCountWeights[1] + ModCountWeights[2]); return((roll < ModCountWeights[0]) ? 4 : (roll < ModCountWeights[0] + ModCountWeights[1]) ? 5 : 6); } } return(0); }
public List <Item> GetRandomItems(int numItems = 0, ItemRarity rarityCap = ItemRarity.Common) { if (numItems < 1) { numItems = Random.Range(1, 6); } var items = new List <Item>(); for (var i = 0; i < numItems; i++) { if (rarityCap == ItemRarity.Legendary) { items.Add(GetRandomItem()); } else if (rarityCap == ItemRarity.Common) { items.Add(GetRandomItemForRarity(ItemRarity.Common)); } else { const int maxTries = 5; var rarity = GlobalHelper.GetRandomEnumValue <ItemRarity>(); var currentTry = 1; while (currentTry <= maxTries && rarity > rarityCap) { rarity = GlobalHelper.GetRandomEnumValue <ItemRarity>(); currentTry++; } items.Add(GetRandomItemForRarity(rarity)); } } return(items); }
public override void ModifyTooltips(List <TooltipLine> tooltips) { if (storedArmor[0] is null || storedArmor[1] is null || storedArmor[2] is null) { return; } TooltipLine armorLineHead = new TooltipLine(mod, "HelmetSlot", (storedArmor[0].IsAir) ? "No helmet" : storedArmor[0].Name) { overrideColor = (storedArmor[0].IsAir) ? new Color(150, 150, 150) : ItemRarity.GetColor(storedArmor[0].rare) }; tooltips.Add(armorLineHead); TooltipLine armorLineChest = new TooltipLine(mod, "ChestSlot", (storedArmor[1].IsAir) ? "No chestplate" : storedArmor[1].Name) { overrideColor = (storedArmor[1].IsAir) ? new Color(150, 150, 150) : ItemRarity.GetColor(storedArmor[1].rare) }; tooltips.Add(armorLineChest); TooltipLine armorLineLegs = new TooltipLine(mod, "LegsSlot", (storedArmor[2].IsAir) ? "No leggings" : storedArmor[2].Name) { overrideColor = (storedArmor[2].IsAir) ? new Color(150, 150, 150) : ItemRarity.GetColor(storedArmor[2].rare) }; tooltips.Add(armorLineLegs); TooltipLine line = new TooltipLine(mod, "Starlight", "Right click to equip stored armor\n" + "Right click with armor to add it to the bag\n" + "Shift-Right click to empty the bag"); tooltips.Add(line); }
public static Color GetColor(this ItemRarity rarity) { switch (rarity) { case ItemRarity.Common: return(new Color(0.6132076f, 0.6132076f, 0.6132076f, 1f)); case ItemRarity.Uncommon: return(new Color(0.3224012f, 0.990566f, 0.3663174f, 1f)); case ItemRarity.Rare: return(new Color(0.2548505f, 0.3988582f, 0.7830189f, 1f)); case ItemRarity.UltraRare: return(new Color(1f, 0.3537736f, 0.8362778f, 1f)); case ItemRarity.Legendary: return(new Color(0.9736655f, 1f, 0.0990566f, 1f)); default: return(Color.white); } }
public static Color GetColorFromRarity(ItemRarity r) { switch (r) { case ItemRarity.COMMON: return(BotUtils.Grey); case ItemRarity.UNCOMMON: return(BotUtils.Green); case ItemRarity.RARE: return(BotUtils.Blue); case ItemRarity.EPIC: return(BotUtils.Purple); case ItemRarity.LEGENDARY: return(BotUtils.Orange); default: return(BotUtils.Kamtro); } }
public static string ItemRarityColor(ItemRarity ItemRarity) { switch (ItemRarity) { default: return("#FFF"); case ItemRarity.Common: return("#FFF"); case ItemRarity.Uncommon: return("#00FF00"); case ItemRarity.Rare: return("#0473f0"); case ItemRarity.Epic: return("#800080"); case ItemRarity.Legendary: return("#FFA500"); } }
/// <summary> /// /// </summary> private void ItemJsonDataDatabase() { for (int i = 0; i < ItemJsonData.Count; i++) { string Name = (string)ItemJsonData[i]["Name"]; int ID = int.Parse((string)ItemJsonData[i]["ID"]); int imageId = Function.FindImageID(Item_Images, (string)ItemJsonData[i]["SpriteName"]); bool Satackable = (bool)ItemJsonData[i]["Stackable"]; ItemRarity ItemRarity = (ItemRarity)Enum.Parse(typeof(ItemRarity), (string)ItemJsonData[i]["ItemRarity"]); SlotType SlotType = (SlotType)Enum.Parse(typeof(SlotType), (string)ItemJsonData[i]["ItemType"]); ResourceType ResourceType = (ResourceType)Enum.Parse(typeof(ResourceType), (string)ItemJsonData[i]["ResourceType"]); Item_Database.Add(new Item( Name, ID, Item_Images[imageId], imageId, Satackable, ItemRarity, SlotType, ResourceType)); } }
public Weapon GetRandomRangedWeapon(ItemRarity rarityCap = ItemRarity.Common) { var rangedTemplates = new List <ItemTemplate>(); foreach (var templateType in _baseItemTemplateTypes) { var currentTemplate = ItemTemplateLoader.GetItemTemplate(templateType); if (currentTemplate.Category == "weapon" && currentTemplate.EquipmentSlotType == EquipmentSlotType.Missile || currentTemplate.EquipmentSlotType == EquipmentSlotType.Thrown) { rangedTemplates.Add(currentTemplate); } } var weaponTemplate = rangedTemplates[Random.Range(0, rangedTemplates.Count)]; if (rarityCap == ItemRarity.Common) { return(new Weapon(weaponTemplate, rarityCap)); } const int maxTries = 3; var rarity = GlobalHelper.GetRandomEnumValue <ItemRarity>(); var currentTry = 1; while (currentTry <= maxTries && rarity > rarityCap) { rarity = GlobalHelper.GetRandomEnumValue <ItemRarity>(); currentTry++; } return(new Weapon(weaponTemplate, rarity)); }
public static string GetDisplayName(this ItemRarity rarity, bool inColor) { string output; switch (rarity) { case ItemRarity.UltraRare: output = "Ultra Rare"; break; default: output = rarity.ToString(); break; } if (!inColor) { return(output); } else { return(output.InColor(rarity.GetColor() * 5f)); } }
/// <summary> /// /// </summary> public void Upgrade(ItemRarity itemRarity) { switch (itemRarity) { case ItemRarity.Uncommon: LevelUpItem(ItemRarity.Common); break; case ItemRarity.Common: LevelUpItem(ItemRarity.Rare); break; case ItemRarity.Rare: LevelUpItem(ItemRarity.Epic); break; case ItemRarity.Epic: LevelUpItem(ItemRarity.Legendary); break; case ItemRarity.Legendary: break; } }
public static Guid Get(ItemRarity rarity) { switch (rarity) { case ItemRarity.Common: return(Common); case ItemRarity.Rare: return(Rare); case ItemRarity.Fabled: return(Fabled); case ItemRarity.Mythic: return(Mythic); case ItemRarity.Legendary: return(Legendary); case ItemRarity.Basic: default: throw new Exception("Invalid rarity for equipment token"); } }
public static Color ToColor(this ItemRarity rarity) { switch (rarity) { case ItemRarity.Common: return(new Color(000 / 255f, 255 / 255f, 000 / 255f)); case ItemRarity.Rare: return(new Color(000 / 255f, 191 / 255f, 255 / 255f)); case ItemRarity.Epic: return(new Color(148 / 255f, 000 / 255f, 211 / 255f)); case ItemRarity.Legendary: return(new Color(255 / 255f, 165 / 255f, 000 / 255f)); case ItemRarity.Artifact: return(new Color(255 / 255f, 192 / 255f, 203 / 255f)); //return new Color(255 / 255f, 228 / 255f, 196 / 255f); default: throw new ArgumentOutOfRangeException(nameof(rarity), rarity, null); } }
public static List <ItemAmountConfig> GetAugmentCost(ItemDrop.ItemData item, ItemRarity rarity, int recipeEffectIndex) { var type = item.m_shared.m_itemType; var configEntry = Config.AugmentCosts.Find(x => { if (x.Rarity != rarity) { return(false); } if (x.ItemTypes?.Count > 0 && !x.ItemTypes.Contains(type.ToString())) { return(false); } return(true); }); if (EffectIsDeprecated(item, recipeEffectIndex)) { return(new List <ItemAmountConfig>()); } if (configEntry != null && !item.GetMagicItem().IsEffectAugmented(recipeEffectIndex)) { var cost = configEntry.Cost.ToList(); var reaugmentCost = GetReAugmentCost(item, recipeEffectIndex); if (reaugmentCost != null) { cost.Add(reaugmentCost); } return(cost); } return(configEntry?.Cost); }
public ItemData(NormalInventoryItem inventoryItem, BaseItemType baseItemType) { _inventoryItem = inventoryItem; var item = inventoryItem.Item; Path = item.Path; var @base = item.GetComponent <Base>(); IsElder = @base.isElder; IsShaper = @base.isShaper; var mods = item.GetComponent <Mods>(); Rarity = mods.ItemRarity; BIdentified = mods.Identified; ItemLevel = mods.ItemLevel; var quality = item.GetComponent <Quality>(); ItemQuality = quality.ItemQuality; ClassName = baseItemType.ClassName; BaseName = baseItemType.BaseName; MapTier = item.HasComponent <Map>() ? item.GetComponent <Map>().Tier : 0; }
public ItemData(NormalInventoryItem inventoryItem, BaseItemType baseItemType) { _inventoryItem = inventoryItem; var item = inventoryItem.Item; Path = item.Path; var @base = item.GetComponent <Base>(); IsElder = @base.isElder; IsShaper = @base.isShaper; IsCorrupted = @base.isCorrupted; var mods = item.GetComponent <Mods>(); Rarity = mods.ItemRarity; BIdentified = mods.Identified; ItemLevel = mods.ItemLevel; var quality = item.GetComponent <Quality>(); ItemQuality = quality.ItemQuality; ClassName = baseItemType.ClassName; BaseName = baseItemType.BaseName; if (@base.Name == "Prophecy") { var @prophParse = item.GetComponent <Prophecy>(); ProphecyName = @prophParse.DatProphecy.Name.ToLower( ); ProphecyName = ProphecyName.Replace(" ", ""); ProphecyName = ProphecyName.Replace(",", ""); ProphecyName = ProphecyName.Replace("'", ""); Name = ProphecyName; BaseName = "Prophecy"; } MapTier = item.HasComponent <Map>( ) ? item.GetComponent <Map>( ).Tier : 0; }
public static List <MagicItemEffectDefinition> GetAvailableAugments(AugmentRecipe recipe, ItemDrop.ItemData item, MagicItem magicItem, ItemRarity rarity) { var valuelessEffect = false; if (recipe.EffectIndex >= 0 && recipe.EffectIndex < magicItem.Effects.Count) { var currentEffectDef = MagicItemEffectDefinitions.Get(magicItem.Effects[recipe.EffectIndex].EffectType); valuelessEffect = currentEffectDef.GetValuesForRarity(rarity) == null; } return(MagicItemEffectDefinitions.GetAvailableEffects(item.Extended(), item.GetMagicItem(), valuelessEffect ? -1 : recipe.EffectIndex)); }
public void SetItemPrices(ref Item_Skill item, ItemRarity rarity) { item.sellPrice = rarity.sellPrice; item.buyPrice = rarity.buyPrice; }
/// <summary> /// Initializes a new instance of the MedKit class /// </summary> /// <param name="itemRarity">Item rarity</param> public MedKit(ItemRarity itemRarity) : base(itemRarity) { }
public ItemSnippet(Item item) { _item = item; Color = ItemRarity.GetColor(item.rare); }
protected Item(ItemRarity rarity) { this.Rarity = rarity; }
public static Color GetTextColorByRarity(ItemRarity itemRarity) { Color tempColor; return colors.TryGetValue(itemRarity, out tempColor) ? tempColor : Color.White; }
/// <summary> /// Initializes a new instance of the Key class /// </summary> /// <param name="itemRarity">Item Rarity</param> public Key(ItemRarity itemRarity) : base(itemRarity) { }
/// <summary> /// Initializes a new instance of the Item class /// </summary> /// <param name="itemRarity">Item Rarity</param> protected Item(ItemRarity itemRarity) { this.Rarity = itemRarity; }
public bool ShouldAlert(HashSet<string> currencyNames, ItemAlertSettings settings) { Mods mods = _item.GetComponent<Mods>(); QualityItemsSettings qualitySettings = settings.QualityItems; rarity = mods.ItemRarity; // set rarity if (_item.HasComponent<Quality>()) { quality = _item.GetComponent<Quality>().ItemQuality; // update quality variable } alertText = string.Concat(quality > 0 ? "Superior " : String.Empty, _name); // Check if Map/Vaal Frag if (settings.Maps && (_item.HasComponent<Map>() || _item.Path.Contains("VaalFragment"))) { borderWidth = 1; return true; } // Check if Currency if (settings.Currency && _item.Path.Contains("Currency")) { color = HudSkin.CurrencyColor; return currencyNames?.Contains(_name) ?? (!_name.Contains("Wisdom") && !_name.Contains("Portal")); } // Check if DivinationCard if (settings.DivinationCards && _item.Path.Contains("DivinationCards")) { color = HudSkin.DivinationCardColor; return true; } Sockets sockets = _item.GetComponent<Sockets>(); // Check link REQ. if (sockets.LargestLinkSize >= settings.MinLinks) { if (sockets.LargestLinkSize == 6) // If 6 link change icon { alertIcon = 3; } return true; } // Check if Crafting Base if (IsCraftingBase(mods.ItemLevel)) { alertIcon = 2; return true; } // Check # socket REQ. if (sockets.NumberOfSockets >= settings.MinSockets) { alertIcon = 0; return true; } // RGB if (settings.Rgb && sockets.IsRGB) { alertIcon = 1; return true; } // Check if Jewel if (settings.Jewels && _item.Path.Contains("Jewels")) { return true; } // meets rarity conidtions switch (rarity) { case ItemRarity.Rare: return settings.Rares; case ItemRarity.Unique: return settings.Uniques; } // Other (no icon change) if (qualitySettings.Enable) { if (qualitySettings.Flask.Enable && _item.HasComponent<Flask>()) { return (quality >= qualitySettings.Flask.MinQuality); } else if (qualitySettings.SkillGem.Enable && _item.HasComponent<SkillGem>()) { color = HudSkin.SkillGemColor; return (quality >= qualitySettings.SkillGem.MinQuality); } else if (qualitySettings.Weapon.Enable && _item.HasComponent<Weapon>()) { return (quality >= qualitySettings.Weapon.MinQuality); } else if (qualitySettings.Armour.Enable && _item.HasComponent<Armour>()) { return (quality >= qualitySettings.Armour.MinQuality); } } return false; // Meets no checks }
private static string GetColour(ItemRarity rare) { switch (rare) { case ItemRarity.White: return "ffffffff"; case ItemRarity.Rare_4_affixes: case ItemRarity.Rare_5_affixes: case ItemRarity.Rare_6_affixes: return "ffffff00"; case ItemRarity.LegendarySet_1_affixes: case ItemRarity.LegendarySet_2_affixes: return "ffbf642f"; case ItemRarity.Inferior: return "ff888888"; case ItemRarity.Magic_2_affixes: case ItemRarity.Magic_1_affixes: case ItemRarity.Magic_3_affixes: return "ff6969ff"; default: return "ffffffff"; } }
/// <summary> /// Initializes a new instance of the Gun class /// </summary> /// <param name="itemRarity">Item Rarity</param> /// <param name="damage">Damage</param> public Gun(ItemRarity itemRarity, int damage) : base(itemRarity) { this.Damage = damage; }
void SetItemRarity() { Image ItemImage = gameObject.GetComponent<Image>(); int iRarity = Random.Range(0,500); if(iRarity == 500) { m_eRarity = ItemRarity.ItemRarity_Legendary; ItemImage.color = Color.yellow; } else if(iRarity % 100 == 0) { m_eRarity = ItemRarity.ItemRarity_Epic; ItemImage.color = Color.cyan; } else if(iRarity % 25 == 0) { m_eRarity = ItemRarity.ItemRarity_Rare; ItemImage.color = Color.magenta; } else if(iRarity % 5 == 0) { m_eRarity = ItemRarity.ItemRarity_Uncommon; ItemImage.color = Color.gray; } else { m_eRarity = ItemRarity.ItemRarity_Common; } }
public bool ShouldAlert(HashSet <string> currencyNames, ItemAlertSettings settings) { Mods mods = _item.GetComponent <Mods>(); QualityItemsSettings qualitySettings = settings.QualityItems; rarity = mods.ItemRarity; if (_item.HasComponent <Quality>()) { quality = _item.GetComponent <Quality>().ItemQuality; } alertText = string.Concat(quality > 0 ? "Superior " : String.Empty, _name); if (settings.Maps && (_item.HasComponent <Map>() || _item.Path.Contains("VaalFragment"))) { borderWidth = 1; return(true); } if (settings.Currency && _item.Path.Contains("Currency")) { color = HudSkin.CurrencyColor; return(currencyNames?.Contains(_name) ?? !_name.Contains("Wisdom") && !_name.Contains("Portal")); } if (settings.DivinationCards && _item.Path.Contains("DivinationCards")) { color = HudSkin.DivinationCardColor; return(true); } if (settings.Talisman && _item.Path.Contains("Talisman")) { color = HudSkin.TalismanColor; return(true); } Sockets sockets = _item.GetComponent <Sockets>(); if (sockets.LargestLinkSize >= settings.MinLinks) { if (sockets.LargestLinkSize == 6) { alertIcon = 3; } return(true); } if (IsCraftingBase(mods.ItemLevel)) { alertIcon = 2; return(true); } if (sockets.NumberOfSockets >= settings.MinSockets) { alertIcon = 0; return(true); } if (settings.Rgb && sockets.IsRGB) { alertIcon = 1; return(true); } if (settings.Jewels && _item.Path.Contains("Jewels")) { return(true); } switch (rarity) { case ItemRarity.Rare: return(settings.Rares); case ItemRarity.Unique: return(settings.Uniques); } if (qualitySettings.Enable) { if (qualitySettings.Flask.Enable && _item.HasComponent <Flask>()) { return(quality >= qualitySettings.Flask.MinQuality); } if (qualitySettings.SkillGem.Enable && _item.HasComponent <SkillGem>()) { color = HudSkin.SkillGemColor; return(quality >= qualitySettings.SkillGem.MinQuality); } if (qualitySettings.Weapon.Enable && _item.HasComponent <Weapon>()) { return(quality >= qualitySettings.Weapon.MinQuality); } if (qualitySettings.Armour.Enable && _item.HasComponent <Armour>()) { return(quality >= qualitySettings.Armour.MinQuality); } } return(false); }
public CommonItem(ItemRarity pRarity) : base(pRarity) { }
public RarityBlockItem(FilterPredicateOperator predicateOperator, ItemRarity predicateOperand) : base(predicateOperator, (int)predicateOperand) { }
public ItemSnippet(Item item) : base("") { this._item = item; this.Color = ItemRarity.GetColor(item.rare); }
public Legs(Texture2D texture, ItemRarity rarity) : base(texture, ItemType.LEGS, rarity) { }
/// <summary> /// Initializes a new instance of the Bullet class /// </summary> /// <param name="itemRarity">Item Rarity</param> public Bullet(ItemRarity itemRarity) : base(itemRarity) { }
public Weapon(string name, string description, int value, ItemRarity itemRarity, string image, int damage) : base(name, description, value, itemRarity, image) { this.Damage = damage; }
public void SetRarity(ItemRarity rarity) { Rarity = rarity; }
/// <summary> /// Initializes a new instance of the Armor class /// </summary> /// <param name="itemRarity">Rarity of the item</param> /// <param name="armorValue">Armor value</param> public Armor(ItemRarity itemRarity, int armorValue) : base(itemRarity) { this.ArmorValue = armorValue; }