Помогите пожалуйста, нужно чтобы откат зависел от каста и\или скорости атаки, сделал такой код, но работает только на физический откат:
[SRC="java"] /** Calculate reuse delay (in milliseconds) for skills */
public static long calcSkillReuseDelay(Creature actor, Skill skill)
{
long reuseDelay = skill.getReuseDelay();
if(actor.isMonster())
reuseDelay = skill.getReuseForMonsters();
if(skill.isReuseDelayPermanent() || skill.isHandler() || skill.isItemSkill())
return reuseDelay;
if(actor.getSkillMastery(skill.getId()) == 1)
{
actor.removeSkillMastery(skill.getId());
return 0;
}
if(skill.isMagic())
return (int) actor.calcStat(Stats.MAGIC_REUSE_RATE, reuseDelay, null, skill);
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
return (long) actor.calcStat(Stats.PHYSIC_REUSE_RATE, reuseDelay, null, skill);
}[/SRC]
Что неверно?
Добавлено через 4 минуты
Сделал так работает, а как разделить ну для магов такой каст нужен а для физиков такой?
[SRC="java"] if(skill.isMagic())
{
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
return (int) actor.calcStat(Stats.MAGIC_REUSE_RATE, reuseDelay, null, skill);
}
else
{
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
}[/SRC]
[SRC="java"] /** Calculate reuse delay (in milliseconds) for skills */
public static long calcSkillReuseDelay(Creature actor, Skill skill)
{
long reuseDelay = skill.getReuseDelay();
if(actor.isMonster())
reuseDelay = skill.getReuseForMonsters();
if(skill.isReuseDelayPermanent() || skill.isHandler() || skill.isItemSkill())
return reuseDelay;
if(actor.getSkillMastery(skill.getId()) == 1)
{
actor.removeSkillMastery(skill.getId());
return 0;
}
if(skill.isMagic())
return (int) actor.calcStat(Stats.MAGIC_REUSE_RATE, reuseDelay, null, skill);
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
return (long) actor.calcStat(Stats.PHYSIC_REUSE_RATE, reuseDelay, null, skill);
}[/SRC]
Что неверно?
Добавлено через 4 минуты
Сделал так работает, а как разделить ну для магов такой каст нужен а для физиков такой?
[SRC="java"] if(skill.isMagic())
{
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
return (int) actor.calcStat(Stats.MAGIC_REUSE_RATE, reuseDelay, null, skill);
}
else
{
reuseDelay *= 600.0 / (skill.isMagic() ? actor.getMAtkSpd() : actor.getPAtkSpd());
}[/SRC]