/// <summary>
		/// This function is used AFTER the keyboard SDK have been started!
		/// </summary>
		/// <param name="color">The color(System.Drawing.Color) you want</param>
		/// <param name="key">The CorsairKeyboardId key</param>
		#endregion
		public static void setKeyColor(Color color, CorsairKeyboardKeyId key){
			try{
				keyboard[key].Led.Color = color;
			}catch(Exception e){
				Program.errorWrite("Failed to update key, error msg: "+e.Message);
			}
		}
 private void SetOneKey(CorsairKeyboardKeyId localKey, Color color)
 {
     if (keyboard != null && keyboard[localKey] != null && keyboard[localKey].Led != null)
     {
         keyboard[localKey].Led.Color = color;
     }
 }
Beispiel #3
0
        public bool UpdateDevice(Dictionary <DeviceKeys, Color> keyColors, bool forced = false)
        {
            CorsairKeyboardKeyId keyindex = CorsairKeyboardKeyId.Invalid;

            try
            {
                foreach (KeyValuePair <DeviceKeys, Color> key in keyColors)
                {
                    CorsairKeyboardKeyId localKey = ToCorsair(key.Key);

                    if (localKey == CorsairKeyboardKeyId.Invalid && key.Key == DeviceKeys.Peripheral)
                    {
                        SendColorToPeripheral((Color)(key.Value), forced);
                    }
                    else if (localKey != CorsairKeyboardKeyId.Invalid)
                    {
                        SetOneKey(localKey, (Color)(key.Value));
                    }

                    keyindex = localKey;
                }

                SendColorsToKeyboard(forced);
                return(true);
            }
            catch (Exception e)
            {
                Global.logger.LogLine("Corsair device, error when updating device. Error: " + e, Logging_Level.Error);
                Console.WriteLine(e);
                return(false);
            }
        }
		/// <summary>
		/// This function is used AFTER the keyboard SDK have been started!
		/// </summary>
		/// <param name="color">The color(System.Drawing.Color) you want</param>
		/// <param name="key">The CorsairKeyboardId key</param>
		/// <param name="showError">If false, then the program won't write the error code. Defaults to true</param>
		public static void setKeyColor(Color color, CorsairKeyboardKeyId key){
			//Console.WriteLine(color.ToString()+" : "+key);
			try{
				keyboard[key].Led.Color = color;
			}catch(Exception e){
				Program.errorWrite("Failed to update key, error msg: "+e.Message);
			}
		}
 /// <summary>
 /// This function is used AFTER the keyboard SDK have been started!
 /// </summary>
 /// <param name="color">The color(System.Drawing.Color) you want</param>
 /// <param name="key">The CorsairKeyboardId key</param>
 #endregion
 public static void setKeyColor(Color color, CorsairKeyboardKeyId key)
 {
     try{
         keyboard[key].Led.Color = color;
     }catch (Exception e) {
         Program.errorWrite("Failed to update key, error msg: " + e.Message);
     }
 }
Beispiel #6
0
            public Mole(int x, int y)
            {
                X    = x;
                Y    = y;
                Life = 30;

                Key = GameMap[y, x];
            }
		public static void setKeyColors(Color color, CorsairKeyboardKeyId[] keys){
			try{
				foreach(CorsairKeyboardKeyId tempKey in keys){
					keyboard[tempKey].Led.Color = color;
				}
			}catch(Exception e){
				Program.errorWrite("Failed to update keyGroup, error msg: "+e.Message);
			}
		}
Beispiel #8
0
        private void SetOneKey(CorsairKeyboardKeyId localKey, Color color)
        {
            //Apply and strip Alpha
            color = Color.FromArgb(255, Utils.ColorUtils.MultiplyColorByScalar(color, color.A / 255.0D));

            if (keyboard != null && keyboard[localKey] != null && keyboard[localKey].Led != null)
            {
                keyboard[localKey].Led.Color = color;
            }
        }
