LSL Addition

From Second Life Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Integer

  • Operation: Addition
    • Example:
      • 1 + 1
      • Result = 2
Note: If one variable or value is a float, the integer value will be cast to a float automatically.

Float

  • Operation: Addition
    • Example:
      • 1.5 + 1.5
      • Result = 3.0
Note: If one variable or value is an integer, the integer value will be cast to a float automatically.

Vector

  • Operation: Addition
    • Examples:
      • <1.0, 1.0, 1.0> + <1.0, 0.0, -1.0>
      • Result = <2.0, 1.0, 0.0>
      • Action: <a.x, a.y, a.z> + <b.x, b.y, b.z> == <a.x + b.x, a.y + b.y, a.z + b.z>
      • <-1.0, 0.0, 1.0> + 1.0
      • Result: <0.0, 1.0, 2.0>
      • Action: <a.x, a.y, a.z> + b == <a.x + b, a.y + b, a.z + b>
Note: All elements are floats, if any are written as integers they will be cast to floats automatically

Rotation

  • Operation: unknown!
Note: This operator is rarely used with this type as it is not a meaningful way of combining quaternions being used to represent rotations. Use Multiplication instead.

String

  • Operation: Concatenation (adds to the end of)
    • Example:
      • "abc" + "def"
      • Result = "abcdef"
Note: While Keys are a specialized type of String They cannot be directly used with this operator.

List

  • Operation: Concatenation (adds to the end of)
    • Example:
    • [0, 0.0, <0.0, 0.0, 0.0>, ""] + [1, 1.0, <1.0, 1.0, 1.0>, "xyz"]
      • Result: [0, 0.0, <0.0, 0.0, 0.0>, "", 1, 1.0, <1.0, 1.0, 1.0>, "xyz"]
      • list + value = [contents_of_list, value]
Note: If the type of the variable or value being added to a list is not a list it will be cast to a list automatically

Notes

  • needs link for article about min/max integer/float values
  • needs link for article about max string and list lengths
  • It'd be helpful if someone wrote a template for this page so that it might be abstracted to other operators after layout is finalized
    • this is only a sample layout, feel free to suggest other layouts.
    • I'll write one when I have some time -- Strife (talk|contribs) 22:49, 24 January 2010 (UTC)