예제 #1
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            if (!Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance(this))
            {
                switch (Utility.Random(5))
                {
                case 0: DemonKnight.DistributeArtifact(this, new SerpentsFang()); break;

                case 1: DemonKnight.DistributeArtifact(this, new SpiritOfTheTotem()); break;

                case 2: DemonKnight.DistributeArtifact(this, new TheDryadBow()); break;

                case 3: DemonKnight.DistributeArtifact(this, new RingOfTheElements()); break;

                default: DemonKnight.DistributeArtifact(this, new OrnamentOfTheMagician()); break;
                }
            }


            for (int i = 0; i < 6; i++)
            {
                c.DropItem(new BlueDraconicRune(1));
            }
        }
예제 #2
0
		public override void OnDeath( Container c )
		{
			base.OnDeath( c );

			if ( !Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance( this ) )
				DemonKnight.DistributeArtifact( this );
		}
예제 #3
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            if (!Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance(this))
            {
                DemonKnight.DistributeArtifact(this);
            }

            if (0.2 > Utility.RandomDouble())
            {
                int  r    = Utility.Random(100);
                Item drop = null;

                if (r > 70)
                {
                    drop = new BloodPentagramPart(Utility.Random(5));
                }
                else if (r > 60)
                {
                    drop = new MetalChest();
                }
                else if (r > 50)
                {
                    drop = new DecorativeAxeNorthDeed();
                }
                else if (r > 40)
                {
                    drop = new BrownBearRugSouthDeed();
                }
                else if (r > 30)
                {
                    drop = new BrownBearRugEastDeed();
                }
                else if (r > 20)
                {
                    drop = new StackedArrows();
                }
                else if (r > 10)
                {
                    drop = new BronzeIngots();
                }
                else if (r > 5)
                {
                    drop = new StackedShafts();
                }
                else if (r > 1)
                {
                    drop = new RareFeathers();
                }
                else
                {
                    drop = new ClothingBlessDeed();
                }

                c.DropItem(drop);
            }
        }
예제 #4
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            // Genova: flag artefatos.
            if (GeNovaXML.Flags_Active(XMLNames.Artifacts))
            {
                if (!Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance(this))
                {
                    DemonKnight.DistributeArtifact(this);
                }
            }
        }
예제 #5
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            if (!Summoned && !NoKillAwards)
            {
                if (DemonKnight.CheckArtifactChance(this))
                {
                    DemonKnight.DistributeArtifact(this, false);
                }
                else if (Core.ML)
                {
                    DemonKnight.ComputePoints(this);
                    DemonKnight.DistributeArtifact(this, true);
                }
            }
        }
예제 #6
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            if (!Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance(this))
            {
                DemonKnight.DistributeArtifact(this);
            }

            if (0.75 > Utility.RandomDouble())
            {
                int  r    = Utility.Random(100);
                Item drop = null;

                if (r < 1)
                {
                    drop = new LayerSashDeed();
                }
                else if (r < 4)
                {
                    drop = new SpecialQuestSandals();
                }
                else if (r < 6)
                {
                    drop = new RareCreamCarpet(PieceType.Centre);
                }
                else if (r < 8)
                {
                    drop = new RareBlueCarpet(PieceType.Centre);
                }
                else if (r < 10)
                {
                    drop = new RareBloodCarpet(PieceType.Centre);
                }
                else if (r < 12)
                {
                    drop = new BasicBlueCarpet(PieceType.Centre);
                }
                else if (r < 14)
                {
                    drop = new BasicPinkCarpet(PieceType.Centre);
                }
                else if (r < 29)
                {
                    drop = new BloodPentagramPart(Utility.Random(5));
                }
                else if (r < 30)
                {
                    drop = new ClothingBlessDeed();
                }
                else if (r < 35)
                {
                    drop = new MysteriousCloth();
                }
                else if (r < 40)
                {
                    drop = new SpecialHairDye();
                }
                else if (r < 45)
                {
                    drop = new SpecialBeardDye();
                }
                else if (r < 50)
                {
                    drop = new NameChangeDeed();
                }
                else if (r < 65)
                {
                    drop = new SkillTunic();
                }
                else if (r < 80)
                {
                    drop = new TamersCrook();
                }
                else if (r < 85)
                {
                    drop = new HeroShield();
                }
                else if (r < 88)
                {
                    drop = new EvilShield();
                }
                else if (r < 91)
                {
                    drop = new MondainHat();
                }
                else if (r < 94)
                {
                    drop = new PlatinGloves();
                }
                else if (r < 96)
                {
                    drop = new AncientSamuraiHelm();
                }
                else if (r < 98)
                {
                    drop = Utility.RandomBool() ? (Item)(new MirrorEast()) : (Item)(new MirrorNorth());
                }
                else
                {
                    drop = Utility.RandomBool() ? (Item)(new BoneBenchEastPart()) : (Item)(new BoneBenchWestPart());
                }

                c.DropItem(drop);
            }
        }