mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-23 22:37:55 +02:00
Updated developer docs
This commit is contained in:
@@ -36,35 +36,30 @@
|
||||
|
||||
## API Reference
|
||||
|
||||
TODO **In near future Lua API may change drastically several times.
|
||||
Information here may be outdated**
|
||||
TODO **In near future Lua API may change drastically several times. Information here may be outdated**
|
||||
|
||||
### Globals
|
||||
|
||||
- DATA - persistent table
|
||||
- DATA.ERM contains ERM state, anything else is free to use.
|
||||
- GAME - IGameInfoCallback API
|
||||
- BATTLE - IBattleInfoCallback API
|
||||
- EVENT_BUS - opaque handle, for use with events API
|
||||
- SERVICES - root "raw" access to all static game objects
|
||||
- SERVICES:artifacts()
|
||||
- SERVICES:creatures()
|
||||
- SERVICES:factions()
|
||||
- SERVICES:heroClasses()
|
||||
- SERVICES:heroTypes()
|
||||
- SERVICES:spells()
|
||||
- SERVICES:skills()
|
||||
- require(URI)
|
||||
- works similar to usual Lua require
|
||||
- require("ClassName") - loads additional API and returns it as
|
||||
table (for C++ classes)
|
||||
- require("core:relative.path.to.module") - loads module from
|
||||
"SCRIPTS/LIB"
|
||||
- TODO require("modName:relative.path.to.module") - loads module
|
||||
from dependent mod
|
||||
- TODO require(":relative.path.to.module") - loads module from
|
||||
same mod
|
||||
- logError(text) - backup error log function
|
||||
- DATA - persistent table
|
||||
- - DATA.ERM contains ERM state, anything else is free to use.
|
||||
- GAME - IGameInfoCallback API
|
||||
- BATTLE - IBattleInfoCallback API
|
||||
- EVENT_BUS - opaque handle, for use with events API
|
||||
- SERVICES - root "raw" access to all static game objects
|
||||
- - SERVICES:artifacts()
|
||||
- - SERVICES:creatures()
|
||||
- - SERVICES:factions()
|
||||
- - SERVICES:heroClasses()
|
||||
- - SERVICES:heroTypes()
|
||||
- - SERVICES:spells()
|
||||
- - SERVICES:skills()
|
||||
- require(URI)
|
||||
- -works similar to usual Lua require
|
||||
- -require("ClassName") - loads additional API and returns it as table (for C++ classes)
|
||||
- -require("core:relative.path.to.module") - loads module from "SCRIPTS/LIB"
|
||||
- -TODO require("modName:relative.path.to.module") - loads module from dependent mod
|
||||
- -TODO require(":relative.path.to.module") - loads module from same mod
|
||||
- logError(text) - backup error log function
|
||||
|
||||
### Low level events API
|
||||
|
||||
@@ -86,8 +81,7 @@ sub2 = PlayerGotTurn.subscribeBefore(EVENT_BUS, function(event)
|
||||
|
||||
### Lua standard library
|
||||
|
||||
VCMI uses LuaJIT, which is Lua 5.1 API, see [upstream
|
||||
documentation](https://www.lua.org/manual/5.1/manual.html)
|
||||
VCMI uses LuaJIT, which is Lua 5.1 API, see [upstream documentation](https://www.lua.org/manual/5.1/manual.html)
|
||||
|
||||
Following libraries are supported
|
||||
|
||||
@@ -101,8 +95,7 @@ Following libraries are supported
|
||||
|
||||
## Features
|
||||
|
||||
- no strict limit on function/variable numbers (technical limit 32 bit
|
||||
integer except 0))
|
||||
- no strict limit on function/variable numbers (technical limit 32 bit integer except 0))
|
||||
- TODO semi compare
|
||||
- DONE macros
|
||||
|
||||
@@ -158,52 +151,52 @@ Following libraries are supported
|
||||
|
||||
### WoG
|
||||
|
||||
- TODO !!AR Артефакт (ресурс) в определенной позиции
|
||||
- TODO !!BA Битва
|
||||
- !!BA:A$ return 1 for battle evaluation
|
||||
- TODO !!BF Препятствия на поле боя
|
||||
- TODO !!BG Действий монстров в бою
|
||||
- TODO !!BH Действия героя в бою
|
||||
- TODO !!BM Монстр в битве
|
||||
- WIP !!BU Универсальные параметры битвы
|
||||
- TODO !!CA Замок
|
||||
- TODO !!CD Разрушения замков
|
||||
- TODO !!CE События в замке
|
||||
- TODO !!CM Клика мышью
|
||||
- TODO !!DL Нестандартный диалог (только ТЕ или выше)
|
||||
- TODO !!CO Командиры
|
||||
- WIP !!DO Многократный вызов функции
|
||||
- TODO !!EA Бонусы опыта существ
|
||||
- TODO !!EX Опыт стека
|
||||
- DONE !!FU Однократный вызов функции
|
||||
- TODO !!GE Глобальное событие
|
||||
- WIP !!HE Герой
|
||||
- TODO !!HL Новый уровень героя
|
||||
- TODO !!HO Взаимодействия героев
|
||||
- TODO !!HT Подсказки по правому клику
|
||||
- WIP !!IF Диалоги и флагов
|
||||
- TODO !!IP Сетевой сервис битвы
|
||||
- TODO !!LE Локальное события
|
||||
- WIP !!MA Общие параметры монстров
|
||||
- DONE !!MC Макросы
|
||||
- WIP !!MF Получение физ. урона в бою
|
||||
- TODO !!MM Текст в битве
|
||||
- WIP !!MO Монстр в определенной позиции
|
||||
- TODO !!MP Контроль MP3
|
||||
- TODO !!MR Сопротивления магии
|
||||
- TODO !!MW Бродячих монстров
|
||||
- WIP !!OB Объект в определенной позиции
|
||||
- TODO !!OW Параметры игрока
|
||||
- TODO !!PM Пирамиды или новые объекты
|
||||
- TODO !!PO Информация квадрата карты
|
||||
- TODO (???) !!QW Журнала
|
||||
- TODO !!SN Проигрываемые звуков
|
||||
- TODO !!SS Настройка заклинаний (только ТЕ или выше)
|
||||
- TODO !!TL Контроль времени хода (только ТЕ или выше)
|
||||
- TODO !!TM Временный таймер
|
||||
- TODO !!TR Квадрата карты (почва, проходимость, т.п.)
|
||||
- TODO !!UN Универсальная команда
|
||||
- *!#VC Контроль переменных*
|
||||
- WIP !!VR Установка переменных
|
||||
- TODO !!AR Артефакт (ресурс) в определенной позиции
|
||||
- TODO !!BA Битва
|
||||
- !!BA:A$ return 1 for battle evaluation
|
||||
- TODO !!BF Препятствия на поле боя
|
||||
- TODO !!BG Действий монстров в бою
|
||||
- TODO !!BH Действия героя в бою
|
||||
- TODO !!BM Монстр в битве
|
||||
- WIP !!BU Универсальные параметры битвы
|
||||
- TODO !!CA Замок
|
||||
- TODO !!CD Разрушения замков
|
||||
- TODO !!CE События в замке
|
||||
- TODO !!CM Клика мышью
|
||||
- TODO !!DL Нестандартный диалог (только ТЕ или выше)
|
||||
- TODO !!CO Командиры
|
||||
- WIP !!DO Многократный вызов функции
|
||||
- TODO !!EA Бонусы опыта существ
|
||||
- TODO !!EX Опыт стека
|
||||
- DONE !!FU Однократный вызов функции
|
||||
- TODO !!GE Глобальное событие
|
||||
- WIP !!HE Герой
|
||||
- TODO !!HL Новый уровень героя
|
||||
- TODO !!HO Взаимодействия героев
|
||||
- TODO !!HT Подсказки по правому клику
|
||||
- WIP !!IF Диалоги и флагов
|
||||
- TODO !!IP Сетевой сервис битвы
|
||||
- TODO !!LE Локальное события
|
||||
- WIP !!MA Общие параметры монстров
|
||||
- DONE !!MC Макросы
|
||||
- WIP !!MF Получение физ. урона в бою
|
||||
- TODO !!MM Текст в битве
|
||||
- WIP !!MO Монстр в определенной позиции
|
||||
- TODO !!MP Контроль MP3
|
||||
- TODO !!MR Сопротивления магии
|
||||
- TODO !!MW Бродячих монстров
|
||||
- WIP !!OB Объект в определенной позиции
|
||||
- TODO !!OW Параметры игрока
|
||||
- TODO !!PM Пирамиды или новые объекты
|
||||
- TODO !!PO Информация квадрата карты
|
||||
- TODO (???) !!QW Журнала
|
||||
- TODO !!SN Проигрываемые звуков
|
||||
- TODO !!SS Настройка заклинаний (только ТЕ или выше)
|
||||
- TODO !!TL Контроль времени хода (только ТЕ или выше)
|
||||
- TODO !!TM Временный таймер
|
||||
- TODO !!TR Квадрата карты (почва, проходимость, т.п.)
|
||||
- TODO !!UN Универсальная команда
|
||||
- *!#VC Контроль переменных*
|
||||
- WIP !!VR Установка переменных
|
||||
|
||||
## Persistence
|
||||
Reference in New Issue
Block a user