Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Question regarding access list door script

Lion Regent
Registered User
Join date: 22 Nov 2006
Posts: 34
01-13-2008 11:05
Hello, I am working on a script for doors that I want to sell. The door should basically work like this: the owner of the door clicks on the door, and it becomes partially transparent and phantom for 15 seconds. The owner should be able to add anyone he or she wants to the access list. For selling purposes, I am using a vendor that rezzes the door. I want customers to be able to click on the door and walk through it. Therefore, I want the door to be accessed by everyone while in "demonstration" mode, but have the customer be able to create an access list for the door after they have purchased it. The current script I have has the access list, but it only works when there are names listed. Therefore, customers would not be able to see how the door works. Does anyone know what I need to add or have another script that works better? Thanks for your help!

Here is the script I have:

//-- Edit here, add names, must match exactly including case. Example: "Pathfinder Linden", "Matthew Linden", "Aki Linden"
list vgLstAccessNames = ["Pathfinder Linden", "Matthew Linden"];


default{
touch_start( integer vIntTouches ){
do{
--vIntTouches;
//-- check to see if touching av is in our list
if(~llListFindList( vgLstAccessNames, (list)llDetectedName( vIntTouches ) )){
llSetStatus( STATUS_PHANTOM, TRUE ); //-- make door phantom
llSetAlpha( .5, ALL_SIDES ); //-- make door half transparent
llSetTimerEvent( 15.0 ); //-- wait 15sec from last valid touch before closing
}
}while (vIntTouches);
}

timer(){
llSetTimerEvent( .0 ); //-- stops the timer from repeating every 15sec
llSetStatus( STATUS_PHANTOM, FALSE ); //-- make door solid
llSetAlpha( 1.0, ALL_SIDES ); //-- make door opaque again
}
}
Mrc Homewood
Mentor of Randomness
Join date: 24 Feb 2007
Posts: 779
01-13-2008 11:31
im not sure exaclly how to do it, but you would need a list like, the owner could add names by a channel.

look up lists on 1 of the wikis
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
01-13-2008 12:09
True. A chat interface for adding and removing names, or a notecard with names in it if the object itself will be modifyable.

You can also have a different version of the object for demo from the one that you sell. For example, one with the access check disabled. Or you could check if you are the current owner of the object, and if so, let anyone open it; if not, do your normal access checks.
Lion Regent
Registered User
Join date: 22 Nov 2006
Posts: 34
01-13-2008 12:14
From: Hewee Zetkin
Or you could check if you are the current owner of the object, and if so, let anyone open it; if not, do your normal access checks.


Yeah, I thought about how I can just let anyone open it in the demo version and then include a notecard explaining how to set up the access list when people purchase. But once I took out the names on the access list, the door did not work at all. So I would like to know if there is something that allows everyone to open the door.
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
01-13-2008 12:24
Certainly. Don't do any access checks at all. Don't search the list for the name of the person trying to open the door; just open it.
Jack Tigerpaw
Registered User
Join date: 19 Nov 2007
Posts: 21
01-13-2008 12:55
I think he means he would still like customers to be able to try the features though when it rezzes.

So, my suggestion is allow anyone when it first rezzes, somehow set the person who clicks on it as the owner of the rezzed door and let them play with the access controls/commands.

Not sure how to code that yet, good luck!
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
01-13-2008 13:09
From: Lion Regent
The current script I have has the access list, but it only works when there are names listed. Therefore, customers would not be able to see how the door works.


The only input into the script is by editting it and manually adding names into the list. There is no "work" for potential customers to see. There are no access controls/commands to play with.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
01-13-2008 14:03
From: Jesse Barnett
The only input into the script is by editting it and manually adding names into the list. There is no "work" for potential customers to see. There are no access controls/commands to play with.

I believe the quoted statement was probably referring to the eventual production script under development, not what has been posted. It is for designing this final script that the Lion is asking these questions.

Another idea is to disable access control if the access list is empty (if 'llGetListLength(vgLstAccessNames) == 0').
Lion Regent
Registered User
Join date: 22 Nov 2006
Posts: 34
01-13-2008 15:15
From: Hewee Zetkin
I believe the quoted statement was probably referring to the eventual production script under development, not what has been posted. It is for designing this final script that the Lion is asking these questions.

Another idea is to disable access control if the access list is empty (if 'llGetListLength(vgLstAccessNames) == 0').



