Jump to content

KT Kingsley

Resident
  • Posts

    1,071
  • Joined

  • Last visited

Posts posted by KT Kingsley

  1. As you fear, you'll have to edit your projector prim manually or use a script. Fortunately controls for projector settings have recently been added to the scripting language. Maybe there's script already out there somewhere.

    There are free colour picker and texture picker scripts around, and you could ask for help combining these into what you need in the scripting forum, or find someone willing to do this for you in the employment forum.

    • Like 1
    • Thanks 1
  2. I don't think LL use LSL scripts to run SL's land access functions, like ensuring only premium members have access to the premium sandboxes. I'm pretty sure basic residents can't even TP into premium-only regions, which they'd have to do to become visible to a script using this function to enforce the exclusivity.

    It could be used by landowners to limit access to their land to premium members only or, more entertainingly, to exclude premium members from their land, or by snobs and inverse snobs to decide with whom they wish to interact.

    I can't, offhand, think of any useful use cases for this functionality, though.

    • Thanks 1
  3. Note that the compiler flags a syntax error at the place it realises that something has gone wrong, which may not be the place where the actual error takes place. For example

    default
    {
        state_entry()
        {
            llSay(0, "Hello, Avatar!")
       |}
    }

    has the compiler flagging the error at the closing brace of the state_entry state, while the actual problem is the lack of a semi-colon at the end of the line above.

  4. In the Firestorm viewer you can "protect" inventory folders, and this will prevent you moving or deleting them and the folders they're in. Protected folders have the term "(protected)" after their name. The "protect"/"unprotect" option is about half way down the right-click menu.

    I don't know if this feature is a thing in other viewers.

    • Like 1
  5. Estate owners and managers can restart regions automatically via a button on the Region/Estate floater's Debug tab and will often do so in response to a tenant's (or other residents) complaint about the region's performance.

    Residents can report misbehaving regions via a support ticket or live chat (if premium), and this will, in my experience, prompt a restart pretty quickly if necessary.

    That's two ways unscheduled restarts can happen.

    • Like 1
  6. default
    {
        touch (integer count)
        {
            vector touch_ST = llDetectedTouchST (0);
            llSetLinkPrimitiveParamsFast (LINK_THIS, [PRIM_TEXTURE, ALL_SIDES, "30223fc4-3bf2-3387-d52f-a4d57bc97e3c", <1.0, 0.5, 0.0>, <0.0, (touch_ST.x / 2.0) + 0.25, 0.0>, PI_BY_TWO]);
        }
    }

    And because I was bored, here's one that uses a texture. Just a single cube required.

    Note that the function used is llDetectedTouchST. This returns the touch coordinates on the face of the prim rather than on the texture. Because we're moving the texture around.

    • Like 2
  7. vector size;
    
    default
    {
        state_entry ()
        {
            size = llGetScale ();
        }
    
        touch (integer count)
        {
            vector touch_UV = llDetectedTouchUV (0);
            llSetLinkPrimitiveParamsFast (2, [PRIM_POS_LOCAL, <(touch_UV.x * size.x) - (size.x / 2.0), 0.0, size.z / 2.0>]);
        }
    }

    This is a very basic example using a slider prim rather than a texture.

    Rez a cube. Make it longer along its X axis. Rez a second prim and make it smaller all round. Link the two making the first prim the root. Put the script in the root.

    Now click and/or slide your mouse over the upper face of the root cube.

    There are absolutely no checks on the input so you'll find weird stuff happens if your mouse cursor goes off the upper face of the root.

    • Like 1
×
×
  • Create New...