Перейти к содержанию
Авторизация  
mogrs

First-Team Кастим На Ходу

Рекомендуемые сообщения

Хочу впаять возможность делать некоторые касты скиллов из спеллбука на ходу (типа даш, УЕ, уд, просвет, мб еще что - как в ВоВ короче).

Но запутался с классами. Точно знаю что toggle и итемхендлер скиллы можно кастовать так, как хотелось бы, но вот что-то не могу найти в сборке класс который отвечает за продолжение бега при 2х пиеречисленных/остановку бега при старте каста -_-

Подскажите где искать?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

toggle по оффу не должны, просто сборка кривая. Попробуйте в xml добавить необходимому скилу <set name="altUse" val="true" />

Изменено пользователем PaiN
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

сделать то можно, но будет визуально очень некрасиво выглядеть это все - анимация каста будет сразу же прерываться, как только игрок двинется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

сделать то можно, но будет визуально очень некрасиво выглядеть это все - анимация каста будет сразу же прерываться, как только игрок двинется.

Такое знаю, однако можно прикрутить только эффект какой-нить типа огня или фифачек от рандомкастов без телодвижений перса, тогда будет относительно недурно. Те скиллы и так ускорил почти до моментальных уже. Типа если прикрутить только виз. эффект без анимации перса, то любое лишнее телодвижение не перебьет этот эффект насколько помню (типа как в банках происходит еще).

1й метод не помог, хотя позволил на ходу докастить скилл, но актив скилл - останавливает перса )

Изменено пользователем mogrs

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вроде и нашел место где лежит вещь отвечающая за остановку каста, но что-то там ничего не вышло - пытался попутно создать переменную типа "isrunning=true" и клонировать с ней if(skill.altUse() || skill.isToggle())

 public void Cast(Skill skill, Creature target, boolean forceUse, boolean dontMove)
{
Playable actor = getActor();

// Если скилл альтернативного типа (например, бутылка на хп),
// то он может использоваться во время каста других скиллов, или во время атаки, или на бегу.
// Поэтому пропускаем дополнительные проверки.
if(skill.altUse() || skill.isToggle())
{
if((skill.isToggle() || skill.isHandler()) && (actor.isOutOfControl() || actor.isStunned() || actor.isSleeping() || actor.isParalyzed() || actor.isAlikeDead()))
clientActionFailed();
else
actor.altUseSkill(skill, target);
return;
}

//_actor.stopMove(null);
_forceUse = forceUse;
_dontMove = dontMove;
clearNextAction();
setIntention(CtrlIntention.AI_INTENTION_CAST, skill, target);
}

Изменено пользователем mogrs

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...