diff --git a/Source/items.cpp b/Source/items.cpp index 3ba529d2e..1164d2ba8 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -3659,7 +3659,18 @@ void PrintItemMisc(ItemStruct *x) void PrintItemDetails(ItemStruct *x) { + char str, dex; + BYTE mag; + if (x->_iClass == ICLASS_WEAPON) { +#ifdef HELLFIRE + if (x->_iMinDam == x->_iMaxDam) { + if (x->_iMaxDur == 255) + sprintf(tempstr, "damage: %i Indestructible", x->_iMinDam); + else + sprintf(tempstr, "damage: %i Dur: %i/%i", x->_iMinDam, x->_iDurability, x->_iMaxDur); + } else +#endif if (x->_iMaxDur == 255) sprintf(tempstr, "damage: %i-%i Indestructible", x->_iMinDam, x->_iMaxDam); else @@ -3674,6 +3685,11 @@ void PrintItemDetails(ItemStruct *x) AddPanelString(tempstr, TRUE); } if (x->_iMiscId == IMISC_STAFF && x->_iMaxCharges) { +#ifdef HELLFIRE + if (x->_iMinDam == x->_iMaxDam) + sprintf(tempstr, "dam: %i Dur: %i/%i", x->_iMinDam, x->_iDurability, x->_iMaxDur); + else +#endif sprintf(tempstr, "dam: %i-%i Dur: %i/%i", x->_iMinDam, x->_iMaxDam, x->_iDurability, x->_iMaxDur); sprintf(tempstr, "Charges: %i/%i", x->_iCharges, x->_iMaxCharges); AddPanelString(tempstr, TRUE); @@ -3692,7 +3708,10 @@ void PrintItemDetails(ItemStruct *x) curruitem = *x; } PrintItemMisc(x); - if (x->_iMinMag + x->_iMinDex + x->_iMinStr) { + mag = x->_iMinMag; + dex = x->_iMinDex; + str = x->_iMinStr; + if (mag + dex + str) { strcpy(tempstr, "Required:"); if (x->_iMinStr) sprintf(tempstr, "%s %i Str", tempstr, x->_iMinStr); @@ -3707,7 +3726,18 @@ void PrintItemDetails(ItemStruct *x) void PrintItemDur(ItemStruct *x) { + char str, dex; + BYTE mag; + if (x->_iClass == ICLASS_WEAPON) { +#ifdef HELLFIRE + if (x->_iMinDam == x->_iMaxDam) { + if (x->_iMaxDur == 255) + sprintf(tempstr, "damage: %i Indestructible", x->_iMinDam); + else + sprintf(tempstr, "damage: %i Dur: %i/%i", x->_iMinDam, x->_iDurability, x->_iMaxDur); + } else +#endif if (x->_iMaxDur == 255) sprintf(tempstr, "damage: %i-%i Indestructible", x->_iMinDam, x->_iMaxDam); else @@ -3736,7 +3766,10 @@ void PrintItemDur(ItemStruct *x) if (x->_itype == ITYPE_RING || x->_itype == ITYPE_AMULET) AddPanelString("Not Identified", TRUE); PrintItemMisc(x); - if (x->_iMinMag + x->_iMinDex + x->_iMinStr) { + str = x->_iMinStr; + mag = x->_iMinMag; + dex = x->_iMinDex; + if (str + mag + dex) { strcpy(tempstr, "Required:"); if (x->_iMinStr) sprintf(tempstr, "%s %i Str", tempstr, x->_iMinStr);