- Home /
Controller Collision Load Scene
Hi guys sorry for bothering again but i really cant figure out what is wrong with this script for hours.Heres my script.i need it to load a level when i colide with a cube.I turned on rigidbody with kinematic and put in a box collider with Is Trigger On but it still doesnt work.
#pragma strict
function OnControllerColliderHit (hit : ControllerColliderHit)
{
if(hit.gameObject.tag == "Player")
Application.LoadLevel(1);
}
Answer by yigites · Jun 10, 2014 at 07:23 AM
You can use OnTriggerEnter for isTrigger enabled objects.
function OnTriggerEnter(hit : Collider)
{
if(hit.gameObject.tag == "Player")
{
Application.LoadLevel(1);
}
}
or OnCollisionEnter for checking if colliders touching each other.
function OnCollisionEnter(hit : Collider)
{
if(hit.gameObject.tag == "Player")
{
Application.LoadLevel(1);
}
}
Answer by SHG · Jun 10, 2014 at 07:28 AM
var level : String = "LevelWhatever";
var waittime : int;
function OnTriggerEnter (other : Collider) {
yield WaitForSeconds (waittime);
Application.LoadLevel(level);
}
so all you need to do is have an object with a collider, make sure its a trigger, then apply this javascript here onto that object, and you'll be able to edit what level you want to load and the wait time before, if you don't want the level to load immediately without having to go into monodevelop. Cool, huh?
Thanks but how do i make it so that it can only loadscene when collided with the player only. I tried If (GameObject.tag == "player")
But it doesnt work
You can check if collided object tag is player inside the function
if(other.gameObject.tag == "Player")
{
Application.LoadLevel(1);
}
Your answer
Follow this Question
Related Questions
Load New Scene After Player Death? 0 Answers
Load New Scene On Collision. 1 Answer
How do make a projectile that pushes its target when it hits? 2 Answers
How to hit objects in VR 1 Answer
Load Different Stages 1 Answer