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

EnDronist

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

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>
 
Последнее редактирование:

ZLOY

Администратор
27 Июн 2016
661
60
28
17
Реакции
78 0 1
#2
dota_portrait_unit_stats_changed только на клиенте
GetStrength только на сервере
 

EnDronist

Продвинутый
28 Апр 2016
231
0
16
19
Проект
Защитники Изобилия | Defenders of Abundance
Реакции
0 0 0
#3
dota_portrait_unit_stats_changed только на клиенте
GetStrength только на сервере
Можно как-нибудь их использовать вместе или нужно создавать свой ивент для проверки изменения характеристик героя?
 
Реклама: