Форум HeroesWorld-а - Показать сообщение отдельно - Скрипты
Тема: Скрипты
Показать сообщение отдельно
#3571
Старый 24.02.2022, 16:55
  #3571
^
Jewily
 
Аватар для Jewily
📖
Регистрация: 25.09.2016
Сообщения: 140
Jewily#4267
Регистрация: 25.09.2016
Сообщения: 140
Jewily#4267
По умолчанию
Re: Скрипты

}{0TT@6bI4Именно после рестарта карты? Только SetGameVar("имя переменной", значение), GetCameVar("имя переменной").

Про закат тьмы не слышал, можно поподробнее?
Я не отрицаю, что не очень разбираюсь в особенностях движка героев) Просто у меня такая логика: скрипт карты выполняется по её загрузке, и вроде как нет никаких средств, который бы паковал твои Локальные данные (например значения глобальных переменных,переопределяемых по ходу игры) в сейв, чтобы когда игру остановили,а  затем загрузили переменные имели прежние значения. Ну т.е я не нашел аналога БД для конкретной карты для динамических данных. Я повторюсь, что может просто не до конца разобрался.
Чтобы было понятнее дам пример: у меня есть массив с массивами(таблица на луа-языке), где ключ - игрок, и у него например существуют value1 и value2. Хочется менять эти значения по ходу игры. Это без проблем делается, однако когда карта сохраняется, а затем загружается, массив конечно же пуст(ведь я объявляю его где-угодно в скрипте, который отрабатывает по загрузке карты, и , конечно же, переопределяет его заново в исходное состояние).
Обычно в таких случаях инициализацию массива пишут внутри функции, а затем делают что-то типа проверки на isset. Однако и там данные куда-то да записываются.

По поводу Заката тьмы: там есть система репутации у рас, она сделана через квест. Т.е это работает так: Сущетсвует objective с именем "orcs rep",у которого существует бесконечно много этапов прогресса т.е он невыполним(ибо имеет кастомное условие, как вам известно его завершить можно только скриптом). Ну и собственно когда нужно этому квесту дается определенное число прогресса, т.е увеличение репутации на 5 единиц сдвинет прогресс квеста на 5 единиц. Из-за такого способа её можно удобно выводить в штатном меню заданий внутри игры. Это рабочий способ(я проверил, действительно можно так любые механики репутации реализовывать), но мне кажется несколько нелогичным использовать функционал заданий(которые не предназначены для этого).
Jewily вне форума
Ответить с цитированием