Сейчас 02:44:40 Пятница, 26 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Оптимизация триггеров и вопрос про Jass
[Вопрос] Оптимизация триггеров и вопрос про Jass
berilДата: Понедельник, 19 Ноября 2012, 21:09:15 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Вот такой вопросик в карте будет очень много триггеров можно ли как то их оптимизировать, и попутный вопрос если я обычный гуи триггер переведу в джасс от этого что изменится, в плане оптимизации ?
2 вопрос столкнулся с такими вот функциями к примеру
анимационный тег
Code
call AddUnitAnimationPropertiesBJ( true, "dav", gg_unit_H000_0001 )

Но в function list нашел этот же AddUnitAnimationProperties без концовки BJ, хотел убрать у себя эту концовку но вар фаталит после этого. Как использовать функции без BJ ? Это как вроде отимизирует ?
Ну и третий вопрос. как прикрепить texttag к юниту, что бы он следовал за ним ?
Заранее спс
ах да еще забыл уже не раз спрашивал об этом но так и не понял у меня jass new gen не работают глобалки (любые наратки с ними или если сам их создаю), что нужно включить что бы можно было их использовать (вроде везде галочки стоят). и как перевести сjass в обычный ? :o




Сообщение отредактировал beril - Понедельник, 19 Ноября 2012, 21:12:39
 

DreiiДата: Понедельник, 19 Ноября 2012, 21:21:28 | Сообщение # 2
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
beril,
Code
function AddUnitAnimationPropertiesBJ takes boolean add, string animProperties, unit whichUnit returns nothing
     call AddUnitAnimationProperties(whichUnit, animProperties, add)
endfunction


 

Ty3uKДата: Понедельник, 19 Ноября 2012, 21:21:44 | Сообщение # 3
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Сколько вопросов. Ну, по порядку:

  • Quote (beril)
    Вот такой вопросик в карте будет очень много триггеров можно ли как то их оптимизировать
    Можно - перевести все на JASS. Использование большого количества триггеров может оборвать главный поток и они не будут выполнятся (там с нюансами), если триггеров больше 1000 вроде как.
  • Quote (beril)
    если я обычный гуи триггер переведу в джасс от этого что изменится, в плане оптимизации ?
    Нет
  • Code
    call AddUnitAnimationPropertiesBJ( true, "dav", gg_unit_H000_0001 )
    Code
    call AddUnitAnimationProperties(gg_unit_H000_0001, "dav", true )
    Тут ты во всей красе можешь увидеть "мощь" близзардовского ума - новая функция являет собой старую с переставленными местами аргументами.
  • Quote (beril)
    Ну и третий вопрос. как прикрепить texttag к юниту, что бы он следовал за ним ?
    Переодический таймером двигать тексттаг в позицию юнита.
  • Quote (beril)
    ах да еще забыл уже не раз спрашивал об этом но так и не понял у меня jass new gen не работают глобалки (любые наратки с ними или если сам их создаю), что нужно включить что бы можно было их использовать (вроде везде галочки стоят)
    Немного не понял вопроса. Блок
    Code
    globals...endglobals
    ?
  • Quote (beril)
    и как перевести сjass в обычный ?
    никак, только если ты не знаешь cJASS и не сможешь собсвенноручно переписать код.


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек


Сообщение отредактировал Ty3uK - Понедельник, 19 Ноября 2012, 21:26:40
 

DreiiДата: Понедельник, 19 Ноября 2012, 21:23:26 | Сообщение # 4
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
Quote (beril)
перевести сjass в обычный ?

При компиляции адик переводит с в обычный

