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:
// 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.
}
}
|