Example #1
0
    private void RefreshListPanel()
    {
        isDirty = false;
        FashionItemData itemdata;

        foreach (var kvp in mItemDic)
        {
            FashionTableItem res = DataManager.FashionTable[kvp.Key] as FashionTableItem;
            if (mModule.GetEquipId(res.bodypart) == kvp.Key) //已穿戴
            {
                GameDebug.Log("kpv.key" + kvp.Key);
                kvp.Value.flag.gameObject.SetActive(true);
                kvp.Value.flagTxt.text = StringHelper.GetString("equiped");
            }
            else
            {
                kvp.Value.flag.gameObject.SetActive(false);
            }

            if (mModule.GetFashionByID(kvp.Key, out itemdata))
            {
                //已经获得
                kvp.Value.mLock.gameObject.SetActive(false);
                UIAtlasHelper.SetButtonImage(kvp.Value.mBtn, "Shizhuang:shizhuang_02");
            }
            else
            {
                kvp.Value.mLock.gameObject.SetActive(true);
                UIAtlasHelper.SetButtonImage(kvp.Value.mBtn, "Shizhuang:shizhuang_04");
            }
        }
        mFashionItemGrid.repositionNow = true;
        RefresItemInfo();
    }
Example #2
0
    private void OnEquipClick()
    {
        FashionTableItem res = DataManager.FashionTable[mSelectedId] as FashionTableItem;

        mModule.RequestEquip(SelectedId, mModule.GetEquipId(res.bodypart) == SelectedId ? 2 : 1);
        SoundManager.Instance.Play(15);
    }
Example #3
0
    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");
    }
Example #4
0
    private void OnBuyBtnClick()
    {
        FashionTableItem res = DataManager.FashionTable[mSelectedId] as FashionTableItem;

        if (res.activity.Equals("no"))
        {
            mModule.RequestActiveFashion(SelectedId);
        }
        else
        {
            WindowManager.Instance.OpenUI(res.activity);
        }
        SoundManager.Instance.Play(15);
    }
Example #5
0
    public bool AddStarFashion(int id)
    {
        FashionItemData itemdata;

        if (GetFashionByID(id, out itemdata))
        {
            FashionTableItem res = DataManager.FashionTable[id] as FashionTableItem;
            if (itemdata.starnum == res.max_stars)
            {
                return(false);
            }
            itemdata.starnum++;
            return(true);
        }
        return(false);
    }
Example #6
0
    public bool ActiveFashion(int id)
    {
        FashionItemData itemdata =
            PlayerDataPool.Instance.MainData.mFashion.items[PlayerDataPool.Instance.MainData.mFashion.unlock_count];

        itemdata.id = id;
        FashionTableItem res = DataManager.FashionTable[id] as FashionTableItem;

        if (res == null || res.min_stars < 0)
        {
            return(false);
        }
        itemdata.starnum = (uint)res.min_stars;
        PlayerDataPool.Instance.MainData.mFashion.unlock_count++;
        return(true);
    }
    public void ChangeFashion(int fashionid, int action)
    {
        FashionTableItem   fashion_res = DataManager.FashionTable[fashionid] as FashionTableItem;
        PartModelTableItem part_res    = DataManager.PartModelTable[fashion_res.model] as PartModelTableItem;

        if (part_res == null)
        {
            GameDebug.LogError("fashion 表里没有 partsmodel表的id =" + fashion_res.model);
            return;
        }
        if (action == 1)
        {
            mVisual.ChangeElment(part_res.solt, AssetConfig.ModelPath + "Role/" + part_res.file + AssetConfig.AssetSuffix, null);
        }

        if (action == 2)
        {
            // mVisual.ChangeElment(part_res.solt,null,null);
        }
    }
    protected override void OnRespond(respond_equip_fashion respond, object userdata)
    {
        EquipActionParam param = userdata as EquipActionParam;

        if (respond.errorcode == (int)ERROR_CODE.ERR_FASHION_EQUIP_OK)
        {
            FashionTableItem res = DataManager.FashionTable[param.fashionid] as FashionTableItem;
            if (res == null)
            {
                return;
            }
            bool is_success = ModuleManager.Instance.FindModule <FashionModule>().EquipFashion(param.fashionid, param.action, res.bodypart);
            if (is_success)
            {
                EventSystem.Instance.PushEvent(new FashionEvent(FashionEvent.FASHION_EQUIP)
                {
                    mfashionid = param.fashionid,
                    actionid   = param.action
                });
                GameDebug.Log("更换装备成功 id = " + param.fashionid);
            }
        }
    }
Example #9
0
    //时装属性
    public static void BuildFashionProperty(PlayerData mainData, PropertyOperation operation)
    {
        operation.Clear();
        for (int i = 0; i < mainData.mFashion.unlock_count; ++i)
        {
            FashionTableItem res = DataManager.FashionTable[mainData.mFashion.items[i].id] as FashionTableItem;
            if (res == null)
            {
                return;
            }
            var pro_res = DataManager.FashionPropTable[mainData.mFashion.items[i].starnum + res.propid] as FashionPropTableItem;
            if (pro_res == null)
            {
                return;
            }

            operation.AddPro((int)PropertyTypeEnum.PropertyTypeMaxHP, (pro_res.life > 0) ? pro_res.life: 0);
            operation.AddPro((int)PropertyTypeEnum.PropertyTypeDamage, (pro_res.fight > 0) ? pro_res.fight : 0);
            operation.AddPro((int)PropertyTypeEnum.PropertyTypeDefance, (pro_res.defence > 0) ? pro_res.defence : 0);
            operation.AddPro((int)PropertyTypeEnum.PropertyTypeCrticalLV, (pro_res.critical > 0) ? pro_res.critical : 0);
            operation.AddPro((int)PropertyTypeEnum.PropertyTypeMaxMana, (pro_res.power > 0) ? pro_res.power : 0);
        }
    }
Example #10
0
    private void RefreshPanel(int fashionid)
    {
        isDirty = false;
        FashionItemData  itemdata;
        FashionTableItem res = DataManager.FashionTable[fashionid] as FashionTableItem;

        if (res == null)
        {
            return;
        }
        if (!mModule.GetFashionByID(fashionid, out itemdata))
        {
            return;
        }
        FashionPropTableItem propRes =
            DataManager.FashionPropTable[res.propid + itemdata.starnum] as FashionPropTableItem;

        if (propRes == null)
        {
            return;
        }

        mFashionName2.text = res.name;
        mFlag.text         = StringHelper.GetString(mModule.GetEquipId(res.bodypart) == fashionid ? "equiped" : "noequip");
        mItemType.text     = StringHelper.GetString("fashion_type");
        int startLevel = Mathf.FloorToInt(itemdata.starnum / FashionDefine.Starnum_Per_Level) + 1;
        int startCount = (int)(itemdata.starnum % FashionDefine.Starnum_Per_Level);

        mStarNum.text = string.Format(StringHelper.GetString("startlevel"),
                                      StringHelper.GetString(startLevel.ToString()));
        SetStarBar(startCount);
        mCostTxt.text    = StringHelper.GetString("fashioncost");
        mCostNum.text    = string.Format(StringHelper.GetString("costnum"), ItemManager.Instance.getItemName(res.costid), propRes.costnum);
        battleScore.text = propRes.battlescore.ToString();
        mTip.text        = res.desc2;

        mCurTxt.text  = StringHelper.GetString("curprop");
        mNextTxt.text = StringHelper.GetString("nextprop");
        mTitle2.text  = StringHelper.GetString("tiptitle");

        mCurLife.text     = StringHelper.GetString("life") + " " + propRes.life;
        mCurAttack.text   = StringHelper.GetString("attack") + " " + propRes.fight;
        mCurDefence.text  = StringHelper.GetString("defence") + " " + propRes.defence;
        mCurCritical.text = StringHelper.GetString("critical") + " " + propRes.critical;
        mCurPower.text    = StringHelper.GetString("power") + " " + propRes.power;

        if (itemdata.starnum == res.max_stars)
        {
            mNexLife.gameObject.SetActive(false);
            mNextAttack.gameObject.SetActive(false);
            mNextDefence.gameObject.SetActive(false);
            mNextCritical.gameObject.SetActive(false);
            mNextPower.gameObject.SetActive(false);
            mCostTxt.gameObject.transform.localPosition = new Vector3(-7, 151, 0);
            mCostNum.gameObject.transform.localPosition = new Vector3(-7, 124, 0);
        }
        else
        {
            var nextProp = DataManager.FashionPropTable[res.propid + itemdata.starnum + 1] as FashionPropTableItem;
            if (nextProp == null)
            {
                return;
            }
            mNexLife.gameObject.SetActive(true);
            mNextAttack.gameObject.SetActive(true);
            mNextDefence.gameObject.SetActive(true);
            mNextCritical.gameObject.SetActive(true);
            mNextPower.gameObject.SetActive(true);
            mNexLife.text      = StringHelper.GetString("life") + " " + nextProp.life;
            mNextAttack.text   = StringHelper.GetString("attack") + " " + nextProp.fight;
            mNextDefence.text  = StringHelper.GetString("defence") + " " + nextProp.defence;
            mNextCritical.text = StringHelper.GetString("critical") + " " + nextProp.critical;
            mNextPower.text    = StringHelper.GetString("power") + " " + nextProp.power;
            mCostTxt.gameObject.transform.localPosition = new Vector3(-7, -21, 0);
            mCostNum.gameObject.transform.localPosition = new Vector3(-7, -61, 0);
        }
    }
