public void ToBuild(int buildId) { MBuilding mBuilding = BuildingCacher.Instance.GetBuilding(buildId); App.Model.Master.MBuilding buildingMaster = mBuilding.Master; VBaseMap vBaseMap = (App.Util.SceneManager.CurrentScene as CTop).GetVBaseMap(); App.Model.MTile[] tiles = vBaseMap.ViewModel.Tiles.Value; int currentNum = System.Array.FindAll(tiles, _ => _.tile_id == buildingMaster.tile_id).Length; if (currentNum < buildingMaster.sum) { if (BuyManager.CanBuy(buildingMaster.price, buildingMaster.price_type)) { this.StartCoroutine(Build(mBuilding.TileId, vBaseMap, buildingMaster)); } else { //Confirm dialog } } else { //Confirm dialog CAlertDialog.Show("已经达到了购买的上限了!"); } }
public override IEnumerator OnLoad(Request request) { yield return(StartCoroutine(base.OnLoad(request))); tileIndex = request.Get <int>("tile_index"); App.Model.Master.MBuilding[] builds = BuildingCacher.Instance.GetAll(Global.SUser.self.Level); List <MBuilding> mBuildings = new List <MBuilding>(); foreach (App.Model.Master.MBuilding build in builds) { MBuilding mBuilding = new MBuilding(); mBuildings.Add(mBuilding); ScrollViewSetChild(content, childItem, mBuilding); mBuilding.Id = build.id; } BuildingCacher.Instance.SetBuildings(mBuildings); closeEvent = () => { BuildingCacher.Instance.SetBuildings(null); }; yield return(0); }