// PUT api/PaintsAPI/5 public HttpResponseMessage PutPaints(int id, Paints paints) { if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } if (id != paints.PaintId) { return(Request.CreateResponse(HttpStatusCode.BadRequest)); } db.Entry(paints).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex)); } return(Request.CreateResponse(HttpStatusCode.OK)); }
/// <summary> /// Read method through StreamReadr /// </summary> /// <param name="filePath"></param> /// <returns></returns> public static List <IFigure> StreamRead(string filePath) { List <IFigure> figures = new List <IFigure>(); StreamReader stream = new StreamReader(filePath); XDocument document = XDocument.Load(stream); XElement xRoot = document.Element("figures"); foreach (XElement xe in xRoot.Elements("figure").ToList()) { switch (xe.Element("material").Value) { case "Paper": FiguresAdd(xe, figures, Material.Paper); Paints paint = (Paints)int.Parse(xe.Element("color").Value); PaintBrush.PaintFigure(figures[figures.Count - 1], paint); break; case "Film": FiguresAdd(xe, figures, Material.Film); break; } } stream.Close(); return(figures); }
// PUT api/PaintsAPI/5 public HttpResponseMessage PutPaints(int id, Paints paints) { if (!ModelState.IsValid) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } if (id != paints.PaintId) { return Request.CreateResponse(HttpStatusCode.BadRequest); } db.Entry(paints).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex); } return Request.CreateResponse(HttpStatusCode.OK); }
/// <summary> /// Read method through XmlReader /// </summary> /// <param name="filePath"></param> /// <returns></returns> public static List <IFigure> XmlRead(String filePath) { List <IFigure> figures = new List <IFigure>(); XmlReader reader = XmlReader.Create(filePath); while (reader.Read()) { if (reader.Name == "material") { String value = reader.ReadInnerXml(); switch (value) { case "Paper": FiguresAdd(reader, figures, Material.Paper); reader.Read(); Paints paint = (Paints)int.Parse(reader.ReadInnerXml()); PaintBrush.PaintFigure(figures[figures.Count - 1], paint); break; case "Film": FiguresAdd(reader, figures, Material.Film); break; } } } reader.Close(); return(figures); }
/// <summary> /// Paint mathod /// </summary> /// <param name="newColor"></param> public void Paint(Paints newColor) { if (color != Paints.None) { throw new ImpossibleToPaintException(); } color = newColor; }
public ActionResult DeleteConfirmed(int id) { Paints paints = db.Paints.Find(id); db.Paints.Remove(paints); db.SaveChanges(); return(RedirectToAction("Index")); }
/// <summary> /// Initializes a new instance of the RectanglePaper class, cutting from another figure /// </summary> /// <param name="figure"> Figure for cutting</param> /// <param name="b"> Width of a rectangle</param> /// <param name="a"> Height of a rectangle</param> public RectanglePaper(IFigure figure, double a, double b) : base(figure, a, b) { if (!(figure is Paper)) { throw new CutException(); } this.color = ((Paper)figure).GetColor(); }
private void LoadPaintList() { Paints.Clear(); foreach (Paint paint in PaintListFile.Read(PaintListPath)) { Paints.Add(paint); } }
/// <summary> /// Method for paint figures /// </summary> /// <param name="figure"></param> /// <param name="color"></param> public static void PaintFigure(IFigure figure, Paints color) { if (!(figure is Paper)) { throw new ImpossibleToPaintException(); } ((Paper)figure).Paint(color); }
/// <summary> /// Initializes a new instance of the CirclePaper class, cutting from another figure /// </summary> /// <param name="figure"> Figure for cutting</param> /// <param name="radius"> Circle radius</param> public CirclePaper(IFigure figure, double radius) : base(figure, radius) { if (!(figure is Paper)) { throw new CutException(); } this.color = ((Paper)figure).GetColor(); }
protected ConfigurationBaseViewModel(CarConfiguratorEntityContext context, bool onlySelectedAccessories = false, bool onlySelectedEngineSettings = false, bool onlySelectedPaints = false, bool onlySelectedRims = false) { var config = SessionData.ActiveConfiguration; var carModel = context.CarModels.First(cur => cur.Id == config.CarModel.Id); //accessories Accessories = context.Accessories.ToList() .Select(cur => new AccessoryViewModel(cur) { IsSelected = config.AccessoryIds.Contains(cur.Id) }) .OrderBy(cur => cur.Price) .ToList(); if (onlySelectedAccessories) { Accessories = Accessories.Where(cur => cur.IsSelected).ToList(); } //engine settings EngineSettings = carModel.EngineSettings.ToList() .Select(cur => new EngineSettingsViewModel(cur) { IsSelected = (cur.Id == config.EngineSettingsId) }) .OrderBy(cur => cur.Price) .ToList(); if (onlySelectedEngineSettings) { EngineSettings = EngineSettings.Where(cur => cur.IsSelected).ToList(); } //paints Paints = context.Paints.ToList() .Select(cur => new PaintViewModel(cur) { IsSelected = (cur.Id == config.PaintId) }) .OrderBy(cur => cur.Name) .ToList(); if (onlySelectedPaints) { Paints = Paints.Where(cur => cur.IsSelected).ToList(); } //rims Rims = context.Rims.ToList() .Select(cur => new RimViewModel(cur) { IsSelected = (cur.Id == config.RimId) }) .ToList(); if (onlySelectedRims) { Rims = Rims.Where(cur => cur.IsSelected).ToList(); } }
// // GET: /Paints/Delete/5 public ActionResult Delete(int id = 0) { Paints paints = db.Paints.Find(id); if (paints == null) { return(HttpNotFound()); } return(View(paints)); }
public Mygame(int setwidth, int setheight, int i, Color l, Color d, Color b, Color g, Graphics gr) { width = setwidth; height = setheight; initialtime = i; legacy = new Deq <Generation>(); currentgeneration = new Generation(width, height); paints = new Paints(l, d, b, g); graph = gr; }
public ActionResult Edit(Paints paints) { if (ModelState.IsValid) { db.Entry(paints).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(paints)); }
public ActionResult Create(Paints paints) { if (ModelState.IsValid) { db.Paints.Add(paints); db.SaveChanges(); return RedirectToAction("Index"); } return View(paints); }
public void AlphabeticPaintSort(bool ascending) { if (ascending) { Paints = new ObservableCollection <PaintStockViewModel>(Paints.OrderBy(x => x.Label).ToList()); } else { Paints = new ObservableCollection <PaintStockViewModel>(Paints.OrderByDescending(x => x.Label).ToList()); } }
// GET api/PaintsAPI/5 public Paints GetPaints(int id) { Paints paints = db.Paints.Find(id); if (paints == null) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound)); } return(paints); }
public void FilledPaintSort(bool ascending) { if (ascending) { Paints = new ObservableCollection <PaintStockViewModel>(Paints.OrderBy(x => x.FilledLv)); } else { Paints = new ObservableCollection <PaintStockViewModel>(Paints.OrderByDescending(x => x.FilledLv)); } }
public ActionResult Create(Paints paints) { if (ModelState.IsValid) { db.Paints.Add(paints); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(paints)); }
public ConfigurationOverviewPageViewModel(CarConfiguratorEntityContext context) : base(context, onlySelectedAccessories: true, onlySelectedEngineSettings: true, onlySelectedPaints: true, onlySelectedRims: true) { Configuration = new ConfigurationViewModel { Accessories = Accessories, EngineSettings = EngineSettings.FirstOrDefault(), Paint = Paints.FirstOrDefault(), Rims = Rims.FirstOrDefault() }; Configuration.InitPrice(); }
public PaintList() { // マスターリスト読み込み if (!(bool)(System.ComponentModel.DesignerProperties.IsInDesignModeProperty.GetMetadata(typeof(System.Windows.DependencyObject)).DefaultValue)) { LoadPaintList(); } // フィルター項目 設定 PaintFilter = new FilterList(Paints.Select(p => new Filter() { Maker = p.Maker, Series = p.Series }).Distinct().ToArray()); }
// POST api/PaintsAPI public HttpResponseMessage PostPaints(Paints paints) { if (ModelState.IsValid) { db.Paints.Add(paints); db.SaveChanges(); HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, paints); response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = paints.PaintId })); return response; } else { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } }
// POST api/PaintsAPI public HttpResponseMessage PostPaints(Paints paints) { if (ModelState.IsValid) { db.Paints.Add(paints); db.SaveChanges(); HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, paints); response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = paints.PaintId })); return(response); } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } }
public CustomCar getCustomCar() { return(new CustomCar() { baseCarId = BaseCarId, carClassHash = CarClassHash, id = Id, name = Name, paints = Paints.ToString().DeserializeObject <List <CustomPaintTrans> >(), performanceParts = PerformanceParts.ToString().DeserializeObject <List <PerformancePartTrans> >(), physicsProfileHash = PhysicsProfileHash, resalePrice = ResalePrice, skillModParts = SkillModParts.ToString().DeserializeObject <List <SkillModPartTrans> >(), skillModSlotCount = 6, vinyls = Vinyls.ToString().DeserializeObject <List <CustomVinylTrans> >(), visualParts = VisualParts.ToString().DeserializeObject <List <VisualPartTrans> >() }); }
public override void ModifyWorldGenTasks(List <GenPass> tasks, ref float totalWeight) { var mymod = (PaintedHillsMod)this.mod; float size = mymod.Config.HueBlobMinimumTileRadius; float size_variance = mymod.Config.HueBlobSizeVariance; float shape_variance = mymod.Config.HueBlobShapeVariance; int idx = tasks.FindIndex(genpass => genpass.Name.Equals("Micro Biomes")); if (idx != -1) { tasks.Insert(idx + 1, new PassLegacy("Painting Hills", delegate(GenerationProgress progress) { progress.Message = "Painting Hills"; float chunk_size = 300f * 300f; float chunks = ((float)Main.maxTilesX * (float)Main.maxTilesY) / chunk_size; chunks *= mymod.Config.HueBlobQuantityMultiplier; if (mymod.Config.DebugModeInfo) { ErrorLogger.Log("chunks: " + chunks); } for (int i = 0; i < chunks; i++) { int x, y; var huemap = new HueTileMap(); var colorer = new FadingColorer(huemap, Paints.None); Paints hue = ColorPicker.GetRandomColor(); huemap.FindRandomTile(out x, out y); colorer.SetHue(hue); if (mymod.Config.DebugModeInfo) { ErrorLogger.Log(" painting blob (" + (i + 1) + " of " + chunks + "): " + x + ", " + y + " " + ColorPicker.GetName(hue)); } ShapePainter.PaintBlob(mymod, colorer, x, y, size, size_variance, shape_variance); progress.Set((float)i / chunks); } })); } }
// DELETE api/PaintsAPI/5 public HttpResponseMessage DeletePaints(int id) { Paints paints = db.Paints.Find(id); if (paints == null) { return(Request.CreateResponse(HttpStatusCode.NotFound)); } db.Paints.Remove(paints); try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex)); } return(Request.CreateResponse(HttpStatusCode.OK, paints)); }
public Colorer(HueTileMap huemap, Paints hue) { this.HueMap = huemap; this.Hue = hue; }
public static string GetName(Paints hue) { return(Enum.GetNames(typeof(Paints))[(int)hue]); }
public FadingColorer(HueTileMap huemap, Paints hue) : base(huemap, hue) { }
public ActionResult Edit(Paints paints) { if (ModelState.IsValid) { db.Entry(paints).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } return View(paints); }
public static void PaintFlood(PaintedHillsMod mymod, Colorer colorer, int tile_x, int tile_y, Paints hue) { var peek = new Dictionary <int, ISet <int> >(); peek[tile_x] = new HashSet <int>(); peek[tile_x].Add(tile_y); do { foreach (int x in peek.Keys) { foreach (int y in peek[x]) { colorer.ColorTile(mymod, x, y); } } int[] peek_x = peek.Keys.ToArray(); foreach (int x in peek_x) { int[] peek_y = peek[x].ToArray(); foreach (int y in peek_y) { AreaPainter.PeekAdjacentClearTiles(colorer.HueMap, peek, x, y); peek[x].Remove(y); } if (peek[x].Count == 0) { peek.Remove(x); } } } while(peek.Count > 0); }
public static void updatePersonaCar_car(int personaId, int userId, string packet, MySqlConnection connection, out string outPacket, out bool isGoodResponse) { XmlDocument packetParsing = new XmlDocument(); packetParsing.LoadXml(packet); int carId = 0; var customCar = packetParsing.ChildNodes[0].ChildNodes[0]; carId = Convert.ToInt32(customCar.ChildNodes[2].InnerText); PersonaCar carOrigData = new PersonaCar(); bool personaHasCar = false; string sql = String.Format("SELECT PersonaCar.carId, PersonaCar.baseCar, PersonaCar.physicsProfileHash, PersonaCar.carClassHash, PersonaCar.rating, PersonaCar.resalePrice, PersonaCar.durability, PersonaCar.heat FROM PersonaCar LEFT JOIN Persona ON PersonaCar.personaId = Persona.personaId LEFT JOIN Users ON Persona.userId = Users.userId WHERE Users.userId = {0} AND Persona.personaId = {1} AND PersonaCar.carId = {2}", userId, personaId, carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) using (MySqlDataReader reader = command.ExecuteReader()) { if (reader.HasRows) { personaHasCar = true; reader.Read(); carOrigData.baseCar = Convert.ToInt32(reader["baseCar"]); carOrigData.physicsProfileHash = Convert.ToInt32(reader["physicsProfileHash"]); carOrigData.carClassHash = Convert.ToInt32(reader["carClassHash"]); carOrigData.rating = Convert.ToInt32(reader["rating"]); carOrigData.resalePrice = Convert.ToInt32(reader["resalePrice"]); carOrigData.durability = Convert.ToInt32(reader["durability"]); carOrigData.heat = Convert.ToInt32(reader["heat"]); } } List<Paints> paints = new List<Paints>(); List<PerformanceParts> performanceParts = new List<PerformanceParts>(); List<Skills> skills = new List<Skills>(); List<VisualParts> visualParts = new List<VisualParts>(); List<Vinyls> vinyls = new List<Vinyls>(); string car = ""; if (personaHasCar) { //Paints foreach (XmlNode node in customCar.ChildNodes[6]) { Paints temp = new Paints(); temp.group = Convert.ToInt32(node.ChildNodes[0].InnerText); temp.hue = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.sat = Convert.ToInt32(node.ChildNodes[2].InnerText); temp.slot = Convert.ToInt32(node.ChildNodes[3].InnerText); temp.var = Convert.ToInt32(node.ChildNodes[4].InnerText); paints.Add(temp); } //PerformanceParts int slotIndex = 0; foreach (XmlNode node in customCar.ChildNodes[7]) { PerformanceParts temp = new PerformanceParts(); temp.slot = slotIndex; temp.partHash = Convert.ToInt32(node.ChildNodes[0].InnerText); slotIndex++; performanceParts.Add(temp); } //Skills slotIndex = 0; foreach (XmlNode node in customCar.ChildNodes[12]) { Skills temp = new Skills(); temp.slot = slotIndex; temp.skillHash = Convert.ToInt32(node.ChildNodes[1].InnerText); slotIndex++; skills.Add(temp); } //Vinyls foreach (XmlNode node in customCar.ChildNodes[15]) { Vinyls temp = new Vinyls(); temp.layer = Convert.ToInt32(node.ChildNodes[5].InnerText); temp.vinylHash = Convert.ToInt32(node.ChildNodes[0].InnerText); temp.hue1 = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.hue2 = Convert.ToInt32(node.ChildNodes[2].InnerText); temp.hue3 = Convert.ToInt32(node.ChildNodes[3].InnerText); temp.hue4 = Convert.ToInt32(node.ChildNodes[4].InnerText); temp.mir = Convert.ToBoolean(node.ChildNodes[6].InnerText); temp.rot = Convert.ToInt32(node.ChildNodes[7].InnerText); temp.sat1 = Convert.ToInt32(node.ChildNodes[8].InnerText); temp.sat2 = Convert.ToInt32(node.ChildNodes[9].InnerText); temp.sat3 = Convert.ToInt32(node.ChildNodes[10].InnerText); temp.sat4 = Convert.ToInt32(node.ChildNodes[11].InnerText); temp.scaleX = Convert.ToInt32(node.ChildNodes[12].InnerText); temp.scaleY = Convert.ToInt32(node.ChildNodes[13].InnerText); temp.shear = Convert.ToInt32(node.ChildNodes[14].InnerText); temp.tranX = Convert.ToInt32(node.ChildNodes[15].InnerText); temp.tranY = Convert.ToInt32(node.ChildNodes[16].InnerText); temp.var1 = Convert.ToInt32(node.ChildNodes[17].InnerText); temp.var2 = Convert.ToInt32(node.ChildNodes[18].InnerText); temp.var3 = Convert.ToInt32(node.ChildNodes[19].InnerText); temp.var4 = Convert.ToInt32(node.ChildNodes[20].InnerText); vinyls.Add(temp); } //VisualParts foreach (XmlNode node in customCar.ChildNodes[16]) { VisualParts temp = new VisualParts(); temp.slot = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.visualPartHash = Convert.ToInt32(node.ChildNodes[0].InnerText); visualParts.Add(temp); } /////////////CheckingLogic /////////////Customization Save ///////////////Paints sql = String.Format("DELETE FROM PersonaCarPaints WHERE carId = {0}", carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = "INSERT INTO PersonaCarPaints (carId, sat, slot, var, hue, grp) VALUES "; bool isFirst = true; foreach (Paints paint in paints) { object[] data = new object[6]; data[0] = carId; data[1] = paint.sat; data[2] = paint.slot; data[3] = paint.var; data[4] = paint.hue; data[5] = paint.group; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2},{3},{4},{5})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////performanceParts sql = String.Format("DELETE FROM PersonaCarPerformanceParts WHERE carId = {0}", carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = "INSERT INTO PersonaCarPerformanceParts (carId, slot, partHash) VALUES "; isFirst = true; foreach (PerformanceParts performancePart in performanceParts) { object[] data = new object[3]; data[0] = carId; data[1] = performancePart.slot; data[2] = performancePart.partHash; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Skills sql = String.Format("DELETE FROM PersonaCarSkills WHERE carId = {0}", carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = "INSERT INTO PersonaCarSkills (carId, slot, skillHash) VALUES "; isFirst = true; foreach (Skills skill in skills) { object[] data = new object[3]; data[0] = carId; data[1] = skill.slot; data[2] = skill.skillHash; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Vinyls sql = String.Format("DELETE FROM PersonaCarVinyls WHERE carId = {0}", carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = "INSERT INTO PersonaCarVinyls (carId, layer, vinylHash, hue1, hue2, hue3, hue4, mir, rot, sat1, sat2, sat3, sat4, scaleX, scaleY, shear, tranX, tranY, var1, var2, var3, var4) VALUES "; isFirst = true; foreach (Vinyls vinyl in vinyls) { object[] data = new object[22]; data[0] = carId; data[1] = vinyl.layer; data[2] = vinyl.vinylHash; data[3] = vinyl.hue1; data[4] = vinyl.hue2; data[5] = vinyl.hue3; data[6] = vinyl.hue4; data[7] = (vinyl.mir ? 1 : 0); data[8] = vinyl.rot; data[9] = vinyl.sat1; data[10] = vinyl.sat2; data[11] = vinyl.sat3; data[12] = vinyl.sat4; data[13] = vinyl.scaleX; data[14] = vinyl.scaleY; data[15] = vinyl.shear; data[16] = vinyl.tranX; data[17] = vinyl.tranY; data[18] = vinyl.var1; data[19] = vinyl.var2; data[20] = vinyl.var3; data[21] = vinyl.var4; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Visual parts sql = String.Format("DELETE FROM PersonaCarVisualParts WHERE carId = {0}", carId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = "INSERT INTO PersonaCarVisualParts (carId, partHash, slotHash) VALUES "; isFirst = true; foreach (VisualParts visualPart in visualParts) { object[] data = new object[3]; data[0] = carId; data[1] = visualPart.visualPartHash; data[2] = visualPart.slot; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } string vinylTemp = ""; string visualPartsTemp = ""; string skillTemp = ""; string paintTemp = ""; string performanceTemp = ""; string carBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/car.xml"); string vinylBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/vinyl.xml"); string visualPartBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/visualpart.xml"); string skillBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/skill.xml"); string performanceBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/performance.xml"); string paintBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/paint.xml"); foreach (Paints paint in paints) { object[] paintData = new object[6]; paintData[0] = paint.group; paintData[1] = paint.hue; paintData[2] = paint.sat; paintData[3] = paint.slot; paintData[4] = paint.var; paintTemp = paintTemp + String.Format(paintBody, paintData); } foreach (PerformanceParts performancePart in performanceParts) { object[] performanceData = new object[1]; performanceData[0] = performancePart.partHash; performanceTemp = performanceTemp + String.Format(performanceBody, performanceData); } foreach (Skills skill in skills) { object[] skillData = new object[1]; skillData[0] = skill.skillHash; skillTemp = skillTemp + String.Format(skillBody, skillData); } foreach (Vinyls vinyl in vinyls) { object[] vinylData = new object[21]; vinylData[0] = vinyl.vinylHash; vinylData[1] = vinyl.hue1; vinylData[2] = vinyl.hue2; vinylData[3] = vinyl.hue3; vinylData[4] = vinyl.hue4; vinylData[5] = vinyl.layer; vinylData[6] = (vinyl.mir ? "true" : "false"); vinylData[7] = vinyl.rot; vinylData[8] = vinyl.sat1; vinylData[9] = vinyl.sat2; vinylData[10] = vinyl.sat3; vinylData[11] = vinyl.sat4; vinylData[12] = vinyl.scaleX; vinylData[13] = vinyl.scaleY; vinylData[14] = vinyl.shear; vinylData[15] = vinyl.tranX; vinylData[16] = vinyl.tranY; vinylData[17] = vinyl.var1; vinylData[18] = vinyl.var2; vinylData[19] = vinyl.var3; vinylData[20] = vinyl.var4; vinylTemp = vinylTemp + String.Format(vinylBody, vinylData); } foreach (VisualParts visualPart in visualParts) { object[] visualData = new object[2]; visualData[0] = visualPart.visualPartHash; visualData[1] = visualPart.slot; visualPartsTemp = visualPartsTemp + String.Format(visualPartBody, visualData); } object[] carData = new object[14]; carData[0] = carOrigData.baseCar; carData[1] = carOrigData.carClassHash; carData[2] = carId; //carData[3] = reader["motto"]; //carData[4] = reader["name"]; carData[5] = carOrigData.physicsProfileHash; carData[6] = carOrigData.rating; carData[7] = carOrigData.resalePrice; //carData[8] = reader["score"]; //carData[9] = reader["score"]; //carData[10] = reader["score"]; carData[11] = carOrigData.durability; carData[12] = carOrigData.heat; carData[13] = carId; carData[3] = paintTemp; carData[4] = performanceTemp; carData[8] = skillTemp; carData[9] = vinylTemp; carData[10] = visualPartsTemp; car = car + String.Format(carBody, carData); } //Result generation //string packetBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/commerce.xml"); outPacket = car; //File.WriteAllText("packet", outPacket); //outPacket = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/100/commerce.xml"); isGoodResponse = true; }
public static void buyCar(string packet, int personaId, int userId, MySqlConnection connection, out string outPacket, out bool isGoodResponse) { MySqlConnection connection2 = new MySqlConnection(MsSQL.connetionString); connection2.Open(); bool isYourPersona = false; string sql = String.Format("SELECT personaId FROM Persona WHERE userId = {0}", userId); using (MySqlCommand command = new MySqlCommand(sql, connection)) using (MySqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { if (Convert.ToInt32(reader["personaId"]) == personaId) { isYourPersona = true; break; } } } XmlDocument packetParsing = new XmlDocument(); packetParsing.LoadXml(packet); string productId = packetParsing.ChildNodes[0].ChildNodes[0].ChildNodes[0].ChildNodes[0].InnerText.Replace(":", ""); int carId = 0; string car = ""; //productId = "example"; if (File.Exists(Program.serverPrefix + "/Engine.svc/personas/car/baskets/" + productId + ".xml") && isYourPersona) { sql = String.Format("UPDATE Persona SET defaultCarIndex = carCount, carCount = carCount + 1 WHERE personaId = {0}", personaId); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } string basket = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/baskets/" + productId + ".xml").Replace(" i:nil=\"true\" ", ""); packetParsing.LoadXml(basket); var customCar = packetParsing.ChildNodes[0].ChildNodes[0]; PersonaCar carOrigData = new PersonaCar(); ; carOrigData.baseCar = Convert.ToInt32(customCar.ChildNodes[0].InnerText); carOrigData.physicsProfileHash = Convert.ToInt32(customCar.ChildNodes[8].InnerText); carOrigData.carClassHash = Convert.ToInt32(customCar.ChildNodes[1].InnerText); carOrigData.rating = Convert.ToInt32(customCar.ChildNodes[9].InnerText); carOrigData.resalePrice = Convert.ToInt32(customCar.ChildNodes[10].InnerText); carOrigData.durability = 100; carOrigData.heat = 1; List<Paints> paints = new List<Paints>(); List<PerformanceParts> performanceParts = new List<PerformanceParts>(); List<Skills> skills = new List<Skills>(); List<VisualParts> visualParts = new List<VisualParts>(); List<Vinyls> vinyls = new List<Vinyls>(); //Paints foreach (XmlNode node in customCar.ChildNodes[6]) { Paints temp = new Paints(); temp.group = Convert.ToInt32(node.ChildNodes[0].InnerText); temp.hue = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.sat = Convert.ToInt32(node.ChildNodes[2].InnerText); temp.slot = Convert.ToInt32(node.ChildNodes[3].InnerText); temp.var = Convert.ToInt32(node.ChildNodes[4].InnerText); paints.Add(temp); } //PerformanceParts int slotIndex = 0; foreach (XmlNode node in customCar.ChildNodes[7]) { PerformanceParts temp = new PerformanceParts(); temp.slot = slotIndex; temp.partHash = Convert.ToInt32(node.ChildNodes[0].InnerText); slotIndex++; performanceParts.Add(temp); } //Skills slotIndex = 0; foreach (XmlNode node in customCar.ChildNodes[12]) { Skills temp = new Skills(); temp.slot = slotIndex; temp.skillHash = Convert.ToInt32(node.ChildNodes[1].InnerText); slotIndex++; skills.Add(temp); } //Vinyls foreach (XmlNode node in customCar.ChildNodes[15]) { Vinyls temp = new Vinyls(); temp.layer = Convert.ToInt32(node.ChildNodes[5].InnerText); temp.vinylHash = Convert.ToInt32(node.ChildNodes[0].InnerText); temp.hue1 = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.hue2 = Convert.ToInt32(node.ChildNodes[2].InnerText); temp.hue3 = Convert.ToInt32(node.ChildNodes[3].InnerText); temp.hue4 = Convert.ToInt32(node.ChildNodes[4].InnerText); temp.mir = Convert.ToBoolean(node.ChildNodes[6].InnerText); temp.rot = Convert.ToInt32(node.ChildNodes[7].InnerText); temp.sat1 = Convert.ToInt32(node.ChildNodes[8].InnerText); temp.sat2 = Convert.ToInt32(node.ChildNodes[9].InnerText); temp.sat3 = Convert.ToInt32(node.ChildNodes[10].InnerText); temp.sat4 = Convert.ToInt32(node.ChildNodes[11].InnerText); temp.scaleX = Convert.ToInt32(node.ChildNodes[12].InnerText); temp.scaleY = Convert.ToInt32(node.ChildNodes[13].InnerText); temp.shear = Convert.ToInt32(node.ChildNodes[14].InnerText); temp.tranX = Convert.ToInt32(node.ChildNodes[15].InnerText); temp.tranY = Convert.ToInt32(node.ChildNodes[16].InnerText); temp.var1 = Convert.ToInt32(node.ChildNodes[17].InnerText); temp.var2 = Convert.ToInt32(node.ChildNodes[18].InnerText); temp.var3 = Convert.ToInt32(node.ChildNodes[19].InnerText); temp.var4 = Convert.ToInt32(node.ChildNodes[20].InnerText); vinyls.Add(temp); } //VisualParts foreach (XmlNode node in customCar.ChildNodes[16]) { VisualParts temp = new VisualParts(); temp.slot = Convert.ToInt32(node.ChildNodes[1].InnerText); temp.visualPartHash = Convert.ToInt32(node.ChildNodes[0].InnerText); visualParts.Add(temp); } sql = ""; { object[] carData = new object[8]; carData[0] = personaId; carData[1] = carOrigData.baseCar; carData[2] = carOrigData.carClassHash; carData[3] = carOrigData.physicsProfileHash; carData[4] = carOrigData.rating; carData[5] = carOrigData.resalePrice; carData[6] = carOrigData.durability; carData[7] = carOrigData.heat; sql = string.Format("INSERT INTO PersonaCar (personaId, baseCar, carClassHash, physicsProfileHash, rating, resalePrice, durability, heat) VALUES ({0},{1},{2},{3},{4},{5},{6},{7})", carData); using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } sql = string.Format("SELECT carId FROM PersonaCar WHERE personaId = {0} ORDER BY carId DESC LIMIT 1", personaId); using (MySqlCommand command = new MySqlCommand(sql, connection)) using (MySqlDataReader reader = command.ExecuteReader()) { reader.Read(); carId = Convert.ToInt32(reader["carId"]); } } ///////////////Paints sql = "INSERT INTO PersonaCarPaints (carId, sat, slot, var, hue, grp) VALUES "; bool isFirst = true; foreach (Paints paint in paints) { object[] data = new object[6]; data[0] = carId; data[1] = paint.sat; data[2] = paint.slot; data[3] = paint.var; data[4] = paint.hue; data[5] = paint.group; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2},{3},{4},{5})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////performanceParts sql = "INSERT INTO PersonaCarPerformanceParts (carId, slot, partHash) VALUES "; isFirst = true; foreach (PerformanceParts performancePart in performanceParts) { object[] data = new object[3]; data[0] = carId; data[1] = performancePart.slot; data[2] = performancePart.partHash; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Skills sql = "INSERT INTO PersonaCarSkills (carId, slot, skillHash) VALUES "; isFirst = true; foreach (Skills skill in skills) { object[] data = new object[3]; data[0] = carId; data[1] = skill.slot; data[2] = skill.skillHash; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Vinyls sql = "INSERT INTO PersonaCarVinyls (carId, layer, vinylHash, hue1, hue2, hue3, hue4, mir, rot, sat1, sat2, sat3, sat4, scaleX, scaleY, shear, tranX, tranY, var1, var2, var3, var4) VALUES "; isFirst = true; foreach (Vinyls vinyl in vinyls) { object[] data = new object[22]; data[0] = carId; data[1] = vinyl.layer; data[2] = vinyl.vinylHash; data[3] = vinyl.hue1; data[4] = vinyl.hue2; data[5] = vinyl.hue3; data[6] = vinyl.hue4; data[7] = (vinyl.mir ? 1 : 0); data[8] = vinyl.rot; data[9] = vinyl.sat1; data[10] = vinyl.sat2; data[11] = vinyl.sat3; data[12] = vinyl.sat4; data[13] = vinyl.scaleX; data[14] = vinyl.scaleY; data[15] = vinyl.shear; data[16] = vinyl.tranX; data[17] = vinyl.tranY; data[18] = vinyl.var1; data[19] = vinyl.var2; data[20] = vinyl.var3; data[21] = vinyl.var4; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18},{19},{20},{21})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } ///////////////Visual parts sql = "INSERT INTO PersonaCarVisualParts (carId, partHash, slotHash) VALUES "; isFirst = true; foreach (VisualParts visualPart in visualParts) { object[] data = new object[3]; data[0] = carId; data[1] = visualPart.visualPartHash; data[2] = visualPart.slot; if (!isFirst) sql = sql + ", "; sql = sql + String.Format("({0},{1},{2})", data); isFirst = false; } if (!isFirst) { using (MySqlCommand command = new MySqlCommand(sql, connection)) { command.ExecuteNonQuery(); } } string vinylTemp = ""; string visualPartsTemp = ""; string skillTemp = ""; string paintTemp = ""; string performanceTemp = ""; string carBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/car.xml"); string vinylBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/vinyl.xml"); string visualPartBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/visualpart.xml"); string skillBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/skill.xml"); string performanceBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/performance.xml"); string paintBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/paint.xml"); foreach (Paints paint in paints) { object[] paintData = new object[6]; paintData[0] = paint.group; paintData[1] = paint.hue; paintData[2] = paint.sat; paintData[3] = paint.slot; paintData[4] = paint.var; paintTemp = paintTemp + String.Format(paintBody, paintData); } foreach (PerformanceParts performancePart in performanceParts) { object[] performanceData = new object[1]; performanceData[0] = performancePart.partHash; performanceTemp = performanceTemp + String.Format(performanceBody, performanceData); } foreach (Skills skill in skills) { object[] skillData = new object[1]; skillData[0] = skill.skillHash; skillTemp = skillTemp + String.Format(skillBody, skillData); } foreach (Vinyls vinyl in vinyls) { object[] vinylData = new object[21]; vinylData[0] = vinyl.vinylHash; vinylData[1] = vinyl.hue1; vinylData[2] = vinyl.hue2; vinylData[3] = vinyl.hue3; vinylData[4] = vinyl.hue4; vinylData[5] = vinyl.layer; vinylData[6] = (vinyl.mir ? "true" : "false"); vinylData[7] = vinyl.rot; vinylData[8] = vinyl.sat1; vinylData[9] = vinyl.sat2; vinylData[10] = vinyl.sat3; vinylData[11] = vinyl.sat4; vinylData[12] = vinyl.scaleX; vinylData[13] = vinyl.scaleY; vinylData[14] = vinyl.shear; vinylData[15] = vinyl.tranX; vinylData[16] = vinyl.tranY; vinylData[17] = vinyl.var1; vinylData[18] = vinyl.var2; vinylData[19] = vinyl.var3; vinylData[20] = vinyl.var4; vinylTemp = vinylTemp + String.Format(vinylBody, vinylData); } foreach (VisualParts visualPart in visualParts) { object[] visualData = new object[2]; visualData[0] = visualPart.visualPartHash; visualData[1] = visualPart.slot; visualPartsTemp = visualPartsTemp + String.Format(visualPartBody, visualData); } { object[] carData = new object[14]; carData[0] = carOrigData.baseCar; carData[1] = carOrigData.carClassHash; carData[2] = carId; //carData[3] = reader["motto"]; //carData[4] = reader["name"]; carData[5] = carOrigData.physicsProfileHash; carData[6] = carOrigData.rating; carData[7] = carOrigData.resalePrice; //carData[8] = reader["score"]; //carData[9] = reader["score"]; //carData[10] = reader["score"]; carData[11] = carOrigData.durability; carData[12] = carOrigData.heat; carData[13] = carId; carData[3] = paintTemp; carData[4] = performanceTemp; carData[8] = skillTemp; carData[9] = vinylTemp; carData[10] = visualPartsTemp; car = car + String.Format(carBody, carData); } } //Result generation string packetBody = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/car/baskets.xml"); outPacket = string.Format(packetBody, car); //File.WriteAllText("packet", outPacket); //outPacket = File.ReadAllText(Program.serverPrefix + "/Engine.svc/personas/100/commerce.xml"); isGoodResponse = true; connection2.Close(); }
public void SetHue(Paints hue) { this.Hue = hue; }