using System;
using System.Collections;
namespace Server.Items
{
public enum CraftResource
{
None = 0,
Iron = 1,
DullCopper,
ShadowIron,
Copper,
Bronze,
Gold,
Silver,
Agapite,
Verite,
Valorite,
Uridium,
Trillium,
Titanium,
Platinum,
Zenite,
Naquinite,
Galvinite,
Trilamide,
Veramide,
Zenlamide,
RegularLeather = 101,
SpinedLeather,
HornedLeather,
BarbedLeather,
RibbedLeather,
DreadLeather,
EtheralLeather,
RedScales = 201,
YellowScales,
BlackScales,
GreenScales,
WhiteScales,
BlueScales,
RegularLog = 301,
Oak,
Ash,
Yew,
HeartWood,
BloodWood,
FrostWood,
RegularCrystal = 401,
Amazonite,
Amber,
Amethyst,
Aragonite,
Bixbite,
BloodStone,
Calcite,
GoldStone,
Labradorite,
Moldavite,
Morganite,
Quartz,
Rhodonite,
Ruby,
Sapphire,
Sugilite,
Tanzanite,
Turquoise,
Varisite,
RegularPowder = 501,
IronPowder,
DullCopperPowder,
ShadowIronPowder,
CopperPowder,
BronzePowder,
GoldPowder,
SilverPowder,
AgapitePowder,
VeritePowder,
ValoritePowder,
UridiumPowder,
TrilliumPowder,
TitaniumPowder,
PlatinumPowder,
ZenitePowder,
NaquinitePowder,
GalvinitePowder,
TrilamidePowder,
VeramidePowder,
ZenlamidePowder,
EtheralPowder
}
public enum CraftResourceType
{
None,
Metal,
Leather,
Scales,
Logs,
Crystals,
Powders
}
public class CraftAttributeInfo
{
private int m_WeaponFireDamage;
private int m_WeaponColdDamage;
private int m_WeaponPoisonDamage;
private int m_WeaponEnergyDamage;
private int m_WeaponDurability;
private int m_WeaponLuck;
private int m_WeaponGoldIncrease;
private int m_WeaponLowerRequirements;
private int m_ArmorPhysicalResist;
private int m_ArmorFireResist;
private int m_ArmorColdResist;
private int m_ArmorPoisonResist;
private int m_ArmorEnergyResist;
private int m_ArmorDurability;
private int m_ArmorLuck;
private int m_ArmorGoldIncrease;
private int m_ArmorLowerRequirements;
private int m_RunicMinAttributes;
private int m_RunicMaxAttributes;
private int m_RunicMinIntensity;
private int m_RunicMaxIntensity;
public int WeaponFireDamage{ get{ return m_WeaponFireDamage; } set{ m_WeaponFireDamage = value; } }
public int WeaponColdDamage{ get{ return m_WeaponColdDamage; } set{ m_WeaponColdDamage = value; } }
public int WeaponPoisonDamage{ get{ return m_WeaponPoisonDamage; } set{ m_WeaponPoisonDamage = value; } }
public int WeaponEnergyDamage{ get{ return m_WeaponEnergyDamage; } set{ m_WeaponEnergyDamage = value; } }
public int WeaponDurability{ get{ return m_WeaponDurability; } set{ m_WeaponDurability = value; } }
public int WeaponLuck{ get{ return m_WeaponLuck; } set{ m_WeaponLuck = value; } }
public int WeaponGoldIncrease{ get{ return m_WeaponGoldIncrease; } set{ m_WeaponGoldIncrease = value; } }
public int WeaponLowerRequirements{ get{ return m_WeaponLowerRequirements; } set{ m_WeaponLowerRequirements = value; } }
public int ArmorPhysicalResist{ get{ return m_ArmorPhysicalResist; } set{ m_ArmorPhysicalResist = value; } }
public int ArmorFireResist{ get{ return m_ArmorFireResist; } set{ m_ArmorFireResist = value; } }
public int ArmorColdResist{ get{ return m_ArmorColdResist; } set{ m_ArmorColdResist = value; } }
public int ArmorPoisonResist{ get{ return m_ArmorPoisonResist; } set{ m_ArmorPoisonResist = value; } }
public int ArmorEnergyResist{ get{ return m_ArmorEnergyResist; } set{ m_ArmorEnergyResist = value; } }
public int ArmorDurability{ get{ return m_ArmorDurability; } set{ m_ArmorDurability = value; } }
public int ArmorLuck{ get{ return m_ArmorLuck; } set{ m_ArmorLuck = value; } }
public int ArmorGoldIncrease{ get{ return m_ArmorGoldIncrease; } set{ m_ArmorGoldIncrease = value; } }
public int ArmorLowerRequirements{ get{ return m_ArmorLowerRequirements; } set{ m_ArmorLowerRequirements = value; } }
public int RunicMinAttributes{ get{ return m_RunicMinAttributes; } set{ m_RunicMinAttributes = value; } }
public int RunicMaxAttributes{ get{ return m_RunicMaxAttributes; } set{ m_RunicMaxAttributes = value; } }
public int RunicMinIntensity{ get{ return m_RunicMinIntensity; } set{ m_RunicMinIntensity = value; } }
public int RunicMaxIntensity{ get{ return m_RunicMaxIntensity; } set{ m_RunicMaxIntensity = value; } }
public CraftAttributeInfo()
{
}
public static readonly CraftAttributeInfo Blank;
public static readonly CraftAttributeInfo DullCopper, ShadowIron, Copper, Bronze, Golden, Silver, Agapite, Verite, Valorite, Uridium, Trillium, Titanium, Platinum, Zenite, Naquinite, Galvinite, Trilamide, Veramide, Zenlamide;
public static readonly CraftAttributeInfo Spined, Horned, Barbed, Ribbed, Dread, Etheral;
public static readonly CraftAttributeInfo RedScales, YellowScales, BlackScales, GreenScales, WhiteScales, BlueScales;
public static readonly CraftAttributeInfo RegularLog, Oak, Ash, Yew, HeartWood, BloodWood, FrostWood;
public static readonly CraftAttributeInfo RegularCrystal, Amazonite, Amber, Amethyst, Aragonite, Bixbite, BloodStone, Calcite, GoldStone, Labradorite, Moldavite, Morganite, Quartz, Rhodonite, Ruby, Sapphire, Sugilite, Tanzanite, Turquoise, Varisite;
public static readonly CraftAttributeInfo RegularPowder, IronPowder, DullCopperPowder, ShadowIronPowder, CopperPowder, BronzePowder, GoldPowder, SilverPowder, AgapitePowder, VeritePowder, ValoritePowder, UridiumPowder, TrilliumPowder, TitaniumPowder, PlatinumPowder, ZenitePowder, NaquinitePowder, GalvinitePowder, TrilamidePowder, VeramidePowder, ZenlamidePowder, EtheralPowder;
static CraftAttributeInfo()
{
Blank = new CraftAttributeInfo();
CraftAttributeInfo dullCopper = DullCopper = new CraftAttributeInfo();
dullCopper.ArmorPhysicalResist = 1;
dullCopper.ArmorDurability = 50;
dullCopper.ArmorLowerRequirements = 20;
dullCopper.WeaponDurability = 100;
dullCopper.WeaponLowerRequirements = 50;
dullCopper.RunicMinAttributes = 1;
dullCopper.RunicMaxAttributes = 2;
dullCopper.RunicMinIntensity = 10;
dullCopper.RunicMaxIntensity = 35;
CraftAttributeInfo shadowIron = ShadowIron = new CraftAttributeInfo();
shadowIron.ArmorPhysicalResist = 2;
shadowIron.ArmorFireResist = 1;
shadowIron.ArmorEnergyResist = 5;
shadowIron.ArmorDurability = 100;
shadowIron.WeaponColdDamage = 20;
shadowIron.WeaponDurability = 80;
shadowIron.RunicMinAttributes = 2;
shadowIron.RunicMaxAttributes = 2;
shadowIron.RunicMinIntensity = 20;
shadowIron.RunicMaxIntensity = 45;
CraftAttributeInfo copper = Copper = new CraftAttributeInfo();
copper.ArmorPhysicalResist = 2;
copper.ArmorFireResist = 1;
copper.ArmorPoisonResist = 5;
copper.ArmorEnergyResist = 2;
copper.WeaponPoisonDamage = 10;
copper.WeaponEnergyDamage = 20;
copper.RunicMinAttributes = 2;
copper.RunicMaxAttributes = 3;
copper.RunicMinIntensity = 25;
copper.RunicMaxIntensity = 50;
CraftAttributeInfo bronze = Bronze = new CraftAttributeInfo();
bronze.ArmorPhysicalResist = 3;
bronze.ArmorColdResist = 5;
bronze.ArmorPoisonResist = 1;
bronze.ArmorEnergyResist = 1;
bronze.WeaponFireDamage = 40;
bronze.RunicMinAttributes = 3;
bronze.RunicMaxAttributes = 3;
bronze.RunicMinIntensity = 30;
bronze.RunicMaxIntensity = 65;
CraftAttributeInfo golden = Golden = new CraftAttributeInfo();
golden.ArmorPhysicalResist = 3;
golden.ArmorFireResist = 1;
golden.ArmorColdResist = 2;
golden.ArmorEnergyResist = 2;
golden.ArmorLuck = 40;
golden.ArmorLowerRequirements = 30;
golden.WeaponLuck = 40;
golden.WeaponLowerRequirements = 50;
golden.RunicMinAttributes = 3;
golden.RunicMaxAttributes = 4;
golden.RunicMinIntensity = 35;
golden.RunicMaxIntensity = 75;
CraftAttributeInfo silver = Silver = new CraftAttributeInfo();
silver.ArmorPhysicalResist = 4;
silver.ArmorFireResist = 1;
silver.ArmorColdResist = 2;
silver.ArmorEnergyResist = 2;
silver.ArmorLuck = 40;
silver.ArmorLowerRequirements = 30;
silver.WeaponLuck = 40;
silver.WeaponLowerRequirements = 50;
silver.RunicMinAttributes = 3;
silver.RunicMaxAttributes = 4;
silver.RunicMinIntensity = 35;
silver.RunicMaxIntensity = 75;
CraftAttributeInfo agapite = Agapite = new CraftAttributeInfo();
agapite.ArmorPhysicalResist = 4;
agapite.ArmorFireResist = 3;
agapite.ArmorColdResist = 2;
agapite.ArmorPoisonResist = 2;
agapite.ArmorEnergyResist = 2;
agapite.WeaponColdDamage = 30;
agapite.WeaponEnergyDamage = 20;
agapite.RunicMinAttributes = 4;
agapite.RunicMaxAttributes = 4;
agapite.RunicMinIntensity = 40;
agapite.RunicMaxIntensity = 80;
CraftAttributeInfo verite = Verite = new CraftAttributeInfo();
verite.ArmorPhysicalResist = 5;
verite.ArmorFireResist = 3;
verite.ArmorColdResist = 2;
verite.ArmorPoisonResist = 3;
verite.ArmorEnergyResist = 1;
verite.WeaponPoisonDamage = 50;
verite.WeaponEnergyDamage = 20;
verite.RunicMinAttributes = 4;
verite.RunicMaxAttributes = 5;
verite.RunicMinIntensity = 45;
verite.RunicMaxIntensity = 90;
verite.ArmorLuck = 50;
verite.WeaponLuck = 50;
CraftAttributeInfo valorite = Valorite = new CraftAttributeInfo();
valorite.ArmorPhysicalResist = 5;
valorite.ArmorColdResist = 3;
valorite.ArmorPoisonResist = 3;
valorite.ArmorEnergyResist = 3;
valorite.ArmorDurability = 50;
valorite.WeaponFireDamage = 10;
valorite.WeaponColdDamage = 20;
valorite.WeaponPoisonDamage = 10;
valorite.WeaponEnergyDamage = 20;
valorite.RunicMinAttributes = 5;
valorite.RunicMaxAttributes = 5;
valorite.RunicMinIntensity = 50;
valorite.RunicMaxIntensity = 100;
CraftAttributeInfo uridium = Uridium = new CraftAttributeInfo();
uridium.ArmorPhysicalResist = 6;
uridium.ArmorFireResist = 3;
uridium.ArmorColdResist = 7;
uridium.ArmorPoisonResist = 4;
uridium.ArmorEnergyResist = 7;
uridium.ArmorDurability = 60;
uridium.WeaponFireDamage = 0;
uridium.WeaponColdDamage = 70;
uridium.WeaponPoisonDamage = 0;
uridium.WeaponEnergyDamage = 30;
uridium.RunicMinAttributes = 5;
uridium.RunicMaxAttributes = 5;
uridium.RunicMinIntensity = 50;
uridium.RunicMaxIntensity = 100;
CraftAttributeInfo trillium = Trillium = new CraftAttributeInfo();
trillium.ArmorPhysicalResist = 6;
trillium.ArmorFireResist = 6;
trillium.ArmorColdResist = 3;
trillium.ArmorPoisonResist = 3;
trillium.ArmorEnergyResist = 6;
trillium.ArmorDurability = 30;
trillium.WeaponFireDamage = 50;
trillium.WeaponColdDamage = 0;
trillium.WeaponPoisonDamage = 0;
trillium.WeaponEnergyDamage = 50;
trillium.RunicMinAttributes = 5;
trillium.RunicMaxAttributes = 6;
trillium.RunicMinIntensity = 60;
trillium.RunicMaxIntensity = 100;
trillium.ArmorLuck = 25;
trillium.WeaponLuck = 25;
CraftAttributeInfo titanium = Titanium = new CraftAttributeInfo();
titanium.ArmorPhysicalResist = 8;
titanium.ArmorFireResist = 5;
titanium.ArmorColdResist = 9;
titanium.ArmorPoisonResist = 5;
titanium.ArmorEnergyResist = 6;
titanium.ArmorDurability = 70;
titanium.WeaponFireDamage = 30;
titanium.WeaponColdDamage = 30;
titanium.WeaponPoisonDamage = 10;
titanium.WeaponEnergyDamage = 30;
titanium.RunicMinAttributes = 5;
titanium.RunicMaxAttributes = 6;
titanium.RunicMinIntensity = 60;
titanium.RunicMaxIntensity = 100;
CraftAttributeInfo platinum = Platinum = new CraftAttributeInfo();
platinum.ArmorPhysicalResist = 7;
platinum.ArmorFireResist = 6;
platinum.ArmorColdResist = 8;
platinum.ArmorPoisonResist = 6;
platinum.ArmorEnergyResist = 8;
platinum.ArmorDurability = 70;
platinum.WeaponFireDamage = 0;
platinum.WeaponColdDamage = 50;
platinum.WeaponPoisonDamage = 50;
platinum.WeaponEnergyDamage = 0;
platinum.RunicMinAttributes = 6;
platinum.RunicMaxAttributes = 6;
platinum.RunicMinIntensity = 60;
platinum.RunicMaxIntensity = 60;
CraftAttributeInfo zenite = Zenite = new CraftAttributeInfo();
zenite.ArmorPhysicalResist = 7;
zenite.ArmorFireResist = 5;
zenite.ArmorColdResist = 5;
zenite.ArmorPoisonResist = 10;
zenite.ArmorEnergyResist = 8;
zenite.ArmorDurability = 80;
zenite.WeaponFireDamage = 0;
zenite.WeaponColdDamage = 0;
zenite.WeaponPoisonDamage = 100;
zenite.WeaponEnergyDamage = 0;
zenite.RunicMinAttributes = 6;
zenite.RunicMaxAttributes = 6;
zenite.RunicMinIntensity = 65;
zenite.RunicMaxIntensity = 100;
CraftAttributeInfo naquinite = Naquinite = new CraftAttributeInfo();
naquinite.ArmorPhysicalResist = 8;
naquinite.ArmorFireResist = 10;
naquinite.ArmorColdResist = 7;
naquinite.ArmorPoisonResist = 10;
naquinite.ArmorEnergyResist = 7;
naquinite.ArmorDurability = 80;
naquinite.WeaponFireDamage = 0;
naquinite.WeaponColdDamage = 0;
naquinite.WeaponPoisonDamage = 0;
naquinite.WeaponEnergyDamage = 100;
naquinite.RunicMinAttributes = 6;
naquinite.RunicMaxAttributes = 7;
naquinite.RunicMinIntensity = 65;
naquinite.RunicMaxIntensity = 100;
naquinite.ArmorLuck = 80;
naquinite.WeaponLuck = 80;
CraftAttributeInfo galvinite = Galvinite = new CraftAttributeInfo();
galvinite.ArmorPhysicalResist = 10;
galvinite.ArmorFireResist = 8;
galvinite.ArmorColdResist = 8;
galvinite.ArmorPoisonResist = 8;
galvinite.ArmorEnergyResist = 9;
galvinite.ArmorDurability = 100;
galvinite.WeaponFireDamage = 0;
galvinite.WeaponColdDamage = 20;
galvinite.WeaponPoisonDamage = 0;
galvinite.WeaponEnergyDamage = 80;
galvinite.RunicMinAttributes = 7;
galvinite.RunicMaxAttributes = 7;
galvinite.RunicMinIntensity = 70;
galvinite.RunicMaxIntensity = 100;
galvinite.ArmorLuck = 0;
galvinite.WeaponLuck = 0;
CraftAttributeInfo trilamide = Trilamide = new CraftAttributeInfo();
trilamide.ArmorPhysicalResist = 9;
trilamide.ArmorFireResist = 10;
trilamide.ArmorColdResist = 6;
trilamide.ArmorPoisonResist = 8;
trilamide.ArmorEnergyResist = 8;
trilamide.ArmorDurability = 90;
trilamide.WeaponFireDamage = 100;
trilamide.WeaponColdDamage = 0;
trilamide.WeaponPoisonDamage = 0;
trilamide.WeaponEnergyDamage = 0;
trilamide.RunicMinAttributes = 7;
trilamide.RunicMaxAttributes = 8;
trilamide.RunicMinIntensity = 70;
trilamide.RunicMaxIntensity = 100;
trilamide.ArmorLuck = 25;
trilamide.WeaponLuck = 25;
CraftAttributeInfo veramide = Veramide = new CraftAttributeInfo();
veramide.ArmorPhysicalResist = 10;
veramide.ArmorFireResist = 7;
veramide.ArmorColdResist = 7;
veramide.ArmorPoisonResist = 10;
veramide.ArmorEnergyResist = 7;
veramide.ArmorDurability = 100;
veramide.WeaponFireDamage = 0;
veramide.WeaponColdDamage = 0;
veramide.WeaponPoisonDamage = 100;
veramide.WeaponEnergyDamage = 0;
veramide.RunicMinAttributes = 8;
veramide.RunicMaxAttributes = 8;
veramide.RunicMinIntensity = 75;
veramide.RunicMaxIntensity = 100;
veramide.ArmorLuck = 100;
veramide.WeaponLuck = 100;
CraftAttributeInfo zenlamide = Zenlamide = new CraftAttributeInfo();
zenlamide.ArmorPhysicalResist = 10;
zenlamide.ArmorFireResist = 9;
zenlamide.ArmorColdResist = 8;
zenlamide.ArmorPoisonResist = 9;
zenlamide.ArmorEnergyResist = 10;
zenlamide.ArmorDurability = 100;
zenlamide.WeaponFireDamage = 0;
zenlamide.WeaponColdDamage = 0;
zenlamide.WeaponPoisonDamage = 0;
zenlamide.WeaponEnergyDamage = 100;
zenlamide.RunicMinAttributes = 8;
zenlamide.RunicMaxAttributes = 8;
zenlamide.RunicMinIntensity = 80;
zenlamide.RunicMaxIntensity = 100;
zenlamide.ArmorLuck = 250;
zenlamide.WeaponLuck = 250;
CraftAttributeInfo spined = Spined = new CraftAttributeInfo();
spined.ArmorPhysicalResist = 5;
spined.ArmorLuck = 40;
spined.RunicMinAttributes = 1;
spined.RunicMaxAttributes = 3;
spined.RunicMinIntensity = 20;
spined.RunicMaxIntensity = 40;
CraftAttributeInfo horned = Horned = new CraftAttributeInfo();
horned.ArmorPhysicalResist = 2;
horned.ArmorFireResist = 3;
horned.ArmorColdResist = 2;
horned.ArmorPoisonResist = 2;
horned.ArmorEnergyResist = 2;
horned.RunicMinAttributes = 3;
horned.RunicMaxAttributes = 4;
horned.RunicMinIntensity = 30;
horned.RunicMaxIntensity = 70;
CraftAttributeInfo barbed = Barbed = new CraftAttributeInfo();
barbed.ArmorPhysicalResist = 2;
barbed.ArmorFireResist = 1;
barbed.ArmorColdResist = 2;
barbed.ArmorPoisonResist = 3;
barbed.ArmorEnergyResist = 4;
barbed.RunicMinAttributes = 4;
barbed.RunicMaxAttributes = 5;
barbed.RunicMinIntensity = 40;
barbed.RunicMaxIntensity = 100;
CraftAttributeInfo ribbed = Ribbed = new CraftAttributeInfo();
ribbed.ArmorPhysicalResist = 4;
ribbed.ArmorFireResist = 5;
ribbed.ArmorColdResist = 4;
ribbed.ArmorPoisonResist = 4;
ribbed.ArmorEnergyResist = 5;
ribbed.RunicMinAttributes = 5;
ribbed.RunicMaxAttributes = 5;
ribbed.RunicMinIntensity = 50;
ribbed.RunicMaxIntensity = 100;
CraftAttributeInfo dread = Dread = new CraftAttributeInfo();
dread.ArmorPhysicalResist = 5;
dread.ArmorFireResist = 3;
dread.ArmorColdResist = 6;
dread.ArmorPoisonResist = 5;
dread.ArmorEnergyResist = 5;
dread.RunicMinAttributes = 5;
dread.RunicMaxAttributes = 6;
dread.RunicMinIntensity = 75;
dread.RunicMaxIntensity = 100;
CraftAttributeInfo etheral = Etheral = new CraftAttributeInfo();
etheral.ArmorPhysicalResist = 6;
etheral.ArmorFireResist = 5;
etheral.ArmorColdResist = 4;
etheral.ArmorPoisonResist = 5;
etheral.ArmorEnergyResist = 6;
etheral.RunicMinAttributes = 6;
etheral.RunicMaxAttributes = 6;
etheral.RunicMinIntensity = 80;
etheral.RunicMaxIntensity = 100;
CraftAttributeInfo red = RedScales = new CraftAttributeInfo();
red.ArmorPhysicalResist = 7;
red.ArmorFireResist = 12;
red.ArmorColdResist = 2;
red.ArmorPoisonResist = 1;
red.ArmorEnergyResist = 3;
red.RunicMinAttributes = 1;
red.RunicMaxAttributes = 5;
red.RunicMinIntensity = 25;
red.RunicMaxIntensity = 75;
red.ArmorLuck = 50;
CraftAttributeInfo yellow = YellowScales = new CraftAttributeInfo();
yellow.ArmorPhysicalResist = 2;
yellow.ArmorFireResist = 3;
yellow.ArmorColdResist = 2;
yellow.ArmorPoisonResist = 2;
yellow.ArmorEnergyResist = 4;
yellow.RunicMinAttributes = 2;
yellow.RunicMaxAttributes = 5;
yellow.RunicMinIntensity = 25;
yellow.RunicMaxIntensity = 75;
yellow.ArmorLuck = 50;
CraftAttributeInfo black = BlackScales = new CraftAttributeInfo();
black.ArmorPhysicalResist = 17;
black.ArmorFireResist = 2;
black.ArmorColdResist = 2;
black.ArmorPoisonResist = 4;
black.ArmorEnergyResist = 12;
black.RunicMinAttributes = 3;
black.RunicMaxAttributes = 5;
black.RunicMinIntensity = 25;
black.RunicMaxIntensity = 75;
black.ArmorLuck = 70;
CraftAttributeInfo green = GreenScales = new CraftAttributeInfo();
green.ArmorPhysicalResist = 9;
green.ArmorFireResist = 2;
green.ArmorColdResist = 5;
green.ArmorPoisonResist = 17;
green.ArmorEnergyResist = 2;
green.RunicMinAttributes = 4;
green.RunicMaxAttributes = 5;
green.RunicMinIntensity = 25;
green.RunicMaxIntensity = 75;
green.ArmorLuck = 60;
CraftAttributeInfo white = WhiteScales = new CraftAttributeInfo();
white.ArmorPhysicalResist = 7;
white.ArmorFireResist = 7;
white.ArmorColdResist = 7;
white.ArmorPoisonResist = 7;
white.ArmorEnergyResist = 17;
white.RunicMinAttributes = 5;
white.RunicMaxAttributes = 5;
white.RunicMinIntensity = 25;
white.RunicMaxIntensity = 75;
white.ArmorLuck = 80;
CraftAttributeInfo blue = BlueScales = new CraftAttributeInfo();
blue.ArmorPhysicalResist = 12;
blue.ArmorFireResist = 2;
blue.ArmorColdResist = 17;
blue.ArmorPoisonResist = 7;
blue.ArmorEnergyResist = 5;
blue.RunicMinAttributes = 5;
blue.RunicMaxAttributes = 5;
blue.RunicMinIntensity = 25;
blue.RunicMaxIntensity = 100;
blue.ArmorLuck = 80;
CraftAttributeInfo regularlog = RegularLog = new CraftAttributeInfo();
regularlog.ArmorPhysicalResist = 0;
regularlog.ArmorFireResist = 0;
regularlog.ArmorColdResist = 0;
regularlog.ArmorPoisonResist = 0;
regularlog.ArmorEnergyResist = 0;
regularlog.ArmorDurability = 0;
regularlog.WeaponFireDamage = 25;
regularlog.WeaponColdDamage = 25;
regularlog.WeaponPoisonDamage = 25;
regularlog.WeaponEnergyDamage = 25;
regularlog.RunicMinAttributes = 1;
regularlog.RunicMaxAttributes = 7;
regularlog.RunicMinIntensity = 10;
regularlog.RunicMaxIntensity = 40;
regularlog.ArmorLuck = 0;
regularlog.WeaponLuck = 100;
CraftAttributeInfo oak = Oak = new CraftAttributeInfo();
oak.ArmorPhysicalResist = 0;
oak.ArmorFireResist = 0;
oak.ArmorColdResist = 0;
oak.ArmorPoisonResist = 0;
oak.ArmorEnergyResist = 0;
oak.ArmorDurability = 0;
oak.WeaponFireDamage = 0;
oak.WeaponColdDamage = 0;
oak.WeaponPoisonDamage = 50;
oak.WeaponEnergyDamage = 50;
oak.RunicMinAttributes = 2;
oak.RunicMaxAttributes = 7;
oak.RunicMinIntensity = 30;
oak.RunicMaxIntensity = 50;
oak.ArmorLuck = 0;
oak.WeaponLuck = 50;
CraftAttributeInfo ash = Ash = new CraftAttributeInfo();
ash.ArmorPhysicalResist = 0;
ash.ArmorFireResist = 0;
ash.ArmorColdResist = 0;
ash.ArmorPoisonResist = 0;
ash.ArmorEnergyResist = 0;
ash.ArmorDurability = 0;
ash.WeaponFireDamage = 50;
ash.WeaponColdDamage = 50;
ash.WeaponPoisonDamage = 0;
ash.WeaponEnergyDamage = 0;
ash.RunicMinAttributes = 3;
ash.RunicMaxAttributes = 7;
ash.RunicMinIntensity = 40;
ash.RunicMaxIntensity = 60;
ash.ArmorLuck = 0;
ash.WeaponLuck = 50;
CraftAttributeInfo yew = Yew = new CraftAttributeInfo();
yew.ArmorPhysicalResist = 0;
yew.ArmorFireResist = 0;
yew.ArmorColdResist = 0;
yew.ArmorPoisonResist = 0;
yew.ArmorEnergyResist = 0;
yew.ArmorDurability = 0;
yew.WeaponFireDamage = 0;
yew.WeaponColdDamage = 0;
yew.WeaponPoisonDamage = 0;
yew.WeaponEnergyDamage = 100;
yew.RunicMinAttributes = 4;
yew.RunicMaxAttributes = 7;
yew.RunicMinIntensity = 50;
yew.RunicMaxIntensity = 70;
yew.ArmorLuck = 0;
yew.WeaponLuck = 100;
CraftAttributeInfo heartwood = HeartWood = new CraftAttributeInfo();
heartwood.ArmorPhysicalResist = 0;
heartwood.ArmorFireResist = 0;
heartwood.ArmorColdResist = 0;
heartwood.ArmorPoisonResist = 0;
heartwood.ArmorEnergyResist = 0;
heartwood.ArmorDurability = 0;
heartwood.WeaponFireDamage = 0;
heartwood.WeaponColdDamage = 0;
heartwood.WeaponPoisonDamage = 100;
heartwood.WeaponEnergyDamage = 0;
heartwood.RunicMinAttributes = 5;
heartwood.RunicMaxAttributes = 7;
heartwood.RunicMinIntensity = 60;
heartwood.RunicMaxIntensity = 80;
heartwood.ArmorLuck = 0;
heartwood.WeaponLuck = 100;
CraftAttributeInfo bloodwood = BloodWood = new CraftAttributeInfo();
bloodwood.ArmorPhysicalResist = 0;
bloodwood.ArmorFireResist = 0;
bloodwood.ArmorColdResist = 0;
bloodwood.ArmorPoisonResist = 0;
bloodwood.ArmorEnergyResist = 0;
bloodwood.ArmorDurability = 0;
bloodwood.WeaponFireDamage = 100;
bloodwood.WeaponColdDamage = 0;
bloodwood.WeaponPoisonDamage = 0;
bloodwood.WeaponEnergyDamage = 0;
bloodwood.RunicMinAttributes = 6;
bloodwood.RunicMaxAttributes = 7;
bloodwood.RunicMinIntensity = 70;
bloodwood.RunicMaxIntensity = 90;
bloodwood.ArmorLuck = 0;
bloodwood.WeaponLuck = 50;
CraftAttributeInfo frostwood = FrostWood = new CraftAttributeInfo();
frostwood.ArmorPhysicalResist = 0;
frostwood.ArmorFireResist = 0;
frostwood.ArmorColdResist = 0;
frostwood.ArmorPoisonResist = 0;
frostwood.ArmorEnergyResist = 0;
frostwood.ArmorDurability = 0;
frostwood.WeaponFireDamage = 0;
frostwood.WeaponColdDamage = 100;
frostwood.WeaponPoisonDamage = 0;
frostwood.WeaponEnergyDamage = 0;
frostwood.RunicMinAttributes = 7;
frostwood.RunicMaxAttributes = 7;
frostwood.RunicMinIntensity = 80;
frostwood.RunicMaxIntensity = 100;
frostwood.ArmorLuck = 0;
frostwood.WeaponLuck = 250;
CraftAttributeInfo regularcrystal = RegularCrystal = new CraftAttributeInfo();
regularcrystal.ArmorPhysicalResist = 1;
regularcrystal.ArmorFireResist = 2;
regularcrystal.ArmorColdResist = 2;
regularcrystal.ArmorPoisonResist = 2;
regularcrystal.ArmorEnergyResist = 2;
regularcrystal.ArmorDurability = 0;
regularcrystal.WeaponFireDamage = 0;
regularcrystal.WeaponColdDamage = 0;
regularcrystal.WeaponPoisonDamage = 0;
regularcrystal.WeaponEnergyDamage = 0;
regularcrystal.RunicMinAttributes = 1;
regularcrystal.RunicMaxAttributes = 1;
regularcrystal.RunicMinIntensity = 10;
regularcrystal.RunicMaxIntensity = 30;
regularcrystal.ArmorLuck = 10;
regularcrystal.WeaponLuck = 10;
CraftAttributeInfo amazonite = Amazonite = new CraftAttributeInfo();
amazonite.ArmorPhysicalResist = 1;
amazonite.ArmorFireResist = 2;
amazonite.ArmorColdResist = 10;
amazonite.ArmorPoisonResist = 2;
amazonite.ArmorEnergyResist = 2;
amazonite.ArmorDurability = 0;
amazonite.WeaponFireDamage = 0;
amazonite.WeaponColdDamage = 100;
amazonite.WeaponPoisonDamage = 0;
amazonite.WeaponEnergyDamage = 0;
amazonite.RunicMinAttributes = 1;
amazonite.RunicMaxAttributes = 1;
amazonite.RunicMinIntensity = 20;
amazonite.RunicMaxIntensity = 40;
amazonite.ArmorLuck = 10;
amazonite.WeaponLuck = 10;
CraftAttributeInfo amber = Amber = new CraftAttributeInfo();
amber.ArmorPhysicalResist = 2;
amber.ArmorFireResist = 5;
amber.ArmorColdResist = 3;
amber.ArmorPoisonResist = 3;
amber.ArmorEnergyResist = 3;
amber.ArmorDurability = 0;
amber.WeaponFireDamage = 50;
amber.WeaponColdDamage = 10;
amber.WeaponPoisonDamage = 10;
amber.WeaponEnergyDamage = 30;
amber.RunicMinAttributes = 2;
amber.RunicMaxAttributes = 2;
amber.RunicMinIntensity = 20;
amber.RunicMaxIntensity = 40;
amber.ArmorLuck = 10;
amber.WeaponLuck = 20;
CraftAttributeInfo amethyst = Amethyst = new CraftAttributeInfo();
amethyst.ArmorPhysicalResist = 2;
amethyst.ArmorFireResist = 3;
amethyst.ArmorColdResist = 3;
amethyst.ArmorPoisonResist = 3;
amethyst.ArmorEnergyResist = 5;
amethyst.ArmorDurability = 0;
amethyst.WeaponFireDamage = 20;
amethyst.WeaponColdDamage = 20;
amethyst.WeaponPoisonDamage = 10;
amethyst.WeaponEnergyDamage = 50;
amethyst.RunicMinAttributes = 2;
amethyst.RunicMaxAttributes = 2;
amethyst.RunicMinIntensity = 30;
amethyst.RunicMaxIntensity = 50;
amethyst.ArmorLuck = 20;
amethyst.WeaponLuck = 20;
CraftAttributeInfo aragonite = Aragonite = new CraftAttributeInfo();
aragonite.ArmorPhysicalResist = 3;
aragonite.ArmorFireResist = 4;
aragonite.ArmorColdResist = 4;
aragonite.ArmorPoisonResist = 4;
aragonite.ArmorEnergyResist = 4;
aragonite.ArmorDurability = 0;
aragonite.WeaponFireDamage = 25;
aragonite.WeaponColdDamage = 25;
aragonite.WeaponPoisonDamage = 25;
aragonite.WeaponEnergyDamage = 25;
aragonite.RunicMinAttributes = 2;
aragonite.RunicMaxAttributes = 2;
aragonite.RunicMinIntensity = 30;
aragonite.RunicMaxIntensity = 50;
aragonite.ArmorLuck = 30;
aragonite.WeaponLuck = 20;
CraftAttributeInfo bixbite = Bixbite = new CraftAttributeInfo();
bixbite.ArmorPhysicalResist = 4;
bixbite.ArmorFireResist = 10;
bixbite.ArmorColdResist = 4;
bixbite.ArmorPoisonResist = 5;
bixbite.ArmorEnergyResist = 5;
bixbite.ArmorDurability = 0;
bixbite.WeaponFireDamage = 100;
bixbite.WeaponColdDamage = 0;
bixbite.WeaponPoisonDamage = 0;
bixbite.WeaponEnergyDamage = 0;
bixbite.RunicMinAttributes = 3;
bixbite.RunicMaxAttributes = 3;
bixbite.RunicMinIntensity = 30;
bixbite.RunicMaxIntensity = 50;
bixbite.ArmorLuck = 30;
bixbite.WeaponLuck = 30;
CraftAttributeInfo bloodstone = BloodStone = new CraftAttributeInfo();
bloodstone.ArmorPhysicalResist = 4;
bloodstone.ArmorFireResist = 5;
bloodstone.ArmorColdResist = 4;
bloodstone.ArmorPoisonResist = 5;
bloodstone.ArmorEnergyResist = 10;
bloodstone.ArmorDurability = 0;
bloodstone.WeaponFireDamage = 0;
bloodstone.WeaponColdDamage = 0;
bloodstone.WeaponPoisonDamage = 0;
bloodstone.WeaponEnergyDamage = 100;
bloodstone.RunicMinAttributes = 3;
bloodstone.RunicMaxAttributes = 3;
bloodstone.RunicMinIntensity = 30;
bloodstone.RunicMaxIntensity = 50;
bloodstone.ArmorLuck = 30;
bloodstone.WeaponLuck = 30;
CraftAttributeInfo calcite = Calcite = new CraftAttributeInfo();
calcite.ArmorPhysicalResist = 4;
calcite.ArmorFireResist = 5;
calcite.ArmorColdResist = 5;
calcite.ArmorPoisonResist = 6;
calcite.ArmorEnergyResist = 5;
calcite.ArmorDurability = 0;
calcite.WeaponFireDamage = 20;
calcite.WeaponColdDamage = 20;
calcite.WeaponPoisonDamage = 30;
calcite.WeaponEnergyDamage = 30;
calcite.RunicMinAttributes = 4;
calcite.RunicMaxAttributes = 4;
calcite.RunicMinIntensity = 40;
calcite.RunicMaxIntensity = 60;
calcite.ArmorLuck = 40;
calcite.WeaponLuck = 40;
CraftAttributeInfo goldstone = GoldStone = new CraftAttributeInfo();
goldstone.ArmorPhysicalResist = 5;
goldstone.ArmorFireResist = 6;
goldstone.ArmorColdResist = 6;
goldstone.ArmorPoisonResist = 5;
goldstone.ArmorEnergyResist = 5;
goldstone.ArmorDurability = 0;
goldstone.WeaponFireDamage = 30;
goldstone.WeaponColdDamage = 30;
goldstone.WeaponPoisonDamage = 20;
goldstone.WeaponEnergyDamage = 20;
goldstone.RunicMinAttributes = 5;
goldstone.RunicMaxAttributes = 5;
goldstone.RunicMinIntensity = 40;
goldstone.RunicMaxIntensity = 60;
goldstone.ArmorLuck = 45;
goldstone.WeaponLuck = 45;
CraftAttributeInfo labradorite = Labradorite = new CraftAttributeInfo();
labradorite.ArmorPhysicalResist = 5;
labradorite.ArmorFireResist = 6;
labradorite.ArmorColdResist = 10;
labradorite.ArmorPoisonResist = 6;
labradorite.ArmorEnergyResist = 6;
labradorite.ArmorDurability = 0;
labradorite.WeaponFireDamage = 0;
labradorite.WeaponColdDamage = 100;
labradorite.WeaponPoisonDamage = 0;
labradorite.WeaponEnergyDamage = 0;
labradorite.RunicMinAttributes = 5;
labradorite.RunicMaxAttributes = 5;
labradorite.RunicMinIntensity = 40;
labradorite.RunicMaxIntensity = 60;
labradorite.ArmorLuck = 50;
labradorite.WeaponLuck = 50;
CraftAttributeInfo moldavite = Moldavite = new CraftAttributeInfo();
moldavite.ArmorPhysicalResist = 6;
moldavite.ArmorFireResist = 4;
moldavite.ArmorColdResist = 3;
moldavite.ArmorPoisonResist = 6;
moldavite.ArmorEnergyResist = 10;
moldavite.ArmorDurability = 0;
moldavite.WeaponFireDamage = 20;
moldavite.WeaponColdDamage = 0;
moldavite.WeaponPoisonDamage = 0;
moldavite.WeaponEnergyDamage = 80;
moldavite.RunicMinAttributes = 6;
moldavite.RunicMaxAttributes = 6;
moldavite.RunicMinIntensity = 40;
moldavite.RunicMaxIntensity = 70;
moldavite.ArmorLuck = 50;
moldavite.WeaponLuck = 50;
CraftAttributeInfo morganite = Morganite = new CraftAttributeInfo();
morganite.ArmorPhysicalResist = 6;
morganite.ArmorFireResist = 6;
morganite.ArmorColdResist = 7;
morganite.ArmorPoisonResist = 10;
morganite.ArmorEnergyResist = 4;
morganite.ArmorDurability = 0;
morganite.WeaponFireDamage = 0;
morganite.WeaponColdDamage = 0;
morganite.WeaponPoisonDamage = 100;
morganite.WeaponEnergyDamage = 0;
morganite.RunicMinAttributes = 6;
morganite.RunicMaxAttributes = 6;
morganite.RunicMinIntensity = 40;
morganite.RunicMaxIntensity = 70;
morganite.ArmorLuck = 50;
morganite.WeaponLuck = 50;
CraftAttributeInfo quartz = Quartz = new CraftAttributeInfo();
quartz.ArmorPhysicalResist = 7;
quartz.ArmorFireResist = 7;
quartz.ArmorColdResist = 4;
quartz.ArmorPoisonResist = 2;
quartz.ArmorEnergyResist = 10;
quartz.ArmorDurability = 0;
quartz.WeaponFireDamage = 0;
quartz.WeaponColdDamage = 0;
quartz.WeaponPoisonDamage = 0;
quartz.WeaponEnergyDamage = 100;
quartz.RunicMinAttributes = 7;
quartz.RunicMaxAttributes = 7;
quartz.RunicMinIntensity = 50;
quartz.RunicMaxIntensity = 80;
quartz.ArmorLuck = 60;
quartz.WeaponLuck = 60;
CraftAttributeInfo rhodonite = Rhodonite = new CraftAttributeInfo();
rhodonite.ArmorPhysicalResist = 7;
rhodonite.ArmorFireResist = 7;
rhodonite.ArmorColdResist = 6;
rhodonite.ArmorPoisonResist = 5;
rhodonite.ArmorEnergyResist = 7;
rhodonite.ArmorDurability = 0;
rhodonite.WeaponFireDamage = 50;
rhodonite.WeaponColdDamage = 0;
rhodonite.WeaponPoisonDamage = 0;
rhodonite.WeaponEnergyDamage = 50;
rhodonite.RunicMinAttributes = 7;
rhodonite.RunicMaxAttributes = 7;
rhodonite.RunicMinIntensity = 50;
rhodonite.RunicMaxIntensity = 80;
rhodonite.ArmorLuck = 70;
rhodonite.WeaponLuck = 70;
CraftAttributeInfo ruby = Ruby = new CraftAttributeInfo();
ruby.ArmorPhysicalResist = 7;
ruby.ArmorFireResist = 10;
ruby.ArmorColdResist = 7;
ruby.ArmorPoisonResist = 5;
ruby.ArmorEnergyResist = 8;
ruby.ArmorDurability = 0;
ruby.WeaponFireDamage = 100;
ruby.WeaponColdDamage = 0;
ruby.WeaponPoisonDamage = 0;
ruby.WeaponEnergyDamage = 0;
ruby.RunicMinAttributes = 7;
ruby.RunicMaxAttributes = 7;
ruby.RunicMinIntensity = 50;
ruby.RunicMaxIntensity = 80;
ruby.ArmorLuck = 70;
ruby.WeaponLuck = 70;
CraftAttributeInfo sapphire = Sapphire = new CraftAttributeInfo();
sapphire.ArmorPhysicalResist = 8;
sapphire.ArmorFireResist = 8;
sapphire.ArmorColdResist = 10;
sapphire.ArmorPoisonResist = 7;
sapphire.ArmorEnergyResist = 6;
sapphire.ArmorDurability = 0;
sapphire.WeaponFireDamage = 0;
sapphire.WeaponColdDamage = 100;
sapphire.WeaponPoisonDamage = 0;
sapphire.WeaponEnergyDamage = 0;
sapphire.RunicMinAttributes = 8;
sapphire.RunicMaxAttributes = 8;
sapphire.RunicMinIntensity = 60;
sapphire.RunicMaxIntensity = 90;
sapphire.ArmorLuck = 80;
sapphire.WeaponLuck = 80;
CraftAttributeInfo sugilite = Sugilite = new CraftAttributeInfo();
sugilite.ArmorPhysicalResist = 8;
sugilite.ArmorFireResist = 10;
sugilite.ArmorColdResist = 5;
sugilite.ArmorPoisonResist = 5;
sugilite.ArmorEnergyResist = 10;
sugilite.ArmorDurability = 0;
sugilite.WeaponFireDamage = 50;
sugilite.WeaponColdDamage = 0;
sugilite.WeaponPoisonDamage = 0;
sugilite.WeaponEnergyDamage = 50;
sugilite.RunicMinAttributes = 8;
sugilite.RunicMaxAttributes = 8;
sugilite.RunicMinIntensity = 60;
sugilite.RunicMaxIntensity = 90;
sugilite.ArmorLuck = 80;
sugilite.WeaponLuck = 80;
CraftAttributeInfo tanzanite = Tanzanite = new CraftAttributeInfo();
tanzanite.ArmorPhysicalResist = 9;
tanzanite.ArmorFireResist = 6;
tanzanite.ArmorColdResist = 8;
tanzanite.ArmorPoisonResist = 10;
tanzanite.ArmorEnergyResist = 7;
tanzanite.ArmorDurability = 0;
tanzanite.WeaponFireDamage = 0;
tanzanite.WeaponColdDamage = 20;
tanzanite.WeaponPoisonDamage = 80;
tanzanite.WeaponEnergyDamage = 0;
tanzanite.RunicMinAttributes = 9;
tanzanite.RunicMaxAttributes = 9;
tanzanite.RunicMinIntensity = 60;
tanzanite.RunicMaxIntensity = 100;
tanzanite.ArmorLuck = 90;
tanzanite.WeaponLuck = 90;
CraftAttributeInfo turquoise = Turquoise = new CraftAttributeInfo();
turquoise.ArmorPhysicalResist = 9;
turquoise.ArmorFireResist = 0;
turquoise.ArmorColdResist = 0;
turquoise.ArmorPoisonResist = 0;
turquoise.ArmorEnergyResist = 0;
turquoise.ArmorDurability = 0;
turquoise.WeaponFireDamage = 0;
turquoise.WeaponColdDamage = 0;
turquoise.WeaponPoisonDamage = 0;
turquoise.WeaponEnergyDamage = 0;
turquoise.RunicMinAttributes = 9;
turquoise.RunicMaxAttributes = 9;
turquoise.RunicMinIntensity = 80;
turquoise.RunicMaxIntensity = 100;
turquoise.ArmorLuck = 90;
turquoise.WeaponLuck = 90;
CraftAttributeInfo varisite = Varisite = new CraftAttributeInfo();
varisite.ArmorPhysicalResist = 10;
varisite.ArmorFireResist = 9;
varisite.ArmorColdResist = 9;
varisite.ArmorPoisonResist = 10;
varisite.ArmorEnergyResist = 9;
varisite.ArmorDurability = 0;
varisite.WeaponFireDamage = 0;
varisite.WeaponColdDamage = 0;
varisite.WeaponPoisonDamage = 100;
varisite.WeaponEnergyDamage = 0;
varisite.RunicMinAttributes = 10;
varisite.RunicMaxAttributes = 10;
varisite.RunicMinIntensity = 80;
varisite.RunicMaxIntensity = 100;
varisite.ArmorLuck = 100;
varisite.WeaponLuck = 100;
CraftAttributeInfo regularpowder = RegularPowder = new CraftAttributeInfo();
regularpowder.ArmorPhysicalResist = 0;
regularpowder.ArmorFireResist = 0;
regularpowder.ArmorColdResist = 0;
regularpowder.ArmorPoisonResist = 0;
regularpowder.ArmorEnergyResist = 0;
regularpowder.ArmorDurability = 0;
regularpowder.WeaponFireDamage = 0;
regularpowder.WeaponColdDamage = 0;
regularpowder.WeaponPoisonDamage = 0;
regularpowder.WeaponEnergyDamage = 0;
regularpowder.RunicMinAttributes = 1;
regularpowder.RunicMaxAttributes = 1;
regularpowder.RunicMinIntensity = 10;
regularpowder.RunicMaxIntensity = 20;
regularpowder.ArmorLuck = 0;
regularpowder.WeaponLuck = 0;
CraftAttributeInfo ironpowder = IronPowder = new CraftAttributeInfo();
ironpowder.ArmorPhysicalResist = 0;
ironpowder.ArmorFireResist = 0;
ironpowder.ArmorColdResist = 0;
ironpowder.ArmorPoisonResist = 0;
ironpowder.ArmorEnergyResist = 0;
ironpowder.ArmorDurability = 0;
ironpowder.WeaponFireDamage = 0;
ironpowder.WeaponColdDamage = 0;
ironpowder.WeaponPoisonDamage = 0;
ironpowder.WeaponEnergyDamage = 0;
ironpowder.RunicMinAttributes = 1;
ironpowder.RunicMaxAttributes = 1;
ironpowder.RunicMinIntensity = 10;
ironpowder.RunicMaxIntensity = 20;
ironpowder.ArmorLuck = 0;
ironpowder.WeaponLuck = 0;
CraftAttributeInfo dullcopperpowder = DullCopperPowder = new CraftAttributeInfo();
dullcopperpowder.ArmorPhysicalResist = 0;
dullcopperpowder.ArmorFireResist = 0;
dullcopperpowder.ArmorColdResist = 0;
dullcopperpowder.ArmorPoisonResist = 0;
dullcopperpowder.ArmorEnergyResist = 0;
dullcopperpowder.ArmorDurability = 0;
dullcopperpowder.WeaponFireDamage = 0;
dullcopperpowder.WeaponColdDamage = 0;
dullcopperpowder.WeaponPoisonDamage = 0;
dullcopperpowder.WeaponEnergyDamage = 0;
dullcopperpowder.RunicMinAttributes = 1;
dullcopperpowder.RunicMaxAttributes = 2;
dullcopperpowder.RunicMinIntensity = 10;
dullcopperpowder.RunicMaxIntensity = 20;
dullcopperpowder.ArmorLuck = 0;
dullcopperpowder.WeaponLuck = 0;
CraftAttributeInfo shadowironpowder = ShadowIronPowder = new CraftAttributeInfo();
shadowironpowder.ArmorPhysicalResist = 0;
shadowironpowder.ArmorFireResist = 0;
shadowironpowder.ArmorColdResist = 0;
shadowironpowder.ArmorPoisonResist = 0;
shadowironpowder.ArmorEnergyResist = 0;
shadowironpowder.ArmorDurability = 0;
shadowironpowder.WeaponFireDamage = 0;
shadowironpowder.WeaponColdDamage = 0;
shadowironpowder.WeaponPoisonDamage = 0;
shadowironpowder.WeaponEnergyDamage = 0;
shadowironpowder.RunicMinAttributes = 2;
shadowironpowder.RunicMaxAttributes = 2;
shadowironpowder.RunicMinIntensity = 10;
shadowironpowder.RunicMaxIntensity = 20;
shadowironpowder.ArmorLuck = 0;
shadowironpowder.WeaponLuck = 0;
CraftAttributeInfo copperpowder = CopperPowder = new CraftAttributeInfo();
copperpowder.ArmorPhysicalResist = 0;
copperpowder.ArmorFireResist = 0;
copperpowder.ArmorColdResist = 0;
copperpowder.ArmorPoisonResist = 0;
copperpowder.ArmorEnergyResist = 0;
copperpowder.ArmorDurability = 0;
copperpowder.WeaponFireDamage = 0;
copperpowder.WeaponColdDamage = 0;
copperpowder.WeaponPoisonDamage = 0;
copperpowder.WeaponEnergyDamage = 0;
copperpowder.RunicMinAttributes = 2;
copperpowder.RunicMaxAttributes = 2;
copperpowder.RunicMinIntensity = 10;
copperpowder.RunicMaxIntensity = 20;
copperpowder.ArmorLuck = 0;
copperpowder.WeaponLuck = 0;
CraftAttributeInfo bronzepowder = BronzePowder = new CraftAttributeInfo();
bronzepowder.ArmorPhysicalResist = 0;
bronzepowder.ArmorFireResist = 0;
bronzepowder.ArmorColdResist = 0;
bronzepowder.ArmorPoisonResist = 0;
bronzepowder.ArmorEnergyResist = 0;
bronzepowder.ArmorDurability = 0;
bronzepowder.WeaponFireDamage = 0;
bronzepowder.WeaponColdDamage = 0;
bronzepowder.WeaponPoisonDamage = 0;
bronzepowder.WeaponEnergyDamage = 0;
bronzepowder.RunicMinAttributes = 2;
bronzepowder.RunicMaxAttributes = 3;
bronzepowder.RunicMinIntensity = 10;
bronzepowder.RunicMaxIntensity = 20;
bronzepowder.ArmorLuck = 0;
bronzepowder.WeaponLuck = 0;
CraftAttributeInfo goldpowder = GoldPowder = new CraftAttributeInfo();
goldpowder.ArmorPhysicalResist = 0;
goldpowder.ArmorFireResist = 0;
goldpowder.ArmorColdResist = 0;
goldpowder.ArmorPoisonResist = 0;
goldpowder.ArmorEnergyResist = 0;
goldpowder.ArmorDurability = 0;
goldpowder.WeaponFireDamage = 0;
goldpowder.WeaponColdDamage = 0;
goldpowder.WeaponPoisonDamage = 0;
goldpowder.WeaponEnergyDamage = 0;
goldpowder.RunicMinAttributes = 2;
goldpowder.RunicMaxAttributes = 3;
goldpowder.RunicMinIntensity = 10;
goldpowder.RunicMaxIntensity = 30;
goldpowder.ArmorLuck = 0;
goldpowder.WeaponLuck = 0;
CraftAttributeInfo silverpowder = SilverPowder = new CraftAttributeInfo();
silverpowder.ArmorPhysicalResist = 0;
silverpowder.ArmorFireResist = 0;
silverpowder.ArmorColdResist = 0;
silverpowder.ArmorPoisonResist = 0;
silverpowder.ArmorEnergyResist = 0;
silverpowder.ArmorDurability = 0;
silverpowder.WeaponFireDamage = 0;
silverpowder.WeaponColdDamage = 0;
silverpowder.WeaponPoisonDamage = 0;
silverpowder.WeaponEnergyDamage = 0;
silverpowder.RunicMinAttributes = 3;
silverpowder.RunicMaxAttributes = 3;
silverpowder.RunicMinIntensity = 20;
silverpowder.RunicMaxIntensity = 30;
silverpowder.ArmorLuck = 0;
silverpowder.WeaponLuck = 0;
CraftAttributeInfo agapitepowder = AgapitePowder = new CraftAttributeInfo();
agapitepowder.ArmorPhysicalResist = 0;
agapitepowder.ArmorFireResist = 0;
agapitepowder.ArmorColdResist = 0;
agapitepowder.ArmorPoisonResist = 0;
agapitepowder.ArmorEnergyResist = 0;
agapitepowder.ArmorDurability = 0;
agapitepowder.WeaponFireDamage = 0;
agapitepowder.WeaponColdDamage = 0;
agapitepowder.WeaponPoisonDamage = 0;
agapitepowder.WeaponEnergyDamage = 0;
agapitepowder.RunicMinAttributes = 2;
agapitepowder.RunicMaxAttributes = 4;
agapitepowder.RunicMinIntensity = 20;
agapitepowder.RunicMaxIntensity = 30;
agapitepowder.ArmorLuck = 0;
agapitepowder.WeaponLuck = 0;
CraftAttributeInfo veritepowder = VeritePowder = new CraftAttributeInfo();
veritepowder.ArmorPhysicalResist = 0;
veritepowder.ArmorFireResist = 0;
veritepowder.ArmorColdResist = 0;
veritepowder.ArmorPoisonResist = 0;
veritepowder.ArmorEnergyResist = 0;
veritepowder.ArmorDurability = 0;
veritepowder.WeaponFireDamage = 0;
veritepowder.WeaponColdDamage = 0;
veritepowder.WeaponPoisonDamage = 0;
veritepowder.WeaponEnergyDamage = 0;
veritepowder.RunicMinAttributes = 4;
veritepowder.RunicMaxAttributes = 4;
veritepowder.RunicMinIntensity = 20;
veritepowder.RunicMaxIntensity = 40;
veritepowder.ArmorLuck = 0;
veritepowder.WeaponLuck = 0;
CraftAttributeInfo valoritepowder = ValoritePowder = new CraftAttributeInfo();
valoritepowder.ArmorPhysicalResist = 0;
valoritepowder.ArmorFireResist = 0;
valoritepowder.ArmorColdResist = 0;
valoritepowder.ArmorPoisonResist = 0;
valoritepowder.ArmorEnergyResist = 0;
valoritepowder.ArmorDurability = 0;
valoritepowder.WeaponFireDamage = 0;
valoritepowder.WeaponColdDamage = 0;
valoritepowder.WeaponPoisonDamage = 0;
valoritepowder.WeaponEnergyDamage = 0;
valoritepowder.RunicMinAttributes = 3;
valoritepowder.RunicMaxAttributes = 5;
valoritepowder.RunicMinIntensity = 30;
valoritepowder.RunicMaxIntensity = 40;
valoritepowder.ArmorLuck = 0;
valoritepowder.WeaponLuck = 0;
CraftAttributeInfo uridiumpowder = UridiumPowder = new CraftAttributeInfo();
uridiumpowder.ArmorPhysicalResist = 0;
uridiumpowder.ArmorFireResist = 0;
uridiumpowder.ArmorColdResist = 0;
uridiumpowder.ArmorPoisonResist = 0;
uridiumpowder.ArmorEnergyResist = 0;
uridiumpowder.ArmorDurability = 0;
uridiumpowder.WeaponFireDamage = 0;
uridiumpowder.WeaponColdDamage = 0;
uridiumpowder.WeaponPoisonDamage = 0;
uridiumpowder.WeaponEnergyDamage = 0;
uridiumpowder.RunicMinAttributes = 5;
uridiumpowder.RunicMaxAttributes = 5;
uridiumpowder.RunicMinIntensity = 20;
uridiumpowder.RunicMaxIntensity = 50;
uridiumpowder.ArmorLuck = 0;
uridiumpowder.WeaponLuck = 0;
CraftAttributeInfo trilliumpowder = TrilliumPowder = new CraftAttributeInfo();
trilliumpowder.ArmorPhysicalResist = 0;
trilliumpowder.ArmorFireResist = 0;
trilliumpowder.ArmorColdResist = 0;
trilliumpowder.ArmorPoisonResist = 0;
trilliumpowder.ArmorEnergyResist = 0;
trilliumpowder.ArmorDurability = 0;
trilliumpowder.WeaponFireDamage = 0;
trilliumpowder.WeaponColdDamage = 0;
trilliumpowder.WeaponPoisonDamage = 0;
trilliumpowder.WeaponEnergyDamage = 0;
trilliumpowder.RunicMinAttributes = 5;
trilliumpowder.RunicMaxAttributes = 6;
trilliumpowder.RunicMinIntensity = 30;
trilliumpowder.RunicMaxIntensity = 50;
trilliumpowder.ArmorLuck = 0;
trilliumpowder.WeaponLuck = 0;
CraftAttributeInfo titaniumpowder = TitaniumPowder = new CraftAttributeInfo();
titaniumpowder.ArmorPhysicalResist = 0;
titaniumpowder.ArmorFireResist = 0;
titaniumpowder.ArmorColdResist = 0;
titaniumpowder.ArmorPoisonResist = 0;
titaniumpowder.ArmorEnergyResist = 0;
titaniumpowder.ArmorDurability = 0;
titaniumpowder.WeaponFireDamage = 0;
titaniumpowder.WeaponColdDamage = 0;
titaniumpowder.WeaponPoisonDamage = 0;
titaniumpowder.WeaponEnergyDamage = 0;
titaniumpowder.RunicMinAttributes = 6;
titaniumpowder.RunicMaxAttributes = 6;
titaniumpowder.RunicMinIntensity = 30;
titaniumpowder.RunicMaxIntensity = 60;
titaniumpowder.ArmorLuck = 0;
titaniumpowder.WeaponLuck = 0;
CraftAttributeInfo platinumpowder = PlatinumPowder = new CraftAttributeInfo();
platinumpowder.ArmorPhysicalResist = 0;
platinumpowder.ArmorFireResist = 0;
platinumpowder.ArmorColdResist = 0;
platinumpowder.ArmorPoisonResist = 0;
platinumpowder.ArmorEnergyResist = 0;
platinumpowder.ArmorDurability = 0;
platinumpowder.WeaponFireDamage = 0;
platinumpowder.WeaponColdDamage = 0;
platinumpowder.WeaponPoisonDamage = 0;
platinumpowder.WeaponEnergyDamage = 0;
platinumpowder.RunicMinAttributes = 5;
platinumpowder.RunicMaxAttributes = 7;
platinumpowder.RunicMinIntensity = 40;
platinumpowder.RunicMaxIntensity = 60;
platinumpowder.ArmorLuck = 0;
platinumpowder.WeaponLuck = 0;
CraftAttributeInfo zenitepowder = ZenitePowder = new CraftAttributeInfo();
zenitepowder.ArmorPhysicalResist = 0;
zenitepowder.ArmorFireResist = 0;
zenitepowder.ArmorColdResist = 0;
zenitepowder.ArmorPoisonResist = 0;
zenitepowder.ArmorEnergyResist = 0;
zenitepowder.ArmorDurability = 0;
zenitepowder.WeaponFireDamage = 0;
zenitepowder.WeaponColdDamage = 0;
zenitepowder.WeaponPoisonDamage = 0;
zenitepowder.WeaponEnergyDamage = 0;
zenitepowder.RunicMinAttributes = 7;
zenitepowder.RunicMaxAttributes = 7;
zenitepowder.RunicMinIntensity = 40;
zenitepowder.RunicMaxIntensity = 70;
zenitepowder.ArmorLuck = 0;
zenitepowder.WeaponLuck = 0;
CraftAttributeInfo naquinitepowder = NaquinitePowder = new CraftAttributeInfo();
naquinitepowder.ArmorPhysicalResist = 0;
naquinitepowder.ArmorFireResist = 0;
naquinitepowder.ArmorColdResist = 0;
naquinitepowder.ArmorPoisonResist = 0;
naquinitepowder.ArmorEnergyResist = 0;
naquinitepowder.ArmorDurability = 0;
naquinitepowder.WeaponFireDamage = 0;
naquinitepowder.WeaponColdDamage = 0;
naquinitepowder.WeaponPoisonDamage = 0;
naquinitepowder.WeaponEnergyDamage = 0;
naquinitepowder.RunicMinAttributes = 7;
naquinitepowder.RunicMaxAttributes = 8;
naquinitepowder.RunicMinIntensity = 50;
naquinitepowder.RunicMaxIntensity = 70;
naquinitepowder.ArmorLuck = 0;
naquinitepowder.WeaponLuck = 0;
CraftAttributeInfo galvinitepowder = GalvinitePowder = new CraftAttributeInfo();
galvinitepowder.ArmorPhysicalResist = 0;
galvinitepowder.ArmorFireResist = 0;
galvinitepowder.ArmorColdResist = 0;
galvinitepowder.ArmorPoisonResist = 0;
galvinitepowder.ArmorEnergyResist = 0;
galvinitepowder.ArmorDurability = 0;
galvinitepowder.WeaponFireDamage = 0;
galvinitepowder.WeaponColdDamage = 0;
galvinitepowder.WeaponPoisonDamage = 0;
galvinitepowder.WeaponEnergyDamage = 0;
galvinitepowder.RunicMinAttributes = 8;
galvinitepowder.RunicMaxAttributes = 8;
galvinitepowder.RunicMinIntensity = 60;
galvinitepowder.RunicMaxIntensity = 80;
galvinitepowder.ArmorLuck = 0;
galvinitepowder.WeaponLuck = 0;
CraftAttributeInfo trilamidepowder = TrilamidePowder = new CraftAttributeInfo();
trilamidepowder.ArmorPhysicalResist = 0;
trilamidepowder.ArmorFireResist = 0;
trilamidepowder.ArmorColdResist = 0;
trilamidepowder.ArmorPoisonResist = 0;
trilamidepowder.ArmorEnergyResist = 0;
trilamidepowder.ArmorDurability = 0;
trilamidepowder.WeaponFireDamage = 0;
trilamidepowder.WeaponColdDamage = 0;
trilamidepowder.WeaponPoisonDamage = 0;
trilamidepowder.WeaponEnergyDamage = 0;
trilamidepowder.RunicMinAttributes = 8;
trilamidepowder.RunicMaxAttributes = 9;
trilamidepowder.RunicMinIntensity = 60;
trilamidepowder.RunicMaxIntensity = 90;
trilamidepowder.ArmorLuck = 0;
trilamidepowder.WeaponLuck = 0;
CraftAttributeInfo veramidepowder = VeramidePowder = new CraftAttributeInfo();
veramidepowder.ArmorPhysicalResist = 0;
veramidepowder.ArmorFireResist = 0;
veramidepowder.ArmorColdResist = 0;
veramidepowder.ArmorPoisonResist = 0;
veramidepowder.ArmorEnergyResist = 0;
veramidepowder.ArmorDurability = 0;
veramidepowder.WeaponFireDamage = 0;
veramidepowder.WeaponColdDamage = 0;
veramidepowder.WeaponPoisonDamage = 0;
veramidepowder.WeaponEnergyDamage = 0;
veramidepowder.RunicMinAttributes = 9;
veramidepowder.RunicMaxAttributes = 9;
veramidepowder.RunicMinIntensity = 70;
veramidepowder.RunicMaxIntensity = 90;
veramidepowder.ArmorLuck = 0;
veramidepowder.WeaponLuck = 0;
CraftAttributeInfo zenlamidepowder = ZenlamidePowder = new CraftAttributeInfo();
zenlamidepowder.ArmorPhysicalResist = 0;
zenlamidepowder.ArmorFireResist = 0;
zenlamidepowder.ArmorColdResist = 0;
zenlamidepowder.ArmorPoisonResist = 0;
zenlamidepowder.ArmorEnergyResist = 0;
zenlamidepowder.ArmorDurability = 0;
zenlamidepowder.WeaponFireDamage = 0;
zenlamidepowder.WeaponColdDamage = 0;
zenlamidepowder.WeaponPoisonDamage = 0;
zenlamidepowder.WeaponEnergyDamage = 0;
zenlamidepowder.RunicMinAttributes = 9;
zenlamidepowder.RunicMaxAttributes = 10;
zenlamidepowder.RunicMinIntensity = 80;
zenlamidepowder.RunicMaxIntensity = 100;
zenlamidepowder.ArmorLuck = 0;
zenlamidepowder.WeaponLuck = 0;
CraftAttributeInfo etheralpowder = EtheralPowder = new CraftAttributeInfo();
etheralpowder.ArmorPhysicalResist = 0;
etheralpowder.ArmorFireResist = 0;
etheralpowder.ArmorColdResist = 0;
etheralpowder.ArmorPoisonResist = 0;
etheralpowder.ArmorEnergyResist = 0;
etheralpowder.ArmorDurability = 0;
etheralpowder.WeaponFireDamage = 0;
etheralpowder.WeaponColdDamage = 0;
etheralpowder.WeaponPoisonDamage = 0;
etheralpowder.WeaponEnergyDamage = 0;
etheralpowder.RunicMinAttributes = 10;
etheralpowder.RunicMaxAttributes = 10;
etheralpowder.RunicMinIntensity = 80;
etheralpowder.RunicMaxIntensity = 100;
etheralpowder.ArmorLuck = 0;
etheralpowder.WeaponLuck = 0;
}
}
public class CraftResourceInfo
{
private int m_Hue;
private int m_Number;
private string m_Name;
private CraftAttributeInfo m_AttributeInfo;
private CraftResource m_Resource;
private Type[] m_ResourceTypes;
public int Hue{ get{ return m_Hue; } }
public int Number{ get{ return m_Number; } }
public string Name{ get{ return m_Name; } }
public CraftAttributeInfo AttributeInfo{ get{ return m_AttributeInfo; } }
public CraftResource Resource{ get{ return m_Resource; } }
public Type[] ResourceTypes{ get{ return m_ResourceTypes; } }
public CraftResourceInfo( int hue, int number, string name, CraftAttributeInfo attributeInfo, CraftResource resource, params Type[] resourceTypes )
{
m_Hue = hue;
m_Number = number;
m_Name = name;
m_AttributeInfo = attributeInfo;
m_Resource = resource;
m_ResourceTypes = resourceTypes;
for ( int i = 0; i < resourceTypes.Length; ++i )
CraftResources.RegisterType( resourceTypes
, resource );
}
}
public class CraftResources
{
private static CraftResourceInfo[] m_MetalInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x000, 1053109, "Iron", CraftAttributeInfo.Blank, CraftResource.Iron, typeof( IronIngot ), typeof( IronOre ), typeof( Granite ) ),
new CraftResourceInfo( 0x973, 1053108, "Dull Copper", CraftAttributeInfo.DullCopper, CraftResource.DullCopper, typeof( DullCopperIngot ), typeof( DullCopperOre ), typeof( DullCopperGranite ) ),
new CraftResourceInfo( 0x966, 1053107, "Shadow Iron", CraftAttributeInfo.ShadowIron, CraftResource.ShadowIron, typeof( ShadowIronIngot ), typeof( ShadowIronOre ), typeof( ShadowIronGranite ) ),
new CraftResourceInfo( 0x96D, 1053106, "Copper", CraftAttributeInfo.Copper, CraftResource.Copper, typeof( CopperIngot ), typeof( CopperOre ), typeof( CopperGranite ) ),
new CraftResourceInfo( 0x972, 1053105, "Bronze", CraftAttributeInfo.Bronze, CraftResource.Bronze, typeof( BronzeIngot ), typeof( BronzeOre ), typeof( BronzeGranite ) ),
new CraftResourceInfo( 0x8A5, 1053104, "Gold", CraftAttributeInfo.Golden, CraftResource.Gold, typeof( GoldIngot ), typeof( GoldOre ), typeof( GoldGranite ) ),
new CraftResourceInfo( 0x835, 0, "Silver", CraftAttributeInfo.Silver, CraftResource.Silver, typeof( SilverIngot ), typeof( SilverOre ), typeof( SilverGranite ) ),
new CraftResourceInfo( 0x979, 1053103, "Agapite", CraftAttributeInfo.Agapite, CraftResource.Agapite, typeof( AgapiteIngot ), typeof( AgapiteOre ), typeof( AgapiteGranite ) ),
new CraftResourceInfo( 0x89F, 1053102, "Verite", CraftAttributeInfo.Verite, CraftResource.Verite, typeof( VeriteIngot ), typeof( VeriteOre ), typeof( VeriteGranite ) ),
new CraftResourceInfo( 0x8AB, 1053101, "Valorite", CraftAttributeInfo.Valorite, CraftResource.Valorite, typeof( ValoriteIngot ), typeof( ValoriteOre ), typeof( ValoriteGranite ) ),
new CraftResourceInfo( 0x583, 0, "Uridium", CraftAttributeInfo.Uridium, CraftResource.Uridium, typeof( UridiumIngot ), typeof( UridiumOre ), typeof( UridiumGranite ) ),
new CraftResourceInfo( 0x91, 0, "Trillium", CraftAttributeInfo.Trillium, CraftResource.Trillium, typeof( TrilliumIngot ), typeof( TrilliumOre ), typeof( TrilliumGranite ) ),
new CraftResourceInfo( 0xBD, 0, "Titanium", CraftAttributeInfo.Titanium, CraftResource.Titanium, typeof( TitaniumIngot ), typeof( TitaniumOre ), typeof( TitaniumGranite ) ),
new CraftResourceInfo( 0x4D5, 0, "Platinum", CraftAttributeInfo.Platinum, CraftResource.Platinum, typeof( PlatinumIngot ), typeof( PlatinumOre ), typeof( PlatinumGranite ) ),
new CraftResourceInfo( 0xA4, 0, "Zenite", CraftAttributeInfo.Zenite, CraftResource.Zenite, typeof( ZeniteIngot ), typeof( ZeniteOre ), typeof( ZeniteGranite ) ),
new CraftResourceInfo( 0x2DD, 0, "Naquinite", CraftAttributeInfo.Naquinite, CraftResource.Naquinite, typeof( NaquiniteIngot ), typeof( NaquiniteOre ), typeof( NaquiniteGranite ) ),
new CraftResourceInfo( 0x849, 0, "Galvinite", CraftAttributeInfo.Galvinite, CraftResource.Galvinite, typeof( GalviniteIngot ), typeof( GalviniteOre ), typeof( GalviniteGranite ) ),
new CraftResourceInfo( 0x674, 0, "Trilamide", CraftAttributeInfo.Trilamide, CraftResource.Trilamide, typeof( TrilamideIngot ), typeof( TrilamideOre ), typeof( TrilamideGranite ) ),
new CraftResourceInfo( 0x11C, 0, "Veramide", CraftAttributeInfo.Veramide, CraftResource.Veramide, typeof( VeramideIngot ), typeof( VeramideOre ), typeof( VeramideGranite ) ),
new CraftResourceInfo( 0x47F, 0, "Zenlamide", CraftAttributeInfo.Zenlamide, CraftResource.Zenlamide, typeof( ZenlamideIngot ), typeof( ZenlamideOre ), typeof( ZenlamideGranite ) ),
};
private static CraftResourceInfo[] m_ScaleInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x66D, 1053129, "Red Scales", CraftAttributeInfo.RedScales, CraftResource.RedScales, typeof( RedScales ) ),
new CraftResourceInfo( 0x8A8, 1053130, "Yellow Scales", CraftAttributeInfo.YellowScales, CraftResource.YellowScales, typeof( YellowScales ) ),
new CraftResourceInfo( 0x455, 1053131, "Black Scales", CraftAttributeInfo.BlackScales, CraftResource.BlackScales, typeof( BlackScales ) ),
new CraftResourceInfo( 0x851, 1053132, "Green Scales", CraftAttributeInfo.GreenScales, CraftResource.GreenScales, typeof( GreenScales ) ),
new CraftResourceInfo( 0x8FD, 1053133, "White Scales", CraftAttributeInfo.WhiteScales, CraftResource.WhiteScales, typeof( WhiteScales ) ),
new CraftResourceInfo( 0x8B0, 1053134, "Blue Scales", CraftAttributeInfo.BlueScales, CraftResource.BlueScales, typeof( BlueScales ) )
};
private static CraftResourceInfo[] m_LeatherInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x000, 1049353, "Normal", CraftAttributeInfo.Blank, CraftResource.RegularLeather, typeof( Leather ), typeof( Hides ) ),
new CraftResourceInfo( 0x283, 1049354, "Spined", CraftAttributeInfo.Spined, CraftResource.SpinedLeather, typeof( SpinedLeather ), typeof( SpinedHides ) ),
new CraftResourceInfo( 0x227, 1049355, "Horned", CraftAttributeInfo.Horned, CraftResource.HornedLeather, typeof( HornedLeather ), typeof( HornedHides ) ),
new CraftResourceInfo( 0x1C1, 1049356, "Barbed", CraftAttributeInfo.Barbed, CraftResource.BarbedLeather, typeof( BarbedLeather ), typeof( BarbedHides ) ),
new CraftResourceInfo( 0x667, 0, "Ribbed", CraftAttributeInfo.Ribbed, CraftResource.RibbedLeather, typeof( RibbedLeather ), typeof( RibbedHides ) ),
new CraftResourceInfo( 0x4F2, 0, "Dread", CraftAttributeInfo.Dread, CraftResource.DreadLeather, typeof( DreadLeather ), typeof( DreadHides ) ),
new CraftResourceInfo( 0x19F, 0, "Etheral", CraftAttributeInfo.Etheral, CraftResource.EtheralLeather, typeof( EtheralLeather ), typeof( EtheralHides ) )
};
private static CraftResourceInfo[] m_AOSLeatherInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x000, 1049353, "Normal", CraftAttributeInfo.Blank, CraftResource.RegularLeather, typeof( Leather ), typeof( Hides ) ),
new CraftResourceInfo( 0x8AC, 1049354, "Spined", CraftAttributeInfo.Spined, CraftResource.SpinedLeather, typeof( SpinedLeather ), typeof( SpinedHides ) ),
new CraftResourceInfo( 0x845, 1049355, "Horned", CraftAttributeInfo.Horned, CraftResource.HornedLeather, typeof( HornedLeather ), typeof( HornedHides ) ),
new CraftResourceInfo( 0x851, 1049356, "Barbed", CraftAttributeInfo.Barbed, CraftResource.BarbedLeather, typeof( BarbedLeather ), typeof( BarbedHides ) ),
new CraftResourceInfo( 0x667, 0, "Ribbed", CraftAttributeInfo.Ribbed, CraftResource.RibbedLeather, typeof( RibbedLeather ), typeof( RibbedHides ) ),
new CraftResourceInfo( 0x4F2, 0, "Dread", CraftAttributeInfo.Dread, CraftResource.DreadLeather, typeof( DreadLeather ), typeof( DreadHides ) ),
new CraftResourceInfo( 0x19F, 0, "Etheral", CraftAttributeInfo.Etheral, CraftResource.EtheralLeather, typeof( EtheralLeather ), typeof( EtheralHides ) )
};
private static CraftResourceInfo[] m_RegularLogInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x0, 0, "Ordinary Wood",CraftAttributeInfo.Blank, CraftResource.RegularLog, typeof( Log ), typeof ( Board) ),
new CraftResourceInfo( 0x5E6, 0, "Oak", CraftAttributeInfak, CraftResource.Oak, typeof( OakLog ), typeof ( OakBoard ) ),
new CraftResourceInfo( 0x4A7, 0, "Ash", CraftAttributeInfo.Ash, CraftResource.Ash, typeof( AshLog ), typeof ( AshBoard ) ),
new CraftResourceInfo( 0x4A8, 0, "Yew", CraftAttributeInfo.Yew, CraftResource.Yew, typeof( YewLog ), typeof ( YewBoard ) ),
new CraftResourceInfo( 0x4A9, 0, "HeartWood", CraftAttributeInfo.HeartWood, CraftResource.HeartWood, typeof( HeartWoodLog ), typeof ( HeartWoodBoard ) ),
new CraftResourceInfo( 0x4AA, 0, "BloodWood", CraftAttributeInfo.BloodWood, CraftResource.BloodWood, typeof( BloodWoodLog ), typeof ( BloodWoodBoard ) ),
new CraftResourceInfo( 0x47F, 0, "FrostWood", CraftAttributeInfo.FrostWood, CraftResource.FrostWood, typeof( FrostWoodLog ), typeof ( FrostWoodBoard ) )
};
private static CraftResourceInfo[] m_RegularCrystalInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x15, 0, "Normal Crystal", CraftAttributeInfo.Blank, CraftResource.RegularCrystal, typeof( Crystal ) ),
new CraftResourceInfo( 0x58, 0, "Amazonite", CraftAttributeInfo.Amazonite, CraftResource.Amazonite, typeof( AmazoniteCrystal ) ),
new CraftResourceInfo( 0x30, 0, "Amber", CraftAttributeInfo.Amber, CraftResource.Amber, typeof( AmberCrystal ) ),
new CraftResourceInfo( 0x1F, 0, "Amethyst", CraftAttributeInfo.Amethyst, CraftResource.Amethyst, typeof( AmethystCrystal ) ),
new CraftResourceInfo( 0x54F, 0, "Aragonite", CraftAttributeInfo.Aragonite, CraftResource.Aragonite, typeof( AragoniteCrystal ) ),
new CraftResourceInfo( 0x1C, 0, "Bixbite", CraftAttributeInfo.Bixbite, CraftResource.Bixbite, typeof( BixbiteCrystal ) ),
new CraftResourceInfo( 0xF8, 0, "BloodStone", CraftAttributeInfo.BloodStone, CraftResource.BloodStone, typeof( BloodStoneCrystal ) ),
new CraftResourceInfo( 0x5E6, 0, "Calcite", CraftAttributeInfo.Calcite, CraftResource.Calcite, typeof( CalciteCrystal ) ),
new CraftResourceInfo( 0x94, 0, "GoldStone", CraftAttributeInfo.GoldStone, CraftResource.GoldStone, typeof( GoldStoneCrystal ) ),
new CraftResourceInfo( 0x4F1, 0, "Labradorite", CraftAttributeInfo.Labradorite, CraftResource.Labradorite, typeof( LabradoriteCrystal ) ),
new CraftResourceInfo( 0x41C, 0, "Moldavite", CraftAttributeInfo.Moldavite, CraftResource.Moldavite, typeof( MoldaviteCrystal ) ),
new CraftResourceInfo( 0x4F5, 0, "Morganite", CraftAttributeInfo.Morganite, CraftResource.Morganite, typeof( MorganiteCrystal ) ),
new CraftResourceInfo( 0x482, 0, "Quartz", CraftAttributeInfo.Quartz, CraftResource.Quartz, typeof( QuartzCrystal ) ),
new CraftResourceInfo( 0x653, 0, "Rhodonite", CraftAttributeInfo.Rhodonite, CraftResource.Rhodonite, typeof( RhodoniteCrystal ) ),
new CraftResourceInfo( 0x1C, 0, "Ruby", CraftAttributeInfo.Ruby, CraftResource.Ruby, typeof( RubyCrystal ) ),
new CraftResourceInfo( 0x4F1, 0, "Sapphire", CraftAttributeInfo.Sapphire, CraftResource.Sapphire, typeof( SapphireCrystal ) ),
new CraftResourceInfo( 0x4FC, 0, "Sugilite", CraftAttributeInfo.Sugilite, CraftResource.Sugilite, typeof( SugiliteCrystal ) ),
new CraftResourceInfo( 0x121, 0, "Tanzanite", CraftAttributeInfo.Tanzanite, CraftResource.Tanzanite, typeof( TanzaniteCrystal ) ),
new CraftResourceInfo( 0x59, 0, "Turquoise", CraftAttributeInfo.Turquoise, CraftResource.Turquoise, typeof( TurquoiseCrystal ) ),
new CraftResourceInfo( 0x45, 0, "Varisite", CraftAttributeInfo.Varisite, CraftResource.Varisite, typeof( VarisiteCrystal ) )
};
private static CraftResourceInfo[] m_RegularPowderInfo = new CraftResourceInfo[]
{
new CraftResourceInfo( 0x15, 0, "Normal Powder", CraftAttributeInfo.Blank, CraftResource.RegularPowder, typeof( Powder ) ),
new CraftResourceInfo( 0x763, 0, "Iron Powder", CraftAttributeInfo.IronPowder, CraftResource.IronPowder, typeof( IronPowder ) ),
new CraftResourceInfo( 0x973, 0, "Dull Copper Powder", CraftAttributeInfo.DullCopperPowder, CraftResource.DullCopperPowder, typeof( DullCopperPowder ) ),
new CraftResourceInfo( 0x966, 0, "Shadow Powder", CraftAttributeInfo.ShadowIronPowder, CraftResource.ShadowIronPowder, typeof( ShadowIronPowder ) ),
new CraftResourceInfo( 0x96D, 0, "Copper Powder", CraftAttributeInfo.CopperPowder, CraftResource.CopperPowder, typeof( CopperPowder ) ),
new CraftResourceInfo( 0x972, 0, "Bronze Powder", CraftAttributeInfo.BronzePowder, CraftResource.BronzePowder, typeof( BronzePowder ) ),
new CraftResourceInfo( 0x8A5, 0, "Gold Powder", CraftAttributeInfo.GoldPowder, CraftResource.GoldPowder, typeof( GoldPowder ) ),
new CraftResourceInfo( 0x835, 0, "Silver Powder", CraftAttributeInfo.SilverPowder, CraftResource.SilverPowder, typeof( SilverPowder ) ),
new CraftResourceInfo( 0x979, 0, "Agapite Powder", CraftAttributeInfo.AgapitePowder, CraftResource.AgapitePowder, typeof( AgapitePowder ) ),
new CraftResourceInfo( 0x89F, 0, "Verite Powder", CraftAttributeInfo.VeritePowder, CraftResource.VeritePowder, typeof( VeritePowder ) ),
new CraftResourceInfo( 0x8AB, 0, "Valorite Powder", CraftAttributeInfo.ValoritePowder, CraftResource.ValoritePowder, typeof( ValoritePowder ) ),
new CraftResourceInfo( 0x583, 0, "Uridium Powder", CraftAttributeInfo.UridiumPowder, CraftResource.UridiumPowder, typeof( UridiumPowder ) ),
new CraftResourceInfo( 0x91, 0, "Trillium Powder", CraftAttributeInfo.TrilliumPowder, CraftResource.TrilliumPowder, typeof( TrilliumPowder ) ),
new CraftResourceInfo( 0xBD, 0, "Titanium Powder", CraftAttributeInfo.TitaniumPowder, CraftResource.TitaniumPowder, typeof( TitaniumPowder ) ),
new CraftResourceInfo( 0x4D5, 0, "Platinum Powder", CraftAttributeInfo.PlatinumPowder, CraftResource.PlatinumPowder, typeof( PlatinumPowder ) ),
new CraftResourceInfo( 0xA4, 0, "Zenite Powder", CraftAttributeInfo.ZenitePowder, CraftResource.ZenitePowder, typeof( ZenitePowder ) ),
new CraftResourceInfo( 0x2DD, 0, "Naquinite Powder", CraftAttributeInfo.NaquinitePowder, CraftResource.NaquinitePowder, typeof( NaquinitePowder ) ),
new CraftResourceInfo( 0x849, 0, "Galvinite Powder", CraftAttributeInfo.GalvinitePowder, CraftResource.GalvinitePowder, typeof( GalvinitePowder ) ),
new CraftResourceInfo( 0x674, 0, "Trilamide Powder", CraftAttributeInfo.TrilamidePowder, CraftResource.TrilamidePowder, typeof( TrilamidePowder ) ),
new CraftResourceInfo( 0x11C, 0, "Veramide Powder", CraftAttributeInfo.VeramidePowder, CraftResource.VeramidePowder, typeof( VeramidePowder ) ),
new CraftResourceInfo( 0x47F, 0, "Zenlamide Powder", CraftAttributeInfo.ZenlamidePowder, CraftResource.ZenlamidePowder, typeof( ZenlamidePowder ) ),
new CraftResourceInfo( 0x45, 0, "Etheral Powder", CraftAttributeInfo.EtheralPowder, CraftResource.EtheralPowder, typeof( EtheralPowder ) )
};
/// <summary>
/// Returns true if '<paramref name="resource"/>' is None, Iron, or RegularLeather. False if otherwise.
/// </summary>
public static bool IsStandard( CraftResource resource )
{
return ( resource == CraftResource.None || resource == CraftResource.Iron || resource == CraftResource.RegularLeather );
}
private static Hashtable m_TypeTable;
/// <summary>
/// Registers that '<paramref name="resourceType"/>' uses '<paramref name="resource"/>' so that it can later be queried by <see cref="CraftResources.GetFromType"/>
/// </summary>
public static void RegisterType( Type resourceType, CraftResource resource )
{
if ( m_TypeTable == null )
m_TypeTable = new Hashtable();
m_TypeTable[resourceType] = resource;
}
/// <summary>
/// Returns the <see cref="CraftResource"/> value for which '<paramref name="resourceType"/>' uses -or- CraftResource.None if an unregistered type was specified.
/// </summary>
public static CraftResource GetFromType( Type resourceType )
{
if ( m_TypeTable == null )
return CraftResource.None;
object obj = m_TypeTable[resourceType];
if ( !(obj is CraftResource) )
return CraftResource.None;
return (CraftResource)obj;
}
/// <summary>
/// Returns a <see cref="CraftResourceInfo"/> instance describing '<paramref name="resource"/>' -or- null if an invalid resource was specified.
/// </summary>
public static CraftResourceInfo GetInfo( CraftResource resource )
{
CraftResourceInfo[] list = null;
switch ( GetType( resource ) )
{
case CraftResourceType.Metal: list = m_MetalInfo; break;
case CraftResourceType.Leather: list = Core.AOS ? m_AOSLeatherInfo : m_LeatherInfo; break;
case CraftResourceType.Scales: list = m_ScaleInfo; break;
case CraftResourceType.Logs: list = m_RegularLogInfo; break;
case CraftResourceType.Crystals: list = m_RegularCrystalInfo; break;
case CraftResourceType.Powders: list = m_RegularPowderInfo; break;
}
if ( list != null )
{
int index = GetIndex( resource );
if ( index >= 0 && index < list.Length )
return list[index];
}
return null;
}
/// <summary>
/// Returns a <see cref="CraftResourceType"/> value indiciating the type of '<paramref name="resource"/>'.
/// </summary>
public static CraftResourceType GetType( CraftResource resource )
{
if (resource >= CraftResource.Iron && resource <= CraftResource.Zenlamide)
return CraftResourceType.Metal;
if ( resource >= CraftResource.RegularLeather && resource <= CraftResource.EtheralLeather )
return CraftResourceType.Leather;
if ( resource >= CraftResource.RedScales && resource <= CraftResource.BlueScales )
return CraftResourceType.Scales;
if (resource >= CraftResource.RegularLog && resource <= CraftResource.FrostWood)
return CraftResourceType.Logs;
if (resource >= CraftResource.RegularCrystal && resource <= CraftResource.Varisite)
return CraftResourceType.Crystals;
if (resource >= CraftResource.RegularPowder && resource <= CraftResource.EtheralPowder)
return CraftResourceType.Powders;
return CraftResourceType.None;
}
/// <summary>
/// Returns the first <see cref="CraftResource"/> in the series of resources for which '<paramref name="resource"/>' belongs.
/// </summary>
public static CraftResource GetStart( CraftResource resource )
{
switch ( GetType( resource ) )
{
case CraftResourceType.Metal: return CraftResource.Iron;
case CraftResourceType.Leather: return CraftResource.RegularLeather;
case CraftResourceType.Scales: return CraftResource.RedScales;
case CraftResourceType.Logs: return CraftResource.RegularLog;
case CraftResourceType.Crystals: return CraftResource.RegularCrystal;
case CraftResourceType.Powders: return CraftResource.RegularPowder;
}
return CraftResource.None;
}
/// <summary>
/// Returns the index of '<paramref name="resource"/>' in the seriest of resources for which it belongs.
/// </summary>
public static int GetIndex( CraftResource resource )
{
CraftResource start = GetStart( resource );
if ( start == CraftResource.None )
return 0;
return (int)(resource - start);
}
/// <summary>
/// Returns the <see cref="CraftResourceInfo.Number"/> property of '<paramref name="resource"/>' -or- 0 if an invalid resource was specified.
/// </summary>
public static int GetLocalizationNumber( CraftResource resource )
{
CraftResourceInfo info = GetInfo( resource );
return ( info == null ? 0 : info.Number );
}
/// <summary>
/// Returns the <see cref="CraftResourceInfo.Hue"/> property of '<paramref name="resource"/>' -or- 0 if an invalid resource was specified.
/// </summary>
public static int GetHue( CraftResource resource )
{
CraftResourceInfo info = GetInfo( resource );
return ( info == null ? 0 : info.Hue );
}
/// <summary>
/// Returns the <see cref="CraftResourceInfo.Name"/> property of '<paramref name="resource"/>' -or- an empty string if the resource specified was invalid.
/// </summary>
public static string GetName( CraftResource resource )
{
CraftResourceInfo info = GetInfo( resource );
return ( info == null ? String.Empty : info.Name );
}
/// <summary>
/// Returns the <see cref="CraftResource"/> value which represents '<paramref name="info"/>' -or- CraftResource.None if unable to convert.
/// </summary>
public static CraftResource GetFromOreInfo( OreInfo info )
{
if ( info.Name.IndexOf( "Spined" ) >= 0 )
return CraftResource.SpinedLeather;
else if ( info.Name.IndexOf( "Horned" ) >= 0 )
return CraftResource.HornedLeather;
else if ( info.Name.IndexOf( "Barbed" ) >= 0 )
return CraftResource.BarbedLeather;
else if (info.Name.IndexOf( "Ribbed" ) >= 0)
return CraftResource.RibbedLeather;
else if (info.Name.IndexOf( "Dread" ) >= 0)
return CraftResource.DreadLeather;
else if (info.Name.IndexOf( "Etheral") >= 0)
return CraftResource.EtheralLeather;
else if ( info.Name.IndexOf( "Leather" ) >= 0 )
return CraftResource.RegularLeather;
// LOG DEFS
else if (info.Name.IndexOf("Oak") >= 0)
return CraftResource.Oak;
else if (info.Name.IndexOf("Ash") >= 0)
return CraftResource.Ash;
else if (info.Name.IndexOf("Yew") >= 0)
return CraftResource.Yew;
else if (info.Name.IndexOf("HeartWood") >= 0)
return CraftResource.HeartWood;
else if (info.Name.IndexOf("BloodWood") >= 0)
return CraftResource.BloodWood;
else if (info.Name.IndexOf("FrostWood") >= 0)
return CraftResource.FrostWood;
else if (info.Name.IndexOf("Logs") >= 0)
return CraftResource.RegularLog;
// CRYSTAL DEFS
else if (info.Name.IndexOf("Amazonite") >= 0)
return CraftResource.Amazonite;
else if (info.Name.IndexOf("Amber") >= 0)
return CraftResource.Amber;
else if (info.Name.IndexOf("Amethyst") >= 0)
return CraftResource.Amethyst;
else if (info.Name.IndexOf("Aragonite") >= 0)
return CraftResource.Aragonite;
else if (info.Name.IndexOf("Bixbite") >= 0)
return CraftResource.Bixbite;
else if (info.Name.IndexOf("BloodStone") >= 0)
return CraftResource.BloodStone;
else if (info.Name.IndexOf("Calcite") >= 0)
return CraftResource.Calcite;
else if (info.Name.IndexOf("GoldStone") >= 0)
return CraftResource.GoldStone;
else if (info.Name.IndexOf("Labradorite") >= 0)
return CraftResource.Labradorite;
else if (info.Name.IndexOf("Moldavite") >= 0)
return CraftResource.Moldavite;
else if (info.Name.IndexOf("Morganite") >= 0)
return CraftResource.Morganite;
else if (info.Name.IndexOf("Quartz") >= 0)
return CraftResource.Quartz;
else if (info.Name.IndexOf("Rhodonite") >= 0)
return CraftResource.Rhodonite;
else if (info.Name.IndexOf("Ruby") >= 0)
return CraftResource.Ruby;
else if (info.Name.IndexOf("Sapphire") >= 0)
return CraftResource.Sapphire;
else if (info.Name.IndexOf("Sugilite") >= 0)
return CraftResource.Sugilite;
else if (info.Name.IndexOf("Tanzanite") >= 0)
return CraftResource.Tanzanite;
else if (info.Name.IndexOf("Turquoise") >= 0)
return CraftResource.Turquoise;
else if (info.Name.IndexOf("Varisite") >= 0)
return CraftResource.Varisite;
else if (info.Name.IndexOf("Normal Crystal") >= 0)
return CraftResource.RegularCrystal;
// END
// POWDER DEF'S
else if (info.Name.IndexOf("Iron Powder") >= 0)
return CraftResource.IronPowder;
else if (info.Name.IndexOf("Dull Copper Powder") >= 0)
return CraftResource.DullCopperPowder;
else if (info.Name.IndexOf("Shadow Powder") >= 0)
return CraftResource.ShadowIronPowder;
else if (info.Name.IndexOf("Copper Powder") >= 0)
return CraftResource.CopperPowder;
else if (info.Name.IndexOf("Bronze Powder") >= 0)
return CraftResource.BronzePowder;
else if (info.Name.IndexOf("Gold Powder") >= 0)
return CraftResource.GoldPowder;
else if (info.Name.IndexOf("Silver Powder") >= 0)
return CraftResource.SilverPowder;
else if (info.Name.IndexOf("Agapite Powder") >= 0)
return CraftResource.AgapitePowder;
else if (info.Name.IndexOf("Verite Powder") >= 0)
return CraftResource.VeritePowder;
else if (info.Name.IndexOf("Valorite Powder") >= 0)
return CraftResource.ValoritePowder;
else if (info.Name.IndexOf("Uridium Powder") >= 0)
return CraftResource.UridiumPowder;
else if (info.Name.IndexOf("Trillium Powder") >= 0)
return CraftResource.TrilliumPowder;
else if (info.Name.IndexOf("Titanium Powder") >= 0)
return CraftResource.TitaniumPowder;
else if (info.Name.IndexOf("Platinum Powder") >= 0)
return CraftResource.PlatinumPowder;
else if (info.Name.IndexOf("Zenite Powder") >= 0)
return CraftResource.ZenitePowder;
else if (info.Name.IndexOf("Naquinite Powder") >= 0)
return CraftResource.NaquinitePowder;
else if (info.Name.IndexOf("Galvinite Powder") >= 0)
return CraftResource.GalvinitePowder;
else if (info.Name.IndexOf("Trilamide Powder") >= 0)
return CraftResource.TrilamidePowder;
else if (info.Name.IndexOf("Veramide Powder") >= 0)
return CraftResource.VeramidePowder;
else if (info.Name.IndexOf("Veramide Powder") >= 0)
return CraftResource.VeramidePowder;
else if (info.Name.IndexOf("Etheral Powder") >= 0)
return CraftResource.EtheralPowder;
else if (info.Name.IndexOf("Normal Powder") >= 0)
return CraftResource.RegularPowder;
// END
if (info.Level == 0)
return CraftResource.Iron;
else if (info.Level == 1)
return CraftResource.DullCopper;
else if (info.Level == 2)
return CraftResource.ShadowIron;
else if (info.Level == 3)
return CraftResource.Copper;
else if (info.Level == 4)
return CraftResource.Bronze;
else if (info.Level == 5)
return CraftResource.Gold;
else if (info.Level == 6)
return CraftResource.Silver;
else if (info.Level == 7)
return CraftResource.Agapite;
else if (info.Level == 8)
return CraftResource.Verite;
else if (info.Level == 9)
return CraftResource.Valorite;
else if (info.Level == 10)
return CraftResource.Uridium;
else if (info.Level == 11)
return CraftResource.Trillium;
else if (info.Level == 12)
return CraftResource.Titanium;
else if (info.Level == 13)
return CraftResource.Platinum;
else if (info.Level == 14)
return CraftResource.Zenite;
else if (info.Level == 15)
return CraftResource.Naquinite;
else if (info.Level == 16)
return CraftResource.Galvinite;
else if (info.Level == 17)
return CraftResource.Trilamide;
else if (info.Level == 18)
return CraftResource.Veramide;
else if (info.Level == 19)
return CraftResource.Zenlamide;
return CraftResource.None;
}
/// <summary>
/// Returns the <see cref="CraftResource"/> value which represents '<paramref name="info"/>', using '<paramref name="material"/>' to help resolve leather OreInfo instances.
/// </summary>
public static CraftResource GetFromOreInfo( OreInfo info, ArmorMaterialType material )
{
if ( material == ArmorMaterialType.Studded || material == ArmorMaterialType.Leather || material == ArmorMaterialType.Spined ||
material == ArmorMaterialType.Horned || material == ArmorMaterialType.Barbed )
{
if ( info.Level == 0 )
return CraftResource.RegularLeather;
else if ( info.Level == 1 )
return CraftResource.SpinedLeather;
else if ( info.Level == 2 )
return CraftResource.HornedLeather;
else if ( info.Level == 3 )
return CraftResource.BarbedLeather;
else if ( info.Level == 4 )
return CraftResource.RibbedLeather;
else if ( info.Level == 5 )
return CraftResource.DreadLeather;
else if ( info.Level == 6 )
return CraftResource.EtheralLeather;
return CraftResource.None;
}
return GetFromOreInfo( info );
}
}
// NOTE: This class is only for compatability with very old RunUO versions.
// No changes to it should be required for custom resources.
public class OreInfo
{
public static readonly OreInfo Iron = new OreInfo( 0, 0x000, "Iron" );
public static readonly OreInfo DullCopper = new OreInfo( 1, 0x973, "Dull Copper" );
public static readonly OreInfo ShadowIron = new OreInfo( 2, 0x966, "Shadow Iron" );
public static readonly OreInfo Copper = new OreInfo( 3, 0x96D, "Copper" );
public static readonly OreInfo Bronze = new OreInfo( 4, 0x972, "Bronze" );
public static readonly OreInfo Gold = new OreInfo( 5, 0x8A5, "Gold" );
public static readonly OreInfo Silver = new OreInfo( 6, 0x835, "Silver");
public static readonly OreInfo Agapite = new OreInfo( 7, 0x979, "Agapite" );
public static readonly OreInfo Verite = new OreInfo( 8, 0x89F, "Verite" );
public static readonly OreInfo Valorite = new OreInfo( 9, 0x8AB, "Valorite" );
public static readonly OreInfo Uridium = new OreInfo( 10, 0x583, "Uridium");
public static readonly OreInfo Trillium = new OreInfo( 11, 0x91, "Trillium");
public static readonly OreInfo Titanium = new OreInfo( 12, 0xBD, "Titanium");
public static readonly OreInfo Platinum = new OreInfo( 13, 0x4D5, "Platinum");
public static readonly OreInfo Zenite = new OreInfo( 14, 0xA4, "Zenite");
public static readonly OreInfo Naquinite = new OreInfo( 15, 0x2DD, "Naquinite");
public static readonly OreInfo Galvinite = new OreInfo( 16, 0x849, "Galvinite");
public static readonly OreInfo Trilamide = new OreInfo( 17, 0x674, "Trilamide");
public static readonly OreInfo Veramide = new OreInfo( 18, 0x11C, "Veramide");
public static readonly OreInfo Zenlamide = new OreInfo( 19, 0x47F, "Zenlamide");
public static readonly OreInfo RegularLog = new OreInfo( 301, 0x000, "Ordinary Wood");
public static readonly OreInfo Oak = new OreInfo( 302, 0x4A6, "Oak");
public static readonly OreInfo Ash = new OreInfo( 303, 0x4A7, "Ash");
public static readonly OreInfo Yew = new OreInfo( 304, 0x4A8, "Yew");
public static readonly OreInfo HeartWood = new OreInfo( 305, 0x4A9, "HeartWood");
public static readonly OreInfo BloodWood = new OreInfo( 306, 0x4AA, "BloodWood");
public static readonly OreInfo FrostWood = new OreInfo( 307, 0x4AB, "FrostWood");
public static readonly OreInfo RegularCrystal = new OreInfo(401, 0x000, "Normal Crystal");
public static readonly OreInfo Amazonite = new OreInfo(402, 0x4AB, "Amazonite");
public static readonly OreInfo Amber = new OreInfo(403, 0x4AB, "Amber");
public static readonly OreInfo Amethyst = new OreInfo(404, 0x4AB, "Amethyst");
public static readonly OreInfo Aragonite = new OreInfo(405, 0x4AB, "Aragonite");
public static readonly OreInfo Bixbite = new OreInfo(406, 0x4AB, "Bixbite");
public static readonly OreInfo BloodStone = new OreInfo(407, 0x4AB, "BloodStone");
public static readonly OreInfo Calcite = new OreInfo(408, 0x4AB, "Calcite");
public static readonly OreInfo GoldStone = new OreInfo(409, 0x4AB, "GoldStone");
public static readonly OreInfo Labradorite = new OreInfo(410, 0x4AB, "Labradorite");
public static readonly OreInfo Moldavite = new OreInfo(411, 0x4AB, "Moldavite");
public static readonly OreInfo Morganite = new OreInfo(412, 0x4AB, "Morganite");
public static readonly OreInfo Quartz = new OreInfo(413, 0x4AB, "Quartz");
public static readonly OreInfo Rhodonite = new OreInfo(414, 0x4AB, "Rhodonite");
public static readonly OreInfo Ruby = new OreInfo(415, 0x4AB, "Ruby");
public static readonly OreInfo Sapphire = new OreInfo(416, 0x4AB, "Sapphire");
public static readonly OreInfo Sugilite = new OreInfo(417, 0x4AB, "Sugilite");
public static readonly OreInfo Tanzanite = new OreInfo(418, 0x4AB, "Tanzanite");
public static readonly OreInfo Turquoise = new OreInfo(419, 0x4AB, "Turquoise");
public static readonly OreInfo Varisite = new OreInfo(420, 0x4AB, "Varisite");
public static readonly OreInfo RegularPowder = new OreInfo(501, 0x4AB, "Normal Powder");
public static readonly OreInfo IronPowder = new OreInfo(502, 0x000, "Iron Powder");
public static readonly OreInfo DullCopperPowder = new OreInfo(503, 0x973, "Dull Copper Powder");
public static readonly OreInfo ShadowIronPowder = new OreInfo(504, 0x966, "Shadow Powder");
public static readonly OreInfo CopperPowder = new OreInfo(505, 0x96D, "Copper Powder");
public static readonly OreInfo BronzePowder = new OreInfo(506, 0x972, "Bronze Powder");
public static readonly OreInfo GoldPowder = new OreInfo(507, 0x8A5, "Gold Powder");
public static readonly OreInfo SilverPowder = new OreInfo(508, 0x835, "Silver Powder");
public static readonly OreInfo AgapitePowder = new OreInfo(509, 0x979, "Agapite Powder");
public static readonly OreInfo VeritePowder = new OreInfo(510, 0x89F, "Verite Powder");
public static readonly OreInfo ValoritePowder = new OreInfo(511, 0x8AB, "Valorite Powder");
public static readonly OreInfo UridiumPowder = new OreInfo(512, 0x583, "Uridium Powder");
public static readonly OreInfo TrilliumPowder = new OreInfo(513, 0x91, "Trillium Powder");
public static readonly OreInfo TitaniumPowder = new OreInfo(514, 0xBD, "Titanium Powder");
public static readonly OreInfo PlatinumPowder = new OreInfo(515, 0x4D5, "Platinum Powder");
public static readonly OreInfo ZenitePowder = new OreInfo(516, 0xA4, "Zenite Powder");
public static readonly OreInfo NaquinitePowder = new OreInfo(517, 0x2DD, "Naquinite Powder");
public static readonly OreInfo GalvinitePowder = new OreInfo(518, 0x849, "Galvinite Powder");
public static readonly OreInfo TrilamidePowder = new OreInfo(519, 0x674, "Trilamide Powder");
public static readonly OreInfo VeramidePowder = new OreInfo(520, 0x11C, "Veramide Powder");
public static readonly OreInfo ZenlamidePowder = new OreInfo(521, 0x47F, "Zenlamide Powder");
public static readonly OreInfo EtheralPowder = new OreInfo(522, 0x4AB, "Etheral Powder");
private int m_Level;
private int m_Hue;
private string m_Name;
public OreInfo( int level, int hue, string name )
{
m_Level = level;
m_Hue = hue;
m_Name = name;
}
public int Level
{
get
{
return m_Level;
}
}
public int Hue
{
get
{
return m_Hue;
}
}
public string Name
{
get
{
return m_Name;
}
}
}
}