private void UpdateMusicButtonLabel() { var demo = (DemoReel)RB.Game; if (RB.MusicIsPlaying()) { mMusicTurnSpeed = 50; mMusicPlayButton.Label = "H - Stop"; } else { mMusicPlayButton.Label = "H - Play"; } }
private void MusicButtonPressedCB(Button button, object userData) { var demo = (DemoReel)RB.Game; if (button == mMusicPlayButton) { if (!RB.MusicIsPlaying()) { demo.MusicPlay(); mMusicTurnSpeed = 50; } else { demo.MusicStop(); } } UpdateMusicButtonLabel(); }
/// <summary> /// Update /// </summary> public override void Update() { var demo = (DemoReel)RB.Game; for (int i = mFadeSounds.Count - 1; i >= 0; i--) { var soundRef = mFadeSounds[i]; RB.SoundVolumeSet(soundRef, RB.SoundVolumeGet(soundRef) * 0.75f); if (RB.SoundVolumeGet(soundRef) < 0.01f) { mFadeSounds.RemoveAt(i); } } if (!RB.MusicIsPlaying()) { mMusicTurnSpeed--; if (mMusicTurnSpeed < 0) { mMusicTurnSpeed = 0; } } mMusicTicks += mMusicTurnSpeed; for (int i = 0; i < mPianoButtons.Length; i++) { mPianoButtons[i].Update(); if (mPianoButtons[i].Pressed) { break; } } for (int i = 0; i < mEffectButtons.Length; i++) { mEffectButtons[i].Update(); if (mEffectButtons[i].Pressed) { break; } } mMusicPlayButton.Update(); mPositionalButton.Update(); mNextButton.Update(); mPrevButton.Update(); int color = 1; if ((RB.Ticks % 200 > 170 && RB.Ticks % 200 < 180) || (RB.Ticks % 200) > 190) { color = 5; } mNextButton.LabelColor = color; mPrevButton.LabelColor = color; if (RB.ButtonPressed(RB.BTN_SYSTEM)) { Application.Quit(); } mListenerPos = new Vector2i(330 + (Mathf.Sin(mPositionalTicks / 50.0f) * 100), (RB.DisplaySize.height / 2) + 32); if (mPositionalPlaying) { mSoundPos = RB.PointerPos(); RB.SoundPosSet(mPosSoundRef, mSoundPos); } RB.SoundListenerPosSet(mListenerPos); var positionalVol = RB.SoundVolumeGet(mPosSoundRef); // Change music volume to inverse of waterfall volume if (demo.IsMusicPlaying()) { RB.MusicVolumeSet((1.0f - positionalVol) * demo.MusicVolume()); } if (mPositionalPlaying) { mPositionalTicks++; positionalVol += 0.05f; if (positionalVol > 1) { positionalVol = 1; } RB.SoundVolumeSet(mPosSoundRef, positionalVol); } else { positionalVol -= 0.05f; if (positionalVol < 0) { positionalVol = 0; } RB.SoundVolumeSet(mPosSoundRef, positionalVol); } UpdateMusicButtonLabel(); UpdatePositionalButtonLabel(); }