/// <summary> Инициализация дополнительных компонентов </summary> private void InitializeComponentEx() { Text = _album.AlbumName; _songControl = new SongControl(_database, _album) { Dock = DockStyle.Fill }; Controls.Add(_songControl); }
/// <summary> /// UI控件注册事件 /// </summary> /// <param name="uiControlsName">UI控件名称</param> /// <param name="uIBehaviour">UI控件</param> internal override void RegisterUIControlEvent(string uiControlsName, UIBehaviour uIBehaviour) { switch (uiControlsName) { case "SinglePlay": uIBehaviour.OnToggleValueChange(new UnityEngine.Events.UnityAction <bool>((isOn) => { if (isOn) { SongControl.ChangeSongPlayType(CycleType.SinglePlay); } })); break; case "SingleCycle": uIBehaviour.OnToggleValueChange(new UnityEngine.Events.UnityAction <bool>((isOn) => { if (isOn) { SongControl.ChangeSongPlayType(CycleType.SingleCycle); } })); break; case "PlayOrder": uIBehaviour.OnToggleValueChange(new UnityEngine.Events.UnityAction <bool>((isOn) => { if (isOn) { SongControl.ChangeSongPlayType(CycleType.PlayInOrder); } })); break; case "LoopPlayack": uIBehaviour.OnToggleValueChange(new UnityEngine.Events.UnityAction <bool>((isOn) => { if (isOn) { SongControl.ChangeSongPlayType(CycleType.LoopPlayback); } })); break; case "RandomPlay": uIBehaviour.OnToggleValueChange(new UnityEngine.Events.UnityAction <bool>((isOn) => { if (isOn) { SongControl.ChangeSongPlayType(CycleType.RandomPlay); } })); break; default: break; } }
/********************************************************************************************/ /******************* Shortcut Bindings ****************************************************/ /********************************************************************************************/ private void Key_KeyDown(object sender, KeyEventArgs e) { Keys k = System.Windows.Forms.Keys.LButton | System.Windows.Forms.Keys.ShiftKey; if (e.Control && e.KeyCode != k && !(e.Shift || e.Alt)) { Tuple <Keys, Keys> keyValues = new Tuple <Keys, Keys>(Keys.Control, e.KeyCode); if (functionPairMap.ContainsKey(keyValues)) { function fpt = functionPairMap[keyValues]; fpt.Invoke(sender, e); } } else if (e.Control && e.Shift && !e.Alt && e.KeyCode != k) { Tuple <Keys, Keys, Keys> keyValues = new Tuple <Keys, Keys, Keys>(Keys.Control, Keys.Shift, e.KeyCode); if (functionTriMap.ContainsKey(keyValues)) { function fpt = functionTriMap[keyValues]; fpt.Invoke(sender, e); } } else if (e.Control && !e.Shift && e.Alt && e.KeyCode != k) { Tuple <Keys, Keys, Keys> keyValues = new Tuple <Keys, Keys, Keys>(Keys.Control, Keys.Alt, e.KeyCode); if (functionTriMap.ContainsKey(keyValues)) { function fpt = functionTriMap[keyValues]; fpt.Invoke(sender, e); } } else if (e.KeyCode == Keys.Enter) { if (container.trackers.nowPlayingRow != songList.SelectedRows[0].Index) { container.trackers.nowPlayingRow = songList.SelectedRows[0].Index; SongControl.play(container); } } else if (e.KeyCode == Keys.Space) { if (!container.booleans.isPlaying && !container.booleans.isPaused) { playButton_Click(sender, e); } else { SongControl.play_pause(container); } } }
// Use this for initialization void Start() { playing = false; song = GameObject.Find("Song").GetComponent <AudioSource>(); string LowerSongName = ""; foreach (char letter in SongName) { LowerSongName += char.ToLower(letter); } Debug.Log("Looking for song " + LowerSongName); song.clip = Resources.Load(LowerSongName) as AudioClip; //magicConstant = realTime; //song.Play(); frameCount = 0; score = 0; pausing = false; randyTemp = 0; pauseTime = 0; noteCount = 0; scoreDisplay = GameObject.Find("Score").GetComponent <TextMesh>(); pointer = GameObject.Find("Pointer"); string SongNameNoSpaces = ""; foreach (char chr in SongName) { if (chr != ' ') { SongNameNoSpaces += char.ToLower(chr); } else { SongNameNoSpaces += '-'; } } SongControl.newSong(SongNameNoSpaces + "-" + difficulty, 3.0f); GameObject.Find("darude-sandstorm").GetComponent <TextMesh>().text = SongName; //song.clip = Resources.Load(SongName.ToLower()) as AudioClip; }
// Update is called once per frame void Update() { frameCount++; if (swag) { scoreDisplay.text = score.ToString(); } framerate = 1.0f / Time.deltaTime; realTime = Time.time - pauseTime; if (pausing) { handlePause(); } if (Input.GetKeyDown("space") || Input.GetKeyDown("joystick button 8") || Input.GetKeyDown("joystick button 9")) { pausing = true; randyTemp = Time.time; } if (!pausing) { if (SongControl.goAhead) { if (!playing) { song.Play(); Debug.Log("Should have started the song"); magicConstant = realTime; Debug.Log("Started playing at " + magicConstant + " which is now the constant"); } SongControl.playSong(); if (swag) { playing = true; } } } }
/// <summary> Инициализация дополнительных компонентов (загрузка контролов и их привязка к табам) </summary> private void InitializeComponentEx() { _groupsControl = new GroupsControl(_database) //загрузка контролов { Dock = DockStyle.Fill //заполнит форму }; tabPage1.Controls.Add(_groupsControl); //привязка к табам _songControl = new SongControl(_database) { Dock = DockStyle.Fill }; tabPage2.Controls.Add(_songControl); _albumControl = new AlbumControl(_database) { Dock = DockStyle.Fill }; tabPage3.Controls.Add(_albumControl); }
/// <summary> /// 当Button点击时 /// </summary> private void RegisterOnButtonClick(int index) { SongControl.ChangeSong(index); }
/// <summary> /// UI控件注册事件 /// </summary> /// <param name="uiControlsName">UI控件名称</param> /// <param name="uIBehaviour">UI控件</param> internal override void RegisterUIControlEvent(string uiControlsName, UIBehaviour uIBehaviour) { switch (uiControlsName) { case "VolumeSlider": uIBehaviour.OnSliderValueChange(new UnityEngine.Events.UnityAction <float>((value) => SongControl.ChangeSongVolume(value))); break; default: break; } }
/******************* Play, Stop, Previous, Next Buttons ************************************/ private void playButton_Click(object sender, EventArgs e) { SongControl.setupPlay(container); }
private void nextButton_Click(object sender, EventArgs e) { SongControl.next(container); }
private void previousButton_Click(object sender, MouseEventArgs e) { SongControl.previous(container, e); }
private void stopButton_Click(object sender, EventArgs e) { SongControl.stop(container); }