Okay,
in skill.c find:
sc_start(src, bl, (sc_type)(SC_PROTECTWEAPON + i), 100, skill_lv, skilltime);
s++;
}
And replace for this:
sc_start(src, bl, (sc_type)(SC_PROTECTWEAPON + i), 100, skill_lv, skilltime);
s++;
}
if( sd->sc.data[sC_SOULLINK] && sd->sc.data[sC_SOULLINK]->val2 == SL_ALCHEMIST ) {
status_change_end(bl, SC_NOEQUIPHELM, INVALID_TIMER);
status_change_end(bl, SC_NOEQUIPARMOR, INVALID_TIMER);
status_change_end(bl, SC_NOEQUIPWEAPON, INVALID_TIMER);
status_change_end(bl, SC_NOEQUIPSHIELD, INVALID_TIMER);
}
Recompile and done ~