Можно ли создать глобальную переменную типа unitpool array ? В GUI такого типа нет, а как создавать глобалки вне гуи я так и не разобрался.
Вопрос в догонку - если глобалки нельзя создавать не через гуи - насколько дорогая операция записи и извлечения значений unitpool из хештаблиц? Намного дороже чем обращение через переменные? Игра по сети на 24 игрока, хочется избежать дорогих операций в часто срабатываемых триггерах, чтобы минимум у кого логало.

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

Extremator:
а что насчёт хештаблиц? Скорость их работы?
всё крайне печально
лол что?
скорость работы глобалок в 1,5 раза быстрее чем у хештейблов
т.е. 10 обращений к хештейблам выполняется столько же времени сколько и 15 к глобалкам
если каждую секунду не выполняется более 1000 обращений к хештейблу то не юзать хэштейблы ради оптимизации та ещё тупость
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
26
6 лет назад
Отредактирован Extremator
0
в заголовке триггеров, там где иконка карты и её название
нестандартный код карты, туда можешь вбить нужный тебе скрипт на создание глобалки
0
13
6 лет назад
0
И как этот скрипт должен выглядеть?
0
26
6 лет назад
0
globals
	unitpool array UP
endglobals
Как-то так?
0
13
6 лет назад
0
Extremator, нет, ругается на globals
0
26
6 лет назад
0
я так понимаю у тебя не JNGP, да?
0
8
6 лет назад
0
Cancel, в чистом JASS такой возможности нет, это позволяет делать vJASS и cJASS.
0
13
6 лет назад
0
а что насчёт хештаблиц? Скорость их работы?
0
26
6 лет назад
0
а что насчёт хештаблиц? Скорость их работы?
всё крайне печально
0
13
6 лет назад
Отредактирован Cancel
0
нашёл решение - надо глобалку udg_contSmall создавать типа handle array
function Trig_init_unitpools_from_excel_Actions takes nothing returns nothing
	local unitpool units
	set units = CreateUnitPool()
	set udg_contSmall[0] = units
	call UnitPoolAddUnitType(units, 'n005', 3)
	call UnitPoolAddUnitType(units, 'n002', 1)
	set units = null
endfunction
0
28
6 лет назад
Отредактирован nvc123
0
Extremator:
а что насчёт хештаблиц? Скорость их работы?
всё крайне печально
лол что?
скорость работы глобалок в 1,5 раза быстрее чем у хештейблов
т.е. 10 обращений к хештейблам выполняется столько же времени сколько и 15 к глобалкам
если каждую секунду не выполняется более 1000 обращений к хештейблу то не юзать хэштейблы ради оптимизации та ещё тупость
Принятый ответ
0
26
6 лет назад
0
nvc123:
ради оптимизации
А в чём оптимизация? ты всё равно выгружашь и загружаешь данные в переменные из и в таблицу
Что является лишними действиями, не?
1
13
6 лет назад
1
nvc123, если разница и правда полуторная, то не буду забивать на хеш, спасибо!
0
28
6 лет назад
0
Extremator, а нафига из хэша в глобашки кидать?
локалки же есть
Чтобы оставить комментарий, пожалуйста, войдите на сайт.