예제 #1
0
파일: Car.cs 프로젝트: znsoft/AiCup
 public Car(long id, double mass, double x, double y, double speedX, double speedY, double angle,
         double angularSpeed, double width, double height, long playerId, int teammateIndex, bool isTeammate,
         CarType type, int projectileCount, int nitroChargeCount, int oilCanisterCount,
         int remainingProjectileCooldownTicks, int remainingNitroCooldownTicks, int remainingOilCooldownTicks,
         int remainingNitroTicks, int remainingOiledTicks, double durability, double enginePower,
         double wheelTurn, int nextWaypointIndex, int nextWaypointX, int nextWaypointY, bool isFinishedTrack)
     : base(id, mass, x, y, speedX, speedY, angle, angularSpeed, width, height)
 {
     this.playerId = playerId;
     this.teammateIndex = teammateIndex;
     this.isTeammate = isTeammate;
     this.type = type;
     this.projectileCount = projectileCount;
     this.nitroChargeCount = nitroChargeCount;
     this.oilCanisterCount = oilCanisterCount;
     this.remainingProjectileCooldownTicks = remainingProjectileCooldownTicks;
     this.remainingNitroCooldownTicks = remainingNitroCooldownTicks;
     this.remainingOilCooldownTicks = remainingOilCooldownTicks;
     this.remainingNitroTicks = remainingNitroTicks;
     this.remainingOiledTicks = remainingOiledTicks;
     this.durability = durability;
     this.enginePower = enginePower;
     this.wheelTurn = wheelTurn;
     this.nextWaypointIndex = nextWaypointIndex;
     this.nextWaypointX = nextWaypointX;
     this.nextWaypointY = nextWaypointY;
     this.isFinishedTrack = isFinishedTrack;
 }
예제 #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Car" /> class.
        /// </summary>
        /// <param name="transform">The transform.</param>
        /// <param name="id">The identifier.</param>
        /// <param name="carType">Type of the car.</param>
        public Car(Transform transform, int id, CarType carType)
            : base(transform, id, carType.ToString())
        {
            this.Type = carType;

            ServerHandler.SendMessage(this.ToJSon());
        }
예제 #3
0
 public Route(string name, CarType type, string directionName)
 {
     Name = name;
     DirectionName = directionName;
     Type = type;
     Guid= Guid.NewGuid();
     Waypoints = new List<Waypoint>();
     IsFilled = false;
 }
예제 #4
0
        public CarDetailsRow(string name, DateTime start, int duration, int interArrivalTime, CarType type)
        {
            CarName = name;
            TripStartTime = start;
            TripDuration = duration;
            InterArrivalTime = interArrivalTime;

            CarType = type;
            TripStatus = "Safe Travel";
        }
예제 #5
0
 /// <summary>
 /// Method for getting info about all trains by route from fromPlace to toPlace on date
 /// </summary>
 /// <param name="fromPlace">Place - start point of route</param>
 /// <param name="toPlace">Place - end point of route</param>
 /// <param name="date">Date of route</param>
 /// <returns></returns>
 public static List<Train> GetAllTrainsByRouteInfo(string fromPlace, string toPlace, string date, bool isReserve, CarType reservePriority)
 {
     List<Train> trains = new List<Train>();
     string[] trainsNumbers = Parser.GetTrainsNumbers(fromPlace, toPlace, date);
     for (int i = 0; i < trainsNumbers.Length; i++)
     {
         trains.Add(Parser.GetAllTrainInfo(fromPlace, toPlace, date, trainsNumbers[i], i, isReserve, reservePriority));
     }
     return trains;
 }
예제 #6
0
 public Car(int number, int highCoupeCount, int lowCoupeCount, int highSideCount, int lowSideCount, double price, CarType type)
 {
     Number = number;
     Type = type;
     HighCoupeCount = highCoupeCount;
     LowCoupeCount = lowCoupeCount;
     HighSideCount = highSideCount;
     LowSideCount = lowSideCount;
     Price = price;
     PlacesCount = highCoupeCount + lowCoupeCount + highSideCount + lowSideCount;
 }
예제 #7
0
        public Car AddCarToCity(CarType carType, int xPos, int yPos)
        {
            Car car = _carFactory.Create(carType, xPos, yPos, this, null);

            CityPositions[yPos * YMax + xPos].Car = car;

            Car = car;
            CarType = carType;

            return car;
        }
 public Car MakeCar(CarType carType)
 {
     switch (carType)
     {
         case CarType.Family:
             return new MercFamilyCar();
         case CarType.Sport:
             return new MercSportsCar();
         default:
             return new Car();
     }
 }
        public void PurchaseCar(CarType type)
        {
            var tires = new TirePackage {Size = 16, Weight = 40};

            Engine engine = type == CarType.Basic
                            ? new Engine {Cylinders = 4, Horsepower = 120}
                            : new Engine {Cylinders = 8, Horsepower = 200};

            var car = new PurchasedCar {CustomerName = "Me", Engine = engine, Tires = tires};

            var context = new Entities();
            context.AddToPurchasedCars(car);
            context.SaveChanges();
        }
예제 #10
0
 public static ICar GetCar(CarType carType)
 {
     switch (carType)
     {
         case CarType.Coupe:
             return new Coupe();
         case CarType.Limousine:
             return new Limousine();
         case CarType.SuV:
             return new SuV();
         default:
             return null;
     }
 }
예제 #11
0
        public Car GetCar(CarType type)
        {
            if (type == CarType.Luxury)
            {
                return new LuxuryCar(CarType.Luxury);
            }
            if (type==CarType.Sedan)
            {
                return new SedanCar(CarType.Sedan);
            }
            if (type==CarType.Small)
            {
                return new SmallCar(CarType.Small);
            }

            return null;
        }
예제 #12
0
        public Car PostCar(string name, int horsePower, float fuelConsumption, int kilometers, decimal price, string constructionYear, string image, CarType type)
        {
            var cartoAdd = new Car
            {
                Name = name,
                HoursePower = horsePower,
                FuelConsumption = fuelConsumption,
                Kilometers = kilometers,
                Price = price,
                ConstructionYear = constructionYear,
                Brand = (CarType)type,
                Image = image
            };

            this.cars.Add(cartoAdd);
            this.cars.SaveChanges();

            return cartoAdd;
        }
예제 #13
0
        public Car Create(CarType type, int xPos, int yPos, City city, Passenger passenger)
        {
            Car car;

            switch (type)
            {
                case CarType.Sedan:
                    car = new Sedan(xPos, yPos, city, passenger);
                    break;
                case CarType.RaceCar:
                    car = new RaceCar(xPos, yPos, city, passenger);
                    break;
                case CarType.Motorcycle:
                    car = new Motorcycle(xPos, yPos, city, passenger);
                    break;
                default:
                    throw new ArgumentOutOfRangeException(nameof(type), type, null);
            }

            return car;
        }
예제 #14
0
        public CarType GetCarTypeByModeName(string name)
        {
            CarType cartype = EFDbContext.Models.Where(m => m.Name == name).FirstOrDefault().CarType;

            return(cartype);
        }
 public ICar GetCar(CarType carType)
 {
     switch (carType)
             { case CarType.Ford: return new Mustang(); }
 }
예제 #16
0
 public override string ToString()
 {
     return($"CarModel - {CarType.ToString()} located in {Location.ToString()}");
 }
예제 #17
0
 public Tesla(CarType carType) : base(carType)
 {
 }
예제 #18
0
 /// <summary>
 /// Method for getting all information about train
 /// </summary>
 /// <param name="fromPlace">Place - start point of route</param>
 /// <param name="toPlace">Place - end point of route</param>
 /// <param name="date">Date of route</param>
 /// <param name="trainNumber">Train number on route</param>
 /// <param name="trainIndexInList">Index of train in list that generates in runtime fro dprc server. Helper field.</param>
 /// <returns></returns>
 public static Train GetAllTrainInfo(string fromPlace, string toPlace, string date, string trainNumber, int trainIndexInList, bool isReserve, CarType reservePriority)
 {
     return Parser.GetAllTrainInfo(fromPlace, toPlace, date, trainNumber, trainIndexInList, isReserve, reservePriority);
 }
예제 #19
0
 public LuxuryCar(CarType type)
     : base(CarType.Luxury)
 {
     Construct();
 }
예제 #20
0
        /// <summary>
        /// Creates a car with the provided parameters.
        /// <br>Returns: The created car's ID as <b>string</b></br>
        /// </summary>
        /// <param name="modelName"></param>
        /// <param name="licensePlate"></param>
        /// <param name="registrationDate"></param>
        /// <param name="fuelType"></param>
        /// <param name="hasTowbar"></param>
        /// <param name="carType"></param>
        /// <param name="lengthDriven"></param>
        /// <returns></returns>
        public string CreateAndWriteCar(string modelName, string licensePlate, DateTime registrationDate, Fuel fuelType, bool hasTowbar, CarType carType, double lengthDriven)
        {
            var car = new Car()
            {
                ModelName        = modelName,
                LicensePlate     = SetLicensePlate(licensePlate),
                RegistrationDate = registrationDate,
                FuelType         = fuelType,
                HasTowbar        = hasTowbar,
                CarType          = carType,
                Odometer         = lengthDriven
            };

            db.Cars.Add(car);
            _dbCar.SaveList(db.Cars);

            return(car.ID);
        }
예제 #21
0
파일: Price.cs 프로젝트: Sp1n89/AutoDok
 public Price(CarType carType, PriceType priceType, decimal value)
 {
     CarType = carType;
     PriceType = priceType;
     Value = value;
 }
예제 #22
0
 public AutoSystem(CarType type)
 {
     this._type = type;
 }
예제 #23
0
    /// <summary>
    /// returns a data package appropriate for the carType
    /// </summary>
    /// <param name="carType"></param>
    /// <returns></returns>
    private CarData GetCarData(CarType carType)
    {
        CarData data = new CarData();

        switch (carType)
        {
        case CarType.Normal:
            data.cruiseAltitude         = 3.0f;
            data.verticalSpeed          = 0.6f;
            data.horizontalSpeed        = 0.5f;
            data.hoverDelay             = 1.0f;
            data.isSiren                = true;
            data.decelerationHorizontal = decelerationHorizontal;
            data.decelerationVertical   = decelerationVertical;
            break;

        case CarType.Police:
            data.cruiseAltitude         = 2.0f;
            data.verticalSpeed          = 0.5f;
            data.horizontalSpeed        = 0.4f;
            data.hoverDelay             = 0.75f;
            data.isSiren                = true;
            data.decelerationHorizontal = decelerationHorizontal;
            data.decelerationVertical   = decelerationVertical;
            break;

        case CarType.Bus:
            data.cruiseAltitude         = 2.5f;
            data.verticalSpeed          = 0.75f;
            data.horizontalSpeed        = 0.75f;
            data.hoverDelay             = 1.0f;
            data.isSiren                = true;
            data.decelerationHorizontal = decelerationHorizontal;
            data.decelerationVertical   = decelerationVertical;
            break;

        case CarType.Rogue:
            data.cruiseAltitude         = 1.5f;
            data.verticalSpeed          = 0.3f;
            data.horizontalSpeed        = 0.3f;
            data.hoverDelay             = 0.75f;
            data.isSiren                = false;
            data.decelerationHorizontal = decelerationHorizontal * 1.5f;
            data.decelerationVertical   = decelerationVertical * 3.0f;
            break;

        case CarType.Surveil:
            data.cruiseAltitude  = 2.25f;
            data.verticalSpeed   = 0.6f;
            data.horizontalSpeed = 0.5f;
            data.hoverDelay      = 1.0f;
            data.isSiren         = true;
            //specific to surveillance, ignore for the rest
            data.surveilAltitude        = surveilAltitude;
            data.searchlightLimit       = searchlightLimit;
            data.searchlightFactor      = searchlightFactor;
            data.searchlightRandom      = searchlightRandom;
            data.searchlightSpeed       = searchlightSpeed;
            data.decelerationHorizontal = decelerationHorizontal;
            data.decelerationVertical   = decelerationVertical;
            break;

        default:
            Debug.LogWarningFormat("Unrecognised carType \"{0}\"", carType);
            //provide default data
            data.cruiseAltitude         = 3.0f;
            data.verticalSpeed          = 0.5f;
            data.horizontalSpeed        = 0.5f;
            data.hoverDelay             = 1.0f;
            data.decelerationHorizontal = decelerationHorizontal;
            data.decelerationVertical   = decelerationVertical;
            break;
        }
        //globals
        data.sirenFlashInterval     = sirenFlashInterval;
        data.decelerationHorizontal = decelerationHorizontal;
        data.decelerationVertical   = decelerationVertical;
        data.speedLimit             = speedLimit;
        data.rotationSpeed          = rotationSpeed;
        data.scaleDownTime          = scaleDownTime;
        return(data);
    }
예제 #24
0
        public double CalculateCost(DailyRoute dailyRoute, int startStationId, int destinationStationId, CarType carType)
        {
            double cost                    = 0;
            var    allRouteStations        = dailyRoute.Route.RouteStations.ToList();
            var    startRouteStation       = allRouteStations.First(x => x.StationId == startStationId);
            var    destinationRouteStation = allRouteStations.First(x => x.StationId == destinationStationId);
            var    routeStations           = allRouteStations
                                             .Where(x => x.StationOrder >= startRouteStation.StationOrder &&
                                                    x.StationOrder <= destinationRouteStation.StationOrder).ToList();

            for (var i = 0; i < routeStations.Count - 1; i++)
            {
                var firstStationId  = routeStations[i].StationId;
                var secondStationId = routeStations[i + 1].StationId;
                var distance        = context.Distances.FirstOrDefault(x => x.StartStationId == firstStationId && x.DestinationStationId == secondStationId);
                if (distance == null)
                {
                    cost += 1 * carType.CostRate;
                }
                else
                {
                    cost += Math.Ceiling(distance.DistanceValue * carType.CostRate);
                }
            }

            return(cost);
        }
예제 #25
0
        public double CalculateCost(int dailyRouteId, int startStationId, int destinationStationId, CarType carType)
        {
            var dailyRoute = context.DailyRoutes.Find(dailyRouteId);

            return(CalculateCost(dailyRoute, startStationId, destinationStationId, carType));
        }
예제 #26
0
 public Car(CarType carType, Location location)
 {
     CarType  = carType;
     Location = location;
 }
예제 #27
0
 public static double getEnginePower(CarType carType, AxisDirection direction)
 {
     if (carType == CarType.Buggy) {
         if (direction == AxisDirection.up) {
             return buggyEngineForwardPower;
         } else {
             return buggyEngineRearPower;
         }
     } else {
         if (direction == AxisDirection.up) {
             return jeepEngineForwardPower;
         } else {
             return jeepEngineForwardPower;
         }
     }
 }
예제 #28
0
    void Spawn()
    {
        GameObject prefab;

        dir = Directions.NONE;
        CarSpawn carSpawn = GetCar();
        CarType  ct       = carSpawn.type;

        if (hasQueue)
        {
            prefab   = queuePrefab;
            dir      = queueDirection;
            hasQueue = false;
            ct       = queueType;
        }
        else
        {
            prefab = carSpawn.prefab;

            if (nextDir == Directions.NONE)
            {
                int pos = Random.Range(0, 4);
                dir     = (Directions)pos;
                nextDir = dir;
            }
            else
            {
                dir = nextDir;
                int pos = Random.Range(0, 4);
                nextDir = (Directions)pos;
            }
        }

        Transform spawner = GetSpawner(dir);
        Vector3   carDir  = GetDirection(dir);

        Car car = null;

        if (usesPool)
        {
            car = pool.GetCar(ct);
        }
        else
        {
            GameObject carGo = GameObject.Instantiate(prefab, spawner.transform.position, Quaternion.identity);
            car = carGo.GetComponent <Car>();
        }

        car.Init();
        car.GetComponent <Rigidbody>().angularVelocity = Vector3.zero;
        car.GetComponent <Rigidbody>().velocity        = Vector3.zero;
        car.transform.eulerAngles = Vector3.zero;

        car.transform.position = spawner.transform.position;
        car.SetDirection(carDir, dir);
        car.spawner = this;

        Color c = possibleColors[Random.Range(0, possibleColors.Count)];

        car.SetColor(c);

        currentCars.Add(car.gameObject);

        CalculateFrequency();

        Invoke("Spawn", frequency);
    }
예제 #29
0
파일: Car.cs 프로젝트: didimitrov/Algo
 protected Car(CarType type)
 {
     this.Type = type;
        ArrangeParts();
 }
예제 #30
0
파일: Car.cs 프로젝트: Just3F/GoGoGo
 public Car(Vector2 start, CarType type, int speed = 1)
 {
     startPosition = start;
     carType = type;
     carSpeed = speed;
 }
예제 #31
0
 public static double getAcceleration(CarType type, double enginePower)
 {
     return getEnginePower(type, ((enginePower > 0)?AxisDirection.up:AxisDirection.down)) / getMass(type) * enginePower;
 }
예제 #32
0
 public Car(CarType carType) //카타입 새로 지정
 {
     this.Style = carType;
 }
예제 #33
0
 public Car(CarType type, int horsePower)
 {
     Type = type;
     HorsePower = horsePower;
 }
예제 #34
0
 public Car(CarType type, CarColor color)
 {
     Type  = type;
     Color = color;
 }
예제 #35
0
 public IEnumerable<Car> GetByType(CarType carType)
 {
     return Database.Data.CarData.FindAll(c => c.CarType == carType);
 }   
예제 #36
0
 public FinalPriceModel(CarType carType, Setting settings)
 {
     _carType  = carType;
     _settings = settings;
 }
예제 #37
0
        // public Benz(CarType carType)
        // {
        //     this.Style = carType;
        // }

        public Benz(CarType carType) : base(carType)
        {
        }
예제 #38
0
 public Car(CarType model, Location location)
 {
     this.CarType  = model;
     this.Location = location;
 }
예제 #39
0
 public Future(CarType carType) : base(carType)
 {
 }
예제 #40
0
 public override string ToString()
 {
     return("CarModel - " + CarType.ToString() + " Located in " + Location.ToString());
 }
예제 #41
0
파일: Car.cs 프로젝트: bmoglu/car-game
 public Car(int id, CarType type)
 {
     ID     = id;
     Type   = type;
     Trails = new List <CarTrail>();
 }
        public void BitmapConstructorEx(String filename)
        {
            int width = 500, height = 425;

            int[,] amn = new int[20, 14];
            //bitmap
            //Console.WriteLine(this.displayState.carStates[0].position);
            Bitmap   bmp   = new Bitmap(width, height);
            Graphics graph = Graphics.FromImage(bmp);
            SymbRep  sr    = new SymbRep();

            sr.SetState(this.displayState);
            //scroeboard
            Image scroeboard = Image.FromFile("./Pics/Environment/scoreboard.png");

            graph.DrawImage(scroeboard, 0, 0, scoreBoardlWidth, scoreBoardHeight);
            //draw title
            // Create font and brush.
            Font       drawFont  = new Font("Arial", 16);
            SolidBrush drawBrush = new SolidBrush(Color.Blue);
            // Create point for upper-left corner of drawing.
            PointF drawPoint = new PointF(0.0F, 0.0F);

            //street
            Image street = Image.FromFile("./Pics/Environment/street.png");

            //street's width is same as side walk
            graph.DrawImage(street, 18, 150, sidewalklWidth, 250);

            //water
            Image water = Image.FromFile("./Pics/Environment/water.png");

            //30 = 0+scroeboard.height
            //130 = topsidewalk.y (160) - 30 (which is scoreboard height)
            graph.DrawImage(water, 18, 30, sidewalklWidth, 130);

            //saveZone B and C
            Image safeZone = Image.FromFile("./Pics/Environment/sidewalk.png");

            //50 and  2nd 30 accroding to move around in unity
            // first 30 is bc it's right under scoreboard
            graph.DrawImage(safeZone, 150, 30, 50, 30);
            //draw safeZone C, 300 is bc utity says so
            graph.DrawImage(safeZone, 300, 30, 50, 30);

            //Background set Up
            //bottom yello sidewalk
            Image bottomSideWalk = Image.FromFile("./Pics/Environment/sidewalk.png");

            graph.DrawImage(bottomSideWalk, 18, 400, sidewalklWidth, sidewalkHeight);
            //top yellow sidewalk
            Image topSideWalk = Image.FromFile("./Pics/Environment/sidewalk.png");

            graph.DrawImage(topSideWalk, 18, 160, sidewalklWidth, sidewalkHeight);
            graph.DrawString("Frogger Screenshot", drawFont, drawBrush, drawPoint);

            //roadmarker
            Image roadMarker = Image.FromFile("./Pics/Environment/roadmarker.png");

            for (int j = 0; j < 6; j++)
            {
                for (int i = 0; i < 19; i++)
                {
                    graph.DrawImage(roadMarker, 18 + 25
                                    * i, 214 + j * 30, 25, 2);
                }
            }


            /// <summary>
            /// draw 7 cars
            /// </summary>
            carStates = this.displayState.carStates;
            Image redcar    = Image.FromFile("./Pics/Entities/redcar.png");
            Image bluecar   = Image.FromFile("./Pics/Entities/reverse_bluecar.png");
            Image redtruck  = Image.FromFile("./Pics/Entities/redtruck.png");
            Image bluetruck = Image.FromFile("./Pics/Entities/reverse_bluetruck.png");

            for (int i = 0; i < carStates.Length; i++)
            {
                CarType type = carStates[i].carType;
                Vector2 pos  = carStates[i].position;
                if (type == CarType.Car)
                {
                    if ((int)pos.Y == 189 || (int)pos.Y == 189 + 60 ||
                        (int)pos.Y == 189 + 120 || (int)pos.Y == 189 + 180)
                    {
                        graph.DrawImage(redcar, pos.X + 25, pos.Y, 50, 25);
                        //Console.WriteLine("inside");
                    }
                    else
                    {
                        graph.DrawImage(bluecar, pos.X - 30, pos.Y, 50, 25);
                    }
                }
                else
                {
                    if ((int)pos.Y == 189 || (int)pos.Y == 189 + 60 ||
                        (int)pos.Y == 189 + 120 || (int)pos.Y == 189 + 180)
                    {
                        graph.DrawImage(redtruck, pos.X + 50, pos.Y, 100, 25);
                    }
                    else
                    {
                        graph.DrawImage(bluetruck, pos.X - 55, pos.Y, 100, 25);
                    }
                }
            }

            //tunnel
            Image tunnel = Image.FromFile("./Pics/Environment/tunnel.png");

            //150,25 accoridng to img info
            graph.DrawImage(tunnel, 180.0F, 278.7F, 150, 25);
            Image offlight = Image.FromFile("./Pics/UI/TunnelLight.png");
            Image onlight  = Image.FromFile("./Pics/UI/onLight.png");

            topTunnelLight    = this.displayState.topTunnelLight;
            bottomTunnelLight = this.displayState.bottomTunnelLight;
            if (topTunnelLight == true)
            {
                graph.DrawImage(onlight, 200.0F, 278.7F, 8, 8);
            }
            else
            {
                graph.DrawImage(offlight, 200.0F, 278.7F, 8, 8);
            }
            if (bottomTunnelLight == true)
            {
                graph.DrawImage(onlight, 200.0F, 293.7F, 8, 8);
            }
            else
            {
                graph.DrawImage(offlight, 200.0F, 293.7F, 8, 8);
            }

            logPositions = this.displayState.logPositions;
            Image log = Image.FromFile("./Pics/Entities/log.png");

            for (int i = 0; i < 3; i++)
            {
                Vector2 pos = logPositions[i];
                if ((int)pos.Y == 70)
                {
                    graph.DrawImage(log, pos.X, pos.Y, 120, 25);
                }
                else
                {
                    graph.DrawImage(log, pos.X, pos.Y, 100, 25);
                }
            }

            //draw current frog
            Image   frog        = Image.FromFile("./Pics/Entities/frog.png");
            Vector2 frogPostion = this.displayState.frogPosition;

            graph.DrawImage(frog, frogPostion.X, frogPostion.Y, 25, 25);

            Image prefrog = Image.FromFile("./Pics/Entities/pre_frog.png");

            savedFrogPositions = this.displayState.savedFrogPositions;
            for (int i = 0; i < savedFrogPositions.Length; i++)
            {
                graph.DrawImage(prefrog, savedFrogPositions[i].X, savedFrogPositions[i].Y, 25, 25);
            }
            numLives = this.displayState.numLives;
            graph.DrawString(numLives.ToString() + "  lives left", drawFont, drawBrush, new PointF(200.0F, 0.0F));

            bmp.Save("../screenshotFireStore/" + filename);
        }
예제 #43
0
 public static double getMass(CarType carType)
 {
     if (carType == CarType.Buggy) {
         return buggyMass;
     } else {
         return jeepMass;
     }
 }
        protected void AddInfo_Click(object sender, EventArgs e)
        {
            string     manufacturer            = this.ManufacturerTextBox.Text;
            string     model                   = this.ModelTextBox.Text;
            EngineType typeOfEngine            = (EngineType)Enum.Parse(typeof(EngineType), this.TypeOFEngineDropDownList.Text);
            string     registrationNumber      = this.RegistrationTextBox.Text;
            string     vinNumber               = this.VINTextBox.Text;
            byte       countOfTyres            = byte.Parse(this.CountOfTyresTextBox.Text);
            byte       countOfDoors            = byte.Parse(this.CountOfDoorsTextBox.Text);
            CarType    typeOfCar               = (CarType)Enum.Parse(typeof(CarType), this.TypeOfCarDropDownList.Text);
            DateTime   yearOfManufactoring     = DateTime.Parse(this.ManufactoringYearTextBox.Text);
            DateTime   validUntilAnnualCheckUp = DateTime.Parse(this.CheckUpTextBox.Text);
            DateTime   validUntilVignette      = DateTime.Parse(this.VignetteTextBox.Text);
            DateTime   validUntilInsurance     = DateTime.Parse(this.InsuranceTextBox.Text);

            string   username       = this.UsernameTextBox.Text;
            string   firstName      = this.FirstNameTextBox.Text;
            string   secondName     = this.SecondNameTextBox.Text;
            string   lastName       = this.LastNameTextBox.Text;
            long     egn            = long.Parse(this.EGNTextBox.Text);
            int      numberOfIdCard = int.Parse(this.NumberOfIdCardTextBox.Text);
            DateTime dateOfIssue    = DateTime.Parse(this.IssueTextBox.Text);
            string   city           = this.CityTextBox.Text;
            string   phoneNumber    = this.PhoneTextBox.Text;
            string   email          = this.EmailTextBox.Text;


            var manager       = Context.GetOwinContext().GetUserManager <UserManager>();
            var signInManager = Context.GetOwinContext().Get <ApplicationSignInManager>();

            var userToAdd = new User()
            {
                UserName       = username,
                FirstName      = firstName,
                SecondName     = secondName,
                LastName       = lastName,
                EGN            = egn,
                NumberOfIdCard = numberOfIdCard,
                DateOfIssue    = dateOfIssue,
                City           = city,
                PhoneNumber    = phoneNumber,
                Email          = email
            };

            IdentityResult result = manager.Create(userToAdd, "123456");

            var carToAdd = new Car()
            {
                Manufacturer            = manufacturer,
                Model                   = model,
                TypeOfEngine            = typeOfEngine,
                RegistrationNumber      = registrationNumber,
                VINNumber               = vinNumber,
                CountOfTyres            = countOfTyres,
                CountOfDoors            = countOfDoors,
                TypeOfCar               = typeOfCar,
                YearOfManufacturing     = yearOfManufactoring,
                ValidUntilAnnualCheckUp = validUntilAnnualCheckUp,
                ValidUntilVignette      = validUntilVignette,
                ValidUntilInsurance     = validUntilInsurance,
                UserId                  = userToAdd.Id
            };

            if (result.Succeeded)
            {
                manager.AddToRole(userToAdd.Id, ApplicationConstants.UserRole);
                Service.AddCar(carToAdd);
                IdentityHelper.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response);
            }
            else
            {
                // does not work
            }
        }
 public List<Driver> GetDriversByCarType(CarType carType)
 {
     var drivers = APIHelper.GetAPIResponse<List<Driver>> ("Driver/GetDriversByCarType/?" + "carType=" + carType.Type);
     return drivers;
 }
 public BMW(string model, decimal year, string VIN, string equipment, string color, string engine, decimal effect, decimal topspeed, decimal price, CarType cartype)
     : base(model, year, VIN, equipment, engine, effect, topspeed, price, cartype)
 {
     Color = color;
 }
예제 #47
0
        private static string BuildRow(CarType carType, ICollection<PriceTypeValue> list)
        {
            var sb = new StringBuilder();
            var rowspan = list.Count() - 1;

            var first = list.First();

            sb.AppendLine("<tr>");
            sb.AppendLine(string.Format("<td rowspan=\"{0}\">{1}</td>", rowspan, carType.Localize()));
            sb.AppendLine(string.Format("<td>{0}</td>", first.PriceType.Localize()));
            sb.AppendLine(string.Format("<td>{0:n0}</td>", first.Value));

            var wax = list.First(x => x.PriceType == PriceType.Wax);
            sb.AppendLine(string.Format("<td rowspan=\"{0}\">{1:n0}</td>", rowspan, wax.Value));
            sb.AppendLine("</tr>");

            list.Remove(first);
            foreach (var item in list.Where(x => x.PriceType != PriceType.Wax))
            {
                sb.AppendLine("<tr>");
                sb.AppendLine(string.Format("<td>{0}</td>", item.PriceType.Localize()));
                sb.AppendLine(string.Format("<td>{0:n0}</td>", item.Value));
                sb.AppendLine("</tr>");
            }

            return sb.ToString();
        }
예제 #48
0
 public Car(string carNumber, double balance, CarType carType)
 {
     CarNumber = carNumber;
     Balance   = balance;
     CarType   = carType;
 }
예제 #49
0
        /// <summary>
        ///     get cases as an asynchronous operation.
        /// </summary>
        /// <param name="user">The user.</param>
        /// <param name="pageIndex">Index of the page.</param>
        /// <param name="pageSize">Size of the page.</param>
        /// <param name="carType">Type of the car.</param>
        /// <returns>Task&lt;PaginatedList&lt;Case&gt;&gt;.</returns>
        public async Task<PaginatedList<Case>> GetCasesAsync(User user, int pageIndex, int pageSize, CarType carType)
        {
            using (ChePingContext db = new ChePingContext())
            {
                int totalCount = 0;
                List<Case> cases = new List<Case>();
                switch (user.JobTitle)
                {
                    case JobTitle.Purchaser:
                        totalCount = await db.Cases.Where(c => c.PurchaserId == user.Id && c.CaseType == carType).CountAsync();
                        cases = await db.Cases.Where(c => c.PurchaserId == user.Id && c.CaseType == carType).OrderByDescending(c => c.Id).Skip(pageSize * pageIndex).Take(pageSize).ToListAsync();
                        break;

                    case JobTitle.Valuer:
                        totalCount = await db.Cases.Where(c => c.ValuerId == user.Id && c.CaseType == carType).CountAsync();
                        cases = await db.Cases.Where(c => c.ValuerId == user.Id && c.CaseType == carType).OrderByDescending(c => c.Id).Skip(pageSize * pageIndex).Take(pageSize).ToListAsync();
                        break;

                    case JobTitle.Querying:
                        totalCount = await db.Cases.Where(c => c.QueryingId == user.Id && c.CaseType == carType).CountAsync();
                        cases = await db.Cases.Where(c => c.QueryingId == user.Id && c.CaseType == carType).OrderByDescending(c => c.Id).Skip(pageSize * pageIndex).Take(pageSize).ToListAsync();
                        break;

                    case JobTitle.Director:
                        totalCount = await db.Cases.Where(c => c.DirectorId == user.Id && c.CaseType == carType).CountAsync();
                        cases = await db.Cases.Where(c => c.DirectorId == user.Id && c.CaseType == carType).OrderByDescending(c => c.Id).Skip(pageSize * pageIndex).Take(pageSize).ToListAsync();
                        break;

                    case JobTitle.Manager:
                        totalCount = await db.Cases.Where(c => c.ManagerId == user.Id).CountAsync();
                        cases = await db.Cases.Where(c => c.ManagerId == user.Id).OrderByDescending(c => c.Id).Skip(pageSize * pageIndex).Take(pageSize).ToListAsync();
                        break;
                }

                return new PaginatedList<Case>(pageIndex, pageSize, totalCount, cases);
            }
        }
