Ru/Dota 2 Workshop Tools/Scripting/Getting Started: Difference between revisions
Justincase (talk | contribs) No edit summary |
m (Multipage removal) |
||
(7 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{LanguageBar}} | |||
{{Dead end|date=January 2024}} | |||
__TOC__Все скрипты для аддонов, создаваемых с помощью Dota 2 Workshop Tools пишутся на скриптовом языке Lua. Если вы знакомы с написанием скрипт кодов на каком-либо другом языке, то основные понятия в Lua будут даваться вам очень быстро. | __TOC__Все скрипты для аддонов, создаваемых с помощью Dota 2 Workshop Tools пишутся на скриптовом языке Lua. Если вы знакомы с написанием скрипт кодов на каком-либо другом языке, то основные понятия в Lua будут даваться вам очень быстро. | ||
{{tip | {{tip|Вы можете перезапустить файлы сценариев во время выполнения с помощью консольной команды <code>script_reload</code>.}} | ||
== Требуемые файлы == | == Требуемые файлы == | ||
Line 8: | Line 12: | ||
<source lang="Lua">../game/dota_addons/your_addon/scripts/vscripts/addon_game_mode.lua</source> | <source lang="Lua">../game/dota_addons/your_addon/scripts/vscripts/addon_game_mode.lua</source> | ||
Этот файл является обязательным и может иметь только такое имя. Также вы можете создать дополнительные файлы в <code>/vscripts</code>, и ссылаться на них при выполнении кода. Это позволить существенно упростить разработку аддона. | Этот файл является обязательным и может иметь только такое имя. Также вы можете создать дополнительные файлы в <code>/vscripts</code>, и ссылаться на них при выполнении кода. Это позволить существенно упростить разработку аддона. | ||
{{tip | {{tip|При создании аддона очень простой скрипт файл будет помещен в аддон в соответствующем месте, вы можете использовать его в качестве отправной точки для новых аддонов}} | ||
== | == Подгрузка скрипт файлов == | ||
Скрипт файл <code>addon_game_mode.lua</code> будет загружен сразу же при запуске аддона. Дополнительные скрипт файлы могут быть загружены, если в файл <code>addon_game_mode.lua</code> включить следующие команды | Скрипт файл <code>addon_game_mode.lua</code> будет загружен сразу же при запуске аддона. Дополнительные скрипт файлы могут быть загружены, если в файл <code>addon_game_mode.lua</code> включить следующие команды | ||
Line 44: | Line 48: | ||
{{shortpagetitle}} | {{shortpagetitle}} | ||
[[Category:Dota 2 Workshop Tools]] | [[Category:Dota 2 Workshop Tools]] |
Latest revision as of 06:18, 12 July 2024



January 2024
Все скрипты для аддонов, создаваемых с помощью Dota 2 Workshop Tools пишутся на скриптовом языке Lua. Если вы знакомы с написанием скрипт кодов на каком-либо другом языке, то основные понятия в Lua будут даваться вам очень быстро.

script_reload
.Требуемые файлы
Следующий файл должен присутствовать, чтобы начать выполнение сценария. Этот файл находится в каталоге аддона и выполняется во время его загрузки.
../game/dota_addons/your_addon/scripts/vscripts/addon_game_mode.lua
Этот файл является обязательным и может иметь только такое имя. Также вы можете создать дополнительные файлы в /vscripts
, и ссылаться на них при выполнении кода. Это позволить существенно упростить разработку аддона.

Подгрузка скрипт файлов
Скрипт файл addon_game_mode.lua
будет загружен сразу же при запуске аддона. Дополнительные скрипт файлы могут быть загружены, если в файл addon_game_mode.lua
включить следующие команды
require( "lua_filename_here" )
Обязательные Функции
Есть зарезервированные функции, их наличие для правильной работы аддона обязательно.
Precache
Функция Precache
загрузит все ресурсы необходимые в игре. Приведенный ниже пример включает в себя три типа ресурсов. Файл системы частиц, папка системы частиц, которая загрузит все файлы частиц внутрь себя и отдельный предмет "item_bag_of_gold" (пример).
function Precache( context )
PrecacheResource( "particle", "particles/items2_fx/veil_of_discord.vpcf", context )
PrecacheResource( "particle_folder", "particles/frostivus_gameplay", context )
PrecacheItemByNameSync( "item_bag_of_gold", context )
end
Activate
Функция Activate
существует для того, чтобы в первый раз настроить игровой режим. Эта функция выполняется во время загрузки файла и обычно используется для настройки используемых классов определенного игрового режима.
function Activate()
GameRules.holdOut = CHoldoutGameMode()
GameRules.holdOut:InitGameMode()
end