Esempio n. 1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            //Remove timer here to stop decay but don't forget the one Constructable section!

            m_Timer = new RotTimer(this);
            m_Timer.Start();
        }
 public FieryLesserArcaneWeapon()
     : base(0x2D22)
 {
     Weight = 0.0;
     Name = "Fiery Arcane Weapon";
     AosElementDamages.Energy = 100;
     Description = "This swirling mass of shadows appears to have taken the shape of a blade, albeit barely. It glimmers with twisting voltaic arcs.";
     Engines.XmlSpawner2.XmlCriticalHit att = new Server.Engines.XmlSpawner2.XmlCriticalHit();
     att.Chance = 100;
     att.FireDamage = 5;
     Engines.XmlSpawner2.XmlAttach.AttachTo( this, att );
     Resource = CraftResource.Satin;
     Hue = 2992;
     m_Timer = new RotTimer(this);
     m_Timer.Start();
 }
Esempio n. 3
0
            protected override void OnTick()
            {
                RotTimer rotTimer = new RotTimer(m_Mobile);

                if (m_Mobile.Str < 2)
                {
                    m_Mobile.Kill();
                    Stop();
                }
                else
                {
                    if (m_Mobile.Hits > m_Mobile.HitsMax / 2)
                    {
                        m_Mobile.Hits -= m_Mobile.HitsMax / 100;
                        //m_Mobile.Say(" losing 1% Hits");
                    }

                    if (m_Mobile.Hits <= m_Mobile.HitsMax / 2)
                    {
                        m_Mobile.Hits -= 1;
                        //m_Mobile.Say(" losing 1 Hitpoint");
                    }
                    if (m_Mobile.Hits < m_Mobile.HitsMax / 4)
                    {
                        m_Mobile.CantWalk = true;
                        //m_Mobile.Say(" Cant Walk Anymore");
                    }

                    if (m_Mobile.Str > 100)
                    {
                        m_Mobile.Str -= m_Mobile.Str / 30;
                        //m_Mobile.Say(" losing 3.33% Str");
                    }
                    if (m_Mobile.Str <= 100)
                    {
                        m_Mobile.Str -= 1;
                        //m_Mobile.Say(" losing 1 Str point");
                    }

                    rotTimer.Start();
                }
            }
            protected override void OnTick()
            {
                RotTimer rotTimer = new RotTimer( m_Item );

                switch ( Utility.Random( 3 ))
                {
                case 0: m_Item.Hue = 1257;  break;
                case 1: m_Item.Hue = 1258;  break;
                case 2: m_Item.Hue = 1259;  break;
                }
                Stop();
                rotTimer.Start();
            }
Esempio n. 5
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            int version = reader.ReadInt();

            //Remove timer here to stop decay but don't forget the one Constructable section!

            m_Timer = new RotTimer(this);
            m_Timer.Start();
        }
Esempio n. 6
0
            protected override void OnTick()
            {
                RotTimer rotTimer = new RotTimer(m_Mobile);
                if (m_Mobile.Str < 2)
                {
                    m_Mobile.Kill();
                    Stop();
                }
                else
                {
                    if (m_Mobile.Hits > m_Mobile.HitsMax / 2)
                    {
                        m_Mobile.Hits -= m_Mobile.HitsMax / 100;
                        //m_Mobile.Say(" losing 1% Hits");
                    }

                    if (m_Mobile.Hits <= m_Mobile.HitsMax / 2)
                    {
                        m_Mobile.Hits -= 1;
                        //m_Mobile.Say(" losing 1 Hitpoint");
                    }
                    if (m_Mobile.Hits < m_Mobile.HitsMax / 4)
                    {
                        m_Mobile.CantWalk = true;
                        //m_Mobile.Say(" Cant Walk Anymore");

                    }

                    if (m_Mobile.Str > 100)
                    {
                        m_Mobile.Str -= m_Mobile.Str / 30;
                        //m_Mobile.Say(" losing 3.33% Str");
                    }
                    if (m_Mobile.Str <= 100)
                    {
                        m_Mobile.Str -= 1;
                        //m_Mobile.Say(" losing 1 Str point");
                    }

                    rotTimer.Start();
                }
            }
