public virtual IActionResult PostTower([FromBody] TowerViewModel towerViewModel) { try { towerViewModel.UserId = UserId; var existingTower = TowerRepository.Find(towerViewModel.TowerId); if (existingTower != null) { return(new ObjectResult(new OperationResult { IsSuccess = false, ErrorMessage = "Tower is already exist" })); } var towerModel = towerViewModel.Adapt <TowerViewModel, Tower>(); TowerRepository.Add(towerModel); return(new ObjectResult(new OperationResult { IsSuccess = true, ErrorMessage = "Created Successfully" })); } catch (Exception ex) { return(new ObjectResult(new OperationResult { IsSuccess = false, ErrorMessage = ex.Message })); } }
public override void UpdateView() { TowerViewModel viewModel = new TowerViewModel(); viewModel.Range = Model.Range.Points; viewModel.MaxAmmo = Model.Ammo.MaxPoints; viewModel.Ammo = Model.Ammo.Points; viewModel.IsSold = isSold; viewModel.SellPrice = sellPrice; viewModel.ReloadPrice = reloadPrice; View.UpdateState(viewModel); }
public void UpdateState(TowerViewModel viewModel) { if (viewModel.IsSold) { FlyingTextSpawner.SpawnGoldEarned(viewModel.SellPrice, gameObject); Destroy(gameObject); return; } if (ammoBar == null) { attacher = GetComponent <PrefabAttacher>(); attacher.AttachPrefab(); ammoBar = attacher.GetInstance().transform.Find("Ammunition Bar").GetComponent <Bar>(); ammoBar.pointsImage = attacher. GetInstance(). transform.Find("Ammunition Bar/Ammo"). GetComponent <Image>(); disabler = GetComponent <ObjectDisabler>(); GameObject buttons = ammoBar.gameObject.transform.parent.Find("Buttons").gameObject; disabler.toBeDisabled = buttons; disabler.Disable(); reloadButton = buttons.transform.Find("Reload").GetComponent <Button>(); sellButton = buttons.transform.Find("Sell").GetComponent <Button>(); reloadButton.onClick.AddListener(OnReload); sellButton.onClick.AddListener(OnSell); } range = viewModel.Range; ammoBar.UpdateState(viewModel.Ammo, viewModel.MaxAmmo); int ammoPercentage = (int)(viewModel.Ammo / viewModel.MaxAmmo * 100); if (ammoPercentage != lastAmmoPercentageShown) { lastAmmoPercentageShown = ammoPercentage; if (ammoPercentage < nextMilestone) { FlyingTextSpawner.SpawnAmmunitionLeft(ammoPercentage, gameObject); nextMilestone -= 100; } } if (viewModel.ReloadPrice != 0) { FlyingTextSpawner.SpawnGoldSpent(viewModel.ReloadPrice, gameObject); } }
public virtual IActionResult GetTowerById([FromRoute] long TowerId) { var twrModel = TowerRepository.Find(TowerId); var twrVM = new TowerViewModel(); if (twrModel != null) { twrVM = twrModel.Adapt <TowerViewModel>(); return(new ObjectResult(twrVM)); } else { return(new ObjectResult(new ResponseMsg { HttpStatusCode = (int)HttpStatusCode.BadRequest, Message = "Tower does not exist" })); } }
public virtual IActionResult PutTower([FromBody] TowerViewModel towerViewModel) { try { towerViewModel.UserId = UserId; var existingTower = TowerRepository.Find(towerViewModel.TowerId); if (existingTower != null) { if (towerViewModel.TowerId > 0) { towerViewModel.Adapt(existingTower); TowerRepository.Update(existingTower); return(new ObjectResult(new OperationResult { IsSuccess = true, ErrorMessage = "Tower Updated Successfully" })); } else { return(new ObjectResult(new OperationResult { IsSuccess = false, ErrorMessage = "Not Updated" })); } } else { return(new ObjectResult(new OperationResult { IsSuccess = false, ErrorMessage = "tower does not exist" })); } } catch (Exception ex) { return(new ObjectResult(new OperationResult { IsSuccess = false, ErrorMessage = ex.Message })); } }