一部スキルのメモ欄に<testSkill>と記述し、
以下のように参照して条件分けをしようとしております。
コード: 全て選択
var list = $gameActors.actor(1).skills();
for (var key in list) {
if(list[key].meta.testSkill == true){
//処理
}
}
メモ欄に<testSkill>がない場合は、undefinedで、
ある場合はTrueが返ってくるのですが
undefinedとTrueの判定が終わった時点で
cannot read property 'testSkill' of undefined となり
強制終了となってしまうため
これを回避すべく、条件式を==にすると
undefinedもNull扱いになるらしいので、以下のようにしてみたのですが
コード: 全て選択
if(list[key].meta.testSkill == null){
なぜかundefinedになって強制終了してしまいます。
試しに、<testSkill>がメモ欄にあるスキルのみをアクターID1のアクターに覚えさせて
戦闘してみると、なんと同じくcannot read property 'testSkill' of undefinedエラーで強制終了となりました。
<testSkill>タグの有無にかかわらず、undefinedとなってしまう理由は
一体どこにあるのでしょうか?
ご教示いただけますと幸いです。
どうかよろしくお願いいたします。