Пример #1
0
    void Update()
    {
        if (explosionAnimation.normPosition > 0.2f)
        {
            Destroy(this);
            //This assumes that the explosion is a sphere, so .x is the radius
            Collider [] cars = Physics.OverlapSphere(transform.position, explosionAnimation.startScale.x / 2f);

            foreach (Collider carCollider in cars)
            {
                CarScript car = carCollider.GetComponent <CarScript>();
                if (car)
                {
                    car.dead = true;
                    car.rigidBod.constraints = RigidbodyConstraints.None;
                    car.rigidBod.velocity   += (car.transform.position - transform.position).normalized * pushPower;
                    car.rigidBod.drag        = 0f;
                    car.rigidBod.angularDrag = 0f;
                    car.rigidBod.useGravity  = false;

                    Collider[] carColliders = car.GetComponentsInChildren <Collider>();

                    foreach (Collider coll in carColliders)
                    {
                        Destroy(coll);
                    }
                    Destroy(car.gameObject, 3f);
                }
            }
        }
    }
//	int TestNetCarNum = 0;
    public void CreatCar()
    {
        if (GlobalData.GetInstance().gameMode == GameMode.OnlineMode)
        {
            if (CarsNet.Length <= 0)
            {
                return;
            }

            int carid    = Random.Range(0, CarsNet.Length);
            int playerID = int.Parse(Network.player.ToString());

            GameObject newCar = (GameObject)Network.Instantiate(CarsNet[carid], transform.position,
                                                                transform.rotation, playerID);

            CarNetCtrl carsc = (CarNetCtrl)newCar.GetComponent("CarNetCtrl");
            carsc.initCarNetInfo(CarPath);
        }
        else
        {
            if (Cars.Length <= 0)
            {
                return;
            }

            int        carid  = Random.Range(0, Cars.Length);
            GameObject newCar = (GameObject)Instantiate(Cars[carid], transform.position, transform.rotation);
            CarScript  carsc  = (CarScript)newCar.GetComponent("CarScript");

            carsc.CarPath = CarPath;
            carsc.isStart = true;
        }
    }
Пример #3
0
    /// <summary>
    /// Vinde masina
    /// Ia banii si o face sa se duca in dreapta
    /// </summary>
    public void SellCar()
    {
        // Tin minte ca am vandut-o ca sa o mut in CarScript.cs
        CarScript carScript = GameObject.FindGameObjectWithTag("Car").GetComponent <CarScript>();

        carScript.sold = true;
    }
 void Start()
 {
     sc = GetComponent <SmoothCamera>();
     cs = cars[PlayerPrefs.GetInt("c")].GetComponent <CarScript>();
     cars[PlayerPrefs.GetInt("c")].SetActive(true);
     sc.target = cars[PlayerPrefs.GetInt("c")].transform;
     sc.sc     = cars[PlayerPrefs.GetInt("c")].GetComponent <WheelJoint2D>();
 }
Пример #5
0
 void Start()
 {
     GameManager.Intialize();
     instance  = GetComponent <FriendlyCar>();
     carScript = GetComponent <CarScript>();
     personalDistanceDriven = 0f;
     previousPos            = transform.position;
 }
Пример #6
0
 void Start()
 {
     gamePlayer    = FindObjectOfType <L3_PlayerC> ();
     car           = FindObjectOfType <CarScript> ();
     saw           = FindObjectOfType <SawScript> ();
     weight        = FindObjectOfType <WeigihtScript> ();
     coinText.text = "Coins: " + coins3;
 }
Пример #7
0
 private void Start()
 {
     scoreScript       = FindObjectOfType <ScoreScript>();
     moveScript        = FindObjectOfType <MoveScript>();
     spawnerScript     = FindObjectOfType <SpawnerScript>();
     infiniScoreScript = FindObjectOfType <InfiniScoreScript>();
     carScript         = FindObjectOfType <CarScript>();
 }
Пример #8
0
 protected void SetController(CarScript actor)
 {
     if (currentActor != null)
     {
         currentActor.EnableController = false;
     }
     CameraKit.SetTarget(actor);
     currentActor = actor;
     currentActor.EnableController = true;
 }
Пример #9
0
 private void Start()
 {
     car = GetComponent <CarScript>();
     GameObject[] allCars = GameObject.FindGameObjectsWithTag("Car");
     foreach (GameObject car in allCars)
     {
         if (car != this.gameObject)
         {
             cars.Add(car.GetComponent <CarScript>());
         }
     }
     mainTree = GetComponent <MainTreeScript>();
 }
Пример #10
0
 private void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.CompareTag("Car"))
     {
         if (AIScript = other.gameObject.GetComponent <AIController>())
         {
             //AIScript.currentPowerup = null;
         }
         if (CarScript = other.gameObject.GetComponent <CarController>())
         {
             CarScript.GoFlying();
         }
     }
 }