Esempio n. 7
0
        public Zombiex()
            : base(AIType.AI_Melee, FightMode.Closest, 20, 1, 0.2, 0.4)
        {
            Name = "A Contagious Zombie";
            Body = 155;
            BaseSoundID = 471;

            //17MAR2008 - too strong, make it match SerpentineDragon *** START ***
            //SetStr(100);
            //SetDex(25);
            //SetInt(10);

            //SetHits(1000);
            //SetStam(150);
            //SetMana(0);

            //SetDamage(10, 15);

            //SetDamageType(ResistanceType.Physical, 25);
            //SetDamageType(ResistanceType.Cold, 25);
            //SetDamageType(ResistanceType.Poison, 50);

            //SetResistance(ResistanceType.Physical, 60, 80);
            //SetResistance(ResistanceType.Fire, 40, 60);
            //SetResistance(ResistanceType.Cold, 99, 100);
            //SetResistance(ResistanceType.Poison, 99, 100);
            //SetResistance(ResistanceType.Energy, 40, 60);

            //SetSkill(SkillName.Poisoning, 120.0);
            //SetSkill(SkillName.MagicResist, 250.0);
            //SetSkill(SkillName.Tactics, 100.0);
            //SetSkill(SkillName.Wrestling, 90.1, 100.0);

            //PassiveSpeed = .4;
            //ActiveSpeed = .8;

            //Fame = 6000;
            //Karma = -6000;

            //VirtualArmor = 40;

            SetStr(111, 140);
            SetDex(201, 220);
            SetInt(1001, 1040);

            SetHits(480);

            SetDamage(5, 12);

            SetDamageType(ResistanceType.Physical, 75);
            SetDamageType(ResistanceType.Poison, 25);

            SetResistance(ResistanceType.Physical, 35, 40);
            SetResistance(ResistanceType.Fire, 25, 35);
            SetResistance(ResistanceType.Cold, 25, 35);
            SetResistance(ResistanceType.Poison, 25, 35);
            SetResistance(ResistanceType.Energy, 25, 35);

            SetSkill(SkillName.EvalInt, 100.1, 110.0);
            SetSkill(SkillName.Magery, 110.1, 120.0);
            SetSkill(SkillName.Meditation, 100.0);
            SetSkill(SkillName.MagicResist, 100.0);
            SetSkill(SkillName.Tactics, 50.1, 60.0);
            SetSkill(SkillName.Wrestling, 30.1, 100.0);

            Fame = 15000;
            Karma = 15000;

            VirtualArmor = 36;
            //17MAR2008 - too strong, make it match SerpentineDragon *** END   ***


            //If you would want to drop 50% of the time, you would write:
            //if ( 0.5 > Utility.RandomDouble() )
            if (0.25 > Utility.RandomDouble())
            {
                PackItem(new EntrappedSoulWeaponDeed());
            }

            //Remove timer here to stop decay don't forget the Deserialize timer 

            //01AUG2008 I think this is needed for the EntrappedSoulWeapon *** START ***
            PackItem(new Head());
            //01AUG2008 I think this is needed for the EntrappedSoulWeapon *** END   ***

            m_Timer = new RotTimer(this);
            m_Timer.Start();
        }
Esempio n. 8
0
        public Zombiex()
            : base(AIType.AI_Melee, FightMode.Closest, 20, 1, 0.2, 0.4)
        {
            Name        = "A Contagious Zombie";
            Body        = 155;
            BaseSoundID = 471;

            //17MAR2008 - too strong, make it match SerpentineDragon *** START ***
            //SetStr(100);
            //SetDex(25);
            //SetInt(10);

            //SetHits(1000);
            //SetStam(150);
            //SetMana(0);

            //SetDamage(10, 15);

            //SetDamageType(ResistanceType.Physical, 25);
            //SetDamageType(ResistanceType.Cold, 25);
            //SetDamageType(ResistanceType.Poison, 50);

            //SetResistance(ResistanceType.Physical, 60, 80);
            //SetResistance(ResistanceType.Fire, 40, 60);
            //SetResistance(ResistanceType.Cold, 99, 100);
            //SetResistance(ResistanceType.Poison, 99, 100);
            //SetResistance(ResistanceType.Energy, 40, 60);

            //SetSkill(SkillName.Poisoning, 120.0);
            //SetSkill(SkillName.MagicResist, 250.0);
            //SetSkill(SkillName.Tactics, 100.0);
            //SetSkill(SkillName.Wrestling, 90.1, 100.0);

            //PassiveSpeed = .4;
            //ActiveSpeed = .8;

            //Fame = 6000;
            //Karma = -6000;

            //VirtualArmor = 40;

            SetStr(111, 140);
            SetDex(201, 220);
            SetInt(1001, 1040);

            SetHits(480);

            SetDamage(5, 12);

            SetDamageType(ResistanceType.Physical, 75);
            SetDamageType(ResistanceType.Poison, 25);

            SetResistance(ResistanceType.Physical, 35, 40);
            SetResistance(ResistanceType.Fire, 25, 35);
            SetResistance(ResistanceType.Cold, 25, 35);
            SetResistance(ResistanceType.Poison, 25, 35);
            SetResistance(ResistanceType.Energy, 25, 35);

            SetSkill(SkillName.EvalInt, 100.1, 110.0);
            SetSkill(SkillName.Magery, 110.1, 120.0);
            SetSkill(SkillName.Meditation, 100.0);
            SetSkill(SkillName.MagicResist, 100.0);
            SetSkill(SkillName.Tactics, 50.1, 60.0);
            SetSkill(SkillName.Wrestling, 30.1, 100.0);

            Fame  = 15000;
            Karma = 15000;

            VirtualArmor = 36;
            //17MAR2008 - too strong, make it match SerpentineDragon *** END   ***


            //If you would want to drop 50% of the time, you would write:
            //if ( 0.5 > Utility.RandomDouble() )
            if (0.25 > Utility.RandomDouble())
            {
                PackItem(new EntrappedSoulWeaponDeed());
            }

            //Remove timer here to stop decay don't forget the Deserialize timer

            //01AUG2008 I think this is needed for the EntrappedSoulWeapon *** START ***
            PackItem(new Head());
            //01AUG2008 I think this is needed for the EntrappedSoulWeapon *** END   ***

            m_Timer = new RotTimer(this);
            m_Timer.Start();
        }