Trigger Canvas UI with Collider? C# Help!
All I want is for my Canvas to show when I walk into a collider, and disappear when I walk out of it! Why is this not working...
I'm new to coding and most of the the things I find online people say work, but when I try it, it doesn't work for me...
Here is my code (c#) (I found this somewhere else) :
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using UnityEngine.Events;
Public Canvas Canvas1;
Void OnTriggerEnter(collider :Collider)
{
myCanvas.enabled = true;
}
Void OnTriggerExit()
{
myCanvas.enabled = false;
}
When I put this in it says (6, 21) Parsing error.
Answer by Zoogyburger · Apr 20, 2016 at 04:23 AM
Change your script to this:
private Canvas myCanvas;
// Use this for initialization
void Start () {
myCanvas = GetComponent<Canvas>();
}
void OnTriggerEnter (Collision other)
{
myCanvas.enabled = true;
}
void OnTriggerExit (){
{
myCanvas.enabled = false;
}
}
I know this is old but just so people who gets here knows: Passing "Collision other" as a parameter to OnTriggerEnter isn't mandatory, and in this case it's useless. You didn't pass it to OnTriggerExit because you don't need to know which collider is exiting. Just do the same in OnTriggerEnter:
void OnTriggerEnter()
{
myCanvas.enabled = true;
}
Your answer
Follow this Question
Related Questions
Hotbar appears when a certain gameobject is selected? 1 Answer
Certain scripts that are attached does not work after build, scene change and closing unity 0 Answers
C# - Canvas UI addListener in code is not working 1 Answer
UI penetration through objects. 1 Answer
Use a canvas prefab multiple times at the same time 0 Answers