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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » Инициализация в Jass
Инициализация в 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 нет ничего страшного, потомучто так или иначе в адреса приобразовывается стринг на этапе компиляции стрингов в адресса. Во как :)

 

Форум о Warcraft 3 » Раздел для картостроителей » GUI / Jass » Инициализация в Jass
  • Страница 1 из 1
  • 1
Поиск:

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