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; } } }
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); } } }
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(); } }