Ok so i need some help here, i’m trying to simulate underwater effects, so i placed the water layer with the mesh collider and isTrigger set to true, now the thing is i’m using this script:
void OnTriggerEnter (Collider myTrigger)
{
Debug.Log("Trigger!!");
if (myTrigger.gameObject.name == "Player")
{
/*Debug.Log("Player.y+1 "+myTrigger.transform.position.y+1);
Debug.Log("_location "+_location);
Debug.Log("Water y "+_water.transform.position.y);*/
if (_location == "Outside") {
if (myTrigger.transform.position.y + 1 > _water.transform.position.y) {
this._location = "Inside";
Debug.Log("ENTERING WATER!");
fog = true; RenderSettings.fog = fog;
RenderSettings.fogColor = fogColor;
RenderSettings.fogDensity = fogDensity;
RenderSettings.skybox = skybox;
}
}else {
if (myTrigger.transform.position.y + 1 < _water.transform.position.y) {
this._location = "Outside";
Debug.Log("OUT OF THE WATER!");
fog = false;
RenderSettings.fog = fog;
}
}
}
}
Ok so here is what happens, i enter the water and therefore activate the trigger, everything works fine, then when i exit the water also the script works fine… THEN and after this point the trigger doesn´t work at all its like the trigger is activated just once… any help on this?