sharper 0 Опубликовано 27 марта, 2018 (изменено) Сборка Interlude Silentium Проблема: когда у кубика срабатывает шанс использовать свой скилл, то эффект от скилла срабатывает моментально (у Storm Cubic, например, моментально появляется количество нанесённого урона в чате), а лишь потом на самом кубике появляется анимация каста скилла. Вопрос: Как сделать так, чтобы кубик учитывал hitTime скилла и урон/эффект происходили после задержки hitTime, а не моментально при выпадении шанса? Смотрел L2CubicInstance.java и L2Character.java Заметил, что для чаров есть трёхфазность заклинания (начало с потреблениями и условиями, середина с кастом и hitTime, концовка с посылом магии в цель), для кубиков такого нет. Может быть дело в этом. Если дать скилл кубика чару и скастовать его, то всё происходит как надо: на кубике появляется анимация, а после докастовывания наносится урон. /** Task lauching the magic skill phases */ class MagicUseTask implements Runnable { L2Object[] targets; L2Skill skill; int hitTime; int coolTime; int phase; boolean simultaneously; public MagicUseTask(L2Object[] tgts, L2Skill s, int hit, int coolT, boolean simultaneous) { targets = tgts; skill = s; phase = 1; hitTime = hit; coolTime = coolT; simultaneously = simultaneous; } @Override public void run() { try { switch (phase) { case 1: onMagicLaunchedTimer(this); break; case 2: onMagicHitTimer(this); break; case 3: onMagicFinalizer(this); break; default: break; } } Изменено 27 марта, 2018 пользователем sharper Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
JunkyFunky 127 Опубликовано 27 марта, 2018 39 минут назад, sharper сказал: Сборка Interlude Silentium Проблема: когда у кубика срабатывает шанс использовать свой скилл, то эффект от скилла срабатывает моментально (у Storm Cubic, например, моментально появляется количество нанесённого урона в чате), а лишь потом на самом кубике появляется анимация каста скилла. Вопрос: Как сделать так, чтобы кубик учитывал hitTime скилла и урон/эффект происходили после задержки hitTime, а не моментально при выпадении шанса? Смотрел L2CubicInstance.java и L2Character.java Заметил, что для чаров есть трёхфазность заклинания (начало с потреблениями и условиями, середина с кастом и hitTime, концовка с посылом магии в цель), для кубиков такого нет. Может быть дело в этом. Если дать скилл кубика чару и скастовать его, то всё происходит как надо: на кубике появляется анимация, а после докастовывания наносится урон. /** Task lauching the magic skill phases */ class MagicUseTask implements Runnable { L2Object[] targets; L2Skill skill; int hitTime; int coolTime; int phase; boolean simultaneously; public MagicUseTask(L2Object[] tgts, L2Skill s, int hit, int coolT, boolean simultaneous) { targets = tgts; skill = s; phase = 1; hitTime = hit; coolTime = coolT; simultaneously = simultaneous; } @Override public void run() { try { switch (phase) { case 1: onMagicLaunchedTimer(this); break; case 2: onMagicHitTimer(this); break; case 3: onMagicFinalizer(this); break; default: break; } } А заюзать этот же таск для кубика как вариант если у персонажей всё нормально? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
sharper 0 Опубликовано 27 марта, 2018 38 минут назад, JunkyFunky сказал: А заюзать этот же таск для кубика как вариант если у персонажей всё нормально? Как это сделать? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты