【解決済】取得できない情報の処理

hogehoge

【解決済】取得できない情報の処理

投稿記事by hogehoge » 2017年8月25日(金) 11:12

バトルシーンにおいてコモンイベントを呼び出し、条件分岐にスクリプトを使い、アクターのメモ欄から判断して条件分岐を行うという処理を作ろうとしているのですが、アクターに欠番(パーティーが3人以下しかいない)がある場合、いないアクターのメモ欄を取得しようとしてエラーが発生してしまいます。
これをどうにか改善したいのですが、いい方法をご存知でしたら教えていただけないでしょうか?

コード: 全て選択

◆条件分岐:スクリプト:$dataActors[$gameVariables.value(11)].note.match(/<(?:male)>/i)
  ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(12)].note.match(/<(?:female)>/i)
    ◆スクリプト:this._params[0] = 1;
    :     :this._params[1] = ($gameVariables.value(12));
    :     :this._params[2] = 35;
    :     :this._params[3] = -2;
    :     :this.command339();
    ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(13)].note.match(/<(?:male)>/i)
      ◆スクリプト:this._params[0] = 1;
      :     :this._params[1] = ($gameVariables.value(13));
      :     :this._params[2] = 35;
      :     :this._params[3] = -2;
      :     :this.command339();
      ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(14)].note.match(/<(?:female)>/i)
        ◆スクリプト:this._params[0] = 1;
        :     :this._params[1] = ($gameVariables.value(14));
        :     :this._params[2] = 35;
        :     :this._params[3] = -2;
        :     :this.command339();
        ◆
      :分岐終了
      ◆
    :分岐終了
    ◆
  :分岐終了
  ◆
:それ以外のとき
  ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(12)].note.match(/<(?:male)>/i)
    ◆スクリプト:this._params[0] = 1;
    :     :this._params[1] = ($gameVariables.value(12));
    :     :this._params[2] = 35;
    :     :this._params[3] = -2;
    :     :this.command339();
    ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(13)].note.match(/<(?:female)>/i)
      ◆スクリプト:this._params[0] = 1;
      :     :this._params[1] = ($gameVariables.value(13));
      :     :this._params[2] = 35;
      :     :this._params[3] = -2;
      :     :this.command339();
      ◆条件分岐:スクリプト:$dataActors[$gameVariables.value(14)].note.match(/<(?:male)>/i)
        ◆スクリプト:this._params[0] = 1;
        :     :this._params[1] = ($gameVariables.value(14));
        :     :this._params[2] = 35;
        :     :this._params[3] = -2;
        :     :this.command339();
        ◆
      :分岐終了
      ◆
    :分岐終了
    ◆
  :分岐終了
  ◆
:分岐終了
最後に編集したユーザー hogehoge on 2017年9月01日(金) 20:37 [ 編集 3 回目 ]

アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 取得できない情報の処理

投稿記事by しぐれん » 2017年8月25日(金) 13:51

スクリプトはある程度書けるようですので、これはプラグイン化することをお勧めします。
アクターの男女によって分岐して何かをするらしいことは読み取れましたが、これは何を目的とした処理なのでしょうか?
現在、プラグイン依頼はお休み中です。
hogehoge

Re: 取得できない情報の処理

投稿記事by hogehoge » 2017年8月25日(金) 20:07

返信ありがとうございます!
スクリプトを組んだといっても、いろんなサイト様から引っ張ってきただけの付け焼き刃なので知識が深い訳ではないです。すみません…

わかり辛いと思ったので、画像に起こしてみました。
名称未設定-1.png
hogehoge

Re: 【未解決】取得できない情報の処理

投稿記事by hogehoge » 2017年9月01日(金) 12:15

申し訳ありません。どうしても解決したい内容なのでageさせていただきます。
どなたか解決方法をご存知でしたら、教えて頂きたいです。
アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 【未解決】取得できない情報の処理

投稿記事by しぐれん » 2017年9月01日(金) 13:21

スレッドが上がっているのに気づいていませんでした(25日)
この場合ですが、$dataActorsではなく、$gameParty.members()[順番]で取得してください。
また、連続で行動するとありますが、これは元々の行動は解除されますか?
また、アクターが存在するかどうかは以下の方法でチェックできます。

コード: 全て選択

var actor = $gameParty.members()[番号];
if(actor){
    //存在する場合の処理を書く
}
現在、プラグイン依頼はお休み中です。
hogehoge

Re: 【未解決】取得できない情報の処理

投稿記事by hogehoge » 2017年9月01日(金) 20:37

返信ありがとうございます!
パーティーの順番で代入した結果、思い通りに動いてくれました!
ありがとうございます!

“MV:質問” へ戻る