ページ 11

【解決済み】戦闘中、アクターコマンドを開いているアクターID

Posted: 2019年1月16日(水) 17:58
by リーチ
こんばんは! 平素より大変お世話になっております。

戦闘中にアクターコマンドを開いているアクターIDを変数に
格納したいのですがスクリプトが分からず質問させていただきました。

BattleManager.actor()で分からないかな?と入れてみたのですが
object objectと帰って来てしまい違うのか、足りないのか
わからん状態になりました…どなたか方法を教えてください!

Re: 戦闘中、アクターコマンドを開いているアクターID

Posted: 2019年1月16日(水) 17:59
by しぐれん
BattleManager.actor().actorId()です。
ただし、BattleManager.actor()はnullを返すこともあったと思うので、nullチェックは行ってください。
ぬるぽします。

Re: 戦闘中、アクターコマンドを開いているアクターID

Posted: 2019年1月16日(水) 18:31
by リーチ
初めまして! しぐれん様
恐らくプラグインにもお世話になっております。
お答えいただきありがとうございます!

重ねて申し訳ないのですがnullチェックはどうすればいいのでしょう?
無事ぬるぽされてしまいました…。
Cannot read property 'actorId' of null
とエラーが出て来ます。

Re: 戦闘中、アクターコマンドを開いているアクターID

Posted: 2019年1月16日(水) 18:53
by しぐれん

コード: 全て選択

var actor = BattleManager.actor();
if(actor){
  var id = actor.actorId();
}
こうですね。
nullチェックですが、変数に捕まえてif()すればOKです。
nullやundefinedはifなどの真偽値(true/false)で評価しようとすると、falseになります。

Re: 戦闘中、アクターコマンドを開いているアクターID

Posted: 2019年1月16日(水) 19:31
by リーチ
しぐれん様の教えてくれた通り無事ぬるぽから抜け出せました!
本当にありがとうございました!
スクリプト内だけで使える変数の箱であるvar idのidを
格納したい変数に入れれば良かったのですね!

この質問は解決済みとさせていただきます。
この度は大変お世話になりました!