コード例 #1
0
ファイル: ShopUI.cs プロジェクト: slient13/CapstoneDesign
    public void CheckShowTooltip()
    {
        MouseDetector detector = new MouseDetector();
        // 현재 커서가 상단 패널에 있는지 하단 패널에 있는지 확인.
        int mode = -1;

        detector.TargetChange(viewPanel.transform);
        if (detector.Trigger())
        {
            mode = 0;
        }
        detector.TargetChange(selectedViewPanel.transform);
        if (detector.Trigger())
        {
            mode = 1;
        }

        if (mode == -1)
        {
            CloseTooltip();
            return;
        }
        // mode 가 -1인 경우 엉뚱한 곳이 클릭되었다는 뜻이므로 탈출.
        if (mode == 0)
        {
            // 상단 패널 안인 경우.
            for (int i = 0; i < shopItemList.Count; i++)
            {
                detector.TargetChange(itemViewList[i].transform);
                if (detector.Trigger())
                {
                    if (shopItemList[i].count != 0)
                    {
                        showTooltip(detector.GetMousePos(), shopItemList[i].itemCode);
                    }
                    return;
                }
            }
        }
        if (mode == 1)
        {
            // 하단 패널 안인 경우.
            for (int i = 0; i < tradeDataList.Count; i++)
            {
                detector.TargetChange(selectedViewList[i].transform);
                if (detector.Trigger())
                {
                    showTooltip(detector.GetMousePos(), tradeDataList[i].itemCode);
                    return;
                }
            }
        }
    }
コード例 #2
0
    public void CheckHoveringOnBox()
    {
        MouseDetector detector    = new MouseDetector();
        int           findChecker = 0;

        foreach (GameObject box in itemBoxList)
        {
            // 타겟 설정.
            detector.TargetChange(box.transform);
            // 현재 마우스가 타겟 위에 있는지 확인. 있다면 현재 커서 위치에 툴팁 생성
            if (detector.Trigger())
            {
                showTooltip(detector.GetMousePos(), itemBoxCodenameList[findChecker]);
                break;
            }
            else
            {
                findChecker += 1;
            }
        }
        if (findChecker == itemBoxList.Count)
        {
            closeTooltip();
        }
    }
コード例 #3
0
ファイル: ShopUI.cs プロジェクト: slient13/CapstoneDesign
    public void OnRightClick(Message message)
    {
        MouseDetector detector = new MouseDetector();
        Vector2       pos      = detector.GetMousePos();

        if (mode == 0)
        {
            buyTrade.CheckShowTooltip();
        }
        else if (mode == 1)
        {
            sellTrade.CheckShowTooltip();
        }
        Sync();
    }
コード例 #4
0
    public void CheckHoveringOnBox()
    {
        MouseDetector detector = new MouseDetector();

        // 클릭 확인.
        for (int i = 0; i < INVENTORY_CAPACITY; i++)
        {
            GameObject box;
            string     itemCode;
            // mode 에 따라 box 할당.
            if (mode == 0 && equipmentInventories[i].isSetItem == true)
            {
                box      = equipmentInventories[i].box;
                itemCode = equipmentInventories[i].itemCode;
            }
            else if (mode == 1 && comsumableInventories[i].isSetItem == true)
            {
                box      = comsumableInventories[i].box;
                itemCode = comsumableInventories[i].itemCode;
            }
            else if (mode == 2 && etcInventories[i].isSetItem == true)
            {
                box      = etcInventories[i].box;
                itemCode = etcInventories[i].itemCode;
            }
            else
            {
                continue;
            }
            // 타겟 설정.
            detector.TargetChange(box.transform);
            // 현재 마우스가 타겟 위에 있는지 확인. 있다면 현재 커서 위치에 툴팁 생성
            if (detector.Trigger())
            {
                showTooltip(detector.GetMousePos(), itemCode);
                return;
            }
        }
        // 일치하는 케이스가 없다면 툴팁 닫기.
        CloseTooltip();
    }
コード例 #5
0
ファイル: ShopUI.cs プロジェクト: slient13/CapstoneDesign
    public void OnLeftDoubleClick(Message message)
    {
        MouseDetector detector = new MouseDetector();
        Vector2       nowPos   = detector.GetMousePos();

        if (posBuffer == nowPos)
        {
            if (mode == 0)
            {
                buyTrade.SelectItem();
            }
            else if (mode == 1)
            {
                sellTrade.SelectItem();
            }
        }
        else
        {
            posBuffer = nowPos;
        }
        Sync();
    }