К примеру, для того, чтоб заставить ёлку на мобиусе показывать анимацию (кружочек вокруг ёлки) и анимацию наложения эффекта (Marry Christmas ) на персонажа - пришлось делать что-то типо такого
Java:
if (event.equalsIgnoreCase("BUFF_AROUND_PLAYERS"))
{
for (Npc tree : TREE_NPCs)
{
final List<PlayerInstance> aroundPlayers = World.getInstance().getVisibleObjectsInRange(tree, PlayerInstance.class, 300);
if (aroundPlayers.isEmpty())
{
continue;
}
tree.doCast(TREE_SKILL.getSkill());
for (PlayerInstance p : aroundPlayers)
{
TREE_SKILL.getSkill().activateSkill(tree, (CubicInstance) null, null, p);
p.sendPacket(new MagicSkillLaunched(tree, TREE_SKILL.getSkillId(), TREE_SKILL.getSkillLevel(), SkillCastingType.NORMAL, new HashSet<>(aroundPlayers)));
}
}
Тут именно нужен каст через цикл, ибо бродкаст работает не корректно.
дело в том что если заменить нпц, на монстра например, то еффекты работают и каст и анимация бафа. Как будто у нпц не прописан каст скила. Но бафы в кх у таких же нпц как-то работают(они скил не кастуют, но конечный эффект бафа отображается)
дело в том что если заменить нпц, на монстра например, то еффекты работают и каст и анимация бафа. Как будто у нпц не прописан каст скила. Но бафы в кх у таких же нпц как-то работают(они скил не кастуют, но конечный эффект бафа отображается)
Если так происходит то 100% у этого нпц просто нету анимации скила. Делать новую очень геморно лучше взять другого нпц и смирится) ну можешь попробовать гайдов тонна
Ну конечно дело было в отсутствии анимации у нпц. Проверил через дев мод. Просто не ожидал что самому скилу есть дело до того как нпц будут проигрывать скилл. Так вот для такого случая нарисовали отдельные скилы для нпц) именно их кастуют нпц в кх и нубибаферы
ну в моем понимании скилу должно быть все равно кто его кастует. хоть игрок ,хоть нпц ,хоть елка с ивента. Скил должен вызвать что-то типо метода doanimation у нпц. и не зависимо есть у нпц анимация или нет, выполнить свою часть,тоесть эффект над кастующим и эффект на таргете. Но видимо не так все устроено..)
ну в моем понимании скилу должно быть все равно кто его кастует. хоть игрок ,хоть нпц ,хоть елка с ивента. Скил должен вызвать что-то типо метода doanimation у нпц. и не зависимо есть у нпц анимация или нет, выполнить свою часть,тоесть эффект над кастующим и эффект на таргете. Но видимо не так все устроено..)
можете проверить все скиллы, которые бафает нубобафер, есть будт анимация - можете слать её вместо вашего умения, правда мало сурсов так умеют - прийдется слать пакет MagicSkillUse
они не вызывают анимацию у нпц. а также ни как не отображаются на кастующем нпц, но на игроке эти эффекты уже видно визуально. Другое дело чтобы добавить например кастомный баф( бафы варка овера бд или свса) и чтобы было видно их анимацию от нпц, нужно их специально рисовать, по типу бафов из кх. ну тоесть на стороне сервера, или в скилл групп это не изменить.
Не проверял но вполне должен быть вариант со стороны сервера отправлять уже еффект умения на персонажа минуя кастующего типо аи для нпц, должно выглядеть как Селф но без кастующего то есть без первой части анимации