Quantcast
Channel: Questions in topic: "addforce"
Viewing all articles
Browse latest Browse all 1264

Object doesn't stop moving OnCollisionEnter

$
0
0
Hi! in my script i am instantiating the prefab at random assign spawn, when it instantiate prefab , i addforce to move it toward my player, it works ... on collision i stop creating instantiating, it works but what i want is to stop the moving instantiated prefab clone...... i tried different techniques but it doesn't work .... kindly help me out ... this make it move thingToMake.AddForce(Vector3(0,0,speed)); #pragma strict var timer : float = 0.0; var spawning : boolean = false; var prefab : Rigidbody; var spawn1 : Transform; var spawn2 : Transform; var spawn3 : Transform; var flag=true; var speed : int; // speed of the obstacle function Update () { /* if (flag==false){ speed=1; print(speed); }*/ //check if spawning at the moment, if not add to timer if(!spawning){ timer += Time.deltaTime; } //when timer reaches 2 seconds, call Spawn function if(timer >= 1){ if (flag){ //speed =-500; Spawn(); } } } function Spawn(){ //set spawning to true, to stop timer counting in the Update function spawning = true; //reset the timer to 0 so process can start over timer = 0; //select a random number, inside a maths function absolute command to ensure it is a whole number var randomPick : int = Mathf.Abs(Random.Range(1,4)); //create a location 'Transform' type variable to store one of 3 possible locations declared at top of script var location : Transform; //check what randomPick is, and select one of the 3 locations, based on that number if(randomPick == 1){ location = spawn1; Debug.Log("Chose pos 1"); } else if(randomPick == 2){ location = spawn2; Debug.Log("Chose pos 2"); } else if(randomPick == 3){ location = spawn3; Debug.Log("Chose pos 3"); } //create the object at point of the location variable var thingToMake : Rigidbody = Instantiate(prefab, location.position, location.rotation); thingToMake.AddForce(Vector3(0,0,speed)); // thingToMake.transform.Translate(Vector3.forward*Time.deltaTime*speed); // yield WaitForSeconds(5); // Destroy(thingToMake.gameObject); // //halt script for 1 second before returning to the start of the process // yield WaitForSeconds(1); //set spawning back to false so timer may start again spawning = false; } function OnCollisionEnter(movement: Collision){ if (movement.gameObject.tag=="Hardle"){ // thingToMake.AddForce(Vector3(0,0,speed)); // transform.position= Vector3(39.90576,18.292813,-3.095224); // print ("Touch-Movement"); //speed=0; // Time.timeScale= 0.0f; if(flag){ flag = false; } } }

Viewing all articles
Browse latest Browse all 1264

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>