I tried your method and I received a syntax error. I know very little about scripts, so it would be great if you can say where exactly to put it. I was able to find the script that I want (copy/trans) but it costs $L2000. Do you think it is worth the cost for what I'm trying to do? Thanks.
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
01-13-2008 16:16
From: Lion Regent
I tried your method and I received a syntax error. I know very little about scripts, so it would be great if you can say where exactly to put it. I was able to find the script that I want (copy/trans) but it costs $L2000. Do you think it is worth the cost for what I'm trying to do? Thanks.

I think finding the syntax error would be a good excercise to try yourself. If you're really having trouble, post the line causing the error and I'm sure one of us can offer some advice.

As for a reasonable script price, that's a hard one for me to answer. It might be the order of magnitude I'd negotiate for doing a full-permission script like this for someone, but I don't really buy or sell scripts otherwise. Maybe someone else can give us the benefit of their experience on current market values for this sort of thing.
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
01-13-2008 17:14
I've taken to including a test for a special name in the list for things like this.. test it on notecard read or whatever, and set a boolean for it... if true, anyone can use, if false only the people in the list can use, if there's no list, only the owner.
_____________________
|
| . "Cat-Like Typing Detected"
| . This post may contain errors in logic, spelling, and
| . grammar known to the SL populace to cause confusion
|
| - Please Use PHP tags when posting scripts/code, Thanks.
| - Can't See PHP or URL Tags Correctly? Check Out This Link...
| -
Tyken Hightower
Automagical
Join date: 15 Feb 2006
Posts: 472
01-13-2008 21:28
Edit: Arf.
_____________________
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
01-13-2008 23:47
From: Lion Regent
I tried your method and I received a syntax error. I know very little about scripts, so it would be great if you can say where exactly to put it. I was able to find the script that I want (copy/trans) but it costs $L2000. Do you think it is worth the cost for what I'm trying to do? Thanks.

2k for a accesslist script? on one hand it's only ~8$US... on the other hand... ::shakes head::
_____________________
|
| . "Cat-Like Typing Detected"
| . This post may contain errors in logic, spelling, and
| . grammar known to the SL populace to cause confusion
|
| - Please Use PHP tags when posting scripts/code, Thanks.
| - Can't See PHP or URL Tags Correctly? Check Out This Link...
| -
Imaze Rhiano
Registered User
Join date: 27 Dec 2007
Posts: 39
01-14-2008 01:03
Come on guys! I guess that we can help in small issue like this? We don't lose anything in simple script like this.

CODE

default
{
touch_start( integer vIntTouches )
{
llSetStatus( STATUS_PHANTOM, TRUE ); //-- make door phantom
llSetAlpha( .5, ALL_SIDES ); //-- make door half transparent
llSetTimerEvent( 15.0 ); //-- wait 15sec from last valid touch before closing
}

timer()
{
llSetTimerEvent( .0 ); //-- stops the timer from repeating every 15sec
llSetStatus( STATUS_PHANTOM, FALSE ); //-- make door solid
llSetAlpha( 1.0, ALL_SIDES ); //-- make door opaque again
}
}


If you want better, I can make one. For price :P Much less than 2000...
Larrie Lane
Registered User
Join date: 9 Feb 2007
Posts: 667
01-14-2008 01:13
Lion

From what I understand from your post, you are actually either looking for a script that does the things mentioned or designing a script to sell with your builds.
There's already a script available in world that can add names to the door menus from chat and make the door, go phantom, invisible or pretty much whatever you want it to do and it can also be accessed by anyone for demo purposes.

The actual door itself has to be setup via a notecard but upon selling the build the purchaser does not have to do anything, only add access names from chat, access can be for group only as well.

If you want to know more the IM in world for a landmark of the seller, although this is a little more than L$2000 you will not just get a door script but many others and IMO is most probably one of the best set of scripts money can buy.
Jesse Barnett
500,000 scoville units
Join date: 21 May 2006
Posts: 4,160
01-14-2008 04:55
Reminder: This is Scripting Tips, where we help people to learn scripting. Please do not offer Scripting for Hire services here. In cases where someone clearly is interested in purchasing instead of learning then we suggest to them that they advertise in the Products Wanted forum.
_____________________
I (who is a she not a he) reserve the right to exercise selective comprehension of the OP's question at anytime.
From: someone
I am still around, just no longer here. See you across the aisle. Hope LL burns in hell for archiving this forum