Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ************************
- // Script for WALL/DOOR, whatever.
- // ************************
- integer LineHasParam(string sParamName, string sData) // TRUE or FALSE.
- {
- if (llSubStringIndex(llToLower(llStringTrim(sData, STRING_TRIM)), llToLower(sParamName)) == 0) return TRUE; // Found at start of line.
- return FALSE; // Didn't find or it wasn't at start of line.
- }
- string Line2String(string sData)
- {
- integer i = llSubStringIndex(llToLower(sData), "=");
- if (i < 0) return "";
- return llStringTrim(llGetSubString(sData, i + 1, -1), STRING_TRIM);
- }
- default
- {
- on_rez(integer iStartParam)
- {
- llResetScript();
- }
- state_entry()
- {
- llListen(9878901, "", "", "");
- }
- listen(integer iChannel, string sSenderPrimOrAviLegacyName, key kSenderKey, string sMsg)
- {
- if (iChannel == 9878901)
- {
- // The message should be something like: llSay(0, "NewTexture=" + (string)SomeTextureKey);
- if (LineHasParam("ChangeTexture", sMsg))
- {
- key kTex = (key)Line2String(sMsg);
- if (kTex) llSetTexture(kTex, ALL_SIDES);
- }
- }
- }
- }
- // ************************
- // Script for HUD or controller.
- // ************************
- list glTextures; // = ["4ffc5a28-4a4c-8565-147e-e29ba24c1c84",
- // "376dc963-e04d-72c2-5a43-458144e34db1",
- // "89fe353e-a41e-1a6d-4091-91338c068f37"];
- list glTexNames; // = ["Window",
- // "Touch Msg",
- // "Bear"];
- default
- {
- on_rez(integer iStartParam)
- {
- llResetScript();
- }
- state_entry()
- {
- llListen(9878901, "", "", "");
- }
- touch_start(integer iNumDetected)
- {
- integer i;
- glTextures = [];
- glTexNames = [];
- for (i = llGetInventoryNumber(INVENTORY_TEXTURE) - 1; i >=0; i--)
- {
- glTexNames += llGetInventoryName(INVENTORY_TEXTURE, i);
- glTextures += llGetInventoryKey(llGetInventoryName(INVENTORY_TEXTURE, i));
- }
- llDialog(llDetectedKey(0), "\nPick a texture for doing stuff with.", glTexNames, 9878901);
- }
- listen(integer iChannel, string sSenderPrimOrAviLegacyName, key kSenderKey, string sMsg)
- {
- if (iChannel == 9878901)
- {
- integer i = llListFindList(glTexNames, [sMsg]);
- if (i != -1)
- {
- llSay(9878901, "NewTexture=" + llList2String(glTextures, i));
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement