REDIVIVUS

Proposals / #965

Mac SKILLSASS_CltSetChargeUpState: __cdecl BOOL (D2UnitStrc * pUnit, eD2Skills eSkill, int32_t nUnused)

rejected · by KierTaylor · submitted 2026-11-02, rejected 2026-11-02

Mac body reads [EBP+0xc] as the skill id (sign-checked, compared with the SkillsTxt count at +0xba0 and scaled by 0x23c to index the rows) and [EBP+8] as the unit (passed to the state getter with state 0xc and to the overlay/stat-list setup); [EBP+0x10] is never read; no ECX/EDX input (ECX is zeroed first); returns 0/1. Windows twin SKILLSASS_CltSetChargeUpState 0x004f2450 is BOOL (D2UnitStrc * pUnit, eD2Skills eSkill, int32_t nUnused); the third slot is kept because it is a skill-function-table callback.

Changes 1, applied together

  1. Set prototype mac 0x00085fe4

    signatureundefined SKILLSASS_CltSetChargeUpState(void)→BOOL SKILLSASS_CltSetChargeUpState(D2UnitStrc * pUnit, eD2Skills eSkill, int32_t nUnused)
    conventionunknown→__cdecl