28

» WarCraft 3 / Анимация строения

Никита29, хах, проще было бы отредактировать модельку в мдлвисе)

можно тут найти/попросить
28

» WarCraft 3 / По поводу импорта моделей (конкретный пример)

Хех)
Проверяйте пути текстур в мдлвисе, если автор забыл в текстовике указать
28

» WarCraft 3 / Анимация строения

Поставить дамми здание нежити с нужной анимкой, а само строящееся здание сделать полностью прозрачным, в нужный момент возвращать видимость здания и удалять дамми не подходит?
28

» WarCraft 3 / Туман войны

... черная маска это затемненные области тумана войны, повторюсь, попробуй модификаторы видимости, ты наверное даже триггеры ещё не открыл с этими функциями
28

» WarCraft 3 / Туман войны

Модификаторами видимости не подходит?

раскрыть
Загруженные файлы
28

» WarCraft 3 / Спец.эффект на "Демоническую силу"

Вроде как поля Маг, Воздействие на цель и Задать сценарий воздействия (или как оно там правильно)
Скорее всего ошибаюсь
28

» WarCraft 3 / Система полета снарядов

Если бы ты красиво всё оформил, то можно было бы помочь, а так оставил кучу каких-то триггеров, лишнего кода и ройтесь сами)
28

» WarCraft 3 / Базовый урон от атак + Бонусный урон от атак

Это рефордж что-ли? На 1.26 только с помощью бд можно было узнавать атаку героя) могу ошибаться ибо я лох
Бонусный урон обычно считался через когти с 9999 лвлами, а все скиллы на добавление бонусного урона на самом деле повышали/понижали лвл когтей

upd мемхак забыл упомянуть)
28

» WarCraft 3 / Варик не успевает считать

У меня со сферками в спеллпаке есть проблема, что если юнит умер через артиллерию, то одна единственная сферка из 5 не удаляется (группа сферок к юниту прикреплены), хз с чем связанно и при нормальной смерти юнита всё работает как надо, хоть и удаляю все сферки через ForGroup(g,function(){KillUnit(GetEnumUnit);});

upd хотя предполагаю, я просто на мёртвого юнита вешал сферку, надо будет проверить, хе))
28

» WarCraft 3 / Как сделать команду -spect?

Предполагаю, что нужно включить зрителей, объявить поражение игроку, выбрать всех юнитов игрока, пройтись по их слотам и удалить предметы, а потом уничтожить их, ну а после, просто создаём модификатор видимости на всю карту для игрока, вродь всё
28

» WarCraft 3 / Сломалась кампания

надеюсь это будет уроком
так может и не из-за этого не открывается)
28

» WarCraft 3 / Проклятье наносит урон цели.

Я не смотрел банши в редакторе, но если ты там не настраивал урон (если он там есть вообще), то нет, это не нормально)
Мб ты триггер какой-то создавал на реакцию с получением урона и забыл про него
28

» WarCraft 3 / Наложение Таймеров

А разве это не из-за того, что ты свернул игру? Ты переходил в полноэкранный режим?
у меня из-за маленького монитора не всё вмещалось :с
28

» WarCraft 3 / Проблема с таймером

Я на этом моменте, когда только начинал учить джасс, всегда запарывался
короче, вот карта, всё у тебя работает)
Добавил просто udg_hash = InitHashtable() внизу события
Загруженные файлы
28

» WarCraft 3 / Проблема с таймером

Хах, на эту тему есть уже статьи)
короче, в твоём случае решил проверить, выгружается ли юнит вообще с помощью
if caster == null{BJDebugMsg("1")}
Результат: нет, не выгружается, переменная кастера пустая)
Хз с чем это связано, если GetSpellAbilityUnit() в действиях спокойно добавлял агилу юниту

Ахаха

Я понял в чём проблема, чел, я же выше спросил
Может хэш-таблицу забыл инициализировать?)
28

» WarCraft 3 / Проблема с таймером

я сделал то же самое, у меня всё работает, держи карту
код
library mylib initializer init{
    private hashtable H = InitHashtable()
    
    private function Trig_Agility_Blade_Remove_Agi_Actions takes nothing returns nothing
        local timer t = GetExpiredTimer()
        local integer i = GetHandleId(t)
        local unit caster = LoadUnitHandle(H,i,0)
        
        call SetHeroAgi(caster,GetHeroAgi(caster,false)-LoadInteger(H,i,1),true)
        call DestroyEffect(LoadEffectHandle(H,i,2))
        call DestroyEffect(LoadEffectHandle(H,i,3))
        call DestroyTimer(t)
        call FlushChildHashtable(H,i)
        
        set caster = null
        set t = null
    endfunction
    
    private function Trig_Agility_Blade_Actions takes nothing returns nothing
        local timer t = CreateTimer()
        local integer i = GetHandleId(t)
        local unit caster = GetSpellAbilityUnit()
        local integer agi = GetHeroAgi(caster,true)
        local integer clearagi = GetHeroAgi(caster,false)
        local integer bonus = R2I(agi/2)
        
        call SetHeroAgi(caster,clearagi+bonus,true)
        call SaveUnitHandle(H,i,0,caster)
        call SaveInteger(H,i,1,bonus)
        call SaveEffectHandle(H,i,2,AddSpecialEffectTarget("Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl",caster,"weapon"))
        call SaveEffectHandle(H,i,3,AddSpecialEffectTarget("Abilities\\Spells\\Other\\Drain\\DrainCaster.mdl",caster,"head"))
        call TimerStart(t,7.,false,function Trig_Agility_Blade_Remove_Agi_Actions)
        
        set caster = null
        set t = null
    endfunction
    
    private function Trig_Agility_Blade_Conditions takes nothing returns boolean
        return GetSpellAbilityId() == 'A000'
    endfunction
    
    private function init takes nothing returns nothing
        local integer index = 0
        local trigger gg_trg_Agility_Blade = CreateTrigger( )
        loop
            call TriggerRegisterPlayerUnitEvent(gg_trg_Agility_Blade, Player(index), EVENT_PLAYER_UNIT_SPELL_EFFECT , null)
            set index = index + 1
            exitwhen index == bj_MAX_PLAYER_SLOTS
        endloop
        call TriggerAddCondition( gg_trg_Agility_Blade, Condition( function Trig_Agility_Blade_Conditions ) )
        call TriggerAddAction( gg_trg_Agility_Blade, function Trig_Agility_Blade_Actions )
    endfunction
}

всё что я поменял по сути, это равкод применяемой абилы)

А, тьфу, увидел, ты свою карту приложил, сейчас там попробую сделать
Загруженные файлы
28

» WarCraft 3 / Проблема с таймером

А ты дебагом выводил текст, когда таймер истекает? Типо функция вообще срабатывает? Может хэш-таблицу забыл инициализировать?)

кстати, код можешь обводить двойными кавычками, и желательно запихнуть в кат
28

» WarCraft 3 / Хорошие статьи и советы по оптимизации на обычных триггерах

Mikluha, ну на примере с киком можно так сделать, хотя есть и более продвинутый вариант, через подстроку
Загруженные файлы
28

» Администрация XGM / Иконки

Niken, а, ну на 50% работает, но это жесть полная, раньше ж всё было впорядке
раскрыть
Загруженные файлы