Skip to content
lsl.devlsl.devLSL Dev

LlSetDamage

Looking for the current API? Open the llSetDamage reference →

Wiki description

Sets the amount of damage that will be done when this object hits an avatar.

Specification

For an avatar to take damage when the object collides with an avatar...
  • The object must not be phantom or llVolumeDetect(TRUE)
  • The avatar must be on the land where "Safe (no damage)" is disabled.
    • The object however does not need to be on or even partially over damage enabled land.
When these preconditions are met, the avatar receives the damage, and the object will die without calling the collision events.

Caveats

  • damage is a Prim Property, and may be applied even if there is no running script.
  • If damage is 100.0 or greater, the object will instantly kill even a fully healthy avatar.
  • If damage is less than zero, the avatar will he healed for the indicated amount.
  • If a damage enabled object hits a physics enabled object that one or more avatars are sitting on, damage will be distributed to all seated avatars.

Examples

//Simple autokiller bullet:
// This will instantly "kill" on collision if contact is made with avatar on damage enabled land.

default
{
    on_rez(integer param) // Becomes active when rezzed.
    {
        llSetDamage(100.0); // Set the damage to maximum.
        llSensor("", "", AGENT, 96.0, PI); // Sweep a 96 meter sphere searching for agents.
    }
    sensor(integer num) // If an agent is detected...
    {
        llSetStatus(STATUS_PHYSICS, TRUE); // Enable physics to allow physical movement.
        llSetTimerEvent(10.0); // Set a 10 second timer.
        llMoveToTarget(llDetectedPos(0), 0.5); // Move to the detected position.
    }
    no_sensor() // If no agents are detected...
    {
        llDie(); // Auto destruct.
    }
    timer() // If we missed our target...
    {
        llDie(); // Auto destruct.
    }
}

See also: articles

Original wiki source

Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.

From the Second Life Wiki

Community documentation adapted from LlSetDamage, by Linden Research, Inc. and contributing residents.View contributors and history.

Imported wiki revision:

Licensed under CC BY-SA 3.0. Last wiki edit: .Formatting and links have been adapted for this site; API metadata follows the LSL definitions.