Доброго времени.
Никак не могу найти как с помощью триггера достать время исследования технологии.
Оно мне необходимо для запуска таймера

Принятый ответ

Vlod, неее, я туда не вернусь. ладно, надо помогать ТС'у, и на его вопросы отвечать, что он решит и как делать будет

Вот, мне помогли найти, как делать бд на джасах xgm.guru/p/wc3/wc3bd
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
7
4 года назад
0
Стандартными триггерами никак, мемхаком наверно можно.
1
32
4 года назад
Отредактирован Берги
1
Тут вопрос о времени строительства в целом, которое задаётся в РО или о текущем прогрессе, оставшегося времени?
Ну поидее есть в коммонАИ, некоторые данные РО типа как опыт и золотостоимость, вот нашёл:
function GetUnitBuildTime(unitid) end    -- (native)

И пример использования
Тут эти поля использовались для хранения значений опыта и золота, то там будет пример и для опыта, + там всё на чистом джасе, работает без мемхаков и прочего

Ещё раз перечитал... тут не время строительства а время исследования

Всё что нашёл по апгрейдам
function GetUpgradeLevel(id) end    -- (native)
function GetUpgradeGoldCost(id) end    -- (native)
function GetUpgradeWoodCost(id) end    -- (native)
Можно схитрить в целом и попробовать сделать, чтобы ресурс совпадал с временем улучшения
Но в любом случае это будет псевдо БД из РО, лучше уж создать нормальную бд

Пример как сделать изи БД:
function GetUpgTime takes integer ID returns integer
	set st['A001']=60
	set st['A002']=50
	set st['A003']=40
	set st['A004']=33
	set st['A00A']=7
	return st[ID]
endfunction
Использовать примерно вот так.
call GetUpgTime ('A004') // вернёт 33 для апгрейда A004 - то что нам и нужно
Это ещё быстрее чем заполнение бд где-то в ро
Неуверен можно ли передавать ID апгрейда в качестве индекса, и совершенно не помню как это делать на JASS, но на луа это 100% бы работало в таком виде
0
24
4 года назад
0
set st['A001']=60
Расслабился в Луа и забыл уже про лимит размера массива в жассе?
0
32
4 года назад
Отредактирован Берги
0
prog, во во я ж чувстовал что, что-то тут не так, а как надо делать бд в таком случае?
0
18
4 года назад
0
Bergi_Bear, то же самое, только вместо массива хеш таблица
0
32
4 года назад
0
Vlod, неее, я туда не вернусь. ладно, надо помогать ТС'у, и на его вопросы отвечать, что он решит и как делать будет

Вот, мне помогли найти, как делать бд на джасах xgm.guru/p/wc3/wc3bd
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.