Esempio n. 1
0
 //删除重置拳法表
 public void RemoveBoxingList(BoxingView v1, BoxingView v2)
 {
     v2.RestItem(v1.data);
     pop.boxViewTable.Remove(v1);
     v1.gameObject.SetActive(false);
     NGUITools.Destroy(v1);
     pop.boxTable.Reposition();
     pop.boxScrollView.ResetPosition();
     pop.boxTable.repositionNow = true;
 }
Esempio n. 2
0
    //public bool BoxingCanSwap(BoxingView cur)
    //{
    //    bool flag = false;
    //    if (cur != null && cur.data != null && cur.data.level > 0 && pop.curRoleView.data.id)
    //    {

    //    }

    //    return flag;
    //}
    //设置技能
    public bool SwapBoxingList(ref BoxingView v1, ref BoxingView v2, GameObject sourceParent, Vector3 oriPos)
    {
        bool flag = false;//是否回归原位

        if (v1 != null && v1.data != null)
        {
            bool have = CheckHaveBoxing(v1.data);
            if (!have &&
                v1.tag != Def.BoxingSave
                )
            {
                UIWidget w = v1.GetComponent <UIWidget>();
                Debug.Log(w.depth);
                //
                if (v2 != null && v1.data.data.levelData.skill_type == v2.type && v1.tag != Def.BoxingSave && v2.tag == Def.BoxingSave)
                {
                    //移入装备技能
                    v2.RestItem(v1.data);
                    flag = true;
                }
                else if (v2 != null && v2.tag == Def.BoxingSave)//从上面移入装备栏 但类型不对
                {
                    ToastManager.Instance.Show("不可以放这个类型");
                }
                else
                {
                    //在上面的表移动
                    flag = true;
                }
            }
            else if (!have)//不用和才可移入装备
            {
                //交换两个
                BoxingDragView dr = v1.GetComponent <BoxingDragView>();
                if (v2 != null && v2.tag == Def.BoxingSave && dr != null)
                {
                    //在装备技能中移动
                    if (v2.data == null)
                    {
                        v2.RestItem(v1.data);
                        v1.RestEmpty();
                    }
                    else
                    {
                        BoxingViewData temp = v2.data;
                        v2.RestItem(v1.data);
                        v1.RestItem(temp);
                    }
                    v1.gameObject.transform.localPosition = dr.oriPos;
                } //移除
                else
                {//从一个移入一个空的
                    v1.RestEmpty();
                    v1.gameObject.transform.localPosition = dr.oriPos;
                }
            }
            else
            {
                //移除移入的不是下面的装备栏
                if ((v2 == null || v2.tag != Def.BoxingSave) && v1.tag == Def.BoxingSave)
                {
                    v1.RestEmpty();
                    flag = true;
                    v1.gameObject.transform.localPosition = oriPos;
                }
                else if (v2 != null && v1.type == v2.type && v1.tag == Def.BoxingSave && v2.tag == Def.BoxingSave) //同类互换
                {
                    flag = true;
                    v1.gameObject.transform.localPosition = oriPos;
                }
                else
                {
                    //非同类互换
                    if (v1.tag == Def.BoxingSave && v2.tag == Def.BoxingSave && v1.type != v2.type)
                    {
                        flag = true;
                        v1.gameObject.transform.localPosition = oriPos;
                        ToastManager.Instance.Show("不可以放这个类型");
                    }
                    else
                    {
                        //从上面移入装备栏 以存在
                        if ((v2.data == null || v1.data.data.csv_id != v2.data.data.csv_id) && !have)
                        {
                            v1.RestEmpty();
                            flag = true;
                            v1.gameObject.transform.localPosition = oriPos;
                        }
                    }
                }
            }
        }
        else
        {
        }
        pop.boxTable.Reposition();
        pop.boxTable.repositionNow = true;
        return(flag);
    }