Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

llBreakLinks permission

Oberon Onmura
Registered User
Join date: 28 Dec 2006
Posts: 125
01-16-2009 14:36
HI -

I'd like to enable any user to touch an object and break all links in that object. So far, I have been stymied by the need to ask the owner's permission to break all links. Is there a way for me (the creator) to allow anyone who touches the object to break all the links in it?

As always, thanks much!
Escort DeFarge
Together
Join date: 18 Nov 2004
Posts: 681
01-16-2009 15:19
I think what you probably need is --- rather than put the permission request in the touch_start - put the permission request in the state_entry and also when you detect CHANGED_OWNER, then just break links on touch.
_____________________
http://slurl.com/secondlife/Together
Oberon Onmura
Registered User
Join date: 28 Dec 2006
Posts: 125
01-16-2009 18:14
From: Escort DeFarge
I think what you probably need is --- rather than put the permission request in the touch_start - put the permission request in the state_entry and also when you detect CHANGED_OWNER, then just break links on touch.


hmm ... the owner actually doesn't change ...
Cappy Frantisek
Open Source is the Devil!
Join date: 27 Oct 2006
Posts: 400
01-17-2009 02:53
Uh no, you need to read

http://wiki.secondlife.com/wiki/LlBreakLink

Excerpt:

Function: llBreakLink( integer linknum );

Delinks the prim with the given link number in a linked object set
• integer linknum – Link number (0: unlinked, 1: root prim, >1: child prims) or a LINK_* flag

Requires the PERMISSION_CHANGE_LINKS permission, granted by the owner, to run.

Added: And this

http://wiki.secondlife.com/wiki/LlBreakAllLinks

Excerpt:

Function: llBreakAllLinks( );

Delinks all prims in the link set.

Requires the PERMISSION_CHANGE_LINKS permission, granted by the owner, to run.
Oberon Onmura
Registered User
Join date: 28 Dec 2006
Posts: 125
01-17-2009 05:27
From: Cappy Frantisek
Uh no, you need to read

http://wiki.secondlife.com/wiki/LlBreakLink

Excerpt:

Function: llBreakLink( integer linknum );

Delinks the prim with the given link number in a linked object set
• integer linknum – Link number (0: unlinked, 1: root prim, >1: child prims) or a LINK_* flag

Requires the PERMISSION_CHANGE_LINKS permission, granted by the owner, to run.

Added: And this

http://wiki.secondlife.com/wiki/LlBreakAllLinks

Excerpt:

Function: llBreakAllLinks( );

Delinks all prims in the link set.

Requires the PERMISSION_CHANGE_LINKS permission, granted by the owner, to run.


Right. OK. Thanks. I'll try to figure out a different way.
Escort DeFarge
Together
Join date: 18 Nov 2004
Posts: 681
01-17-2009 21:40
From: Oberon Onmura
hmm ... the owner actually doesn't change ...

Until you give it away.
_____________________
http://slurl.com/secondlife/Together
Django Yifu
Beat Island Gaffer
Join date: 7 May 2007
Posts: 189
01-22-2009 05:25
Can't be done without changing owner as the above post clearly points out. Why do you require the link-set to change. Maybe with a bit more info a clearer solution could be worked out.

This has personally bugged me on occasion and I have tried to design many work arounds for this. The down side has been that I have needed a new solution for nearly every new situation. I have not found an "off the peg" solution that fits all.
_____________________
Tread softly upon the Earth for you walk on my face.
Django Yifu
Beat Island Gaffer
Join date: 7 May 2007
Posts: 189
01-22-2009 05:25
Can't be done without changing owner as the above post clearly points out. Why do you require the link-set to change? Maybe with a bit more info a clearer solution could be worked out.

This has personally bugged me on occasion and I have tried to design many work arounds for this. The down side has been that I have needed a new solution for nearly every new situation. I have not found an "off the peg" solution that fits all.
_____________________
Tread softly upon the Earth for you walk on my face.
Harmpie Rhode
Registered User
Join date: 31 Aug 2007
Posts: 3
02-15-2009 10:57
What I like to know is:

Is it possible in any way, to transfer the given change link permission to another script?

for example, use a hud to give a command to several linked sets inworld to unlink a certain object from the set, while only giving the permission once and not for each separate module.
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
02-15-2009 12:49
Well, you can request the permission before taking the object into inventory, then take it and rez as many copies as you want. The script in each will have its state from the moment you took it into inventory, including the permissions you granted it.

This won't work for keeping permissions between owner changes, though, because part of the script state remembers which avatar granted the permission (i.e. llGetPermissionsKey()), and if it wasn't the current owner, bad luck; won't work. You must re-request permissions.
Harmpie Rhode
Registered User
Join date: 31 Aug 2007
Posts: 3
02-15-2009 12:56
yeah, and that wont work when they need to be rezzed from a box first either. So I gues there is no way to really do this. Too bad, I'll just have to figure out a way to script around that.

Problem is that I'm making a module building system, and need something to pin out the rotation center of the linked set that makes up the module, wanted to use a box for that which could be delinked and removed afterwards with freezing the module parts. Maybe a better question is:

Is there any way to make something rotate around something other then the center of the root prim?