示例#1
0
    //-----------------------------------------------------------------
    //! @summary   UIへノーツ情報を反映させる
    //!
    //! @parameter [displayNotes] 表示するノーツ
    //!
    //! @return    なし
    //-----------------------------------------------------------------
    public void DisplayNotes(EditNotesController displayNotes)
    {
        // UIへ情報を反映させる
        if (displayNotes != null)
        {
            // ノーツデータの取得
            PiarhythmDatas.NoteData notesData = displayNotes.GetNotesData();

            // 音階の更新
            m_musicalScaleInputField.text = notesData.m_scale;

            // 開始の拍数を更新
            m_startBeatInputField.text = notesData.m_startBeat.ToString();

            // 音符の長さを更新
            m_noteLengthDropdown.value = notesData.m_noteLength;

            // 色の更新
            if (notesData.m_color == Color.magenta)
            {
                m_colorDropdown.value = 0;
            }
            else if (notesData.m_color == Color.green)
            {
                m_colorDropdown.value = 1;
            }
            else if (notesData.m_color == Color.cyan)
            {
                m_colorDropdown.value = 2;
            }
        }
    }
示例#2
0
    //-----------------------------------------------------------------
    //! @summary   ノーツの生成処理(引数あり)
    //!
    //! @parameter [notesDetas] ノーツデータの配列
    //!
    //! @return    なし
    //-----------------------------------------------------------------
    public void CreateNotes(PiarhythmDatas.NoteData noteData)
    {
        // ノーツを生成する
        GameObject newNotes = Instantiate(m_notesPrefab);

        // コンポーネントの取得
        EditNotesController editNotes = newNotes.GetComponent <EditNotesController>();

        // マネージャーを設定する
        editNotes.SetNotesManager(this);
        // キャンバスの設定
        editNotes.SetCanvas(m_canvas);
        // キーボード情報
        editNotes.SetKeyDictionary(m_keyDictionary);
        // NotesSheetControllerを設定する
        editNotes.SetNotesSheetController(m_notesSheetController);
        // OptionSheetControllerを設定する
        editNotes.SetOptionSheetController(m_optionSheetController);

        // MusicalScoreの子に設定する
        newNotes.GetComponent <RectTransform>().SetParent(m_musicalScore.GetComponent <RectTransform>());

        // 初期化処理
        editNotes.Initialize();

        // ノーツデータを設定する
        editNotes.SetNotesData(noteData);

        // リストに登録する
        m_notesList.Add(newNotes);
    }
示例#3
0
    //-----------------------------------------------------------------
    //! @summary   再生瞬間のノーツの処理
    //!
    //! @parameter [elapsedTime] 経過時間
    //!
    //! @return    なし
    //-----------------------------------------------------------------
    public void PlayMomentEditNotes(float elapsedTime)
    {
        foreach (GameObject notes in m_notesList)
        {
            PiarhythmDatas.NoteData notesData = null;

            // コンポーネントの取得
            if (notes.GetComponent <EditNotesController>())
            {
                EditNotesController editNotesController = notes.GetComponent <EditNotesController>();

                // データの取得
                notesData = editNotesController.GetNotesData();

                // 経過時間が既にノーツの開始時間を過ぎている
                float startTime = m_optionSheetController.GetStartTime(notesData.m_startBeat);
                if (elapsedTime > startTime)
                {
                    // 音をならないようにする
                    editNotesController.SetPlayedFlag(true);
                }
                else
                {
                    editNotesController.SetPlayedFlag(false);
                }
            }
            else
            {
                ConnectNoteController connectNoteController = notes.GetComponent <ConnectNoteController>();

                // データの取得
                notesData = connectNoteController.GetNoteData();

                // 経過時間が既にノーツの開始時間を過ぎている
                float startTime = m_optionSheetController.GetStartTime(notesData.m_startBeat);
                if (elapsedTime > startTime)
                {
                    // 音をならないようにする
                    connectNoteController.SetPlayedFlag(true);
                }
                else
                {
                    connectNoteController.SetPlayedFlag(false);
                }
            }
        }
    }
示例#4
0
    //-----------------------------------------------------------------
    //! @summary   停止瞬間のノーツの処理
    //!
    //! @parameter [void] なし
    //!
    //! @return    なし
    //-----------------------------------------------------------------
    public void StopMomentEditNotes()
    {
        foreach (GameObject notes in m_notesList)
        {
            if (notes.GetComponent <EditNotesController>())
            {
                // コンポーネントの取得
                EditNotesController editNotesController = notes.GetComponent <EditNotesController>();

                // 音を復活させる
                editNotesController.SetPlayedFlag(false);
            }
            else
            {
                // コンポーネントの取得
                ConnectNoteController connectNoteController = notes.GetComponent <ConnectNoteController>();

                // 音を復活させる
                connectNoteController.SetPlayedFlag(false);
            }
        }
    }