Example #11
0
    private void RefresItemInfo()
    {
        FashionItemData  itemdata;
        FashionTableItem res = DataManager.FashionTable[SelectedId] as FashionTableItem;

        ObjectCommon.DestoryChildren(mAwardContainer);
        FashionPropTableItem propRes;

        if (mModule.GetFashionByID(SelectedId, out itemdata))
        {
            //时装已经解锁
            mWearTxt.text = StringHelper.GetString((mModule.GetEquipId(res.bodypart) == SelectedId) ? "takeoff" : "wear");
            mWearBtn.gameObject.SetActive(true);
            mBuyBtn.gameObject.SetActive(false);
            mAddStarBtn.gameObject.SetActive(true);
            ownItemNum.gameObject.SetActive(false);
            propRes = DataManager.FashionPropTable[itemdata.starnum + res.propid] as FashionPropTableItem;
        }
        else
        {
            //未解锁
            mWearBtn.gameObject.SetActive(false);
            mBuyBtn.gameObject.SetActive(true);
            mAddStarBtn.gameObject.SetActive(false);
            mBuyText.text = StringHelper.GetString(res.activity.Equals("no") ? "buy" : "goingto");
            var         proRes   = DataManager.FashionPropTable[res.propid] as FashionPropTableItem;
            AwardItemUI awarItem = new AwardItemUI(res.costid, proRes.costnum);
            awarItem.gameObject.transform.parent        = mAwardContainer.transform;
            awarItem.gameObject.transform.localPosition = Vector3.zero;
            awarItem.gameObject.transform.localScale    = Vector3.one;
            ownItemNum.gameObject.SetActive(true);
            PlayerDataModule pdm = ModuleManager.Instance.FindModule <PlayerDataModule>();

            uint ownNum;
            if (res.costtype == 1)
            {
                ownNum = pdm.GetProceeds(ProceedsType.Money_Game);
            }
            else if (res.costtype == 2)
            {
                ownNum = pdm.GetProceeds(ProceedsType.Money_RMB);
            }
            else
            {
                ownNum = pdm.GetItemNumByID(res.costid);
            }
            ownItemNum.text = StringHelper.GetString("ownnum") + ownNum;
            propRes         = DataManager.FashionPropTable[res.propid] as FashionPropTableItem;
        }
        mBtnGrid.repositionNow = true;

        if (propRes != null)
        {
            mLife.text     = StringHelper.GetString("life") + ": " + propRes.life;
            mPower.text    = StringHelper.GetString("power") + ": " + propRes.power;
            mCritical.text = StringHelper.GetString("critical") + ": " + propRes.critical;
            mAttack.text   = StringHelper.GetString("attack") + ": " + propRes.fight;
            mDefence.text  = StringHelper.GetString("defence") + ": " + propRes.defence;
        }

        mGetWay.text      = res.getWay;
        mDesc.text        = res.desc;
        mFashionName.text = res.name;

        //调用任务换装接口
    }
Example #12
0
    private bool CheckCostEnough(int fashionid, bool is_addstar)
    {
        FashionTableItem res = DataManager.FashionTable[fashionid] as FashionTableItem;

        if (res == null)
        {
            GameDebug.LogError("无效的fashionid id= " + fashionid);
            return(false);
        }

        PlayerDataModule pdm = ModuleManager.Instance.FindModule <PlayerDataModule>();

        uint itemNum;

        if (res.costtype == 1)
        {
            itemNum = pdm.GetProceeds(ProceedsType.Money_Game);
        }
        else if (res.costtype == 2)
        {
            itemNum = pdm.GetProceeds(ProceedsType.Money_RMB);
        }
        else
        {
            itemNum = pdm.GetItemNumByID(res.costid);
        }

        FashionPropTableItem propRes = null;

        if (is_addstar)
        {
            FashionItemData itemdata;
            ModuleManager.Instance.FindModule <FashionModule>().GetFashionByID(fashionid, out itemdata);
            if (itemdata == null)
            {
                return(false);
            }
            propRes = DataManager.FashionPropTable[res.propid + itemdata.starnum] as FashionPropTableItem;
        }
        else
        {
            propRes = DataManager.FashionPropTable[res.propid] as FashionPropTableItem;
        }

        if (propRes == null)
        {
            return(false);
        }
        if (itemNum >= propRes.costnum)
        {
            return(true);
        }

        string itemName = "";

        if (res.costtype == 1)
        {
            itemName = StringHelper.GetString("money_game");
        }
        else if (res.costtype == 2)
        {
            itemName = StringHelper.GetString("money_rmb");
        }
        else
        {
            itemName = ItemManager.GetItemRes(res.costid).name;
        }

        PromptUIManager.Instance.AddNewPrompt(String.Format(StringHelper.GetString("not_much_money"), itemName));

        return(false);
    }