Beispiel #9
0
        public void SetLed(CorsairKeyboardKeyId keyId, int r, int g, int b)
        {
            var key = Keyboard[keyId];

            if (key == null)
            {
                return;
            }
            key.Led.Color = Color.FromArgb(r, g, b);
        }
		/// <summary>
		/// <para>Opens and reads the configuration file, and returns the array</para>
		/// <para>with CorsairKeyboardKeyId:s</para>
		/// </summary>
		/// <param name="filename">the config file filename</param>
		/// <returns>Returns the ammunation keys</returns>
		public static CorsairKeyboardKeyId[] readAmmoKeysCorsair(string filename){
			CorsairKeyboardKeyId[] defaultKeys = {CorsairKeyboardKeyId.D1, CorsairKeyboardKeyId.D2,
			CorsairKeyboardKeyId.D3, CorsairKeyboardKeyId.D4, CorsairKeyboardKeyId.D5,
			CorsairKeyboardKeyId.D6, CorsairKeyboardKeyId.D7}; // If we couldn't read a key, replace it with the default

			XmlDocument doc = new XmlDocument(); // New XmlDocument so we can read the config file
			doc.Load(filename); // Load the xml file, with the string from the main program

			List<XmlNode> list = new List<XmlNode>(); // Create a list we can store the xml nodes in

			#region Create all the XML nodes!
			XmlNode weapon_node0 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_0");
			XmlNode weapon_node1 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_1");
			XmlNode weapon_node2 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_2");
			XmlNode weapon_node3 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_3");
			XmlNode weapon_node4 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_4");
			XmlNode weapon_node5 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_5");
			XmlNode weapon_node6 = doc.DocumentElement.SelectSingleNode("/root/ammunitionKeysCorsair/weapon_6");
			#endregion

			List<XmlNode> nodeList = new List<XmlNode>(); // To make the searching simple, add the nodes to a list to enumerate thru
			nodeList.Add(weapon_node0); // BEGIN THE TRANSACTION!
			nodeList.Add(weapon_node1);
			nodeList.Add(weapon_node2);
			nodeList.Add(weapon_node3); // Dum di dum... How's your day?
			nodeList.Add(weapon_node4);
			nodeList.Add(weapon_node5);
			nodeList.Add(weapon_node6); // END THE TRANSACTON!

			CorsairKeyboardKeyId[] keyList = new CorsairKeyboardKeyId[7]; // Create an array matching what we can display
			for(int i=0; i<7; i++){ // To enumerate througt the nodes
				try{
					keyList[i] = (CorsairKeyboardKeyId)Enum.Parse(typeof(CorsairKeyboardKeyId), nodeList[i].InnerText); // insert custom key into the array/list, converted to a CorsairKeyboardKeyId
					Console.WriteLine(i+" : "+keyList[i]);
				}catch(Exception){ // If we fail to load, this will be triggered. Also if something else goes wrong... but is shouldn't happen.
					Program.errorWrite("Could not load a value from \"weapon_"+i+"button_corsair! Reverting to default key!"); // Notifying the user of the xml error.
					if(i >= defaultKeys.Length) //Grabs the last default key if list lenght is more than defaultKeys array lenght.
						keyList[i] = defaultKeys[defaultKeys.Length-1]; // If I am right, this will get the last default key.
					else// Grabs the default key if list lenght is less then defaultKeys array lenght.
						keyList[i] = defaultKeys[i]; // Grabs the key.
				}
			}
			return keyList; // Since we arn't a void method, we need to return the array.
		}
