public Collection <T> Select() { RouteFactory routeFactory = new RouteFactory(); RouteTable <Route> instanceRoute = (RouteTable <Route>)routeFactory.GetRouteInstance(); DriverFactory driverFactory = new DriverFactory(); DriverTable <Driver> instanceDriver = (DriverTable <Driver>)driverFactory.GetDriverInstance(); VehicleFactory vehicleFactory = new VehicleFactory(); VehicleTable <Vehicle> instanceVehicle = (VehicleTable <Vehicle>)vehicleFactory.GetVehicleInstance(); XDocument xDoc = XDocument.Load(Configuration.XMLFILEPATH); Collection <T> timetables = new Collection <T>(); List <XElement> elements = xDoc.Descendants("Timetables").Descendants("Timetable").ToList(); foreach (var element in elements) { Timetable timetable = new Timetable(); timetable.id = int.Parse(element.Attribute("id").Value); timetable.name = element.Attribute("name").Value; timetable.departure = DateTime.Parse(element.Attribute("departure").Value); timetable.arrival = DateTime.Parse(element.Attribute("arrival").Value); timetable.route = instanceRoute.Select(int.Parse(element.Attribute("routeId").Value)); timetable.driver = instanceDriver.Select(int.Parse(element.Attribute("driverId").Value)); timetable.vehicle = instanceVehicle.Select(int.Parse(element.Attribute("vehicleId").Value)); timetables.Add((T)timetable); } return(timetables); }
public static Vehicle CreateEntry(ulong CID, int carSort, int color = 0, int grade = 1) { using (var rc = Database.GetContext()) { try { VehicleTable.GetVehicleUpgrade(carSort, grade); } catch (Exception ex) { Log.WriteError($"Failed to get vehicle {carSort} grade {grade} for Vehicle.CreateEntry: {ex.Message}"); return(null); } var lastVehicle = rc.Vehicles.Where(i => i.CID == (long)CID).OrderByDescending(i => i.CarID).FirstOrDefault(); var newVehicle = new Models.Vehicle { CID = (long)CID, CarID = (lastVehicle?.CarID ?? 0) + 1, CarType = carSort, Grade = grade, AuctionCount = 0, Color = color }; rc.Vehicles.Add(newVehicle); rc.SaveChanges(); return(new Vehicle(newVehicle.CarType, newVehicle)); } }
public static void Initialize(Config config) { QuestTable.Load("res/QuestClient.json"); ItemTable.Load("res/ItemClient.json", "res/UseItemClient.json"); VehicleTable.Load("res/VehicleUpgrade.json", "res/VehicleList.json"); AssistTable.Load("res/AssistClient.json"); Log.WriteLine("Loaded resources."); }
static void Main(string[] args) { Database db = new Database(); db.Connect(); Vehicle u = new Vehicle(); u.Id = 14; // u.Manufacturer = "Stadler"; //u.Model = "Tango NF2 kopie"; Console.WriteLine("Seznam vsech statu ve DB"); foreach (Country c in CountryTable.Select()) { Console.WriteLine(c.Id + " " + c.Name + " " + c.Continent); } Console.WriteLine("----"); Console.WriteLine("Seznam vsech mest ve DB"); foreach (City c in CityTable.Select()) { Console.WriteLine(c.Id + " " + c.Name + " " + c.Region + " STAT: " + c.Country.Name); } Console.WriteLine("----"); Console.WriteLine("Seznam vsech vozidel ve DB"); foreach (Vehicle v in VehicleTable.Select()) { Console.WriteLine(v.Id + " Znacka:" + v.vehicleModel.Manufacturer + " Model:" + v.vehicleModel.Model + " Podtyp:" + v.Podtyp + " City:" + v.city.Name + " Depo:" + v.depot.Name); } Console.WriteLine("Seznam vsech company ve DB"); foreach (Company c in CompanyTable.Select()) { Console.WriteLine(c.Id + " Nazev:" + c.Name); } //VehicleTable.Insert(u, db); /* * int count1 = VehicleTable.Select(db).Count; * int dltCount = VehicleTable.Delete(7, db); * int count2 = VehicleTable.Select(db).Count; * * Console.WriteLine("#C: " + count1); * Console.WriteLine("#D: " + dltCount); * Console.WriteLine("#C: " + count2); */ db.Close(); Console.ReadKey(); }
private Vehicle(int id, Models.Vehicle dbVehicle = null, int grade = 1) { int lookupId = id; int lookupGrade = grade; if (dbVehicle != null) { AuctionCount = (uint)dbVehicle.AuctionCount; Color = (uint)dbVehicle.Color; CarID = dbVehicle.CarID; CarType = (uint)dbVehicle.CarType; Grade = (uint)dbVehicle.Grade; Mitron = dbVehicle.Mitron; Kms = dbVehicle.Kms; SlotType = 0; lookupId = dbVehicle.CarType; lookupGrade = dbVehicle.Grade; } VehicleUpgradeEntry = VehicleTable.GetVehicleUpgrade(lookupId, lookupGrade); VehicleListEntry = VehicleTable.Vehicles[lookupId]; }
public static BaseTable ReadXBin(BinaryReader reader, ulong hash) { BaseTable XBinData = null; switch (hash) { case 0x5E42EF29E8A3E1D3: // StringTable XBinData = new StringTable(); XBinData.ReadFromFile(reader); break; case 0xA869F8A3AC7656E1: // M3 case 0xA869F8A3ED0CDAFC: // M1: DE XBinData = new VehicleTable(); // VehicleTable XBinData.ReadFromFile(reader); break; case 0x3759788EC437536C: // CarGearboxTable XBinData = new CarGearBoxesTable(); XBinData.ReadFromFile(reader); break; case 0xF5D56763013A2B0A: // CarInteriorColorsTable XBinData = new CarInteriorColorsTable(); XBinData.ReadFromFile(reader); break; case 0x44FA070D73C43CBD: // CarTrafficTuningTable for M1:DE case 0x44FA070D55388F65: // CarTrafficTuningTable for M3 XBinData = new CarTrafficTuningTable(); XBinData.ReadFromFile(reader); break; case 0x09B5140FA382AF8F: // CarTuningModificatorsTable XBinData = new CarTuningModificatorsTable(); XBinData.ReadFromFile(reader); break; case 0x2793BB7847F84081: // GameMeshBindingTable XBinData = new GameMeshBindingTable(); XBinData.ReadFromFile(reader); break; case 0x493DEA76C9A390F0: // SlotTable XBinData = new SlotTable(); XBinData.ReadFromFile(reader); break; case 0xB77D0A522C8E12A3: // MissionsTable XBinData = new MissionsTable(); XBinData.ReadFromFile(reader); break; case 0x3990790678078A1C: // GenericSpeechSituations XBinData = new GenericSpeechSituationsTable(); XBinData.ReadFromFile(reader); break; case 0xEF795C84CA85E193: // CharacterCinematicsTable XBinData = new CharacterCinematicsTable(); XBinData.ReadFromFile(reader); break; case 0x5D69A41C1FBD6565: // TableContainer (Mafia I: DE) case 0x5D69A41CDC82936C: // TableContainer (Mafia III) XBinData = new TableContainer(); XBinData.ReadFromFile(reader); break; case 0x06F579D51CE129A5: // GfxEnvContainer (Mafia III) case 0x06F579D595DA02AD: // GfxEnvContainer (Mafia I: DE) XBinData = new GfxEnvContainer(); XBinData.ReadFromFile(reader); break; case 0xAD5CF0F7FC3717F0: // GameGuiContainer (Mafia I: DE) case 0xAD5CF0F764C39370: // GameGuiContainer (Mafia III) XBinData = new GameGuiContainer(); XBinData.ReadFromFile(reader); break; case 0x0E2FBBCF46754F66: // CarTuningPackAvailabilityTable (Mafia I: DE and Mafia III) XBinData = new CarTuningPackAvailabilityTable(); XBinData.ReadFromFile(reader); break; //case 0xDC327944DD83627E: // TODO: Fix for M1: DE. look for 0xA for PaintCombination array entries. // XBinData = new PaintCombinationsTable(); // PaintCombinations // XBinData.ReadFromFile(reader); // break; default: throw new Exception("We lack the support for this type."); break; } Debug.Assert(XBinData != null, "XBinData is null, but we should have actually read this."); return(XBinData); }