public LargeHuntBOD() { int curLevel = 0; int levelMax = 0; int amountMax = 0; HuntBodUtility.GetLargeBodProps(Utility.RandomMinMax(80, 120), out levelMax, out amountMax); LargeBulkEntry[] entries = LargeBulkEntry.ConvertEntries(this, HuntBodUtility.GetLargeEntry(out curLevel, levelMax)); this.Hue = HuntBodUtility.HuntBodDeedHue; this.AmountMax = amountMax; this.Entries = entries; this.RequireExceptional = false; this.Material = (BulkMaterialType)curLevel; }
public static LargeHuntBOD CreateRandomFor(Mobile m, double skill) { int curLevel = 0; int levelMax = 0; int amountMax = 0; HuntBodUtility.GetLargeBodProps(skill, out levelMax, out amountMax); LargeHuntBOD largeBod = new LargeHuntBOD(amountMax, false, 0, null); largeBod.Entries = LargeBulkEntry.ConvertEntries(largeBod, HuntBodUtility.GetLargeEntry(out curLevel, levelMax)); largeBod.Material = (BulkMaterialType)curLevel; return(largeBod); }
public static SmallHuntBOD CreateRandomFor(Mobile m, double skill) { int curLevel = 0; int levelMax = 0; int amountMax = 0; HuntBodUtility.GetSmallBodProps(skill, out levelMax, out amountMax); SmallBulkEntry[] entries = HuntBodUtility.GetSmallEntry(out curLevel, levelMax); if (entries.Length > 0) { return(new SmallHuntBOD(entries[Utility.Random(entries.Length)], curLevel, amountMax, false)); } else { return(null); } }
public override List <Item> ComputeRewards(bool full) { List <Item> list = new List <Item>(); Container cont = new Bag(); int minProp = Level + 1; if (minProp > 3) { minProp = 3; } //EUtility.AddRandomLoot(cont, (Level + 1) * 3, (int)(Level * 300 + AmountMax / 20.0 * 300), ScaleTypes.PlayerLuck, minProp, 5, 10, 100); cont.DropItem(HuntBodUtility.GetSmallRewardItem(Level)); list.Add(cont); return(list); }
public SmallHuntBOD() { int curLevel = 0; int levelMax = 0; int amountMax = 0; HuntBodUtility.GetSmallBodProps(Utility.RandomMinMax(80, 120), out levelMax, out amountMax); SmallBulkEntry[] entries = HuntBodUtility.GetSmallEntry(out curLevel, levelMax); if (entries.Length > 0) { SmallBulkEntry entry = entries[Utility.Random(entries.Length)]; this.Hue = HuntBodUtility.HuntBodDeedHue; this.AmountMax = amountMax; this.Type = entry.Type; this.Number = entry.Number; this.Graphic = entry.Graphic; this.RequireExceptional = false; this.Material = (BulkMaterialType)curLevel; } }
public override List <Item> ComputeRewards(bool full) { List <Item> list = new List <Item>(); double psChance = 0; int iPSMin = 0; int iPSMax = 0; int itemAmount = (Level + 1) * this.Entries.Length; switch (Level) { default: case 0: // Easy psChance = 0.03; iPSMin = 5; iPSMax = 5; break; case 1: // Medium psChance = 0.05; iPSMin = 5; iPSMax = 5; break; case 2: // Hard psChance = 0.10; iPSMin = 5; iPSMax = 5; break; case 3: // Very Hard psChance = 0.20; iPSMin = 10; iPSMax = 10; break; } psChance += this.AmountMax / 200.0; psChance += this.Entries.Length / 60.0; Container cont = new Bag(); int minProp = Level + 3; if (minProp > 5) { minProp = 5; } //EUtility.AddRandomLoot(cont, (Level + 1) * 3, (int)(Level * 300 + AmountMax / 20.0 * 150 + Entries.Length / 6.0 * 150), ScaleTypes.PlayerLuck, minProp, 5, 50, 100); cont.DropItem(HuntBodUtility.GetLargeRewardItem(Level)); if (psChance >= Utility.RandomDouble() && iPSMin > 0 && iPSMax > 0) { cont.DropItem(PowerScroll.CreateRandomNoCraft(iPSMin, iPSMax)); } list.Add(cont); return(list); }
public override void GetProperties(ObjectPropertyList list) { base.GetProperties(list); list.Add(1042971, string.Format("Difficulty Level: {0}", HuntBodUtility.GetDifficultyLevel(Level))); // ~1_NOTHING~ }