Beispiel #11
0
        public override void GetKeyPress(KeyEventArgs e)
        {
            base.GetKeyPress(e);
            Console.WriteLine("you hit a key" + e.KeyCode + " " + e.KeyValue);
            CorsairKeyboardKeyId KeyPressed = CorsairKeyboardKeyId.Keypad0;


            // convery form Key to CorsairKeyboardKeyId
            if (e.KeyCode.Equals(Keys.Q))
            {
                KeyPressed = CorsairKeyboardKeyId.Q;
            }
            if (e.KeyCode.Equals(Keys.W))
            {
                KeyPressed = CorsairKeyboardKeyId.W;
            }
            if (e.KeyCode.Equals(Keys.E))
            {
                KeyPressed = CorsairKeyboardKeyId.E;
            }
            if (e.KeyCode.Equals(Keys.R))
            {
                KeyPressed = CorsairKeyboardKeyId.R;
            }
            if (e.KeyCode.Equals(Keys.T))
            {
                KeyPressed = CorsairKeyboardKeyId.T;
            }
            if (e.KeyCode.Equals(Keys.Y))
            {
                KeyPressed = CorsairKeyboardKeyId.Y;
            }
            if (e.KeyCode.Equals(Keys.U))
            {
                KeyPressed = CorsairKeyboardKeyId.U;
            }
            if (e.KeyCode.Equals(Keys.I))
            {
                KeyPressed = CorsairKeyboardKeyId.I;
            }
            if (e.KeyCode.Equals(Keys.O))
            {
                KeyPressed = CorsairKeyboardKeyId.O;
            }
            if (e.KeyCode.Equals(Keys.P))
            {
                KeyPressed = CorsairKeyboardKeyId.P;
            }
            if (e.KeyCode.Equals(Keys.A))
            {
                KeyPressed = CorsairKeyboardKeyId.A;
            }
            if (e.KeyCode.Equals(Keys.S))
            {
                KeyPressed = CorsairKeyboardKeyId.S;
            }
            if (e.KeyCode.Equals(Keys.D))
            {
                KeyPressed = CorsairKeyboardKeyId.D;
            }
            if (e.KeyCode.Equals(Keys.F))
            {
                KeyPressed = CorsairKeyboardKeyId.F;
            }
            if (e.KeyCode.Equals(Keys.G))
            {
                KeyPressed = CorsairKeyboardKeyId.G;
            }
            if (e.KeyCode.Equals(Keys.H))
            {
                KeyPressed = CorsairKeyboardKeyId.H;
            }
            if (e.KeyCode.Equals(Keys.J))
            {
                KeyPressed = CorsairKeyboardKeyId.J;
            }
            if (e.KeyCode.Equals(Keys.K))
            {
                KeyPressed = CorsairKeyboardKeyId.K;
            }
            if (e.KeyCode.Equals(Keys.L))
            {
                KeyPressed = CorsairKeyboardKeyId.L;
            }
            if (e.KeyCode.Equals(Keys.OemSemicolon))
            {
                KeyPressed = CorsairKeyboardKeyId.SemicolonAndColon;
            }
            if (e.KeyCode.Equals(Keys.Z))
            {
                KeyPressed = CorsairKeyboardKeyId.Z;
            }
            if (e.KeyCode.Equals(Keys.X))
            {
                KeyPressed = CorsairKeyboardKeyId.X;
            }
            if (e.KeyCode.Equals(Keys.C))
            {
                KeyPressed = CorsairKeyboardKeyId.C;
            }
            if (e.KeyCode.Equals(Keys.V))
            {
                KeyPressed = CorsairKeyboardKeyId.V;
            }
            if (e.KeyCode.Equals(Keys.B))
            {
                KeyPressed = CorsairKeyboardKeyId.B;
            }
            if (e.KeyCode.Equals(Keys.N))
            {
                KeyPressed = CorsairKeyboardKeyId.N;
            }
            if (e.KeyCode.Equals(Keys.M))
            {
                KeyPressed = CorsairKeyboardKeyId.M;
            }
            if (e.KeyCode.Equals(Keys.Oemcomma))
            {
                KeyPressed = CorsairKeyboardKeyId.CommaAndLessThan;
            }
            if (e.KeyCode.Equals(Keys.OemPeriod))
            {
                KeyPressed = CorsairKeyboardKeyId.PeriodAndBiggerThan;
            }
            if (e.KeyCode.Equals(Keys.OemQuestion))
            {
                KeyPressed = CorsairKeyboardKeyId.SlashAndQuestionMark;
            }

            if (Array.IndexOf(RedKeys, KeyPressed) != -1)
            {
                CheckKeyPattern('r');
            }
            if (Array.IndexOf(GreenKeys, KeyPressed) != -1)
            {
                CheckKeyPattern('g');
            }
            if (Array.IndexOf(BlueKeys, KeyPressed) != -1)
            {
                CheckKeyPattern('b');
            }
            if (Array.IndexOf(YellowKeys, KeyPressed) != -1)
            {
                CheckKeyPattern('y');
            }
        }
Beispiel #12
0
 /// <summary>
 /// Initializes a new instance of the <see cref="RectangleKeyGroup"/> class.
 /// </summary>
 /// <param name="keyboard">The keyboard this keygroup belongs to.</param>
 /// <param name="fromKey">They ID of the first key to calculate the rectangle of this keygroup from.</param>
 /// <param name="toKey">They ID of the second key to calculate the rectangle of this keygroup from.</param>
 /// <param name="minOverlayPercentage">(optional) The minimal percentage overlay a key must have with the <see cref="Rectangle" /> to be taken into the keygroup. (default: 0.5f)</param>
 /// <param name="autoAttach">(optional) Specifies whether this group should be automatically attached or not. (default: true)</param>
 public RectangleKeyGroup(CorsairKeyboard keyboard, CorsairKeyboardKeyId fromKey, CorsairKeyboardKeyId toKey, float minOverlayPercentage = 0.5f, bool autoAttach = true)
     : this(keyboard, keyboard[fromKey], keyboard[toKey], minOverlayPercentage, autoAttach)
 { }
