Спавнится что-то типо илюзий игроков которые были убиты на моей карте

MapMaker

Новичок
24 Янв 2017
5
0
Прошу помочь я делал карту по одном видео типа как сделать респавн крипов так вот крипы спавнятся но после убийства игрока и башни спавнятся что-то типа илюзий и ето не дает играть вот код помогите пж--------------------------------------------------------------------------------
-- Integer constants
--------------------------------------------------------------------------------
_G.nNEUTRAL_TEAM = 4
_G.nCREATURE_RESPAWN_TIME = 60

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

function OnEntityKilled (event)
local killedEntity = EntIndexToHScript(event.entindex_killed)
local sCreatureName = killedEntity:GetUnitName()
local vSpawnLoc = killedEntity.vSpawnLoc
if (vSpawnLoc == nil) then
print ("location not found")
vSpawnLoc = killedEntity:GetOrigin()
end
local vSpawnVector = killedEntity.vSpawnVector

GameRules:GetGameModeEntity():SetContextThink (string.format( "CreatureThink_%d", event.entindex_killed ), function () SpawnUnit(sCreatureName, vSpawnLoc, vSpawnVector) end, nCREATURE_RESPAWN_TIME)
end

function SpawnUnit (sCreatureName, vSpawnLoc, vSpawnVector)
local hUnit = CreateUnitByName(sCreatureName, vSpawnLoc, true, nil, nil, nNEUTRAL_TEAM )
hUnit:SetForwardVector(vSpawnVector)
hUnit.vSpawnLoc = vSpawnLoc
hUnit.vSpawnVector = vSpawnVector
end

-- Create the game mode when we activate
function Activate()
GameRules.AddonTemplate = CAddonTemplateGameMode()
GameRules.AddonTemplate:InitGameMode()
ListenToGameEvent("entity_killed", OnEntityKilled, nil)

local allUnits = FindUnitsInRadius(nNEUTRAL_TEAM,
Vector(0, 0, 0),
nil,
FIND_UNITS_EVERYWHERE,
DOTA_UNIT_TARGET_TEAM_FRIENDLY,
DOTA_UNIT_TARGET_ALL,
DOTA_UNIT_TARGET_FLAG_NONE,
FIND_ANY_ORDER,
false)
print (allUnits)
for k, hUnit in pairs( allUnits ) do
hUnit.vSpawnLoc = hUnit:GetOrigin()
hUnit.vSpawnVector = hUnit:GetForwardVector()
print (hUnit.vSpawnVector)
end
end

function CAddonTemplateGameMode:InitGameMode()
print( "Template addon is loaded." )
GameRules:GetGameModeEntity():SetThink( "OnThink", self, "GlobalThink", 2 )
end

-- Evaluate the state of the game
function CAddonTemplateGameMode:OnThink()
if GameRules:State_Get() == DOTA_GAMERULES_STATE_GAME_IN_PROGRESS then
--print( "Template addon script is running." )
elseif GameRules:State_Get() >= DOTA_GAMERULES_STATE_POST_GAME then
return nil
end
return 1
end
 
Последнее редактирование модератором:
Ну ты и спавнишь абсолютно всех, кто умирает:

Код:
function OnEntityKilled (event)
  local killedEntity = EntIndexToHScript(event.entindex_killed)
    local sCreatureName = killedEntity:GetUnitName()
    local vSpawnLoc = killedEntity.vSpawnLoc
    if (vSpawnLoc == nil) then
        print ("location not found")
        vSpawnLoc = killedEntity:GetOrigin()
    end
    local vSpawnVector = killedEntity.vSpawnVector
     
    GameRules:GetGameModeEntity():SetContextThink (string.format( "CreatureThink_%d", event.entindex_killed ), function () SpawnUnit(sCreatureName, vSpawnLoc, vSpawnVector) end, nCREATURE_RESPAWN_TIME)
 end

Если ты этого не понимаешь из своего куска кода, то посиди за учебником по lua.
 
Последнее редактирование модератором:
Кто-то может помочь мне и переписать етот код чтобы не спавнились все а только нейтральные крипы? помогите пожалуйста
 
Кто-то может помочь мне и переписать етот код чтобы не спавнились все а только нейтральные крипы? помогите пожалуйста
Для начала, прочитай этот гайд. Он поможет.
russkij_jazyk_teorija_ot_5_do_9_klassa.jpg
 
Последнее редактирование модератором:
Лучше бы вы за это время помогли исправить код а не говорить о моем русском....
 
Реклама: