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

Cubic skills hitTime

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

Сборка 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

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


Ссылка на сообщение
Поделиться на другие сайты
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;
				}
			}

 

А заюзать этот же таск для кубика как вариант если у персонажей всё нормально?

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


Ссылка на сообщение
Поделиться на другие сайты
38 минут назад, JunkyFunky сказал:

А заюзать этот же таск для кубика как вариант если у персонажей всё нормально?

Как это сделать?

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


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

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

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

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

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

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

Войти

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

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

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

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

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