ТОП 10:

Функции для операций над целыми числами



  • int Rand( int Max ); Возвращает случайное число в диапазоне с 0 по Max-1.
  • int Min( int A, int B ); Возвращает меньшее из двух чисел.
  • int Max( int A, int B ); Возвращает большее из двух чисел.
  • int Clamp( int V, int A, int B ); Возвращает первое число, значение которого ограничено пределом с A по B.

Предупреждение - в отличие эквивалентных функций языков C и C++, Min и Max работают только с целыми числами. При использовании этих функций для операций над числами с плавающей точкой вы не получите никаких предупреждений, числа просто будут округлены! Для операций над числами с плавающей точкой используйте функции FMin и FMax.

Функции для операций над числами с плавающей точкой

  • float Abs( float A ); Возвращает абсолютное значение числа.
  • float Sin( float A ); Возвращает синус величины, указанной в радианах.
  • float Cos( float A ); Возвращает косинус величины, указанной в радианах.
  • float Tan( float A ); Возвращает тангенс величины, указанной в радианах.
  • float ASin( float A ); Возвращает арксинус величины в радианах.
  • float ACos( float A ); Возвращает арккосинус величины в радианах.
  • float Atan( float A ); Возвращает арктангенс величины в радианах.
  • float Exp( float A ); Возвращает число "e", возведенное в степень A.
  • float Loge( float A ); Возвращает натуральный (по базе "e") логарифм числа A.
  • float Sqrt( float A ); Возвращает квадратный корень числа A.
  • float Square( float A ); Возвращает квадрат числа A = A*A.
  • float FRand(); Возвращает случайное число в диапазоне с 0.0 по 1.0.
  • float FMin( float A, float B ); Возвращает меньшее из двух чисел.
  • float FMax( float A, float B ); Возвращает большее из двух чисел.
  • float FClamp( float V, float A, float B ); возвращает первое число, значение которого ограничено пределом с A по B.
  • float Lerp( float A, float B, float Alpha ); Возвращает результат линейной интерполяции между A и B.
  • float Smerp( float Alpha, float A, float B ); Возвращает результат нелинейной Alpha-smooth интерполяции между A and B.
  • float Ceil ( float A ); Округляет число в большую сторону.
  • float Round ( float A ); Округляет число.

Функции для операций над строками

  • int Len( coerce string S ); Возвращает длину строки.
  • int InStr( coerce string S, coerce string t); Возвращает смещение второй строки в первой строке, если она существует, или -1 если нет.
  • string Mid ( coerce string S, int i, optional int j ); Возвращает среднюю часть строки S начиная от символа i и по символ j (или до конца, если символ j не указан).
  • string Left ( coerce string S, int i ); Возвращает левую часть строки S до символа i.
  • string Right ( coerce string] S, int i ); Возвращает правую часть строки S после символа i.
  • string Caps ( coerce string S ); Возвращает строку S в верхнем регистре.
  • string Locs ( coerce string S); Возвращает строку S в нижнем регистре. (версия 3323 и выше)
  • string Chr ( int i ); Возвращает символ из таблицы ASCII.
  • int Asc ( string S ); Возвращает индекс первого символа строки S в таблице ASCII.
  • string Repl ( coerce string Src, coerce string Match, coerce string With, optional bool bCaseSensitive ); Заменяет Match на With в строке Src. (версия 3323 и выше)
  • string Split(coerce string Text, coerce string SplitStr, optional bool bOmitSplitStr); Разбивает строку Text в месте первого вхождения SplitStr и возвращает оставшуюся часть Text. ЕслиbOmitSplitStr истинно, SplitStr исключяется из возвращаемой строки.
  • array<string> SplitString( string Source, optional string Delimiter=",", optional bool bCullEmpty ); Врапер для разделения строки на массив строк с помощью указанного выражения.
  • JoinArray(array<string> StringArray, out string out_Result, optional string delim = ",", optional bool bIgnoreBlanks = true); Создать одну строку из массива строк, используя указанный разделитель, опционально игнорируя пустые строки.
  • ParseStringIntoArray(string BaseString, out array<string> Pieces, string Delim, bool bCullEmpty); Разбивает строку с разделителями на элементы массива строк.
  • A == B; Сравнивает две строки, в случае их равенства возвращает истину (С учетом регистра).
  • A ~= B; Сравнивает две строки, в случае их равенства возвращает истину (Без учетом регистра).
  • A != B; Сравнивает две строки, в случае, если строки отличаются, возвращает истину (С учетом регистра).

