20

» WarCraft 3 / Из моба в героя

Берешь за основу героя, меняешь ему модельку на кролика (у него нет анимации атаки), все готово.
20

» WarCraft 3 / Ошибка Missing endblock, cJass

а, зинк не заканчивается
Странно, я вставил //! endzinc , но при компиляции мне показывает, что там два раза вписано //! endzinc ... И в итоге ошибка, хотя в коде я вписал одну строку.
Наверное зайду mpq архивом и удалю строку
Собственно вот:
Почему так, не понятно... вторая строка ни в одном триггере не прописано, более того, зинк я использовал только один раз...
В общем, удалил с помощью mpq вторую строку, однако, она не удалилась, более того, теперь в коде отобразилось 2 строки. Удалил уже в коде, сохранил и все работает. Надеюсь больше такого не будет...
А нет, не заработало, зинк все равно ломает весь код. В общем перепишу функции с зинка на cJASS и все.
Загруженные файлы
20

» WarCraft 3 / Ошибка Missing endblock, cJass

Jack-of-shadow, эти переменные описаны в кастом коде, может занести их в либу, которая будет инициализироваться первой?
Ничего не изменилось
20

» WarCraft 3 / Ошибка Missing endblock, cJass

  nothing MurlocScales ( unit u, real x, real y, integer id ){ 
    integer i       = 0
    integer tw   = g_timeWater[GetUnitUserData(u)]
    boolean iw     = g_inWater[GetUnitUserData(u)]
     if iw == true {
      tw = 0
      SetUnitState(u, UNIT_STATE_LIFE, GetUnitState(u, UNIT_STATE_LIFE) + resHPmur)
      }elseif (iw == false) {
      tw++
     }
     if ( id == 'n001' ) or ( id == 'h002' ) {
      i = 180
     }else{
      i = 120
     }
     if ( tw == 0 ) and ( GetUnitAbilityLevel(u, 'A00V') >= 1 ) {
      SetUnitAbilityLevel( u, 'A00S', 1 )
      SetUnitAbilityLevel( u, 'A00U', 1 )
      SetUnitAbilityLevel( u, 'A00V', 1 )
      UnitRemoveAbility( u, 'A00V')
      UnitRemoveAbility( u, 'A00S')
      UnitRemoveAbility( u, 'A00U')
      UnitRemoveAbility( u, 'B004')
      }elseif ( tw >= i ) and ( GetUnitAbilityLevel(u, 'A00V') == 0 ) {
      UnitAddAbility( u, 'A00V')
      UnitAddAbility( u, 'A00S')
      UnitAddAbility( u, 'A00U')
      }elseif ( tw >= ( 2 * i )) and ( GetUnitAbilityLevel(u, 'A00V') == 1 ) {
      SetUnitAbilityLevel( u, 'A00S', 2 )
      SetUnitAbilityLevel( u, 'A00U', 2 )
      SetUnitAbilityLevel( u, 'A00V', 2 )
      }elseif ( tw >= ( 4 * i )) and ( GetUnitAbilityLevel(u, 'A00V') == 2 ) {
      SetUnitAbilityLevel( u, 'A00S', 3 )
      SetUnitAbilityLevel( u, 'A00U', 3 )
      SetUnitAbilityLevel( u, 'A00V', 3 )
     }
   }
endlibrary
Изменил так, но все равно не компилится
Jack-of-shadow, из-за глобалок? Эмм, это странно, и почему так?
20

» WarCraft 3 / Ошибка Missing endblock, cJass

Вот такое происходит при включении второго триггера, при первом аналогично. Если выключить два, то сейвит без ошибок.
Загруженные файлы
20

» WarCraft 3 / Ошибка Missing endblock, cJass

Jack-of-shadow, да это я уже добавил, раньше его не было, и, насколько я знаю, его можно писать и не писать.
20

» WarCraft 3 / Ошибка Missing endblock, cJass

Jack-of-shadow, это при копировании на сайт сделалось, в коде все норм, не знаю почему при вставке поменялось
Может просто ошибка в синтаксисе? Ту же всего 3 блока...
Загруженные файлы
20

» WarCraft 3 / Перестали работать триггеры

ScopteRectuS, ну в том, что триггеры не работают. Если удалить объявление переменной и второй триггер, а TriggerRegisterEnterRegion заменить на TriggerRegisterEnterRectSimple, то все работает.
ScopteRectuS, эмм, не знаю. Сейчас попробую.
ScopteRectuS, все заработало. Спасибо.
20

» WarCraft 3 / Перестали работать триггеры

О, бот хорошую инфу дал, сейчас попробую.
Нашёл ошибку, может кто объяснить как ее избежать?
Ошибка
//В шапке
globals
    region allregion 
endglobals

//Триггер с событием "Инициализация"
function Trig_Initialization_JASS_Actions takes nothing returns nothing
    set allregion = CreateRegion()
    call RegionAddRect(allregion, GetWorldBounds())
endfunction

//===========================================================================
function InitTrig_Initialization_JASS takes nothing returns nothing
    set gg_trg_Initialization_JASS = CreateTrigger(  )
    call TriggerAddAction( gg_trg_Initialization_JASS, function Trig_Initialization_JASS_Actions )
endfunction

//Где используется переменная
function InitTrig_AnimationBirthWaterElem takes nothing returns nothing
...
    call TriggerRegisterEnterRegion( gg_trg_AnimationBirthWaterElem, allregion, null)
...
endfunction
Вместо триггера с событием "Инициализация" прописал в шапке функцию с Init, но это не помогло.
20

» WarCraft 3 / Способность, создающая мелководье

Пытался когда-то сделать подобное, если найдешь удобный вариант, скинь его сюда.
20

» WarCraft 3 / Как избавиться от утечки?

Сайт полетел.
\~PT153, Спасибо большое.
MaximBit, Зачем в конце ссылки на эффект "&​quot"?
20

» WarCraft 3 / Как избавиться от утечки?

PT153, а не нужно прописывать call DestroyGroup(TempGroup)?
PT153, в общем при пике юнитов появляются и не исчезают хэндлы, равные (кол-ву юнитов - 1)
20

» WarCraft 3 / Как избавиться от утечки?

PT153, спасибо. Не исправило постоянное появление при пике новых хэндлов, но все же спасибо. Не думаю, что это хоть как-то сможет повлиять на производительность, но просто стараюсь не повторять прошлых ошибок.
20

» WarCraft 3 / Как избавиться от утечки?

8gabriel8, поставил, но утечки все равно остались, хоть их и стало меньше вроде. (Проверял, другие триггеры не влияют)
20

» WarCraft 3 / Как избавиться от утечки?

NazarPunk, сорре, я слишком тупой. поясни.
NazarPunk, мне нужно указать set bj_wantDestroyGroup = true?
Перед вызовом, да?
20

» WarCraft 3 / Импорт текста

UrsaBoss, только сегодня прочитал, черт. Ладно, не так уж и много строк было.
20

» WarCraft 3 / ZinC: Небесный удар

Кажется, отталкивание идёт в одну сторону а не от точки взрыва..