Пример #1
0
 // Find operate suit. 找到当前操作的块儿组
 void GetOperateSuit(OperateSuit str)
 {
     if (singleboxes.Length < 1) {
         FindBoxes ();
     }
     switch (str) {
     case OperateSuit.Left:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.z.Equals (1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.z > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Right:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.z.Equals (-1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.z < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Up:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.y.Equals (1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.y > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Down:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.y.Equals (-1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.y < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Front:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.x.Equals (-1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.x < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Back:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.x.Equals (1)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.x > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Entriety:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
             operatelist.Add (b);
         }
         break;
     case OperateSuit.MiddleX:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.x.Equals (0)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.x >= -0.5f && b.transform.position.x <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.MiddleY:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.y.Equals (0)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.y >= -0.5f && b.transform.position.y <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.MiddleZ:
         operatelist.Clear ();
         foreach (SingleBox b in singleboxes) {
     //				if (b.transform.position.z.Equals (0)) {
     //					operatelist.Add (b);
     //				}
             if (b.transform.position.z >= -0.5f && b.transform.position.z <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     }
 }
Пример #2
0
 // Find operate suit. 找到当前操作的块儿组,这个需要修改来适应多阶魔方,
 // 为魔方添加各个位置的参数的话,可能比较方便的统计每个操作组里面都有哪些,需要以后修改尝试
 void GetOperateSuit(OperateSuit str)
 {
     switch (str) {
     case OperateSuit.Left:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.z > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Right:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.z < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Up:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.y > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Down:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.y < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Front:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.x < -0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Back:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.x > 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.Entriety:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             operatelist.Add (b);
         }
         break;
     case OperateSuit.MiddleX:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.x >= -0.5f && b.transform.position.x <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.MiddleY:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.y >= -0.5f && b.transform.position.y <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     case OperateSuit.MiddleZ:
         operatelist.Clear ();
         foreach (SingleCube b in Cubes) {
             if (b.transform.position.z >= -0.5f && b.transform.position.z <= 0.5f) {
                 operatelist.Add (b);
             }
         }
         break;
     }
 }
Пример #3
0
    // Find operate suit. 找到当前操作的块儿组
    void GetOperateSuit(OperateSuit str)
    {
        if (singleboxes.Length < 1)
        {
            FindBoxes();
        }
        switch (str)
        {
        case OperateSuit.Left:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.z.Equals (1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.z > 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Right:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.z.Equals (-1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.z < -0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Up:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.y.Equals (1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.y > 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Down:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.y.Equals (-1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.y < -0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Front:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.x.Equals (-1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.x < -0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Back:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.x.Equals (1)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.x > 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.Entriety:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
                operatelist.Add(b);
            }
            break;

        case OperateSuit.MiddleX:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.x.Equals (0)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.x >= -0.5f && b.transform.position.x <= 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.MiddleY:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.y.Equals (0)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.y >= -0.5f && b.transform.position.y <= 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;

        case OperateSuit.MiddleZ:
            operatelist.Clear();
            foreach (SingleBox b in singleboxes)
            {
//				if (b.transform.position.z.Equals (0)) {
//					operatelist.Add (b);
//				}
                if (b.transform.position.z >= -0.5f && b.transform.position.z <= 0.5f)
                {
                    operatelist.Add(b);
                }
            }
            break;
        }
    }