BGM/SE実装
This commit is contained in:
parent
29b07d1f81
commit
bfbb5db400
|
|
@ -136,9 +136,11 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
switch (x)
|
||||
{
|
||||
case MenuState.StageSelect:
|
||||
SoundManager.Instance.PlayBGM("bgm_Main");
|
||||
resultManager.gameObject.SetActive(false);
|
||||
break;
|
||||
case MenuState.Game:
|
||||
SoundManager.Instance.PlayBGM("bgm_minigame");
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(x), x, null);
|
||||
|
|
@ -153,6 +155,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
|
||||
resultManager.OnClose.ThrottleFirst(TimeSpan.FromMilliseconds(.2f)).Subscribe(_ =>
|
||||
{
|
||||
SoundManager.Instance.ChangeVolumeUniqueBGM(1f);
|
||||
UpdatePlayCount();
|
||||
scoreUpdate.OnNext(Unit.Default);
|
||||
menuState.Value = MenuState.StageSelect;
|
||||
|
|
@ -166,7 +169,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
state.Value = GameState.Play;
|
||||
}).AddTo(this);
|
||||
|
||||
state.Debug("gameState").Subscribe(x =>
|
||||
state.Subscribe(x =>
|
||||
{
|
||||
readyObject.SetActive(x == GameState.Ready);
|
||||
switch (x)
|
||||
|
|
@ -174,16 +177,26 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
case GameState.Ready:
|
||||
break;
|
||||
case GameState.Play:
|
||||
Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1f))
|
||||
SoundManager.Instance.PlaySE("se_minigame_Start");
|
||||
var sharedTimer = Observable.Timer(TimeSpan.Zero, TimeSpan.FromSeconds(1f))
|
||||
.Select(time => (int)(timeLimit - time))
|
||||
.TakeWhile(time => time >= 0)
|
||||
.Subscribe(time =>
|
||||
.TakeWhile(time => time > 0)
|
||||
.Share();
|
||||
sharedTimer.Subscribe(time =>
|
||||
{
|
||||
headerView.ChangeTimeCount(time);
|
||||
}, () =>
|
||||
{
|
||||
headerView.ChangeTimeCount(0f);
|
||||
state.Value = GameState.Success;
|
||||
}).AddTo(gameCompositeDisposable);
|
||||
sharedTimer
|
||||
.Where(time => time <= 5)
|
||||
.Take(1)
|
||||
.Subscribe(time =>
|
||||
{
|
||||
SoundManager.Instance.PlaySE("se_minigame_RemainingTimeLeft");
|
||||
}).AddTo(gameCompositeDisposable);
|
||||
break;
|
||||
case GameState.Success:
|
||||
break;
|
||||
|
|
@ -257,6 +270,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
|
||||
private void ResetGame(ScrollGamePlaceData[] placeList, ScrollGameStageData stageData)
|
||||
{
|
||||
SoundManager.Instance.ChangeVolumeUniqueBGM(1f);
|
||||
stageManager.ResetStage();
|
||||
player.transform.position = characterBeginPos;
|
||||
player.Stay();
|
||||
|
|
@ -274,8 +288,12 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
case GameState.Play:
|
||||
break;
|
||||
case GameState.Success:
|
||||
SoundManager.Instance.PlaySE("se_minigame_End");
|
||||
player.Stay();
|
||||
this.CallWaitForSeconds(1f, () =>
|
||||
{
|
||||
resultManager.ShowResult(scoreCount.Value, placeList, stageData);
|
||||
});
|
||||
break;
|
||||
case GameState.Failure:
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
return;
|
||||
}
|
||||
|
||||
SoundManager.Instance.PlaySE("se_minigame_Jump");
|
||||
animator?.Play("Brother_pink_jump");
|
||||
isJump = true;
|
||||
jumpCoroutine = this.CallLerp(jumpTime, t =>
|
||||
|
|
@ -80,6 +81,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
{
|
||||
return;
|
||||
}
|
||||
SoundManager.Instance.PlaySE("se_minigame_Collide");
|
||||
animator?.Play("Brother_pink_FallDown");
|
||||
isPreHit = true;
|
||||
hitDisposable?.Dispose();
|
||||
|
|
@ -93,6 +95,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
}, () =>
|
||||
{
|
||||
isJump = false;
|
||||
SoundManager.Instance.PlaySE("se_minigame_FallDown");
|
||||
this.CallLerp(hitTime, t =>
|
||||
{
|
||||
}, () =>
|
||||
|
|
@ -110,6 +113,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
|
||||
public void AddCount()
|
||||
{
|
||||
SoundManager.Instance.PlaySE("se_minigame_ItemGet");
|
||||
count++;
|
||||
UpdateCount();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ namespace MyGame.Scenes.MiniGame.Scripts
|
|||
|
||||
public void ShowResult(int score, ScrollGamePlaceData[] placeList, ScrollGameStageData stageData)
|
||||
{
|
||||
SoundManager.Instance.ChangeVolumeUniqueBGM(.3f);
|
||||
var gameData = GameDataManager.GameData;
|
||||
var shopDataList = SpreadsheetDataManager.Instance.GetBaseDataList<ShopData>(Const.ShopDataSheet);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue