PRIM TEXT

From Second Life Wiki
Jump to navigation Jump to search

Description

Constant: integer PRIM_TEXT = 26;

The integer constant PRIM_TEXT has the value 26

Used to get or set the object's floating text.

llSetPrimitiveParams

llSetPrimitiveParams([ PRIM_TEXT, string text, vector color, float alpha ]);
• string text floating text to display
• vector color color in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white)
• float alpha from 0.0 (clear) to 1.0 (solid) (0.0 <= alpha <= 1.0)

Syntax for: llSetPrimitiveParams, llSetLinkPrimitiveParams & llSetLinkPrimitiveParamsFast

llGetPrimitiveParams

llGetPrimitiveParams([ PRIM_TEXT ]);

Returns the list [ string text, vector color, float alpha ]

• string text floating text displayed
• vector color color in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white)
• float alpha from 0.0 (clear) to 1.0 (solid) (0.0 <= alpha <= 1.0)

Syntax for: llGetPrimitiveParams, llGetLinkPrimitiveParams

Caveats

  • Do not rely on Floating Text as a storage medium; it is neither secure nor finalized.
    • Floating text has been altered in past server updates, breaking existing content; future changes may occur.
    • Even "invisible"[1] floating text is transmitted to the client.
      • It can be viewed by anyone with a client that is capable of rendering text that is supposed to be invisible.
      • The network packets that contain the text can be sniffed and the text read.
All Issues ~ Search JIRA for related Bugs

Related Articles

Functions

•  llSetPrimitiveParams
•  llSetLinkPrimitiveParams
•  llSetLinkPrimitiveParamsFast
•  llGetPrimitiveParams
•  llGetLinkPrimitiveParams
•  llSetText

Articles

•  Limits SL limits and constrictions
•  Color in LSL
•  Translucent Color

Examples

default
{
    state_entry()
    {
        // a string to display
        string displayMessage = llGetDisplayName( llGetOwner() ) + ", test number "; 
        
        // just so could test changing the displayMessage
        integer loopControl;
        for( loopControl = 1; loopControl < 3; ++loopControl )
        {
            // on first iteration set the text 
            if( loopControl == 1 )
            {
                llSetPrimitiveParams([PRIM_TEXT, displayMessage + (string)loopControl + ".", <1, 0, 0>, 1.0]);
            }
            
            // on second iteration get the text and say it. 
            else if( loopControl == 2 )
            {
                llSay(0, llDumpList2String(llGetPrimitiveParams([PRIM_TEXT]), " "));
            }
        }
    }
}

Deep Notes

Search JIRA for related Issues

Footnotes

  1. ^ Floating text with an alpha set to 0.0 is rendered "invisible"

Signature

integer PRIM_TEXT = 26;