Controlling RGB lights wirelessly by use of a remote control?

My code:

/*
*  Remote Control A RGB LED   
*  Example of how to make the color and brightness of an RGB led vary with a remote control.
*  This project utilizes a 38kHz IR reciever from RadioShack -  
*  Author: Jose Daniel Herrera
*  Modified by: Evan Johnson
*  Date Created: 08/28/2012
*  Date Modified: 12/11/2012
*  http://arduino-guay.blogspot.com.es
*/
 
#include <IRremote.h>

int RECV_PIN = 8;
int R_PIN = 9;
int G_PIN = 6;
int B_PIN = 10;
 
 
//Define these descriptions to the value displayed in serial monitor for which you want them to match up.
//Try Sony TV protocol first which is decimal, not hexidecimal like shown here.
 
//#define ON                0X
#define OFF               0xA90         
#define BRIGHTNESS_UP     0x490  //volume up       
#define BRIGHTNESS_DOWN   0xC90  //volume down       
//#define FLASH             0x
//#define STROBE            0x     
//#define FADE              0x           
//#define SMOOTH            0x           

#define RED               0x10     //BUTTON 1
#define GREEN             0X810    //BUTTON 2
#define BLUE              0x410    //BUTTON 3    
#define WHITE             0xC10    //BUTTON 4
 
#define ORANGE            0x210    //BUTTON 5
#define YELLOW_DARK       0xA10    //BUTTON 6
#define YELLOW_MEDIUM     0x610    //BUTTON 7
#define YELLOW_LIGHT      0xE10    //BUTTON 8
 
#define GREEN_LIGHT       0X110    //BUTTON 9
#define GREEN_BLUE1       0X910    //BUTTON 0   
#define GREEN_BLUE2       0X5CE9   //PERIOD (.)   
#define GREEN_BLUE3       0XD10    //ENT

#define BLUE_RED          0X90     //CHANNEL +
#define PURPLE_DARK       0X890    //CHANNEL -       
#define PURPLE_LIGHT      0X290    //MUTING      
#define PINK              0XDD0    //RECALL     

#define INCREMENT 10
 
unsigned long rgb = 0;
byte r,g,b;
 
IRrecv irrecv(RECV_PIN);
 
decode_results results;
 
//******************************************************* 
//*******************************************************
 
void setup()
{
  irrecv.enableIRIn(); // Inicializamos el receptor
  Serial.begin(9600);
  pinMode(R_PIN, OUTPUT);   
  pinMode(G_PIN, OUTPUT);   
  pinMode(B_PIN, OUTPUT);
  pinMode(RECV_PIN, INPUT);
}

//******************************************************* 
//*******************************************************
 
void loop()
{
  //if there is input  to decode from the remote control
  if (irrecv.decode(&results))
  {
    //if the frequency is not high (high signal means no remote pulling down frequency)
    if (results.value != 0xFFFFFFFF)
    {
      // see which button was pressed on the remote
      switch (results.value)
      {
           //user pressed volume +
           case BRIGHTNESS_UP :
               vary (&r, INCREMENT);
               vary (&g, INCREMENT);
               vary (&b, INCREMENT);
               break; 
           
           //user pressed volume -
           case BRIGHTNESS_DOWN : 
               vary (&r, -INCREMENT);
               vary (&g, -INCREMENT);
               vary (&b, -INCREMENT);
               break; 
           
           //user pressed on/off button
           case OFF :
               r = g = b = 0;
               break;    
           
           case RED           : RGB(0x00FF0000); break;
           case GREEN         : RGB(0x0000FF00); break;
           case BLUE          : RGB(0x000000FF); break;
           case WHITE         : RGB(0x00FFFFFF); break;
           case ORANGE        : RGB(0x00FF0A00); break; //FF->0A
           case YELLOW_DARK   : RGB(0x00FFAA00); break;
           case YELLOW_MEDIUM : RGB(0x00FFD400); break;
           case YELLOW_LIGHT  : RGB(0x00FFFF00); break;
           case GREEN_LIGHT   : RGB(0x0000FFAA); break;
           case GREEN_BLUE1   : RGB(0x00000AFF); break; //FF->0A
           case GREEN_BLUE2   : RGB(0x0000AAFF); break;
           case GREEN_BLUE3   : RGB(0x000055FF); break;
           case BLUE_RED      : RGB(0x00000080); break;
           case PURPLE_DARK   : RGB(0x003F0080); break;
           case PURPLE_LIGHT  : RGB(0x007A00BF); break;
           case PINK          : RGB(0x00FF00FF); break;
      }
      
      //Print report to serial monitor
      Serial.print("Result frequency of remote button pressed: ");
      Serial.println(results.value, HEX);
      Serial.print("Red Value: ");
      Serial.println(r,DEC);
      Serial.print("Green Value: ");
      Serial.println(g, DEC);
      Serial.print("Blue Value: ");
      Serial.println(b, DEC);
      
      //Write byte values to RGB led 
      analogWrite(R_PIN,r);
      analogWrite(G_PIN,g);
      analogWrite(B_PIN,b);
    }
    // Receive the next value
    irrecv.resume(); 
  }
}

//**********************************************************
//**********************************************************

//1) vary the led's color based by INCREMENT value of 10
void vary (byte* color, char value) {
    if (value > 0) {
        if ( *color + value <= 255) {
            *color += value;
        } else {
            *color = 255;
        }
    } else { 
        if (*color + value >= 0) {
            *color += value;
        } else {
            *color = 0;
        }
  }
}

//****************************************** 
void RGB(unsigned long value) {
   r = value >> 16; 
   g = (value >> 8) & 0xFF; 
   b = value & 0xFF; 
}