diff --git a/Source/items.cpp b/Source/items.cpp index 073c18a98..32622c82d 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -2601,11 +2601,19 @@ int RndItem(int m) ri = 0; for (i = 0; AllItemsList[i].iLoc != ILOC_INVALID; i++) { - if (AllItemsList[i].iRnd == IDROP_DOUBLE && monster[m].mLevel >= AllItemsList[i].iMinMLvl) { + if (AllItemsList[i].iRnd == IDROP_DOUBLE && monster[m].mLevel >= AllItemsList[i].iMinMLvl +#ifdef HELLFIRE + && ri < 512 +#endif + ) { ril[ri] = i; ri++; } - if (AllItemsList[i].iRnd && monster[m].mLevel >= AllItemsList[i].iMinMLvl) { + if (AllItemsList[i].iRnd && monster[m].mLevel >= AllItemsList[i].iMinMLvl +#ifdef HELLFIRE + && ri < 512 +#endif + ) { ril[ri] = i; ri++; }