Группа юнитов, которых видит игрок номер
nPlayer, - т.е., все те юниты,
которые видны юнитам данного игрока. Эта операция рефлексивна - юниты видят и самих себя. Эквивалентно вызову
GroupSee (
GetPlayerUnits (
nPlayer ) ) .
group UnitSee ( objUnit )
Группа юнитов, которых видит юнит
objUnit. Эта операция рефлексивна - юнит видят и
самого себя.
Координатные функции
-
float DistanceUnitPoint (
objUnit , x , y )
Возвращает расстояние между юнитом
objUnit и точкой
(
x,
y).
-
float DistanceUnitUnit (
objUnitA , objUnitB )
Возвращает расстояние между юнитами
objUnitA и
objUnitB.
-
float GetFutureX (
objUnit , flTime )
Экстраполирует координату
x юнита
objUnit через время
flTime, основываясь на его текущем направлении движения и скорости. Именно эту функцию
используют ловушки на сингл-карте "
Портал".
-
float GetFutureY (
objUnit , flTime )
Экстраполирует координату
y юнита
objUnit через время
flTime, основываясь на его текущем направлении движения и скорости. Именно эту функцию
используют ловушки на сингл-карте "
Портал".
-
float GetX ( objUnit )
Возвращает текущую координату
x юнита
objUnit.
-
float GetY ( objUnit )
Возвращает текущую координату
y юнита
objUnit.
-
float GetZ ( objUnit )
Возвращает текущую координату
z юнита
objUnit.
-
bool IsInArea ( idArea
x , y )
Возвращает истину, если точка (
x,
y) находится в
области с идентификатором
idArea.
См.
процедуры управления областями.
-
bool IsInSquare (
x , y ,
x1 , y1 ,
x2 , y2 )
Возвращает истину, если точка (
x,
y) находится в прямоугольнике
(
x1,
y1)-(
x2,
y2).
-
bool UnitInSquare (
objUnit ,
x1 , y1 ,
x2 , y2 )
Возвращает истину, если юнит
objUnit находится в прямоугольнике
(
x1,
y1)-(
x2,
y2).
Арифметические и логические функции
-
float Add ( flA ,
flB )
Возвращает сумму чисел
flA и
flB.
-
float Div ( flA ,
flB )
Возвращает частное чисел
flA и
flB.
-
bool IsEqual ( flA ,
flB )
Возвращает истину, если числа
flA и
flB равны, и ложь
в противном случае.
-
bool IsEqualString ( strA ,
strB )
Возвращает истину, если строки
strA и
strB равны
с учетом регистра, и ложь в противном случае.
-
bool IsGreater ( flA ,
flB )
Возвращает истину, если число
flA больше чем
flB,
и ложь в противном случае.
-
bool IsLess ( flA ,
flB )
Возвращает истину, если число
flA меньше чем
flB,
и ложь в противном случае.
-
float Mul ( flA ,
flB )
Возвращает произведение чисел
flA и
flB.
-
bool Not ( bf )
Возвращает отрицание логического значения
bf: истину, если
bf
равно нулю, и ложь в противном случае.
-
float Random ( flMax )
Возвращает псевдослучайное число из промежутка [
0 ,
flMax ).
-
float Sub ( flA ,
flB )
Возвращает разность чисел
flA и
flB.
Функции AI
-
float GetDiplomacy ( nPlayerA ,
nPlayerB )
Возвращает тип дипломатии - кем является игрок номер
nPlayerA для игрока
номер
nPlayerB. Возможные значения:
- 1 - союзник
- 0 - нейтрал
- -1 - враг
См. также
IsEnemy(),
GetPlayer(),
SetDiplomacy() и
SetPlayer()
-
bool IsAlive
( objUnit )
Возвращает истину, если юнит
objUnit жив, и ложь в противном случае.
-
bool IsDead
( objUnit )
Возвращает истину, если юнит
objUnit мертв, и ложь в противном случае.
-
bool IsEnemy ( objUnit ,
nPlayer )
Возвращает истину, если юнит
objUnit является врагом для игрока номер
nPlayer.
См. также
GetDiplomacy(),
GetPlayer(),
SetDiplomacy() и
SetPlayer()
-
bool IsUnitBlocked ( objUnit )
Возвращает истину, если юнит
objUnit заблокирован.
См. также
BlockUnit().
-
bool IsUnitInWater ( objUnit )
Возвращает истину, если юнит
objUnit находится в воде.
Функции работы с параметрами юнитов и игроков
-
float GetMoney ( nPlayer )
Возвращает количество денег у игрока номер
nPlayer.
-
float GetLootItemsCount ( nPlayer )
Возвращает число предметов в обозе у игрока номер
nPlayer.
-
float HP ( objUnit )
Возвращает текущее значение HP (жизни) у юнита
objUnit.
Это число учитывает эффекты спеллов ослабления и усиления, наложенных на юнит.
-
float Mana ( objUnit )
Возвращает текущее значение маны у юнита
objUnit.
-
float MaxHP ( objUnit )
Возвращает максимально возможное значение HP (жизни) у юнита
objUnit.
Это число учитывает эффекты спеллов ослабления и усиления, наложенных на юнит.
-
float MaxMana ( objUnit )
Возвращает максимально возможное значение маны у юнита
objUnit.
-
bool WasLooted ( objUnit )
Возвращает истину, если труп юнита
objUnit уже взят, и ложь в противном случае
(в частности, если юнит еще жив).
Прочие функции
-
bool GetLeverState ( objLever )
Возвращает истину, если "рычаг"
objLever "включен", и ложь в противном случае.
См. также
SetLeverState().
-
float GetWorldTime ()
Возвращает текущее время внутриигроых суток (в часах).
См. также
IsNight(),
FixWorldTime() и
RunWorldTime()
-
float GSGetVar ( nPlayer ,
strVar )
Возвращает значение переменной с именем
strVar у игрока номер
nPlayer.
См. также
GSSetVar().
-
float IsNight ()