Пример #11
0
 public void LaunchButt(GameObject targetCar)
 {
     location           = targetCar.transform.position;
     transform.position = location;
     if (AIScript = targetCar.gameObject.GetComponent <AIController>())
     {
         currentWaypoint         = AIScript.GetCurrentWaypointInt();
         AIScript.currentPowerup = null;
     }
     if (CarScript = targetCar.gameObject.GetComponent <CarController>())
     {
         currentWaypoint          = CarScript.GetCurrentWaypointInt();
         CarScript.currentPowerup = null;
     }
 }
Пример #12
0
    int CheckSurroundings()
    {
        int carsBeside = 0;
        int carsAhead  = 0;

        Collider[] collisions = Physics.OverlapSphere(transform.position, 1);
        foreach (Collider collider in collisions)
        {
            if (collider.gameObject != this.gameObject)
            {
                CarScript colliderCar = collider.GetComponent <CarScript>();
                if (colliderCar == null)
                {
                    continue;
                }

                if (colliderCar.isInLeftLane && car.isInLeftLane && car.rightLaneSpeed > colliderCar.rightLaneSpeed)
                {
                    carsAhead++;
                }
                if (colliderCar.isInLeftLane && !car.isInLeftLane)
                {
                    carsBeside++;
                }
                if (!colliderCar.isInLeftLane && car.isInLeftLane)
                {
                    carsBeside++;
                }
            }
        }

        if (carsBeside > 0 && carsAhead > 0)
        {
            return(3);
        }
        if (carsBeside > 0 && carsAhead == 0)
        {
            return(2);
        }
        if (carsBeside == 0 && carsAhead > 0)
        {
            return(1);
        }
        else
        {
            return(0);
        }
    }
Пример #13
0
    private void resetGame()
    {
        GameObject[] cars = GameObject.FindGameObjectsWithTag("Player");
        foreach (var car in cars)
        {
            Destroy(car);
        }

        var obj = Instantiate(carTemplate);

        car = obj.GetComponent <CarScript> ();
        car.transform.position = GameObject.FindGameObjectWithTag("Respawn").transform.position;
        car.CollidedWithWall  += () => {
            SetCrash();
        };
    }
Пример #14
0
    public void GameOver(string desc)
    {
        if (!gameOver)
        {
            GAMEOVERBG.enabled = true; GAMEOVERTEXT.enabled = true; DESCBG.enabled = true; DESCTEXT.enabled = true;
            BUTTONBG.enabled   = true; SCOREBG.enabled = true; SCORE.enabled = true;
            DESCTEXT.text      = desc;

            if (score == 0)
            {
                SCORE.text = "How did you fail to complete any objectives?!";
            }
            else if (score < 5)
            {
                SCORE.text = "At least you completed " + score + " objectives.";
            }
            else if (score < 10)
            {
                SCORE.text = "But, you completed " + score + " objectives!";
            }
            else if (score < 20)
            {
                SCORE.text = "Regardless, completing " + score + " objectives is impressive!";
            }
            else
            {
                SCORE.text = "" + score + " objectives? SUCH OBJECTIVE, SO WOW!";
                for (int i = 0; i < 50; i++)
                {
                    GameObject go = (GameObject)Instantiate(DOGE);
                    go.transform.position = new Vector3(r.Next(-10, 10), r.Next(-10, 10), 0);
                    go.transform.Rotate(new Vector3(0, 0, r.Next(360)));
                    doges.Add(go);
                }
            }

            DIRT.color = new Color(1, 1, 1);
            FUEL.color = new Color(1, 1, 1); HEALTH.color = new Color(1, 1, 1);
            TOP.color  = new Color(1, 1, 1); NEXT.color = new Color(1, 1, 1); AFTER.color = new Color(1, 1, 1);
            TIME.color = new Color(1, 1, 1); OBJECTIVE.color = new Color(1, 1, 1);

            CarScript cs = (CarScript)PLAYER.GetComponent("CarScript");
            cs.GameOver();

            gameOver = true;
        }
    }
Пример #15
0
    // Use this for initialization
    void Start()
    {
        //get the car script component
        car = GetComponent <CarScript>();

        //get line script component
        line = GameObject.FindGameObjectWithTag("Line").GetComponent <LineScript>();

        //get the max velocity of the car
        maxCarVel = car.GetMaxVelocity();

        //get the steering(acceleration) scale of the car
        steeringValue = car.GetSteeringScale();

        //find the input and text objects in the scene and set them as variables here
        carPositionInputField  = GameObject.FindGameObjectWithTag("FuzzyCarPositionInputField");
        linePositionInputField = GameObject.FindGameObjectWithTag("FuzzyLinePositionInputField");
        velocityInputField     = GameObject.FindGameObjectWithTag("FuzzyVelocityInputField");
        steeringText           = GameObject.FindGameObjectWithTag("FuzzySteeringText").GetComponent <Text>();
    }
Пример #16
0
    // Use this for initialization
    void Start()
    {
        //get the car script component from the car
        car = GetComponent <CarScript>();

        //get the line script component from the line
        line = GameObject.FindGameObjectWithTag("Line").GetComponent <LineScript>();

        //get max velocity from the car script
        maxCarVel = car.GetMaxVelocity();

        //get the steering scale(acceleration) from the car script
        steeringValue = car.GetSteeringScale();

        //find the input field and text objects that we want to change in the scene and set the mas variables
        carPositionInputField  = GameObject.FindGameObjectWithTag("RuleBasedCarPositionInputField");
        linePositionInputField = GameObject.FindGameObjectWithTag("RuleBasedLinePositionInputField");
        velocityInputField     = GameObject.FindGameObjectWithTag("RuleBasedVelocityInputField");
        steeringText           = GameObject.FindGameObjectWithTag("RuleBasedSteeringText").GetComponent <Text>();

        //set specific values for the rules to use
        //distance variable
        FarLeftDist  = -1.5f;
        LeftDist     = -0.025f;
        RightDist    = 0.025f;
        FarRightDist = 1.5f;

        //velocity variable
        FastLeftVel  = -0.75f * maxCarVel;
        LeftVel      = -0.25f * maxCarVel;
        RightVel     = 0.25f * maxCarVel;
        FastRightVel = 0.75f * maxCarVel;

        //steering output variables
        SteerHardLeft  = -0.75f * steeringValue;
        SteerLeft      = -0.5f * steeringValue;
        SteerRight     = 0.5f * steeringValue;
        SteerHardRight = 0.75f * steeringValue;
    }
Пример #17
0
 private void Start()
 {
     car      = GetComponent <CarScript>();
     mainTree = GetComponent <MainTreeScript>();
 }
Пример #18
0
 // Use this for initialization
 void Start()
 {
     carScript = GetComponent <CarScript> ();
 }
Пример #19
0
 void Start()
 {
     carScript = FindObjectOfType <CarScript>();
 }
Пример #20
0
 public void SetTarget(CarScript actor)
 {
     transform.position = actor.transform.position;
     transform.rotation = actor.transform.rotation;
     transform.parent   = actor.transform;
 }
Пример #21
0
 private void Awake()
 {
     carScript = GetComponent <CarScript>();
 }
Пример #22
0
 void Awake()
 {
     carScript     = GetComponent <CarScript>();
     carController = GetComponent <CarController>();
 }
Пример #23
0
    void OnCollisionEnter2D(Collision2D col)
    {
        CarScript.IncreaseSpeed();

        // on collision enter with star car gets nitro
    }
Пример #24
0
	// Use this for initialization
	void Start () {
		carScript = GetComponent<CarScript> ();
	}
 void Awake()
 {
     carScript     = GetComponent <CarScript>();
     carController = GetComponent <CarController>();
     GenerateNewRandomLocation();
 }
 private void Start()
 {
     car = GetComponent <CarScript>();
 }
Пример #27
0
 void Start()
 {
     car        = gameObject.GetComponent <CarScript>();
     mainCamera = Camera.main;
 }
