Author Topic: Mounting a light  (Read 894 times)

How exactly do I mount a light to a player like an emote?
would this work?
Code: [Select]
function serverCmdFUNKAY(%client)
{
if(isObject(%client.player))
%client.player.emote(FUNKAYImage);
}
datablock fxLightData(funLight)
{
uiName = "FUNKY Light";

LightOn = true;
radius = 10;
brightness = 12;
color = "1 0 0 1";

flareOn = true;
flarebitmap = "base/lighting/flare2";
NearSize = 6;
FarSize = 5;
AnimColor = true;
AnimBrightness = false;
AnimOffsets = false;
AnimRotation = false;
LinkFlare = true;
LinkFlareSize = false;
MinColor = "0 0 0";
MaxColor = "1 1 1";
MinBrightness = 0.0;
MaxBrightness = 10.0;
MinRadius = 1.0;
MaxRadius = 20;
StartOffset = "-5 5 10";
EndOffset = "5 -10 -5";
MinRotation = 0;
MaxRotation = 359;

SingleColorKeys = false;
RedKeys = "ZDFVWOUYBREOBUAAOBUREIBASAAAAAAAAAAAAAAAAAAAAAAAAUIOTEORUBEIBZKDVJLPWTIURYQ";
GreenKeys = "SVAPWOUBIYZKWQPBHDYTLFDGHERPUSIZVPDBUIZPAIOUOAMVLBAAAAAAAAAAAAAAAAAAAAAAAAA";
BlueKeys = "AAAAAAAAAAAAAAAAAAAAAAAAAJKLJUWPAWZLBLYDHSUQWXZTHOPDFJDFBIJFNUHIBOJOSBEOIJ";

BrightnessKeys = "ABOERBKJDHBIUREHUBHUIDBZWACOWIHVIYRENB";
RadiusKeys = "SVIOUYSWZPPAWUIBYDLBJSUIIRUNLFCJUISFKLDFBJHGSMOBPDXHFTGOWAHQW";
OffsetKeys = "DSGVTUWNESOYSEBTYOPRYEUIBSYERTIBUOSQWPASZVZLVUISMVWIOB";
RotationKeys = "DUIVAYTBZUIEHBTIKHWIEBJZIOUEHPWUHKJBMHIXUDRYHTIBZ";

ColorTime = 20;
BrightnessTime = 20.0;
RadiusTime = 20.0;
OffsetTime = 20.0;
RotationTime = 20.0;

LerpColor = true;
LerpBrightness = false;
LerpRadius = false;
LerpOffset = false;
LerpRotation = false;
};
datablock ShapeBaseImageData(FUNKAYImage)
{
   shapeFile = "base/data/shapes/empty.dts";
emap = false;

mountPoint = $HeadSlot;

stateName[0] = "Ready";
stateTransitionOnTimeout[0] = "FireA";
stateTimeoutValue[0] = 0.01;

stateName[1] = "FireA";
stateTransitionOnTimeout[1] = "Done";
stateWaitForTimeout[1] = True;
stateTimeoutValue[1] = 0.350;
stateLight[1] = funLight;
stateLightTime[1] = 99999999.000;

stateName[2] = "Done";
stateScript[2] = "onDone";
};
function FUNKAYImage::onDone(%this,%obj,%slot)
{
%obj.unMountImage(%slot);
}

function servercmdRedLight(%client)
{
 if(!isObject(%client.light)){servercmdLight(%client);}
 %client.light.setdatablock(redLight);
}

That simple method only works for lights in your left hand, though.