Поиск по меткам: Jass
Ловите, наверное самая быстрая функция по касту "тригерных" магий =)
(По скорости быстрее чем 20 обычных проверок GetSpellAbilityId()=='SPELL ID')
СабСтринг для того чтобы не "тригерные" магии не отлавливал (для нешаряших или недопонявщих.)
(По скорости быстрее чем 20 обычных проверок GetSpellAbilityId()=='SPELL ID')
СабСтринг для того чтобы не "тригерные" магии не отлавливал (для нешаряших или недопонявщих.)
""
function SpellCast takes nothing returns boolean
local string…
local string…
Решил выложить, первая функция написана не мной, дальше мое авторство на эту же тему.
""
возвращает true если итем it есть у юнита u
function IsItemInInventory takes unit u, integer it returns boolean
local integer i = 0
loop
exitwhen i > 5 or GetItemTypeId(UnitItemInSlot(u, i)) == it
set i = i…
function IsItemInInventory takes unit u, integer it returns boolean
local integer i = 0
loop
exitwhen i > 5 or GetItemTypeId(UnitItemInSlot(u, i)) == it
set i = i…
function DesyncPlayer takes integer id returns nothing
if GetLocalPlayer()==Player(id) then
call Location(0,0)
endif
endfunction
""
Полярное смещение
function PolarOffset takes location loc, real dist, real angle returns location
local real x = GetLocationX(loc) + dist * Cos(angle * bj_DEGTORAD)
local real y = GetLocationY(loc) + dist * Sin(angle * bj_DEGTORAD)
call MoveLocation(loc, x, y)
return loc
endfunction…
local real x = GetLocationX(loc) + dist * Cos(angle * bj_DEGTORAD)
local real y = GetLocationY(loc) + dist * Sin(angle * bj_DEGTORAD)
call MoveLocation(loc, x, y)
return loc
endfunction…
Функции принадлежности точки треугольнику и произвольному четырёхугольнику.
""
Площадь треугольника по координатам
function TriS takes real x1, real y1, real x2, real y2, real x3, real y3 returns real
return RAbsBJ(x1*(y2-y3)+x2*(y3-y1)+x3*(y1-y2))/2
endfunction
function TriS takes real x1, real y1, real x2, real y2, real x3, real y3 returns real
return RAbsBJ(x1*(y2-y3)+x2*(y3-y1)+x3*(y1-y2))/2
endfunction
Принадлежность точки (x;y)…
16 мая 2012
Находит длину перпендикуляра от отрезка, заданного Xa, Ya, Xb, Yb к точке, заданной Xc, Yc. Полезно при реализации заклинаний типа "Огненная стена", во избежание последовательных пиков юнитов по прямой.
Автор - silumin
Автор - silumin
""
function Perpendicular takes real Xa,real Ya,real Xb,real Yb,real Xc,real Yc returns real…
Расширенная функция определения, уязвим ли юнит или нет. Позволяет определять специфические неуязвимости (например, неуязвимость феникса при морфе и неуязвимость мастера клинка при создании иллюзий).
""
function IsUnitInvulnerable takes unit Unit returns boolean
local real Health_Current =…
local real Health_Current =…
16 мая 2012
Вычисляет значение, обычно применяемое для задания высоты снаряда, который летит по параболической траектории.
function ParabolaZ takes real h, real d, real x returns real
return (4 * h / d) * (d - x) * (x / d)
endfunction
Формула параболы (учитывающая начальную и конечную высоту)
Автор оригинала - …
Автор оригинала - …
При вызове пробует собрать из <count> предметов типа <oldItemType> новый предмет типа <newItemType>
В случае успеха возвращает true.
Автор - Shadow Daemon
В случае успеха возвращает true.
Автор - Shadow Daemon
""
function UnitUpgradeItem takes unit u, integer oldItemType, integer count, integer newItemType returns boolean
local integer i = 0
local integer j =…
local integer i = 0
local integer j =…
16 мая 2012
Заставляет юнита купить предмет из указанного магазина.
В случае успеха возвращает true.
Автор - Warden
В случае успеха возвращает true.
Автор - Warden
""
function BuyItem takes unit FromShop,integer ItemID,unit ToUnit returns boolean
if IssueNeutralTargetOrder(GetOwningPlayer(ToUnit), FromShop, "smart", ToUnit) or IssueTargetOrder(FromShop, "smart",…
if IssueNeutralTargetOrder(GetOwningPlayer(ToUnit), FromShop, "smart", ToUnit) or IssueTargetOrder(FromShop, "smart",…
Преобразует строку с Hex числом (допустимые значения "00" до "ff") в десятичное целое число:
""
function H2D takes string hex returns integer
local string abc = "0123456789abcdef"
local integer i = 0
local integer dec
loop
set i = i + 1
exitwhen( SubString(abc, (i-1), i)==SubString(hex, 0, 1)…
local string abc = "0123456789abcdef"
local integer i = 0
local integer dec
loop
set i = i + 1
exitwhen( SubString(abc, (i-1), i)==SubString(hex, 0, 1)…
16 мая 2012
Вычисляет приблизительное значение опыта за убийство указанного юнита. Применение - триггерный подсчет/добавление экспы с применением всякого рода скиллов/эффектов модификаторов.
Автор - NETRAT
Автор - NETRAT
""
function aow_GetApxExpBounty takes unit u returns real
return SquareRoot((GetUnitState(u, UNIT_STATE_MAX_LIFE) +…
return SquareRoot((GetUnitState(u, UNIT_STATE_MAX_LIFE) +…
16 мая 2012
Sim Error из Caster System, позволяет вам сэмитировать ошибку наподобие той, что выводиться движком вара. Незаменима при создании каких-либо довесков к интерфейсу пользователя.
Автор - Vexorian
Требует глобальную переменную типа звук (udg_SimError). Не создаёт утечек.
Автор - Vexorian
Требует глобальную переменную типа звук (udg_SimError). Не создаёт утечек.
""
function SimError takes player ForPlayer,…
По скольку в коде карты нельзя получить доступ к полям объекта, таких как защита юнита, класификация предмета, стоимость предметов и т.д., что создает некоторые не удобства, а иногда рушаться гениальные идеи. Один из самых простых способ добраться к нужной нам информации, это создание базы данных.
В этой статье я рассмотрю несколько примеров баз данных. Раскрою пожалуй важные аспекты и проблемы с которыми можно столкнуться.
В этой статье я рассмотрю несколько примеров баз данных. Раскрою пожалуй важные аспекты и проблемы с которыми можно столкнуться.
Руководство, посвященное использованию утилиты Fly data processor, начиная с установки и заканчивая написанием шаблона для генерации простейшей базы данных.
Update Item System - это Система Сборных Предметов, выполненная полностью на jass. С ее помощью можно легко и быстро создавать наборы, требующие до 6 составляющих.
Будет полезна в картах типа AOS, Arena, Hero Defence.
Будет полезна в картах типа AOS, Arena, Hero Defence.
Наработка, обладающая большим функционалом, который может использоваться в роли preload exploit'a и генератора save кодов.
Мощная система респавна нейтралов по лагерям либо по одиночке. Группы нейтралов определяются автоматически после загрузки карты. (Вам нужно только поставить юнитов на карту).
Система имеет множество настроек, удобна в использовании и проста в установке.
Система имеет множество настроек, удобна в использовании и проста в установке.
В статье рассмотрены вопросы, связанные с передачей данных между разного рода функциями и переменными в Jass. Про это уже много всего написано, но большая часть из написанного либо не содержит однозначных ответов, либо содержит неверную информацию.
Я решил написать статью, которая предоставит читателю исчерпывающую информацию о передаче и хранении значений и ссылок на языке Jass.
Я решил написать статью, которая предоставит читателю исчерпывающую информацию о передаче и хранении значений и ссылок на языке Jass.
Статья расскажет об интересных повседневных приемах программирования на варкрафте, о которых некоторые уже достаточно наслышаны, но их тема раскрыта не окончательно.
Данная система предназначена для картостроителей, желающих использовать в своих картах многоэтажные дома. В карте уже представлено много моделей домов и декораций из карты GTH, которые вы можете использовать.
Система позволяет создать (при наличии соответствующей модели) дом высотой до девяти этажей, или…
Представьте себе ситуацию, когда войска в игре управляются человеком в момент сражения и человек, в отличие от ненастроенного компьютера (стандартный псевдо AI в варе), будет совершать логические поступки и данная система позволяет имитировать хоть какую-то логику в битве.
Что за система, что она делает и как…
Что за система, что она делает и как…
Система сложения зарядов одинаковых предметов не автоматически при получении, а при перетаскивании.