I am having trouble with this script below, I would like for it to show/hide 3 sets of prims. The prims have D1, D2 and D3 in there name and I can see the list is being built for each set. The problem is the script seems to not see my input (showd1, hided1 etc) from local and it does not set Alpha with llSetLinkAlpha. the llOwnerSay lines will be removed once the script is working. Any help to get this script running would be great and appreciated --------------------------------------------------------------------------------------------------------------------------------- list PussyPrims; list PrimList; key Owner; list DildoPrims; list AssPrims; init() { integer link; for (link = llGetNumberOfPrims(); link >= 1; --link) { if (llSubStringIndex(llGetLinkName(link), "D1") != -1) { DildoPrims += (list)link; } else if (llSubStringIndex(llGetLinkName(link), "D2") != -1) { PussyPrims += (list)link; } else if (llSubStringIndex(llGetLinkName(link), "D3") != -1) { AssPrims += (list)link; } else if (llSubStringIndex(llGetLinkName(link), "") != -1) { PrimList += (list)link; } } } default { state_entry() { init(); Owner = llGetOwner(); integer NumLink = llGetNumberOfPrims(); llListen(97, "", NULL_KEY, ""); integer i = 0; do { llOwnerSay("Dildo=" + (string)llList2Integer(DildoPrims,i)); llOwnerSay("**bleep**=" + (string)llList2Integer(PussyPrims,i)); llOwnerSay("Ass=" + (string)llList2Integer(AssPrims,i)); llOwnerSay("PrimList=" + (string)llList2Integer(PrimList,i) ); } while ((++i)<NumLink); } listen(integer channel, string name, key id, string msg) { integer a = 0; integer b = 5; string MSG = llToUpper(msg); while(a++ < b); { if (MSG == "SHOWD1") { llSetLinkAlpha(llList2Integer(DildoPrims,a),1.0, ALL_SIDES); return; } else if (MSG == "HIDED1") { llSetLinkAlpha(llList2Integer(DildoPrims,a),0.0, ALL_SIDES); return; } else if (MSG == "SHOWD2") { llSetLinkAlpha(llList2Integer(PussyPrims,a),1.0, ALL_SIDES); return; } else if (MSG == "HIDED2") { llSetLinkAlpha(llList2Integer(PussyPrims,a),0.0, ALL_SIDES); return; } else if (MSG == "SHOWD3") { llSetLinkAlpha(llList2Integer(AssPrims,a),1.0, ALL_SIDES); return; } else if (MSG == "HIDED3") { llSetLinkAlpha(llList2Integer(AssPrims,a),0.0, ALL_SIDES); return; } } while ((++a)<b); } }