I'm having some trouble trying to get muliple prims with the same fader script with the same settings to sync up with their fading and such. Each prim has a fader script in it with these settings. IS there a communication line needed somewhere? //How often to change texture in seconds
float gTimer = 5;
//Prim face to show texture
//Use 'ALL_SIDES' if you wish to change all at once
integer gSide = ALL_SIDES;
//This is the speed for fader
//Lower the number the slower it will go
float gSpeed = 9;
//-------Do NOT edit below here----------
integer gCurrent = 0;
fCycle(integer next)
{
integer length = llGetInventoryNumber(INVENTORY_TEXTURE);
--length;
if(next > length)
{
gCurrent = 0;
}
else if(next < 0)
{
gCurrent = length;
}
}
fFade2Black()
{
if(llGetInventoryNumber(INVENTORY_TEXTURE) > 0)
{
vector Color = llGetColor(gSide);
if(Color != <0,0,0>)
{
while(Color != <0,0,0>)
{
if(Color.x < 0.0)
Color.x = 0.0;
if(Color.x != 0.0)
Color.x = Color.x-gSpeed;
if(Color.y < 0.0)
Color.y = 0.0;
if(Color.y != 0.0)
Color.y = Color.y-gSpeed;
if(Color.z < 0.0)
Color.z = 0.0;
if(Color.z != 0.0)
Color.z = Color.z-gSpeed;
Color = <Color.x,Color.y,Color.z>;
llSetColor(Color, gSide);
}
}
else
{
fFade2White();
}
fCycle(++gCurrent);
llSetTexture(llGetInventoryName(INVENTORY_TEXTURE, gCurrent), gSide);
fFade2White();
}
}
fFade2White()
{
vector Color = llGetColor(gSide);
if(Color != <1,1,1>)
{
while(Color != <1,1,1>)
{
if(Color.x > 1.0)
Color.x = 1.0;
if(Color.x != 1.0)
Color.x = Color.x+gSpeed;
if(Color.y > 1.0)
Color.y = 1.0;
if(Color.y != 1.0)
Color.y = Color.y+gSpeed;
if(Color.z > 1.0)
Color.z = 1.0;
if(Color.z != 1.0)
Color.z = Color.z+gSpeed;
Color = <Color.x,Color.y,Color.z>;
llSetColor(Color, gSide);
}
}
}
default
{
state_entry()
{
gSpeed = gSpeed/5000;
llSetTimerEvent(gTimer);
fFade2Black();
}
touch_start(integer total_number)
{
fFade2Black();
}
timer()
{
fFade2Black();
}
changed(integer change)
{
if(change & CHANGED_INVENTORY)
{
llResetScript();
}
}
on_rez(integer start_param)
{
llResetScript();
}
}