MayMunKa 0 Опубликовано 25 июля, 2020 (изменено) кто знает, подскажите , что и куда записывать чтобы моб сам умирал через ( например 2 часа) после респа Изменено 25 июля, 2020 пользователем JoeyTribbiani Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Hotaka 769 Опубликовано 25 июля, 2020 Умирал или исчезал? Как часто он должен респиться и к чему привязка респа стоит? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MayMunKa 0 Опубликовано 25 июля, 2020 10 минут назад, Hotaka сказал: Умирал или исчезал? Как часто он должен респиться и к чему привязка респа стоит? точно....нужно чтобы исчезал... ну например респится через 10 часов после исчезновения или убийства.....и стоит всего 2 часа... если не убьют то чтобы исчез... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MayMunKa 0 Опубликовано 25 июля, 2020 думала тут живых вообще нет Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
CalypsoToolz 451 Опубликовано 25 июля, 2020 без написания ai/скрипта не сделать вероятно Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gaikotsu 620 Опубликовано 25 июля, 2020 Простейший способ - запускать в аи нпс при спавне таск с нужной задержкой и при его срабатывании удалять этого нпс. Например один из вариантов - удалит нпс через 2 часа после спавна: @Override protected void onEvtSpawn() { super.onEvtSpawn(); ThreadPoolManager.getInstance().schedule(new Runnable() { @Override public void run() { getActor().deleteMe(); } }, 2 * 60 * 60 * 1000L); } Или еще можно так, если в аи есть методы работы с таймерами, а они вроде почти в любой сборке есть: @Override protected void onEvtSpawn() { super.onEvtSpawn(); addTimer(666, 2 * 60 * 60 * 1000L); } @Override protected void onEvtTimer(int timerId, Object arg1, Object arg2) { if (timerId == 666) getActor().deleteMe(); } 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
MayMunKa 0 Опубликовано 25 июля, 2020 1 час назад, Gaikotsu сказал: Простейший способ - запускать в аи нпс при спавне таск с нужной задержкой и при его срабатывании удалять этого нпс. Например один из вариантов - удалит нпс через 2 часа после спавна: @Override protected void onEvtSpawn() { super.onEvtSpawn(); ThreadPoolManager.getInstance().schedule(new Runnable() { @Override public void run() { getActor().deleteMe(); } }, 2 * 60 * 60 * 1000L); } Или еще можно так, если в аи есть методы работы с таймерами, а они вроде почти в любой сборке есть: @Override protected void onEvtSpawn() { super.onEvtSpawn(); addTimer(666, 2 * 60 * 60 * 1000L); } @Override protected void onEvtTimer(int timerId, Object arg1, Object arg2) { if (timerId == 666) getActor().deleteMe(); } спс большое Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты