diff options
Diffstat (limited to 'whispers-qol/superload')
-rw-r--r-- | whispers-qol/superload/mod/class/Player.lua | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/whispers-qol/superload/mod/class/Player.lua b/whispers-qol/superload/mod/class/Player.lua new file mode 100644 index 0000000..3a6068e --- /dev/null +++ b/whispers-qol/superload/mod/class/Player.lua @@ -0,0 +1,18 @@ +local _M = loadPrevious(...) + +-- detect Auto-Transmo Gems, hopefully durably +if type(config.settings.tome.auto_transmo_gems) ~= 'nil' then + local super_pickupFloor = _M.pickupFloor + function _M:pickupFloor(i, vocal, no_sort) + local ret = { super_pickupFloor(self, i, vocal, no_sort) } + + local o = ret[1] + if not (o and type(o) == 'table' and o.type == 'gem' and o.imbue_powers and o.__transmo == true) then + return unpack(ret) + if o.imbue_powers.stun_immune or o.imbue_powers.resists_pen then + o.__transmo = false + end + + return unpack(ret) + end +end |