Не понимаю где я сделал, что не так. В таблицу DATA.HEROES[ID] то есть в ячейку Player0 должно присвоиться GetTriggerUnit() (При условии что это игрок красный)
Но при тестировании print не выдаёт результатов...
Help (:
Но при тестировании print не выдаёт результатов...
Help (:
DATA = {
Heroes = {Player0 = nil, Player1 = nil, Player2 = nil, Player3 = nil, Player4 = nil, -- Alliance
Player5 = nil, Player6 = nil, Player7 = nil, Player8 = nil,Player9 = nil} -- Horde
}
do
local PickAHero = CreateTrigger()
for i = 0, 10 - 1 do
TriggerRegisterPlayerUnitEvent(PickAHero, Player(i), EVENT_PLAYER_UNIT_SELECTED)
end
TriggerAddAction(PickAHero, function()
local pHero = GetTriggerUnit()
local tPlayer = GetTriggerPlayer()
local ID = GetPlayerId(tPlayer)
if IsUnitType(pHero,UNIT_TYPE_HERO) then
if GetPlayerTeam(tPlayer) == 1 then
PanCameraToTimedForPlayer(tPlayer,-7271,-55,0.)
SetUnitX(pHero,-7271)
SetUnitY(pHero,-55)
else
PanCameraToTimedForPlayer(tPlayer,7271,55,0.)
SetUnitX(pHero,7271)
SetUnitY(pHero,55)
end
SetUnitOwner(pHero,tPlayer,true)
table.insert (DATA.Heroes,ID,pHero)
print(DATA.Heroes.Player0)
end
end)
end
Принятый ответ
Документацию то для кого пишут?
DATA = {
Heroes = {}
}
do
local PickAHero = CreateTrigger()
for i = 0, 9 do
TriggerRegisterPlayerUnitEvent(PickAHero, Player(i), EVENT_PLAYER_UNIT_SELECTED)
end
TriggerAddAction(PickAHero, function()
local hero = GetTriggerUnit()
local owner = GetTriggerPlayer()
local ownerID = GetPlayerId(owner)
if IsUnitType(hero, UNIT_TYPE_HERO) then
local x = GetPlayerTeam(owner) == 1 and -7271 or 7271
local y = GetPlayerTeam(owner) == 1 and -55 or 55
PanCameraToTimedForPlayer(owner, x, x, 0)
SetUnitX(hero, x)
SetUnitY(hero, y)
SetUnitOwner(hero, owner, true)
DATA.Heroes[ownerID] = hero
end
end)
end
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Ред. prog
Ред. nazarpunk
Да, нужно учить Lua и прекращать пытаться его использовать как Jass...