if (event.startsWith("EFFECT_SKILL_"))
{
final int skillID = Integer.parseInt(event.replace("EFFECT_SKILL_", ""));
SkillHolder skillHolder = new SkillHolder(skillID, 1);
player.removeTimeStamp(skillHolder.getSkill());
player.doCast(skillHolder.getSkill());
startQuestTimer("SKILL_UPDATE_" + skillID, 5000, npc, player);
return null;
}
else if (event.startsWith("SKILL_UPDATE_"))
{
final int skillID = Integer.parseInt(event.replace("SKILL_UPDATE_", ""));
if (player.isCastingNow())
{
startQuestTimer("SKILL_UPDATE_" + skillID, 5000, npc, player);
return null;
}
BuffInfo buff = player.getEffectList().getBuffInfoBySkillId(skillID);
if (buff == null)
{
return null;
}
buff.resetAbnormalTime(86_400);
final AbnormalStatusUpdate asu = new AbnormalStatusUpdate();
player.getEffectList().getEffects().forEach(asu::addSkill);
player.getEffectList().getDebuffs().forEach(asu::addSkill);
player.sendPacket(asu);
return npc.getId() + ".htm";
}