private void DoMotion(Note note) { if (note.Between(Note.H0, Note.H18)) { DoHand(note - Note.H0); } var ik = FindObjectOfType <FretsIK>(); var n = (int)note; list = new List <Vector2Int>(); Add(Note.E0, Note.E18); Add(Note.A0, Note.A18); Add(Note.D0, Note.D18); Add(Note.G0, Note.G18); foreach (var range in list) { if (n.Between(range.x, range.y)) { ik.chord = n / 19; ik.fret = n - range.x; break; } } // 根据 手的位置和 目标品格 的位置 相隔的品格数 // 来选择使用哪根手指 os = ik.fret - ik.hand; if (os <= -1) { ik.finger = 1; } else if (os <= 0) { ik.finger = 2; } else if (os <= 1) { ik.finger = 3; } else if (os <= 2) { ik.finger = 4; } //ik.finger++; //if (ik.finger > 4) ik.finger = 0; }