FOnline
 Указатель Классы Функции Переменные Группы Страницы
API сервера

Группы

 Зарезервированные скриптовые функции
 Используются только в скрипте main.fos.
 

Классы

class  CraftItem
 CraftItem. Подробнее...
 
class  Critter
 Криттер. Подробнее...
 
class  GameVar
 Игровая переменная. Подробнее...
 
class  Item
 Предмет. Подробнее...
 
class  Location
 Локация. Подробнее...
 
class  Map
 Карта. Подробнее...
 
class  NpcPlane
 План NPC. Подробнее...
 
class  ProtoItem
 Прототип предметов. Подробнее...
 
class  Scenery
 Сценери. Подробнее...
 

Время и дата

500

const uint16 __Year
 Текущий год. Подробнее...
 
const uint16 __Month
 Текущий месяц. Подробнее...
 
const uint16 __Day
 Текущий день. Подробнее...
 
const uint16 __Hour
 Текущий час. Подробнее...
 
const uint16 __Minute
 Текущая минута. Подробнее...
 
const uint16 __Second
 Текущая секунда. Подробнее...
 
const uint16 __FullSecond
 Полная текущая секунда, учитывающая текущие год, месяц, день, час, минуту и секнуду. Подробнее...
 
const uint16 __TimeMultiplier
 Коэффициент ускорения времени. Подробнее...
 

Бой

Глобальные переменные, с помощью которых можно изменять параметры боя.

490

uint __Breaktime
 (?) Подробнее...
 
uint __TimeoutTransfer
 (?) Подробнее...
 
uint __TimeoutBattle
 (?) Подробнее...
 
uint __ApRegeneration
 (?) Подробнее...
 
uint __RtApCostCritterWalk
 Величина штрафа AP в боевом режиме при ходьбе. Подробнее...
 
uint __RtApCostCritterRun
 Величина штрафа AP в боевом режиме при беге. Подробнее...
 
uint __RtApCostMoveItemContainer
 (?) Подробнее...
 
uint __RtApCostMoveItemInventory
 (?) Подробнее...
 
uint __RtApCostPickItem
 (?) Подробнее...
 
uint __RtApCostDropItem
 (?) Подробнее...
 
uint __RtApCostReloadWeapon
 (?) Подробнее...
 
uint __RtApCostPickCritter
 (?) Подробнее...
 
uint __RtApCostUseItem
 (?) Подробнее...
 
uint __RtApCostUseSkill
 (?) Подробнее...
 
uint __TbApCostCritterMove
 (?) Подробнее...
 
uint __TbApCostMoveItemContainer
 (?) Подробнее...
 
uint __TbApCostMoveItemInventory
 (?) Подробнее...
 
uint __TbApCostPickItem
 (?) Подробнее...
 
uint __TbApCostDropItem
 (?) Подробнее...
 
uint __TbApCostReloadWeapon
 (?) Подробнее...
 
uint __TbApCostPickCritter
 (?) Подробнее...
 
uint __TbApCostUseItem
 (?) Подробнее...
 
uint __TbApCostUseSkill
 (?) Подробнее...
 
uint __ApCostAimEyes
 (?) Подробнее...
 
uint __ApCostAimHead
 (?) Подробнее...
 
uint __ApCostAimGroin
 (?) Подробнее...
 
uint __ApCostAimTorso
 (?) Подробнее...
 
uint __ApCostAimArms
 (?) Подробнее...
 
uint __ApCostAimLegs
 (?) Подробнее...
 
uint __HitAimEyes
 (?) Подробнее...
 
uint __HitAimHead
 (?) Подробнее...
 
uint __HitAimGroin
 (?) Подробнее...
 
uint __HitAimTorso
 (?) Подробнее...
 
uint __HitAimArms
 (?) Подробнее...
 
uint __HitAimLegs
 (?) Подробнее...
 
bool __RtAlwaysRun
 
bool __TbAlwaysRun
 
bool __AlwaysRun
 Всегда бежать, по-умолчанию false. Подробнее...
 
uint __AlwaysRunMoveDist
 бежать при клике, при расстоянии больше-равно, чем данное значение Подробнее...
 
uint __AlwaysRunUseDist
 бежать при использовании/разговоре/etc, при расстоянии больше-равно, чем данное значение Подробнее...
 

Параметры глобальной карты

480

uint __GlobalMapWidth
 Ширина глобальной карты мира. Подробнее...
 
uint __GlobalMapHeight
 Высота глобальной карты мира. Подробнее...
 
uint __GlobalMapZoneLength
 Длина зоны на глобальной карте. Подробнее...
 
uint __GlobalMapMaxGroupCount
 Максимальная численность группы. Подробнее...
 
uint __GlobalMapMoveTime
 Указывает на то как часто вызывать обработчик глобальной карты GLOBAL_PROCESS_MOVE. Подробнее...
 

Геомертия игровой сетки

475 В скрипте config.fos, в функции InitializeGeometry(), добавлены необходимые настройки для трех игр: Fallout1/2, Fallout Tactics и Arcanum.

Данная функция вызывается в скриптах сервера, клиента и маппера, т.к. информация о геометрии нужна всем трем. Четырехугольная изометрия использует восемь направлений, гексогональная шесть.
Рабочие спрайты для геометрии находятся в art/geometry/.

bool __MapHexagonal
 Тип изометрии true - гексогональная, false - четырехугольная. Подробнее...
 
int __MapHexWidth
 Ширина гекса Подробнее...
 
int __MapHexHeight
 Высота гекса Подробнее...
 
int __MapHexLineHeight
 Высота линии гексов Подробнее...
 
int __MapTileOffsX
 Смещение тайлов земли по горизонтали Подробнее...
 
int __MapTileOffsY
 Смещение тайлов земли по вертикали Подробнее...
 
int __MapRoofOffsX
 Смещение тайлов крыши по горизонтали Подробнее...
 
int __MapRoofOffsY
 Смещение тайлов крыши по вертикали Подробнее...
 
int __MapRoofSkipSize
 Кол-во гексов на один тайл крыши (нужно для его корректного скрывания) Подробнее...
 
float __MapCameraAngle
 Угол для рендеринга трехмерных моделей Подробнее...
 
bool __MapSmoothPath
 Сглаживание пути при перемещениях Подробнее...
 
string __MapDataPrefix
 Путь и префикс для файлов геометрии Подробнее...
 

Другие

470

uint __FixBoyDefaultExperience
 Опыт, даваемый за крафт по умолчанию. Подробнее...
 
uint __SneakDivider
 Делитель для режима скрытности. Подробнее...
 
bool __NoAnswerShuffle
 Запрет перемешивания вариантов диалога. Подробнее...
 
bool __RunOnCombat
 Возможность бегать в битве (для пошагового режима не актуально). Подробнее...
 
bool __RunOnTransfer
 Возможность бегать при таймауте на переходы. Подробнее...
 
uint __CritterIdleTick
 Задаёт периодичность вызова предопределенной функции critter_idle. Подробнее...
 
uint __LevelCap
 Ограничение по уровню. Подробнее...
 
bool __LevelCapAddExperience
 Будет ли начисляться опыт при достижении игроком __LevelCap (просто опыт, без перков, скиллпоинтов). Подробнее...
 
uint __LookNormal
 Нормальный радиус обзора криттера. Подробнее...
 
uint __LookMinimum
 Минимальная видимость криттера. Подробнее...
 
int __DeadHitPoints
 Количество хит-поинтов, при котором наступает смерть криттера. Подробнее...
 
uint __BagRefreshTime
 Время обновления сумок, используемое по-умолчанию. Подробнее...
 
uint __WisperDist
 Определяет дистанцию в гексагонах, на которой слышен шепот. Подробнее...
 
bool __CustomItemCost
 Указывает, использовать ли для определения цен предметов скриптовую функцию item_cost. Подробнее...
 
uint __AccountPlayTime
 Минимальное время игры за один аккаунт. Подробнее...
 
uint __MinimumOfflineTime
 минимальное время оффлайна, после которого клиент полностью выйдет из игры Подробнее...
 
