From 94940470f495d8563b4a837a81bf173a1f11befd Mon Sep 17 00:00:00 2001 From: bernat Date: Sun, 1 Sep 2024 21:17:27 +0200 Subject: [PATCH] fix drop when drop group is associated directly to mob --- src/GameLogic/DefaultDropGenerator.cs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/GameLogic/DefaultDropGenerator.cs b/src/GameLogic/DefaultDropGenerator.cs index d66dd1e61..13a8403d8 100644 --- a/src/GameLogic/DefaultDropGenerator.cs +++ b/src/GameLogic/DefaultDropGenerator.cs @@ -406,9 +406,18 @@ private void AddRandomExcOptions(Item item) if (selectedGroup.PossibleItems?.Count > 0) { - var monsterLevel = (int)monster[Stats.Level]; - var filteredPossibleItems = selectedGroup.PossibleItems.Where(it => it.DropLevel == 0 || ((it.DropLevel <= monsterLevel) && (it.DropLevel > monsterLevel - 12))).ToArray(); - return this.GenerateItemDrop(selectedGroup, filteredPossibleItems); + var isDropSpecificForMonster = monster.DropItemGroups.Contains(selectedGroup); + + if (isDropSpecificForMonster) + { + return this.GenerateItemDrop(selectedGroup, selectedGroup.PossibleItems); + } + else + { + var monsterLevel = (int)monster[Stats.Level]; + var filteredPossibleItems = selectedGroup.PossibleItems.Where(it => it.DropLevel == 0 || ((it.DropLevel <= monsterLevel) && (it.DropLevel > monsterLevel - 12))).ToArray(); + return this.GenerateItemDrop(selectedGroup, filteredPossibleItems); + } } switch (selectedGroup.ItemType)