JumpScenarioについて

103 views
Skip to first unread message

トラキ

unread,
May 26, 2025, 1:25:41 PMMay 26
to 宴ユーザーグループ
宴のバージョン:宴3.12.8 
UnityのバージョンとOS:Unity 2022.3.53f1 Windows10

UnityでJumpScenario機能を呼び出す際、プレイヤーが次の台詞を進めなければ遷移しない問題について。直接遷移させる方法を教えてください。
また、Utageの選択肢機能で作成したメニュー画面で選択肢未クリック時にJumpScenarioが無効化される現象について、Discordで言及した自作フローチャート機能と組み合わせたより効率的なシナリオ遷移方法があれば提案をお願いします。

マッドネスラボ

unread,
May 26, 2025, 3:02:48 PMMay 26
to 宴ユーザーグループ
JumpScenarioは、今のシナリオの表示などから継続したまま、つぎのシナリオにジャンプするものなので、
現在のシナリオが実行中ときはそのページ内のコマンドが終わるまで待ってからジャンプします。

以下、なにをやってるかわかりやすいように、コメントを追記しました。

public void JumpScenario(string label)
{
if (ScenarioPlayer.MainThread.IsPlaying)
{
//シナリオがプレイ中の場合
if (ScenarioPlayer.IsPausing)
{
//ポーズ中なら再開
ScenarioPlayer.Resume();
}
//すぐにジャンプせずに、ジャンプラベルを予約することで現在のシナリオの状態を保ったままジャンプする
ScenarioPlayer.MainThread.JumpManager.RegistoreLabel(label);
}
else
{
//シナリオプレイ中ではないなら、即座にシナリオ開始
StartScenario(label, 0);
}
}


フローチャートからのジャンプ機能のように、今のシナリオを完全に中断して即座にジャンプする場合、以下のようにして現在のシナリオをクリアしてシナリオプレイを終了させておく必要があります。
//今の表示等をクリア
engine.ClearOnStart();
//指定のシナリオラベルを開始
engine.JumpScenario(label);
こうすると、すべての状態(背景表示など)をクリアしてから指定のシナリオラベルにジャンプします。ただし、パラメーターはクリアされずに継続します。

パラメーターも初期状態にしてからジャンプしたい場合は次のようにしてください。(指定のラベルからゲームを開始するという形になります)
engine. StartGame  (label);




2025年5月27日火曜日 2:25:41 UTC+9 asd65...@gmail.com:

トラキ

unread,
May 28, 2025, 1:43:35 AMMay 28
to 宴ユーザーグループ

ご返信ありがとうございます!ゲーム内でフローチャート機能を無事に実装しました!

Reply all
Reply to author
Forward
0 new messages