Beispiel #13
0
        /// <summary>
        /// Intial setup of keygroups using the keyboard provided.
        /// </summary>
        /// <param name="keyboard"></param>
        /// <param name="useNumpad"></param>
        public static void setupKeyGroups(CorsairKeyboard keyboard, bool useNumpad)
        {
            try
            {
                WASD = new ListKeyGroup(keyboard, keyboard['W'],
                    keyboard['A'],
                    keyboard['S'],
                    keyboard['D']);
                
                healthFunction = new ListKeyGroup(keyboard, CorsairKeyboardKeyId.F1,
                    CorsairKeyboardKeyId.F2,
                    CorsairKeyboardKeyId.F3,
                    CorsairKeyboardKeyId.F4,
                    CorsairKeyboardKeyId.F5,
                    CorsairKeyboardKeyId.F6);
                armorFunction = new ListKeyGroup(keyboard, CorsairKeyboardKeyId.F7,
                    CorsairKeyboardKeyId.F8,
                    CorsairKeyboardKeyId.F9,
                    CorsairKeyboardKeyId.F10,
                    CorsairKeyboardKeyId.F11,
                    CorsairKeyboardKeyId.F12);

                //don't initilize the numpad groups if the keyboard doesn't have a numpad(K65).
                if (useNumpad)
                {
					numpad = new RectangleKeyGroup(keyboard, CorsairKeyboardKeyId.NumLock, CorsairKeyboardKeyId.KeypadEnter, 1.0f, true);
					
                    numpadDigital = new List<ListKeyGroup>();
                    for (int i = 0; i < 10; ++i)
                    {
                        numpadDigital.Add(null);
                    }

                    numpadDigital[1] = new ListKeyGroup(keyboard,
                        CorsairKeyboardKeyId.NumLock,
                        CorsairKeyboardKeyId.KeypadSlash,
                        CorsairKeyboardKeyId.Keypad8,
                        CorsairKeyboardKeyId.Keypad5,
                        CorsairKeyboardKeyId.Keypad2,
                        CorsairKeyboardKeyId.Keypad0,
                        CorsairKeyboardKeyId.KeypadPeriodAndDelete);

                    var numpad2Keys = new CorsairKeyboardKeyId[] { CorsairKeyboardKeyId.NumLock,
                    CorsairKeyboardKeyId.KeypadSlash,
                    CorsairKeyboardKeyId.KeypadAsterisk,
                    CorsairKeyboardKeyId.Keypad9,
                    CorsairKeyboardKeyId.Keypad6,
                    CorsairKeyboardKeyId.Keypad5,
                    CorsairKeyboardKeyId.Keypad4,
                    CorsairKeyboardKeyId.Keypad1,
                    CorsairKeyboardKeyId.Keypad0,
                    CorsairKeyboardKeyId.KeypadPeriodAndDelete};
                    numpadDigital[2] = new ListKeyGroup(keyboard, numpad2Keys);

                    numpadDigital[3] = new ListKeyGroup(keyboard, numpad2Keys);
                    numpadDigital[3].AddKey(CorsairKeyboardKeyId.Keypad3);
                    numpadDigital[3].RemoveKey(CorsairKeyboardKeyId.Keypad1);

                    var numpad4Keys = new CorsairKeyboardKeyId[] { CorsairKeyboardKeyId.NumLock,
                    CorsairKeyboardKeyId.Keypad7,
                    CorsairKeyboardKeyId.Keypad4,
                    CorsairKeyboardKeyId.Keypad5,
                    CorsairKeyboardKeyId.Keypad6,
                    CorsairKeyboardKeyId.Keypad9,
                    CorsairKeyboardKeyId.KeypadAsterisk,
                    CorsairKeyboardKeyId.Keypad3,
                    CorsairKeyboardKeyId.KeypadPeriodAndDelete};
                    numpadDigital[4] = new ListKeyGroup(keyboard, numpad4Keys);

                    numpadDigital[5] = new ListKeyGroup(keyboard, numpad2Keys);
                    numpadDigital[5].AddKey(CorsairKeyboardKeyId.Keypad7, CorsairKeyboardKeyId.Keypad3);
                    numpadDigital[5].RemoveKey(CorsairKeyboardKeyId.Keypad9, CorsairKeyboardKeyId.Keypad1);

                    numpadDigital[6] = new ListKeyGroup(keyboard, numpad2Keys);
                    numpadDigital[6].AddKey(CorsairKeyboardKeyId.Keypad3, CorsairKeyboardKeyId.Keypad7);
                    numpadDigital[6].RemoveKey(CorsairKeyboardKeyId.Keypad9);

                    var numpad7Keys = new CorsairKeyboardKeyId[] {
                    CorsairKeyboardKeyId.Keypad7,
                    CorsairKeyboardKeyId.NumLock,
                    CorsairKeyboardKeyId.KeypadSlash,
                    CorsairKeyboardKeyId.KeypadAsterisk,
                    CorsairKeyboardKeyId.Keypad9,
                    CorsairKeyboardKeyId.Keypad6,
                    CorsairKeyboardKeyId.Keypad3,
                    CorsairKeyboardKeyId.KeypadPeriodAndDelete };
                    numpadDigital[7] = new ListKeyGroup(keyboard, numpad7Keys);

                    numpadDigital[8] = new ListKeyGroup(keyboard, numpad2Keys);
                    numpadDigital[8].AddKey(CorsairKeyboardKeyId.Keypad7, CorsairKeyboardKeyId.Keypad3);

                    numpadDigital[9] = new ListKeyGroup(keyboard, numpad4Keys);
                    numpadDigital[9].AddKey(CorsairKeyboardKeyId.KeypadSlash);

                    numpadDigital[0] = new ListKeyGroup(keyboard, numpad7Keys);
                    numpadDigital[0].AddKey(CorsairKeyboardKeyId.Keypad0,
                        CorsairKeyboardKeyId.Keypad1,
                        CorsairKeyboardKeyId.Keypad4);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception in creating key groups!");
                Console.WriteLine("Message: " + ex.Message);
            }
        }
Beispiel #14
0
 public bool ContainsKey(CorsairKeyboardKeyId keyId)
 {
     return ContainsKey(Keyboard[keyId]);
 }
Beispiel #15
0
        public override void GetKeyPress(KeyEventArgs e)
        {
            base.GetKeyPress(e);
            Console.WriteLine("you hit a key" + e.KeyCode + " " + e.KeyValue);
            CorsairKeyboardKeyId KeyPressed = CorsairKeyboardKeyId.D1;

            // convery form Key to CorsairKeyboardKeyId
            // Top game row
            if (e.KeyCode.Equals(Keys.Q))
            {
                KeyPressed = CorsairKeyboardKeyId.Q;
            }
            if (e.KeyCode.Equals(Keys.W))
            {
                KeyPressed = CorsairKeyboardKeyId.W;
            }
            if (e.KeyCode.Equals(Keys.E))
            {
                KeyPressed = CorsairKeyboardKeyId.E;
            }
            if (e.KeyCode.Equals(Keys.R))
            {
                KeyPressed = CorsairKeyboardKeyId.R;
            }
            if (e.KeyCode.Equals(Keys.T))
            {
                KeyPressed = CorsairKeyboardKeyId.T;
            }
            if (e.KeyCode.Equals(Keys.Y))
            {
                KeyPressed = CorsairKeyboardKeyId.Y;
            }
            if (e.KeyCode.Equals(Keys.U))
            {
                KeyPressed = CorsairKeyboardKeyId.U;
            }
            if (e.KeyCode.Equals(Keys.I))
            {
                KeyPressed = CorsairKeyboardKeyId.I;
            }
            if (e.KeyCode.Equals(Keys.O))
            {
                KeyPressed = CorsairKeyboardKeyId.O;
            }
            if (e.KeyCode.Equals(Keys.P))
            {
                KeyPressed = CorsairKeyboardKeyId.P;
            }

            // Middle game row
            if (e.KeyCode.Equals(Keys.A))
            {
                KeyPressed = CorsairKeyboardKeyId.A;
            }
            if (e.KeyCode.Equals(Keys.S))
            {
                KeyPressed = CorsairKeyboardKeyId.S;
            }
            if (e.KeyCode.Equals(Keys.D))
            {
                KeyPressed = CorsairKeyboardKeyId.D;
            }
            if (e.KeyCode.Equals(Keys.F))
            {
                KeyPressed = CorsairKeyboardKeyId.F;
            }
            if (e.KeyCode.Equals(Keys.G))
            {
                KeyPressed = CorsairKeyboardKeyId.G;
            }
            if (e.KeyCode.Equals(Keys.H))
            {
                KeyPressed = CorsairKeyboardKeyId.H;
            }
            if (e.KeyCode.Equals(Keys.J))
            {
                KeyPressed = CorsairKeyboardKeyId.J;
            }
            if (e.KeyCode.Equals(Keys.K))
            {
                KeyPressed = CorsairKeyboardKeyId.K;
            }
            if (e.KeyCode.Equals(Keys.L))
            {
                KeyPressed = CorsairKeyboardKeyId.L;
            }
            if (e.KeyCode.Equals(Keys.OemSemicolon))
            {
                KeyPressed = CorsairKeyboardKeyId.SemicolonAndColon;
            }

            // Bottom game row
            if (e.KeyCode.Equals(Keys.Z))
            {
                KeyPressed = CorsairKeyboardKeyId.Z;
            }
            if (e.KeyCode.Equals(Keys.X))
            {
                KeyPressed = CorsairKeyboardKeyId.X;
            }
            if (e.KeyCode.Equals(Keys.C))
            {
                KeyPressed = CorsairKeyboardKeyId.C;
            }
            if (e.KeyCode.Equals(Keys.V))
            {
                KeyPressed = CorsairKeyboardKeyId.V;
            }
            if (e.KeyCode.Equals(Keys.B))
            {
                KeyPressed = CorsairKeyboardKeyId.B;
            }
            if (e.KeyCode.Equals(Keys.N))
            {
                KeyPressed = CorsairKeyboardKeyId.N;
            }
            if (e.KeyCode.Equals(Keys.M))
            {
                KeyPressed = CorsairKeyboardKeyId.M;
            }
            if (e.KeyCode.Equals(Keys.Oemcomma))
            {
                KeyPressed = CorsairKeyboardKeyId.CommaAndLessThan;
            }
            if (e.KeyCode.Equals(Keys.OemPeriod))
            {
                KeyPressed = CorsairKeyboardKeyId.PeriodAndBiggerThan;
            }
            if (e.KeyCode.Equals(Keys.OemQuestion))
            {
                KeyPressed = CorsairKeyboardKeyId.SlashAndQuestionMark;
            }

            int X = -1;
            int Y = -1;

            if (e.KeyCode.Equals(Keys.D1))
            {
                X = 0;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D2))
            {
                X = 1;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D3))
            {
                X = 2;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D4))
            {
                X = 3;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D5))
            {
                X = 4;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D6))
            {
                X = 5;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D7))
            {
                X = 6;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D8))
            {
                X = 7;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D9))
            {
                X = 8;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.D0))
            {
                X = 9;
                Y = 0;
            }
            else if (e.KeyCode.Equals(Keys.Q))
            {
                X = 0;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.W))
            {
                X = 1;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.E))
            {
                X = 2;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.R))
            {
                X = 3;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.T))
            {
                X = 4;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.Y))
            {
                X = 5;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.U))
            {
                X = 6;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.I))
            {
                X = 7;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.O))
            {
                X = 8;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.P))
            {
                X = 9;
                Y = 1;
            }
            else if (e.KeyCode.Equals(Keys.A))
            {
                X = 0;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.S))
            {
                X = 1;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.D))
            {
                X = 2;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.F))
            {
                X = 3;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.G))
            {
                X = 4;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.H))
            {
                X = 5;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.J))
            {
                X = 6;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.K))
            {
                X = 7;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.L))
            {
                X = 8;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.OemSemicolon))
            {
                X = 9;
                Y = 2;
            }
            else if (e.KeyCode.Equals(Keys.Z))
            {
                X = 0;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.X))
            {
                X = 1;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.C))
            {
                X = 2;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.V))
            {
                X = 3;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.B))
            {
                X = 4;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.N))
            {
                X = 5;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.M))
            {
                X = 6;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.Oemcomma))
            {
                X = 7;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.OemPeriod))
            {
                X = 8;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.OemQuestion))
            {
                X = 9;
                Y = 3;
            }
            else if (e.KeyCode.Equals(Keys.Escape))
            {
                WinScreen = true;
            }

            if (X != -1 && Y != -1)
            {
                //toggle key
                ToggleKey(Y, X);
                //up?
                if (Y != 0)
                {
                    ToggleKey(Y - 1, X);
                }
                //down?
                if (Y != 3)
                {
                    ToggleKey(Y + 1, X);
                }
                //left?
                if (X != 0)
                {
                    ToggleKey(Y, X - 1);
                }
                //right?
                if (X != 9)
                {
                    ToggleKey(Y, X + 1);
                }
            }
        }
