LlSetDamage

来自人工智能助力教育知识百科
跳转至: 导航搜索

Template:Needs Translation/


函数名
Function: llSetDamage( float damage );
参数:• float damage – range: 0.0 (no damage) ~ 100.0 (instant kill)
返回值:设置当该对象击中avatar时所造成的伤害。
注意事项
如果伤害大于或等于100.0,该对象会立即杀死一个完全健康的化身。

如果损害小于或等于零,则不会造成损害,该对象也不会死亡,碰撞或land_collision事件将被排队处理。

如果一个激活了伤害的物体击中了一个激活了物理的物体,而这个物体正坐在一个虚拟人物身上,那么虚拟人物就会像被直接击中一样受到伤害

 Specification
 当物体与虚拟化身碰撞时,虚拟化身会受到伤害…
 对象不能是phantom或llVolumeDetect(TRUE)
 化身必须在“安全(无伤害)”被禁用的土地上。
   然而,该对象不需要在伤害激活土地上或甚至部分超过。
 当这些前提条件得到满足时,化身就会受到伤害,对象就会在不调用碰撞事件的情况下死亡。
示例
//Simple autokiller bullet:
//如果在启用伤害的土地上与化身接触,这将在碰撞时立即“杀死”。
 
default
{
    on_rez(integer param) // 当rezzed时变得活跃。
    {
        llSetDamage(100.0); // 将伤害设置为最大。
        llSensor("", "", AGENT, 96.0, PI); // 在96米范围内搜寻探员。
    }
    sensor(integer num) // If an agent is detected...
    {
        llSetStatus(STATUS_PHYSICS, TRUE); // 使物理允许物理运动。
        llSetTimerEvent(10.0); // Set a 10 second timer.
        llMoveToTarget(llDetectedPos(0), 0.5); //移动到检测到的位置.
    }
    no_sensor() // 如果没有检测到代理…
    {
        llDie(); // Auto destruct.
    }
    timer() // 如果我们没击中目标…
    {
        llDie(); // Auto destruct.
    }
}
相关函数
相关事件