Table of Contents

LSL: Functions: can_haz_rez()

can_haz_rez()

integer can_haz_rez(vector pos) {
    integer parcel_flags = llGetParcelFlags(pos);
    if (parcel_flags & PARCEL_FLAG_ALLOW_CREATE_OBJECTS) {
        // Rez is allowed for all
        return TRUE;
    }
 
    list parcel_details = llGetParcelDetails(pos, [PARCEL_DETAILS_OWNER, PARCEL_DETAILS_GROUP]);
    if (llList2Key(parcel_details, 0) == llGetOwner()) {
        // Owner can always rez
        return TRUE;
    }
 
    // Do we have group rez rights?
    return (parcel_flags & PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS) &&
        llSameGroup(llList2Key(parcel_details, 1));
}