- Home /
Disabling a GameObject via keyboard
Hello fellow game devs! :)
I am trying to get a script working which disables a game Object if i press a certain button on the keyboard.
f.e
if(Input.GetKey("1"))
{
spotlight1.enabled = !spotlight1.enabled;
}
it is not working :/
Please use the 10101 button up top to code-itize your code =).
Answer by Mike 3 · Mar 29, 2011 at 01:57 PM
Your need to use GetKeyDown or GetKeyUp, otherwise it'll call your toggle every frame
But now the compiler is complaining about my variables...can i actually manipulate my game objects by calling them with the names i gave em? (spot1, spot2, etc)
You could use something like var spot1 = GameObject.Find("spotlight1").light; spot1.enabled = !spot1.enabled;
i used directional lights and named em spot1 - spot5 what i want to do is
if(Input.Get$$anonymous$$eyDown("1")) { spot1.enabled = !spot1.enabled; }
Answer by h4wkeye · Mar 29, 2011 at 02:19 PM
Nevermind, guys.
here's the solution. :O
var target1 = GameObject.Find("spot1").light; var target2 = GameObject.Find("spot2").light; var target3 = GameObject.Find("spot3").light; var target4 = GameObject.Find("spot4").light; var target5 = GameObject.Find("spot5").light;
function Update() { if(Input.GetKeyDown("1")) { target1.enabled = !target1.enabled; } if(Input.GetKeyDown("2")) { target2.enabled = !target2.enabled; } if(Input.GetKeyDown("3")) { target3.enabled = !target3.enabled; } if(Input.GetKeyDown("4")) { target4.enabled = !target4.enabled; } if(Input.GetKeyDown("5")) { target5.enabled = !target5.enabled; } }
Your answer
Follow this Question
Related Questions
Horror Game AI script recommendation? 1 Answer
FPSMouseScript.js 1 Answer
Bullet Fire script not working 1 Answer
[Closed] MainMenu Script error 2 Answers
a strange problem ? 1 Answer