static void Main(string[] args) { Dictionary<Guid, string> foundSticks = Joystick.GetAllJoysticks(); foreach (KeyValuePair<Guid, string> pair in foundSticks) { if (pair.Value == "SymProjects JC32") { localStick = new Joystick(pair.Key); Console.WriteLine(String.Format("JoyStick: {0} {1}", pair.Key.ToString("b"), pair.Value)); localStick.ButtonDown += localStick_ButtonDown; Console.WriteLine("Starting Joystick Timer."); joystickPollTimer = new Timer(JoystickPollTimerCallback, 1, 1000, 10); } } iRTVOConnection.ClientConnectionEstablished += iRTVOConnection_ClientConnectionEstablished; iRTVOConnection.ProcessMessage += iRTVOConnection_ProcessMessage; if (!iRTVOConnection.StartClient("192.168.178.27", 17198, "VR")) { Console.WriteLine("Could not connect to server"); return; } Console.WriteLine("Press enter to close ..."); Console.ReadLine(); iRTVOConnection.Close(); iRTVOConnection.Shutdown(); if (localStick != null) { joystickPollTimer.Dispose(); localStick = null; } }
static void localStick_ButtonDown(int ButtonNumber, Joystick joystick) { int curCam = 0; int CurDriver = 0; Console.WriteLine("ButtonDown " + ButtonNumber); switch (ButtonNumber) { case 7: iRTVOConnection.BroadcastMessage("BUTTON" , FindButton("Standings")); break; case 14: iRTVOConnection.BroadcastMessage("BUTTON" , FindButton("Ticker")); break; case 13: iRTVOConnection.BroadcastMessage("BUTTON" , FindButton("Fastest Lap")); break; case 27: { // Exiting CurDriver = -1; break; } case 28: { // ME CurDriver = FindDriver("Ulrich Strauss3"); break; } case 31: { // LEADEER CurDriver = -2; break; } case 26: { // TV1 curCam = FindCamera("TV1"); break; } case 29: { // C**K curCam = FindCamera("Cockpit"); break; } case 30: { // GYRO curCam = FindCamera("RandomTV"); break; } default: break; } if ( curCam != 0) iRTVOConnection.BroadcastMessage("CAMERA" , curCam); if ( CurDriver != 0) iRTVOConnection.BroadcastMessage("DRIVER" , CurDriver); }