[Уроки Jass]Конверт Названий Функций\Объектов - Wc3-Maps Форум













[ Главная · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: Strateg, Melissa  
[Уроки Jass]Конверт Названий Функций\Объектов
-
влад10011Дата: Пятница, 24-08-2012, 21:44:04 | Сообщение # 1

загрузка наград ...
Группа: V.I.P.
Сообщений: 1265
Репутация: 1039
Статус: Не на сайте
К примеру вы начинающий Jass"ер(так и есть Х_Х) и вам надоели все эти запутанные названия функций, писанины рав-кодов спеллов\юнитов и тд я подскажу вам выход:
Но для начала скачайте JassNewGenPack с синтаксисом cJass без него вы так и будите строчить длинные и запутанные функции.
Есть такая команда на cJass называется "define" которая может сконвертировать всё что вам нужно(только текст тоесть функции названия и тд)
чтобы ей пользоваться нужно использовать следующее:
Code
define
FOOTMAN='hfoo'
enddefine

Для так же можно воспользоваться следующей записью:
Code
define {
FOOTMAN='hfoo'
}

Они идентичны { начало действия } конец так же можно это юзать в if loop globals и функциях
И так что мы сделали?
Мы в левой части записали наше название как мы будем в дальнейшем его называть, а в правой части записали Рав-код юнита.
и после этого мы можем обращаться к этому юниту так:
Code
CreateUnit(Player(0), FOOTMAN,0,0,0) //Создаём футмана для красного игрока в точке 0 0 с поворотом 0

----------------------------------------------------------------------------------------------------------------------------------
А вот если нам нужно к примеру сконвертировать функцию?
Легко:
Code
[b]define
AddEffectXY(s,x,y)=AddSpecialEffect(s,x,y) //Создание эффекта в точке x y
enddefine[/b]

Что мы сделали?
Мы избавились от лишнего слова Special но функция стала идентична, я вообще мог написать Effect(s,x,y)=AddSpecialEffect(s,x,y) тоже самое.
Примечание:
Аргументы функций которые мы конвертим должны быть чем то похожи и стоят по порядку иначе ерор(если вы поставили свои значения тогда это не в счёт, об этом ниже) и к тому же писать русские буквы(если канечно у вас есть Notepad++ и вы умеете им пользоваться тогды пожалуйста пишите что хотите хоть "Сделать всё хорошо(всё)"=Функция)
Полезности:
Кроме того что мы можем изменить их название, дык мы ещё и можем сокращать\ставить свои значения которые будут даже если их не устанавливать. Пример:
Code
UnitCreate()=CreateUnit(Player(0),FOOTMAN,0,0,bj_UNIT_FACING)

И что же мы сделали скажите вы? biggrin
Мы Упростили функцию т.е. мы просто пишем UnitCreate() и нам создаётся футман для красного игрока в точке 0 0 с углом поворота 270(bj_UNIT_FACING 270)
Вот видите как удобно happy
Вот пример:
Библиотека которую я пишу по упрощению кода для нубов
http://rghost.ru/39981908

Look at my horse!
 
-
ValiksДата: Понедельник, 03-09-2012, 18:44:45 | Сообщение # 2
Гражданин

загрузка наград ...
Группа: Заблокирован
Сообщений: 37
Репутация: -282
Статус: Не на сайте
Это нужно писать в школу Jass
http://wc3-maps.ru/forum/89-3483-1
 
  • Страница 1 из 1
  • 1
Поиск:
Рейтинг@Mail.ru
Яндекс.Метрика

Copyright © 2010-2017
Вакансии :: Контакты
Мобильная версия сайта
chat