No, not like that, like this:
function serverCmdSetOrbColor(%client, %color) {
	if(!%client.isSuperAdmin) //Check if we're super admin
		return;
	%color = strlwr(%color);
		
    switch$(%color) {
        case "heart":
            // Change to heart
			//psuedo code
			OrbDatablockThing.particle = CameraParticleHeart;
        case "water":
            // Change to water
			
        case "star":
            // Change to star
        default:
            messageClient(%client, '', "\c6The color\c3" SPC %color SPC "\c6could not be found.");
            return;
    }
	transmitDatablocks(); //Very important
    messageClient(%client, '', "\c6Your orb is now\c3" SPC %color @ "\c6.");
}
	//Define heart datablocks, referenced above
datablock ParticleData(CameraParticleHeartA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 600;
	lifetimeVarianceMS   = 0;
	textureName          = "base/data/particles/heart";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.0;
	spinRandomMax		= 0.0;
	colors[0]     = "1.0 0.0 0.0 0.2";
	colors[1]     = "1.0 0.0 0.2 0.2";
	colors[2]     = "1.0 0.0 0.0 0.2";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 0.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(CameraEmitterHeartA)
{
   ejectionPeriodMS = 1.0;
   periodVarianceMS = 0;
   ejectionVelocity = 1.0;
   velocityVariance = 0.5;
   ejectionOffset   = 0.0;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "CameraParticleA";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleHeartB)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 100;
	lifetimeVarianceMS   = 0;
	textureName          = "base/data/particles/heart";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.5;
	spinRandomMax		= 1.0;
	colors[0]     = "1.0 0.0 0.2 0.2";
	colors[1]     = "1.0 0.0 0.2 0.2";
	colors[2]     = "1.0 0.0 0.2 0.2";
	sizes[0]      = 0.25;
	sizes[1]      = 0.20;
	sizes[2]      = 0.15;
	times[0]      = 0;
	times[1]      = 0.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterHeartB)
{
   ejectionPeriodMS = 3.0;
   periodVarianceMS = 0.5;
   ejectionVelocity = 1.5;
   velocityVariance = 0.6;
   ejectionOffset   = -0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterB";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleHeartA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 1.0;
	lifetimeMS           = 1500;
	lifetimeVarianceMS   = 130;
	textureName          = "base/data/particles/heart";
	spinSpeed		= 0.5;
	spinRandomMin		= 0.1;
	spinRandomMax		= 0.5;
	colors[0]     = "1.0 0.0 0.0 0.3";
	colors[1]     = "1.0 0.0 1.0 0.5";
	colors[2]     = "0.0 0.0 1.0 1.0";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 0.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterHeartA)
{
   ejectionPeriodMS = 10.0;
   periodVarianceMS = 1.0;
   ejectionVelocity = 1.5;
   velocityVariance = 10.0;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterA";
   
   useEmitterColors = 0;
};
	//Define star datablocks, referenced above
datablock ParticleData(CameraParticleStarA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 600;
	lifetimeVarianceMS   = 0;
	textureName          = "base/data/particles/star1";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.0;
	spinRandomMax		= 0.0;
	colors[0]     = "1.0 0.9 0.0 0.2";
	colors[1]     = "1.0 0.8 0.0 0.2";
	colors[2]     = "0.9 1.0 0.0 0.2";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 1.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(CameraEmitterStarA)
{
   ejectionPeriodMS = 6.5;
   periodVarianceMS = 0;
   ejectionVelocity = 1.0;
   velocityVariance = 0.6;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "CameraParticleA";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleStarB)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 1500;
	lifetimeVarianceMS   = 10;
	textureName          = "base/data/particles/star1";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.5;
	spinRandomMax		= 1.0;
	colors[0]     = "1.0 0.9 0.0 0.2";
	colors[1]     = "1.0 0.8 0.0 0.2";
	colors[2]     = "0.9 1.0 0.0 0.2";
	sizes[0]      = 0.25;
	sizes[1]      = 0.10;
	sizes[2]      = 0.15;
	times[0]      = 0;
	times[1]      = 0.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterStarB)
{
   ejectionPeriodMS = 10.5;
   periodVarianceMS = 1.0;
   ejectionVelocity = 1.0;
   velocityVariance = 0.6;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterB";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleStarA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.5;
	lifetimeMS           = 200;
	lifetimeVarianceMS   = 100;
	textureName          = "base/data/particles/star1";
	spinSpeed		= 0.5;
	spinRandomMin		= 0.1;
	spinRandomMax		= 0.5;
	colors[0]     = "1.0 0.9 0.0 0.2";
	colors[1]     = "1.0 0.8 0.0 0.2";
	colors[2]     = "0.9 1.0 0.0 0.2";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 1.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterStarA)
{
   ejectionPeriodMS = 10.0;
   periodVarianceMS = 1.0;
   ejectionVelocity = 1.5;
   velocityVariance = 10.0;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterA";
   
   useEmitterColors = 0;
};
	//Define bubble datablocks, referenced above
datablock ParticleData(CameraParticleBubbleA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 600;
	lifetimeVarianceMS   = 0;
	textureName          = "base/data/particles/bubble";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.0;
	spinRandomMax		= 0.0;
	colors[0]     = "0.0 0.9 1.0 0.2";
	colors[1]     = "0.0 0.8 1.0 0.2";
	colors[2]     = "0.0 0.9 1.0 0.2";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 1.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(CameraEmitterBubbleA)
{
   ejectionPeriodMS = 6.5;
   periodVarianceMS = 0;
   ejectionVelocity = 1.0;
   velocityVariance = 0.6;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "CameraParticleA";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleBubbleB)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.0;
	lifetimeMS           = 1500;
	lifetimeVarianceMS   = 10;
	textureName          = "base/data/particles/bubble";
	spinSpeed		= 0.0;
	spinRandomMin		= 0.5;
	spinRandomMax		= 1.0;
	colors[0]     = "0.0 0.9 1.0 0.2";
	colors[1]     = "0.0 0.8 1.0 0.2";
	colors[2]     = "0.0 0.9 1.0 0.2";
	sizes[0]      = 0.25;
	sizes[1]      = 0.10;
	sizes[2]      = 0.15;
	times[0]      = 0;
	times[1]      = 0.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterBubbleB)
{
   ejectionPeriodMS = 10.5;
   periodVarianceMS = 1.0;
   ejectionVelocity = 1.0;
   velocityVariance = 0.6;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterB";
   
   useEmitterColors = 0;
};
datablock ParticleData(playerTeleportParticleBubbleA)
{
	dragCoefficient      = 3;
	gravityCoefficient   = -0.0;
	inheritedVelFactor   = 1;
	constantAcceleration = 0.5;
	lifetimeMS           = 200;
	lifetimeVarianceMS   = 100;
	textureName          = "base/data/particles/bubble";
	spinSpeed		= 0.5;
	spinRandomMin		= 0.1;
	spinRandomMax		= 0.5;
	colors[0]     = "0.0 0.9 1.0 0.2";
	colors[1]     = "0.0 0.8 1.0 0.2";
	colors[2]     = "0.0 0.9 1.0 0.2";
	sizes[0]      = 1.50;
	sizes[1]      = 0.75;
	sizes[2]      = 0.25;
	times[0]      = 0;
	times[1]      = 1.5;
	times[2]      = 1;
	useInvAlpha = false;
};
datablock ParticleEmitterData(playerTeleportEmitterBubbleA)
{
   ejectionPeriodMS = 10.0;
   periodVarianceMS = 1.0;
   ejectionVelocity = 1.5;
   velocityVariance = 10.0;
   ejectionOffset   = 0.5;
   thetaMin         = 1.5;
   thetaMax         = 90;
   phiReferenceVel  = 0;
   phiVariance      = 360;
   overrideAdvance = false;
   particles = "playerTeleportEmitterA";
   
   useEmitterColors = 0;
};