Beispiel #1
0
 private bool CheckManageAllSubType(ITEM_SUB_TYPE type)
 {
     if (type.Equals(ITEM_SUB_TYPE.DIRECT_MANAGE_NORMAL) || type.Equals(ITEM_SUB_TYPE.DIRECT_MANAGE_ROOM) ||
         type.Equals(ITEM_SUB_TYPE.DIRECT_MANAGE_ALL))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #2
0
    private string GetDesireIconName(uint index)
    {
        ITEM_SUB_TYPE type = Util.ParseItemSubType(index);

        switch (type)
        {
        case ITEM_SUB_TYPE.MATERIAL_HUNGRY: return("Icon_Desire_Hungry_Small");

        case ITEM_SUB_TYPE.MATERIAL_THIRTY: return("Icon_Desire_Thirsty_Small");

        case ITEM_SUB_TYPE.MATERIAL_DUNG: return("Icon_Desire_Defecation_Small");

        case ITEM_SUB_TYPE.MATERIAL_CLEAN: return("Icon_Desire_Clean_Small");

        case ITEM_SUB_TYPE.MATERIAL_HAPPY: return("Icon_Desire_Happy_Small");

        default: return("");
        }
    }
Beispiel #3
0
    public void UpdateTooltip(uint index, Transform target)
    {
        ReleaseGroup();

        m_transform.position      = target.position;
        m_TransPos                = m_transform.position;
        m_transform.localPosition = m_transform.localPosition + m_vMovePos;

        m_target = target;

        ITEM_TYPE     mainType = Util.ParseItemMainType(index);
        ITEM_SUB_TYPE subType  = Util.ParseItemSubType(index);

        switch (mainType)
        {
        case ITEM_TYPE.MATERIAL:
            m_objectArray[(int)OBJECT_TYPE.TYPE_MANAGE].SetActive(true);
            SetBackground(BACKGROUND_TYPE.TYPE_LARGE);

            ItemInfo_Material iMaterial;
            if (WorldManager.instance.m_dataManager.m_ItemDataMaterial.GetItemData(index, out iMaterial))
            {
                #region Label
                m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = iMaterial.itemName;
                m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = iMaterial.explain;

                m_labelArray[(int)LABEL_TYPE.TYPE_MANAGE_MANAGE].text   = iMaterial.getDesireAmount.ToString();
                m_labelArray[(int)LABEL_TYPE.TYPE_MANAGE_USER_EXP].text = iMaterial.bonusExp.ToString();
                m_labelArray[(int)LABEL_TYPE.TYPE_MANAGE_AP].text       = string.Format("-{0}", iMaterial.useActivePower.ToString());
                m_labelArray[(int)LABEL_TYPE.TYPE_MANAGE_DOG_EXP].text  = iMaterial.bonusDogExp.ToString();
                #endregion

                #region Sprite
                m_spriteArray[(int)SPRITE_TYPE.TYPE_MANAGE_ICON].spriteName = GetDesireIconName(iMaterial.index);
                m_spriteArray[(int)SPRITE_TYPE.TYPE_MANAGE_ICON].MakePixelPerfect();
                #endregion
            }
            break;

        case ITEM_TYPE.DIRECTION:
            ItemInfo_Direct iDirect;
            if (WorldManager.instance.m_dataManager.m_itemDataDirect.GetItemData(index, out iDirect))
            {
                if (CheckManageAllSubType(subType))
                {
                    m_objectArray[(int)OBJECT_TYPE.TYPE_ALL].SetActive(true);
                    SetBackground(BACKGROUND_TYPE.TYPE_NORMAL);

                    #region Label
                    m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = iDirect.itemName;
                    m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = iDirect.explain;

                    m_labelArray[(int)LABEL_TYPE.TYPE_ALL_AP_VALUE].text = string.Format("-{0}", iDirect.useAp.ToString());
                    m_labelArray[(int)LABEL_TYPE.TYPE_ALL_TEXT].text     = iDirect.getAmount.Equals(0) ? Str.instance.Get(410029, "%PERCENT%", Mathf.RoundToInt(iDirect.getPercent * 100.0f).ToString()) :
                                                                           Str.instance.Get(410029, "%TIME%", Mathf.RoundToInt(iDirect.getAmount / 60).ToString());
                    #endregion
                }

                else
                {
                    m_objectArray[(int)OBJECT_TYPE.TYPE_POTION].SetActive(true);
                    SetBackground(BACKGROUND_TYPE.TYPE_NORMAL);

                    #region Label
                    m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = iDirect.itemName;
                    m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = iDirect.explain;

                    m_labelArray[(int)LABEL_TYPE.TYPE_POTION_AP].text = iDirect.getAmount.Equals(0) ?
                                                                        string.Format("+{0}%", Mathf.RoundToInt(iDirect.getPercent * 100.0f)) : string.Format("+{0}", iDirect.getAmount);
                    #endregion
                }
            }
            break;

        case ITEM_TYPE.INTERIOR:
            m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR].SetActive(true);
            SetBackground(BACKGROUND_TYPE.TYPE_LARGE);

            ItemInfo_Interior iInterior;
            if (WorldManager.instance.m_dataManager.m_itemDataInterior.GetItemData(index, out iInterior))
            {
                #region Label
                m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = iInterior.itemName;
                m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = iInterior.explain;

                m_labelArray[(int)LABEL_TYPE.TYPE_INTERIOR_VALUE].text = iInterior.funiture_Point.ToString();
                m_labelArray[(int)LABEL_TYPE.TYPE_INTERIOR_SIZE].text  = string.Format("{0}x{1}", iInterior.tileX, iInterior.tileY);
                #endregion

                #region Object
                RoomPlayInfo[] roomPlayInfo = WorldManager.instance.m_dataManager.m_RoomPlayData.GetPlayData(iInterior.index);
                if (roomPlayInfo.Length.Equals(0))
                {
                    m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_NONE].SetActive(true);
                    m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_AP].SetActive(false);
                    m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_EXP].SetActive(false);
                }
                else
                {
                    m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_NONE].SetActive(false);

                    for (int i = 0; i < roomPlayInfo.Length; i++)
                    {
                        bool isAp = !roomPlayInfo[i].recoveryActive.Equals(0);
                        m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_AP].SetActive(isAp);
                        m_objectArray[(int)OBJECT_TYPE.TYPE_INTERIOR_REWARD_EXP].SetActive(!isAp);
                    }
                }
                #endregion
            }
            break;

        case ITEM_TYPE.CLOTHES:
            m_objectArray[(int)OBJECT_TYPE.TYPE_CLOTH].SetActive(true);
            SetBackground(BACKGROUND_TYPE.TYPE_NORMAL);

            ItemInfo_Clothes iClothes;
            if (WorldManager.instance.m_dataManager.m_itemDataClothes.GetItemData(index, out iClothes))
            {
                m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = iClothes.itemName;
                m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = iClothes.explain;

                DressCodeInfo[] infoArray = WorldManager.instance.m_dataManager.m_itemDataClothes.GetDressCodeInfoArray(iClothes);

                m_labelArray[(int)LABEL_TYPE.TYPE_CLOTH_DRESSCODE_01].text   = infoArray[0].value.ToString();
                m_spriteArray[(int)SPRITE_TYPE.TYPE_DRESSCODE_01].spriteName = infoArray[0].iconName;

                bool isExists = infoArray.Length.Equals(2);
                m_labelArray[(int)LABEL_TYPE.TYPE_CLOTH_DRESSCODE_02].gameObject.SetActive(isExists);
                m_spriteArray[(int)SPRITE_TYPE.TYPE_DRESSCODE_02].gameObject.SetActive(isExists);

                if (isExists)
                {
                    m_labelArray[(int)LABEL_TYPE.TYPE_CLOTH_DRESSCODE_02].text   = infoArray[1].value.ToString();
                    m_spriteArray[(int)SPRITE_TYPE.TYPE_DRESSCODE_02].spriteName = infoArray[1].iconName;
                }
            }
            break;

        case ITEM_TYPE.RECIPE:
            m_objectArray[(int)OBJECT_TYPE.TYPE_RECEIPE].SetActive(true);
            SetBackground(BACKGROUND_TYPE.TYPE_NORMAL);

            ItemInfo_Recipe iRecipe;
            if (WorldManager.instance.m_dataManager.m_ItemTableRecipe.GetItemData(index, out iRecipe))
            {
                m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text    = iRecipe.RecipeItemName;
                m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text    = iRecipe.RecipeItemExplain;
                m_labelArray[(int)LABEL_TYPE.TYPE_RECEIPE_TEXT].text = iRecipe.FarmView;
            }
            break;

        case ITEM_TYPE.MONEY:
        case ITEM_TYPE.OWN:
        case ITEM_TYPE.PETEGG:
        case ITEM_TYPE.PETUPGRADE:
        case ITEM_TYPE.DOGTICKET:
            SetBackground(BACKGROUND_TYPE.TYPE_SMALL);

            m_labelArray[(int)LABEL_TYPE.TYPE_ITEM_NAME].text = WorldManager.instance.GetItemName(index);
            m_labelArray[(int)LABEL_TYPE.TYPE_DESC_TEXT].text = WorldManager.instance.GetItemExplain(index);
            break;
        }
    }