我的问题是如何在LSL中更改特定对象的参数。是否有任何功能来引用密钥(或UUID)?为了更清楚,我想使用像llSetPrimitiveParams这样的函数,但在我的世界中使用Key(UUID)的特定引用。
答案 0 :(得分:2)
您只能使用一个脚本更改链接集之外的对象参数。
但是,如果相关对象是您可以使用的相同链接集的一部分
llSetLinkPrimitiveParamsFast
更改其参数。
答案 1 :(得分:1)
鉴于我已经使用了很长时间的LSL,我确实希望写在这里。投票评论也是由原始海报说明,您不能引用任何仅提供其UUID的对象。实际上你可以做很多事情,而不必实际链接它们。如果你专门针对一个没有脚本的对象发表评论,那就是给定一个给定的东西而不至少控制所需的动作,链接,脚本等。
您可以使用llSetRemoteScriptAccessPin& llRemoteLoadScriptPin,用于传递设置对象的脚本。
您可以使用各种聊天功能,例如llWhisper,llSay,llShout,llRegionSay,llRegionSayTo,请注意您保持负面频道。如果你想通过聊天功能想要更安全的东西。可以考虑使用llRegionSayTo。
您也可以通过电子邮件,http甚至https向其发送数据。
如果您希望动态链接两个对象,而不管它们是否一遍又一遍地被重新加入。只需使用一个网站来存储一个对象提取或两者都可以获取的数据(或者只是对象的新UUID)。还有一些站点致力于允许这种类型(键/值存储等)。虽然,滚动你自己很容易。
有很多方法可以做同样的事情并产生想要的结果。如果我已经排除了对某事物的具体提及,因为广义包含就足够了。 LSL Wiki可以提供更好的理解。
如果只想更改一次对象,则可以在脚本完成任务后将脚本设置为删除。对于引脚,您可以在需要更改时将脚本设置为对象,然后在之后删除。
答案 2 :(得分:0)
在LSL中,您只能通过提供 UID 来引用任何对象。您需要创建一组对象(链接它们),然后通过llSetLinkPrimitiveParamsFast
处理您想要的每个对象中的任何类型的事件。那为我做了这件事。