/// <summary>
 /// 选中一个技能
 /// </summary>
 /// <param name="_itemUI"></param>
 void OnSelectSkillUI(FashionItemUI _itemUI)
 {
     selectFashionItemUI = _itemUI;
     if (OnSelectItemEvent != null)
     {
         OnSelectItemEvent(selectFashionItemUI);
     }
 }
    protected override void OnLoad()
    {
        base.OnLoad();
        mFashionName     = FindComponent <UILabel>("listContiner/namebg/fashionname");
        mGetWay          = FindComponent <UILabel>("listContiner/getway");
        mDesc            = FindComponent <UILabel>("listContiner/desc");
        mPropTitle       = FindComponent <UILabel>("listContiner/proptitle");
        mDefence         = FindComponent <UILabel>("listContiner/defence");
        mAttack          = FindComponent <UILabel>("listContiner/attack");
        mPower           = FindComponent <UILabel>("listContiner/power");
        mLife            = FindComponent <UILabel>("listContiner/life");
        mCritical        = FindComponent <UILabel>("listContiner/critical");
        mAddStarBtn      = FindComponent <UIButton>("listContiner/btngrid/AddstarBtn");
        mWearBtn         = FindComponent <UIButton>("listContiner/btngrid/EquipBtn");
        mWearTxt         = FindComponent <UILabel>("listContiner/btngrid/EquipBtn/Label");
        mBuyBtn          = FindComponent <UIButton>("listContiner/btngrid/BuyBtn");
        mBuyText         = FindComponent <UILabel>("listContiner/btngrid/BuyBtn/Label");
        mBtnGrid         = FindComponent <UIGrid>("listContiner/btngrid");
        mFashionItemGrid = FindComponent <UIGrid>("listContiner/ScrollView/itemgrid");
        ownItemNum       = FindComponent <UILabel>("listContiner/ownItemNum");
        mExamFashionItem = FindChild("FashionItem");
        mExamFashionItem.SetActive(false);
        mAwardContainer = FindChild("awardContainer");

        mPreview          = FindComponent <UISprite>("listContiner/Preview");
        mCharacterPreview = new UICharacterPreview();
        //初始化时装列表
        mItemDic = new Dictionary <int, FashionItemUI>();
        IDictionaryEnumerator enumerator = DataManager.FashionTable.GetEnumerator();
        PlayerDataModule      pdm        = ModuleManager.Instance.FindModule <PlayerDataModule>();

        if (pdm == null)
        {
            return;
        }
        while (enumerator.MoveNext())
        {
            FashionTableItem res = enumerator.Value as FashionTableItem;
            if (res.sex != pdm.GetResId())
            {
                continue;
            }
            FashionItemUI item = new FashionItemUI(GameObject.Instantiate(mExamFashionItem) as GameObject);
            UIAtlasHelper.SetSpriteImage(item.cloth, res.pic);
            item.gameObject.SetActive(true);
            item.gameObject.transform.parent     = mFashionItemGrid.gameObject.transform;
            item.gameObject.transform.localScale = Vector3.one;
            item.name.text       = res.name;
            item.mBtn.CustomData = res.id;
            mItemDic.Add(res.id, item);
        }

        mFashionItemGrid.maxPerLine = mItemDic.Count > 8 ? Mathf.CeilToInt(mItemDic.Count / 2) : 4;


        mPropTitle.text = StringHelper.GetString("fashion_pro");
    }
