Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion scripts/mixins/families/puk.lua
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,24 @@ g_mixins.families.puk = function(mob)
[xi.day.DARKSDAY ] = xi.damageType.DARK,
}

-- If the element corresponding to the elemental day of the in-game Vana'diel week is used on a Puk, it will get 100% TP instantly.
-- Day element damage gives TP.
if damageType == elementTable[VanadielDayOfTheWeek()] then
puk:addTP(1000)
end
end)

mob:addListener('MAGIC_TAKE', 'PUK_MAGIC_TAKE', function(puk, caster, spell)
-- On Windsday, wind damage spells grant TP (excluding dot).
if
VanadielDayOfTheWeek() == xi.day.WINDSDAY and
spell:getElement() == xi.element.WIND and
spell:getSkillType() == xi.skill.ELEMENTAL_MAGIC and
spell:getSpellFamily() ~= xi.magic.spellFamily.ELE_DOT and
puk:getMod(xi.mod.WIND_ABSORB) > 0
then

@Xaver-DaRed Xaver-DaRed May 8, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont think this is fixing anything.
Firstly, the new check is
x or (x and y and z) making y and z never enforced.
(damageType == elementTable[VanadielDayOfTheWeek()] is equivalent to VanadielDayOfTheWeek() == xi.day.WINDSDAY and damageType == xi.damageType.WIND when it comes to wind damage)

Secondly, the old method doesnt care for damage amount, at all.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed in my last commit, my bad

puk:addTP(1000)
end
end)
end

return g_mixins.families.puk
Loading