bool __DialogDemandRecheck
 Позволяет отключить повторную проверку диалоговых условий в функциях диалоговых условий. Подробнее...
 
uint __NpcMaxTalkers
 максимальное количество одновременно запущенных для нпц диалогов по-умолчанию Подробнее...
 
uint __TalkDistance
 Максимальная дистанция ведения диалога. Подробнее...
 
uint __ShoutDist
 Определяет дистанцию в гексагонах, на которой слышен крик. Подробнее...
 
float __SpritesZoom
 Текущее увеличение в клиенте Подробнее...
 
float __SpritesZoomMax
 Максимальное увеличение в клиенте Подробнее...
 
float __SpritesZoomMin
 Минимальное увеличение в клиенте Подробнее...
 
uint __DlgTalkMinTime
 Минимальное время диалога Подробнее...
 
uint __DlgBarterMinTime
 Минимальное время бартера Подробнее...
 

Модификаторы видимости

475

int __LookChecks
 Позволяет задать проверки, используемые при расчете видимости одного криттера другим. Подробнее...
 
uint __LookDir0
 Процентный штраф к радиусу видимости при прямом взгляде. Подробнее...
 
uint __LookDir1
 Процентный штраф к радиусу видимости при взгяде сбоку. Подробнее...
 
uint __LookDir2
 Процентный штраф к радиусу видимости при нахождении сбоку за пределами взгляда. Подробнее...
 
uint __LookDir3
 Процентный штраф к радиусу видимости при нахождении сзади. Подробнее...
 
uint __LookDir4
 Дополнительная переменная для восьминаправленной геометрии Подробнее...
 
uint __LookSneakDir0
 Процентный штраф к навыку скрытности при прямом взгляде. Подробнее...
 
uint __LookSneakDir1
 Процентный штраф к навыку скрытности при взгяде сбоку. Подробнее...
 
uint __LookSneakDir2
 Процентный штраф к навыку скрытности при нахождении сбоку за пределами взгляда. Подробнее...
 
uint __LookSneakDir3
 Процентный штраф к навыку скрытности при нахождении сзади. Подробнее...
 
uint __LookSneakDir4
 Дополнительная переменная для восьминаправленной геометрии. Подробнее...
 
uint __LookWeight
 Вес (в граммах), за который который навык скрытности уменьшается на 1%. Подробнее...
 
int __MouseX
 Текущая позиция мыши. Подробнее...
 
int __MouseY
 
uint __EncounterTime
 частоты вызова GLOBAL_PROCESS_MOVE . Подробнее...
 
int __StartSpecialPoints
 
int __StartTagSkillPoints
 
int __SkillMaxValue
 
int __SkillModAdd2
 
int __SkillModAdd3
 
int __SkillModAdd4
 
int __SkillModAdd5
 
int __SkillModAdd6
 

Общие функции

300

void Log (string &text)
 Заносит запись в лог-файл. Подробнее...
 
int Random (int minimum, int maximum)
 Возвращает рандомное значение. Подробнее...
 
bool StrToInt (string &text, int &result)
 Конвертирует текст в число. Подробнее...
 
string GetLastError ()
 Возвращает описание последней ошибки. Подробнее...
 
bool RunDialog (Critter &player, Critter &npc, bool ignoreDistance)
 Открывает диалог у игрока. Подробнее...
 
bool RunDialog (Critter &player, uint16 dialogId, uint16 hexX, uint16 hexY, bool ignoreDistance)
 Открывает диалог у игрока. Подробнее...
 
void RadioMessage (uint16 channel, string &text)
 Посылает сообщение по радио. Подробнее...
 
void RadioMessageMsg (uint16 channel, uint16 textMsg, uint strNum)
 Посылает сообщение по радио. Подробнее...
 
void RadioMessageMsg (uint16 channel, uint16 textMsg, uint strNum, string @+lexems)
 Посылает сообщение по радио с обработкой лексем. Подробнее...
 
void SetBestScore (int score, Critter @+player, string &name)
 Установка текста в таблице статистики. Подробнее...
 
bool AddTextListener (int sayType, string &firstStr, uint16 parameter, string &scriptName)
 Создаёт прослушку текста игрока. Подробнее...
 
void EraseTextListener (int sayType, string &firstStr, uint16 parameter)
 Удаляет прослушку текста игрока. Подробнее...
 
NpcPlane CreatePlane ()
 Создаёт новый план, все переменные которого инициализированы нулем. Подробнее...
 
uint GetTick ()
 Возвращает текущее время работы компьютера в миллисекундах. Подробнее...
 
void ViewMap (Map &map, uint look, uint16 hx, uint16 hy, uint8 dir)
 Позволяет просмотреть определенную точку на карте. Подробнее...
 
uint GetScriptId (string &scriptName, string &funcDeclaration)
 Возвращает идентификатор скриптовой функции по её имени. Подробнее...
 
string GetScriptName (uint scriptId)
 Возвращает имя скриптовой функции по её идентификатору. Подробнее...
 

Для гексагонов

280

uint GetCrittersDistantion (Critter &cr1, Critter &cr2)
 Определяет дистанцию между двумя криттерами. Подробнее...
 
uint GetDistantion (uint16 hexX1, uint16 hexY1, uint16 hexX2, uint16 hexY2)
 Определяет дистанцию между двумя гексагонами. Подробнее...
 
uint8 GetDirection (uint16 fromX, uint16 fromY, uint16 toX, uint16 toY)
 Определяет направление, в котором находится гексагон №2 относительно гексагона №1. Подробнее...
 
uint8 GetOffsetDir (uint16 hx, uint16 hy, uint16 tx, uint16 ty, float offset)
 

Для карт и локаций

280

uint CreateLocation (uint16 protoId, uint16 worldX, uint16 worldY, Critter @[]@+critters)
 Создает локацию. Подробнее...
 
void DeleteLocation (uint16 locationId)
 Удаляет указанную локацию. Подробнее...
 
Location GetLocation (uint locId)
 Ищет локацию по её уникальному идентификатору. Подробнее...
 
Location GetLocationByPid (uint16 locPid, uint skipCount)
 Ищет локацию по ее прототипу. Подробнее...
 
uint GetLocations (uint16 worldX, uint16 worldY, uint radius, Location @[]@+locations)
 Ищет локации, находящиеся в указанной точке. Подробнее...
 
Map GetMap (uint mapId)
 Ищет карту по её уникальному идентификатору. Подробнее...
 
Map GetMapByPid (uint16 mapProtoId, uint skipCount)
 Ищет карту по ее прототипу. Подробнее...
 
uint GetAllLocations (uint16 pid, Location @[]@+locations)
 Позволяет найти в игре все локации с указанным прототипом. Подробнее...
 
uint GetAllMaps (uint16 pid, Map @[]@+maps)
 Позволяет найти в игре все карты с указанным прототипом. Подробнее...
 

Для игроков и криттеров

270

uint GetAllNpc (uint16 pid, Critter @[]@+npc)
 Позволяет найти в игре всех NPC с указанным прототипом. Подробнее...
 
Critter GetCritter (uint critterId)
 Ищет криттера по его уникальному номеру. Подробнее...
 
Critter GetPlayer (string &playerName)
 Ищет игрока по его имени. Подробнее...
 
uint GetPlayerId (string &name)
 Позволяет получить идентификатор игрока по его имени. Подробнее...
 
string GetPlayerName (uint playerId)
 Позволяет получить имя игрока по его идентификатору. Подробнее...
 
uint GetAllPlayers (Critter @[]@players)
 Позволяет получить указатели на всех игроков, а так же их количество Подробнее...
 
uint GetRegisteredPlayers (array< uint > &ids, array< string > &names)
 Позволяет получить идентификаторы всех игроков, зарегистрированных на сервере, а так же их количество Подробнее...
 
void DeleteNpc (Critter &npc)
 Удаляет из игры указанного NPC в конце игрового цикла. Подробнее...
 
bool SwapCritters (Critter &cr1, Critter &cr2, bool withInventory, bool withVars)
 (?) Подробнее...
 
uint GetVisibleLocations (uint16 worldX, uint16 worldY, uint radius, Critter @+visibleBy, Location @[]@+locations)
 Возвращает видимые локации в определенном радиусе, если задан параметр visibleBy, то будет так же учитываться видит ли локацию данный криттер. Подробнее...
 
uint GetGlobalMapCritters (uint16 worldX, uint16 worldY, uint radius, int findType, Critter @[]@+critters)
 Для выборки криттеров с глобальной карты Подробнее...
 
bool SetParameterGetBehaviour (uint index, string &funcName)
 Позволяет определить собственную функцию определения значения для указанного параметра криттера. Подробнее...
 
bool SetParameterChangeBehaviour (uint index, string &funcName)
 Позволяет определить собственную функцию-обработчик установки нового значения для указанного параметра криттера. Подробнее...
 
bool SetParameterDialogGetBehaviour (uint index, string &funcName)
 Позволяет определить собственную функцию-обработчик значения для указанного параметра криттера для последующей проверки данного параметра в диалоге. Подробнее...
 
void SetSendParameter (int index, bool enabled)
 Позволяет разрешить пересылку клиенту параметров других персонажей, по-умолчанию отправка всех параметров выключена. Подробнее...
 
void SetChosenSendParameter (int index, bool enabled)
 Позволяет запретить пересылку клиенту параметров активного персонажа, по-умолчанию отправка всех параметров включена. Подробнее...
 

Для переменных

260

GameVar GetGlobalVar (uint16 varId)
 Возвращает глобальную переменную. Подробнее...
 
GameVar GetLocalVar (uint16 varId, uint masterId)
 Возвращает локальную переменную. Подробнее...
 
GameVar GetUnicumVar (uint16 varId, uint masterId, uint slaveId)
 Возвращает уникальную переменную. Подробнее...
 

Для предметов

250

uint GetAllItems (uint16 pid, Item @[]@+items)
 Позволяет найти в игре все предметы с указанным номером прототипа. Подробнее...
 
ProtoItem GetProtoItem (uint16 protoId)
 Ищет прототип предмета, имеющий указанный ID. Подробнее...
 
uint GetBagItems (uint bagId, uint16[]@+pids, uint[]@+minCounts, uint[]@+maxCounts, int[]@+slots)
 Позволяет получить содержимое сумки с указанным номером. Подробнее...
 
void MoveItem (Item &item, uint count, Critter &toCr)
 Перемещает указанный предмет в инвентарь указанного криттера. Подробнее...
 
void MoveItem (Item &item, uint count, Item &toCont, uint stackId)
 Перемещает предмет в предмет-контейнер, присваивая ему указанный специальный ID. Подробнее...
 
void MoveItem (Item &item, uint count, Map &toMap, uint16 toHx, uint16 toHy)
 Перемещает указанный предмет на карту. Подробнее...
 
void MoveItems (Item @[]&items, Critter &toCr)
 Перемещает предметы в передаваемом массиве в инвентарь указанного криттера. Подробнее...
 
void MoveItem (Item @[]&items, Item &toCont, uint stackId)
 Перемещает предметы в передаваемом массиве в предмет-контейнер, присваивая им указанный специальный ID. Подробнее...
 
void MoveItems (Item @[]&items, Map &toMap, uint16 toHx, uint16 toHy)
 Перемещает предметы в передаваемом массиве на карту. Подробнее...
 
void DeleteItem (Item &item)
 Удаляет из игры указанный предмет, независимо от того, где он находится. Подробнее...
 
void DeleteItems (Item @[]&items)
 Удаляет из игры все предметы из переданного массива. Подробнее...
 
uint WorldItemCount (uint16 protoId)
 Статистика количества предметов в игре. Подробнее...
 

Для работы с временем/временными событиями

240

void GetTime (uint16 &year, uint16 &month, uint16 &day_of_week, uint16 &day, uint16 &hour, uint16 &minute, uint16 &second, uint16 &milliseconds)
 Позволяет получить текущее локальное время. Подробнее...
 
void GetGameTime (uint fullSecond, uint16 &year, uint16 &month, uint16 &dayOfWeek, uint16 &day, uint16 &hour, uint16 &minute, uint16 &second)
 возвращает время и дату по указанной полной секунде. Подробнее...
 
uint GetFullSecond (uint16 year, uint16 month, uint16 day, uint16 hour, uint16 minute, uint16 second)
 Возвращает значение года, месяца, дня, часа и минуты в полных минутах. Подробнее...
 
uint CreateTimeEvent (uint beginSecond, string &funcName, bool save)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
uint CreateTimeEvent (uint beginSecond, string &funcName, int value, bool save)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
uint CreateTimeEvent (uint beginSecond, string &funcName, uint value, bool save)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
uint CreateTimeEvent (uint beginSecond, string &funcName, int[]&values, bool save)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
uint CreateTimeEvent (uint beginSecond, string &funcName, uint[]&values, bool save)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
bool GetTimeEvent (uint num, uint &duration, uint[]@+values)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
bool GetTimeEvent (uint num, uint &duration, int[]@+values)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
bool SetTimeEvent (uint num, uint duration, uint[]@+values)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
bool SetTimeEvent (uint num, uint duration, int[]@+values)
 Создает событие, которое произойдет в указанное игровое время. Подробнее...
 
bool EraseTimeEvent (uint num)
 Удаляет событие с указанным номером. Подробнее...
 

Для работы с данными

230

void EraseAnyData (string &name)
 Удаляет данные. Подробнее...
 