Добавлено (19 Ноября 2012, 21:23:26)
---------------------------------------------
Quote (Ty3uK)
call AddUnitAnimationPropertiesBJ(gg_unit_H000_0001, "dav", true

Quote (Ty3uK)
call AddUnitAnimationPropertiesBJ( true, "dav", gg_unit_H000_0001

Убери БЖ




Сообщение отредактировал Dreii - Понедельник, 19 Ноября 2012, 21:23:44
 

Ty3uKДата: Понедельник, 19 Ноября 2012, 21:27:01 | Сообщение # 5
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
Dreii, спасибо, бездумный копипаст - зло :)

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Понедельник, 19 Ноября 2012, 21:50:34 | Сообщение # 6
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Quote (Ty3uK)
Немного не понял вопроса. Блок
Code
globals...endglobals
?

да именно это не работает :(


 

Ty3uKДата: Понедельник, 19 Ноября 2012, 21:51:37 | Сообщение # 7
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
beril, JassHelper->Enable JassHelper

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Понедельник, 19 Ноября 2012, 21:54:42 | Сообщение # 8
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
У меня стоит там галочка )
и на след. 3 столбиках


 

Ty3uKДата: Понедельник, 19 Ноября 2012, 21:58:32 | Сообщение # 9
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
хм. скрин ошибки тогда дай

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Понедельник, 19 Ноября 2012, 22:01:44 | Сообщение # 10
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Ошибок нет просто в главное меню вара выкидывает при тесте карты ))

Добавлено (19 Ноября 2012, 22:01:44)
---------------------------------------------
может из за патча вара быть такое (1.20) ?


 

Ty3uKДата: Понедельник, 19 Ноября 2012, 22:02:25 | Сообщение # 11
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
beril, карту надо сохранять, а не нажимать Ctrl + F9

Добавлено (19 Ноября 2012, 22:02:25)
---------------------------------------------
beril, у тебя патч 1.20? D:


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек


Сообщение отредактировал Ty3uK - Понедельник, 19 Ноября 2012, 22:01:59
 

berilДата: Понедельник, 19 Ноября 2012, 22:03:59 | Сообщение # 12
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Так не токо мои карты где я пытался глобалки создать, а и наработки с глобалками не работаю (система респа, туманаи т...д) которые качал с сайта .
Лан всем спс за внимание тему можно закрыть, буду без глобалок )))
Да 1.20 у меня :D




Сообщение отредактировал beril - Понедельник, 19 Ноября 2012, 22:04:33
 

SirNikolasДата: Вторник, 20 Ноября 2012, 12:46:03 | Сообщение # 13
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (beril)
Лан всем спс за внимание тему можно закрыть, буду без глобалок )))
Нет, ну почему люди создают здесь темы и при этом не хотят, чтобы им помогали?


 

NaturekidДата: Вторник, 20 Ноября 2012, 14:58:13 | Сообщение # 14
Группа: Заблокированные
Сообщений: 4982
Награды: 3
Репутация: 3347
Блокировки:
дык патч надо же другой поставить, разве на 1.20 ЖГНП норм пашет?

 

DreiiДата: Вторник, 20 Ноября 2012, 15:31:28 | Сообщение # 15
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
в 1,20 был рб вместо хеша. вот и ошибки

 

Ty3uKДата: Вторник, 20 Ноября 2012, 16:21:41 | Сообщение # 16
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
скорее всего там структуры

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Среда, 21 Ноября 2012, 12:31:02 | Сообщение # 17
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Так скачал новый патч (1.26), наработки скачанные с глобалками работают. Но глобалки которые сам создаю всеравно работают, может я чето не так делаю?? вот пример простенький
Code
globals
unit r
endglobals

function Trig_test_Actions takes nothing returns nothing
TriggerSleepAction(1)
call SetUnitAnimation( r, "stand" )
endfunction

//===========================================================================
function InitTrig_test takes nothing returns nothing
       set gg_trg_test = CreateTrigger(  )
       call TriggerAddAction( gg_trg_test, function Trig_test_Actions )
endfunction

2) Какой патч лучше поставить для jassnewgen ? Поставил 1.26 редактор вообще стал невминяемый
3)Есть где то полное руководство на русском по нем   
Quote (SirNikolas)
Нет, ну почему люди создают здесь темы и при этом не хотят, чтобы им помогали?

