Exemple #1
0
 public void SetElement(WpnElement element, byte value)
 {
     WpnActiveElement   = element;
     WpnElementAtkValue = value;
     if (WpnElementAtkValue > 100)
     {
         WpnElementAtkValue = 100;
     }
 }
Exemple #2
0
        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);
        }