この記事は、[Unity]宴でよく使う&便利なスクリプト ~導入編~の続きです。
宴で自作したプログラムを使用する際に、個人的によく使うスクリプトを紹介してます。
なお、この記事では、[Unity]宴でよく使う&便利なスクリプト ~導入編~で紹介している、AdvEngineをアタッチしなくてもよい指定方法を使っていることを前提としています。
そのため、スクリプトのengineの最初のeが大文字になっています。(engineがEngineになっています。)
通常の方法でAdvEngineを指定されている方は、EngineのEを小文字にしてください。
それぞれのスクリプトの下に、宴公式ホームページの参考URLを掲載しました。
実際にどのような場面で使われているか等も書かれてありますので、ご参照ください。
シナリオ関連
WaitCustomを解除する
Engine.UiManager.IsInputTrigCustom = true;
シナリオラベルへジャンプする
Engine.JumpScenario("ジャンプしたいシナリオラベル");
※ "ジャンプしたいシナリオラベル"には、"*(小文字)"をつける必要はありません。
例えば、「*日常その1」というシナリオラベルにジャンプしたい場合は、以下のように記述します。
csharp
Engine.JumpScenario("日常その1");
参考:宴内でSendMessageByNameを使って、シナリオラベルにジャンプしたいとき
シナリオラベルを取得する
Engine.Page.ScenarioLabel;
サウンド関連(BGM、SE、ボイス)
BGM、SE、ボイスを再生する
//BGM
SoundManager.GetInstance().PlayBgm(bgm, true);
//SE
SoundManager.GetInstance().PlaySe(se, "", SoundPlayMode.Add, false);
//ボイス
SoundManager.GetInstance().PlayVoice("キャラクターラベル", voice, false);
参考:自作したゲーム部分で使用しているボイスやBGMを、宴のコンフィグで音量調整可能にする方法
サウンドを止める
Engine.SoundManager.StopBgm(fadeTime);
パラメータ関連
パラメータの値を取得する
Engine.Param.GetParameter("ParamTbl[hoge].point");
参考:ParamTbl
パラメータに値を代入する
Engine.Param.TrySetParameter("ParamTbl[hoge].point", "入れたい値");
参考:ParamTbl
パラメータが存在しているかどうかを取得する
(Engine.Param.GetParameter("パラメータ") != null);