Скажем это была не главная проблем, то что хотел я в основном понял (спс тем кто поясниили)[




Сообщение отредактировал beril - Среда, 21 Ноября 2012, 12:32:26
 

Ty3uKДата: Среда, 21 Ноября 2012, 12:35:30 | Сообщение # 18
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
1) юнит без значения, что ты от него хочешь?
2) 1.26а - нормальный редактор dunno
3) нигде


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Среда, 21 Ноября 2012, 12:44:25 | Сообщение # 19
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Ах да еще столкнулся с проблемкой
Не знаю получится ли описать ее ))
В общем при определенном условии вызываем функцию
В которой юнит должен двигаться в определенную область.
Как в этой же функции сделать после того как он войдет в эту обламть вызвать другую функцию
я вот сделал так вот через цикл, но он не работает :o
Code

//бла бла тут юнит идет в область (в общем это не важно)
TriggerSleepAction()
// вот здесь я делал через цикл
loop
         exitwhen RectContainsUnit((Нужная область),(наш юнит)) == true         
     endloop
Call (вызываем другую функцию)

Но не работает я читал вроде как циклы в джасс не повторяются определенное кол-во раз а до тех пор пока не будет выполнено определенное условие

Добавлено (21 Ноября 2012, 12:44:25)
---------------------------------------------

Quote (Ty3uK)
1) юнит без значения, что ты от него хочешь?


Code
globals
unit r
endglobals

function Trig_test_Actions takes nothing returns nothing
set r = udg_Hero
TriggerSleepAction(1)
call SetUnitAnimation( r, "stand" )
endfunction

//===========================================================================
function InitTrig_test takes nothing returns nothing
        set gg_trg_test = CreateTrigger(  )
        call TriggerAddAction( gg_trg_test, function Trig_test_Actions )
endfunction

теперь правильно ?


 

Ty3uKДата: Среда, 21 Ноября 2012, 12:47:18 | Сообщение # 20
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
событие лови или периодическим таймером проверяй, такой цикл очень затратен в плане ресурсов. это не в WinAPI сообщения обрабатывать

Добавлено (21 Ноября 2012, 12:47:18)
---------------------------------------------
какой смысл в глобалке, которая принимает значение глобалки?


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Среда, 21 Ноября 2012, 12:54:21 | Сообщение # 21
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Quote (Ty3uK)
какой смысл в глобалке, которая принимает значение глобалки?

Я для примера ) не работает даже так я правильно вообще создал глобальные ?
или их в cs карты надо создаватть ?

Добавлено (21 Ноября 2012, 12:54:21)
---------------------------------------------

Quote (Ty3uK)
событие лови или периодическим таймером проверяй, такой цикл очень затратен в плане ресурсов

Затрата не столь важна, просто он не срабатует, юнит входит в нужную область и все (( следующая функция не вызывается


 

Ty3uKДата: Среда, 21 Ноября 2012, 13:09:55 | Сообщение # 22
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
цикл сбрасывается скорее всего

╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

berilДата: Среда, 21 Ноября 2012, 13:11:09 | Сообщение # 23
7 уровень
Группа: Проверенные
Сообщений: 282
Награды: 0
Репутация: 139
Блокировки:
Quote (beril)
я правильно вообще создал глобальные ?
или их в cs карты надо создаватть ?


 

Ty3uKДата: Среда, 21 Ноября 2012, 13:14:17 | Сообщение # 24
Группа: Ветераны
Сообщений: 6125
Награды: 2
Репутация: 1617
Блокировки:
синтаксически - да.
но начальное значение юниту можно задать при объявлении. ну или перед вызовом


╭∩╮(︶︿︶)╭∩╮
"Ульта Тайда мне в жопу!" © k0fe1n
Статьи: MUI-1|MUI-2|Шрифт
Полезности: JASP|JNGP|Уголок библиотек
 

[SeKtOR]Дата: Среда, 21 Ноября 2012, 16:55:01 | Сообщение # 25
Группа: Проверенные
Сообщений: 1143
Награды: 0
Репутация: 1168
Блокировки:
Quote (beril)
Но не работает я читал вроде как циклы в джасс не повторяются определенное кол-во раз а до тех пор пока не будет выполнено определенное условие

Цикл отключится автоматом если будет достигнут лимит(хз как это называется), не смотря на условие. В этом случае лучше использовать периодический таймер




Сообщение отредактировал [SeKtOR] - Среда, 21 Ноября 2012, 16:55:50
 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » [Вопрос] Оптимизация триггеров и вопрос про Jass
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz