Сейчас 20:34:29 Вторник, 9 августа, 2022 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Раздел картостроителя » Справочник Jass-функций ([A])
Справочник Jass-функций
[DUОS]Дата: Среда, 16 Марта 2011, 12:40:08 | Сообщение # 1
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:

constant native AbilityId takes string abilityIdString returns integer
constant native AbilityId2String takes integer abilityId returns string


Эти функции по идее должны работать с конвертацией равкода в строку и обратно. Однако перед этими функциями в common.j было написано:
// Not currently working correctly...
Это означает, что функции работают некорректно и использовать их не имеет смысла. Но есть выход из положения - AceHart опубликовал функции-аналоги ещё 17 апреля 2007 года.
Code
function Char2Id takes string c returns integer
        local integer i = 0
        local string abc = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
        local string t

        loop
            set t = SubString(abc,i,i + 1)
            exitwhen t == null
            exitwhen t == c
            set i = i + 1
        endloop
        if i < 10 then
            return i + 48
        elseif i < 36 then
            return i + 65 - 10
        endif
        return i + 97 - 36
endfunction

function String2Id takes string s returns integer
        return ((Char2Id(SubString(s,0,1)) * 256 + Char2Id(SubString(s,1,2))) * 256 + Char2Id(SubString(s,2,3))) * 256 + Char2Id(SubString(s,3,4))
endfunction

Пример использования:

Code
call DisplayTextToPlayer(GetLocalPlayer(),0,0,GetObjectName(String2Id("hfoo ")))

native Acos takes real x returns real
native Asin takes real y returns real
native Atan takes real x returns real
native Atan2 takes real y, real x returns real

Это обратные тригонометрические функции.

Acos - арккосинус в радианах.
Asin - арксинус в радианах.
Atan - арктангенс в радианах.
Atan2 - угол в радианах между позитивной осью X координат и точкой, заданной координатами (X,Y). Этот угол позитивен для верхней половины координат (где y > 0) и негативен для нижней половины координат (где у < 0).

Можно также дополнить этот список функций арккотангенсом, арксекансом и арккосекансом.

Code
function Actg takes real x returns real
        return Atan(1/x)
endfunction

function Asec takes real x returns real
        return Acos(1/x)
endfunction

function Acosec takes real x returns real
        return Asin(1/x)
endfunction

native AddHeroXP takes unit whichHero, integer xpToAdd, boolean showEyeCandy returns nothing

Добавляет герою указанное количество опыта. На обычных боевых единицах функция не сработает.
native AddIndicator takes widget whichWidget, integer red, integer green, integer blue, integer alpha returns nothing

Над указанным объектом (тип widget) появляется мигающий круг выбора указанного цвета, выглядит этот круг так же, как и при выделении данного объекта или нажатии на него правой кнопкой мыши.
native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing
native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing
native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing
native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing

AddItemToAllStock - добавляет указанный предмет в ассортимент всех магазинов.
AddItemToStock - добавляет указанный предмет в ассортимент конкретного магазина.
AddUnitToAllStock - добавляет указанную боевую единицу в ассортимент всех магазинов.
AddUnitToStock - добавляет указанную боевую единицу в ассортимент конкретного магазина.
native AddLightning takes string codeName, boolean checkVisibility, real x1, real y1, real x2, real y2 returns lightning
native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning

Создают эффект молнии между двумя точками с координатами [x1,y1] и [x2,y2]. AddLightningEx также поддерживает и высоты этих точек ([z1] и [z2]).
native AddWeatherEffect takes rect where, integer effectID returns weathereffect

Добавляет указанный погодный эффект в прямоугольную область rect.
native AttachSoundToUnit takes sound soundHandle, unit whichUnit returns nothing

Прикрепляет звук к указанной боевой единице.
native AddSpecialEffect takes string modelName, real x, real y returns effect
native AddSpecialEffectLoc takes string modelName, location where returns effect
native AddSpecialEffectTarget takes string modelName, widget targetWidget, string attachPointName returns effect

AddSpecialEffect - добавляет спецэффект к точке с координатами [x,y].
AddSpecialEffectLoc - добавляет спецэффект к точке where.
AddSpecialEffectTarget - добавляет спецэффект непосредственно к точке прикрепления указанной боевой единицы.
native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect
native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect
native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect
native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect
native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect
native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect
native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect

Эта группа функций предназначена для получения конкретного эффекта из поля в способности Редактора объектов. Существуют такие типы эффектов:

EFFECT_TYPE_EFFECT - Графика - Эффект
EFFECT_TYPE_TARGET - Графика - Цель
EFFECT_TYPE_CASTER - Графика - Маг
EFFECT_TYPE_SPECIAL - Графика - Особые
EFFECT_TYPE_AREA_EFFECT - Графика - Область
EFFECT_TYPE_MISSILE - Графика - Анимация дистанционной атаки
EFFECT_TYPE_LIGHTNING - Графика - Эффекты молнии

Это довольно хорошо оптимизирует код и делает его более эффективным и слаженно работающим с РО.
Спасибо SirNikolas за ссылку на статью


native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing

Cоздаёт анимационный тег (список анимаций боевой единицы) и прикрепляет его на указанную боевую единицу.
Спасибо SirNikolas за ссылку на статью
native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing

Изменяет свойства конкретного поля камеры за данный период времени.
native And takes boolexpr operandA, boolexpr operandB returns boolexpr

Ставит and между двумя сравнениями. Это для джассера относительно бесполезная функция, поскольку можно написать if b1 and b2 then

Огромное спасибо, что помогли мне в составлении этого труда.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)


Сообщение отредактировал [DUОS] - Среда, 16 Марта 2011, 15:22:48
 

SirNikolasДата: Среда, 16 Марта 2011, 13:34:32 | Сообщение # 2
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (|DUОS|)
Code
native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect
native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect
native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect
native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect
native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect
native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect  
native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect
Добавляет в нужное место эффект, указанный в способности. Интересная статья.
Quote (|DUОS|)
Code
native And takes boolexpr operandA, boolexpr operandB returns boolexpr
Берет два boolean expression, а возвращает один. По-моему, бесполезна, т. к. можно сразу же написать, что за условие тебе нужно.
Quote (|DUОS|)
Code
native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing
Если не ошибаюсь, что-то, связанное с тегами анимаций. На одном сайте из трех букв я видел статью, посвященную этой функции.
Quote (|DUОS|)
Code
native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing
Понятия не имею.


 

[DUОS]Дата: Среда, 16 Марта 2011, 13:52:38 | Сообщение # 3
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Quote (SirNikolas)
[DUОS], ты что, решил прокомментировать весь common.j? :o

Да, ведь Русские триггеры потихоньку корректирую пока до хеша, шлифую :)

Добавлено (16-03-2011, 13:52)
---------------------------------------------

Quote (SirNikolas)
По-моему, бесполезна, т. к. можно сразу же написать, что за условие тебе нужно.

Code
if a and b then
     call c()
endif

типа этого?)

Quote (SirNikolas)
На одном сайте из трех букв я видел статью, посвященную этой функции.

Линку можно в ЛС?)


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

Manko_OДата: Среда, 16 Марта 2011, 14:01:18 | Сообщение # 4
7 уровень
Группа: Проверенные
Сообщений: 296
Награды: 0
Репутация: 23
Блокировки:
Quote (|DUОS|)
native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing

Это вроде включает\выключает анимацию у юнита.
 

[DUОS]Дата: Среда, 16 Марта 2011, 14:06:57 | Сообщение # 5
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
Manko_O,
Нет, я так думаю, что это добавление обязательного префикса.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

Manko_OДата: Среда, 16 Марта 2011, 14:17:20 | Сообщение # 6
7 уровень
Группа: Проверенные
Сообщений: 296
Награды: 0
Репутация: 23
Блокировки:
Quote (|DUОS|)
Нет, я так думаю, что это добавление обязательного префикса.

Ты меня похоже не понял. Я имел введу что это меняет индекс анимации. Например:
Пехотинец:
Обычный бег: walk
Ходьба с щитом:Walk Defend
Я хочу чтобы он ходил под анимацией Walk Defend
Получается делаем так:
Code
call AddUnitAnimationProperties(unit,"Walk",false)
call AddUnitAnimationProperties(unit,"Walk Defend",true)

И также наобарот
Code
call AddUnitAnimationProperties(unit,"Walk Defend",false)
call AddUnitAnimationProperties(unit,"Walk",true)
 

SirNikolasДата: Среда, 16 Марта 2011, 14:36:22 | Сообщение # 7
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Quote (|DUОS|)
Над указанным объектом (тип widget) появляется мигающий круг выбора указанного цвета, выглядит этот круг так же, как и при выделении данного объекта или нажатии на него правой кнопкой мыши.
native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing
native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing
native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing
native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing
AddItemToAllStock - добавляет указанный предмет в ассортимент всех магазинов.
AddItemToStock - добавляет указанный предмет в ассортимент конкретного магазина.
AddUnitToAllStock - добавляет указанную боевую единицу в ассортимент всех магазинов.
AddUnitToStock - добавляет указанную боевую единицу в ассортимент конкретного магазина.
Над указанным объектом (тип widget) появляется мигающий круг выбора указанного цвета, выглядит этот круг так же, как и при выделении данного объекта или нажатии на него правой кнопкой мыши.


 

[DUОS]Дата: Среда, 16 Марта 2011, 14:54:00 | Сообщение # 8
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
SirNikolas,
fxd


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

DuosoraДата: Среда, 15 Апреля 2015, 11:06:36 | Сообщение # 9
The cats never sleep...
Группа: Ветераны
Сообщений: 6734
Награды: 10
Репутация: 2161
Блокировки:
Небольшая добавочка про AddHeroXP, найденная Волчачкой.

call AddHeroXP(какойтоюнит,-1,true) при нулевом опыте даст в результате такую хурму:


Опыт хранится в типе unsigned int. Кстати, с SetHeroXP это не прошло.


Не зли других и сам не злись.
Мы - гости в этом мире.
И если что не так - смирись,
Будь поумнее - улыбнись,
Ведь в мире всё закономерно.
Зло, излучённое тобой,
К тебе вернётся непременно.


Сообщение отредактировал Duosora - Среда, 15 Апреля 2015, 11:08:21
 

Форум о Warcraft 3 » Раздел для картостроителей » Раздел картостроителя » Справочник Jass-функций ([A])
  • Страница 1 из 1
  • 1
Поиск:

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