PlayerInputに付いて質問です。
ゲームでキャラクター操作用のActionMap「Player」と
UI操作用のActionMap「UI」のInputActionMapを用意しました。
EventSystemの「UI Input Module」のSubmitには「UI/Submit」を入れておきます。
この状態で画面のようなボタンを用意し、初期InputActionMapを「Player」にしておきます。
この状態だとボタンを押すと正常に動きます。
【発生する問題】
①ゲームをプレイした段階では画面上のボタンをクリックしたりすると、反応が有ります。(この時点で何故反応があるのかわからないですが。)
ゲーム内でショップ画面などに遷移し
PlayerInput.SwitchCurrentActionMap("UI");
を実行、その後ゲーム画面に戻ってきた時、
PlayerInput.SwitchCurrentActionMap("Player");
を実行後、①のようにボタンをクリックしても反応がおきません。
【原因】
どうやら「SwitchCurrentActionMap」を使用するとボタンタップで反応しなくなってしまうようです。
①(ゲーム起動)
↓
②ボタンが反応する
↓
③ショップを開く。その際、
PlayerInput.SwitchCurrentActionMap("UI");
↓
④ショップを閉じる。その際、
PlayerInput.SwitchCurrentActionMap("Player");
↓
⑤ボタンが反応しなくなる
【解決したい症状】
⑤のときでもボタンが反応するようにしたいです。
PlayerにSubmitを用意してそれを「UI Input Module」にセット……とも考えたのですが、それだとこんどはショップ画面で決定ボタンが効かなくなる気がします。
できれば「UI Input Module」のSubmitに「Player/Submit」「UI/Submit」の両方または「CurrentActionMap["Submit"]」をせっていできれば良いのですがどなたか良い方法ご存知ないでしょうか
あなたの回答
tips
プレビュー