Поправте меня,если я где то ошибся пожалуйста)
if CAddonTemplateGameMode == nil then
CAddonTemplateGameMode = class({})
end
function Precache( context )
--[[
Precache things we know we'll use. Possible file types include (but not limited to):
PrecacheResource( "model", "*.vmdl", context )
PrecacheResource( "soundfile", "*.vsndevts", context )
PrecacheResource( "particle", "*.vpcf", context )
PrecacheResource( "particle_folder", "particles/folder", context )
]]
end
-- Create the game mode when we activate
function Activate()
GameRules.AddonTemplate = CAddonTemplateGameMode()
GameRules.AddonTemplate:InitGameMode()
end
function CAddonTemplateGameMode:InitGameMode()
print( "Template addon is loaded." )
GameRules:GetGameModeEntity():SetThink( "OnThink", self, "GlobalThink", 2 )
end
function CAddonTemplateGameMode:InitGameMode()
self.direKills = 0
self.radiantKills = 0
self.kills_to_win = 50
ListenToGameEvent("entity_killed", Dynamic_Wrap(CAddonTemplateGameMode, "OnEntityKilled"), self)
end
function CAddonTemplateGameMode:OnEntityKilled(keys)
local killedEntity = EntIndexToHScript(keys.entindex_killed)
if killedEntity:IsRealHero() then
local playerTeam = killedEntity:GetTeam()
if playerTeam == 2 then
self.direKills = self.direKills + 1
if self.direKills >= self.kills_to_win then
GameRules:SetSafeToLeave( true )
GameRules:SetGameWinner( DOTA_TEAM_BADGUYS )
end
elseif playerTeam == 3 then
self.radiantKills = self.radiantKills + 1
if self.radiantKills >= self.kills_to_win then
GameRules:SetSafeToLeave( true )
GameRules:SetGameWinner( DOTA_TEAM_GOODGUYS )
end
end
end
end
function DotaPvP:InitGameMode()
void SetSameHeroSelectionEnabled(bool enabled)
GameRules:SetSameHeroSelectionEnabled(true)
end