public override bool TrySet(CarPart newPart, PartSlot previousSlot) { if (IsCompatible(newPart.type)) { return(base.TrySet(newPart, previousSlot)); } else { return(false); } }
public void ShowInventory(CarPart carPart) { InventoryPanel.SetActive(true); gridItem.SetItemOnUI(carPart); /* * print(carPart.part); * gridItem.GetComponentInChildren<Text>().text = carPart.part.ToString(); */ }
private void LoadPartAttributes(CarPart carPart, DBCarPart carPartInfo) { AttributeOffsetTable attributeOffsetTable = _attributeOffsetTables[carPartInfo.AttributeTableOffset]; foreach (var attributeOffset in attributeOffsetTable.Offsets) { var attribute = _preparedAttributes[attributeOffset]; carPart.Attributes.Add(attribute); } }
/// <summary> /// Method that loops through all parts and updates the quantity of the /// provided <paramref name="part"/>. /// </summary> /// <param name="part">The part that needs to be restocked.</param> /// <param name="quantity">The desired quantity to be purchased.</param> public static void PurchaseParts(CarPart part, int quantity) { foreach (PartQuantity pq in GetAllParts()) { if (pq.PartId == part.GetId()) { pq.Restock(quantity); break; } } }
public bool Update(CarPart carPart) { _context.CarParts.Update(carPart); if (_context.SaveChanges() == 0) { return(false); } return(true); }
public void Damage(CarPart part, string Mesh) { if (part.Transform.parent != null) { part.ShowMesh(Mesh); part.Transform.GetComponent <MeshRenderer>().sharedMaterial = _dirtyBodywork; Recrdng.Current.RecordDamage(VId, RecEventType.Crunch, part.Transform.name, Mesh); } Crash2AudioSource.Play(); Damg = true; }
/// <summary> /// Method that checks if a part is in stock and determines if it needs to be purchased. /// </summary> /// <param name="cp"> The part that is being counted.</param> /// <returns></returns> private static bool ForRestock(CarPart cp) { foreach (PartQuantity pq in UnavailableParts) { if (pq.PartId == cp.GetId()) { return(true); } } return(false); }
/** * Returns false if already occupied. * Otherwise sets item at posiiton and returns true. */ public virtual bool TrySet(CarPart newPart, PartSlot previousSlot) { if (!IsSet()) { ForceSet(newPart, previousSlot, null); return(true); } else { return(false); } }
public Car(string teamName, Driver driver, CarPart motor, CarPart gearbox, CarPart suspension, CarPart brakes, CarPart tyres, int fuel) { this.teamName = teamName; this.driver = driver; this.motor = motor; this.gearbox = gearbox; this.suspension = suspension; this.brakes = brakes; this.tyres = tyres; this.fuel = fuel; }
public JsonResult CreateEditCarPart(string strCarpart) { JavaScriptSerializer serializer = new JavaScriptSerializer(); CarPart entity = serializer.Deserialize <CarPart>(strCarpart); CarPartDAO dao = new CarPartDAO(); entity.MetaTitle = Common.convertToUnSign.convert(entity.Name); entity.Description = (String)System.Net.WebUtility.HtmlDecode(entity.Description); int res = dao.CreateEditCarPart(entity, (string)Session[Common.CommonConstants.USER_NAME]); return(Json(new { res = res })); }
//Car static internal int GetLvl1CarPartCost(CarPart carPart) { int cost = 0; switch (carPart) { case CarPart.Chassis: cost = 1292539; break; case CarPart.Engine: cost = 3311737; break; case CarPart.FWing: cost = 1551354; break; case CarPart.RWing: cost = 1504126; break; case CarPart.Underbody: cost = 510128; break; case CarPart.Sidepods: cost = 459831; break; case CarPart.Cooling: cost = 454545; break; case CarPart.Gearbox: cost = 3098104; break; case CarPart.Brakes: cost = 697674; break; case CarPart.Suspension: cost = 1181545; break; case CarPart.Electronics: cost = 938416; break; } return(cost); }
public void DestroyParts(CarPart.PartType inType) { List <CarPart> partInventory = this.GetPartInventory(inType); for (int index = 0; index < partInventory.Count; ++index) { CarPart carPart = partInventory[index]; partInventory[index] = (CarPart)null; carPart.DestroyCarPart(); } partInventory.Clear(); }
public bool TryAddItem(CarPart newPart) { foreach (InteractiveSlot slot in slots) { if (slot.TrySet(newPart, null)) { return(true); } } return(false); }
public void ApplyStats(CarPart inPart) { if (this.HasActivationRequirement()) { return; } inPart.stats.rulesRisk += this.riskLevel; inPart.stats.maxPerformance += this.maxStatBoost; inPart.stats.partCondition.redZone += this.redZone; inPart.stats.maxReliability += this.maxReliabilityBoost; inPart.stats.SetStat(CarPartStats.CarPartStat.MainStat, inPart.stats.stat + this.statBoost); inPart.stats.SetStat(CarPartStats.CarPartStat.Reliability, inPart.stats.reliability + this.reliabilityBoost); }
public async Task <ActionResult <bool> > Post([FromBody] CarPart item) { int result; try{ result = (await _toDoService.AddToDoItem(item)); return(Ok(result)); } catch (Exception ex) { result = 0; return(BadRequest(result)); } }
private void SaveCarInformation() { CarPart CarToSave = new CarPart(); try { if (hfID.Value != "") { CarToSave.Id = Convert.ToInt32(hfID.Value); } CarToSave.IsActive = cbActive.Checked; //CarToSave.main_picture if (ddlMarkers.SelectedIndex > 0) { CarToSave.MakerId = Convert.ToInt32(ddlMarkers.SelectedValue); } if (ddlModels.SelectedIndex > 0) { CarToSave.ModelId = Convert.ToInt32(ddlModels.SelectedValue); } if (ddlcarPartType.SelectedIndex > 0) { CarToSave.TypeId = Convert.ToInt32(ddlcarPartType.SelectedValue); } if (txtSalePrice.Text != "") { CarToSave.Price = Convert.ToDecimal(txtSalePrice.Text); } //if (txtPriority.Text != "") { CarToSave.Periority = Convert.ToInt32(txtPriority.Text); } if (txtDesc.Text != "") { CarToSave.Description = txtDesc.Text; } if (ddlYears.SelectedIndex > 0) { CarToSave.YearId = Convert.ToInt32(ddlYears.SelectedValue); } var result = new CarPartsManager().SaveCarPart(CarToSave); if (result != null) { //go to Cars images list. string url = ResolveClientUrl("CarPartsImages.aspx?categoryType=cars&masterId=") + result; //"CarsView.aspx"; Response.Redirect(url); } else { lblError.Text = Resources.AdminResources_en.ErrorSave; } } catch { lblError.Text = Resources.AdminResources_en.ErrorSave; } }
public async Task <IActionResult> Create(Guid?carGradeId, CarPartEditModel model) { if (carGradeId == null) { this.NotFound(); } var fileName = Path.GetFileName(ContentDispositionHeaderValue.Parse(model.PartPath.ContentDisposition).FileName.Value.Trim('"')); var fileExt = Path.GetExtension(fileName); if (!CarPartsController.AllowedExtensions.Contains(fileExt)) { this.ModelState.AddModelError(nameof(model.PartPath), "This file type is prohibited"); } var carGrade = await this._context.CarGrades .SingleOrDefaultAsync(m => m.Id == carGradeId); if (carGrade == null) { this.NotFound(); } if (this.ModelState.IsValid) { var carPart = new CarPart { CarGradeId = carGrade.Id, Name = model.Name, Description = model.Description }; var attachmentPath = Path.Combine(this.hostingEnvironment.WebRootPath, "attachments/parts", carPart.Id.ToString("N") + fileExt); carPart.PartPath = $"/attachments/parts/{carPart.Id:N}{fileExt}"; using (var fileStream = new FileStream(attachmentPath, FileMode.CreateNew, FileAccess.ReadWrite, FileShare.Read)) { await model.PartPath.CopyToAsync(fileStream); } carPart.Id = Guid.NewGuid(); this._context.Add(carPart); await this._context.SaveChangesAsync(); return(this.RedirectToAction("Details", "CarGrades", new { carGradeId = carGrade.Id })); } this.ViewData["CarGradeId"] = new SelectList(this._context.CarGrades, "Id", "GradePath"); this.ViewBag.CarGrades = carGrade; return(this.View(model)); }
// GET: CarParts/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CarPart carPart = db.CarParts.Find(id); if (carPart == null) { return(HttpNotFound()); } return(View(carPart)); }
public bool AddCarPart(CarPart newPart) { try { this.context.CarParts.Add(newPart); this.context.Commit(); } catch (Exception ex) { return(this.LogError(ex)); } return(true); }
public IHttpActionResult DeleteCarPart(string id) { CarPart carPart = db.CarParts.Find(id); if (carPart == null) { return(NotFound()); } db.CarParts.Remove(carPart); db.SaveChanges(); return(Ok(carPart)); }
public CarPart GetHighestStatPartOfType(CarPart.PartType inType) { CarPart carPart = (CarPart)null; List <CarPart> partInventory = this.GetPartInventory(inType); for (int index = 0; index < partInventory.Count; ++index) { if (!partInventory[index].IsBanned && (carPart == null || (double)partInventory[index].stats.statWithPerformance > (double)carPart.stats.statWithPerformance)) { carPart = partInventory[index]; } } return(carPart); }
private void SetBaseStats(CarPart inPart) { Engineer personOnJob = (Engineer)this.mTeam.contractManager.GetPersonOnJob(Contract.Job.EngineerLead); inPart.stats = new CarPartStats(inPart); float inValue = (float)(this.seasonPartStartingStat[inPart.GetPartType()] + (int)Math.Floor(personOnJob.Stats.PartContributionStats.GetStat(inPart.stats.statType))); inPart.stats.level = this.GetLevelFromComponents(inPart); inPart.stats.maxPerformance = this.mTeam.carManager.GetCar(0).ChassisStats.improvability * 2f; inPart.stats.SetStat(CarPartStats.CarPartStat.Reliability, GameStatsConstants.initialReliabilityValue); inPart.stats.maxReliability = GameStatsConstants.initialMaxReliabilityValue; inPart.stats.partCondition.redZone = GameStatsConstants.initialRedZone; inPart.stats.SetStat(CarPartStats.CarPartStat.MainStat, inValue); }
public void AddPart(CarPart inPart) { switch (inPart.GetPartType()) { case CarPart.PartType.Brakes: this.brakesInventory.Add(inPart); break; case CarPart.PartType.Engine: this.engineInventory.Add(inPart); break; case CarPart.PartType.FrontWing: this.frontWingInventory.Add(inPart); break; case CarPart.PartType.Gearbox: this.gearboxInventory.Add(inPart); break; case CarPart.PartType.RearWing: this.rearWingInventory.Add(inPart); break; case CarPart.PartType.Suspension: this.suspensionInventory.Add(inPart); break; case CarPart.PartType.RearWingGT: this.rearWingGTInventory.Add(inPart); break; case CarPart.PartType.BrakesGT: this.brakesGTInventory.Add(inPart); break; case CarPart.PartType.EngineGT: this.engineGTInventory.Add(inPart); break; case CarPart.PartType.GearboxGT: this.gearboxGTInventory.Add(inPart); break; case CarPart.PartType.SuspensionGT: this.suspensionGTInventory.Add(inPart); break; } }
void Placement(bool shouldPlace = false) { // Top-left-most colliding tile is the origin tile used to validate placement PartPlacementTile origin = null; var worldRect = partSprite.GetComponent <RectTransform>().rect; foreach (var item in tileOptions) { var localRect = new Rect( worldRect.position + (Vector2)this.transform.position - (Vector2)item.transform.position, worldRect.size ); if (item.GetComponent <RectTransform>().rect.Overlaps(localRect)) { if (!origin) { origin = item; } else { var curPos = origin.transform.position; var newPos = item.transform.position; if (newPos.y > curPos.y || (newPos.y == curPos.y && newPos.x < curPos.x)) { origin = item; } } } } if (origin) { // Validate placement carBuilder.IntentToPlacePart(part, origin.x, origin.y); if (shouldPlace) { var success = carBuilder.PlacePart(part, origin.x, origin.y); if (success) { // Add part to grid part = null; isDone = true; closedHandSprite.SetActive(false); openHandSprite.SetActive(false); Destroy(partSprite); } } } }
public bool DeleteCarPart(int Id) { CarPart entity = db.CarParts.Find(Id); db.CarParts.Remove(entity); try { db.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public async Task <int> Update(CarPart carPart) { var result = _context.CarParts.FirstOrDefault(item => item.ID == carPart.ID); if (result != null) { result.ManufacturerName = carPart.ManufacturerName; result.PartDescription = carPart.PartDescription; result.PartName = carPart.PartName; result.PartNumber = carPart.PartNumber; _context.CarParts.Update(result); } return(await _context.SaveChangesAsync()); }
public void IntentToPlacePart(CarPart part, uint x, uint y) { var isValid = PlacementIsValid(part, x, y); for (var yCell = y; yCell < y + part.height; yCell++) { for (var xCell = x; xCell < x + part.width; xCell++) { if (xCell < tileGrid.GetLength(0) && yCell < tileGrid.GetLength(1)) { tileGrid[xCell, yCell].GetComponent <Image>().color = isValid ? Color.yellow : Color.red; } } } }
// GET: CarParts/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CarPart carPart = db.CarParts.Find(id); if (carPart == null) { return(HttpNotFound()); } ViewBag.link1 = new SelectList(db.UserRegisters, "email", "password", carPart.link1); return(View(carPart)); }
public ActionResult Get(int id) { CarPart retval = null; using (var db = new EfContext()) { db.CarParts.FirstOrDefault(x => x.ID == id).VisitsNumber++; db.SaveChanges(); retval = db.CarParts .Include(x => x.Shop) .Include(x => x.CarBrand) .FirstOrDefault(x => x.ID == id); } return(Json(retval, JsonRequestBehavior.AllowGet)); }
private CarPart GetDefaultPart(CarPart.PartType inType, Team inTeam) { CarPart partEntity = CarPart.CreatePartEntity(inType, this.championship); partEntity.stats.SetStat(CarPartStats.CarPartStat.MainStat, (float)(GameStatsConstants.specPartValues[this.championship.championshipID] + RandomUtility.GetRandom(0, 10))); partEntity.stats.SetStat(CarPartStats.CarPartStat.Reliability, 0.8f); partEntity.stats.partCondition.SetCondition(0.8f); partEntity.stats.partCondition.redZone = GameStatsConstants.initialRedZone; partEntity.stats.maxReliability = 1f; partEntity.stats.maxPerformance = 0.0f; partEntity.buildDate = Game.instance.time.now; partEntity.stats.level = 0; partEntity.PostStatsSetup(this.championship); return(partEntity); }
CarProduced() { Parts = new CarPart[0]; }
public CarProduced(FactoryId id, string employeeName, string carModel, CarPart[] parts) { Id = id; EmployeeName = employeeName; CarModel = carModel; Parts = parts; }
ReceiveShipmentInCargoBay() { CarParts = new CarPart[0]; }
public CarBlueprint(string designName, CarPart[] requiredParts) { DesignName = designName; RequiredParts = requiredParts; }
/// <summary> /// 添加组件 /// </summary> /// <param name="__part"></param> /// <returns></returns> public static bool AddPart(CarPart __part) { return AddPart(__part.Name); }
///// <summary> ///// (弃用)生成模型 ///// </summary> ///// <param name="__name">模型名字</param> ///// <param name="__path">模型路径</param> //static void InitObject(string __name, string __path) //{ // if (IsInitObject) // { // object _asset = Resources.Load(__path); // if (_asset is GameObject) // { // GameObject _obj = GameObject.Instantiate<GameObject>(Resources.Load<GameObject>(__path)); // objects.Add(__name, _obj); // } // else // { // Texture2D _tex = _asset as Texture2D; // GameObject _carBody = objects[car.CarBaseModle]; // _carBody.GetComponent<Renderer>().material.mainTexture = _tex; // } // } //} /// <summary> /// 生成模型 /// </summary> /// <param name="__name">模型名字</param> /// <param name="__path">模型路径</param> static void InitObject(CarPart __part) { if (IsInitObject) { if (__part.Assets == null) return; Object _asset = Resources.Load(__part.Assets[0].AssetPath); if (__part.Name == carBodyName) { GameObject _obj = GameObject.Instantiate(_asset) as GameObject; objects.Add(carBodyName, _obj); Component[] _coms = _obj.GetComponentsInChildren<MeshRenderer>(); for (int i = 0; i < _coms.Length; i++) { objects.Add(_coms[i].name, _coms[i].gameObject); } } else { partObjects.Add(__part.Name, new List<GameObject>()); for (int i = 0; i < __part.Assets.Count; i++) { Object _tempAsset = Resources.Load(__part.Assets[i].AssetPath); if (_tempAsset is GameObject) //如果资源是模型 { GameObject _obj = GameObject.Instantiate(_tempAsset) as GameObject; partObjects[__part.Name].Add(_obj); if (!string.IsNullOrEmpty(__part.Assets[i].Target)) { if (objects.ContainsKey(__part.Assets[i].Target)) { if (!oldPartObjects.ContainsKey(__part.Assets[i].Target)) { oldPartObjects.Add(__part.Assets[i].Target, objects[__part.Assets[i].Target]); objects[__part.Assets[i].Target].SetActive(false); if (Scene1_UI.CarSeleted == "Tiguan") { _obj.transform.parent = objects[__part.Assets[i].Target].transform.parent; } else { _obj.transform.SetParent(objects[__part.Assets[i].Target].transform.parent, false); } } else { for (int j = 0; j < car.Parts.Count; j++) { CarPart _tempPart = AppData.GetCarPartData(car.CarBaseModle, car.Parts[j]); if (_tempPart.HasTarget(__part.Assets[i].Target)) { RemovePart(_tempPart); oldPartObjects.Add(__part.Assets[i].Target, objects[__part.Assets[i].Target]); objects[__part.Assets[i].Target].SetActive(false); break; } } } } else { throw new System.Exception("组件" + __part.Name + "的Asset[" + i + "]的Target不存在"); } } } else if (_tempAsset is Material)//如果资源是材质 { if (!string.IsNullOrEmpty(__part.Assets[i].Target)) { if (objects.ContainsKey(__part.Assets[i].Target)) { MeshRenderer _renderer = objects[__part.Assets[i].Target].GetComponent<MeshRenderer>(); if (!oldPartMaterials.ContainsKey(__part.Assets[i].Target)) { oldPartMaterials.Add(__part.Assets[i].Target, _renderer.material); } else { for (int j = 0; j < car.Parts.Count; j++) { CarPart _tempPart = AppData.GetCarPartData(car.CarBaseModle, car.Parts[j]); if (_tempPart.HasTarget(__part.Assets[i].Target)) { RemovePart(_tempPart); oldPartMaterials.Add(__part.Assets[i].Target, _renderer.material); break; } } } _renderer.material = _tempAsset as Material; } else { throw new System.Exception("组件" + __part.Name + "的Asset[" + i + "]的Target不存在"); } } } else if (_tempAsset is Texture2D)//如果资源是贴图 { if (!string.IsNullOrEmpty(__part.Assets[i].Target)) { if (objects.ContainsKey(__part.Assets[i].Target)) { if (oldTextures.ContainsKey(__part.Assets[i].Target)) { for (int j = 0; j < car.Parts.Count; j++) { CarPart _tempPart = AppData.GetCarPartData(car.CarBaseModle, car.Parts[j]); if (_tempPart.HasTarget(__part.Assets[i].Target)) { RemovePart(_tempPart); break; } } } MeshRenderer _renderer = objects[__part.Assets[i].Target].GetComponent<MeshRenderer>(); oldTextures.Add(__part.Assets[i].Target, _renderer.material.mainTexture); _renderer.material.mainTexture = _tempAsset as Texture2D; } else { throw new System.Exception("组件" + __part.Name + "的Asset[" + i + "]的Target不存在"); } } } } } } }
///// <summary> ///// (弃用)删除模型 ///// </summary> ///// <param name="__name"></param> //static void DeleteModel(string __name) //{ // if (IsInitObject) // { // GameObject.Destroy(objects[__name]); // objects.Remove(__name); // } //} static void DeletePart(CarPart __part) { if (IsInitObject) { //组件物体删掉 if (partObjects.ContainsKey(__part.Name)) { for (int i = 0; i < partObjects[__part.Name].Count; i++) { GameObject.Destroy(partObjects[__part.Name][i]); } partObjects.Remove(__part.Name); } for (int i = 0; i < __part.Assets.Count; i++) { if (string.IsNullOrEmpty(__part.Assets[i].Target)) continue; //旧的组件还原 if (oldPartObjects.ContainsKey(__part.Assets[i].Target)) { oldPartObjects[__part.Assets[i].Target].SetActive(true); oldPartObjects.Remove(__part.Assets[i].Target); } //材质还原 if (oldPartMaterials.ContainsKey(__part.Assets[i].Target)) { GameObject _obj = objects[__part.Assets[i].Target]; MeshRenderer _renderer = _obj.GetComponent<MeshRenderer>(); GameObject.Destroy(_renderer.material); _renderer.material = oldPartMaterials[__part.Assets[i].Target]; oldPartMaterials.Remove(__part.Assets[i].Target); } //移除贴图 if (oldTextures.ContainsKey(__part.Assets[i].Target)) { GameObject _obj = objects[__part.Assets[i].Target]; MeshRenderer _renderer = _obj.GetComponent<MeshRenderer>(); _renderer.material.mainTexture = oldTextures[__part.Assets[i].Target]; oldTextures.Remove(__part.Assets[i].Target); } } } }
/// <summary> /// 移除指定的组件 /// </summary> /// <param name="__part"></param> /// <returns></returns> public static bool RemovePart(CarPart __part) { return RemovePart(__part.Name); }
public ReceiveShipmentInCargoBay(FactoryId id, string shipmentName, CarPart[] carParts) { Id = id; ShipmentName = shipmentName; CarParts = carParts; }