From 4afeb5dd9804b0cfe7aba12f272b1069c13b4877 Mon Sep 17 00:00:00 2001 From: WarrentyExpired Date: Wed, 7 Oct 2026 11:14:36 -0400 Subject: [PATCH] #W# DOTD: 50% more gold and 25% more MKPs. --- .../UOContent/Engines/DailyDungeonManager.cs | 2 +- Projects/UOContent/Mobiles/BaseCreature.cs | 25 +++++++++++++++---- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/Projects/UOContent/Engines/DailyDungeonManager.cs b/Projects/UOContent/Engines/DailyDungeonManager.cs index a15ff080e..78186a8b2 100644 --- a/Projects/UOContent/Engines/DailyDungeonManager.cs +++ b/Projects/UOContent/Engines/DailyDungeonManager.cs @@ -90,7 +90,7 @@ namespace Server.Custom } m.SendMessage(1161, $"*** Dungeon of the Day: {displayName} ***"); - m.SendMessage(259, "Active Bonuses: Increased Skill gains, extra gold drops, and a chance for rare items!"); + m.SendMessage(259, "Active Bonuses: Increased Skill gains, 50% more gold, 25% more Monster Kill Points, and a chance for rare items!"); } } } diff --git a/Projects/UOContent/Mobiles/BaseCreature.cs b/Projects/UOContent/Mobiles/BaseCreature.cs index ff69a251b..a873787e1 100644 --- a/Projects/UOContent/Mobiles/BaseCreature.cs +++ b/Projects/UOContent/Mobiles/BaseCreature.cs @@ -3655,9 +3655,18 @@ namespace Server.Mobiles Region deathRegion = Region.Find(c.Location, c.Map); + int baseGold = c.GetAmount(typeof(Server.Items.Gold)); + if (DailyDungeonManager.IsActive(deathRegion)) { - c.DropItem(new Server.Items.Gold(Utility.RandomMinMax(100, 300))); + if (baseGold > 0) + { + int bonusGold = (int)(baseGold * 0.50); + if (bonusGold > 0) + { + c.DropItem(new Server.Items.Gold(bonusGold)); + } + } if (Utility.RandomDouble() <= 0.05) { @@ -3672,13 +3681,19 @@ namespace Server.Mobiles if (killer is PlayerMobile pm) { - int goldFound = c.GetAmount(typeof(Gold)); + int totalGoldFound = c.GetAmount(typeof(Server.Items.Gold)); - if (goldFound > 0) + if (totalGoldFound > 0) { - pm.TotalGoldLooted += goldFound; + pm.TotalGoldLooted += totalGoldFound; pm.TotalMonstersKilled += 1; - int points = this.Fame /200; + + int points = this.Fame / 200; + if (DailyDungeonManager.IsActive(deathRegion)) + { + points = (int)(points * 1.25); + } + if (points > 0) { pm.MonsterKillPoints += points;