/// <summary> /// Play BGM. /// </summary> /// <param name="path">Resources in File path</param> /// <param name="fadeTime">Fade In Time</param> public void PlayBGM(string path, float fadeTime = 0f, bool isLoop = true) { AudioClip clip = ClipLoad(path); if (clip != null) { bgmPlayer.Play(clip, fadeTime, isLoop); } }
private void MainOsu() { BlackCurtain.Visibility = Visibility.Collapsed; imgOsuLogo.BeginAnimation(OpacityProperty, null); imgOsuLogo.Opacity = 1; currentSection = OsuSection.MainScreen; HotkeyImplementing(); BackgroundSlide(); BGMPlayer.Source = new Uri(workingResources.BaseDir + @"\Resources\Default Audio\Circle.wav"); BGMPlayer.Play(); MainOsuHeader.Visibility = Visibility.Visible; BGMPlayer.MediaEnded += BGMPlayer_MediaEnded; AccountInfo.Visibility = Visibility.Visible; imgOsuLogo.Margin = new Thickness(130); defaultLogoMargin = imgOsuLogo.Margin; osuCookieBehaviour = OsuCookieBehaviour.ClickToOpenTab; ChangeAllSettingIconUnlit(SettingIcon1); SettingIcon1.Opacity = 1; OsuBouncingController(240); grdBackLightContainer.Visibility = Visibility.Visible; //Add default margin to SelectionTab imgPlayTab.Tag = new EndAnimationPos(new Thickness(450, 155, 210, 515), new Thickness(490, 155, 170, 515)); imgExitTab.Tag = new EndAnimationPos(new Thickness(450, 505, 210, 165), new Thickness(490, 505, 170, 165)); imgEditTab.Tag = new EndAnimationPos(new Thickness(430, 275, 130, 395), new Thickness(470, 275, 130, 395)); imgOptionTab.Tag = new EndAnimationPos(new Thickness(440, 385, 110, 285), new Thickness(470, 385, 130, 285)); imgSoloTab.Tag = new EndAnimationPos(new Thickness(460, 225, 210, 447), new Thickness(500, 225, 170, 447)); imgMultiTab.Tag = new EndAnimationPos(new Thickness(460, 335, 200, 335), new Thickness(500, 335, 160, 335)); imgBackTab.Tag = new EndAnimationPos(new Thickness(460, 440, 200, 230), new Thickness(500, 440, 160, 230)); }
private void PreviousClick(object sender, MouseButtonEventArgs e) { LastSongIndex--; BGMPlayer.Source = new Uri(beatmaps[LastSongIndex].GroupPath + @"\Background.mp3"); workingResources.Nowplaying = beatmaps[LastSongIndex].Artist + " - " + beatmaps[LastSongIndex].SongName; SongTrans(); ShowOverlayMessage("<< Prev"); BGMPlayer.Play(); }
/// <summary> /// 再生 /// </summary> public void Play() { if (Player.IsPlaying) { return; } var resName = ResNameData[Random.Range(0, ResNameData.Count - 1)]; Player.Play(resName, FadeTime); }
private void FadeInBlackBackGround() { BGMPlayer.Source = new Uri(workingResources.BaseDir + @"\Resources\Default Audio\Welcome.wav"); BGMPlayer.Play(); DoubleAnimation animation = new DoubleAnimation(0, 1, TimeSpan.FromSeconds(1)); BlackCurtain.BeginAnimation(OpacityProperty, animation); DoubleAnimation animationLogo = new DoubleAnimation(1, 0, TimeSpan.FromSeconds(1)); imgOsuLogo.BeginAnimation(OpacityProperty, animationLogo); }
IEnumerator Stage1Transition() { PlayerMovement playerMovement = player.GetComponent <PlayerMovement>(); playerMovement.StartCoroutine(playerMovement.GoToThePositonAndLookCenter(8)); yield return(TimeSlowDown()); screenShaker.Call(10, 3); yield return(new WaitWhile(() => screenShaker.active)); Transform bossTransform = boss.transform; while (bossTransform.position.y > -16) { yield return(new WaitForFixedUpdate()); bossTransform.position += Vector3.down * .3f; } yield return(new WaitForSeconds(.5f)); Animator bossAnimator = boss.GetComponent <Animator>(); bossAnimator.enabled = true; bossAnimator.SetTrigger("Show"); tempBossVoice.PlayDelayed(.1f); bossTransform.position = new Vector2(bossTransform.position.x, -6); yield return(new WaitForSeconds(2f)); bossAnimator.enabled = false; BGMPlayer.Play(); yield return(new WaitForSeconds(.5f)); battleStart = DateTime.Now; stageTitle.SetCard(1); playerMovement.EndCutscene(); bossAnimator.enabled = true; bossAnimator.SetTrigger("Summon"); yield return(new WaitForSeconds(.3f)); screenShaker.Call(15, 3); BossHealth bossHealth = boss.GetComponent <BossHealth>(); bossHealth.StartCoroutine(bossHealth.Refill()); yield return(new WaitForSeconds(2)); bossAnimator.SetTrigger("Toggle"); }
private void Start() { int index; BossController bossController = boss.GetComponent <BossController>(); if ((index = bossController.GetStageIndex()) < 1) { PlayerHealth.deathCount = 0; } else { BGMPlayer.Play(); stageTitle.SetCard(index); } }
private void PlayClick(object sender, MouseButtonEventArgs e) { pause.Set(); if (workingResources.IsBGMPause) { BGMPlayer.Play(); } else { BGMPlayer.Position = TimeSpan.FromSeconds(0); BGMPlayer.Play(); } ShowOverlayMessage("Play"); workingResources.IsBGMPause = false; }
// Update is called once per frame void FixedUpdate() { Player_FixedUpdate(); if (Input.anyKeyDown) { Pause = true; BGMPlayer.Pause(); } if (Input.GetKeyDown(KeyCode.Space)) { Pause = false; if (StageTime < 0) { BGMPlayer.time = 0; BGMPlayer.PlayDelayed(0 - StageTime); } else if (StageTime >= Stage.BGM.length) { } else { BGMPlayer.time = StageTime; BGMPlayer.Play(); } } DisPlayDataUpdate(); EditorDataUpdate(); if (Input.GetKeyDown(KeyCode.Delete)) { Delete(); } if (Input.GetKeyDown(KeyCode.UpArrow) && StageTime < Stage.BGM.length) { MoveTimewithKey(1); } else if (Input.GetKeyDown(KeyCode.DownArrow) && StageTime > 0) { MoveTimewithKey(-1); } }
private void Present() { // Enemy Model -> Views // 敵の名前をViewに表示する _enemyView.DisplayName(_enemy.Name); // 敵の姿をViewに表示する _enemyView.DisplayFigure(_enemy.Figure); // 敵のHPをViewに表示する _enemy.CurrentHitPoint .Subscribe(_enemyView.DisplayHp) .AddTo(_compositeDisposable); // 敵が攻撃を受けたことをViewに通知する _enemy.OnDamagedAsObservable() .Subscribe(damagedPoint => _enemyView.DisplayDamaged(damagedPoint)) .AddTo(_compositeDisposable); // 敵が殺されたことをViewに通知する _enemy.OnDiedAsObservable() .Subscribe(attackerName => _enemyView.DisplayDied(attackerName)) .AddTo(_compositeDisposable); // Player Model -> Views // プレイヤーの名前をViewに表示する _playerView.DisplayName(_player.Name); // プレイヤーの姿をViewに表示する _playerView.DisplayFigure(_player.Figure); // プレイヤーのHPをViewに表示する _player.CurrentHitPoint .Subscribe(_playerView.DisplayHp) .AddTo(_compositeDisposable); // プレイヤーが攻撃されたことをViewに通知する _player.OnDamagedAsObservable() .Subscribe(damagedPoint => _playerView.DisplayDamaged(damagedPoint)) .AddTo(_compositeDisposable); // プレイヤーが死んだことをViewに通知する _player.OnDiedAsObservable() .Subscribe(attackerName => _playerView.DisplayDied(attackerName)) .AddTo(_compositeDisposable); // プレイヤーが回復したことをViewに通知する _player.OnHealedAsObservable() .Subscribe(healedPoint => _playerView.DisplayHealed(healedPoint)) .AddTo(_compositeDisposable); // Enemy View -> Models // 敵が攻撃したことをModelに通知する _enemyView.OnAttackTriggerAsObservable() .Subscribe(attackerName => _player.TakeDamage(attackerName, _enemy.AttackPower)) .AddTo(_compositeDisposable); // Player View -> Models // プレイヤーが攻撃したことを通知する _playerView.OnAttackTriggerAsObservable() .Subscribe(attackerName => _enemy.TakeDamage(attackerName, _player.AttackPower)) .AddTo(_compositeDisposable); // プレイヤーが回復魔法を唱えたことを通知する _playerView.OnHealTriggerAsObservable() .Subscribe(_ => _player.Heal(_player.HealPower)) .AddTo(_compositeDisposable); // 今回は一時的にここでBGM再生処理を行う _bgmPlayer.Play(); }
void Start() { Player.Play(ResName, FadeData); }
private void NextClick(object sender, MouseButtonEventArgs e) { NextSong(); ShowOverlayMessage(">> Next"); BGMPlayer.Play(); }
/// <summary> /// お絵かきモード /// </summary> void Drawing() { player.Play(drawingResName, fadeTime); }
void ChangeState(State state) { switch (state) { case State.WAITING_USER_INPUT: for (int i = attackUp.Count - 1; i >= 0; i--) { attackUp[i].turnNum--; if (attackUp[i].turnNum <= 0) { attackUp.Remove(attackUp[i]); } } for (int i = damagedUp.Count - 1; i >= 0; i--) { damagedUp[i].turnNum--; if (damagedUp[i].turnNum <= 0) { damagedUp.Remove(damagedUp[i]); } } this.state = State.WAITING_USER_INPUT; break; case State.PLAYER_ATTACK: playerAttackRemaining.Restart(PLAYER_ATTACK_TIME); for (int i = 0; i < attackPower.Length; i++) { attackPower[i] = 0f; } this.state = State.PLAYER_ATTACK; break; case State.WAITING_ALL_PLAYER_ATTACKS_END: playerAttackEffectRemainingTime = 1f; this.state = State.WAITING_ALL_PLAYER_ATTACKS_END; break; case State.ENEMY_DAMAGING: enemyDamagingRemainingTime = 3f; float one = 0.15f; float space = 0.05f; int select = Random.Range(0, 6); if (select == 0) { tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); circleAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); crossAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } if (select == 1) { tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); crossAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); circleAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } if (select == 2) { crossAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); circleAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } if (select == 3) { crossAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); circleAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } if (select == 4) { circleAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); crossAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } if (select == 5) { circleAttackTiming = enemyDamagingRemainingTime - Random.Range(0f, one); crossAttackTiming = enemyDamagingRemainingTime - Random.Range(one + space, one * 2 + space); tryangleAttackTiming = enemyDamagingRemainingTime - Random.Range(one * 2 + space * 2, one * 3 + space * 2); } tryangleAttackStartEffected = false; circleAttackStartEffected = false; crossAttackStartEffected = false; enemyDamagedTryangle = false; enemyDamagedCircle = false; enemyDamagedCross = false; this.state = State.ENEMY_DAMAGING; break; case State.ENEMY_ATTACK: enemyAttacked = false; enemyAttackRemainingTime = 3.5f; enemyManager.AttackEffect(); this.state = State.ENEMY_ATTACK; break; case State.NEXT_WAVE: nextWaveRemainingTime = 2f; enemyManager.transform.localPosition = new Vector3(0f, 1200f, 0f); this.state = State.NEXT_WAVE; wave++; if (wave < CurrentStageData.Data.enemyList.Count) { foreach (var enemy in CurrentStageData.Data.enemyList[wave].List) { enemyManager.SpawnEnemy(enemy); } if (wave == CurrentStageData.Data.enemyList.Count - 1) { BGMPlayer.Play(BGM.Name.BOSS); } } else { ChangeState(State.CLEAR); } break; case State.CLEAR: BGMPlayer.Play(BGM.Name.CLEAR); SceneManager.LoadScene("ResultSuccess", LoadSceneMode.Additive); this.state = State.CLEAR; break; case State.GAME_OVER: BGMPlayer.Play(BGM.Name.GAME_OVER); SceneManager.LoadScene("ResultFaild", LoadSceneMode.Additive); this.state = State.GAME_OVER; break; } }