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 Игрок, у которого откроется диалог.
npc NPC, который должен заговорить с игроком.
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 
)

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

Аргументы
protoId ID прототипа локации (см. файл _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 в конце игрового цикла.

Аргументы
npc NPC, которого необходимо удалить.
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 )

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

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

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

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

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

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

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

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

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

Аргументы
protoId ID Прототипа предмета (см. файл 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
Converted from CHM to HTML with chm2web Pro 2.85 (unicode)