- Home /
Change Boolean with collision problem
So I'm new to unity but I thought I was understanding it a decent amount for how long I've been using it but this is completely stumping me. I've been on this (what seems should be a very simple function) for most of last night and today. I have tried so many different ways but none of them work.
What Im trying to do is detect when a CPU player reaches my base and simply turn a false boolean true. Well the CPU player has a character collider which won collide with a the box collider on the base so I made a cube gameobject and set it as a child to the CPU player. Right now its set to a box collider with isTrigger true, but I've also tried giving it a rigid body. Right now the script is in the CPU player but I've also tried giving the cube its own script. Like I said, I've tried many ways and nothing seems to work.
This is what I have now...
var onBase = false;
function OnTriggerStay(collision : Collider)
{
if(collision.gameObject.tag == "base")
{
onBase = true;
}
}
Answer by janleo500 · Mar 14, 2013 at 08:23 PM
You Must call the player tag "base" not the actual collider from the base it self. Then it should work out I think. And if you want to turn you're boolean back to false you need to make a function OnTriggerExit. Hope It works.
Your answer
![](https://koobas.hobune.stream/wayback/20220613094307im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Terrain collision problem 1 Answer
Collision Enter one of the objects ? 1 Answer
How to detect child object collisions on parent 3 Answers
Efficient generation of 2d polygon collider 0 Answers
Collission and Trigger on Same object 0 Answers