nothing Trig_hpbar_Actions ( ){
int i = 1
int iend = g_unitCounter
loop{
exitwhen i > iend
DestroyEffect( g_hpbar[i] )
if GetUnitState(g_unitID[i], UNIT_STATE_LIFE)>0.00 {g_hpbar[i] = AddSpecialEffectTarget("war3mapImported\\HpBar_"+I2S(R2I(GetUnitLifePercent(g_unitID[i])/5))+".mdx", g_unitID[i], "overhead")}
i++
}
}
nothing InitTrig_hpbar ( ){
gg_trg_hpbar = CreateTrigger( )
TriggerRegisterTimerEvent( gg_trg_hpbar, 0.2, true )
TriggerAddAction( gg_trg_hpbar, function Trig_hpbar_Actions )
}
Но, если снизить период, то начинает подлагивать. Или есть более оптимизированный способ реализовать это? Можно создавать таймер для каждого юнита на карте, который будет запускать функцию обновления хп бара, но мне кажется, что это еще хуже способ. Можно было бы привязать к событию получения урона, но а как отследить лечение?
Я наверное сделаю секундный период, на всякий случай.
Как раз не нравятся стандартные из-за их огромного размера. Но, вообще, было бы интересно посмотреть, может я заменю на какие-то другие символы NazarPunk, и так изменена, но это особого эффекта не дает. Jack-of-shadow, надо посмотреть как прогрессбар там создан. Но это завтра наверное, спать хочу.
TeX13, на ХГМ полно статей, я сам только 2 недели назад перешёл с ГУИ на джасс, я понимаю тебя, мучался с этим тоже очень долго, постоянно опускались руки.
TeX13, они все в одном скрипте, просто разбиты на "триггеры" (я не знаю почему это называют триггерами даже). Можешь посмотреть, что происходит после компиляции кода. TeX13, Ну если ты не укажешь ее приватной в библиотеке или она будет ниже самого вызова, то все будет видно.
К примеру, на ГУИ обычно создают для каждой способности 1 триггер, что сильно будет нагружать карту. Даже на ГУИ это можно обойти.
Почитай статьи по оптимизации кода, к примеру лучше не плодить кучу триггеров с событием Юнит - приводит способность в действие, а сделать 1 триггер с уловом этого события, а потом уже вызывать соответствующую функцию.
А преимущества это даёт огромные. На GUI ты ничего сложного не создашь. А если и попытаешься, то постоянно будешь сталкиваться с проблемами, которые ты будешь затыкать костылями пока твоя карта не рухнет окончательно.
изи же, составной юнит из разных модулей принадлежащих к разным игрокам, совмещаем юнитов вместе с минимальным таймером например 0.04 сек, через SetUnitXYZ
Как и писали выше, кол-во переменных особо не влияет. Но возможно при инициализации у тебя слишком много нагружающих триггеров.
Скинь карту.
Все мы когда-то начинали костылить на GUI, не нужно стыдиться.
Не знаю что ты там придумал, но я тоже недавно перешёл с гуи. Триггеров было довольно много, но я обходился максимум 40-80 кол-вом переменных. Зачем для каждого триггера создавать новые переменные?
Скинь карту, посмотрю.
» WarCraft 3 / Производительность WE на SSD
» WarCraft 3 / Красивые хп/мана бары
Jack-of-shadow, я сделал так:
Я наверное сделаю секундный период, на всякий случай.
» WarCraft 3 / Производительность WE на SSD
» WarCraft 3 / Atol (Tree of life upgr abil)
» WarCraft 3 / Красивые хп/мана бары
А, можно же прикрепить к юниту
» WarCraft 3 / Красивые хп/мана бары
NazarPunk, и так изменена, но это особого эффекта не дает.
Jack-of-shadow, надо посмотреть как прогрессбар там создан. Но это завтра наверное, спать хочу.
» WarCraft 3 / Atol (Tree of life upgr abil)
» WarCraft 3 / Проблема с картой, выбрасывает из редактора при открытии
» WarCraft 3 / Есть ли расширение для красных хп-баров?
» WarCraft 3 / Мечта о мотоцикле в Варкрафт
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
TeX13, Ну если ты не укажешь ее приватной в библиотеке или она будет ниже самого вызова, то все будет видно.
К примеру, на ГУИ обычно создают для каждой способности 1 триггер, что сильно будет нагружать карту. Даже на ГУИ это можно обойти.
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
TeX13, да, но это неудобно, как по мне.
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
» WarCraft 3 / Локальные переменне при нескольких "вейтах"
» WarCraft 3 / Мечта о мотоцикле в Варкрафт
Bergi_Bear:
» WarCraft 3 / Оптимизация GUI перменных в массивы
Скинь карту.
Все мы когда-то начинали костылить на GUI, не нужно стыдиться.
» WarCraft 3 / wait течет или капает?
» WarCraft 3 / Оптимизация GUI перменных в массивы
Скинь карту, посмотрю.
» WarCraft 3 / wait течет или капает?
» WarCraft 3 / Оптимизация GUI перменных в массивы
» WarCraft 3 / wait течет или капает?
JASS API в помощь.
» WarCraft 3 / wait течет или капает?
» WarCraft 3 / wait течет или капает?