Need enemy to stop at spotlight flash
What i mean by that, i have a script that a spotlight can be flashed over and over again, i want the AI to teleport away once i use the spotlight flash, is there a script that can help? Please, and thanks!
Answer by Dibbie · Jun 13, 2016 at 12:34 PM
"Teleport away", do you mean be removed from your game completely? IE: That enemy is destroyed?
If so, then you can use a trigger. Put a box collider (or collider of your choice) on your enemy, and give it a Rigidbody (if your game is 2D, these would be a 2D box collider, and 2D Rigidbody)
Make sure your light also has a Rigidbody and some type of collider, though youll probably want to disable "use gravity" on the light.
In your AI's script, you would write whatever event you want your AI to following, in the OnTriggerEnter.
//C#
void OnTriggerEnter(Collision coll){
if(coll.gameObject.name.contains("Spotlight")){
Destroy(this.gameObject);
}
}
This would be "OnTriggerEnter2D" and "Collision2D" if your game is a 2D game using sprites instead of game objects.
If youd like the enemy to simply just move away from the light instantly, instead of "Destroy" you could just change its position this.transform.position = new Vector3(100,200,300);
, and if you are wanting the AI to simply stop dead in its tracks when it interacts with the light, you would set the AI's movement speed to 0 or have him move in the opposite direction at the same speed he is currently moving, but that all depends how you setup your AI's movement.
Your answer
Follow this Question
Related Questions
Log In code, if done correctly, Load another scene. 0 Answers
Working Computer UI. 0 Answers
How To Show a Question UI Canvas After Collider ? 1 Answer
not run app again when read nfc tag 0 Answers
Help, Losing lives too easily 1 Answer