- Home /
resetting object on collision
Hey guys, i'm new to coding and i've been trying to make a pong game for an assignment. I'm needed to reset the position of the ball once either player has scored a point, the simplest way of doing this is to make a cube behind each player, (outside of camera view) and once a point is scored, AKA; ball has collided with the cube, it'll reset. However i don't really know how to execute it. Any sort of help would be greatly appreciated!
Thanks!
p.s. I'm using C#
Answer by Srki94 · Oct 13, 2014 at 09:34 AM
Hi there ! You can have an invisible object on scene and use it's position to place the ball on that spot once the player scores the point.
Place an object on scene and in Inspector disable it's renderer. Object will still be there in world but only not visible to camera. Other way to hide it is to move it to another layer that camera doesn't see.
Once you do this you have to check when player scores. I assume you already did this but let's say that you have an trigger zone (which you can make by placing an object, disabling it's renderer and then ticking "Is trigger" in collider component). Once ball hits that trigger zone you can call reset function which will reset the ball.
To move the ball you can simply set transform.position of ball to transform.position of destination.
This is just an example script that works with 2 objects on scene :
var gameobjec : GameObject;
function Start () {
}
function Update () {
if (Input.GetKeyDown ("space")){
transform.position = gameobjec.transform.position;
}
}
Where gameobjec is set in inspector to any other gameObject on scene.
Good luck!
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Player lives script help 1 Answer
My player magically disappears after level restart. 2 Answers
Changing Axis to Buttons 2 Answers
UDP implementation in Unity, unable to send to two different machines 0 Answers