protected EquipmentItem(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int descriptionId, int modelId, MaterialOfEquipment material, PartOfEquipment part, int count = 1) : base(id, nameId, level, sprite, rarity, descriptionId, ClassOfItem.Equipment, count, -1) { EquipmentPart = part; Material = material; ModelID = modelId; price = price + getPriceByMaterial(material) + getPriceByPartOfEquipment(part); CurrentCharacteristic = Characteristic.CreateEmpty(); MaterialName = Localization.Current.EquipmentMaterialNames[( int )material]; EquipmentPartName = Localization.Current.EquipmentPartNames[( int )part]; }
protected WeaponEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int descriptionId, int modelId, TypeOfWeapon type, int count = 1) : base(id, nameId, level, sprite, rarity, descriptionId, modelId, MaterialOfEquipment.Other, PartOfEquipment.Weapon, count) { Type = type; Timer = 4f; minDamage = 1f; minRange = 1f; maxRange = 2f; price = price + getPriceByTypeOfWeapon(type); TypeName = Localization.Current.WeaponEquipmentTypeNames[( int )type]; }
protected Item(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int descriptionId, ClassOfItem itemClass, int count = 1, int algorithmUseId = -1) { Id = id; Name = Localization.Current.ItemNames[nameId]; Description = Localization.Current.EntityDescriptions[descriptionId]; spriteId = sprite; Count = Mathf.Clamp(count, 1, int.MaxValue); Class = itemClass; Rarity = rarity; Level = Mathf.Clamp(level, Personage.MIN_LEVEL, Personage.MAX_LEVEL); price = Level * getPriceByClass(itemClass) * getPriceByRarity(rarity); ForSelling = !(itemClass == ClassOfItem.Quest || itemClass == ClassOfItem.Other); ClassName = Localization.Current.ItemClassNames[( int )itemClass]; RarityName = Localization.Current.ItemRarityNames[( int )rarity]; Timer = 0f; this.algorithmUseId = algorithmUseId; }
protected static int getPriceByRarity(TypeOfItemRarity rarity) { switch (rarity) { case TypeOfItemRarity.Legendary: // Легендарний return(25); case TypeOfItemRarity.Epic: // Епічний return(18); case TypeOfItemRarity.Rare: // Рідкісний return(12); case TypeOfItemRarity.Unusual: // Незвичайний return(7); } return(1); // Мотлох і звичайний }
public HeadEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, MaterialOfEquipment material, int count = 1) : base(id, nameId, level, sprite, rarity, 19, modelId, material, PartOfEquipment.Head, count) { }
public NeckEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 20, modelId, MaterialOfEquipment.Other, PartOfEquipment.Neck, count) { }
public HammerWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 30, modelId, TypeOfWeapon.Hammer, count) { }
public AccessoryEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 14, modelId, MaterialOfEquipment.Other, PartOfEquipment.Accessory, count) { }
public static string WrapString(string text, TypeOfItemRarity color) { return($"<color={richColorsByRarity[ color ]}>{text}</color>"); }
public static string RichColor(TypeOfItemRarity rarity) { return(richColorsByRarity[rarity]); }
public CloakSpine(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 13, modelId, SpineMode.Cloak, count) { }
public BowWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 27, modelId, TypeOfWeapon.Bow, count) { }
protected NormalItem(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int descriptionId, int count = 1, int algorithmUseId = -1) : base(id, nameId, level, sprite, rarity, descriptionId, ClassOfItem.Normal, count, algorithmUseId) { }
public ShouldersEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, MaterialOfEquipment material, int count = 1) : base(id, nameId, level, sprite, rarity, 22, modelId, material, PartOfEquipment.Shoulders, count) { }
public StaffWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 31, modelId, TypeOfWeapon.Staff, count) { }
public WandWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 33, modelId, TypeOfWeapon.Wand, count) { }
public AxWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 26, modelId, TypeOfWeapon.Ax, count) { CurrentCharacteristic.PhysicalAttackPower = 50; }
protected SpineEquipment(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int descriptionId, int modelId, SpineMode mode, int count = 1) : base(id, nameId, level, sprite, rarity, descriptionId, modelId, MaterialOfEquipment.Other, PartOfEquipment.Spine, count) { Mode = mode; ModeName = Localization.Current.SpineEquipmentModeNames[( int )mode]; }
public static Color BaseColor(TypeOfItemRarity rarity) { return(baseColorsByRarity[rarity]); }
public DaggerWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 29, modelId, TypeOfWeapon.Dagger, count) { CurrentCharacteristic.ChanceOfParrying = 10; CurrentCharacteristic.PhysicalAttackPower = 25; }
public ShieldSpine(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 12, modelId, SpineMode.Shield, count) { price += 16; }
public BrassKnucklesWeapon(int id, int nameId, int level, Sprites sprite, TypeOfItemRarity rarity, int modelId, int count = 1) : base(id, nameId, level, sprite, rarity, 28, modelId, TypeOfWeapon.BrassKnuckles, count) { CurrentCharacteristic.PhysicalAttackPower = 5; CurrentCharacteristic.ChanceOfParrying = 25; CurrentCharacteristic.Speed = 50; }