イベントコマンドの3ページ目、アクター > アクターの画像変更…と同様の操作を、
イベントコマンドの3ページ目、上級 > スクリプトから行う方法です。
Table of Contents
スクリプトコード
いずれもactor関数の引数にはアクターIDを指定します。
また、画像の変更後は$gamePlayer.refresh()を呼び出す必要があります。
顔
setCharacterImage関数の第一引数には変更したい顔アイコン画像のファイル名を、第二引数にはその中のどの部分を使用するかのインデックス値を指定します。
(上の列は左から順に0, 1, 2, 3、下の列は左から順に4, 5, 6, 7)
$gameActors.actor(1).setCharacterImage("Actor1",0);
$gamePlayer.refresh();
歩行キャラ
setFaceImage関数の第一引数には変更したい歩行画像のファイル名を、第二引数にはその中のどの部分を使用するかのインデックス値を指定します。
(上の列は左から順に0, 1, 2, 3、下の列は左から順に4, 5, 6, 7)
$gameActors.actor(1).setFaceImage("Actor1",0);
$gamePlayer.refresh();
戦闘キャラ
setBattlerImage関数の引数には変更したい戦闘画像のファイル名を指定します。
$gameActors.actor(1).setBattlerImage("Actor1_1");
$gamePlayer.refresh();
まとめて変更する
前述の画像それぞれをまとめて変更することもできます。
イベントコマンドでアクターの画像変更を実行した場合も同様にまとめて変更が行われています。
var actor = $gameActors.actor(1);
if (actor) {
actor.setCharacterImage("Actor1",0);
actor.setFaceImage("Actor1",0);
actor.setBattlerImage("Actor1_1");
}
$gamePlayer.refresh();
イベントコマンドの内容
イベントコマンドのアクターの画像変更を追加した場合、内部的には以下のようなデータが挿入されており、
js\rpg_objects.jsの10320行目に定義されているcommand322関数が呼び出され、引数にparametersの値が渡されています。
{"code":322,"indent":0,"parameters":[1,"Actor1",0,"Actor1",0,"Actor1_1"]}
parametersの値の内容は以下の通りです。
インデックス | 内容 |
[0] | アクターID |
[1] | 顔アイコン画像ファイル名 |
[2] | 顔アイコン画像インデックス |
[3] | 歩行画像ファイル名 |
[4] | 歩行画像インデックス |
[5] | 戦闘画像ファイル名 |