Вау: функции UnitIsPlayer () меняются в версии 6.0?


В аддоне у меня есть следующий код:

elseif ( UnitIsPlayer("target") ~= nil ) then
    qui = UnitName("target",false)
    print ("SI7 pour cible: " .. qui)
    ma_fiche(qui,-1)
else
    lister_plaine()
end 

До 6.0 (WOD)когда я запускаю этот код, без цели, я бы перешел к else (lister_plaine()).

Теперь, кажется, я перехожу к предложению then (qui= ...), и, конечно, qui-это nil, и я получаю ошибку.

Видел ли кто-нибудь еще изменение в поведении UnitIsPlayer()?

1 2

1 ответ:

Многие функции были изменены с 1 или nil возвращаемых значений на true или false. Вероятно, это и есть проблема.

Вы также можете написать как ' if (UnitIsPlayer ("target"))', который охватывал бы оба случая и, вероятно, предпочтительнее.