예제 #50
0
        // Удаление строки
        void RemoveRow()
        {
            var    page  = TabMain.SelectedTab;
            var    grid  = (DataGridView)page.Controls[0];
            string table = page.Name.Split('_')[1];

            /* Если выбелено более одной строки */
            if (grid.SelectedRows.Count > 1)
            {
                // Получаем индексы выделенных ячеек
                int[] indexes = new int[grid.SelectedRows.Count];

                for (int i = 0; i < grid.SelectedRows.Count; i++)
                {
                    indexes[i] = grid.SelectedRows[i].Cells[0].Value.exToInt();
                }

                if (new Remove(indexes, table, CheckMoreRelationships(table, indexes)).ShowDialog() == DialogResult.OK)
                {
                    Base.RemoveRows(table, indexes);
                    UpdateData(ROW_INDEX, true, true);                     // Обновление стобца
                }
            }
            /* Если выделена всего одна строка */
            else
            {
                if (new Remove(CheckRelationships(table, ID)).ShowDialog() == DialogResult.OK)
                {
                    try
                    {
                        switch (page.Name)
                        {
                        case "FPage_CarBrand": CarBrand.RemoveRow(ID); break;

                        case "FPage_CarModel": CarModel.RemoveRow(ID); break;

                        case "FPage_Cars": Cars.RemoveRow(ID); break;

                        case "FPage_CarType": CarType.RemoveRow(ID); break;

                        case "FPage_Drivers": Drivers.RemoveRow(ID); break;

                        case "FPage_Organizations": Organisations.RemoveRow(ID); break;

                        case "FPage_Staff": Staff.RemoveRow(ID); break;

                        case "FPage_StaffPosition": StaffPosition.RemoveRow(ID); break;
                        }
                        UpdateData(ROW_INDEX, true);                         // Обновление стобца
                    }
                    catch (Exception e)
                    {
                        MessageBox.Show(e.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
            }

            bool CheckRelationships(string initialTable, int id)
            {
                DataTable        checkingTable = new DataTable();
                OleDbDataAdapter adapter;

                // Проверка связанных таблиц
                using (var connection = new OleDbConnection(Base.DB_CONNECTION_STRING))
                {
                    /* +--------------------------------------------------+
                     * |											NOTE												|
                     * +--------------------------------------------------+
                     * |																									|
                     * |																									|
                     * | Имеют связь и требуют обработки									|
                     * +--------------------------------------------------+
                     * | CarType -> Cars ->								[TrackingLists]	|
                     * | CarBrand -> CarModel -> Cars ->	[TrackingLists]	|
                     * | StaffPosition -> Staff ->				[TrackingLists]	|
                     * |																									|
                     * | Не имеют особой связи, и не требуют обработки		|
                     * +--------------------------------------------------+
                     * | Estimate ->											[TrackingLists]	|
                     * | Drivers ->												[TrackingLists]	|
                     * | organisations ->									[TrackingLists]	|
                     * |																									|
                     * |																									|
                     * +--------------------------------------------------+
                     * |										END NOTE											|
                     * +--------------------------------------------------+
                     */
                    connection.Open();
                    // Выборка из БД, в зависимости от активной таблицы
                    switch (page.Name)
                    {
                    case "FPage_CarBrand":
                        adapter = new OleDbDataAdapter($"SELECT * FROM CarModel WHERE Carmodel_brand={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_CarModel":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Cars WHERE Car_model={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Cars":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE Trackinglist_transport={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_CarType":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Cars WHERE Car_type={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Drivers":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE Trackinglist_driver={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Organizations":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE " +
                                                       $"Trackinglist_organization={id} OR Trackinglist_organization_2={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Staff":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE " +
                                                       $"Trackinglist_dispatcher={id} OR Trackinglist_medic={id} OR Trackinglist_mechanic={id}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_StaffPosition":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Staff WHERE Staff_position={id}", connection);
                        adapter.Fill(checkingTable);
                        break;
                    }
                }

                if (checkingTable.Rows.Count != 0)
                {
                    return(true);                                               // Если есть строки то true
                }
                else
                {
                    return(false);                                                                                                      // Если нет строк то false
                }
            }

            bool CheckMoreRelationships(string initialTable, int[] values)
            {
                DataTable        checkingTable = new DataTable();
                OleDbDataAdapter adapter;

                #region Созданние строки запроса
                string CONDITION = "";
                string CONDITION_COLUMN = "", CONDITION_COLUMN2 = "", CONDITION_COLUMN3 = "";

                switch (page.Name)
                {
                case "FPage_CarBrand":
                    CONDITION_COLUMN = "Carmodel_brand";
                    break;

                case "FPage_CarModel":
                    CONDITION_COLUMN = "Car_model";
                    break;

                case "FPage_Cars":
                    CONDITION_COLUMN = "Trackinglist_transport";
                    break;

                case "FPage_CarType":
                    CONDITION_COLUMN = "Car_type";
                    break;

                case "FPage_Drivers":
                    CONDITION_COLUMN = "Trackinglist_driver";
                    break;

                case "FPage_Organizations":
                    CONDITION_COLUMN  = "Trackinglist_organization";
                    CONDITION_COLUMN2 = "Trackinglist_organization_2";
                    break;

                case "FPage_Staff":
                    CONDITION_COLUMN  = "Trackinglist_dispatcher";
                    CONDITION_COLUMN2 = "Trackinglist_medic";
                    CONDITION_COLUMN3 = "Trackinglist_mechanic";
                    break;

                case "FPage_StaffPosition":
                    CONDITION_COLUMN = "Staff_position";
                    break;
                }

                // Если в выборке только одно поле
                if (CONDITION_COLUMN2 == "" && CONDITION_COLUMN3 == "")
                {
                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN + "=" + values[i] + " OR ";
                    }

                    CONDITION = CONDITION.Remove(CONDITION.Length - 4);
                }
                // Если в выборке 2 поля
                else if (CONDITION_COLUMN2 != "" && CONDITION_COLUMN3 == "")
                {
                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN + "=" + values[i] + " OR ";
                    }

                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN2 + "=" + values[i] + " OR ";
                    }

                    CONDITION = CONDITION.Remove(CONDITION.Length - 4);
                }
                // Если в выборке 3 поля
                else if (CONDITION_COLUMN2 != "" && CONDITION_COLUMN3 != "")
                {
                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN + "=" + values[i] + " OR ";
                    }

                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN2 + "=" + values[i] + " OR ";
                    }

                    for (int i = 0; i < values.Length; i++)
                    {
                        CONDITION += CONDITION_COLUMN3 + "=" + values[i] + " OR ";
                    }

                    CONDITION = CONDITION.Remove(CONDITION.Length - 4);
                }
                #endregion

                // Проверка связанных таблиц
                using (var connection = new OleDbConnection(Base.DB_CONNECTION_STRING))
                {
                    /* +--------------------------------------------------+
                     * |											NOTE												|
                     * +--------------------------------------------------+
                     * |																									|
                     * |																									|
                     * | Имеют связь и требуют обработки									|
                     * +--------------------------------------------------+
                     * | CarType -> Cars ->								[TrackingLists]	|
                     * | CarBrand -> CarModel -> Cars ->	[TrackingLists]	|
                     * | StaffPosition -> Staff ->				[TrackingLists]	|
                     * |																									|
                     * | Не имеют особой связи, и не требуют обработки		|
                     * +--------------------------------------------------+
                     * | Estimate ->											[TrackingLists]	|
                     * | Drivers ->												[TrackingLists]	|
                     * | organisations ->									[TrackingLists]	|
                     * |																									|
                     * |																									|
                     * +--------------------------------------------------+
                     * |										END NOTE											|
                     * +--------------------------------------------------+
                     */
                    connection.Open();
                    // Выборка из БД, в зависимости от активной таблицы
                    switch (page.Name)
                    {
                    case "FPage_CarBrand":
                        adapter = new OleDbDataAdapter($"SELECT * FROM CarModel WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_CarModel":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Cars WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Cars":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_CarType":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Cars WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Drivers":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Organizations":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_Staff":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Trackinglists WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;

                    case "FPage_StaffPosition":
                        adapter = new OleDbDataAdapter($"SELECT * FROM Staff WHERE {CONDITION}", connection);
                        adapter.Fill(checkingTable);
                        break;
                    }
                }

                if (checkingTable.Rows.Count != 0)
                {
                    return(true);                                               // Если есть строки то true
                }
                else
                {
                    return(false);                                              // Если нет строк то false
                }
            }
        }
예제 #51
0
        public static IMessage CreateMessage(CarType carType, EventType eventType)
        {
            switch (carType)
            {
                case CarType.History:
                    return new CarPositionHistory();
                case CarType.Position:
                    return new CarPositionUpdate();
                default:
                    switch(eventType)
                    {
                        case EventType.Race:
                            return CreateFromType(RaceLookup[(int) carType]);
                        case EventType.Practice:
                            return CreateFromType(PracticeLookup[(int) carType]);
                        case EventType.Qualifying:
                            return CreateFromType(QualifyLookup[(int)carType]);
                        default:
                            break;
                    }
                    break;
            }

            return null;
        }
예제 #52
0
 public LuxuxryCar(CarType carType, Location location) : base(CarType.LUXURY, location)
 {
     Construct();
 }
예제 #53
0
파일: SedanCar.cs 프로젝트: didimitrov/Algo
 public SedanCar(CarType type)
     : base(CarType.Sedan)
 {
     Construct();
 }
예제 #54
0
 public Resp_Binary Add(CarType model) => _carTypeService.Add(model);
예제 #55
0
 public Car(string registrationNumber, CarType type) : base(registrationNumber)
 {
     Type = type;
 }
예제 #56
0
 public Resp_Binary Modify(CarType model) => _carTypeService.Modify(model);
예제 #57
0
파일: SmallCar.cs 프로젝트: didimitrov/Algo
 public SmallCar(CarType type)
     : base(CarType.Small)
 {
     Construct();
 }
예제 #58
0
 public Car(CarType carType)
 {
     this.Style = carType;
 }
예제 #59
0
 public Car(CarType type, CarColor color)
 {
     this.TypeOfCar  = type.ToString();
     this.ColorOfCar = color.ToString();
 }
예제 #60
0
        public void ParseMessage(NetIncomingMessage im)
        {
            //Parse and Apply all Changes
            var del  = im.ReadByte();
            var type = im.ReadByte();

            CarGoServer.ServerData serverData = new CarGoServer.ServerData();
            switch ((MessageType)type)
            {
            case MessageType.GameState:
                GameState newState = (GameState)im.ReadByte();
                StateMachine.Instance.RemoteChangeState(newState);
                //Update GameState

                break;

            case MessageType.ObjectUpdate:
                var     objectMessageType = (ObjectMessageType)im.ReadByte();
                var     objectID          = im.ReadInt32();
                Vector2 center;
                int     clientID;
                switch (objectMessageType)
                {
                case ObjectMessageType.PlayerSpawn:
                    clientID = im.ReadInt32();
                    center   = XNAExtensions.ReadVector2(im);
                    CarType      carType      = (CarType)im.ReadByte();
                    CarFrontType carFrontType = (CarFrontType)im.ReadByte();
                    AbilityType  abilityType  = (AbilityType)im.ReadByte();
                    scene.RemoteAddPlayer(clientID, center, objectID, carType, carFrontType, abilityType, lobbyOnline.GetOnlinePlayer(clientID));
                    break;

                case ObjectMessageType.Spawn:
                    EntityType entityType = (EntityType)im.ReadByte();
                    center = XNAExtensions.ReadVector2(im);
                    scene.RemoteAddEntity(entityType, center, objectID);
                    break;

                case ObjectMessageType.Despawn:
                    scene.RemoteRemoveEntity(objectID);
                    break;

                case ObjectMessageType.UpdatePosition:
                    center = XNAExtensions.ReadVector2(im);
                    float   rotation = im.ReadFloat();
                    Vector2 velocity = XNAExtensions.ReadVector2(im);
                    scene.RemoteUpdatePosition(objectID, center, rotation, velocity);
                    break;

                case ObjectMessageType.StateChange:
                    break;

                case ObjectMessageType.UpdateHitpoints:
                    int newHitpoints = im.ReadInt32();
                    scene.RemoteUpdateHitpoints(objectID, newHitpoints);
                    break;
                }
                break;

            case MessageType.ReceiveClientNumber:
                clientID = im.ReadInt32();
                ID_Manager.Instance.ClientNumber = clientID;
                lobbyOnline.AddOnlinePlayer(Settings.Instance.PlayerName, clientID, PreferredInput.Instance.GetPreferredInput);
                break;

            case MessageType.IntroduceClient:
                clientID = im.ReadInt32();
                var clientName = im.ReadString();
                lobbyOnline.AddOnlinePlayer(clientName, clientID, InputController.Remote);
                //create new onlinePlayer for Lobby
                break;

            case MessageType.MenuInput:
                Menu currentmenu = game.GetCurrentMenu();
                clientID = im.ReadInt32();
                currentmenu.RemoteInput((InputType)im.ReadByte(), clientID);
                break;

            case MessageType.ReceiveServerInfo:
                im.ReadAllFields(serverData);
                //string serverName = im.ReadString();
                //string address = im.ReadString() + ":" + networkThread.port;//im.SenderEndPoint.ToString();
                lobbyOnline.serverData = serverData;
                break;

            case MessageType.PlayerReady:
                clientID = im.ReadInt32();
                lobbyOnline.SetPlayerReady(clientID);

                break;

            case MessageType.Chat:
                string message = im.ReadString();
                game.menuPause.AddChatMessage(message);
                break;

            case MessageType.ServerInList:
                long key = im.ReadInt64();
                serverData = new CarGoServer.ServerData();
                im.ReadAllFields(serverData);
                game.lobbySearch.AddServerData(serverData);
                break;

            case MessageType.ReceiveServerAddress:
                break;
            }
        }