The problem I have is this. The elevator shaft is about 35 meters from top to bottom. It has two floors near the top of the shaft, for the house atop a steep sloping hill, and one stop much farther below, that leads to a boat dock. The script accepts open chat commands, like "goto floor 2" to go to the top floor, and "goto floor 0" to go to the lowest floor. But if you're at the top, and the elevator car is at the bottom... well, you have to 'shout' the command for the elevator to hear you.
Not very elegant, and it might annoy the neighbors.What I would like to do is to eliminate the open channel 0 listen, and replace that open chat command with a 'call elevator' button at each floor, and a 3-button control panel that is linked to the elevator car, for selecting which floor to go to.
Obviously, the three call buttons at each floor can't be linked to the moving elevator car, so I can't use a linked message handler and listener. So how do I get them to communicate with the elevator, to send it a message calling it to that floor? Do I have to set the call buttons to send an e-mail to the UUID key of the elevator's root prim? Or if I set a touch event on the top floor button to 'say' the 'goto floor 2' command on some channel other than 0, will that overcome the 20 M distance limit that chat on channel 0 imposes, if you don't shout? What is the range limit of listening on a non-zero channel?
I have a pretty good idea how to script the in-car control panel. I can see the subroutines in the script for handling the three verbal commands, and I have done scripts before that pass touch events to a listener in another linked prim. So setting up a touch event that uses llLinkMessage to pass which button was clicked on to the elevator scripts should be fairly simple. Likewise, once I get the root script to realize it's been sent a message, somehow, from call button 2, I know what to do from there to send it to 2. It's the communication step between the call button and the elevator car that I am unsure of.
Thanks in advance for any help or advice!
PS - An unrelated issue. When the elevator moves, everyone does a strange 'run in place' animation. I have Seagel's 'sit elevator' script, that uses the 'Impatient' animation for the person standing in his sit elevator. That looks so much better! Is there a way to define the animation that someone in a physics elevator will perform when it moves, if they are not sitting on something?
