Проблема с реконнкетом

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,147
196
www.dotabuff.com
Проект
Roshan defense
Когда игрок выходит я добавляю ему модифаер неуязвимости ,а когда реконнектится , то удаляю с него этот модификатор.
Так вот когда реконнект происходит , то модифаер до сих пор висит на юните , что делать ?
P.S. Kод скину позже !
 
  • Нравится
Реакции: makc45tlist

EYEOFLIE

Активный
28 Янв 2018
137
4
Если не удаляет именно твой модификатор, попробуй снять ВСЕ модификаторы, purge все бафы на нем и все
 

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,147
196
www.dotabuff.com
Проект
Roshan defense
Код:
function Activate()
    ListenToGameEvent("player_disconnect", Dynamic_Wrap(GameMode, "OnDisconnect"), self)
    ListenToGameEvent("player_reconnected", Dynamic_Wrap(GameMode, "OnReconnect"), self)
end

function GameMode:OnDisconnect(keys)
    local hero = PlayerResource:GetPlayer(keys.PlayerID):GetAssignedHero()
    hero:RespawnHero(false,false)
    hero:AddNewModifier(hero, nil, "modifier_tutorial_sleep", nil)
    hero:AddNewModifier(hero, nil, "modifier_invulnerable", nil)
end

function GameMode:OnReconnect(keys)
    local hero = PlayerResource:GetPlayer(keys.PlayerID):GetAssignedHero()
    hero:RemoveModifierByName("modifier_invulnerable")
    hero:RemoveModifierByName("modifier_tutorial_sleep")
end
 

00zveroboi

Активный
14 Июл 2015
103
17
Сперва проверь, выполняется ли вообще функция и корректно ли берет класс героя, если же все верно, то попробуй наложить модифаер этот же, например на 0.05 сек
Так же есть более простая функция взятия класса героя: PlayerResource:GetSelectedHeroEntity( ID )
А еще... вроде слушатель реконнекта именно "dota_player_reconnected"
 
Последнее редактирование:
  • Нравится
Реакции: vulkantsk

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,147
196
www.dotabuff.com
Проект
Roshan defense
Сперва проверь, выполняется ли вообще функция и корректно ли берет класс героя, если же все верно, то попробуй наложить модифаер этот же, например на 0.05 сек
Так же есть более простая функция взятия класса героя: PlayerResource:GetSelectedHeroEntity( ID )
А еще... вроде слушатель реконнекта именно "dota_player_reconnected"
откуда инфа ?
 
Реклама: