Ejemplo n.º 1
0
    public void OnNewSkill(GameObject go)
    {
        if (go.transform.parent.parent.name == "GuildModule")
        {
            return;
        }

        BattleModel.Instance.lose_map = 0;

        SkillTempletInfo skillTempletInfo = SkillTempletModel.Instance.GetUnlockSkill(BattleModel.Instance.crtConfig.id);

        SkillTempletModel.Instance.selectGroupIndex = 0;
        for (int i = 0; i < SkillTempletModel.Instance.skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = SkillTempletModel.Instance.skillGroups[i];
            skillTempletGroupInfo.index = i;
            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo templetInfo = skillTempletGroupInfo.skillTemplets[j];

                if (skillTempletInfo.config == templetInfo.config)
                {
                    SkillTempletModel.Instance.selectGroupIndex = i;
                    GameMgr.moduleMgr.AddUIModule(ModuleEnum.SKILL);
                    return;
                }
            }
        }
    }
Ejemplo n.º 2
0
    override protected void UpdateView()
    {
        if (FightModel.Instance.fightInfo.isWin)
        {
            bool isPassed = MapModel.Instance.IsPassed(BattleModel.Instance.crtConfig.id);

            SkillTempletInfo skillTempletInfo = SkillTempletModel.Instance.GetUnlockSkill(BattleModel.Instance.crtConfig.id);
            if (skillTempletInfo == null || isPassed || skillTempletInfo.config.type != 1)
            {
                winA.gameObject.SetActive(true);
            }
            else
            {
                winB.gameObject.SetActive(true);
            }
        }
        else
        {
            bool skillModuleIsUnlockLevelUp = SkillTempletModel.Instance.SkillModuleIsUnlockLevelUp();
            if (skillModuleIsUnlockLevelUp)
            {
                loseB.gameObject.SetActive(true);
            }
            else
            {
                loseA.gameObject.SetActive(true);
            }
        }

        FontUtil.SetAllFont(transform, FontUtil.FONT_DEFAULT);
    }
Ejemplo n.º 3
0
    public void UpdataTemplet()
    {
        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = skillGroups[i];

            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[j];
                if (skillTempletInfo.IsOpen())
                {
                    if (BattleModel.Instance.crtConfig.IsForbidSkill(skillTempletInfo.config.cellId))
                    {
                        skillTempletInfo.fobid = true;
                    }
                    else
                    {
                        skillTempletInfo.fobid = false;
                    }
                }
                else
                {
                    skillTempletInfo.fobid = true;
                }
            }
        }
    }
Ejemplo n.º 4
0
    private void CreateSkillSeed(int index, int skillId, SkillTempletInfo skillTempletInfo)
    {
        SkillSeedInfo seed = new SkillSeedInfo();
        Vector2       pos  = poss[index];

        seed.seed_x       = (int)pos.x;
        seed.seed_y       = (int)pos.y;
        seed.progressTemp = seed.progress = 0;
        seed.fobid        = skillTempletInfo.fobid;

        seed.config_cell_item = (config_cell_item)GameMgr.resourceMgr.config_cell.GetItem(skillId);

        seeds.Add(seed);

        if (seed.fobid)
        {
            return;
        }
        seed.open_holes = new List <int>();
        seed.dir        = skillTempletInfo.config.dir;
        for (int i = 0; i < skillTempletInfo.lv; i++)
        {
            seed.open_holes.Add(i);
        }
    }
Ejemplo n.º 5
0
 private void OnUpdateOperateEvent(SkillTempletInfo info)
 {
     if (info.config.cellId == skillTempletInfo.config.cellId)
     {
         InitHoleList(true);
     }
     UpdateBtn();
 }
Ejemplo n.º 6
0
    public void Init(SkillGroupInfo groupinfo, SkillTempletInfo templetinfo)
    {
        skillGroupInfo   = groupinfo;
        skillTempletInfo = templetinfo;

        UpdateBtn();
        InitHoleList(false);
    }
Ejemplo n.º 7
0
 public void ClearLv(SkillTempletInfo operatingTemplet)
 {
     operatingTemplet.lv = SkillTempletModel.OPEN_LEVEL;
     SaveTemplet();
     if (updateOperateEvent != null)
     {
         updateOperateEvent(operatingTemplet);
     }
 }
Ejemplo n.º 8
0
    private void UpdateUI()
    {
        bool adOpen = MapModel.Instance.IsPassed((int)GameModel.Instance.GetGameConfig(1010));

        if (adOpen && ADModel.Instance.ADIsReady())
        {
            adBtn.gameObject.SetActive(true);
        }
        else
        {
            adBtn.gameObject.SetActive(false);
        }

        UpdateWealths();

        ShowStar();

        comingTrans.GetComponentInChildren <Text>().text = LanguageUtil.GetTxt(11105);

        skillBtn.gameObject.SetActive(SkillTempletModel.Instance.SkillModuleIsUnlock());
        SkillTempletModel.Instance.selectGroupIndex = 0;
        skillTipAnim.Stop();
        for (int i = 0; i < SkillTempletModel.Instance.skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = SkillTempletModel.Instance.skillGroups[i];
            skillTempletGroupInfo.index = i;
            int bottleId = skillTempletGroupInfo.GetGroupId();
            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[j];

                if (skillTempletInfo.IsUnlock() && skillTempletInfo.config.type == 1)
                {
                    if (skillTempletInfo.lv < SkillTempletModel.MAX_LEVEL)
                    {
                        int leftStar = MapModel.Instance.starInfo.GetSkillCanUseStar();
                        if (leftStar >= skillTempletInfo.LevelUpCostStar())
                        {
                            int        levelUpNeedBottle = skillTempletInfo.LevelUpCostBottle();
                            WealthInfo bottleInfo        = PlayerModel.Instance.GetWealth(bottleId);
                            if (bottleInfo.count >= levelUpNeedBottle)
                            {
                                SkillTempletModel.Instance.selectGroupIndex = i;
                                Image skillIcon = skillBtn.FindChild("icon").GetComponent <Image>();

                                skillIcon.overrideSprite = ResModel.Instance.GetSprite("icon/cell/cell_" + bottleId);
                                skillTipAnim.Play();
                                return;
                            }
                        }
                    }
                }
            }
        }
    }
Ejemplo n.º 9
0
    public bool SkillModuleIsUnlockLevelUp()
    {
        SkillTempletInfo skillTempletInfo = skillGroups[0].skillTemplets[1];

        if (skillTempletInfo.IsUnlock())
        {
            return(true);
        }

        return(false);
    }
Ejemplo n.º 10
0
    public List <int> GetSkillCellIds()
    {
        List <int> skillCellIds = new List <int>();

        for (int i = 0; i < skillTemplets.Count; i++)
        {
            SkillTempletInfo skillTempletInfo = skillTemplets[i];
            skillCellIds.Add(skillTempletInfo.config.cellId);
        }
        return(skillCellIds);
    }
Ejemplo n.º 11
0
    override protected void UpdateView()
    {
        base.UpdateView();
        skillLabel.text = LanguageUtil.GetTxt(11805);
        SkillTempletInfo skillTempletInfo = SkillTempletModel.Instance.GetUnlockSkill(BattleModel.Instance.crtConfig.id);

        unlockSkill.overrideSprite = GameMgr.resourceMgr.GetSprite("icon/cell.ab", "cell_" + skillTempletInfo.config.cellId);

        LeanTween.delayedCall(0.15f, GuildModel.Instance.CheckGuild);

        EventTriggerListener.Get(unlockSkill.gameObject).onClick = OnNewSkill;
    }
Ejemplo n.º 12
0
    private void CreatTempletItem(SkillGroupInfo info, SkillTempletInfo skillTempletInfo, int index)
    {
        GameObject item = list.NewItem();

        item.name = "skill_" + skillTempletInfo.config.cellId;

        PosMgr.SetCellPos(item.transform, 0, 0);

        SkillTemplet itemCtr = item.GetComponent <SkillTemplet>();

        itemCtr.Init(info, skillTempletInfo);
    }
Ejemplo n.º 13
0
    private void ShowSmallItemTip()
    {
        int animCount = 0;

        for (int i = 0; i < SkillTempletModel.Instance.skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = SkillTempletModel.Instance.skillGroups[i];
            skillTempletGroupInfo.index = i;
            int bottleId = skillTempletGroupInfo.GetGroupId();
            SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[1];

            GameObject    item         = smallList.GetItemByName("skill_" + bottleId);
            RectTransform iconTrans    = (RectTransform)item.transform.FindChild("icon");
            Animation     skillTipAnim = iconTrans.GetComponent <Animation>();

            if (skillTempletInfo.IsUnlock() && skillTempletInfo.config.type == 1)
            {
                if (skillTempletInfo.lv < SkillTempletModel.MAX_LEVEL)
                {
                    int leftStar = MapModel.Instance.starInfo.GetSkillCanUseStar();
                    if (leftStar >= skillTempletInfo.LevelUpCostStar())
                    {
                        int        levelUpNeedBottle = skillTempletInfo.LevelUpCostBottle();
                        WealthInfo bottleInfo        = PlayerModel.Instance.GetWealth(bottleId);
                        if (bottleInfo.count >= levelUpNeedBottle)
                        {
                            if (!skillTipAnim.isPlaying)
                            {
                                LeanTween.delayedCall(0.2f * animCount, delegate()
                                {
                                    skillTipAnim.Play();
                                });
                            }

                            animCount++;
                            continue;
                        }
                    }
                }
            }

            LeanTween.delayedCall(0.2f, delegate()
            {
                skillTipAnim.Stop();
                iconTrans.anchoredPosition = new Vector2(0, -70);
                iconTrans.localScale       = new Vector3(1, 1, 1);
            });
        }
    }
Ejemplo n.º 14
0
    private SkillSeedInfo CreateTempSeed(int id)
    {
        SkillSeedInfo seed = new SkillSeedInfo();

        seed.config_cell_item = (config_cell_item)GameMgr.resourceMgr.config_cell.GetItem(id);
        seed.open_holes       = new List <int>();
        SkillTempletInfo skillTempletInfo = SkillTempletModel.Instance.GetTemplet(id);

        seed.dir = skillTempletInfo.config.dir;
        for (int i = 0; i < skillTempletInfo.lv; i++)
        {
            seed.open_holes.Add(i);
        }
        return(seed);
    }
Ejemplo n.º 15
0
    public SkillTempletInfo GetUnlockSkill(int mapId)
    {
        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo skillGroupInfo = skillGroups[i];

            for (int j = 0; j < skillGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillGroupInfo.skillTemplets[j];
                if (skillTempletInfo.config.unlockId == mapId)
                {
                    return(skillTempletInfo);
                }
            }
        }
        return(null);
    }
Ejemplo n.º 16
0
    public bool SkillModuleIsUnlock()
    {
        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo skillGroupInfo = skillGroups[i];

            for (int j = 0; j < skillGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillGroupInfo.skillTemplets[j];
                if (skillTempletInfo.IsUnlock())
                {
                    return(true);
                }
            }
        }
        return(false);
    }
Ejemplo n.º 17
0
    public void Init(SkillGroupInfo info)
    {
        skillTempletGroupInfo = info;

        gameObject.SetActive(false);

        list.ClearList();
        int tindex = 0;

        for (int i = 0; i < info.skillTemplets.Count; i++)
        {
            SkillTempletInfo skillTempletInfo = info.skillTemplets[i];
            if (skillTempletInfo.config.type == 1)
            {
                CreatTempletItem(info, skillTempletInfo, tindex);
            }
        }
    }
Ejemplo n.º 18
0
    public SkillTempletInfo GetTemplet(int id)
    {
        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = skillGroups[i];

            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[j];
                if (skillTempletInfo.config.cellId == id)
                {
                    return(skillTempletInfo);
                }
            }
        }

        return(null);
    }
Ejemplo n.º 19
0
    private void UpdateStarInfo()
    {
        StarInfo startInfo = MapModel.Instance.starInfo;

        startInfo.skillFullStar = 0;
        startInfo.skillUsedStar = 0;

        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = skillGroups[i];

            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[j];
                startInfo.skillFullStar += skillTempletInfo.GetCostStar(SkillTempletModel.MAX_LEVEL);
                startInfo.skillUsedStar += skillTempletInfo.GetCostStar();
            }
        }
    }
Ejemplo n.º 20
0
    override protected void UpdateView()
    {
        base.UpdateView();

        skillLabel.text = LanguageUtil.GetTxt(11806);

        EventTriggerListener.Get(skillButton.gameObject).onClick = reportModule.OnSkillClick;
        BattleModel.Instance.lose_map = BattleModel.Instance.crtConfig.id;

        for (int i = 0; i < SkillTempletModel.Instance.skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = SkillTempletModel.Instance.skillGroups[i];
            skillTempletGroupInfo.index = i;
            int bottleId = skillTempletGroupInfo.GetGroupId();
            for (int j = 0; j < skillTempletGroupInfo.skillTemplets.Count; j++)
            {
                SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[j];

                if (skillTempletInfo.IsUnlock() && skillTempletInfo.config.type == 1)
                {
                    if (skillTempletInfo.lv < SkillTempletModel.MAX_LEVEL)
                    {
                        int leftStar = MapModel.Instance.starInfo.GetSkillCanUseStar();
                        if (leftStar >= skillTempletInfo.LevelUpCostStar())
                        {
                            int        levelUpNeedBottle = skillTempletInfo.LevelUpCostBottle();
                            WealthInfo bottleInfo        = PlayerModel.Instance.GetWealth(bottleId);
                            if (bottleInfo.count >= levelUpNeedBottle)
                            {
                                SkillTempletModel.Instance.selectGroupIndex = i;
                                Image skillIcon = skillButton.transform.FindChild("icon").GetComponent <Image>();
                                skillIcon.overrideSprite = ResModel.Instance.GetSprite("icon/cell/cell_" + bottleId);
                                return;
                            }
                        }
                    }
                }
            }
        }

        LeanTween.delayedCall(0.1f, GuideModel.Instance.CheckGuide);
    }
Ejemplo n.º 21
0
    public List <SkillTempletInfo> GetSkillTemplets(int type)
    {
        List <SkillTempletInfo> skills = new List <SkillTempletInfo>();

        for (int i = 0; i < skillGroups.Count; i++)
        {
            SkillGroupInfo group = skillGroups[i];
            for (int j = 0; j < group.skillTemplets.Count; j++)
            {
                SkillTempletInfo t = group.skillTemplets[j];

                if (t.config.type == type)
                {
                    skills.Add(t);
                }
            }
        }

        return(skills);
    }
Ejemplo n.º 22
0
    public void UpLevel(SkillTempletInfo operatingTemplet, int offsetLv)
    {
        operatingTemplet.lv += offsetLv;
        if (operatingTemplet.lv >= SkillTempletModel.MAX_LEVEL)
        {
            operatingTemplet.lv = SkillTempletModel.MAX_LEVEL;
            PromptModel.Instance.Pop(LanguageUtil.GetTxt(11306));
        }
        SaveTemplet();

        config_sort_item config_sort_item = ResModel.Instance.config_sort.GetItemByTypeAndSpecial(4, "" + operatingTemplet.config.groupId);

        float sortProgress = operatingTemplet.GetShowLv() / (config_sort_item.refer + 0.00f);

        SocialModel.Instance.ReportProgress(config_sort_item.gid, sortProgress);

        if (updateOperateEvent != null)
        {
            updateOperateEvent(operatingTemplet);
        }
    }
Ejemplo n.º 23
0
    private void FindSwicthNext()
    {
        nextTempletInfo = null;

        config_cell_item cell = (config_cell_item)GameMgr.resourceMgr.config_cell.GetItem(skillTempletInfo.config.cellId);

        List <SkillTempletInfo> skillTemplets = SkillTempletModel.Instance.GetGroup(cell.hide_id).skillTemplets;

        int i;

        for (i = 0; i < skillTemplets.Count; i++)
        {
            SkillTempletInfo skillTemplet = skillTemplets[i];

            if (skillTemplet.config.cellId == skillTempletInfo.config.cellId)
            {
                break;
            }
        }

        if (i == (skillTemplets.Count - 1))
        {
            nextTempletInfo = skillTemplets[0];
        }
        else
        {
            nextTempletInfo = skillTemplets[i + 1];
        }

        if (nextTempletInfo.IsUnlock() == false)
        {
            nextTempletInfo = null;
            switchTip.gameObject.SetActive(false);
        }
        else
        {
            switchTip.gameObject.SetActive(true);
        }
    }
Ejemplo n.º 24
0
    public void LoadSkillTemplets()
    {
        if (PlayerModel.CLEAR_ALL)
        {
            PlayerPrefsUtil.RemoveData(PlayerPrefsUtil.SKILL_LV);
            PlayerPrefsUtil.RemoveData(PlayerPrefsUtil.SKILL_SELECT);
        }

        string SKILL_SELECTStr = PlayerPrefsUtil.GetString(PlayerPrefsUtil.SKILL_SELECT);

        skillSelects = JsonMapper.ToObject <List <int> >(SKILL_SELECTStr);

        string     SKILL_LVStr = PlayerPrefsUtil.GetString(PlayerPrefsUtil.SKILL_LV);
        List <int> SKILL_LVs   = JsonMapper.ToObject <List <int> >(SKILL_LVStr);

        skillGroups = new List <SkillGroupInfo>();

        List <config_skill_item> skills = ResModel.Instance.config_skill.data;

        for (int i = 0; i < skills.Count; i++)
        {
            config_skill_item skill_item = skills[i];

            SkillTempletInfo skillTempletInfo = new SkillTempletInfo();
            skillTempletInfo.config = skill_item;
            if (SKILL_LVs != null)
            {
                skillTempletInfo.lv = SKILL_LVs[i];
            }

            SkillGroupInfo findSkillGroupInfo = null;

            for (int n = 0; n < skillGroups.Count; n++)
            {
                SkillGroupInfo checker = skillGroups[n];
                if (checker.GetGroupId() == skill_item.groupId && findSkillGroupInfo == null)
                {
                    findSkillGroupInfo = checker;
                }
            }

            if (findSkillGroupInfo == null)
            {
                SkillGroupInfo skillTempletGroupInfo = new SkillGroupInfo();
                skillGroups.Add(skillTempletGroupInfo);
                skillTempletGroupInfo.skillTemplets.Add(skillTempletInfo);
            }
            else
            {
                findSkillGroupInfo.skillTemplets.Add(skillTempletInfo);
            }
        }

        if (skillSelects == null)
        {
            skillSelects = new List <int>();
            for (int n = 0; n < skillGroups.Count; n++)
            {
                List <SkillTempletInfo> skillTemplets = skillGroups[n].skillTemplets;
                for (int m = 0; m < skillTemplets.Count; m++)
                {
                    SkillTempletInfo skillTemplet = skillTemplets[m];
                    if (skillTemplet.config.type == 1)
                    {
                        skillSelects.Add(skillTemplet.config.cellId);
                    }
                }
            }
        }

        InitHole();
        UpdateStarInfo();
    }
