Узнать команду

  • Официальное уведомление администрации CustomGames.RU
    В связи с масштабным техническим сбоем в инфраструктуре прежнего хостинг-провайдера (Beget), работа форума CustomGames.RU была оперативно перенесена на новую серверную площадку и развёрнута из резервной копии базы данных.

    • Безопасность данных: учётные записи и данные пользователей находятся в полной безопасности. Все пароли и защищаемые параметры хранятся исключительно в криптографически зашифрованном (хэшированном) виде — никаких критических инцидентов для аккаунтов пользователей не произошло.
    • Временные технические ограничения: на этапе синхронизации файлового хранилища часть статических материалов (пользовательские аватары и архивные вложения) временно недоступна. По мере получения доступа к файловым архивам все материалы будут восстановлены в полном объёме.

tasman208

Активный
30 Мар 2016
128
0
Есть ли способ узнать команду героя который использовал определенный предмет?
 
Есть ли способ узнать команду героя который использовал определенный предмет?
Код:
hero:GetTeamNumber()
и юзай эвент dota_player_used_ability
подробнее:
https://developer.valvesoftware.com/wiki/Dota_2_Workshop_Tools/Scripting/Built-In_Engine_Events
https://developer.valvesoftware.com/wiki/Dota_2_Workshop_Tools/Scripting/API#CDOTA_BaseNPC
 
Последнее редактирование модератором:
А есть какой то пример? Не работал еще с ивентами, не знаю как все построить
 
У меня все никак не получается узнать id игрока, который использовал предмет, чтобы узнать его команду. Как это сделать?
Код:
 function Activate()
  ListenToGameEvent("dota_player_used_ability", OnUsed, nil)
 end
 
 function OnUsed()
 --Тут нужно узнать id игрока
   local player = PlayerResource:GetPlayer(id)
   local num = player:GetTeamNumber() 
   local name = GetTeamName(num)
    if name == "#DOTA_GoodGuys" then
     _G.team = 1
    else
     _G.team = 2
    end
  end
 end
 
Последнее редактирование модератором:
Последнее редактирование модератором:
На самом деле не зря эти вопросы в разных темах, это совершенно разные вещи. А распознавание команды я реализовал, спасибо за помощь.
Код:
function Activate()
  ListenToGameEvent("dota_player_used_ability", OnUsed, nil)
 end

function OnUsed(keys)
   local player = PlayerResource:GetPlayer(keys.PlayerID)
   local num = player:GetTeamNumber() 
   local name = GetTeamName(num)
    if name == "#DOTA_GoodGuys" then
     _G.team = 1
    else
     _G.team = 2
    end
 end
 
Последнее редактирование модератором:
Реклама: