joof 1 Опубликовано 11 июля, 2018 Всем привет. Хочу реализовать следующий скрипт: Игроки бьют моба в инвуле, через 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); } } Подскажите пожалуйста какая должна быть проверка. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Falkland 51 Опубликовано 11 июля, 2018 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); } } Подскажите пожалуйста какая должна быть проверка. Значит нужно считать и хранить количество ударов. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
joof 1 Опубликовано 11 июля, 2018 1 час назад, Falkland сказал: Значит нужно считать и хранить количество ударов. Может есть функция, "сколько ударов заблокировал нпц") Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 11 июля, 2018 Как минимум есть кроме блока, если уворот onevaded Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gvb 666 Опубликовано 11 июля, 2018 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, попадаем в условие и т.д. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 11 июля, 2018 23 минуты назад, gvb сказал: Написать счетчик на кол-во проходящих ударов. Если i = 100, попадаем в условие и т.д. OnAttack может не срабатывать при увороте итд(дмг>0) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gaikotsu 620 Опубликовано 11 июля, 2018 ну если думать логически, то увернулся = не получил удар = ни к чему и считать эту попытку Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gvb 666 Опубликовано 11 июля, 2018 1 час назад, Demoncool сказал: OnAttack может не срабатывать при увороте итд(дмг>0) ТС говорил 100 ударов, по идее же которые проходят. 58 минут назад, Gaikotsu сказал: ну если думать логически, то увернулся = не получил удар = ни к чему и считать эту попытку опередил Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
joof 1 Опубликовано 11 июля, 2018 1 час назад, gvb сказал: ТС говорил 100 ударов, по идее же которые проходят. опередил Не обязательно 100 ударов, главное не меньше. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gvb 666 Опубликовано 11 июля, 2018 58 минут назад, joof сказал: Не обязательно 100 ударов, главное не меньше. Я привел пример, если писать код, можно сделать как придумаете. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
joof 1 Опубликовано 11 июля, 2018 Какая функция отвечает за проверку ударов? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 11 июля, 2018 6 минут назад, joof сказал: Какая функция отвечает за проверку ударов? Какую добавите, та и будет отвечать 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
joof 1 Опубликовано 11 июля, 2018 Хочу в onAtack, но не знаю как саму проверку правильно написать. Сборка Acis Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
JunkyFunky 127 Опубликовано 11 июля, 2018 8 минут назад, joof сказал: Какая функция отвечает за проверку ударов? поглядеть в сторону метода onHitTimer 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
lvlkoo 190 Опубликовано 11 июля, 2018 42 минуты назад, joof сказал: onAtack 1. Проверяем если это "наш" нпц 2.Записываем в память обьект с парой полей {id,hitsCount} (создайте класс для удобства) 3.пишем метод который получает количество ударов по ид нпц, что-то вроде getNpcHits(npcId) {...тут пробегаемся в цикле по списку записаных данных, находим запись с нужным ид и поулчаем поле с количеством ударов...} 4.Используем 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты