switch移植に関して、直面した問題を書いておく感じ。
ただ社外秘の内容多いので、詳しくは書けないです。
私はずっとinput managerを使ってるんですが、unity6000.4.4からかswitchの方でsubmitとかが認識されなくなってしまった。もういい加減input System使えって話なのか…?input Systemヨクワカラナイ
なのでシングルプレイヤーに限定した、シンプルなコントローラー入力のサンプルを参考にしながら組み替えてなんとかしました。
自分のソースはなんとかなるんだけど、fungusはどうしようかってところ。
visual studioって、フォルダでソース検索できるの知らなかった。私だけ?

フォルダをfungusに指定して、Input.GetButtonDownで検索。
キー入力だけなら、DialogInputをいじります。
if (writer != null && writer.IsWriting)
{
if (Input.GetButtonDown(currentStandaloneInputModule.submitButton) ||
(cancelEnabled && Input.GetButton(currentStandaloneInputModule.cancelButton)))
{
SetNextLineFlag();
}
}
ここを、コメントアウトして、
if (writer != null && writer.IsWriting)
{
if (UpdatePadState())
{
if (Aボタンを押したら || cancelEnabled && Bボタン押しっぱなし)
{
SetNextLineFlag();
}
}
}
っていうソースに変えます。
押したら、はGetButtonDownで、押しっぱなしはGetButtonです。cancelEnabledってのは上で宣言されてるキャンセルボタンによる文章早送りを有効にするかのON/OFFスイッチのこと。
fungusからは外部プラグインが読み込めないので、アセンブリファイルに追加しないとエラーになります。
プラグインフォルダに右クリック→作成から適当にアセンブリファイルを作る。
fungusのアセンブリファイルに、今作ったファイルを追加して、なんか必要そうな感じのところにチェックを入れる。と参照エラーが消えるはず。
※ビルド時にエラーになるようだったらチェックは外す。
選択肢はたまにバグってコントローラに反応しなくて、タッチ反応しかしないみたいな挙動になったりして、直し方分からなかったから、もう使ってないんだよなぁ。自分で選択肢表示するコードを用意して、call Methodで飛ばしてる。
あれ、ボタン使ってるから、コードでは制御してないのかな?ちょっとわかんないけど。
ということで、いつまでもFungusとinput managerを使い続ける化石のためのメモでした。

