Jump to content
Unity Insider Forum
Tarantel

Fahrzeug ein + aussteigen C#

Recommended Posts

Nabend alle zusammen ^^

Ich hab hier lange nix mehr von mir gegeben ^^

Habe grad ein altes tut von simplex gefunden und wollte mal frischen Wind für diejenigen rein bringen die lieber mit C# arbeiten statt JS.

 

Link zum Video von Simplex

 

Ich habe daher eine kleine Umwandlung des Codes von JS zu C# gebastelt. Auf die schnelle und da ich kaum noch mit C# was mache ist es nicht die beste Lösung aber dennoch funktioniert sie fürn Anfang wunderbar.

PS: Das Lightscript ist mit eingebaut.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Accessibility;
using UnityEngine.Scripting;
using UnityStandardAssets.Vehicles.Car;

public class EnterCar : MonoBehaviour {

    public float distance;
    public float enterRange = 5f;
    public Transform player;
    public Transform cameraCar;

    public Transform carText;
    private bool isInCar = false;
    private bool lightSwitch = false;
    public Transform lights;
    public GameObject car;
    private CarUserControl CarUC;
    private CarAudio CarA;
    private AudioSource CarAS;

	void Update () {
        distance = Vector3.Distance(player.position, transform.position);
        if (distance < enterRange && isInCar == false)
        {
            carText.gameObject.SetActive(true);
        }

        else
        {
            carText.gameObject.SetActive(false);
        }

        if (Input.GetKeyDown(KeyCode.Space) && isInCar == true)
        {
            ExitCar();
        }

        if (Input.GetKeyDown(KeyCode.F) && isInCar == true)
        {
            lightSwitch = !lightSwitch;
        }

        lights.gameObject.SetActive(lightSwitch);
    }

    void OnMouseOver()
    {
        if (Input.GetKeyDown(KeyCode.E) && distance < enterRange)
        {
            isInCar = true;

            player.gameObject.SetActive(false);
            cameraCar.gameObject.SetActive(true);

            car.GetComponent<CarController>().enabled = true;
            car.GetComponent<CarUserControl>().enabled = true;
            car.GetComponent<CarAudio>().enabled = true;
            car.GetComponent<AudioSource>().enabled = true;
        }
    }

    void ExitCar ()
    {
        isInCar = false;
        player.position = new Vector3(transform.position.x, transform.position.y + 2, transform.position.z + 5);

        player.gameObject.SetActive(true);
        cameraCar.gameObject.SetActive(false);
        car.GetComponent<CarController>().enabled = false;
        car.GetComponent<CarUserControl>().enabled = false;
        car.GetComponent<CarAudio>().enabled = false;
        car.GetComponent<AudioSource>().enabled = false;

    }
}

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×