Инициализация в Jass
|
|
wetalq | Дата: Вторник, 16 Августа 2011, 23:35:25 | Сообщение # 1 |
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
| Вот допустим мне нужно сделать спел для 10-рых типов юнитов с одинаковым типом, но разными данными (расстояние, скорость, урон).
триггер в котором настройки к способностям (данные тип юнита, урон, дальность) сделать на Jass, а сам спел сделать на GUI (использовать глобальные переменные).
если так делать можно, то правильно ли будет так:
|
|
|
|
lawson | Дата: Вторник, 16 Августа 2011, 23:55:29 | Сообщение # 2 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (wetalq) Вот допустим мне нужно сделать спел для 10-рых типов юнитов с одинаковым типом Если тип спелла одинаковый зачем тогда его в массив записываешь? А так вроде все правильно для каждого типа юнита сввои данные. Вообще это легче сделать через структуру но я думаю ты не разберешься там. Тоесть ты хочешь чтоб не делать каждый раз проверку в событии Юнит использует способность ты записываешь их в массив(правильно!) тоесть в действии этого триггера при разных типах юнитов будут проходить разные действия?Добавлено (16-08-2011, 23:55) --------------------------------------------- И еще в инициализации пользуйся ExecuteFunc() будет проще читать триг.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Вторник, 16 Августа 2011, 23:54:53 |
|
|
|
Faion | Дата: Среда, 17 Августа 2011, 00:00:53 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 1894
Награды: 0
Репутация: 430
Блокировки:
| Quote (lawson) ExecuteFunc()
Мне прям интересно стало, вот ты советуешь юзать эту функцию, а ты знаешь для чего она вообще, и как работает?=)
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
|
|
|
|
wetalq | Дата: Среда, 17 Августа 2011, 00:01:05 | Сообщение # 4 |
8 уровень
Группа: Проверенные
Сообщений: 550
Награды: 0
Репутация: 117
Блокировки:
| Quote (lawson) Если тип спелла одинаковый зачем тогда его в массив записываешь?
основа одинаковая но ID разные
Quote (lawson) А так вроде все правильно для каждого типа юнита сввои данные. Вообще это легче сделать через структуру но я думаю ты не разберешься там.
структуры это вродь vJass а я только обычный начал изучать
Quote (lawson) тоесть в действии этого триггера при разных типах юнитов будут проходить разные действия?
эффект как от волны силы только разные характеристики способности
Quote (lawson) И еще в инициализации пользуйся ExecuteFunc() будет проще читать триг.
ок
|
|
|
|
lawson | Дата: Среда, 17 Августа 2011, 09:24:37 | Сообщение # 5 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Faion) Мне прям интересно стало, вот ты советуешь юзать эту функцию, а ты знаешь для чего она вообще, и как работает?=) Да знаю, коллега.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Hexing | Дата: Суббота, 20 Августа 2011, 07:47:11 | Сообщение # 6 |
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
| Quote (lawson) И еще в инициализации пользуйся ExecuteFunc() будет проще читать триг. Я против. После цомпиляции все названия переменных и функций стают совсем другими(или интегер или стринг, уже непомню), и чтобы вызвать функцию по имени нужно много ресурсов. Хотя если (в чем я сомневаюсь, потомучто язык очень ограничен, и намного проще создать компиляцию его в комп. язык при запуске карты.) код компилируется и во время карты (как flash), то это просто сделать. Но быстрее всего использовать вызов самой функции.
|
|
|
|
lawson | Дата: Суббота, 20 Августа 2011, 12:46:21 | Сообщение # 7 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Hexing) Но быстрее всего использовать вызов самой функции. ну я и говорю ExecuteFunc() он пишется в Init_Trig сразу после создания триггера.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Hexing | Дата: Воскресенье, 21 Августа 2011, 08:50:18 | Сообщение # 8 |
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
| Во вспомнил, jass - интерпаляционный(или както так) язык. Он выполняется по ходу выполнения программы(warcraft), так что в ExecuteFunc нет ничего страшного, потомучто так или иначе в адреса приобразовывается стринг на этапе компиляции стрингов в адресса. Во как
|
|
|
|