public override void mUpdate()
 {
     base.mUpdate();
     if (Input.GetMouseButtonDown(0) && uguiHitUI.uiHited == false)
     {
         Vector2 v2 = GetScreenToWorldPos(Input.mousePosition);
         colli = Physics2D.OverlapPoint(v2);
     }
     if (colli != null && Input.GetMouseButtonUp(0))
     {
         Vector2    v2     = GetScreenToWorldPos(Input.mousePosition);
         Collider2D colli2 = Physics2D.OverlapPoint(v2);
         if (colli2 != colli)
         {
             colli = null;
             return;
         }
         ObjView view = colli.GetComponent <ObjView>();
         if (view == null)
         {
             return;
         }
         string      stateName = view.GetState();
         SelectState state     = getSelectState(stateName);
         if (state == null)
         {
             Debug.LogError("stateName = {0}未注册!" + stateName);
             return;
         }
         state.viewTarget = view;
         setState(stateName);
     }
 }
    public override void mPhoneUpdate()
    {
        base.mPhoneUpdate();
        if (Input.touchCount != 1 || uguiHitUI.uiHited == true)
        {
            return;
        }
        Touch touch = Input.GetTouch(0);

        switch (touch.phase)
        {
        case TouchPhase.Began:
            Vector2 v2 = GetScreenToWorldPos(touch.position);
            colli = Physics2D.OverlapPoint(v2);
            return;

        case TouchPhase.Moved:
            if (colli != null)
            {
                colli = null;
            }
            return;

        case TouchPhase.Ended:
            break;

        case TouchPhase.Stationary:
        case TouchPhase.Canceled:
        default:
            return;
        }

        if (colli != null)
        {
            Vector2    v2     = GetScreenToWorldPos(Input.mousePosition);
            Collider2D colli2 = Physics2D.OverlapPoint(v2);
            if (colli2 != colli)
            {
                colli = null;
                return;
            }
            ObjView view = colli.GetComponent <ObjView>();
            if (view == null)
            {
                return;
            }
            string      stateName = view.GetState();
            SelectState state     = getSelectState(stateName);
            if (state == null)
            {
                return;
            }
            state.viewTarget = view;
            setState(stateName);
        }
    }
    public override void mUpdate()
    {
        base.mUpdate();

        if (Input.GetMouseButtonDown(0) && uguiHitUI.uiHited == false)
        {
            canMove = false;
            Vector2 v2 = GetScreenToWorldPos(Input.mousePosition);
            colli = Physics2D.OverlapPoint(v2);
            if (colli == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            HandleView handle = colli.GetComponent <HandleView>();
            if (handle != null)
            {
                handle.SetState(selectMachine);
                return;
            }

            ObjView view = colli.GetComponent <ObjView>();
            if (view == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            else if (view == viewTarget)
            {
                canMove = true;
                return;
            }
            else
            {
                changed = true;
                string      stateName = view.GetState();
                SelectState state     = getSelectState(stateName);
                if (state == null)
                {
                    return;
                }
                state.viewTarget = view;
                setState(stateName);
            }
        }
        if (Input.GetMouseButtonUp(0))
        {
            canMove = false;
        }
    }
    public override void mPhoneUpdate()
    {
        base.mPhoneUpdate();
        if (uguiHitUI.uiHited == true || Input.touchCount != 1)
        {
            return;
        }
        Touch touch = Input.GetTouch(0);

        if (touch.phase == TouchPhase.Began)
        {
            Vector2 v2 = GetScreenToWorldPos(touch.position);
            colli = Physics2D.OverlapPoint(v2);
            if (colli == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            HandleView handle = colli.GetComponent <HandleView>();
            if (handle != null)
            {
                return;
            }
            ObjView view = colli.GetComponent <ObjView>();
            if (view == null)
            {
                return;
            }
            else if (view.objData == target)
            {
                return;
            }
            else
            {
                if (view.objData is ProductData)
                {
                    Select(view.objData as ProductData);
                }
            }
        }
    }
Exemple #5
0
    public override void enter()
    {
        base.enter();

        //if (toggleButton.onDown == false)
        //{
        //    setState(EditTypeOnSelect.Free);
        //    UITool.SetActionFalse(optionPage.RectRotation.gameObject);
        //    return;
        //}
        //UITool.SetActionTrue(optionPage.RectRotation.gameObject);

        productData = machine.selectGoodsState2D.target;
        viewTarget  = machine.selectGoodsState2D.viewTarget;
        rotateObj   = machine.selectGoodsState2D.rotateObj;
        Vector3 size = machine.selectGoodsState2D.targetProduct.size;

        targetSize   = size.x * Vector3.right + size.z * Vector3.up;
        targetOffset = size.x / viewTarget.transform.localScale.x * Vector3.right
                       + size.z / viewTarget.transform.localScale.y * Vector3.up;
        center     = getV2(productData.position);
        startAngle = productData.rotate;
        if (Application.platform == RuntimePlatform.Android || Application.platform == RuntimePlatform.IPhonePlayer)
        {
            if (Input.touchCount < 1)
            {
                setState(EditTypeOnSelect.Free);
                return;
            }
            oldPos = startPos = inputCamera.ScreenToWorldPoint(Input.GetTouch(0).position);
            MyTickManager.Add(phoneUpdate);
        }
        else
        {
            oldPos = startPos = inputCamera.ScreenToWorldPoint(Input.mousePosition);
            MyTickManager.Add(update);
        }
    }
    public override void mUpdate()
    {
        base.mUpdate();
        if (Input.GetMouseButtonDown(0) && uguiHitUI.uiHited == false)
        {
            Vector2 v2 = GetScreenToWorldPos(Input.mousePosition);
            colli = Physics2D.OverlapPoint(v2);
            if (colli == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            HandleView handle = colli.GetComponent <HandleView>();
            if (handle != null)
            {
                return;
            }

            ObjView view = colli.GetComponent <ObjView>();
            if (view == null)
            {
                return;
            }
            else if (view.objData == target)
            {
                return;
            }
            else
            {
                if (view.objData is ProductData)
                {
                    Select(view.objData as ProductData);
                }
            }
        }
    }
    public override void mPhoneUpdate()
    {
        base.mPhoneUpdate();
        if (uguiHitUI.uiHited == true || Input.touchCount != 1)
        {
            return;
        }
        Touch touch = Input.GetTouch(0);

        if (touch.phase == TouchPhase.Began)
        {
            canMove = false;
            Vector2 v2 = GetScreenToWorldPos(touch.position);
            colli = Physics2D.OverlapPoint(v2);
            if (colli == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            HandleView handle = colli.GetComponent <HandleView>();
            if (handle != null)
            {
                handle.SetState(selectMachine);
                return;
            }
            ObjView view = colli.GetComponent <ObjView>();
            if (view == null)
            {
                setState(FreeState2D.NAME);
                return;
            }
            else if (view == viewTarget)
            {
                canMove = true;
                return;
            }
            else
            {
                changed       = true;
                tempColiiView = view;
            }
        }
        else if (touch.phase == TouchPhase.Moved)
        {
            tempColiiView = null;
        }
        else if (touch.phase == TouchPhase.Ended)
        {
            if (canMove == true)
            {
                canMove = false;
                return;
            }

            if (tempColiiView == null)
            {
                setState(FreeState2D.NAME);
                return;
            }

            string      stateName = tempColiiView.GetState();
            SelectState state     = getSelectState(stateName);
            if (state == null)
            {
                return;
            }
            state.viewTarget = tempColiiView;
            setState(stateName);
        }
    }