示例#1
0
    void ConnectTwoPoint(LockItem pre, LockItem now)
    {
        if (pre == now)
        {
            return;
        }
        Vector3 pos   = (pre.transform.position + now.transform.position) / 2;
        Vector3 engel = Vector3.zero;
        float   dis   = Loc.Distance(pre.loc, now.loc);

        if (dis != 1)
        {
            if (pre.loc.y < now.loc.y && pre.loc.x < now.loc.x || pre.loc.y > now.loc.y && pre.loc.x > now.loc.x)
            {
                engel = new Vector3(0, 0, -45);
            }
            else
            {
                engel = new Vector3(0, 0, 45);
            }
        }
        else
        {
            if (pre.loc.y != now.loc.y)
            {
                engel = new Vector3(0, 0, 90);
            }
        }
        Image mag = GameObject.Instantiate <GameObject>(line).GetComponent <Image>();

        mag.transform.SetParent(lineTrans);
        mag.transform.localScale       = Vector3.one;
        mag.transform.position         = pos;
        mag.transform.localEulerAngles = engel;
    }
示例#2
0
 void OnItemEnter(LockItem trans)
 {
     if (!isBegin || _isEnd)
     {
         return;
     }
     if (recordList.Contains(trans.transform))
     {
         return;
     }
     if (Loc.Distance(prePoint.loc, trans.loc) >= 2)
     {
         return;
     }
     DrawSelection(trans);
     prePoint = trans;
 }