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?