public void Check(float _v) { if (Items.Count < nCount) { return; } if (_v < 0) {//向左运动 Debug.Log("向左运动"); for (int i = 0; i < Items.Count; i++) { if (Items[i].v < (VMin - (1.0f / (float)nCount) / 2)) { GotoLaserItems.Add(Items[i]); } } if (GotoLaserItems.Count > 0) { for (int i = 0; i < GotoLaserItems.Count; i++) { GotoLaserItems[i].v = Items[Items.Count - 1].v + (1.0f / (float)nCount); Items.Remove(GotoLaserItems[i]); Items.Add(GotoLaserItems[i]); } GotoLaserItems.Clear(); } } else if (_v > 0) {//向右运动,需要把右边的放到前面来 Debug.Log("向右运动"); for (int i = Items.Count - 1; i > 0; i--) { if (Items[i].v > VMax) { GotoFirstItems.Add(Items[i]); } } if (GotoFirstItems.Count > 0) { for (int i = 0; i < GotoFirstItems.Count; i++) { GotoFirstItems[i].v = Items[0].v - (1.0f / nCount); Items.Remove(GotoFirstItems[i]); Items.Insert(0, GotoFirstItems[i]); } GotoFirstItems.Clear(); } } }
public void Check(float _v) { if (Items.Count < 5) { return; } if (_v < 0) { //向左运动 for (int i = 0; i < Items.Count; i++) { if (Items[i].v < (VMin - AddValue / 2)) { GotoLaserItems.Add(Items[i]); } } if (GotoLaserItems.Count > 0) { for (int i = 0; i < GotoLaserItems.Count; i++) { GotoLaserItems[i].v = Items[Items.Count - 1].v + AddValue; Items.Remove(GotoLaserItems[i]); Items.Add(GotoLaserItems[i]); } GotoLaserItems.Clear(); } } else if (_v > 0) { //向右运动,需要把右边的放到前面来 for (int i = Items.Count - 1; i > 0; i--) { if (Items[i].v > VMax) { GotoFirstItems.Add(Items[i]); } } if (GotoFirstItems.Count > 0) { for (int i = 0; i < GotoFirstItems.Count; i++) { GotoFirstItems[i].v = Items[0].v - AddValue; Items.Remove(GotoFirstItems[i]); Items.Insert(0, GotoFirstItems[i]); } GotoFirstItems.Clear(); } } }
public void Check(float _v) { if (_v < 0) //向左运动 { for (int i = 0; i < Items.Count; i++) { if (Items[i].positonValue < (VMin - AddValue / 2)) { GotoLaserItems.Add(Items[i]); } } if (GotoLaserItems.Count > 0) { for (int i = 0; i < GotoLaserItems.Count; i++) { GotoLaserItems[i].positonValue = Items[Items.Count - 1].positonValue + AddValue; Items.Remove(GotoLaserItems[i]); Items.Add(GotoLaserItems[i]); } GotoLaserItems.Clear(); } } else if (_v > 0) //向右运动,需要把右边的放到前面来 { for (int i = Items.Count - 1; i > 0; i--) { if (Items[i].positonValue >= VMax) { GotoFirstItems.Add(Items[i]); } } if (GotoFirstItems.Count > 0) { for (int i = 0; i < GotoFirstItems.Count; i++) { GotoFirstItems[i].positonValue = Items[0].positonValue - AddValue; Items.Remove(GotoFirstItems[i]); Items.Insert(0, GotoFirstItems[i]); } GotoFirstItems.Clear(); } } }