他
バニラの定義について
バニラの実装では
まず、character_animations.luaで、character_animations.level1.idle等のスプライトを定義し、次に、demo-entities.luaで、data.raw.character.character.animationsの定義にcharacter_animations.level1.idle等を使っている。
だが、このcharacter_animations.level1.idle等はここでしか使われていない。
なので、差し替え時においてはcharacter_animations.level1.idle等を差し替える必要は特になく、data.raw.character.character.animationsを直接書き換えても問題はない。
アーマーの登録について
data.raw.character.character.animations[ ].armorsの設定は
* animations[1].armors = (設定なし)
* animations[2].armors = {"light-armor", "heavy-armor"}
* animations[3].armors = {"modular-armor", "power-armor", "power-armor-mk2"}
になっている。どのアーマーがどの画像を使うのかがこうやって定義されているため、新規のモジュラー・アーマーなどを作った場合はここに追記すれば良い。オリジナルの画像を使いたい場合は、animations["myArmor"]とかを追加する形になる。
逆に追記がなければ[1]=装備無し画像で出てくると思われる。
移動銃撃時の方向について
running_with_gunの画像は、北から東、南方向へと銃撃する画像が縦に並んでいる。西方向への銃撃時は、東方向への画像の反転が使わている。
これ以外の画像は東と西が別なのだが、この画像にのみこういう縛りがあるため、工場長は左右非対称のデザインは出来ないことになる。
これを制御する方法は私には見つけられていない。
キャラクターサイズ
別のハイレゾモードの備忘録にも書いた通り、キャラの絵の大きさと、ゲーム内のキャラの大きさは無関係。
具体的には工場長の場合、
demo-entities.luaのcharacterの定義にあるcollision_box = {{-0.2, -0.2}, {0.2, 0.2}}
がゲーム内の当たり判定の大きさであり、幅は0.4セル、1セルは32ドットなので、約12ドットの大きさとして扱われているのが分かる。
ちなみに小型電の当たり判定は0.3セルなので、小型電柱を敷きつめてもその間は0.7セル。隙間を余裕で通れるのはこのため。
そして、表示サイズはこれとは無関係。つまり、例えば200ピクセル以上の画像でも工場長として表示することは出来るが、これによって電柱の間が通れなくなる、といったことは起きない。