レベルを移動する際にplayer controller classを変更するというのは問題ないのでしょうか?

お世話になっております。

最近UE4を勉強し始めたのですが現在詰まっておりまして、もしよろしければ教えていただけますと助かります。

現在ビジュアルノベルパートとアクションパートを繰り返して物語が進行するゲームを作っているのですが、二つのパートの動きをplayer controllerの中にまとめてしまってごちゃごちゃになってしまいました

そこでお聞きしたいのですが、ビジュアルノベルパート用のレベルとアクションパート用のレベルを別に用意している場合、レベルを移動する際にplayer controller classを変更するというのは問題ないのでしょうか?

また、レベルを移動する直前にplayer controllerを変更できればと考えているのですが、BPでどのように組めばできるのでしょうか?
よろしくお願いします

OpenLevelにより、PersistentLevelごとGameModeが変わることによりPlayerControllerClassが変更される、という点に関しては問題ありません
ただし、Level移動前にPlayerControllerを作り直すなどの干渉をすることはできません
なぜならPlayerControllerはActorであり、ActorはLevel遷移時に破棄されるためです
Levelをまたげば、PlayerControllerは別物になります

別のLevelに移動した場合、そのときに作成されるPlayerControllerはGameModeに設定されているPlayerControllerClassに依存します

Level間で何らかの情報をやり取りしたい場合は、GameInstanceを通じてやり取りしてください

丁寧なご回答ありがとうございました。
おかげさまで悶々としていたところが解決できました!