public void SetElement(WpnElement element, byte value) { WpnActiveElement = element; WpnElementAtkValue = value; if (WpnElementAtkValue > 100) { WpnElementAtkValue = 100; } }
public Weapon() { ItemLevel = 1; WpnAtk = 1; WpnAcc = 0; WpnMag = 0; WpnActiveElement = 0; WpnActiveAilment = 0; ItemName = ""; ItemRank = 0; ItemType = "Weapon"; WpnElementAtkValue = 0; WpnAilmentAtkValue = 0; WpnActiveElement = WpnElement.None; WpnActiveAilment = WpnAilment.None; WpnAtkMod = 1; WpnMagMod = 1; /* Set up names. Prefixes are always status effects, while suffixes are always an element. The second value in the dictionary is the * max percentage the weapon can have in a given tier. */ for (int i = 0; i < Enum.GetNames(typeof(WpnAilment)).Length; i++) { wpnAilmentNames.Add(new Dictionary <string, byte>()); } for (int i = 0; i < Enum.GetNames(typeof(WpnElement)).Length; i++) { wpnElementNames.Add(new Dictionary <string, byte>()); } /****Ailments. These are prefixes, which means weapon names can begin with these names. *****/ //Poison tiers wpnAilmentNames[(int)WpnAilment.Poison].Add("Bacterial", 10); wpnAilmentNames[(int)WpnAilment.Poison].Add("Contaminated", 20); wpnAilmentNames[(int)WpnAilment.Poison].Add("Tainted", 30); wpnAilmentNames[(int)WpnAilment.Poison].Add("Toxic", 40); wpnAilmentNames[(int)WpnAilment.Poison].Add("Infected", 50); wpnAilmentNames[(int)WpnAilment.Poison].Add("Viral", 60); wpnAilmentNames[(int)WpnAilment.Poison].Add("Venomous", 70); wpnAilmentNames[(int)WpnAilment.Poison].Add("Virulent", 80); wpnAilmentNames[(int)WpnAilment.Poison].Add("Noxious", 90); wpnAilmentNames[(int)WpnAilment.Poison].Add("Biohazardous", 100); //Console.WriteLine(wpnAilmentNames[(int)WpnAilment.Poison].Keys); //Stun tiers wpnAilmentNames[(int)WpnAilment.Stun].Add("Tingling", 10); wpnAilmentNames[(int)WpnAilment.Stun].Add("Numbing", 20); wpnAilmentNames[(int)WpnAilment.Stun].Add("Stiffening", 30); wpnAilmentNames[(int)WpnAilment.Stun].Add("Immobilizing", 40); wpnAilmentNames[(int)WpnAilment.Stun].Add("Disabling", 50); wpnAilmentNames[(int)WpnAilment.Stun].Add("Debilitating", 60); wpnAilmentNames[(int)WpnAilment.Stun].Add("Paralyzing", 70); wpnAilmentNames[(int)WpnAilment.Stun].Add("Disarming", 80); wpnAilmentNames[(int)WpnAilment.Stun].Add("Arresting", 90); wpnAilmentNames[(int)WpnAilment.Stun].Add("Enfeebling", 100); //Freezing tiers wpnAilmentNames[(int)WpnAilment.Freeze].Add("Chilling", 10); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Frosty", 20); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Icy", 30); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Biting", 40); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Polar", 50); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Glacial", 60); //a weapon with this effect should be more likely to have water element wpnAilmentNames[(int)WpnAilment.Freeze].Add("Wintry", 70); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Frigid", 80); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Shivering", 90); wpnAilmentNames[(int)WpnAilment.Freeze].Add("Icicle", 100); //Death tiers wpnAilmentNames[(int)WpnAilment.Death].Add("Dim", 10); wpnAilmentNames[(int)WpnAilment.Death].Add("Shadow", 20); wpnAilmentNames[(int)WpnAilment.Death].Add("Sinister", 30); wpnAilmentNames[(int)WpnAilment.Death].Add("Blackened", 40); wpnAilmentNames[(int)WpnAilment.Death].Add("Death", 50); wpnAilmentNames[(int)WpnAilment.Death].Add("Disastrous", 60); //a weapon with this effect should be more likely to have dark element wpnAilmentNames[(int)WpnAilment.Death].Add("Calamitous", 70); wpnAilmentNames[(int)WpnAilment.Death].Add("Obliterating", 80); wpnAilmentNames[(int)WpnAilment.Death].Add("Nihil", 90); wpnAilmentNames[(int)WpnAilment.Death].Add("Void", 100); //Sleep tiers wpnAilmentNames[(int)WpnAilment.Sleep].Add("Drowsy", 10); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Torpid", 20); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Slumberous", 30); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Soporific", 40); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Sluggish", 50); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Somnolent", 60); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Hypnotic", 70); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Lethargic", 80); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Dreamy", 90); wpnAilmentNames[(int)WpnAilment.Sleep].Add("Nightmarish", 100); /*****Elements. These are suffixes, which means they are added at the end of weapon names****/ //Fire tiers wpnElementNames[(int)WpnElement.Fire].Add("of Heat", 10); wpnElementNames[(int)WpnElement.Fire].Add("of Charring", 20); wpnElementNames[(int)WpnElement.Fire].Add("of Embers", 30); wpnElementNames[(int)WpnElement.Fire].Add("of Searing", 40); wpnElementNames[(int)WpnElement.Fire].Add("of the Bonfire", 50); wpnElementNames[(int)WpnElement.Fire].Add("of Incandescence", 60); wpnElementNames[(int)WpnElement.Fire].Add("of Brimstone", 70); wpnElementNames[(int)WpnElement.Fire].Add("of Flames", 80); wpnElementNames[(int)WpnElement.Fire].Add("of Combustion", 90); wpnElementNames[(int)WpnElement.Fire].Add("of the Inferno", 100); //Water tiers wpnElementNames[(int)WpnElement.Water].Add("of Droplets", 10); wpnElementNames[(int)WpnElement.Water].Add("of the Puddle", 20); wpnElementNames[(int)WpnElement.Water].Add("of the Pond", 30); wpnElementNames[(int)WpnElement.Water].Add("of the Lake", 40); wpnElementNames[(int)WpnElement.Water].Add("of the Ocean", 50); wpnElementNames[(int)WpnElement.Water].Add("of the Tsunami", 60); wpnElementNames[(int)WpnElement.Water].Add("of the Whirlpool", 70); wpnElementNames[(int)WpnElement.Water].Add("of the Flood", 80); wpnElementNames[(int)WpnElement.Water].Add("of the Deluge", 90); wpnElementNames[(int)WpnElement.Water].Add("of the Torrent", 100); //Earth tiers wpnElementNames[(int)WpnElement.Earth].Add("of the Pebble", 10); wpnElementNames[(int)WpnElement.Earth].Add("of Gravel", 20); wpnElementNames[(int)WpnElement.Earth].Add("of Rubble", 30); wpnElementNames[(int)WpnElement.Earth].Add("of Sands", 40); wpnElementNames[(int)WpnElement.Earth].Add("of Bedrock", 50); wpnElementNames[(int)WpnElement.Earth].Add("of the Boulder", 60); wpnElementNames[(int)WpnElement.Earth].Add("of the Crag", 70); wpnElementNames[(int)WpnElement.Earth].Add("of Seimicity", 80); wpnElementNames[(int)WpnElement.Earth].Add("of Tremors", 90); wpnElementNames[(int)WpnElement.Earth].Add("of the Quake", 100); //Wind tiers wpnElementNames[(int)WpnElement.Wind].Add("of Air", 10); wpnElementNames[(int)WpnElement.Wind].Add("of the Breeze", 20); wpnElementNames[(int)WpnElement.Wind].Add("of Gust", 30); wpnElementNames[(int)WpnElement.Wind].Add("of Gales", 40); wpnElementNames[(int)WpnElement.Wind].Add("of the Mistral", 50); wpnElementNames[(int)WpnElement.Wind].Add("of the Twister", 60); wpnElementNames[(int)WpnElement.Wind].Add("of the Squall", 70); wpnElementNames[(int)WpnElement.Wind].Add("of the Maelstrom", 80); wpnElementNames[(int)WpnElement.Wind].Add("of the Tempest", 90); wpnElementNames[(int)WpnElement.Wind].Add("of the Cyclone", 100); //Light tiers wpnElementNames[(int)WpnElement.Light].Add("of Dawn", 10); wpnElementNames[(int)WpnElement.Light].Add("of Luminance", 20); wpnElementNames[(int)WpnElement.Light].Add("of Daybreak", 30); wpnElementNames[(int)WpnElement.Light].Add("of Brilliance", 40); wpnElementNames[(int)WpnElement.Light].Add("of Splendor", 50); wpnElementNames[(int)WpnElement.Light].Add("of Resplendence", 60); wpnElementNames[(int)WpnElement.Light].Add("of Starlight", 70); wpnElementNames[(int)WpnElement.Light].Add("of Radiance", 80); wpnElementNames[(int)WpnElement.Light].Add("of Scintillation", 90); wpnElementNames[(int)WpnElement.Light].Add("of the Sun", 100); //Dark tiers wpnElementNames[(int)WpnElement.Dark].Add("of Dusk", 10); wpnElementNames[(int)WpnElement.Dark].Add("of Gloom", 20); wpnElementNames[(int)WpnElement.Dark].Add("of Shade", 30); wpnElementNames[(int)WpnElement.Dark].Add("of Eventide", 40); wpnElementNames[(int)WpnElement.Dark].Add("of Midnight", 50); wpnElementNames[(int)WpnElement.Dark].Add("of the Umbra", 60); wpnElementNames[(int)WpnElement.Dark].Add("of Spirits", 70); wpnElementNames[(int)WpnElement.Dark].Add("of Sin", 80); wpnElementNames[(int)WpnElement.Dark].Add("of Twilight", 90); wpnElementNames[(int)WpnElement.Dark].Add("of the End", 100); }