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)); } }
public static void DistributeRandomArtifact(BaseCreature bc, Type[] typelist) { int random = Utility.Random(typelist.Length); Item item = Loot.Construct(typelist[random]); DistributeArtifact(DemonKnight.FindRandomPlayer(bc), item); }
public override void OnDeath(Container c) { base.OnDeath(c); if (0.30 > Utility.RandomDouble()) { Mobile m = DemonKnight.FindRandomPlayer(this); if (m != null) { Item artifact = VoidPoolRewards.DropRandomArtifact(); if (artifact != null) { Container pack = m.Backpack; if (pack == null || !pack.TryDropItem(m, artifact, false)) { m.BankBox.DropItem(artifact); } m.SendLocalizedMessage(1062317); // For your valor in combating the fallen beast, a special artifact has been bestowed on you. } } } }
public override void OnDeath(Container c) { base.OnDeath(c); if (Utility.RandomDouble() <= 0.25) // 25% chance { switch (Utility.Random(6)) { case 0: DemonKnight.DistributeArtifact(this, new SilverFork()); break; case 1: DemonKnight.DistributeArtifact(this, new BistroFork()); break; case 2: DemonKnight.DistributeArtifact(this, new GastroFork()); break; case 3: DemonKnight.DistributeArtifact(this, new NeedleFork()); break; case 4: DemonKnight.DistributeArtifact(this, new UpgradeSporkDeed()); break; case 5: DemonKnight.DistributeArtifact(this, new FrogDropBag()); break; } } if (Utility.RandomDouble() <= 0.05) // 5% chance { c.DropItem(new AngelSnack()); } }
public override void OnDeath( Container c ) { base.OnDeath( c ); if ( !Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance( this ) ) DemonKnight.DistributeArtifact( this ); }
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); } }
public override void OnDeath(Container c) { double chance = 0.0; if (Hue == (int)FrogAge.OneDay) { chance = 0.01; } else if (Hue == (int)FrogAge.TwoDays) { chance = 0.02; } else if (Hue == (int)FrogAge.ThreeDays) { chance = 0.04; } else if (Hue == (int)FrogAge.FourDays) { chance = 0.08; } else if (Hue == (int)FrogAge.FiveDays) { chance = 0.16; } else if (Hue == (int)FrogAge.SixDays) { chance = 1.0; } base.OnDeath(c); if (chance > 0 && chance > Utility.RandomDouble()) { switch (Utility.Random(6)) { case 0: DemonKnight.DistributeArtifact(this, new WorldMap()); break; case 1: DemonKnight.DistributeArtifact(this, new RedLeaves()); break; case 2: DemonKnight.DistributeArtifact(this, new Sand()); break; // SpecialHairDye case 3: DemonKnight.DistributeArtifact(this, new Rope()); break; case 4: DemonKnight.DistributeArtifact(this, new Vines()); break; // TribalPaint // RockArtifact // Runebook // Gold case 5: DemonKnight.DistributeArtifact(this, new Gold(50)); break; } } }
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); } } }
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); } } }
public override bool OnBeforeDeath() { Mobile killer = DemonKnight.FindRandomPlayer(this); if (killer != null) { Item item = new IceWyrmScale(); Container pack = killer.Backpack; if (pack == null || !pack.TryDropItem(killer, item, false)) { killer.BankBox.DropItem(item); } killer.SendLocalizedMessage(1154489); // You received a Quest Item! } return(base.OnBeforeDeath()); }
public override void OnDeath(Container c) { base.OnDeath(c); Mobile mobile = DemonKnight.FindRandomPlayer(this); if (Paragon.CheckArtifactChance(mobile, this)) { switch (Utility.Random(4)) { case 0: DemonKnight.DistributeArtifact(mobile, new Slither()); break; case 1: DemonKnight.DistributeArtifact(mobile, new IronwoodCompositeBow()); break; case 2: DemonKnight.DistributeArtifact(mobile, new MedusaBlood()); break; case 3: DemonKnight.DistributeArtifact(mobile, new MedusaStatue()); break; } } }
public override void OnDeath(Container c) { base.OnDeath(c); if (Utility.RandomBool()) { c.AddItem(ScrollofTranscendence.CreateRandom(30, 30)); } if (Utility.RandomBool()) { c.AddItem(new TatteredAncientScroll()); } if (Utility.RandomBool()) { c.AddItem(new UntransTome()); } if (Utility.RandomBool()) { c.AddItem(new SpiderCarapace()); } // add special drops to backpack here if (Utility.RandomDouble() < 0.025) { c.AddItem(new Tangle1()); } if (Utility.RandomDouble() < 0.025) { c.AddItem(new EyeOfNavery()); } if (Utility.RandomDouble() < 0.01) { DistributeArtifact(DemonKnight.FindRandomPlayer(this), new NightEyes()); } }
public override bool OnBeforeDeath() { Mobile killer = DemonKnight.FindRandomPlayer(this); if (killer != null) { Item item = new StrongboxKey(); Container pack = killer.Backpack; if (pack == null || !pack.TryDropItem(killer, item, false)) { killer.BankBox.DropItem(item); } killer.SendLocalizedMessage(1154489); // You received a Quest Item! } Timer.DelayCall(TimeSpan.FromMinutes(10.0), new TimerCallback(m_Controller.CreateSorcerersPlates)); return(base.OnBeforeDeath()); }
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); } }
public override bool OnBeforeDeath() { BlueTurkeyInfo.AwardPoints(DemonKnight.FindRandomPlayer(this), 1); return(base.OnBeforeDeath()); }