예제 #1
0
    public void OnPointerDown(PointerEventData eventData)
    {
        joinGuide.OperationStart();
        if (isInit == false)
        {
            Init();
        }
        //选中画笔的情况下,素材不可以拖动
        if (GameManager.instance.curJoinType == JoinType.Animal)
        {
            //动物拼接的第一步,第二步时,头不可以动
            if (joinMainView.step == 1 || joinMainView.step == 2)
            {
                if (partType == PartType.Head && dragCount != 0)
                {
                    return;
                }
            }

            //动物拼接的第三步第四步,眼睛鼻子不可以动
            if (joinMainView.step == 3 || joinMainView.step == 4)
            {
                if (partType == PartType.LeftEye || partType == PartType.RightEye || partType == PartType.Mouth)
                {
                    return;
                }
            }
        }
        else
        {
            if (joinMainView.step == 1)
            {
                return;
            }
        }
        Vector3 screenPos = Camera.main.WorldToScreenPoint(transform.position);

        offset = transform.position - Camera.main.ScreenToWorldPoint(new Vector3(eventData.position.x, eventData.position.y, screenPos.z));
        AudioManager.instance.PlayOneShotAudio("Audio/option_audio/common_option_audio|dragend");
        joinMainView.SetSelectResObj(transform);
        joinMainView.ShowBackBtn(false);
    }
예제 #2
0
    public void OnBeginDrag(PointerEventData eventData)
    {
        joinGuide.OperationStart();
        moveSelf = true;
        //if (Mathf.Abs(eventData.delta.x) < Mathf.Abs(eventData.delta.y) )
        Debug.Log(Mathf.Abs(eventData.delta.x) + "   " + Mathf.Abs(eventData.delta.y));
        if (Mathf.Abs(eventData.delta.x) < 0.5f * Mathf.Abs(eventData.delta.y))
        {
            moveSelf = false;
            scrollRect.OnBeginDrag(eventData);
            return;
        }
        AudioManager.instance.PlayOneShotAudio("Audio/option_audio/common_option_audio|dragend");
        TemplateResType type = GameManager.instance.curSelectResType;

        if (type == TemplateResType.Hand || type == TemplateResType.Leg)//手脚
        {
            genParent = GameObject.Find("group_handleg").transform;
        }
        else if (type == TemplateResType.Eye || type == TemplateResType.Mouth || type == TemplateResType.Hair)
        {
            genParent = GameObject.Find("group_eyemouthhair").transform;
        }
        else if (type == TemplateResType.Hat || type == TemplateResType.HeadWear)
        {
            genParent = GameObject.Find("group_hatheadwear").transform;
        }
        else if (type == TemplateResType.Head)
        {
            genParent = GameObject.Find("group_head").transform;
        }
        else if (type == TemplateResType.TrueBody)
        {
            genParent = GameObject.Find("group_truebody").transform;
        }
        GameObject obj = UIHelper.instance.LoadPrefab("Prefabs/join|gen_res", genParent, eventData.position, Vector3.one, false);

        obj.GetComponent <ResDragItem>().InitItem(transform.GetSiblingIndex(), resPath);
        obj.transform.name     = type.ToString();
        eventData.pointerPress = obj;
        eventData.pointerDrag  = obj;
    }