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

Помогите со скриптом

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

Всем привет.

Хочу реализовать следующий скрипт:

Игроки бьют моба в инвуле, через 100 ударов, шанст что убьют 1%, через 150- 2% и так далее.

Все написал, застрял только на одном, как сделать проверку на количество ударов. Сделал через шанс, но моб может и с первого удара упасть.

Предполагаю что должно быть так:

if (Проверка на количество ударов > 100)
	{
		if (CHANCE[0] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}
else if (Проверка на количество ударов > 150)
{
		if (CHANCE[1] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}

Подскажите пожалуйста какая должна быть проверка. 

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


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

Всем привет.

Хочу реализовать следующий скрипт:

Игроки бьют моба в инвуле, через 100 ударов, шанст что убьют 1%, через 150- 2% и так далее.

Все написал, застрял только на одном, как сделать проверку на количество ударов. Сделал через шанс, но моб может и с первого удара упасть.

Предполагаю что должно быть так:


if (Проверка на количество ударов > 100)
	{
		if (CHANCE[0] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}
else if (Проверка на количество ударов > 150)
{
		if (CHANCE[1] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}

Подскажите пожалуйста какая должна быть проверка. 

Значит нужно считать и хранить количество ударов. 

  • Upvote 1

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


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

Значит нужно считать и хранить количество ударов. 

Может есть функция, "сколько ударов заблокировал нпц")

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


Ссылка на сообщение
Поделиться на другие сайты
5 часов назад, joof сказал:

Всем привет.

Хочу реализовать следующий скрипт:

Игроки бьют моба в инвуле, через 100 ударов, шанст что убьют 1%, через 150- 2% и так далее.

Все написал, застрял только на одном, как сделать проверку на количество ударов. Сделал через шанс, но моб может и с первого удара упасть.

Предполагаю что должно быть так:


if (Проверка на количество ударов > 100)
	{
		if (CHANCE[0] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}
else if (Проверка на количество ударов > 150)
{
		if (CHANCE[1] > Rnd.get(1, 100))
			{
				npc.doDie(attacker);
		  	}
	}

Подскажите пожалуйста какая должна быть проверка. 

Написать счетчик на кол-во проходящих ударов. Если i = 100, попадаем в условие и т.д. 
 

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


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

Написать счетчик на кол-во проходящих ударов. Если i = 100, попадаем в условие и т.д. 
 

OnAttack может не срабатывать при увороте итд(дмг>0)

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


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

ну если думать логически, то увернулся = не получил удар = ни к чему и считать эту попытку

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


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

OnAttack может не срабатывать при увороте итд(дмг>0)

ТС говорил 100 ударов, по идее же которые проходят.

 

58 минут назад, Gaikotsu сказал:

ну если думать логически, то увернулся = не получил удар = ни к чему и считать эту попытку

опередил :) 

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


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

ТС говорил 100 ударов, по идее же которые проходят.

 

опередил :) 

Не обязательно 100 ударов, главное не меньше.

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


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

Не обязательно 100 ударов, главное не меньше.

Я привел пример, если писать код, можно сделать как придумаете.

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


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

Какая функция отвечает за проверку ударов?

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


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

Какая функция отвечает за проверку ударов?

Какую добавите, та и будет отвечать

  • Upvote 1

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


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

Хочу в onAtack, но не знаю как саму проверку правильно написать.

Сборка Acis

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


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

Какая функция отвечает за проверку ударов?

поглядеть в сторону метода onHitTimer

  • Upvote 1

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


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

onAtack

1. Проверяем если это "наш" нпц

2.Записываем в память обьект с парой полей {id,hitsCount} (создайте класс для удобства)

3.пишем метод который получает количество ударов по ид нпц, что-то вроде getNpcHits(npcId) {...тут пробегаемся в цикле по списку записаных данных, находим запись с нужным ид и поулчаем поле с количеством ударов...}

4.Используем

  • Upvote 1

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


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

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

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

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

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

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

Войти

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

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

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

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

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