Beispiel #16
0
        public static void paint_ammo(int weapon, int currentAmmo, int maxAmmo, dynamic data)
        {
            CorsairKeyboardKeyId Key1 = Program.keys[0];
            CorsairKeyboardKeyId Key2 = Program.keys[1];
            CorsairKeyboardKeyId Key3 = Program.keys[2];
            CorsairKeyboardKeyId Key4 = Program.keys[3];
            CorsairKeyboardKeyId Key5 = Program.keys[4];
            CorsairKeyboardKeyId Key6 = Program.keys[5];
            CorsairKeyboardKeyId Key7 = Program.keys[6];

            CorsairKeyboardKeyId[] FKeys = { CorsairKeyboardKeyId.F1, CorsairKeyboardKeyId.F2,  CorsairKeyboardKeyId.F3,  CorsairKeyboardKeyId.F4,
                                             CorsairKeyboardKeyId.F5, CorsairKeyboardKeyId.F6,  CorsairKeyboardKeyId.F7,  CorsairKeyboardKeyId.F8,
                                             CorsairKeyboardKeyId.F9, CorsairKeyboardKeyId.F10, CorsairKeyboardKeyId.F11, CorsairKeyboardKeyId.F12 };

            CorsairKeyboardKeyId[] gamingkeys = { CorsairKeyboardKeyId.W, CorsairKeyboardKeyId.A, CorsairKeyboardKeyId.S, CorsairKeyboardKeyId.D, CorsairKeyboardKeyId.Escape };

            CorsairKeyboardAPI.setKeyColors(team, gamingkeys);
            try{
                float health = data.player.state.health;
                health = health.remap(0, 100, 0, 120);
                CorsairKeyboardAPI.setKeyColors(Program.ColorFromHSV(health, 1, 1), FKeys);
            }catch (Exception) {}

            switch (weapon)
            {
            case -1:
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key1);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key2);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key3);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key4);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key5);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key6);
                CorsairKeyboardAPI.setKeyColor(Color.Black, Key7);
                break;

            case 0:
                if ((currentAmmo == -1 && maxAmmo == -1) || (currentAmmo == 1 && maxAmmo == 1))
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key1);
                }
                else
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 120, 0);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key1);
                }
                break;

            case 1:
                if ((currentAmmo == -1 && maxAmmo == -1) || (currentAmmo == 1 && maxAmmo == 1))
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key2);
                }
                else
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key2);
                }
                break;

            case 2:
                if ((currentAmmo != -1 && maxAmmo != -1) || (currentAmmo != 1 && maxAmmo != 1))
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key3);
                }
                else
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key3);
                }
                break;

            case 3:
                if ((currentAmmo != -1 && maxAmmo != -1) || (currentAmmo != 1 && maxAmmo != 1))
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key4);
                }
                else
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key4);
                }
                break;

            case 4:
                if ((currentAmmo != -1 && maxAmmo != -1) || (currentAmmo != 1 && maxAmmo != 1))
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key5);
                }
                else
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key5);
                }
                break;

            case 5:
                if ((currentAmmo != -1 && maxAmmo != -1) || (currentAmmo != 1 && maxAmmo != 1))
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key6);
                }
                else
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key6);
                }
                break;

            case 6:
                if ((currentAmmo != -1 && maxAmmo != -1) || (currentAmmo != 1 && maxAmmo != 1))
                {
                    float magasin = currentAmmo;
                    magasin = magasin.remap(0, maxAmmo, 0, 120);
                    CorsairKeyboardAPI.setKeyColor(Program.ColorFromHSV(magasin, 1, 1), Key7);
                }
                else
                {
                    CorsairKeyboardAPI.setKeyColor(Color.White, Key7);
                }
                break;
            }
        }
