Esempio n. 1
0
    private void SetData(VisitingRuleRes res)
    {
        VisitChapterDir = new Dictionary <PlayerPB, List <VisitChapterVo> >();
        VisitChapterDir[PlayerPB.TangYiChen] = new List <VisitChapterVo>();
        VisitChapterDir[PlayerPB.QinYuZhe]   = new List <VisitChapterVo>();
        VisitChapterDir[PlayerPB.YanJi]      = new List <VisitChapterVo>();
        VisitChapterDir[PlayerPB.ChiYu]      = new List <VisitChapterVo>();

        //LevelPB pb = null;
        for (int i = 0; i < res.LevelRules.Count; i++)
        {
            VisitLevelVo   level          = new VisitLevelVo(res.LevelRules[i], _plotRule, _infoRule);
            VisitChapterVo visitChapterVo = VisitChapterDir[level.NpcId].Find((m) => { return(m.ChapterId == level.ChapterGroup); });
            if (visitChapterVo == null)
            {
                visitChapterVo = new VisitChapterVo("123", level.ChapterGroup, true);//I provisionally do it;
                VisitChapterDir[level.NpcId].Add(visitChapterVo);
            }
            visitChapterVo.LevelList.Add(level);
            level.VisitChapter = visitChapterVo;

            foreach (var v in res.LevelFirstPassRules)
            {
                if (v.LevelId != level.LevelId)
                {
                    continue;
                }
                level.levelFirstPassPB = v;
                break;
            }
        }
    }
Esempio n. 2
0
    public void SetData(PlayerPB npcId)
    {
        _npcId   = npcId;
        curNpcId = npcId;
        Debug.Log("VisitLevelController SetData NpcId is " + npcId);
        _curVisitVo         = GetData <VisitModel>().GetVisitVo(npcId);
        _visitChapterVoList = GetData <VisitModel>().GetVisitChapterVo(npcId);
        _curVisitChapterVo  = _visitChapterVoList[0];

        string mapId = _curVisitChapterVo.LevelList[0].ChapterBackdrop;
        //todo 坐标加载
        List <MapPos> mapPos = LoadJson(mapId);

        VisitLevelView.SetData(_curVisitVo, _visitChapterVoList[0], mapPos);


        //通关第一关时弹出天气指引
        if (_visitChapterVoList[0].LevelList.Count > 0)
        {
            VisitLevelVo vo = _visitChapterVoList[0].LevelList[0];

            if (vo.IsPass)
            {
                Common.GuideManager.OpenGuide(Common.GuideEnumType.VISIT_BLESS);
            }
        }
    }
Esempio n. 3
0
    public void SetData(VisitVo curVisitVo, VisitChapterVo visitChapterVoList, List <MapPos> mapPos)
    {
        //资源加载
        int  npcId          = (int)curVisitVo.NpcId;
        bool isShowLoaddown = CacheManager.IsVisitStoryItemLoaddown(npcId);

        _loaddown.gameObject.SetActive(isShowLoaddown);

        _curVisitVo = curVisitVo;
        string pathPre = "Visit/Maps/" + visitChapterVoList.LevelList[0].ChapterBackdrop;

        Debug.LogError(pathPre);
        MapBg.transform.GetComponent <RawImage>().texture = ResourceManager.Load <Texture>(pathPre, ModuleConfig.MODULE_VISIT);

        for (int i = MapBg.childCount - 1; i >= 0; i--)
        {
            Destroy(MapBg.GetChild(i).gameObject);
        }

        SetLeftTime();
        _levelList = visitChapterVoList.LevelList;

        if (_levelList.Count > mapPos.Count)
        {
            Debug.LogError("Level's count is biger than map's");
        }

        Debug.Log("MaxVisitTime  " + curVisitVo.MaxVisitTime + "   CurVisitTime   " + curVisitVo.CurVisitTime + "LevelCount  " + _levelList.Count);
        for (int i = 0; i < _levelList.Count; i++)
        {
            var prefab = GetLevelItem(_levelList[i]);
            var _go    = Instantiate(prefab) as GameObject;
            _go.gameObject.Hide();
            _go.transform.SetParent(MapBg, false);
            _go.transform.localScale    = Vector3.one;
            _go.transform.localPosition = new Vector3((i % 2) * (-400) + 200, MapBg.GetHeight() * 0.5f - 400 - i * 150, 0);
            _go.transform.localPosition = mapPos[i].pos;
            if (!String.IsNullOrEmpty(_levelList[i].Sweetness))
            {
                SetSweetnessStage(_levelList[i].Sweetness);
            }
            _go.GetComponent <VisitLevelItem>().SetData(_levelList[i]);

            _go.gameObject.Show();
        }
    }