Author Topic: RainbowMe Client Code  (Read 2300 times)

Code:
if (!$RainbowPlayerBindings)
{
    $remapDivision[$remapCount] = "Rainbow Player";
    $remapName[$remapCount] = "Activate/Deacticate";
    $remapCmd[$remapCount] = "RainbowPlayerToggle";
    $remapCount++;
    $RainbowPlayerBindings=true;
}

$RainbowPlayerCount = 0;
$RainbowPlayerFlag = 0;
$RainbowPlayerTempPack   = $pref::Avatar::PackColor;
$RainbowPlayerTempHat    = $pref::Avatar::HatColor;
$RainbowPlayerTempLLeg   = $pref::Avatar::LLegColor;
$RainbowPlayerTempRLeg   = $pref::Avatar::RLegColor;
$RainbowPlayerTempAccent = $pref::Player::AccentColor;
$RainbowPlayerTempHead   = $pref::Player::HeadColor;
$RainbowPlayerTempHip    = $pref::Player::HipColor;
$RainbowPlayerTempRhand  = $pref::Player::RhandColor;
$RainbowPlayerTempLHand  = $pref::Player::LHandColor;
$RainbowPlayerTempRArm   = $pref::Player::RArmColor;
$RainbowPlayerTempLArm   = $pref::Player::LArmColor;
$RainbowPlayerTempTorso  = $pref::Player::TorsoColor;
$RainbowPlayerTempSecondPack = $pref::Avatar::SecondPackColor;

function RainbowPlayerToggle(%val)
{
    if(%val)
    {
   if($RainbowPlayerFlag==0)
   {
       $RainbowPlayerFlag=1;
       $RainbowPlayerTempPack=$pref::Avatar::PackColor;
       $RainbowPlayerTempHat=$pref::Avatar::HatColor;
       $RainbowPlayerTempLLeg=$pref::Avatar::LLegColor;
       $RainbowPlayerTempRLeg=$pref::Avatar::RLegColor;
       $RainbowPlayerTempAccent=$pref::Avatar::AccentColor;
      $RainbowPlayerTempHip=$pref::Avatar::HipColor;
      $RainbowPlayerTempRHand=$pref::Avatar::RHandColor;
      $RainbowPlayerTempLHand=$pref::Avatar::LHandColor;
      $RainbowPlayerTempLArm=$pref::Avatar::LArmColor;
      $RainbowPlayerTempRArm=$pref::Avatar::RArmColor;
      $RainbowPlayerTempTorso=$pref::Avatar::TorsoColor;
      $RainbowPlayerTempHead=$pref::Avatar::HeadColor;
      $RainbowPlayerTempSecondPack=$pref::Avatar::SecondPack;
       RainbowPlayerLoop();
   }

   else if($RainbowPlayerFlag==1)
   {
       $RainbowPlayerFlag=0;
       cancel($RainbowPlayer);
       $pref::Avatar::PackColor=$RainbowPlayerTempPack;
       $pref::Avatar::HatColor=$RainbowPlayerTempHat;
       $pref::Avatar::LLegColor=$RainbowPlayerTempLLeg;
       $pref::Avatar::RLegColor=$RainbowPlayerTempRLeg;
       $pref::Avatar::AccentColor=$RainbowPlayerTempAccent;
       $pref::Avatar::HipColor=$RainbowPlayerTempHip;
       $pref::Avatar::RHandColor=$RainbowPlayerTempRHand;
       $pref::Avatar::LHandColor=$RainbowPlayerTempLHand;
            $pref::Avatar::HeadColor=$RainbowPlayerTempHead;
       $pref::Avatar::LArmColor=$RainbowPlayerTempLArm;
       $pref::Avatar::RArmColor=$RainbowPlayerTempRArm;
       $pref::Avatar::TorsoColor=$RainbowPlayerTempTorso;
       $pref::Avatar::SecondPackColor=$RainbowPlayerTempSecondPack;
       clientcmdupdateprefs();
   }
    }
}

function rainbowreset()
{
    cancel($RainbowPlayer);
    $pref::Avatar::PackColor=$RainbowPlayerTempPack;
    $pref::Avatar::HatColor=$RainbowPlayerTempHat;
    $pref::Avatar::LLegColor=$RainbowPlayerTempLLeg;
    $pref::Avatar::RLegColor=$RainbowPlayerTempRLeg;
    $pref::Avatar::AccentColor=$RainbowPlayerTempAccent;
    $pref::Avatar::HipColor=$RainbowPlayerTempHip;
    $pref::Avatar::RHandColor=$RainbowPlayerTempRHand;
    $pref::Avatar::LHandColor=$RainbowPlayerTempLHand;
    $pref::Avatar::LArmColor=$RainbowPlayerTempLArm;
    $pref::Avatar::RArmColor=$RainbowPlayerTempRArm;
    $pref::Avatar::HeadColor=$RainbowPlayerTempHead;
    $pref::Avatar::TorsoColor=$RainbowPlayerTempTorso;
    $pref::Avatar::SecondPackColor=$RainbowPlayerTempSecondPack;
    clientcmdupdateprefs();
}

function RainbowPlayerLoop()
{
    if($RainbowPlayerCount > 63)
   $RainbowPlayerCount = 0;

    $R=0.5+0.5*mSin($RainbowPlayerCount*3.14/16.0);
    $G=0.5+0.5*mSin($RainbowPlayerCount*3.14/16.0+21.0);
    $B=0.5+0.5*mSin($RainbowPlayerCount*3.14/16.0+42.0);
    $pref::Avatar::PackColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::HatColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::LLegColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::HeadColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::RLegColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::AccentColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::HipColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::RHandColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::LHandColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::LArmColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::RarmColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::TorsoColor=$R SPC $G SPC $B SPC "1";
    $pref::Avatar::SecondPackColor=$R SPC $G SPC $B SPC "1";
    clientcmdupdateprefs();
    $RainbowPlayerCount++;
    $RainbowPlayer=schedule(100,0,RainbowPlayerLoop);
}

Credit to Boomlinde for the Client.