Beispiel #17
0
        public override void GetKeyPress(KeyEventArgs e)
        {
            base.GetKeyPress(e);
            Console.WriteLine("you hit a key" + e.KeyCode + " " + e.KeyValue);
            CorsairKeyboardKeyId KeyPressed = CorsairKeyboardKeyId.D1;

            // convery form Key to CorsairKeyboardKeyId
            // Top game row
            if (e.KeyCode.Equals(Keys.Q))
            {
                KeyPressed = CorsairKeyboardKeyId.Q;
            }
            if (e.KeyCode.Equals(Keys.W))
            {
                KeyPressed = CorsairKeyboardKeyId.W;
            }
            if (e.KeyCode.Equals(Keys.E))
            {
                KeyPressed = CorsairKeyboardKeyId.E;
            }
            if (e.KeyCode.Equals(Keys.R))
            {
                KeyPressed = CorsairKeyboardKeyId.R;
            }
            if (e.KeyCode.Equals(Keys.T))
            {
                KeyPressed = CorsairKeyboardKeyId.T;
            }
            if (e.KeyCode.Equals(Keys.Y))
            {
                KeyPressed = CorsairKeyboardKeyId.Y;
            }
            if (e.KeyCode.Equals(Keys.U))
            {
                KeyPressed = CorsairKeyboardKeyId.U;
            }
            if (e.KeyCode.Equals(Keys.I))
            {
                KeyPressed = CorsairKeyboardKeyId.I;
            }
            if (e.KeyCode.Equals(Keys.O))
            {
                KeyPressed = CorsairKeyboardKeyId.O;
            }
            if (e.KeyCode.Equals(Keys.P))
            {
                KeyPressed = CorsairKeyboardKeyId.P;
            }

            // Middle game row
            if (e.KeyCode.Equals(Keys.A))
            {
                KeyPressed = CorsairKeyboardKeyId.A;
            }
            if (e.KeyCode.Equals(Keys.S))
            {
                KeyPressed = CorsairKeyboardKeyId.S;
            }
            if (e.KeyCode.Equals(Keys.D))
            {
                KeyPressed = CorsairKeyboardKeyId.D;
            }
            if (e.KeyCode.Equals(Keys.F))
            {
                KeyPressed = CorsairKeyboardKeyId.F;
            }
            if (e.KeyCode.Equals(Keys.G))
            {
                KeyPressed = CorsairKeyboardKeyId.G;
            }
            if (e.KeyCode.Equals(Keys.H))
            {
                KeyPressed = CorsairKeyboardKeyId.H;
            }
            if (e.KeyCode.Equals(Keys.J))
            {
                KeyPressed = CorsairKeyboardKeyId.J;
            }
            if (e.KeyCode.Equals(Keys.K))
            {
                KeyPressed = CorsairKeyboardKeyId.K;
            }
            if (e.KeyCode.Equals(Keys.L))
            {
                KeyPressed = CorsairKeyboardKeyId.L;
            }
            if (e.KeyCode.Equals(Keys.OemSemicolon))
            {
                KeyPressed = CorsairKeyboardKeyId.SemicolonAndColon;
            }

            // Bottom game row
            if (e.KeyCode.Equals(Keys.Z))
            {
                KeyPressed = CorsairKeyboardKeyId.Z;
            }
            if (e.KeyCode.Equals(Keys.X))
            {
                KeyPressed = CorsairKeyboardKeyId.X;
            }
            if (e.KeyCode.Equals(Keys.C))
            {
                KeyPressed = CorsairKeyboardKeyId.C;
            }
            if (e.KeyCode.Equals(Keys.V))
            {
                KeyPressed = CorsairKeyboardKeyId.V;
            }
            if (e.KeyCode.Equals(Keys.B))
            {
                KeyPressed = CorsairKeyboardKeyId.B;
            }
            if (e.KeyCode.Equals(Keys.N))
            {
                KeyPressed = CorsairKeyboardKeyId.N;
            }
            if (e.KeyCode.Equals(Keys.M))
            {
                KeyPressed = CorsairKeyboardKeyId.M;
            }
            if (e.KeyCode.Equals(Keys.Oemcomma))
            {
                KeyPressed = CorsairKeyboardKeyId.CommaAndLessThan;
            }
            if (e.KeyCode.Equals(Keys.OemPeriod))
            {
                KeyPressed = CorsairKeyboardKeyId.PeriodAndBiggerThan;
            }
            if (e.KeyCode.Equals(Keys.OemQuestion))
            {
                KeyPressed = CorsairKeyboardKeyId.SlashAndQuestionMark;
            }

            //Loop over moles and look for a bit
            if (KeyPressed != CorsairKeyboardKeyId.D1)
            {
                bool HitMole = false;
                for (int i = 0; i < Moles.Count; i++)
                {
                    if (Moles[i].Key == KeyPressed)
                    {
                        Console.WriteLine("you hit a mole!");
                        HitMole         = true;
                        Moles[i].Remove = true;
                        MolesKeyGroup.RemoveKey(Moles[i].Key);
                        GameMapKeyGroup.AddKey(Moles[i].Key);

                        Score++;

                        if (Score >= 10)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F1);
                        }
                        if (Score >= 20)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F2);
                        }
                        if (Score >= 30)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F3);
                        }
                        if (Score >= 40)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F4);
                        }
                        if (Score >= 50)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F5);
                        }
                        if (Score >= 60)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F6);
                        }
                        if (Score >= 70)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F7);
                        }
                        if (Score >= 80)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F8);
                        }
                        if (Score >= 90)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F9);
                        }
                        if (Score >= 100)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F10);
                        }
                        if (Score >= 110)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F11);
                        }
                        if (Score >= 120)
                        {
                            ScoreKeyGroup.AddKey(CorsairKeyboardKeyId.F12);
                        }

                        int ScoreRemainder = Score % 10;
                        Console.WriteLine("left over is {0}", ScoreRemainder);
                        if (ScoreRemainder == 1)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad1);
                        }
                        if (ScoreRemainder == 2)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad2);
                        }
                        if (ScoreRemainder == 3)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad3);
                        }
                        if (ScoreRemainder == 4)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad4);
                        }
                        if (ScoreRemainder == 5)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad5);
                        }
                        if (ScoreRemainder == 6)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad6);
                        }
                        if (ScoreRemainder == 7)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad7);
                        }
                        if (ScoreRemainder == 8)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad8);
                        }
                        if (ScoreRemainder == 9)
                        {
                            SingleScoreKeyGroup.AddKey(CorsairKeyboardKeyId.Keypad9);
                        }

                        if (ScoreRemainder == 0)
                        {
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad1);
                            keyboard[CorsairKeyboardKeyId.Keypad1].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad2);
                            keyboard[CorsairKeyboardKeyId.Keypad2].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad3);
                            keyboard[CorsairKeyboardKeyId.Keypad3].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad4);
                            keyboard[CorsairKeyboardKeyId.Keypad4].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad5);
                            keyboard[CorsairKeyboardKeyId.Keypad5].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad6);
                            keyboard[CorsairKeyboardKeyId.Keypad6].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad7);
                            keyboard[CorsairKeyboardKeyId.Keypad7].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad8);
                            keyboard[CorsairKeyboardKeyId.Keypad8].Led.Color = Color.Black;
                            SingleScoreKeyGroup.RemoveKey(CorsairKeyboardKeyId.Keypad9);
                            keyboard[CorsairKeyboardKeyId.Keypad9].Led.Color = Color.Black;
                        }
                    }
                }
                if (!HitMole)
                {
                    Health--;
                    if (Health < 1)
                    {
                        LoseScreen = true;
                    }
                }
            }
        }
Beispiel #18
0
 internal CorsairKey(CorsairKeyboardKeyId keyId, CorsairLed led, RectangleF keyRectangle)
 {
     this.KeyId = keyId;
     this.Led = led;
     this.KeyRectangle = keyRectangle;
 }