Exemple #3
0
 public static FashionInfo GetEqInfo(GameObject _obj)
 {
     FashionItemUI fashionItemUI = _obj.GetComponent<FashionItemUI>();
     if (fashionItemUI == null)
     {
         Debug.LogError("请在控件对象上加上<FashionItemUI>组件!!");
         return null;
     }
     return fashionItemUI.CurFashionInfo;
 }
    protected override void OnClose()
    {
        base.OnClose();
        IDictionaryEnumerator enumerator = mItemDic.GetEnumerator();

        while (enumerator.MoveNext())
        {
            FashionItemUI item = enumerator.Value as FashionItemUI;
            item.clickCallBack = null;
        }

        EventDelegate.Remove(mAddStarBtn.onClick, OnAddStartClick);
        EventDelegate.Remove(mWearBtn.onClick, OnEquipClick);
        EventDelegate.Remove(mBuyBtn.onClick, OnBuyBtnClick);
        EventSystem.Instance.removeEventListener(FashionEvent.FASHION_ACTIVE, OnRespondActive);
        EventSystem.Instance.removeEventListener(FashionEvent.FASHION_EQUIP, OnRespondEquip);
        if (mCharacterPreview != null)
        {
            mCharacterPreview.Enable = false;
        }
    }
    protected override void OnOpen(object param = null)
    {
        base.OnOpen(param);
        mModule = ModuleManager.Instance.FindModule <FashionModule>();
        IDictionaryEnumerator enumerator = mItemDic.GetEnumerator();

        while (enumerator.MoveNext())
        {
            FashionItemUI item = enumerator.Value as FashionItemUI;
            item.clickCallBack = ItemClickCallBack;
        }
        EventDelegate.Add(mAddStarBtn.onClick, OnAddStartClick);
        EventDelegate.Add(mWearBtn.onClick, OnEquipClick);
        EventDelegate.Add(mBuyBtn.onClick, OnBuyBtnClick);
        EventSystem.Instance.addEventListener(FashionEvent.FASHION_ACTIVE, OnRespondActive);
        EventSystem.Instance.addEventListener(FashionEvent.FASHION_EQUIP, OnRespondEquip);
        mSelectedId = SelectedId;
        RefreshListPanel();
        if (mCharacterPreview != null)
        {
            mCharacterPreview.Enable = true;
        }

        Player player = PlayerController.Instance.GetControlObj() as Player;

        if (player != null)
        {
            mCharacterPreview.BackgroundSprite = mPreview;
            mCharacterPreview.SetTargetSprite(mPreview);
            mCharacterPreview.SetCameraOrthographicSize(1.2f);
            mCharacterPreview.RotationY = 180;
            mCharacterPreview.Pos       = new Vector3(-0.25f, 0, 0);
            mCharacterPreview.SetupCharacter(player.ModelID, null, -1, 0);
            PlayerDataModule pdm = ModuleManager.Instance.FindModule <PlayerDataModule>();
            mCharacterPreview.ChangeWeapon(pdm.GetMainWeaponId());
        }
    }
 /// <summary>
 /// 刷新表现
 /// </summary>
 public void RefreshItems()
 {
     if (fashionprefab == null)
     {
         return;
     }
     for (int i = 0; i < fashionList.Count; i++)
     {
         GameObject obj          = Instantiate(fashionprefab) as GameObject;
         Transform  parentTransf = this.gameObject.transform;
         obj.SetActive(true);
         obj.transform.parent        = parentTransf;
         obj.transform.localPosition = Vector3.zero;
         obj.transform.localScale    = Vector3.one;
         FashionItemUI fashionUI = obj.GetComponent <FashionItemUI>();
         fashionUI.FillInfo(fashionList[i]);
         fashionUI.OnSelectEvent += OnSelectSkillUI;
         FashionContainers[i]     = fashionUI;
         //                if (firstRun && skillList[i].SkillLv>0)
         //                {
         //                    firstRun = false;
         //                    selectSkillUI = skillUI;
         //                    UIToggle tog = obj.GetComponent<UIToggle>();
         //                    tog.value = true;
         //                    if (OnSelectItemEvent != null)
         //                    {
         //                        OnSelectItemEvent(selectSkillUI);
         //                    }
         //                }
     }
     if (grid != null)
     {
         grid.Reposition();
     }
     isInited = true;
 }