|  | FOnline
    | 
| Функции | |
| bool | start () | 
| Вызывается при запуске клиента или в случае, если придет обновленный скрипт client_main.fos.  Подробнее... | |
| uint | loop () | 
| Функция, вызываемая движком с задаваемой периодичностью.  Подробнее... | |
| void | render_iface () | 
| Вызывается клиентом при отрисовке интерфейса.  Подробнее... | |
| void | render_map () | 
| Вызывается при отрисовке графики на карте с учетом очереди вывода спрайтов.  Подробнее... | |
| bool | out_message (string &message, int &sayType) | 
| Обрабатывает исходящие от игрока сообщения.  Подробнее... | |
| bool | in_message (string &message, int &sayType, uint &critterId, uint &delay) | 
| Обрабатывает входящие сообщения.  Подробнее... | |
| bool | map_message (string &message, uint16 &hexX, uint16 &hexY, uint &color, uint &delay) | 
| Вызывается при получении сообщения на карте.  Подробнее... | |
| string | item_description (ItemCl &item, int lookType) | 
| Вызываются тогда, когда необходимо сформировать описание для предмета.  Подробнее... | |
| string | critter_description (CritterCl &cr, int lookType) | 
| Вызываются тогда, когда необходимо сформировать описание криттера.  Подробнее... | |
| string | generic_description (int descType, int &offsX, int &offsY) | 
| Вызывается тогда, когда необходимо сформировать какое-либо описание в игре.  Подробнее... | |
| bool | get_elevator (uint type, uint[]&data) | 
| Вызывается тогда, когда клиенту необходимо сформировать интерфейс для лифта.  Подробнее... | |
| void | critter_in (CritterCl &cr) | 
| Вызывается при появлении какого-либо криттера в игре.  Подробнее... | |
| void | critter_out (CritterCl &cr) | 
| Вызывается при изчезании какого-либо криттера в игре.  Подробнее... | |
| void | item_map_in (ItemCl &item) | 
| Вызывается при появлении предмета на карте.  Подробнее... | |
| void | item_map_changed (ItemCl &itemNow, ItemCl &itemBefore) | 
| Вызывается при смене предмета на карте.  Подробнее... | |
| void | item_map_out (ItemCl &item) | 
| Вызывается при исчезновении предмета с карты.  Подробнее... | |
| void | item_inv_in (ItemCl &item) | 
| Вызывается при появлении предмета в инвентаре.  Подробнее... | |
| void | item_inv_out (ItemCl &item) | 
| Вызывается при исчезновении предмета из инвентаря.  Подробнее... | |
| void | item_drop (ItemCl &item) | 
| Вызывается при выкидывании предмета криттером.  Подробнее... | |
| void | animation2d_process (bool animateStay, CritterCl &cr, uint anim1, uint anim2, ItemCl @item) | 
| Вызывается перед проигрыванием 2D анимации.  Подробнее... | |
| void | animation3d_process (bool animateStay, CritterCl &cr, uint anim1, uint anim2, ItemCl @item) | 
| Вызывается перед проигрыванием 3D анимации.  Подробнее... | |
| uint | item_cost (ItemCl &item, CritterCl &chosen, CritterCl &npc, bool sell) | 
| (?)  Подробнее... | |
| bool | check_perk (CritterCl &cr, uint perk) | 
| (?)  Подробнее... | |
| void | player_data_generate (int[]&data) | 
| (?)  Подробнее... | |
| bool | player_data_check (int[]&data) | 
| (?)  Подробнее... | |
| void | critter_action (bool localCall, CritterCl &cr, int action, int actionExt, ItemCl @item) | 
| Вызывается, когда криттер производит какое-либо действие.  Подробнее... | |
| void | filename_logfile (string &filename) | 
| Позволяет изменить имя файла лога.  Подробнее... | |
| void | filename_screenshot (string &filename) | 
| Позволяет изменить имя файла скриншота.  Подробнее... | |
| bool | player_allowcommand (Critter @cr, string @adminPanel, uint8 command) | 
| Регулирует доступ к командам сервера  Подробнее... | |
| bool | critter_check_move_item (Critter &cr, Item &item, uint8 toSlot, Item @itemSwap) | 
| Вызызывается перед каждым перемещением предмета у криттера.  Подробнее... | |
| GUI | |
| int | get_active_screen () | 
| Вызывается движком, чтобы получить активное окно.  Подробнее... | |
| void | screen_change (bool show, int screen, int p0, int p1, int p2) | 
| Позволяет определить поведение при смене окон.  Подробнее... | |
| bool | mouse_down (int click) | 
| Вызывается при нажатии кнопки мыши.  Подробнее... | |
| bool | mouse_up (int click) | 
| Вызывается при отжатии кнопки мыши.  Подробнее... | |
| void | mouse_move (int x, int y) | 
| Вызывается при перемещении курсора.  Подробнее... | |
| bool | key_down (uint8 key) | 
| Вызывается при нажатии клавиши.  Подробнее... | |
| bool | key_up (uint8 key) | 
| Вызывается при отжатии клавиши.  Подробнее... | |
| void | input_lost () | 
| Вызывается при потере устройства: мыши или клавиатуры.  Подробнее... | |
| Боевка | |
| void | combat_result (uint[]&data) | 
| Принимает данные, посланные в Critter::SendCombatResult.  Подробнее... | |
| int | to_hit (CritterCl &chosen, CritterCl &target, ProtoItem &weapon, uint8 weaponMode) | 
| Вызывается движком для расчета отображаемого в клиенте шанса попадания.  Подробнее... | |
| string | critter_animation (int animType, uint crType, uint anim1, uint anim2, uint &pass, uint &flags, int &ox, int &oy) | 
| Функция вызываемая в момент загрузки нужной анимации.  Подробнее... | |
| bool | critter_animation_substitute (int animType, uint crTypeBase, uint anim1Base, uint anim2Base, uint &crType, uint &anim1, uint &anim2) | 
| Если не удалось загрузить анимацию (и uint& pass не изменился), то вызывается данная функция для определения замены анимации (например, удар левой рукой можно заменить на удар правой).  Подробнее... | |
| bool | critter_animation_fallout (uint crType, uint &anim1, uint &anim2, uint &anim1ex, uint &anim2ex, uint &flags) | 
| Т.  Подробнее... | |
| bool start | ( | ) | 
Вызывается при запуске клиента или в случае, если придет обновленный скрипт client_main.fos.
false игра не запустится. | uint loop | ( | ) | 
Функция, вызываемая движком с задаваемой периодичностью.
Период задается с помощью возвращаемого значения.
| void render_iface | ( | ) | 
Вызывается клиентом при отрисовке интерфейса.
Функции Draw* можно использовать только здесь. 
| void render_map | ( | ) | 
Вызывается при отрисовке графики на карте с учетом очереди вывода спрайтов.
Функция вызывается перед отрисовкой первого слоя интерфейса. Функции DrawMap* можно использовать только здесь.
| bool out_message | ( | string & | message, | 
| int & | sayType | ||
| ) | 
Обрабатывает исходящие от игрока сообщения.
| [in,out] | message | Текст сообщения. | 
| [in,out] | sayType | Тип текста (см. Say types). | 
false сообщение не отправляется. | bool in_message | ( | string & | message, | 
| int & | sayType, | ||
| uint & | critterId, | ||
| uint & | delay | ||
| ) | 
Обрабатывает входящие сообщения.
| [in,out] | message | Текст входящего сообщения. Текст может быть раскрашены посредством тега "|" (0xAARRGGBB, если AA равно нулю, то прозрачность не учитывается). | 
| [in,out] | sayType | Тип текста (см. Say types). | 
| [in,out] | critterId | Идентификатор криттера, от которого пришло сообщение. | 
| [in,out] | delay | Время задержки сообщения. | 
TextDelay + длина сообщения * 100 миллисекунд. | bool map_message | ( | string & | message, | 
| uint16 & | hexX, | ||
| uint16 & | hexY, | ||
| uint & | color, | ||
| uint & | delay | ||
| ) | 
Вызывается при получении сообщения на карте.
| [in,out] | message | Текст сообщения. | 
| [in,out] | hexX,hexY | Координаты источника сообщения. | 
| [in,out] | color | Цвет сообщения. | 
| [in,out] | delay | Время задержки сообщения. | 
TextDelay + длина сообщения * 100 миллисекунд. Вызываются тогда, когда необходимо сформировать описание для предмета.
| item | Предмет, для которого формируется описание. | 
| lookType | См. Item look types. | 
Вызываются тогда, когда необходимо сформировать описание криттера.
| cr | Криттер, для которого формируется описание. | 
| lookType | См. Critter look types. | 
| string generic_description | ( | int | descType, | 
| int & | offsX, | ||
| int & | offsY | ||
| ) | 
Вызывается тогда, когда необходимо сформировать какое-либо описание в игре.
| descType | Тип описания (см. Generic descriptions types). | |
| [out] | offsX,offsY | Смещение описания от базовой точки. | 
| bool get_elevator | ( | uint | type, | 
| uint &[] | data | ||
| ) | 
Вызывается тогда, когда клиенту необходимо сформировать интерфейс для лифта.
| type | Тип лифта (см. Elevators). | |
| [out] | data | Данные, необходимые для формирования интерфейса. | 
true – в случае, если интерфейс создать можно; false – в противном случае. | void critter_in | ( | CritterCl & | cr | ) | 
Вызывается при появлении какого-либо криттера в игре.
| cr | Входящий криттер. | 
| void critter_out | ( | CritterCl & | cr | ) | 
Вызывается при изчезании какого-либо криттера в игре.
| cr | Выходящий криттер. | 
| void item_map_in | ( | ItemCl & | item | ) | 
Вызывается при появлении предмета на карте.
| item | Появившийся предмет. | 
Вызывается при смене предмета на карте.
| itemNow | Новый предмет. | 
| itemBefore | Сменившийся предмет. | 
| void item_map_out | ( | ItemCl & | item | ) | 
Вызывается при исчезновении предмета с карты.
| item | Исчезнувший предмет. | 
| void item_inv_in | ( | ItemCl & | item | ) | 
Вызывается при появлении предмета в инвентаре.
| item | Появившийся в инвентаре предмет. | 
| void item_inv_out | ( | ItemCl & | item | ) | 
Вызывается при исчезновении предмета из инвентаря.
| item | Исчезнувшийся из инвентаря предмет. | 
| void item_drop | ( | ItemCl & | item | ) | 
Вызывается при выкидывании предмета криттером.
| item | Выкидываемый предмет. | 
| void animation2d_process | ( | bool | animateStay, | 
| CritterCl & | cr, | ||
| uint | anim1, | ||
| uint | anim2, | ||
| ItemCl @ | item | ||
| ) | 
Вызывается перед проигрыванием 2D анимации.
| animateStay | Указывает воспроизводится сейчас какое-либо действие (false) или анимация стойки (true). | 
| cr | Криттер, для которого проигрывается анимация. | 
| anim1 | Первый индекс анимации (см. ANIM1_* в _animation.fos). | 
| anim2 | Второй индекс анимации (см. ANIM2_2D_* в _animation.fos). | 
| item | Указатель на предмет, используемый в анимации. | 
| void animation3d_process | ( | bool | animateStay, | 
| CritterCl & | cr, | ||
| uint | anim1, | ||
| uint | anim2, | ||
| ItemCl @ | item | ||
| ) | 
Вызывается перед проигрыванием 3D анимации.
| animateStay | Указывает воспроизводится сейчас какое-либо действие (false) или анимация стойки (true). | 
| cr | Криттер, для которого проигрывается анимация. | 
| anim1 | Первый индекс анимации (см. ANIM1_* в _animation.fos). | 
| anim2 | Второй индекс анимации (см. ANIM2_3D_* в _animation.fos). | 
| item | Указатель на предмет, используемый в анимации. | 
| bool check_perk | ( | CritterCl & | cr, | 
| uint | perk | ||
| ) | 
(?)
| void player_data_generate | ( | int &[] | data | ) | 
(?)
| bool player_data_check | ( | int &[] | data | ) | 
(?)
Вызывается, когда криттер производит какое-либо действие.
В этой функции можно делать реализацию своих действий: проигрывание звуков, анимации, вывод текста и т.п., которые будут производиться без задержек, связанных с передачей данных по сети.
| localCall | Вызывана ли функция движком локально ( true) или с сервера (false). | 
| cr | Криттер, который производит действие. | 
| action | Действие (см. Действия криттеров). | 
| actionExt | Параметр с дополнительной информацией о действии. | 
| item | Указатель на предмет, который участвует в совершении действия. | 
true, а после отправляет информацию на сервер, где идет последующая обработка.| void filename_logfile | ( | string & | filename | ) | 
Позволяет изменить имя файла лога.
Если filename окажется пустым, файл не сохранится
| void filename_screenshot | ( | string & | filename | ) | 
Позволяет изменить имя файла скриншота.
Если filename окажется пустым, файл не сохранится
Регулирует доступ к командам сервера
| cr | Проверяемый криттер | 
| adminPanel | (?) | 
| command | Проверяемая команда (см. Internal server commands в _defines.fos) | 
true – в случае, если команда разрешена; false – в противном случае. Вызызывается перед каждым перемещением предмета у криттера.
| cr | Криттер, который меняет предмет; | 
| item | Предмет, который перемещается; | 
| toSlot | Слот, из которого берется предмет; | 
| itemSwap | предмет, который уже находится в слоте назначения и который переместится в слот перемещаемого предмета при успешной транзакции. | 
false, то предмет не переместится; если true, то переместится. | int get_active_screen | ( | ) | 
Вызывается движком, чтобы получить активное окно.
| void screen_change | ( | bool | show, | 
| int | screen, | ||
| int | p0, | ||
| int | p1, | ||
| int | p2 | ||
| ) | 
Позволяет определить поведение при смене окон.
| show | Должно ли окно показываться ( true) или закрыться (false). | 
| screen | Тип окна. | 
| p0,p1,p2 | Параметры окна. | 
| bool mouse_down | ( | int | click | ) | 
Вызывается при нажатии кнопки мыши.
| click | См. Mouse click states. | 
true, то движок не будет обрабатывать событие; если false, то будет. | bool mouse_up | ( | int | click | ) | 
Вызывается при отжатии кнопки мыши.
| click | См. Mouse click states. | 
true, то движок не будет обрабатывать событие; если false, то будет. | void mouse_move | ( | int | x, | 
| int | y | ||
| ) | 
Вызывается при перемещении курсора.
| x,y | Новые позиции курсора. | 
| bool key_down | ( | uint8 | key | ) | 
Вызывается при нажатии клавиши.
| key | См. DirectInput keyboard scan codes. | 
true, то движок не будет обрабатывать событие; если false, то будет. | bool key_up | ( | uint8 | key | ) | 
Вызывается при отжатии клавиши.
| key | См. DirectInput keyboard scan codes. | 
true, то движок не будет обрабатывать событие; если false, то будет. | void input_lost | ( | ) | 
Вызывается при потере устройства: мыши или клавиатуры.
Это может произойти при:
| void combat_result | ( | uint &[] | data | ) | 
Принимает данные, посланные в Critter::SendCombatResult.
Вызывается движком для расчета отображаемого в клиенте шанса попадания.
| chosen | Игрок. | 
| target | Цель. | 
| weapon | Используемое игроком оружие. | 
| weaponMode | Режим атаки оружия. старшие четыре бита Прицел (см. Hit Locations), младшие четыре бита Тип использования (0 – primary, 1 – secondary, 2 – third). | 
| string critter_animation | ( | int | animType, | 
| uint | crType, | ||
| uint | anim1, | ||
| uint | anim2, | ||
| uint & | pass, | ||
| uint & | flags, | ||
| int & | ox, | ||
| int & | oy | ||
| ) | 
Функция вызываемая в момент загрузки нужной анимации.
| animType | Тип анимации криттера (новый параметр, указывается в CritterTypes.cfg); | 
| crType | Тип криттера; | 
| anim1,anim2 | Индексы анимации; | 
| pass | Номер вызова функции, изменяется пользователем, если не удалось загрузить анимацию и данный параметр был изменен, то функция вызовется вновь (в некоторых случаях нужно пробовать загрузить разные файлы для одной анимации); | 
| flags | Флаги, на данный момент два - взять первый или последний кадр из анимации (см. Anim loading flags в _animation.fos); | 
| ox,&oy | Смещения для анимации, в пикселях. | 
| bool critter_animation_substitute | ( | int | animType, | 
| uint | crTypeBase, | ||
| uint | anim1Base, | ||
| uint | anim2Base, | ||
| uint & | crType, | ||
| uint & | anim1, | ||
| uint & | anim2 | ||
| ) | 
Если не удалось загрузить анимацию (и uint& pass не изменился), то вызывается данная функция для определения замены анимации (например, удар левой рукой можно заменить на удар правой).
animTypeТип Тип анимации криттера (новый параметр, указывается в CritterTypes.cfg); uint crTypeBase, anim1Base, anim2Base Базовый тип криттера и анимации, с которых все начиналось; uint& crType, &anim1, &anim2 Тип криттера и текущие анимации для замены.
| bool critter_animation_fallout | ( | uint | crType, | 
| uint & | anim1, | ||
| uint & | anim2, | ||
| uint & | anim1ex, | ||
| uint & | anim2ex, | ||
| uint & | flags | ||
| ) | 
Т.
к. анимации фаллаута все еще загружаются движком (требуется дополнительный расчет смещений, склейка двух анимаций), то для определения соответствий анимаций вызывается данная функция, т.е. вместо critter_animation для анимаций фаллаута вызывается данная функция.