Полее подробно читайте на странице Строки в сценариях UnrealScript.

Функции для операций над векторами

  • vector vect( float X, float Y, float Z ); Создает новый вектор с указанными компонентами.
  • float VSize( vector A ); Возвращает евклидов размер вектора (квадратный корень суммы квадратов компонентов).
  • vector Normal( vector A ); Возвращает вектор размером 1,0, указывающий в направлении исходного вектора.
  • Invert ( out vector X, out vector Y, out vector Z ); Инвертирует систему координат, определенную тремя осями векторов.
  • vector VRand ( ); Возвращает равномерно распределенный случайный вектор.
  • vector MirrorVectorByNormal( vector Vect, vector Normal ); Отражает вектор по указанному вектору нормали.

Функции для работы с таймерами

Функции для работы с таймерами доступны только для классов, наследующих класс Actor.

Вы можете создать несколько таймеров, каждый из которых имеет разную частоту. Каждый таймер имеет уникальную функцию (по умолчанию Timer()).

  • function SetTimer(float inRate, optional bool inbLoop, optional Name inTimerFunc); Запускает таймер, который срабатывается после inRate секунд. Если inbLoop истинно, таймер зацикливается. inTimerFunc определяет функцию для вызова, по умолчанию это функция Timer(), это значение также используется для указания нескольких таймеров.
  • ClearTimer(optional Name inTimerFunc); Останавливает таймер
  • bool IsTimerActive(optional Name inTimerFunc); Возвращает true, если таймер активен
  • float GetTimerCount(optional Name inTimerFunc); возвращает значение счетчика таймера, например, количество секунд с момента последнего исполнения таймера. Возвращает -1, если таймер не активен.
  • float GetTimerRate(optional name TimerFuncName = 'Timer'); Возвращает скорость таймера, GetTimerRate('SomeTimer') - GetTimerCount('SomeTimer') возвращает оставшееся время таймера.

Функции для отладки

Следующие функции могут помочь вам в отладке кода.

  • LogEx( ELoggingSeverity Severity, name Category, coerce string Msg ); Выводит сообщение с заданными важностью и категорией. Эта функция обеспечивает больший контроль, чем стандартная функция log(). Она позволяет фильтровать сообщения журнала по важности и по категориям в режиме исполнения.
  • LogFatal( name Category, coerce string Msg ); Сокращенный вариант вызова LogEx(LOG_FATAL, Category, Msg)
  • LogError( name Category, coerce string Msg );
  • function LogWarn( name Category, coerce string Msg );
  • LogInfo( name Category, coerce string Msg );
  • LogDebug( name Category, coerce string Msg );
  • LogTrace( name Category, coerce string Msg );

Отметим, что по состоянию списка изменений 134102, функции протоколирования, указанные выше, больше не доступны. Они были заменены на соответствующие макроопределения, которые обрабатываются препроцессором UnrealScript.

  • ScriptTrace(); Помещает стек вызова текущего сценария в файл журнала
  • Name GetFuncName(); Возвращает имя текущей вызываемой функции
  • DumpStateStack(); Выводит текущее состояние стека

Препроцессор UnrealScript

Подробнее о препроцессоре читайте на странице Препроцессор Unrealscript .







Последнее изменение этой страницы: 2016-08-25; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.206.187.81 (0.006 с.)