Процедуры и функции общего назначения
Материал из Pocket Fallout для КПК на PDA PC PPC Mobile.
[править]
Что такое "Процедуры и функции общего назначения"
Кроме ключевых слов язык PFSL содержит в себе фиксированный набор общих процедур и функций, которые предназначены для выполнения математических расчетов, работы со строками, работы с системой. Использовать в коде такую процедуру и функцию можно где угодно.
[править]
Процедуры и функции специального назначения
| CreateObject | Создает объект-потомок служебного класса |
| Length | Возвращает длину строки или массива |
| DbgShowValue | Отобразить значение указанной переменной (для отладки) |
| DbgLogValue | Вывести в лог файл dbgscript.log информацию о переменной |
| CheckFightStack | Предназначена для "разруливания" коллизий во время боя |
| GetCurrentFighter | Возвращает имя текущего дерущегося юнита (работает только в режиме боя (при неверной логике скриптов) (работает только в режиме боя) |
| ShowWaitCursor | Отобразить (в новом паралельном потоке) курсор ожидания |
| HideWaitCursor | Спрятать курсор ожидания |
| GetWalkAreaValue | Получить проходимость МНИМого тайла по указанным координатам |
| SetWalkStep | Установить координаты МНИМых тайлов по которым будет перемещаться юнит |
| GetPlayerName | Возвращает имя игрока |
| ExecuteGlobalMethod | Выполняет процедуру/функцию из глобального модуля global.pfs |
| PreLoadObjectImage | Загрузить указанное изображение юнита в память |
| isFightMode | Получить статус режима боя |
| DoFade | Выполнить затемнение/рассвет экрана |
[править]
Процедуры/функции работы с заданиями (квестами)
| AddQuest | Добавить новый квест в список квестов |
| SetQuestState | Установить статус квеста по его идентификатору |
| GetQuestState | Получить статус квеста по его идентификатору |
| isQuestDefined | Опросить список квестов – существует такой квест по указанному идентификатору или нет |
[править]
Математические процедуры/функции
| Sin | Получить синус значения |
| Cos | Получить косинус значения |
| Tan | Получить тангенс значения |
| Randomize | Создать таблицу случайных чисел |
| Rand | Выбрать любое ЦЕЛОЕ случайное число из таблицы случайных чисел |
| Mod | Получить остаток от деления |
| Div | Получить целую часть от деления |
| Round | Округлить число с заданной точностью |
| Log | Натуральный логарифм числа |
| Log10 | Десятичный логарифм числа |
| Exp | Экспонента в степени значения |
| Pow | Возведение значения числа в степень |
[править]
Процедуры/функции работы с сообщениями пользователю
| YesNoMessage | Отобразить на экране окно с кнопками "Да/Нет". Возвращает true, если нажата кнопка "Да" |
| ShowMessage | Отобразить сообщение в стилизованном окне (с кнопкой OK) |
| AddStringMessage | Добавить строковое сообщение в список сообщений.
Это сообщение добавиться в список текущий сообщений (на панели игрока) или отобразиться «всплывающим» текстом |
| AddStringMessageByIndex | Добавить строковое сообщение в список сообщений по его идентификатору (из game_discr). Это сообщение добавиться в список текущий сообщений (на панели игрока) или отобразиться «всплывающим» текстом |
| AddAnswer | Добавить ответ для юнита <имя_юнита> |
| ExitTalk | Выйти из окна разговора |
| SetDefaultMessagesState | Установить статус отображения (включить/выключить) режим автоматических системных сообщений |
| AddFormattedMessage | Вывести форматированное сообщение |
[править]
Процедуры/функции работы с данными переменных
В движке предусмотрен механизм работы с так называемым "репозиторием данных". Этот репозиторий (хранилище) предназначен для хранения значений базового типа и существует на протяжении всего процесса игры, а также сохраняется при сохранении игры. Ниже перечислены процедуры и функции для работы с репозиторием данных.
| SaveValue | Сохранить в репозиторий данных значение переменной с указанным ключом |
| LoadValue | Восстановить (загрузить) значение переменной из репозитория по указанному ключу |
| RemoveValue | Удалить переменную из репозитория по ее имени |
| isValueExists | Опросить репозиторий данных на предмет наличия в нем значения с указанным ключем |
[править]
Процедуры/функции работы со строками
| NumberToStr | Перевести число в строку |
| StrToNumber | Перевести строку в число |
| Pos | Возвращает индекс, с которого начинается суб.строка в строке |
| SubStr | Возвращает часть строки из другой строки |
| Chr | Получить символ (в виде строки в один символ) по его ASCII коду |
| Ord | Получить ASCII код по символу (символ в виде строки) |
[править]
Процедуры/функции работы с аудио-файлами
| StopMusic | Остановить бесконечное проигрывание аудио-файла (музыки) |
| PlayMusic | Проиграть в бесконечном цикле аудио-файл |
| PlaySfx | Проиграть один раз аудио-файл |