Ruthven Ravenhurst Posted April 20, 2016 Share Posted April 20, 2016 I'm trying to figure out if there's a script function to test if an avatar has building/rezzing permissions. I would like the script I'm working on to act accordingly, instead of attempting to rez objects and shouting errors when it can't Link to comment Share on other sites More sharing options...
Dora Gustafson Posted April 20, 2016 Share Posted April 20, 2016 What we have is llGetParcelFlags() Use PARCEL_FLAG_ALLOW_CREATE_OBJECTS This will not cover all kind of relationships like 'in group' and group permissions :smileysurprised::smileyvery-happy: Link to comment Share on other sites More sharing options...
Ruthven Ravenhurst Posted April 21, 2016 Author Share Posted April 21, 2016 Hmm, so what I'm understanding is, it doesn't check if that specific avatar has permissions, just what the parcel settings are? Link to comment Share on other sites More sharing options...
Dora Gustafson Posted April 21, 2016 Share Posted April 21, 2016 That is just about right If you had taken time to investigate you might have found out that the function can check for more than just one flag The flag PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS tells if group members can rez and create This is valuable combined with a check for avatar in parcel group and activated :smileysurprised::smileyvery-happy: Link to comment Share on other sites More sharing options...
Ruthven Ravenhurst Posted April 22, 2016 Author Share Posted April 22, 2016 I did see that, I just wasn't sure how to test that against the group of the avatar, but I looked in the wiki more, and found: llSameGroup-Usefull Snippets /* By Aryn Gellner pos - position (in region coordinates) to check against.*//* Additional Land Owner Test added by Ruthven Willenov*/ integer is_rezzable(vector pos){ list details = llGetParcelDetails(pos, [PARCEL_DETAILS_GROUP, PARCEL_DETAILS_OWNER]); key group_id = llList2Key(details, 0); key owner_id = llList2Key(details, 1); integer parcel_flags = llGetParcelFlags(pos); if(owner_id != llGetOwner()) { if(parcel_flags & PARCEL_FLAG_ALLOW_CREATE_OBJECTS) { return TRUE; } else if((parcel_flags & PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS) && llSameGroup(group_id)) { return TRUE; } else { return FALSE; }} else{return TRUE;}} Link to comment Share on other sites More sharing options...
Recommended Posts
Please take a moment to consider if this thread is worth bumping.
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now