bool GetAnyData (string &name, int64[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, int32[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, int16[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, int8[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, uint64[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, uint32[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, uint16[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool GetAnyData (string &name, uint8[]&data)
 Позволяет загрузить сохраненные данные. Подробнее...
 
bool IsAnyData (string &name)
 Проверяет, существуют ли данные с указанным именем. Подробнее...
 
bool SetAnyData (string &name, int64[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, int32[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, int16[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, int8[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint64[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint32[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint16[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint8[]&data)
 Сохраняет или перезаписывает данные по данному имени. Подробнее...
 
bool SetAnyData (string &name, int64[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, int32[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, int16[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, int8[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint64[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint32[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint16[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 
bool SetAnyData (string &name, uint8[]&data, uint dataSize)
 Сохраняет или перезаписывает данные фиксированного размера по данному имени. Подробнее...
 

Функции для работы с константами (*Names.lst)

int GetConstantValue (int constCollection, string @+name)
 Определение значения константы по имени. Подробнее...
 
string GetConstantName (int constCollection, int value)
 Определение имени константы по значению. Подробнее...
 
void AddConstant (int constCollection, string @+name, int value)
 Добавление отдельной константы в коллекцию. Подробнее...
 
bool LoadConstants (int constCollection, string @+fileName, int pathType)
 Загрузка/перезагрузка коллекции. Подробнее...
 

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

bool LoadImage (uint index, string @+imageName, uint imageDepth, int pathType)
 загрузка изображения. Подробнее...
 
uint GetImageColor (uint index, uint x, uint y)
 определение цвета пикселя. Подробнее...
 

Подробное описание

Функции

void Log ( string text)

Заносит запись в лог-файл.

Аргументы
textТекст записи.
int Random ( int  minimum,
int  maximum 
)

Возвращает рандомное значение.

Аргументы
minimumМинимальное значение.
maximumМаксимальное значение.
Возвращает
Рандом в пределах minimum и maximum, включительно.
bool StrToInt ( string text,
int &  result 
)

Конвертирует текст в число.

Понимает отрицательные значения. Пробелы, стоящие впереди, игнорируются. Данные после числа, после первого пробела, игнорируются.

Аргументы
textСтрока, содержащая число.
resultПеременная, в которую записывается результат преобразования.
Возвращает
true – в случае удачного преобразования; false – в противном случае.
string GetLastError ( )

Возвращает описание последней ошибки.

Строка не очищается, так что будьте внимательны: возможно вы увидите ошибку, которая произошла ранее. Все ошибки записываются в лог-файл, с указанием имени контекста, функции, ошибки.

Возвращает
Описание ошибки.
bool RunDialog ( Critter player,
Critter npc,
bool  ignoreDistance 
)

Открывает диалог у игрока.

Аргументы
playerИгрок, у которого откроется диалог.
npcNPC, который должен заговорить с игроком.
ignoreDistanceЕсли true, то диалог запустится на любом растоянии от игрока
Возвращает
true – в случае удачного начала диалога; false – в случае провала.
bool RunDialog ( Critter player,
uint16  dialogId,
uint16  hexX,
uint16  hexY,
bool  ignoreDistance 
)

Открывает диалог у игрока.

Аргументы
playerИгрок, у которого откроется диалог.
dialogIdНомер открываемого диалога.
hexX,hexYПозиция привязки диалога к карте.
ignoreDistanceЕсли true, то диалог запустится на любом растоянии от игрока
Возвращает
true – в случае удачного начала диалога; false – в случае провала.
void RadioMessage ( uint16  channel,
string text 
)

Посылает сообщение по радио.

Аргументы
channelНомер канала.
textСообщение.
void RadioMessageMsg ( uint16  channel,
uint16  textMsg,
uint  strNum 
)

Посылает сообщение по радио.

Строка берется из MSG-файлов.

Аргументы
channelНомер канала.
textMsgНомер MSG-файла (см. Msg nums).
strNumНомер строки.
void RadioMessageMsg ( uint16  channel,
uint16  textMsg,
uint  strNum,
string @+  lexems 
)

Посылает сообщение по радио с обработкой лексем.

Строка берется из MSG-файлов.

Аргументы
channelНомер канала.
textMsgНомер MSG-файла (см. Msg nums).
strNumНомер строки.
lexemsлексемы.
void SetBestScore ( int  score,
Critter @+  player,
string name 
)

Установка текста в таблице статистики.

Аргументы
scoreНомер статистики (см. Scores).
playerИгрок, имя которого будет вписано в статистику.
nameЕсли player равен null, то значение текста для статистики берется из этого аргумента.
bool AddTextListener ( int  sayType,
string firstStr,
uint16  parameter,
string scriptName 
)

Создаёт прослушку текста игрока.

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

void listen_Func(Critter& player, string& text);
  • player – игрок, подходящий под все требования прослушки;
  • text – его текст. Префикс listen_ для функции пишите для удобства, чтобы не путаться в будущем (как и с dlg_, d_, r_...).
Аргументы
sayTypeСм. в Say types.
firstStrСтрока, с которой должно начинаться перехватывамое сообщение. Регистр не учитывается.
parameterДополнительный параметр для проверки. Для SAY_RADIO это номер канала, для остальных – это номер прототипа карты (см. MAPS.TXT).
scriptNameИмя функции.
Возвращает
true – в случае успеха; false – в случае провала.
Прим.
Минимальное значение для параметра firstStr – 5, максимальное – 63.
См. также
EraseTextListener
void EraseTextListener ( int  sayType,
string firstStr,
uint16  parameter 
)

Удаляет прослушку текста игрока.

Для снятия прослушки аргументы этой функции должны быть идентичны с аргументами ранее вызванной функции AddTextListener.

См. также
AddTextListener
NpcPlane CreatePlane ( )

Создаёт новый план, все переменные которого инициализированы нулем.

uint GetTick ( )

Возвращает текущее время работы компьютера в миллисекундах.

void ViewMap ( Map map,
uint  look,
uint16  hx,
uint16  hy,
uint8  dir 
)

Позволяет просмотреть определенную точку на карте.

Механизм аналогичен просмотру карты с глобальной карты.

Аргументы
mapПросматриваемая карта.
lookРадиус области просмотра.
hx,hyКоординаты гексагона просмотра.
dirНаправление взгляда.
uint GetScriptId ( string scriptName,
string funcDeclaration 
)

Возвращает идентификатор скриптовой функции по её имени.

Аргументы
scriptNameИмя функции.
funcDeclarationПолная сигнатура функции.
Возвращает
Идентификатор скрипта.
См. также
GetScriptName
string GetScriptName ( uint  scriptId)

Возвращает имя скриптовой функции по её идентификатору.

Аргументы
scriptIdИдентификатор функции.
Возвращает
Имя функции.
См. также
GetScriptId
uint GetCrittersDistantion ( Critter cr1,
Critter cr2 
)

Определяет дистанцию между двумя криттерами.

Аргументы
cr1Первый криттер.
cr2Второй криттер.
Возвращает
Дистанция между криттерами в гексагонах.
uint GetDistantion ( uint16  hexX1,
uint16  hexY1,
uint16  hexX2,
uint16  hexY2 
)

Определяет дистанцию между двумя гексагонами.

Аргументы
hexX1,hexY1Координаты 1-го гексагона.
hexX2,hexY2Координаты 2-го гексагона.
Возвращает
Дистанция между гексагонами в гексагонах.
uint8 GetDirection ( uint16  fromX,
uint16  fromY,
uint16  toX,
uint16  toY 
)

Определяет направление, в котором находится гексагон №2 относительно гексагона №1.

Аргументы
fromX,fromYКоординаты 1-го гексагона.
toX,toYКоординаты 2-го гексагона.
Возвращает
Направление. Возможные значения: 0 – верх-право, 1 – право, 2 – низ-право, 3 – низ-лево и т.д.
uint8 GetOffsetDir ( uint16  hx,
uint16  hy,
uint16  tx,
uint16  ty,
float  offset 
)
uint CreateLocation ( uint16  protoId,
uint16  worldX,
uint16  worldY,
Critter @@+[]  critters 
)

Создает локацию.

Аргументы
protoIdID прототипа локации (см. файл _maps.fos).
worldX,worldYКоординаты локации на глобальной карте.
crittersМассив указателей на криттеров, которым откроется новая локация.
Возвращает
Уникальный ID новой локации. В случае провала функция возвращает 0.
void DeleteLocation ( uint16  locationId)

Удаляет указанную локацию.

Аргументы
locationIdУникальный ID локации.
Location GetLocation ( uint  locId)

Ищет локацию по её уникальному идентификатору.

Аргументы
locIdУникальный идентификатор локации.
Возвращает
Указатель на экземпляр класса Location. При провале – null.
Location GetLocationByPid ( uint16  locPid,
uint  skipCount 
)

Ищет локацию по ее прототипу.

Аргументы
locPidНомер прототипа локации (см. CITIES.TXT).
skipCountКоличество пропусков при поиске. Для случая если если попадаются локации, имеющие один прототип.
Возвращает
Указатель на экземпляр класса Location. При провале – null.
uint GetLocations ( uint16  worldX,
uint16  worldY,
uint  radius,
Location @@+[]  locations 
)

Ищет локации, находящиеся в указанной точке.

Аргументы
worldX,worldYКоординаты точки на глобальной карте мира.
radiusДополнительный радиус для поиска.
locationsМассив, в конец которого будут записаны найденный локации.
Возвращает
Количество найденных локаций.
Map GetMap ( uint  mapId)

Ищет карту по её уникальному идентификатору.

Аргументы
mapIdУникальный идентификатор карты.
Возвращает
Указатель на экземпляр класса Map. При провале – null.
Map GetMapByPid ( uint16  mapProtoId,
uint  skipCount 
)

Ищет карту по ее прототипу.

Аргументы
mapProtoIdНомер прототипа карты (см. _maps.fos, MAPS.TXT).
skipCountКоличество пропусков при поиске. Для случая если если попадаются карты, имеющие один прототип.
Возвращает
Указатель на экземпляр класса Map. При провале – null.
uint GetAllLocations ( uint16  pid,
Location @@+[]  locations 
)

Позволяет найти в игре все локации с указанным прототипом.

Аргументы
pidНомер прототипа локации (см. CITY.TXT).
locationsМассив, в который будут записаны все найденные локации.
Возвращает
Количество найденных локаций.
uint GetAllMaps ( uint16  pid,
Map @@+[]  maps 
)

Позволяет найти в игре все карты с указанным прототипом.

Аргументы
pidНомер прототипа карты (см. MAPS.TXT).
mapsМассив, в который будут записаны все найденные карты.
Возвращает
Количество найденных карт.
uint GetAllNpc ( uint16  pid,
Critter @@+[]  npc 
)

Позволяет найти в игре всех NPC с указанным прототипом.

Аргументы
pidНомер прототипа NPC.
npcМассив, в который будут записаны все найденные NPC.
Возвращает
Количество найденных NPC.
Critter GetCritter ( uint  critterId)

Ищет криттера по его уникальному номеру.

Аргументы
critterIdУникальный номер криттера.
Возвращает
Указатель на экземпляр класса Critter. В том случае, если криттера с заданным номером не существует или при попытке получить криттера-игрока, находящегося оффлайн – возвращается null.
Critter GetPlayer ( string playerName)

Ищет игрока по его имени.

Аргументы
playerNameИмя (логин) игрока.
Возвращает
Указатель на экземпляр класса Critter, при провале – null.
Прим.
Если игрок не в игре (в оффлайне), то поиск не даст результатов.
uint GetPlayerId ( string name)

Позволяет получить идентификатор игрока по его имени.

Информация берется из базы данных.

Аргументы
nameИмя (логин) игрока.
Возвращает
Идентификатор игрока.
string GetPlayerName ( uint  playerId)

Позволяет получить имя игрока по его идентификатору.

Информация берется из базы данных.

Аргументы
playerIdИдентификатор игрока.
Возвращает
Имя игрока.
uint GetAllPlayers ( Critter @@[]  players)

Позволяет получить указатели на всех игроков, а так же их количество

Аргументы
playersВ данный массив поместятся указатели на игроков.
Возвращает
Количество игроков.
uint GetRegisteredPlayers ( array< uint > &  ids,
array< string > &  names 
)

Позволяет получить идентификаторы всех игроков, зарегистрированных на сервере, а так же их количество

Аргументы
idsМассив идентификаторов.
namesМассив имен.
Возвращает
Количество игроков.
void DeleteNpc ( Critter npc)

Удаляет из игры указанного NPC в конце игрового цикла.

Аргументы
npcNPC, которого необходимо удалить.
bool SwapCritters ( Critter cr1,
Critter cr2,
bool  withInventory,
bool  withVars 
)

(?)

Аргументы
cr1
cr2
withInventory
withVars
Возвращает
uint GetVisibleLocations ( uint16  worldX,
uint16  worldY,
uint  radius,
Critter @+  visibleBy,
Location @@+[]  locations 
)

Возвращает видимые локации в определенном радиусе, если задан параметр visibleBy, то будет так же учитываться видит ли локацию данный криттер.

Аргументы
worldXКоордината X.
worldYКоордината Y.
radiusРадиус.
visibleByЕсли параметр задан, то будет так же учитываться видит ли локацию данный криттер.
locationsМассив локаций.
Возвращает
количество
uint GetGlobalMapCritters ( uint16  worldX,
uint16  worldY,
uint  radius,
int  findType,
Critter @@+[]  critters 
)

Для выборки криттеров с глобальной карты

bool SetParameterGetBehaviour ( uint  index,
string funcName 
)

Позволяет определить собственную функцию определения значения для указанного параметра криттера.

Сигнатура функции:

int _FuncName(Critter& cr, uint index)
Аргументы
indexИндекс параметра (см. Параметры криттеров).
funcNameИмя функции.
Возвращает
true – в случае успешной установки обработчика; false – в противном случае.
См. также
Critter::Param
SetParameterChangeBehaviour
bool SetParameterChangeBehaviour ( uint  index,
string funcName 
)

Позволяет определить собственную функцию-обработчик установки нового значения для указанного параметра криттера.

Сигнатура функции:

void _FuncName(Critter& cr, uint index, int oldValue)
Аргументы
indexИндекс параметра (см. Параметры криттеров).
funcNameИмя функции.
Возвращает
true – в случае успешной установки обработчика; false – в противном случае.
См. также
Critter::Param
Critter::ParamBase
SetParameterGetBehaviour
bool SetParameterDialogGetBehaviour ( uint  index,
string funcName 
)

Позволяет определить собственную функцию-обработчик значения для указанного параметра криттера для последующей проверки данного параметра в диалоге.

Сигнатура функции:

void _FuncName(Critter@ master, Critter@ slave, uint index)
Аргументы
indexИндекс параметра (см. Параметры криттеров).
funcNameИмя функции.
Возвращает
true – в случае успешной установки обработчика; false – в противном случае.
См. также
Critter::Param
Critter::ParamBase
void SetSendParameter ( int  index,
bool  enabled 
)

Позволяет разрешить пересылку клиенту параметров других персонажей, по-умолчанию отправка всех параметров выключена.

См. также
Critter::Param
Critter::ParamBase
void SetChosenSendParameter ( int  index,
bool  enabled 
)

Позволяет запретить пересылку клиенту параметров активного персонажа, по-умолчанию отправка всех параметров включена.

См. также
Critter::Param
Critter::ParamBase
GameVar GetGlobalVar ( uint16  varId)

Возвращает глобальную переменную.

Аргументы
varIdID переменной (см. GVAR_... в файле _vars.fos).
Возвращает
Указатель на экземпляр класса GameVar. При провале – null.
GameVar GetLocalVar ( uint16  varId,
uint  masterId 
)

Возвращает локальную переменную.

Аргументы
varIdID переменной (см. LVAR_... в файле _vars.fos).
masterIdID криттера.
Возвращает
Указатель на экземпляр класса GameVar. При провале – null.
GameVar GetUnicumVar ( uint16  varId,
uint  masterId,
uint  slaveId 
)

Возвращает уникальную переменную.

Аргументы
varIdID переменной (см. UVAR_... в файле _vars.fos).
masterIdID криттера.
slaveIdID второстепенного криттера.
Возвращает
Указатель на экземпляр класса GameVar. При провале – null.
uint GetAllItems ( uint16  pid,
Item @@+[]  items 
)

Позволяет найти в игре все предметы с указанным номером прототипа.

Аргументы
pidНомер прототипа (см. файл ITEMPID.H).
itemsМассив, в который будут записаны все найденные предметы.
Возвращает
Количество найденных предметов.
ProtoItem GetProtoItem ( uint16  protoId)

Ищет прототип предмета, имеющий указанный ID.

Аргументы
protoIdID Прототипа предмета (см. файл ITEMPID.H).
Возвращает
Указатель на экземпляр класса ProtoItem. При провале – null.
uint GetBagItems ( uint  bagId,
uint16 @+[]  pids,
uint @+[]  minCounts,
uint @+[]  maxCounts,
int @+[]  slots 
)

Позволяет получить содержимое сумки с указанным номером.

Аргументы
bagIdНомер сумки (см. _bags.fos).
pidsМассив, к которому будут дописаны номера прототипов предметов в сумке.
minCountsМассив, к которому будут дописано минимальное количество предметов для каждого прототипа.
maxCountsМассив, к которому будут дописано максимальное количество предметов для каждого прототипа.
slotsМассив, к которому будут дописаны номера слотов размещения для каждого прототипа.
Возвращает
Общее количество предметов в сумке.
См. также
ST_BAG_ID
void MoveItem ( Item item,
uint  count,
Critter toCr 
)

Перемещает указанный предмет в инвентарь указанного криттера.

Аргументы
itemПеремещаемый предмет.
countКоличество перемещаемых предметов.
toCrКриттер, к которому перемещают предмет.
См. также
MoveItems(Item@[]&, Critter&)
MoveItem(Item&, uint, Item&, uint)
MoveItem(Item&, uint, Map&, uint16, uint16)
void MoveItem ( Item item,
uint  count,
Item toCont,
uint  stackId 
)

Перемещает предмет в предмет-контейнер, присваивая ему указанный специальный ID.

Специальный ID предмета позволяет в дальнейшем идентифицировать перекладываемый предмет среди других предметов в контейнере.

Эта функция используется, например, в хранилищах, где игрок оставляет свои вещи. Как правило, для хранения предметов в них используется единственный предмет-контейнер, в который складываются вещи всех игроков. В качестве stackId используется идентификатор криттера.

Аргументы
itemПеремещаемый предмет.
countКоличество перемещаемых предметов.
toContПредмет-контейнер, в который перемещают предмет.
stackIdНовый специальный ID предмета (см. Item::SpecialId).
См. также
Item::SpecialId
MoveItems(Item@[]&, Item&, uint)
MoveItem(Item&, uint, Critter&)
MoveItem(Item&, uint, Map&, uint16, uint16)
void MoveItem ( Item item,
uint  count,
Map toMap,
uint16  toHx,
uint16  toHy 
)

Перемещает указанный предмет на карту.

Аргументы
itemПеремещаемый предмет.
countКоличество перемещаемых предметов.
toMapКарта, на которую должен быть перемещен предмет.
toHx,toHyКоординаты гексагона карты, на который следует переместить предмет.
См. также
Item::SpecialId
MoveItems(Item@[]&, Map&, uint16, uint16)
MoveItem(Item&, uint, Critter&)
MoveItem(Item&, uint, Item&, uint)
void MoveItems ( Item @&[]  items,
Critter toCr 
)

Перемещает предметы в передаваемом массиве в инвентарь указанного криттера.

Аргументы
itemsМассив перемещаемых предметов.
toCrКриттер, к которому должны быть перемещены предметы.
См. также
MoveItem(Item&, uint, Critter&)
void MoveItem ( Item @&[]  items,
Item toCont,
uint  stackId 
)

Перемещает предметы в передаваемом массиве в предмет-контейнер, присваивая им указанный специальный ID.

Аргументы
itemsМассив перемещаемых предметов.
toContПредмет-контейнер, в который должны быть перемещены предметы.
stackIdНовый специальный ID предмета (см. Item::SpecialId).
См. также
Item::SpecialId
MoveItem(Item&, uint, Item&, uint)
void MoveItems ( Item @&[]  items,
Map toMap,
uint16  toHx,
uint16  toHy 
)

Перемещает предметы в передаваемом массиве на карту.

Аргументы
itemsМассив перемещаемых предметов.
toMapКарта, на которую должны быть перемещены предметы.
toHx,toHyКоординаты гексагона карты, на который следует переместить предметы.
См. также
Item::SpecialId
MoveItem(Item&, uint, Map&, uint16, uint16)
void DeleteItem ( Item item)

Удаляет из игры указанный предмет, независимо от того, где он находится.

Аргументы
itemПредмет, который необходимо удалить.
См. также
DeleteItems
void DeleteItems ( Item @&[]  items)

Удаляет из игры все предметы из переданного массива.

Аргументы
itemsМассив предметов, которые необходимо удалить.
Прим.
Допускается null в элементах массива items.
См. также
DeleteItem
uint WorldItemCount ( uint16  protoId)

Статистика количества предметов в игре.

Аргументы
protoIdПрототип предмета.
Возвращает
Общее количество предметов с указанным прототипом.
void GetTime ( uint16 &  year,
uint16 &  month,
uint16 &  day_of_week,
uint16 &  day,
uint16 &  hour,
uint16 &  minute,
uint16 &  second,
uint16 &  milliseconds 
)

Позволяет получить текущее локальное время.

Аргументы
[out]yearГод
[out]monthМесяц
[out]day_of_weekДень недели
[out]dayДень
[out]hourЧас
[out]minuteМинута
[out]secondСекунда
[out]millisecondsМиллисекунда
void GetGameTime ( uint  fullSecond,
uint16 &  year,
uint16 &  month,
uint16 &  dayOfWeek,
uint16 &  day,
uint16 &  hour,
uint16 &  minute,
uint16 &  second 
)

возвращает время и дату по указанной полной секунде.

Аргументы
[in]fullSecondИгровое время в полных секундах.
[out]yearГод, полученный по полной секунде.
[out]monthМесяц, полученный по полной секунде.
[out]dayOfWeekДень недели, полученный по полной секунде.
[out]dayДень месяца, полученный по полной секунде.
[out]hourЧас, полученный по полной секунде.
[out]minuteМинута, полученная по полной секунде.
[out]secondСекунда, полученная по полной секунде.
См. также
GetFullSecond
uint GetFullSecond ( uint16  year,
uint16  month,
uint16  day,
uint16  hour,
uint16  minute,
uint16  second 
)

Возвращает значение года, месяца, дня, часа и минуты в полных минутах.

Аргументы
yearГод.
month,day,hour,minute,secondМесяц, день, час, минута и секунда соответственно.
Возвращает
Полная секунда.
Прим.
При некорректных значениях берутся текущие значения.
См. также
GetGameTime
uint CreateTimeEvent ( uint  beginSecond,
string funcName,
bool  save 
)

Создает событие, которое произойдет в указанное игровое время.

Сигнатура функции-обработчика события:

uint e_FuncName(uint[]@ values);
  • values Хранит переданные параметры.

Если передавались криттеры или предметы, то в массиве values хранятся их идентификаторы.

Если не было передано ни одного параметра, то values == null.

В конец массива values записывается количество переданных криттеров и предметов:

uint len = values.length();
crLen = values[len-2]; // количество криттеров
itemLen = values[len-1]; // количество предметов
Аргументы
beginSecondВремя, в полных минутах, когда произойдет событие.
funcNameИмя функции-события. Поддерживает два формата указания имени функции:
  • func_name – берется текущий модуль,
  • module_name@func_name – берется модуль указанный в module_name.
saveФлаг, который определяет, необходимо ли сохранять запись о событии в базе данных сервера. true – да, необходимо, false – нет.
Возвращает
Номер события. В случае провала функция возвращает 0.
uint CreateTimeEvent ( uint  beginSecond,
string funcName,
int  value,
bool  save 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
beginSecondВремя, в полных минутах, когда произойдет событие.
funcNameИмя функции-события (см. CreateTimeEvent(uint, string&, bool)).
valueЗначение, передаваемое вместе с событием.
saveФлаг, который определяет, необходимо ли сохранять запись о событии в базе данных сервера. true – да, необходимо, false – нет.
Возвращает
Номер события. В случае провала функция возвращает 0.
См. также
CreateTimeEvent(uint, string&, bool)
uint CreateTimeEvent ( uint  beginSecond,
string funcName,
uint  value,
bool  save 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
beginSecondВремя, в полных минутах, когда произойдет событие.
funcNameИмя функции-события (см. CreateTimeEvent(uint, string&, bool)).
valueЗначение, передаваемое вместе с событием.
saveФлаг, который определяет, необходимо ли сохранять запись о событии в базе данных сервера. true – да, необходимо, false – нет.
Возвращает
Номер события. В случае провала функция возвращает 0.
См. также
CreateTimeEvent(uint, string&, bool)
uint CreateTimeEvent ( uint  beginSecond,
string funcName,
int &[]  values,
bool  save 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
beginSecondВремя, в полных минутах, когда произойдет событие.
funcNameИмя функции-события (см. CreateTimeEvent(uint, string&, bool)).
valuesЗначения, передаваемые вместе с событием.
saveФлаг, который определяет, необходимо ли сохранять запись о событии в базе данных сервера. true – да, необходимо, false – нет.
Возвращает
Номер события. В случае провала функция возвращает 0.
См. также
CreateTimeEvent(uint, string&, bool)
uint CreateTimeEvent ( uint  beginSecond,
string funcName,
uint &[]  values,
bool  save 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
beginSecondВремя, в полных минутах, когда произойдет событие.
funcNameИмя функции-события (см. CreateTimeEvent(uint, string&, bool)).
valuesЗначения, передаваемые вместе с событием.
saveФлаг, который определяет, необходимо ли сохранять запись о событии в базе данных сервера. true – да, необходимо, false – нет.
Возвращает
Номер события. В случае провала функция возвращает 0.
См. также
CreateTimeEvent(uint, string&, bool)
bool GetTimeEvent ( uint  num,
uint &  duration,
uint @+[]  values 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
numНомер события
durationвремя до выполнения данного события в секундах (не полная секунда).
valuesЗначения, передаваемые вместе с событием.
Возвращает
Возвращает false, если событие не найдено.
См. также
CreateTimeEvent(uint, string&, bool)
bool GetTimeEvent ( uint  num,
uint &  duration,
int @+[]  values 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
numНомер события
durationвремя до выполнения данного события в секундах (не полная секунда).
valuesЗначения, передаваемые вместе с событием.
Возвращает
Возвращает false, если событие не найдено.
См. также
CreateTimeEvent(uint, string&, bool)
bool SetTimeEvent ( uint  num,
uint  duration,
uint @+[]  values 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
numНомер события
durationвремя до выполнения данного события в секундах (не полная секунда).
valuesЗначения, передаваемые вместе с событием.
Возвращает
Возвращает false, если событие не найдено.
См. также
CreateTimeEvent(uint, string&, bool)
bool SetTimeEvent ( uint  num,
uint  duration,
int @+[]  values 
)

Создает событие, которое произойдет в указанное игровое время.

Аргументы
numНомер события
durationвремя до выполнения данного события в секундах (не полная секунда).
valuesЗначения, передаваемые вместе с событием.
Возвращает
Возвращает false, если событие не найдено.
См. также
CreateTimeEvent(uint, string&, bool)
bool EraseTimeEvent ( uint  num)

Удаляет событие с указанным номером.

Номер события возвращается при его создании.

Аргументы
numномер удаляемого события.
Возвращает
Возвращает false, если событие не найдено.
См. также
CreateTimeEvent(uint, string&, bool)
void EraseAnyData ( string name)

Удаляет данные.

Аргументы
nameУникальное имя данных.
bool GetAnyData ( string name,
int64 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, int64[]&)
SetAnyData(string&, int64[]&, uint)
bool GetAnyData ( string name,
int32 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, int32[]&)
SetAnyData(string&, int32[]&, uint)
bool GetAnyData ( string name,
int16 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, int16[]&)
SetAnyData(string&, int16[]&, uint)
bool GetAnyData ( string name,
int8 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, int8[]&)
SetAnyData(string&, int8[]&, uint)
bool GetAnyData ( string name,
uint64 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, uint64[]&)
SetAnyData(string&, uint64[]&, uint)
bool GetAnyData ( string name,
uint32 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, uint32[]&)
SetAnyData(string&, uint32[]&, uint)
bool GetAnyData ( string name,
uint16 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, uint16[]&)
SetAnyData(string&, uint16[]&, uint)
bool GetAnyData ( string name,
uint8 &[]  data 
)

Позволяет загрузить сохраненные данные.

Аргументы
nameУникальное имя данных.
dataМассив, в который будут помещены данные. Массив не обнуляется, а дописывается найденными данными.
Возвращает
true, если операция успешна; false – если нет.
См. также
SetAnyData(string&, uint8[]&)
SetAnyData(string&, uint8[]&, uint)
bool IsAnyData ( string name)

Проверяет, существуют ли данные с указанным именем.

Аргументы
nameПроверяемое имя.
Возвращает
true, если существуют; false – если нет.
bool SetAnyData ( string name,
int64 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int64[]&)
SetAnyData(string&, int64[]&, uint)
bool SetAnyData ( string name,
int32 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int32[]&)
SetAnyData(string&, int32[]&, uint)
bool SetAnyData ( string name,
int16 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int16[]&)
SetAnyData(string&, int16[]&, uint)
bool SetAnyData ( string name,
int8 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int8[]&)
SetAnyData(string&, int8[]&, uint)
bool SetAnyData ( string name,
uint64 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint64[]&)
SetAnyData(string&, uint64[]&, uint)
bool SetAnyData ( string name,
uint32 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint32[]&)
SetAnyData(string&, uint32[]&, uint)
bool SetAnyData ( string name,
uint16 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint16[]&)
SetAnyData(string&, uint16[]&, uint)
bool SetAnyData ( string name,
uint8 &[]  data 
)

Сохраняет или перезаписывает данные по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint8[]&)
SetAnyData(string&, uint8[]&, uint)
bool SetAnyData ( string name,
int64 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int64[]&)
SetAnyData(string&, int64[]&)
bool SetAnyData ( string name,
int32 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int32[]&)
SetAnyData(string&, int32[]&)
bool SetAnyData ( string name,
int16 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int16[]&)
SetAnyData(string&, int16[]&)
bool SetAnyData ( string name,
int8 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, int8[]&)
SetAnyData(string&, int8[]&)
bool SetAnyData ( string name,
uint64 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint64[]&)
SetAnyData(string&, uint64[]&)
bool SetAnyData ( string name,
uint32 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint32[]&)
SetAnyData(string&, uint32[]&)
bool SetAnyData ( string name,
uint16 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint16[]&)
SetAnyData(string&, uint16[]&)
bool SetAnyData ( string name,
uint8 &[]  data,
uint  dataSize 
)

Сохраняет или перезаписывает данные фиксированного размера по данному имени.

Эти данные не исчезнут после рестарта сервера. Максимальный размер массива – 65535 байт.

Аргументы
nameУникальное имя данных.
dataМассив сохраняемых данных.
dataSizeРазмер сохраняемых данных.
Возвращает
true, если операция успешна; false – если нет.
См. также
GetAnyData(string&, uint8[]&)
SetAnyData(string&, uint8[]&)
int GetConstantValue ( int  constCollection,
string @+  name 
)

Определение значения константы по имени.

Аргументы
constCollectionНомер коллекции, см. Constants collections в _defines.fos.
nameИмя константы.
Возвращает
Значение константы.
string GetConstantName ( int  constCollection,
int  value 
)

Определение имени константы по значению.

Аргументы
constCollectionНомер коллекции, см. Constants collections в _defines.fos.
valueЗначение константы.
Возвращает
Имя константы.
void AddConstant ( int  constCollection,
string @+  name,
int  value 
)

Добавление отдельной константы в коллекцию.

Аргументы
constCollectionНомер коллекции, см. Constants collections в _defines.fos.
nameИмя константы.
valueЗначение константы.
bool LoadConstants ( int  constCollection,
string @+  fileName,
int  pathType 
)

Загрузка/перезагрузка коллекции.

Аргументы
constCollectionНомер коллекции, см. Constants collections в _defines.fos.
fileNameИмя файла.
pathTypeПуть.
bool LoadImage ( uint  index,
string @+  imageName,
uint  imageDepth,
int  pathType 
)

загрузка изображения.

Аргументы
indexНомер изображения, с которым идет работа, перечисления см. в Game images _defines.fos;
imageNameИмя файла, формат должен быть только PNG, при null удаляется текущее изображение;
imageDepthГлубина создаваемого изображения, допустимые значения 4 - ARGB, 3 - RGB, 2 - GB, 1 - B, необходима для оптимизации работы с памятью, что бы не выделять память, которая не будет использоваться (узнать кол-во выделенной памяти под изображения можно во вкладке сервера Memory -> Images);
pathTypeТип пути.
Возвращает
true, если операция успешна; false – если нет.
uint GetImageColor ( uint  index,
uint  x,
uint  y 
)

определение цвета пикселя.

Аргументы
indexНомер изображения, с которым идет работа, перечисления см. в Game images _defines.fos;
xКоординаты пикселя X;
yКоординаты пикселя Y.
Возвращает
цвет

Переменные

const uint16 __Year

Текущий год.

Устанавливается в предопределенной функции сервера get_start_time.

См. также
get_start_time
const uint16 __Month

Текущий месяц.

Возможные значения
1 – 12.
const uint16 __Day

Текущий день.

Возможные значения
1 – (в зависимости от месяца). Также учитываются високосные года.
const uint16 __Hour

Текущий час.

Возможные значения
0 – 23.
const uint16 __Minute

Текущая минута.

Возможные значения
0 – 59.
const uint16 __Second

Текущая секунда.

Возможные значения
0 – 59.
const uint16 __FullSecond

Полная текущая секунда, учитывающая текущие год, месяц, день, час, минуту и секнуду.

const uint16 __TimeMultiplier

Коэффициент ускорения времени.

Устанавливается в предопределенной функции сервера get_start_time.

См. также
get_start_time
uint __Breaktime

(?)

uint __TimeoutTransfer

(?)

uint __TimeoutBattle

(?)

uint __ApRegeneration

(?)

uint __RtApCostCritterWalk

Величина штрафа AP в боевом режиме при ходьбе.

uint __RtApCostCritterRun

Величина штрафа AP в боевом режиме при беге.

uint __RtApCostMoveItemContainer

(?)

uint __RtApCostMoveItemInventory

(?)

uint __RtApCostPickItem

(?)

uint __RtApCostDropItem

(?)

uint __RtApCostReloadWeapon

(?)

uint __RtApCostPickCritter

(?)

uint __RtApCostUseItem

(?)

uint __RtApCostUseSkill

(?)

uint __TbApCostCritterMove

(?)

uint __TbApCostMoveItemContainer

(?)

uint __TbApCostMoveItemInventory

(?)

uint __TbApCostPickItem

(?)

uint __TbApCostDropItem

(?)

uint __TbApCostReloadWeapon

(?)

uint __TbApCostPickCritter

(?)

uint __TbApCostUseItem

(?)

uint __TbApCostUseSkill

(?)

uint __ApCostAimEyes

(?)

uint __ApCostAimHead

(?)

uint __ApCostAimGroin

(?)

uint __ApCostAimTorso

(?)

uint __ApCostAimArms

(?)

uint __ApCostAimLegs

(?)

uint __HitAimEyes

(?)

uint __HitAimHead

(?)

uint __HitAimGroin

(?)

uint __HitAimTorso

(?)

uint __HitAimArms

(?)

uint __HitAimLegs

(?)

bool __RtAlwaysRun
bool __TbAlwaysRun
bool __AlwaysRun

Всегда бежать, по-умолчанию false.

uint __AlwaysRunMoveDist

бежать при клике, при расстоянии больше-равно, чем данное значение

uint __AlwaysRunUseDist

бежать при использовании/разговоре/etc, при расстоянии больше-равно, чем данное значение

uint __GlobalMapWidth

Ширина глобальной карты мира.

Максимальное значение
100.
uint __GlobalMapHeight

Высота глобальной карты мира.

Максимальное значение
100.
uint __GlobalMapZoneLength

Длина зоны на глобальной карте.

Максимальное значение
500.
uint __GlobalMapMaxGroupCount

Максимальная численность группы.

uint __GlobalMapMoveTime

Указывает на то как часто вызывать обработчик глобальной карты GLOBAL_PROCESS_MOVE.

bool __MapHexagonal

Тип изометрии true - гексогональная, false - четырехугольная.

int __MapHexWidth

Ширина гекса

int __MapHexHeight

Высота гекса

int __MapHexLineHeight

Высота линии гексов

int __MapTileOffsX

Смещение тайлов земли по горизонтали

int __MapTileOffsY

Смещение тайлов земли по вертикали

int __MapRoofOffsX

Смещение тайлов крыши по горизонтали

int __MapRoofOffsY

Смещение тайлов крыши по вертикали

int __MapRoofSkipSize

Кол-во гексов на один тайл крыши (нужно для его корректного скрывания)

float __MapCameraAngle

Угол для рендеринга трехмерных моделей

bool __MapSmoothPath

Сглаживание пути при перемещениях

string __MapDataPrefix

Путь и префикс для файлов геометрии

uint __FixBoyDefaultExperience

Опыт, даваемый за крафт по умолчанию.

uint __SneakDivider

Делитель для режима скрытности.

Формула
(20 + Perception * 3) - (Sneak / __SneakDivider).
bool __NoAnswerShuffle

Запрет перемешивания вариантов диалога.

bool __RunOnCombat

Возможность бегать в битве (для пошагового режима не актуально).

bool __RunOnTransfer

Возможность бегать при таймауте на переходы.

uint __CritterIdleTick

Задаёт периодичность вызова предопределенной функции critter_idle.

uint __LevelCap

Ограничение по уровню.

bool __LevelCapAddExperience

Будет ли начисляться опыт при достижении игроком __LevelCap (просто опыт, без перков, скиллпоинтов).

uint __LookNormal

Нормальный радиус обзора криттера.

Полная формула
critter.LookRadius = __LookNormal + critter.Perception * 3 - opponent.Sneak / __SneakDivider + critter.BonusLook
uint __LookMinimum

Минимальная видимость криттера.

Актуальна при ситуациях, когда модификатор скрытности превышает видимость.

int __DeadHitPoints

Количество хит-поинтов, при котором наступает смерть криттера.

uint __BagRefreshTime

Время обновления сумок, используемое по-умолчанию.

См. также
Critter::GetBagRefreshTime
Critter::SetBagRefreshTime
uint __WisperDist

Определяет дистанцию в гексагонах, на которой слышен шепот.

bool __CustomItemCost

Указывает, использовать ли для определения цен предметов скриптовую функцию item_cost.

uint __AccountPlayTime

Минимальное время игры за один аккаунт.

Указывается в реальных минутах. Чтобы отключить этот механизм, присвойте переменной 0.

uint __MinimumOfflineTime

минимальное время оффлайна, после которого клиент полностью выйдет из игры

bool __DialogDemandRecheck

Позволяет отключить повторную проверку диалоговых условий в функциях диалоговых условий.

Прим.
При повторном вызове диалогового условия переменная равна true; при первом – false.
uint __NpcMaxTalkers

максимальное количество одновременно запущенных для нпц диалогов по-умолчанию

uint __TalkDistance

Максимальная дистанция ведения диалога.

См. также
ST_TALK_DISTANCE
uint __ShoutDist

Определяет дистанцию в гексагонах, на которой слышен крик.

float __SpritesZoom

Текущее увеличение в клиенте

float __SpritesZoomMax

Максимальное увеличение в клиенте

Прим.
Максимальное значение 10.0f
float __SpritesZoomMin

Минимальное увеличение в клиенте

Прим.
Минимальное значение 0.2f
uint __DlgTalkMinTime

Минимальное время диалога

uint __DlgBarterMinTime

Минимальное время бартера

int __LookChecks

Позволяет задать проверки, используемые при расчете видимости одного криттера другим.

См. Look checks.

uint __LookDir0

Процентный штраф к радиусу видимости при прямом взгляде.

uint __LookDir1

Процентный штраф к радиусу видимости при взгяде сбоку.

uint __LookDir2

Процентный штраф к радиусу видимости при нахождении сбоку за пределами взгляда.

uint __LookDir3

Процентный штраф к радиусу видимости при нахождении сзади.

uint __LookDir4

Дополнительная переменная для восьминаправленной геометрии

uint __LookSneakDir0

Процентный штраф к навыку скрытности при прямом взгляде.

uint __LookSneakDir1

Процентный штраф к навыку скрытности при взгяде сбоку.

uint __LookSneakDir2

Процентный штраф к навыку скрытности при нахождении сбоку за пределами взгляда.

uint __LookSneakDir3

Процентный штраф к навыку скрытности при нахождении сзади.

uint __LookSneakDir4

Дополнительная переменная для восьминаправленной геометрии.

uint __LookWeight

Вес (в граммах), за который который навык скрытности уменьшается на 1%.

int __MouseX

Текущая позиция мыши.

int __MouseY
uint __EncounterTime

частоты вызова GLOBAL_PROCESS_MOVE .

int __StartSpecialPoints
int __StartTagSkillPoints
int __SkillMaxValue
int __SkillModAdd2
int __SkillModAdd3
int __SkillModAdd4
int __SkillModAdd5
int __SkillModAdd6