Jass для GUIшников.
|
|
lawson | Дата: Вторник, 29 Марта 2011, 22:20:38 | Сообщение # 26 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Murador) кстати какие значения принимает boolexpr? boolexpr bool = Condition(function Условие) больше ни каких.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Murador | Дата: Вторник, 29 Марта 2011, 22:30:35 | Сообщение # 27 |
Группа: Проверенные
Сообщений: 1221
Награды: 1
Репутация: 446
Блокировки:
| Quote (lawson) boolexpr bool разве bool это не тип?
|
|
|
|
lawson | Дата: Вторник, 29 Марта 2011, 23:02:47 | Сообщение # 28 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Murador) разве bool это не тип? Это название переменной boolexpr.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Murador | Дата: Вторник, 29 Марта 2011, 23:16:38 | Сообщение # 29 |
Группа: Проверенные
Сообщений: 1221
Награды: 1
Репутация: 446
Блокировки:
| lawson, ясен пень, просто я в замешательстве: почему синтаксис подчеркивает слово bool как тип оО
|
|
|
|
lawson | Дата: Вторник, 29 Марта 2011, 23:17:21 | Сообщение # 30 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| ты используешь локальную перменную boolexpr или глобальную? Скинь триггер где ошибка.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Вторник, 29 Марта 2011, 23:22:02 |
|
|
|
Dreii | Дата: Среда, 30 Марта 2011, 08:18:00 | Сообщение # 31 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Да ну юзать boolexpr самоизвращение.
|
|
|
|
Ajaccio | Дата: Среда, 30 Марта 2011, 08:37:17 | Сообщение # 32 |
7 уровень
Группа: Проверенные
Сообщений: 299
Награды: 1
Репутация: 239
Блокировки:
| Quote (Murador) почему синтаксис подчеркивает слово bool как тип оО bool -> boolean в C++/cJass с подключённой библиотекой "cj_types.j". Суть одна - логическая переменная, просто альтернативная форма записи. Также редактор будет подсвечивать int, float и т.д, но для работы с ними нужен всё тот же cJass.
XOR EAX, EAX MOV EAX, 00H ;; NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.
|
|
|
|
Impregnable | Дата: Среда, 30 Марта 2011, 10:05:47 | Сообщение # 33 |
6 уровень
Группа: Проверенные
Сообщений: 231
Награды: 0
Репутация: 92
Блокировки:
| Quote (Dreii) Локальные: + Сохраняют своё значение после ожиданий. ... - Действуют только в пределах функции, где их задали.
То же самое, что и "красный цвет плох, потому что он красный".
|
|
|
|
Dreii | Дата: Среда, 30 Марта 2011, 12:15:35 | Сообщение # 34 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| Impregnable, Ты не считаешь это за минус?
|
|
|
|
lawson | Дата: Среда, 30 Марта 2011, 19:04:56 | Сообщение # 35 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Impregnable) То же самое, что и "красный цвет плох, потому что он красный". Не самое удачное сравнение.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
SirNikolas | Дата: Четверг, 31 Марта 2011, 17:46:07 | Сообщение # 36 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (Murador) зачем нужен тип boolexpr Для оптимизации действия "Pick every unit in (Unit Group) and do (Actions)"Code globals constant group Group = CreateGroup() boolexpr Bool endglobals
function Trig_Test_Pick takes nothing returns boolean local unit u = GetFilterUnit() //Действия set u = null return false endfunction
function Trig_Test_Actions takes nothing returns nothing call GroupEnumUnitsInRect(Group, bj_mapInitialPlayableArea, Bool) endfunction
function InitTrig_Test takes nothing returns nothing //Создание триггера set Bool = Condition(function Trig_Test_Pick) endfunction Сразу же написать "constant boolexpr Bool = Condition(function Trig_Test_Pick)" нельзя, т. к. переменная все равно окажется в разделе globals, в самом верху, а функция Trig_Test_Pick останется снизу.
Сообщение отредактировал SirNikolas - Суббота, 02 Апреля 2011, 12:28:45 |
|
|
|
lawson | Дата: Четверг, 31 Марта 2011, 17:49:48 | Сообщение # 37 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| SirNikolas, Плохой пример использования boolexpr для новичков. Лучше б полегче пример привел + объяснения.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
SirNikolas | Дата: Четверг, 31 Марта 2011, 18:02:37 | Сообщение # 38 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| А больше boolexpr нигде и не используется. Разве что только если у разных триггеров будут одинаковое условие, можно занести его в переменную и сделатьCode call TriggerAddCondition(trig, MyBool) call TriggerAddCondition(trig2, MyBool) set MyBool = null
Сообщение отредактировал SirNikolas - Суббота, 02 Апреля 2011, 12:30:21 |
|
|
|
Dreii | Дата: Четверг, 31 Марта 2011, 18:03:46 | Сообщение # 39 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| SirNikolas, а как лучше отбирать юнитов? через boolexpr или циклом?
|
|
|
|
lawson | Дата: Четверг, 31 Марта 2011, 18:05:46 | Сообщение # 40 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| SirNikolas, Скажи а что в одном триггере нельзя создавать больше одного локально триггера?
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
SirNikolas | Дата: Четверг, 31 Марта 2011, 18:13:13 | Сообщение # 41 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Dreii, если у тебя есть готовая группа и тебе ее нужно очистить - циклом. Если есть группа, но очищать не надо - как ни странно, ForGroup. Если группы нет, то через boolexpr. lawson, не понял суть вопроса.
|
|
|
|
lawson | Дата: Четверг, 31 Марта 2011, 21:11:02 | Сообщение # 42 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (SirNikolas) не понял суть вопроса. Я сделал триггер который исеткает через время. В нем я сделал еще один локальный триггер. Почему нульзя сделать больше одного локального триггера, если я деалю то меня из карты выкидывает постоянно.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
rixt7956 | Дата: Четверг, 31 Марта 2011, 22:33:53 | Сообщение # 43 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| можно, только нужны прямые руки. Добавлено (31-03-2011, 22:33) --------------------------------------------- у меня такой проблемы вообще не когда не было, у меня в одной системе вообще в цикле для каждого юнита создается триггер, и все норм работает.
|
|
|
|
lawson | Дата: Четверг, 31 Марта 2011, 22:51:51 | Сообщение # 44 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (rixt7956) у меня такой проблемы вообще не когда не было Вот триг. Все не буду писать только главное. - это пример. Я пытался создавать несколько отдельных локальных триггеров резултатов = 0 типа Code local trigger t = CreateTrigger() local trigger u = CreateTrigger() все равно если я создаю два локальных триггера то карта вылетает. ПОЧЕМУ?
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Четверг, 31 Марта 2011, 23:00:32 |
|
|
|
rixt7956 | Дата: Четверг, 31 Марта 2011, 23:33:54 | Сообщение # 45 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| напиши именно код с ошибкой, и лучше не в этой теме а создай отдельную.
|
|
|
|
lawson | Дата: Пятница, 01 Апреля 2011, 00:09:00 | Сообщение # 46 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (rixt7956) напиши именно код с ошибкой Ошибку Helper не выдает а карта просто вылетает при запуске, ну как если в ExecuteFunc написать не существующую функцию точно также и сдесь просто карта вылетает. Ошибки нет у меня есть триггер после истечения времени делать действия я делаю цикл в котором создаю локальный триггер все просто если создаю один локальный триггер то все рабоате иначе то карта вылетает.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
rixt7956 | Дата: Пятница, 01 Апреля 2011, 07:33:04 | Сообщение # 47 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| а это по твоему не ошибка, скинь тогда сам глюченный код.
|
|
|
|
Dreii | Дата: Пятница, 01 Апреля 2011, 07:52:58 | Сообщение # 48 |
10 уровень
Группа: Проверенные
Сообщений: 4991
Награды: 0
Репутация: 603
Блокировки:
| lawson, ты в 1 триггер добавляешь 2 события
|
|
|
|
lawson | Дата: Пятница, 01 Апреля 2011, 08:16:02 | Сообщение # 49 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Dreii) ты в 1 триггер добавляешь 2 события Quote (lawson) все равно если я создаю два локальных триггера то карта вылетает.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
rixt7956 | Дата: Пятница, 01 Апреля 2011, 08:16:50 | Сообщение # 50 |
9 уровень
Группа: Проверенные
Сообщений: 1097
Награды: 0
Репутация: 153
Блокировки:
| Drei, это можно делать.
|
|
|
|