Difference between revisions of "LSL Function Style/SignpostMarv Martin"

From Second Life Wiki
Jump to navigation Jump to search
(bibadi)
 
 
(One intermediate revision by the same user not shown)
Line 32: Line 32:
<nowiki>[[Category:Math]]</nowiki>
<nowiki>[[Category:Math]]</nowiki>


== llInstantMessage ==
= llInstantMessage =


'''{{User:SignpostMarv Martin/Sandbox/Template:LSL/function|llInstantMessage|{{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|key|Resident}}, {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|string|message}}|}}'''
'''{{User:SignpostMarv Martin/Sandbox/Template:LSL/function|llInstantMessage|{{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|key|Resident}}, {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|string|message}}|}}'''
Line 38: Line 38:
''llInstantMessage'' sends {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|string|message}} to {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|key|Resident}}.  
''llInstantMessage'' sends {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|string|message}} to {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|key|Resident}}.  


* {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|key|Resident}} must be the [[UUID]] of a Resident; this function cannot be used to send messages to objects- for that purpose you will need [[llEmail]] or [[llMessageLinked]] depending on whether or not you wish to communicate with a child prim or prim not in the linkset of the an object.
** A full list of functions that can be used to communicate with objects can be found under [[:Category:Object Communications]]
* {{User:SignpostMarv Martin/Sandbox/Template:LSL/variable|string|message}} is limited to 1023 bytes. If the message is longer, '''message''' is truncated to 1023 bytes <small>(bare this in mind when using multi-byte characters)</small>. [[llStringLength]] can be used to help indicate whether the '''message''' will be truncated.
* llInstantMessage incurs a delay of {{User:SignpostMarv Martin/Sandbox/Template:LSL/delay|llInstantMessage}} seconds. If you wish to communicate solely with the owner of the object, [[llOwnerSay]] may be more suitable.
* llInstantMessage incurs a delay of {{User:SignpostMarv Martin/Sandbox/Template:LSL/delay|llInstantMessage}} seconds. If you wish to communicate solely with the owner of the object, [[llOwnerSay]] may be more suitable.
* llInstantMessage does not currently result in the message being displayed in the Resident's Instant Message window; Messages are displayed in the History window.
* llInstantMessage does not currently result in the message being displayed in the Resident's Instant Message window; Messages are displayed in the History window.
* This function cannot be used to send messages to objects- for that purpose you will need [[llEmail]] or [[llMessageLinked]] depending on whether or not you wish to communicate with a child prim or prim not in the linkset of the an object.
** A full list of functions that can be used to communicate with objects can be found under [[:Category:Object Communications]]
* Remember to use this function responsibly. Automated messages can be considered "SPAM" and/or harrasment, which violates the [[LL:Second Life Community Standards]] and may result in disciplinary measures.
* Remember to use this function responsibly. Automated messages can be considered "SPAM" and/or harrasment, which violates the [[LL:Second Life Community Standards]] and may result in disciplinary measures.



Latest revision as of 14:12, 14 February 2007

These templates are designed to be modular, making them easier to drop in wherever or however needed- with an emphasis on flexibility rather than rigid page structure; Layouts for different types of functions might be better suited to slightly different layouts. To make it easier for newcomers to LSL and the MediaWiki syntax, users of these templates will be encouraged to maintain the design with their own MediaWiki code, as most of the templates are for data display only.

List of templates

Shortcut templates

Data lookup templates

These are likely to be incomplete, it would be handy if contributions could be made to them to improve their completeness. However, please refrain from adding any functions which have "0.0" as their delay value for now.

Implementations To view the source code for each implementation, navigate to the "Edit" link for each example.

llAbs

integer llAbs (integer val)

llAbs returns the distance of the integer val from 0. This function will be useful if the result of an operation or function is not guaranteed to be a positive integer or negative integer.

llFabs is the equivalent function to use when the result of an operation or function is known to be always or occasionally a float, although the result of such an operation or function could be typecast to an integer

Examples

llAbs(-5); //returns 
llAbs(3); // returns 3
llAbs((integer)-7.99); //returns 7

[[Category:Math]]

llInstantMessage

llInstantMessage (key Resident, string message)

llInstantMessage sends string message to key Resident.

  • key Resident must be the UUID of a Resident; this function cannot be used to send messages to objects- for that purpose you will need llEmail or llMessageLinked depending on whether or not you wish to communicate with a child prim or prim not in the linkset of the an object.
  • string message is limited to 1023 bytes. If the message is longer, message is truncated to 1023 bytes (bare this in mind when using multi-byte characters). llStringLength can be used to help indicate whether the message will be truncated.
  • llInstantMessage incurs a delay of 2.0 seconds. If you wish to communicate solely with the owner of the object, llOwnerSay may be more suitable.
  • llInstantMessage does not currently result in the message being displayed in the Resident's Instant Message window; Messages are displayed in the History window.
  • Remember to use this function responsibly. Automated messages can be considered "SPAM" and/or harrasment, which violates the LL:Second Life Community Standards and may result in disciplinary measures.

Examples

key owner = NULL_KEY;
string Resident;

default
{
    changed(integer change)
    {
        if((change & CHANGED_OWNER) && (llGetOwner() != owner))
        {
            if(owner != NULL_KEY)
            {
                llInstantMessage(llGetCreator(),Resident + " gave their copy of " + llGetObjectName() + " to " + llKey2Name(llGetOwner()) + "."); // Instant Messages the creator of the object with something along the lines of "SignpostMarv Martin gave their copy of Object to Orientation Islander."
                owner = llGetOwner();
                Resident = llKey2Name(owner);
            }
            else
            {
                owner = llGetOwner();
                Resident = llKey2Name(owner);
            }
        }
    }
}

[[Category:Communications]] [[Category:Resident Communications]]