예제 #1
0
    private void SetSkinInfo(GameObject skinParent, GameObject skinPrefab, SkinObject skinData)
    {
        skinPrefab.transform.SetParent(skinParent.transform);
        skinPrefab.transform.localScale = new Vector3(1.0f, 1.0f, 1.0f);

        SkinUI ui = skinPrefab.GetComponent <SkinUI>();

        ui.SetICON(skinData.GetSkinICON());
        ui.SetSkinID(skinData.GetSkinID());

        if (PlayerDataManager.instance.GetUsingSkin() == skinData.GetSkinID())
        {
            ui.SetLabel(m_selectLabel);
            m_skinSelectButton.GetComponent <SkinChooseUI>().HoldSkinUI(ui);
            m_skinSelectButton.GetComponent <SkinChooseUI>().SetSkinUI();
        }
        else
        {
            if (!PlayerDataManager.instance.GetSkin(skinData.GetSkinID()))
            {
                ui.SetLabel(m_lockedLabel);
            }
            else
            {
                ui.HideLabel();
            }
        }

        ui.GetButton().onClick.AddListener(delegate
        {
            SelectSkin(skinData.GetSkinID(), ui);
        });
    }
예제 #2
0
    public void SelectSkin(int skinID, SkinUI prefab)
    {
        //Set Skin Name
        m_skinName.text      = SkinManager.instance.GetSkin(skinID).GetSkinName();
        m_skinExample.sprite = SkinManager.instance.GetSkin(skinID).GetSkinEx();
        //Reset Click Function


        if (PlayerDataManager.instance.GetSkin(skinID))
        {
            //Get Component From Select Button
            SkinChooseUI skinSelectButton = m_skinSelectButton.GetComponent <SkinChooseUI>();
            //Reset Select Button
            m_skinSelectButton.GetComponent <Button>().onClick.RemoveAllListeners();
            //Send Data to select button
            skinSelectButton.HoldSkinUI(prefab);
            //Show Select Button
            if (skinSelectButton.GetCurrSkinUI().GetSkinID() != skinSelectButton.GetTmpSkinUI().GetSkinID())
            {
                //Show Select Button
                ShowSelectButton();
                //Set Select Button
                m_skinSelectButton.GetComponent <Button>().onClick.AddListener(delegate
                {
                    SkinManager.instance.ChangeSkin(skinID);
                    //PlayerDataManager.instance.SetUsingSkin(skinID);
                    prefab.SetLabel(m_selectLabel);
                    skinSelectButton.SetSkinUI();
                    skinSelectButton.GetCurrSkinUI().SetLabel(m_selectLabel);
                    skinSelectButton.ShowCurrentLabel();
                    skinSelectButton.HidePreviousLabel();
                    OnButtonPressed();
                    m_skinSelectButton.SetActive(false);
                });
            }
            else
            {
                m_skinSelectButton.SetActive(false);
                m_skinBuyButton.SetActive(false);
            }
        }
        else
        {
            //Reset Buy Button
            m_skinBuyButton.GetComponent <Button>().onClick.RemoveAllListeners();
            //Show Buy Button
            ShowBuyButton();
            m_skinCost.text = SkinManager.instance.GetSkin(skinID).GetSkinCost().ToString();
            //Set Select Button
            m_skinBuyButton.GetComponent <Button>().onClick.AddListener(delegate
            {
                //Unlock Skin
                SkinManager.instance.BuySkin(skinID, prefab);
            });
        }
    }