Пример #28
0
	public void CreateNextObstacle(float prevY)
	{
		GameObject newObstacle;

		int obsType = 1;

		if (SelectedLevelScript.selectedLevel == 1) 
		{
			obsType = obstTypeLvl1[obstacleIndex];
		}
		else if (SelectedLevelScript.selectedLevel == 2) 
		{
			obsType = obstTypeLvl2[obstacleIndex];
		}
		else if (SelectedLevelScript.selectedLevel == 3) 
		{
			obsType = obstTypeLvl3[obstacleIndex];
		}
		else if (SelectedLevelScript.selectedLevel == 4) 
		{
			obsType = obstTypeLvl4[obstacleIndex];
		}else if (SelectedLevelScript.selectedLevel == 5) 
		{
			obsType = obstTypeLvl5[obstacleIndex];
		}
		// Create correct type of obstacle
		if(obsType == 0)
			newObstacle = (GameObject) GameObject.Instantiate(Resources.Load("Obstacle_green", typeof(GameObject)));
		else
			newObstacle = (GameObject) GameObject.Instantiate(Resources.Load("Obstacle_red", typeof(GameObject)));


		// Set id
		ObstacleScript obsScript = (ObstacleScript) newObstacle.GetComponent(typeof(ObstacleScript));
		if (obsScript) 
		{
			obsScript.id = obstacleCount;
		}

		//calculate position

		float obsDist = 0;
		float obsAmount = 0;
		int obsSide = 0;
		float freeSpace = 0;

		if (SelectedLevelScript.selectedLevel == 1) 
		{
			obsDist = obstDistanceLvl1[obstacleIndex];
			obsAmount = obstAmountLvl1[obstacleIndex];
			obsSide = obstSideLvl1[obstacleIndex];
			freeSpace = (0.1f+0.6f*(obsAmount / 100)) * BackgroundScript.stage_bounds.size.x;
		}
		else if (SelectedLevelScript.selectedLevel == 2) 
		{
			obsDist = obstDistanceLvl2[obstacleIndex];
			obsAmount = obstAmountLvl2[obstacleIndex];
			obsSide = obstSideLvl2[obstacleIndex];
			freeSpace = (0.1f + 0.5f * (obsAmount / 100)) * BackgroundScript.stage_bounds.size.x;
		}
		else if (SelectedLevelScript.selectedLevel == 3) 
		{
			obsDist = obstDistanceLvl3[obstacleIndex];
			obsAmount = obstAmountLvl3[obstacleIndex];
			obsSide = obstSideLvl3[obstacleIndex];
			freeSpace = (0.1f + 0.45f * (obsAmount / 100)) * BackgroundScript.stage_bounds.size.x;
		}
		else if (SelectedLevelScript.selectedLevel == 4) 
		{
			obsDist = obstDistanceLvl4[obstacleIndex];
			obsAmount = obstAmountLvl4[obstacleIndex];
			obsSide = obstSideLvl4[obstacleIndex];
			freeSpace = (0.1f + 0.45f * (obsAmount / 100)) * BackgroundScript.stage_bounds.size.x;
		}
		else if (SelectedLevelScript.selectedLevel == 5) 
		{
			obsDist = obstDistanceLvl5[obstacleIndex];
			obsAmount = obstAmountLvl5[obstacleIndex];
			obsSide = obstSideLvl5[obstacleIndex];
			freeSpace = (0.1f + 0.40f * (obsAmount / 100)) * BackgroundScript.stage_bounds.size.x;
		}

		if (SelectedLevelScript.selectedLevel == 1 && iteration < 1 && obstacleIndex < 40) 
		{
			if (freeSpace < 4.5f)
				freeSpace = 4.5f;

		}
		else if (iteration > 3) 
		{
			if (freeSpace < 3f)
					freeSpace = 3f;
		}
		else 
		{
			if (freeSpace < 4f)
				freeSpace = 4f;
		}

		float max_speed = CarScript.getMaxSpeed();

		if (SelectedLevelScript.selectedLevel == 1) 
		{
			max_speed = 250 + CarScript.score / 2.0f;

			if (max_speed > 400)
					max_speed = 400;
		}
		else if (SelectedLevelScript.selectedLevel == 2) 
		{
			max_speed = 300 + CarScript.score / 2.0f;
			
			if (max_speed > 450)
				max_speed = 450;
		}
		else if (SelectedLevelScript.selectedLevel == 3) 
		{
			max_speed = 360 + CarScript.score / 2.0f;
			
			if (max_speed > 500)
				max_speed = 500;
		}
		else if (SelectedLevelScript.selectedLevel == 4) 
		{
			max_speed = 420 + CarScript.score;
			
			if (max_speed > 600)
				max_speed = 600;
		}
		else if (SelectedLevelScript.selectedLevel == 5) 
		{
			max_speed = 510 + CarScript.score;
			
			if (max_speed > 700)
				max_speed = 700;
		}
		CarScript.setMaxSpeed (max_speed);

		float x_pos;

		if (obsSide == 0) {
			x_pos = BackgroundScript.stage_bounds.max.x - freeSpace - newObstacle.collider2D.bounds.size.x/2;
		} 
		else 
		{
			x_pos = BackgroundScript.stage_bounds.min.x+freeSpace+newObstacle.collider2D.bounds.size.x/2;
		}

		float y_space = obsDist / 12f;

		if (y_space < 4.5f)
			y_space = 4.5f;

		float y_pos = prevY+y_space;

		if (obstacleIndex == 0)
			y_pos += 4;
		newObstacle.transform.position = new Vector3(x_pos,y_pos,0);

		obstacleIndex++;
		obstacleCount++;

		if (obstacleIndex > 99)
		{
			obstacleIndex = 0;
			iteration++;
		}
			

	}
Пример #29
0
 private void Start()
 {
     scoreScript = FindObjectOfType <ScoreScript>();
     moveScript  = FindObjectOfType <MoveScript>();
     carScript   = FindObjectOfType <CarScript>();
 }
Пример #30
0
 private void Start()
 {
     carScript         = FindObjectOfType <CarScript>();
     infiniScoreScript = FindObjectOfType <InfiniScoreScript>();
 }
Пример #31
0
 // Start is called before the first frame update
 void Start()
 {
     _car = GetComponent <CarScript>();
     _car.RegisterController(this);
 }