It works now, but I'll gratefully accept feedback to make it smoother (especially the number engine). Also if you're in Editor mode this will only work in Full screen. You're welcome to borrow any part of the code as long as you credit me.
Thanks to @Evrick-14 for inspiration for the number engine (but I didn't borrow any of his code), and to @-Blue-O for the concept for the joystick.