- Хроники
- Salvation
- Исходники
- Присутствуют
- Сборка
- L2jmobius
Доброго времени суток.
Уважаемые форумчане, большая просьба ткнуть носом, суть проблемы (на основе физов):
Хаст - кап 1500
При автоатаки удары наносятся довольно быстро ( при капе по идее так и должно быть) они завершают серию (анимацию атаки исходя из расы\класса персонажа)
Но после её завершения (именно анимации серии) следует задержка около 0.5-1 сек., после чего серия возобновляется вновь.
В выше изложенной формуле, как и должно быть, где бы я не читал ( при 1500 хаст спида, стоит задержка в 333м.с) и это считается нормой.
Собственно вопрос, каким образом реализовать непрерывную анимацию атаки при капе скорости атаки.
При изменении формулы задержки с 333 допустим до 250, атаки становятся быстрее но анимация зависает на её реализации ( проще говоря персонаж замахивается производит одну атаку (допустим сбоку) ударяет, и опять с нее же начинает следующий удар, анимация атаки происходит не полная, но судя по логу чата, атаки скачат с бешенной скоростью.)
Уважаемые форумчане, большая просьба ткнуть носом, суть проблемы (на основе физов):
Хаст - кап 1500
Код:
public static int calcAtkSpd(L2Character attacker, Skill skill, double skillTime)
{
if (skill.isMagic())
{
return (int) ((skillTime / attacker.getMAtkSpd()) * 333);
}
return (int) ((skillTime / attacker.getPAtkSpd()) * 333);
}
public static double calcAtkSpdMultiplier(L2Character creature)
{
double armorBonus = 1;
double dexBonus = BaseStats.DEX.calcBonus(creature);
double weaponAttackSpeed = Stats.weaponBaseValue(creature, Stats.PHYSICAL_ATTACK_SPEED) / armorBonus;
double attackSpeedPerBonus = creature.getStat().getMul(Stats.PHYSICAL_ATTACK_SPEED);
double attackSpeedDiffBonus = creature.getStat().getAdd(Stats.PHYSICAL_ATTACK_SPEED);
return (dexBonus * (weaponAttackSpeed / 333) * attackSpeedPerBonus) + (attackSpeedDiffBonus / 333);
}
public static double calcMAtkSpdMultiplier(L2Character creature)
{
final double armorBonus = 1; // TODO: Implement me!
final double witBonus = BaseStats.WIT.calcBonus(creature);
final double castingSpeedPerBonus = creature.getStat().getMul(Stats.MAGIC_ATTACK_SPEED);
final double castingSpeedDiffBonus = creature.getStat().getAdd(Stats.MAGIC_ATTACK_SPEED);
return ((1 / armorBonus) * witBonus * castingSpeedPerBonus) + (castingSpeedDiffBonus / 333);
}
Но после её завершения (именно анимации серии) следует задержка около 0.5-1 сек., после чего серия возобновляется вновь.
В выше изложенной формуле, как и должно быть, где бы я не читал ( при 1500 хаст спида, стоит задержка в 333м.с) и это считается нормой.
Собственно вопрос, каким образом реализовать непрерывную анимацию атаки при капе скорости атаки.
При изменении формулы задержки с 333 допустим до 250, атаки становятся быстрее но анимация зависает на её реализации ( проще говоря персонаж замахивается производит одну атаку (допустим сбоку) ударяет, и опять с нее же начинает следующий удар, анимация атаки происходит не полная, но судя по логу чата, атаки скачат с бешенной скоростью.)