2

在插件中,我有以下代码:

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()行为的变化吗?

4

1 回答 1

2

许多函数从 1 或 nil 返回值更改为 true 或 false。这大概就是问题所在。

您可能还写过类似 'if ( UnitIsPlayer("target") )' 的内容,它涵盖了这两种情况,并且可能更可取。

于 2014-10-19T17:33:52.357 回答