Example #1
0
    void FixedUpdate()
    {
        turn = Input.GetAxis("L_XAxis_1");
        // if (!VS.isRacing) return;
        pitch  = Input.GetAxis("R_YAxis_1");
        strave = Input.GetAxis("R_XAxis_1");

        accelerate = Input.GetAxis("TriggersR_1");
        decelerate = Input.GetAxis("TriggersL_1");
        VS.Turn(turn);
        VS.Pitch(pitch);
        VS.Strafe(strave);
        VS.Accelerate(accelerate);
        VS.Deccelerate(decelerate);

        // buttons
        if (Input.GetButton("X_1"))
        {
            VS.Boost();
        }
        if (Input.GetButton("A_1"))
        {
            VS.EnableGravity();
        }
        if (CS)
        {
            CS.LookBack(Input.GetButton("B_1"));
        }
    }
Example #2
0
        private static void ProcessVehicle()
        {
            var vehicleList = new List <Vehicle>();

            while (true)
            {
                Console.WriteLine("Enter vehicle color");
                var col = Console.ReadLine();
                Console.WriteLine("Enter vehicle wheelCount");
                var    wheels = Convert.ToInt32(Console.ReadLine());
                var    vehi   = new Vehicle(col, wheels);
                Random random = new Random();
                var    value  = random.Next(10, 100);
                vehi.Accelerate(value);
                vehicleList.Add(vehi);
                Console.WriteLine("Do you want to enter new Vehicle info. If yes , enter Y");
                var reTry = Console.ReadLine();
                if (reTry != "Y")
                {
                    break;
                }
            }

            foreach (var item in vehicleList)
            {
                Console.WriteLine(item.GetVehicleInfo());
            }
        }
Example #3
0
 //---------------------------------------
 private void SetVS()
 {
     VS.Turn(shipSteer);
     VS.Pitch(shipPitch);
     VS.Strafe((shipAirBrakeLeft - shipAirBrakeRight) * -1f);
     if (isAccelerating)
     {
         VS.Accelerate(1);
         VS.Deccelerate(0);
     }
     else
     {
         VS.Accelerate(0);
         VS.Deccelerate(1);
     }
     if (isBoosting)
     {
         VS.Boost();
     }
 }
Example #4
0
    void Update()
    {
        sensorInputs = sensors.GetSensorInputs();

        float steer = neuralNetwork.outputLayer.nodes[1].outputs[0];

        steer = Mathf.Clamp(steer, -1.0f, 1.0f);

        List <float> packedSensorInputs = SerializedInputData(sensorInputs, sensors.vehicleSpeed);

        neuralNetwork.Action(packedSensorInputs);
        if (vehicle.velocity < vehicle.maxVelocity)
        {
            vehicle.Accelerate(neuralNetwork.outputLayer.nodes[0].outputs[0]);
        }
        vehicle.Steer(steer * 10);
        //Debug.Log(steer);
    }
Example #5
0
    // Update is called once per frame
    void Update()
    {
        // If not paused
        if (Time.timeScale == 1)
        {
            if (Input.GetKey(this.moveUp))
            {
                vehicle.Accelerate();
            }
            else if (Input.GetKey(this.moveDown))
            {
                vehicle.AccelerateBack();
            }

            if (Input.GetKey(this.moveLeft))
            {
                vehicle.TurnLeft();
            }
            else if (Input.GetKey(this.moveRight))
            {
                vehicle.TurnRight();
            }
            else
            {
                vehicle.SetWheelAngle(0);
            }

            vehicle.Action();

            int k = 60;

            rigidBody2D.velocity = new Vector3((float)(Math.Sin(vehicle.Direction) * vehicle.Speed) * k, (float)(Math.Cos(vehicle.Direction) * vehicle.Speed) * k);

            //transform.position = vehicle.Origin;
            transform.eulerAngles = new Vector3(0, 0, (float)(180 - Mathf.Rad2Deg * vehicle.Direction));
        }
    }
    void FixedUpdate()
    {
        if (isMain)
        {
            horizontal      = -VehicleInput.steering;
            vertical        = VehicleInput.gas;
            frontBrake      = VehicleInput.frontBrake;
            backBrake       = VehicleInput.backBrake;
            forceAccelerate = VehicleInput.forceAccelerate;
        }

        float hh = Mathf.Clamp(horizontal * Mathf.Lerp(1.0f, turnK, vehicle.body.velocity.magnitude / vehicle.parameters.maxVelocityMPS), -1.0f, 1.0f);

        turn  = Mathf.Lerp(turn, hh, 10.0f * Time.fixedDeltaTime);
        speed = Mathf.Lerp(speed, vertical, 10.0f * Time.fixedDeltaTime);


        if (Mathf.Abs(turn) > 0.1)
        {
            vehicle.RotateSteering(turn);
            if (OnInput != null)
            {
                OnInput(turn < 0.0f? VehiclesInputType.LeftSteering : VehiclesInputType.RightSteering);
            }
        }
        else
        {
            vehicle.NormalizeSteering();
        }

        if (frontBrake > 0.1f)
        {
            vehicle.FrontBrake(frontBrake);
            if (OnInput != null)
            {
                OnInput(VehiclesInputType.FrontBrake);
            }
        }
        else if (backBrake > 0.1f)
        {
            vehicle.BackBrake(backBrake);
            if (OnInput != null)
            {
                OnInput(VehiclesInputType.BackBrake);
            }
        }
        else
        {
            if (forceAccelerate > 0.1f)
            {
                vehicle.ForceAccelerate(100);
                if (OnInput != null)
                {
                    OnInput(VehiclesInputType.ForceAccelerate);
                }
            }
            else if (Mathf.Abs(speed) > 0.1)
            {
                vehicle.Accelerate(speed);
                if (OnInput != null)
                {
                    OnInput(speed > 0.0f? VehiclesInputType.Gas: VehiclesInputType.BackGas);
                }
            }
            else
            {
                vehicle.SlowDown();
            }
        }
    }
 private void OnAccelerateInput(InputAction.CallbackContext context)
 {
     vehicle.Accelerate(context.ReadValue <float>().Equals(1));
 }
 void FixedUpdate()
 {
     vehicle.Brake(Input.GetKey(KeyCode.Space));
     vehicle.Steer(Input.GetAxis("Horizontal"));
     vehicle.Accelerate(Input.GetAxis("Vertical"));
 }