Exemple #1
0
        /// <summary>
        /// 指定されたノーツを画面上に生成する
        /// </summary>
        public void GenerateObject(MusicNote note, int colorIndex = -1)
        {
            // 初期化処理
            MusicNoteGameObject noteObject = GetNoteObject();

            note.SetGameObject(noteObject);

            // 画像設定
            if (note.Place.IsLeftSide() || note.Place.IsRightSide())
            {
                noteObject.NoteImage.sprite = noteSprites[1];
            }
            else
            {
                noteObject.NoteImage.sprite = noteSprites[0];
            }

            // 色設定
            if (colorIndex == -1)
            {
                noteObject.NoteColor = Color.white;
            }
            else
            {
                noteObject.NoteColor = MusicConst.NotesColor[colorIndex];
            }
        }
Exemple #2
0
        /// <summary>
        /// 同時押し線の初期設定
        /// </summary>
        public void Initialize(MusicNoteGameObject startObject, MusicNoteGameObject endObject)
        {
            this.startObject = startObject;
            this.endObject   = endObject;

            gameObject.SetActive(true);
        }
        /// <summary>
        /// 対応する生成済みGameObjectを設定する
        /// </summary>
        public void SetGameObject(MusicNoteGameObject noteObject)
        {
            NoteObject = noteObject;

            IsAppeared = true;

            noteObject.Initialize(this);
        }
Exemple #4
0
        /// <summary>
        /// 利用可能なノーツを取得する、ない場合は作成する
        /// </summary>
        /// <returns>The note object.</returns>
        private MusicNoteGameObject GetNoteObject()
        {
            // 再利用可能オブジェクトがある場合は使用する
            MusicNoteGameObject noteObject = generatedNoteGameObjects.Find(obj => !obj.IsActive);

            if (noteObject != null)
            {
                return(noteObject);
            }

            // 生成処理
            noteObject = Instantiate(noteObjectPrefab, noteObjectRoot) as MusicNoteGameObject;
            generatedNoteGameObjects.Add(noteObject);
            return(noteObject);
        }