private void HandleGridAddNote(Note note) { NoteView noteView = NoteView.pool.SpawnEntity(_noteContainer, false); noteView.Initialize(note); noteView.onDestroy += HandleNoteViewDestroy; _noteViewMap[note] = noteView; }
public void Initialize(NoteView noteView, Piece piece) { this.piece = piece; transform.position = GridView.instance.anchor.ToWorldPosition(piece.position); _animator.speed = 1f / (GridView.instance.turnLength * 1.25f); _animator.Play("FlickPiece", -1, 0); onDestroy = delegate { }; }
public void Initialize(NoteView noteView, Piece piece) { this.piece = piece; transform.position = GridView.instance.anchor.ToWorldPosition(piece.position); _animator.speed = 1f / (GridView.instance.turnLength * 1.25f); _animator.enabled = true; _animator.Play("SpecialHoldPiece", -1, 0); _tempTransform.position = GridView.instance.anchor.ToWorldPosition(new Vector2(piece.position.x, 4f)); onDestroy = delegate { }; _tempoFillTransform.gameObject.SetActive(false); }
public void Initialize(NoteView noteView, Piece piece) { this.piece = piece; transform.SetAsFirstSibling(); transform.position = GridView.instance.anchor.ToWorldPosition(piece.position); if (this.piece.previous == null) { _icon.transform.localScale = new Vector3(2f, 2f, 1f); } else { _icon.transform.localScale = Vector3.one; } _icon.transform.localPosition = Vector3.zero; _animator.speed = 1f / (GridView.instance.turnLength * 1.25f); _animator.enabled = true; _animator.Play("DragPiece", -1, 0); if (this.piece.next == null) { _tempo.gameObject.SetActive(false); } else { _tempo.gameObject.SetActive(true); _tempo.transform.position = GridView.instance.anchor.ToWorldPosition(this.piece.position); Vector3 dir = this.piece.next.position - this.piece.position; if (GridView.instance.anchor.direction < 0) { dir.y = -dir.y; } _tempo.transform.rotation = Quaternion.LookRotation(Vector3.forward, dir); _tempo.rectTransform.sizeDelta = new Vector2(25f, GridView.instance.cellSize * dir.magnitude); _tempo.fillAmount = 0f; _tempo.fillOrigin = 0; } onDestroy = delegate { }; _currentPiece = null; _icon.SetActive(true); }
public void Initialize(NoteView noteView, Piece piece) { this.piece = piece; transform.position = GridView.instance.anchor.ToWorldPosition(piece.position); _animator.speed = 1f / (GridView.instance.turnLength * 1.25f); _animator.enabled = true; _animator.Play("HoldPiece", -1, 0); _tempoFillTransform.rotation = Quaternion.identity; float angleZ = piece.note.direction * GridView.instance.anchor.direction > 0 ? 180f : 0f; _tempoFillTransform.Rotate(new Vector3(0f, 0f, angleZ)); _tempoFillTransform.sizeDelta = Vector2.zero; _tempTransform.rotation = Quaternion.identity; _tempTransform.sizeDelta = new Vector2(GridView.instance.cellSize * 1.7f, piece.tempo / 2 * GridView.instance.cellSize); _tempTransform.Rotate(new Vector3(0f, 0f, angleZ)); onDestroy = delegate { }; }
private void HandleNoteViewDestroy(NoteView noteView) { _noteViewMap.Remove(noteView.note); }