入门指南
< Zh | Dota 2 Workshop Tools | Scripting
DOTA2创意工坊工具 的程序使用的是LUA编程语言,如果你对于编写其他语言比较熟悉的话,那么编写LUA也会是一件很容易的事。
提示:在游戏运行的时候,你能够使用
script_reload
命令来重新载入你的代码。所需要的文件
如果你想要运行一些程序,以下的文件将会是必须的,这些文件必须放置在/game
目录内对应的插件文件夹,这样在插件被载入的时候,他们就能被执行。
../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
(预载入)函数将会在游戏之前预先载入一些资源文件,以下的示例包含了三种不同资源的载入方式,一个粒子特效.vpcf
文件,一个粒子特效文件夹,还有一个物品。
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