private void RefreshHouses(StreetDto street) { HouseList.Clear(); if (street == null) { return; } RequestService.GetHouses(street.Id, SelectedCompany?.Id).ToList().ForEach(h => HouseList.Add(h)); }
private void ChangeStreet(int?streetId) { HouseList.Clear(); if (!streetId.HasValue) { return; } foreach (var house in _requestService.GetHouses(streetId.Value).OrderBy(s => s.Building?.PadLeft(6, '0')).ThenBy(s => s.Corpus?.PadLeft(6, '0'))) { HouseList.Add(house); } OnPropertyChanged(nameof(HouseList)); }
public async Task ChoseHouseAsync(int deck) { if (_gameContainer.CanSendMessage()) { await _gameContainer.Network !.SendAllAsync("chosehouse", deck); } HouseInfo thisHouse = CardsModule.GetHouseCard(deck); await _gameContainer.ShowCardAsync(thisHouse); _gameContainer.SingleInfo !.Hand.Add(thisHouse); _gameContainer.SaveRoot !.HouseList.Clear(); PopulatePlayerProcesses.FillInfo(_gameContainer.SingleInfo); //i think here too. _gameContainer.TakeOutExpense(thisHouse.HousePrice); _gameContainer.GameStatus = EnumWhatStatus.NeedToSpin; await _gameContainer.ContinueTurnAsync !.Invoke(); }
//protected override async Task ShowHumanCanPlayAsync() //{ // await base.ShowHumanCanPlayAsync(); // if (BasicData.IsXamarinForms && (SaveRoot.GameStatus == EnumWhatStatus.NeedTradeSalary || SaveRoot.GameStatus == EnumWhatStatus.NeedStealTile)) // { // await UIPlatform.ShowMessageAsync("Trying to show human can continue"); // if (_gameContainer.SubmitPlayerCommand == null) // { // //UIPlatform.ShowError("Nobody set up the submit player command. Rethink"); // return; // } // _gameContainer.SubmitPlayerCommand.ReportCanExecuteChange(); //try this way. // //await Task.Delay(200); //try delay to fix second bug. // //await UIPlatform.ShowMessageAsync("Choose Player Or End Turn"); // //_gameContainer.Command.ManualReport(); // } //} async Task IMiscDataNM.MiscDataReceived(string status, string content) { switch (status) //can't do switch because we don't know what the cases are ahead of time. { //put in cases here. case "spin": SpinnerPositionData spin = await js.DeserializeObjectAsync <SpinnerPositionData>(content); await _spinnerProcesses.StartSpinningAsync(spin); return; case "gender": EnumGender gender = await js.DeserializeObjectAsync <EnumGender>(content); if (_gameContainer.SelectGenderAsync == null) { throw new BasicBlankException("Nobody is handling the selecting gender. Rethink"); } await _gameContainer.SelectGenderAsync.Invoke(gender); return; case "firstoption": EnumStart firsts = await js.DeserializeObjectAsync <EnumStart>(content); await _boardProcesses.OpeningOptionAsync(firsts); return; case "chosecareer": await _careerProcesses.ChoseCareerAsync(int.Parse(content)); return; case "purchasecarinsurance": await _boardProcesses.PurchaseCarInsuranceAsync(); return; case "purchasedstock": await _boardProcesses.PurchaseStockAsync(); return; case "tradedlifeforsalary": await _boardProcesses.Trade4TilesAsync(); //i think return; case "tradedsalary": await _tradeSalaryProcesses.TradedSalaryAsync(content); return; case "stole": await _stolenTileProcesses.TilesStolenAsync(content); return; case "purchasedhouseinsurance": await _boardProcesses.PurchaseHouseInsuranceAsync(); return; case "attendednightschool": await _boardProcesses.AttendNightSchoolAsync(); return; case "choseretirement": EnumFinal finals = await js.DeserializeObjectAsync <EnumFinal>(content); await _boardProcesses.RetirementAsync(finals); return; case "chosestock": await _chooseStockProcesses.ChoseStockAsync(int.Parse(content)); return; case "chosesalary": await _basicSalaryProcesses.ChoseSalaryAsync(int.Parse(content)); return; case "stockreturned": await _returnStockProcesses.StockReturnedAsync(int.Parse(content)); return; case "chosehouse": await _houseProcesses.ChoseHouseAsync(int.Parse(content)); return; case "willsellhouse": await _boardProcesses.SellHouseAsync(); return; case "twins": CustomBasicList <EnumGender> gList = await js.DeserializeObjectAsync <CustomBasicList <EnumGender> >(content); await _twinProcesses.GetTwinsAsync(gList); return; case "houselist": CustomBasicList <int> tempList = await js.DeserializeObjectAsync <CustomBasicList <int> >(content); SaveRoot !.HouseList.Clear(); tempList.ForEach(thisIndex => SaveRoot.HouseList.Add(CardsModule.GetHouseCard(thisIndex))); await ContinueTurnAsync(); return; default: throw new BasicBlankException($"Nothing for status {status} with the message of {content}"); } }