Ejemplo n.º 25
0
    protected virtual void UpdateView()
    {
        nameText.text   = LanguageUtil.GetTxt(11106) + ": " + BattleModel.Instance.crtConfig.name;
        resultText.text = LanguageUtil.GetTxt(11807);
        closeButton.GetComponentInChildren <Text>().text = LanguageUtil.GetTxt(11804);
        againButton.GetComponentInChildren <Text>().text = LanguageUtil.GetTxt(11803);
        nextButton.GetComponentInChildren <Text>().text  = LanguageUtil.GetTxt(11802);
        scoreLabel.text = LanguageUtil.GetTxt(11801);

        EventTriggerListener.Get(closeButton.gameObject).onClick = reportModule.OnCloseClick;
        EventTriggerListener.Get(againButton.gameObject).onClick = reportModule.OnAgainClick;
        EventTriggerListener.Get(nextButton.gameObject).onClick  = reportModule.OnNextClick;
        EventTriggerListener.Get(shareButton.gameObject).onClick = reportModule.OnShareClick;

        float rollOffTime = 0;

        scoreText.RollNumber(FightModel.Instance.fightInfo.score, "", rollOffTime);
        rollOffTime += scoreText.maxRollTime;

        List <config_sort_item> scoreItems = GameMgr.resourceMgr.config_sort.GetItemsByType(3);

        for (int c = 0; c < scoreItems.Count; c++)
        {
            config_sort_item scoreItem = scoreItems[c];
            if (scoreItem.refer <= FightModel.Instance.fightInfo.score)
            {
                SocialModel.Instance.ReportProgress(scoreItem.gid, 1);
            }
        }

        int star = FightModel.Instance.fightInfo.GetStarCount();

        star1Image.gameObject.SetActive(false);
        star2Image.gameObject.SetActive(false);
        star3Image.gameObject.SetActive(false);
        if (star >= 1)
        {
            star1BGImage.color = ColorMgr.GetColor(ColorMgr.COLOR_WIGHT, 0.01f);
            star1Image.gameObject.SetActive(true);
            GameObject effectPrefab = GameMgr.resourceMgr.GetGameObject("effect.ab", "effect_fireworks_n");
            GameObject itemEffect   = GameObject.Instantiate(effectPrefab);
            itemEffect.transform.SetParent(star1Image.transform, false);
            itemEffect.transform.SetParent(transform, true);
        }

        if (star >= 2)
        {
            star2BGImage.color = ColorMgr.GetColor(ColorMgr.COLOR_WIGHT, 0.01f);
            star2Image.gameObject.SetActive(true);
            GameObject effectPrefab = GameMgr.resourceMgr.GetGameObject("effect.ab", "effect_fireworks_n");
            GameObject itemEffect   = GameObject.Instantiate(effectPrefab);
            itemEffect.transform.SetParent(star2Image.transform, false);
            itemEffect.transform.SetParent(transform, true);
        }

        if (star >= 3)
        {
            star3BGImage.color = ColorMgr.GetColor(ColorMgr.COLOR_WIGHT, 0.01f);
            star3Image.gameObject.SetActive(true);
            GameObject effectPrefab = GameMgr.resourceMgr.GetGameObject("effect.ab", "effect_fireworks_n");
            GameObject itemEffect   = GameObject.Instantiate(effectPrefab);
            itemEffect.transform.SetParent(star3Image.transform, false);
            itemEffect.transform.SetParent(transform, true);
        }

        int        winCoin  = (int)FightModel.Instance.fightInfo.score / (int)GameModel.Instance.GetGameConfig(1009);
        WealthInfo coinInfo = PlayerModel.Instance.GetWealth((int)WealthTypeEnum.Coin);
        int        winGem   = 0;
        WealthInfo gemInfo  = PlayerModel.Instance.GetWealth((int)WealthTypeEnum.Gem);

        bool isPassed = MapModel.Instance.IsPassed(BattleModel.Instance.crtConfig.id);

        if (isPassed)
        {
            int coinAdd = (int)GameModel.Instance.GetGameConfig(1008);
            winCoin        += coinAdd;
            coinInfo.count += winCoin;
            coinText.RollNumber(winCoin, "+", rollOffTime);
            rollOffTime += coinText.maxRollTime;
            gemText.RollNumber(winGem, "+", rollOffTime);
            rollOffTime += gemText.maxRollTime;
        }
        else
        {
            int coinAdd = (int)GameModel.Instance.GetGameConfig(1005);;
            winCoin        += coinAdd;
            coinInfo.count += winCoin;
            coinText.RollNumber(winCoin, "+", rollOffTime);
            rollOffTime += coinText.maxRollTime;
            int gemAdd = (int)GameModel.Instance.GetGameConfig(1006);;
            winGem        += gemAdd;
            gemInfo.count += winGem;
            gemText.RollNumber(winGem, "+", rollOffTime);
            rollOffTime += gemText.maxRollTime;
        }

        GameObject bottlePrefab = GameMgr.resourceMgr.GetGameObject("prefab/reportmodule.ab", "ReportBottle");

        bottleList.itemPrefab = bottlePrefab;

        bool findSkillLv = false;

        for (int i = 0; i < SkillTempletModel.Instance.skillGroups.Count; i++)
        {
            SkillGroupInfo skillTempletGroupInfo = SkillTempletModel.Instance.skillGroups[i];

            int groupId = skillTempletGroupInfo.GetGroupId();

            int groupCount = CollectModel.Instance.profileCollect.GetCount(groupId);

            if (groupCount > 0)
            {
                Transform bottleTrans = bottleList.NewItem().GetComponent <Transform>();
                bottleTrans.name = "" + i;

                Image mask = bottleTrans.FindChild("mask").GetComponent <Image>();
                mask.color = ColorMgr.GetColor(ColorMgr.GetCellColorValue(groupId));
                Image icon = bottleTrans.FindChild("icon").GetComponent <Image>();
                icon.overrideSprite = GameMgr.resourceMgr.GetSprite("icon/cell.ab", "cell_" + groupId);
                NumberText numText = bottleTrans.FindChild("Text").GetComponent <NumberText>();
                numText.RollNumber(groupCount, "+", rollOffTime);
                rollOffTime += numText.maxRollTime;
                WealthInfo bottleInfo = PlayerModel.Instance.GetWealth(groupId);
                bottleInfo.count += groupCount;

                EventTriggerListener.Get(bottleTrans.gameObject).onClick = OnOpenSkill;

                string prefStr = PlayerPrefsUtil.BOTTLE_COLLECT + groupId;
                PlayerPrefsUtil.SetInt(prefStr, PlayerPrefsUtil.GetInt(prefStr) + groupCount);

                config_sort_item config_sort_item = GameMgr.resourceMgr.config_sort.GetItemByTypeAndSpecial(2, "" + groupId);

                float bottleProgress = PlayerPrefsUtil.GetInt(prefStr) / (config_sort_item.refer + 0.00f);

                SocialModel.Instance.ReportProgress(config_sort_item.gid, bottleProgress);
            }

            SkillTempletInfo skillTempletInfo = skillTempletGroupInfo.skillTemplets[1];

            if (skillTempletInfo.IsUnlock() && skillTempletInfo.config.type == 1 && findSkillLv == false && skillButton != null)
            {
                if (skillTempletInfo.lv < SkillTempletModel.MAX_LEVEL)
                {
                    int leftStar = MapModel.Instance.starInfo.GetSkillCanUseStar();
                    if (leftStar >= skillTempletInfo.LevelUpCostStar())
                    {
                        int        levelUpNeedBottle = skillTempletInfo.LevelUpCostBottle();
                        WealthInfo bottleInfo        = PlayerModel.Instance.GetWealth(groupId);
                        if (bottleInfo.count >= levelUpNeedBottle)
                        {
                            findSkillLv = true;
                            skillButton.gameObject.SetActive(true);
                            SkillTempletModel.Instance.selectGroupIndex = i;
                            Image skillIcon = skillButton.transform.FindChild("icon").GetComponent <Image>();
                            skillIcon.overrideSprite = GameMgr.resourceMgr.GetSprite("icon/cell.ab", "cell_" + groupId);
                            EventTriggerListener.Get(skillButton.gameObject).onClick = OnClickSkill;
                        }
                    }
                }
            }
        }

        if (findSkillLv == false && skillButton != null)
        {
            skillButton.gameObject.SetActive(false);
        }

        PlayerModel.Instance.SaveWealths();

        MapInfo mapInfo = new MapInfo();

        mapInfo.configId = BattleModel.Instance.crtConfig.id;
        mapInfo.score    = FightModel.Instance.fightInfo.score;
        mapInfo.star     = star;

        MapModel.Instance.PassLevel(mapInfo);
        nextButton.gameObject.SetActive(FightModel.Instance.fightInfo.isWin);

        config_sort_item star_item = GameMgr.resourceMgr.config_sort.GetItemByTypeAndSpecial(1, "11104");

        SocialModel.Instance.ReportScore(star_item.gid, MapModel.Instance.starInfo.crtStar);

        config_sort_item level_item = GameMgr.resourceMgr.config_sort.GetItemByTypeAndSpecial(1, "1");

        SocialModel.Instance.ReportScore(level_item.gid, MapModel.Instance.starInfo.openMapFullStar / 3);

        config_sort_item diamond_item = GameMgr.resourceMgr.config_sort.GetItemByTypeAndSpecial(1, "11101");

        SocialModel.Instance.ReportScore(diamond_item.gid, gemInfo.count);
    }
Ejemplo n.º 26
0
 private void OnUpdateOperateEvent(SkillTempletInfo info)
 {
     UpdateUI();
 }