Слушатель в Модификаторе

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

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

EnDronist

Продвинутый
28 Апр 2016
231
0
Проект
Защитники Изобилия | Defenders of Abundance
Не могу понять, в чём проблема:

Lua:
--[[Модификатор]]
attribute_modifier = class({})
function attribute_modifier:IsHidden()             return false end
function attribute_modifier:OnCreated(params)
    ListenToGameEvent("dota_portrait_unit_stats_changed", Dynamic_Wrap(self, "OnStatsChanged"), self)
    print(self:GetParent():GetStrength())
end
function attribute_modifier:OnStatsChanged()
    print(self:GetParent():GetStrength())
end

Код:
2 -- Здесь силу выписало, затем ошибки
Script Runtime Error: ...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:6: attempt to call method 'GetStrength' (a nil value)
stack traceback:
    ...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:6: in function <...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:4>
Script Runtime Error: ...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:9: attempt to call method 'GetStrength' (a nil value)
stack traceback:
    ...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:9: in function <...nidota\scripts\vscripts\modifiers\attribute_modifier.lua:8>
 
Последнее редактирование:
dota_portrait_unit_stats_changed только на клиенте
GetStrength только на сервере
 
dota_portrait_unit_stats_changed только на клиенте
GetStrength только на сервере
Можно как-нибудь их использовать вместе или нужно создавать свой ивент для проверки изменения характеристик героя?
 
Реклама: