Пример #1
0
    public void SetData(ItemInventory ii, UITattoo caller)
    {
        _itemInventory = ii;

        if (ii != null)
        {
            icon.gameObject.SetActive(true);

            icon.mainTexture = InJoy.AssetBundles.AssetBundles.Load(ii.ItemData.iconPath) as Texture2D;

            _isLocked = false;
        }
        else
        {
            icon.gameObject.SetActive(false);

            int playerLevel = PlayerInfo.Instance.CurrentLevel;

            TattooUnlockDataList tudList = DataManager.Instance.tattooUnlockDataList;

            if (tudList.IsLocked(this.part, playerLevel, out _unlockLevel))
            {
                _isLocked = true;
            }
            else
            {
                _isLocked = false;
            }
        }
        spriteLock.SetActive(_isLocked);

        _uiTattoo = caller;
    }
Пример #2
0
    public void Initialize(TattooBodySlot slot, string tattooID, UITattoo uiTattoo)
    {
        _uiTattooMain = uiTattoo;

        _slot = slot;

        ItemData itemData;

        TattooData td;

        if (slot == null)               //called from recipe clicking
        {
            itemData = DataManager.Instance.GetItemData(tattooID);

            //show goto button
            buttonGotoMake.SetActive(true);
            buttonReplace.SetActive(false);
            buttonRemove.SetActive(false);
        }
        else
        {
            itemData = slot.item.ItemData;

            buttonGotoMake.SetActive(false);
            buttonReplace.SetActive(true);
            buttonRemove.SetActive(true);
        }

        td = DataManager.Instance.GetTattooData(itemData.id);

        _tattooData = td;

        icon.mainTexture = InJoy.AssetBundles.AssetBundles.Load(itemData.iconPath) as Texture2D;

        labelName.text = Localization.instance.Get(itemData.nameIds);

        labelBearPoint.text = td.bearingPoint.ToString();

        labelPos.text = Utils.GetTattooApplicablePositions(td.applicableParts);

        labelEffect.text = Localization.instance.Get(itemData.descriptionIds);

        if (string.IsNullOrEmpty(td.suiteID))
        {
            labelSuiteEffect.text = string.Empty;
        }
        else
        {
            labelSuiteEffect.text = Localization.instance.Get(DataManager.Instance.GetTattooSuiteData(td.suiteID).descIDS);
        }
    }
Пример #3
0
    void Awake()
    {
        _playerTattoos = PlayerInfo.Instance.playerTattoos;

        _uiTattoo = transform.parent.GetComponent <UITattoo>();
    }
Пример #4
0
    public void Initialize(EnumTattooPart part, UITattoo uiTattoo)
    {
        OnDisable();

        _selectedPart = part;

        _uiTattoo = uiTattoo;

        //list all tattoos, including those equipped on body
        _ttList = new List <UITattooChooseItem>();

        //tattoos in bag
        List <ItemInventory> bagTTList = PlayerInfo.Instance.PlayerInventory.itemList.FindAll(
            delegate(ItemInventory ii)
        {
            return(ii.ItemData.type == ItemType.tattoo);
        });

        foreach (ItemInventory ii in bagTTList)
        {
            TattooData td = DataManager.Instance.GetTattooData(ii.ItemID);

            if (td.applicableParts.Contains(part))
            {
                GameObject go = NGUITools.AddChild(ttGrid.gameObject, itemPrefab);

                UITattooChooseItem uiItem = go.GetComponent <UITattooChooseItem>();

                uiItem.SetData(td, ii, false, this);

                _ttList.Add(uiItem);
            }
        }

        //tattoos burnt on body
        foreach (KeyValuePair <EnumTattooPart, ItemInventory> kvp in PlayerInfo.Instance.playerTattoos.tattooDict)
        {
            if (kvp.Key != _selectedPart)
            {
                TattooData td = DataManager.Instance.GetTattooData(kvp.Value.ItemID);

                if (td.applicableParts.Contains(part))
                {
                    GameObject go = NGUITools.AddChild(ttGrid.gameObject, itemPrefab);

                    UITattooChooseItem uiItem = go.GetComponent <UITattooChooseItem>();

                    uiItem.SetData(td, kvp.Value, true, this);

                    _ttList.Add(uiItem);
                }
            }
        }

        NGUITools.FindInParents <UIDraggablePanel>(ttGrid.gameObject).ResetPosition();

        ttGrid.repositionNow = true;

        labelTitle.text = string.Format("{0} ({1})", Localization.instance.Get("IDS_BUTTON_GLOBAL_EQUIP"),
                                        Localization.instance.Get(Utils.k_tattoo_part_names[(int)_selectedPart]));

        if (_ttList.Count > 0)
        {
            SetFocus(_ttList[0]);
        }
        else
        {
            buttonOK.gameObject.SetActive(false);
        }
    }