Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial
Lucas Skinner
2,064 PointsI liked the code so it would give me a message when i pressed space but its just giving me a error message
this is the message
InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings.
UnityEngine.Internal.InputUnsafeUtility.GetButtonDown (System.String buttonName) (at <f4e06d84f805445ca5ae28cb191715cf>:0)
UnityEngine.Input.GetButtonDown (System.String buttonName) (at <f4e06d84f805445ca5ae28cb191715cf>:0)
NewMonoBehaviourScript.Update () (at Assets/scripts/Player.cs:14)
1 Answer
Travis Alstrand
Treehouse TeacherHey there Lucas Skinner !
This seems to be saying that the new Input System was enabled in:
Edit → Project Settings → Player → Other Settings → Active Input Handling → “Input System Package (New)”
When “Input System Package (New)” is active, Unity disables the legacy UnityEngine.Input API.
So when the script tries to call Input.GetButtonDown("Flap"), Unity throws:
InvalidOperationException: You are trying to read Input using the UnityEngine.Input class...
First, I would double check that UnityEngine.InputSystem was not imported into your file automatically / accidentally. Without seeing the code, I'm not sure, but maybe that would trigger this error as well.
If not...
🛠 To Fix: Use the old Input system
Go to Edit → Project Settings → Player → Other Settings
Find Active Input Handling
Change it to “Input Manager (Old)” or "Both"
Click Save and restart the editor
This should make Input.GetButtonDown() work again.
If this was something that wasn't changed by you personally, please let me know. If Unity is having this as a new default setting in new projects I'll need to write some warnings in the Teacher's Notes 👍