ModernUO/Scripts/Engines/Factions/Definitions/FactionItemDefinition.cs

48 lines
No EOL
1.5 KiB
C#

using System;
using Server.Items;
using Server.Mobiles;
namespace Server.Factions
{
public class FactionItemDefinition
{
private static FactionItemDefinition m_MetalArmor = new FactionItemDefinition(1000, typeof(Blacksmith));
private static FactionItemDefinition m_Weapon = new FactionItemDefinition(1000, typeof(Blacksmith));
private static FactionItemDefinition m_RangedWeapon = new FactionItemDefinition(1000, typeof(Bowyer));
private static FactionItemDefinition m_LeatherArmor = new FactionItemDefinition(750, typeof(Tailor));
private static FactionItemDefinition m_Clothing = new FactionItemDefinition(200, typeof(Tailor));
private static FactionItemDefinition m_Scroll = new FactionItemDefinition(500, typeof(Mage));
public FactionItemDefinition(int silverCost, Type vendorType)
{
SilverCost = silverCost;
VendorType = vendorType;
}
public int SilverCost{ get; }
public Type VendorType{ get; }
public static FactionItemDefinition Identify(Item item)
{
if (item is BaseArmor armor)
{
if (CraftResources.GetType(armor.Resource) == CraftResourceType.Leather)
return m_LeatherArmor;
return m_MetalArmor;
}
if (item is BaseRanged)
return m_RangedWeapon;
if (item is BaseWeapon)
return m_Weapon;
if (item is BaseClothing)
return m_Clothing;
if (item is SpellScroll)
return m_Scroll;
return null;
}
}
}