您的位置:首页 > 其它

在DOTA2中突破移动速度上限的办法

2015-10-12 00:00 197 查看
制作一个LuaModifier,当然,KV Modifier也是可以的。

local custom_movespeed_cap = 1000

modifier_movespeed_cap = class({})

function modifier_movespeed_cap:DeclareFunctions()
local funcs = {
MODIFIER_PROPERTY_MOVESPEED_MAX,
MODIFIER_PROPERTY_MOVESPEED_LIMIT,
}

return funcs
end

function modifier_movespeed_cap:GetModifierMoveSpeed_Max( params )
return custom_movespeed_cap
end

function modifier_movespeed_cap:GetModifierMoveSpeed_Limit( params )
return custom_movespeed_cap
end

function modifier_movespeed_cap:IsHidden()
return true
end

之后监听单位的出生,给他们赋予改变移动速度上限的modifier:

LinkLuaModifier("modifier_movespeed_cap", "PATH_FOLDER/modifier_movespeed_cap", LUA_MODIFIER_MOTION_NONE)
ListenToGameEvent( 'npc_spawned', Dynamic_Wrap( GameMode, 'OnNPCSpawned' ), self )
function GameMode:OnNPCSpawned( args )
local hUnit = EntIndexToHScript( args.entindex)
hUnit:AddNewModifier( hUnit, nil, 'modifier_movespeed_cap', nil )
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  DOTA2 RPG 教程