Beispiel #1
0
        public void WriteXML(XmlWriter xmlWriter)
        {
            xmlWriter.WriteStartElement("Attack");

            xmlWriter.WriteStartElement("Name");
            xmlWriter.WriteString(Name);
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("Modifier");
            xmlWriter.WriteString(Modifier.ToString());
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("Type");
            xmlWriter.WriteString(Methods.GetAttackTypeString(Type));
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("Ability");
            xmlWriter.WriteString(Methods.GetAbilityString(Ability));
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("Damages");
            foreach (Damage damage in Damages)
            {
                damage.WriteXML(xmlWriter);
            }
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("ThreatRangeMin");
            xmlWriter.WriteString(ThreatRangeMin.ToString());
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("CritMultiplier");
            xmlWriter.WriteString(CritMultiplier.ToString());
            xmlWriter.WriteEndElement();

            xmlWriter.WriteStartElement("TwoHanded");
            xmlWriter.WriteString(TwoHanded.ToString());
            xmlWriter.WriteEndElement();

            xmlWriter.WriteEndElement();
        }
        static void Main(string[] args)
        {
            #region
            Skills     skills = new Skills();
            RollingDie Hit    = new RollingDie(100);
            RollingDie Damage = new RollingDie(10);
            #endregion
            #region PODSTAWA
            //---------------------------PODSTAWA----------------------------------------------------------------------------------
            //Creature smok = new Creature("smok", 65, 39, 8, 8, 55, 69, Hit, Damage, 1);
            //smok.PowerfulBlow(smok);


            ////---------------------wyciągnąć do klasy BATTLE-----------------------------------
            //for (int i = 0; i < 10; i++)
            //    smok.Attack();
            //smok.CrushingBlow(smok, Damage);

            //while (smok.CriticalHit())
            //{
            //    Console.WriteLine(smok.PrintZyw());


            //    Console.WriteLine("Wybierz akcję: ");
            //    Console.WriteLine("1 PARUJE");
            //    Console.WriteLine("2 UNIKA");
            //    Console.WriteLine("3 NIE MOŻE ? :D");

            //    int option = Convert.ToInt32(Console.ReadLine());

            //    if (option == 1)
            //    {
            //        if (!smok.Parry(smok, Hit))
            //        {
            //            Console.WriteLine("Smok nie sparował");
            //            Console.WriteLine("Wprowadź obrażenia");
            //            int val = Convert.ToInt32(Console.ReadLine());
            //            smok.TakeDamage(val);
            //        }
            //        else
            //        {
            //            Console.WriteLine("Smok sparował");
            //        }
            //    }

            //    else if (option == 2)
            //    {
            //        if (!smok.DodgeBlow(smok, Hit))
            //        {
            //            Console.WriteLine("Smok nie uniknął");
            //            Console.WriteLine("Wprowadź obrażenia");
            //            int val = Convert.ToInt32(Console.ReadLine());
            //            smok.TakeDamage(val);
            //        }
            //        else
            //        {
            //            Console.WriteLine("Smok uniknął");
            //        }
            //    }
            //    else
            //    {
            //        Console.WriteLine("Wprowadź obrażenia");
            //        int val = Convert.ToInt32(Console.ReadLine());
            //        smok.TakeDamage(val);
            //    }
            //}
            #endregion
            #region Decorator test
            ICreature         smok             = new Creature("smok", 95, 39, 0, 0, 50, 69, Hit, Damage);
            CreatureDecorator armoured         = new Kolcza(smok);
            CreatureDecorator creatureWeapon   = new TwoHanded(armoured);
            CreatureDecorator creaturePowerful = new PowerfulBlow(creatureWeapon);
            for (int i = 0; i < 1000; i++)
            {
                Console.WriteLine("Smok zadaje: " + creaturePowerful.Attack() + " obrażeń");
                creaturePowerful.TakeDamage(3);
                //Console.WriteLine(creaturePowerful.PrintZyw());
            }
            #endregion
        }