【解決済み】アクターの顔、歩行グラを取得して呼び出したい

返信する
マグナム武田
記事: 2
登録日時: 2020年1月05日(日) 00:18

【解決済み】アクターの顔、歩行グラを取得して呼び出したい

投稿記事 by マグナム武田 »

ゲームプレイ中のアクターの顔&歩行グラフィックの情報を取得し
任意のタイミングで呼び出すことは可能でしょうか?

具体的に何をしたいかと言うと
ゲームイベントの回想部屋を作りたいと思っています。
例を挙げると


Aというキャラが部屋にある回想イベントを起動(この時点の歩行グラ保存)
>回想イベント内容はAの別衣装(歩行グラ変更)のA`のイベント
>回想イベント終了後に回想部屋に復帰、Aの衣装に戻る

Aが様々な歩行グラだったりするので
顔&歩行グラ取得、呼び出しをしたいのですが
メンバーの取得などしか出来ず悩んでおります。


ツクール初心者なので質問がおかしい点が多いかもしれませんが
よろしくお願い致します。
最後に編集したユーザー マグナム武田 [ 2023年8月03日(木) 20:10 ], 累計 1 回
ecf5DTTzl6h6lJj02
記事: 752
登録日時: 2018年12月23日(日) 13:55

Re: アクターの顔、歩行グラを取得して呼び出したい

投稿記事 by ecf5DTTzl6h6lJj02 »

こんにちは。
マグナム武田 さんが書きました:ゲームプレイ中のアクターの顔&歩行グラフィックの情報を取得し
任意のタイミングで呼び出すことは可能でしょうか?

具体的に何をしたいかと言うと
ゲームイベントの回想部屋を作りたいと思っています。
例を挙げると


Aというキャラが部屋にある回想イベントを起動(この時点の歩行グラ保存)
>回想イベント内容はAの別衣装(歩行グラ変更)のA`のイベント
>回想イベント終了後に回想部屋に復帰、Aの衣装に戻る

Aが様々な歩行グラだったりするので
顔&歩行グラ取得、呼び出しをしたいのですが
メンバーの取得などしか出来ず悩んでおります。


ツクール初心者なので質問がおかしい点が多いかもしれませんが
よろしくお願い致します。
特定のアクターに設定されている、歩行グラフィック、顔、バトラー(サイドビュー戦闘時のキャラ)の情報は、
以下のスクリプトで取得できます。

コード: 全て選択

// 歩行グラフィックの画像名
$gameActors.actor(アクターのID).characterName();

// 歩行グラフィックのインデックス
$gameActors.actor(アクターのID).characterIndex();

// 顔の画像名
$gameActors.actor(アクターのID).faceName();

// 顔のインデックス
$gameActors.actor(アクターのID).faceIndex();

// バトラーの画像名
$gameActors.actor(アクターのID).battleName();
アクターの画像変更は、イベントコマンドだと、変数などから画像名を指定することができないので、
こちらもスクリプトで、設定することになります。
設定するスクリプトは以下です。

コード: 全て選択

// 歩行グラフィック
$gameActors.actor(アクターのID).setCharacterImage(画像名, インデックス);

// 顔グラフィック
$gameActors.actor(アクターのID).setFaceImage(画像名, インデックス);

// バトラー
$gameActors.actor(アクターのID).setBattlerImage(画像名);
例えば、アクターID 0001 のアクター画像の設定を変数ID 0021 にまとめておき、
必要なタイミングで、アクター画像を設定する場合は以下のようなスクリプトで実行できます。
(変数の最大数が21未満だと設定できないので注意)
(一例なので、他にも書き方はあります)

アクター画像の設定を変数ID 0021 にまとめておく

コード: 全て選択

const actor = $gameActors.actor(1);
const actorImages = {
    characterName: actor.characterName(),
    characterIndex: actor.characterIndex(),
    faceName: actor.faceName(),
    faceIndex: actor.faceIndex(),
    battlerName: actor.battlerName()
};
$gameVariables.setValue(21, actorImages);
アクターの画像を変数ID 0021 の内容に基づいて変更する

コード: 全て選択

const actor = $gameActors.actor(1);
const actorImages = $gameVariables.value(21);
actor.setCharacterImage(actorImages.characterName, actorImages.characterIndex);
actor.setFaceImage(actorImages.faceName, actorImages.faceIndex);
actor.setBattlerImage(actorImages.battlerName);
以上、お試しください。
マグナム武田
記事: 2
登録日時: 2020年1月05日(日) 00:18

Re: アクターの顔、歩行グラを取得して呼び出したい

投稿記事 by マグナム武田 »

>>ecf5DTTzl6h6lJj02 様
丁寧なご返答ありがとうございます!
スクリプトを使わせていただいて、呼び出し出来ました。
これからゲームに導入していこうと思います。
本当にありがとうございました!!
返信する

“MV:質問”に戻る