devilutionX icon indicating copy to clipboard operation
devilutionX copied to clipboard

Add ItemSpecialEffect::Indestructible

Open kphoenix137 opened this issue 2 years ago • 3 comments

Adds a new flag for Indestructible, so that 255 durability doesn't need to be used as indestructible. Indestructible items are given both the new flag, and also have their durability set to 255 for reverse compatibility. Also added code in CalcPlrItemVals() to force set the flag on any existing item if it has IPL_INDESTRUCTIBLE but doesn't already have the flag (for reverse compatibility).

kphoenix137 avatar Feb 08 '23 04:02 kphoenix137

Won't this break Hellfire items that have been oiled to be indestructable?

AJenbo avatar Aug 27 '23 16:08 AJenbo

Won't this break Hellfire items that have been oiled to be indestructable?

It absolutely will. I forgot about Hellfire Oils entirely. Oil of Permanence in specific is problematic.

kphoenix137 avatar Aug 28 '23 16:08 kphoenix137

Won't this break Hellfire items that have been oiled to be indestructable?

The only thing I can think to do about that is to add a flag to icreateinfo_flag2 so we can differentiate between items before and after this PR. Otherwise, we can't tell the difference between oiled vanilla SP Hellfire items and DevX SP Hellfire items with 255 durability.

Well, either that, or we can simply ignore the problem. Continue to allow SP Hellfire players to abuse Hidden shrines since they have access to Oil of Permanence anyway.

StephenCWills avatar Sep 30 '23 23:09 StephenCWills