public void Save(CarInstance carInstance, string userName, ApplicationUser user = null) { if (user == null) { user = GetUser(userName); } if (carInstance.Id != 0 && user.CarInstances.Any(ci => ci.Id == carInstance.Id)) { return; } user.CarInstances.Add(carInstance); appDbContext.CarInstances.Add(carInstance); appDbContext.CarModSelections.AddRange(carInstance.SelectedCarMods); appDbContext.CarMods .AttachRange( carInstance.SelectedCarMods .Select(scm => scm.CarMod)); appDbContext.Products .AttachRange( carInstance.SelectedCarMods .Select(scm => scm.CarMod.Product)); appDbContext.Styles.Attach(carInstance.Style); appDbContext.SaveChanges(); }
public void Overwrite(CarInstance carInstance, string userName) { var user = GetUser(userName); var selectedCarInstance = user.CarInstances .Where(ci => ci.Id == carInstance.Id) .FirstOrDefault(); if (selectedCarInstance == null) { return; } var ids = carInstance.SelectedCarMods .Select(scm => scm.CarMod.Id) .ToList(); var dbCarMods = ( from cm in appDbContext.CarMods where ids.Contains(cm.Id) select cm) .Select(cm => new CarModSelection { CarMod = cm }) .ToList(); selectedCarInstance = ( from ci in appDbContext.CarInstances where ci.Id == selectedCarInstance.Id select ci) .Include(ci => ci.SelectedCarMods).First(); selectedCarInstance.SelectedCarMods.RemoveAll(scm => true); selectedCarInstance.SelectedCarMods = dbCarMods; appDbContext.SaveChanges(); }
public void NotifyBayEntered(Bay bay, CarInstance carInstance) { if (bay == null) { return; } bay.carStatus = Bay.CarStatus.FULL; }
void SpawnCar(int bay) { GameObject pref = carPrefabs[Random.Range(0, carPrefabs.Length)]; GameObject car = Instantiate(pref); CarInstance carInst = car.GetComponent <CarInstance>(); bayController.AllocateBay(bay, carInst); carInst.thisBay = bayController.bays[bay]; }
public void AllocateBay(Bay bay, CarInstance carInstance) { bay.carStatus = Bay.CarStatus.WAITING; bay.currentCar = carInstance; bay.currentProgress = 1f; carInstance.SetAnimationBay(bay.bayNum); carInstance.thisBay = bay; }
public void DisplayNewCarCell(CarInstance carInstance) { GarageItemsList.Add(new CarInstance { ItemType = carInstance.ItemType, Manufacturer = carInstance.Manufacturer, Model = carInstance.Model, VIN = carInstance.VIN, Year = carInstance.Year }); }
async void OnTapEventAsyncCar(object sender, ItemTappedEventArgs e) { if (e.Item == null) { return; } carInstanceItem = e.Item as CarInstance; CarDetailsPopup itemToUpdate = new CarDetailsPopup(carInstanceItem); //itemToUpdate.UpdateItem += new EventHandler(UpdatingItem); await PopupNavigation.Instance.PushAsync(itemToUpdate); }
public void SaveItem() { CarInstance carInstance = new CarInstance { ItemType = ItemType.SelectedItem.ToString(), VIN = VINNumber.Text, Manufacturer = Manufacturer.SelectedItem.ToString(), Model = Model.Text, Year = Year.Text, DatePurchaced = DatePurchased.Date }; NewCarDet = carInstance; }
void Update() { if (Input.GetKeyDown(KeyCode.Mouse0)) { GetComponent <Animator>().SetBool("Brushing", true); RaycastHit rh; if (Physics.Raycast(playerCamera.ScreenToWorldPoint(Input.mousePosition), playerCamera.transform.forward, out rh)) { if (rh.collider.name == "MainBody") { if (Vector3.Distance(rh.collider.ClosestPoint(transform.position), transform.position) > 5) { return; } Material dirtMat = rh.collider.gameObject.GetComponent <MeshRenderer>().materials[1]; float currentDirt = Mathf.Clamp01(dirtMat.GetFloat("_BlendAmount") - (1 / cleaningSpeed)); CarInstance carTarget = rh.collider.GetComponentInParent <CarInstance>(); lastCarCleaned = carTarget; carTarget.isCleaning = true; carTarget.cleaningParticles.Emit(5); if (currentDirt <= 0) { if (carTarget.thisBay == null) { return; } //Car is completely clean BayController.bc.NotifyBayCleaned(carTarget.thisBay); } dirtMat.SetFloat("_BlendAmount", currentDirt); BayController.bc.currentCleaningBay = carTarget.thisBay; } else { BayController.bc.currentCleaningBay = null; } } } else { GetComponent <Animator>().SetBool("Brushing", false); if (lastCarCleaned != null) { lastCarCleaned.isCleaning = false; } BayController.bc.currentCleaningBay = null; } }
public CarDetailsPopup(CarInstance carInstance) { InitializeComponent(); }
public void OverwriteCarInstance([FromBody] CarInstance carInstance) { carInstancesService.Overwrite(carInstance, User.Identity.Name); }
public void SaveCarInstance([FromBody] CarInstance carInstance) { carInstancesService.Save(carInstance, User.Identity.Name); }
//Allows a bay to be entered, by setting it to empty. public void AllocateBay(int bayNum, CarInstance carInstance) { AllocateBay(bays[bayNum], carInstance); }