Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

HELP,,,, camping pad script

Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
10-03-2006 08:36
i need to make this script work for group members only what would i add and where would i add it at, im not that good of a scripter so i need good help on this one and fast please if anyone knows help me out


this is the script i have now.

CODE


integer campmoney = 0; // Initial amount to grant someone upon the VERY first sit after first rez. (Think, Special bonus)
integer campadd = 1; // Payout amount
integer camptime = 600; // Payout time in seconds (Script USES this)
string camptimeM = "10"; // Payout time in minutes (Attract SAYS this)
string reciever; // key of Sitter
default {
state_entry() {
llRequestPermissions(llGetOwner(),PERMISSION_DEBIT ); //Ask my owner for permission to give money and assume it suceeds
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // Set the hovertext to attract mode
llSitTarget(<0.4, 0, 0.6>, ZERO_ROTATION); // needed for llAvatarOnSitTarget to work
// Note that if both the vector and the rotation are zero,
// the SitTarget is removed instead of set and the following will not work:
}

changed(integer change) { // something changed
if (change & CHANGED_LINK) { // and it was a link change
if (llAvatarOnSitTarget() != NULL_KEY) { // if Avatar key isn't empty, somebody is sitting on me
reciever = llAvatarOnSitTarget(); // store sitting avatar's key
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // Setting hovertext to current amount earned
llSetTimerEvent(camptime); // amount of time between payments in seconds
//llSay(0, "Get off!");
//llUnSit(llAvatarOnSitTarget()); // unsit him
}
else{ // if the avatar has gotten up
llGiveMoney(reciever,campmoney); // give the avatar the amount of money he has earned.
reciever=""; // forget who the receiver was
campmoney=0; // reset earning count to 0
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // change the hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call timer(). Disable timer.
}
}
}
timer()
{
campmoney = campmoney+campadd; // current amount + xL$ per camptime
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // update hovertext with currently earned amount
if (llAvatarOnSitTarget() != NULL_KEY) {} // If there's someone sitting on me, Do Nothing, ELSE

else { // Noone's sitting on me, reset the vars
reciever=""; // forget who the receiver was
campmoney=0; // reset earning count to 0
llSetText("sit here for free money,\nL$" + (string)campadd + " every "+camptimeM+" minutes",<0,1,0>,1); // change hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call myself anymore. Disable timer.
}
}
}

Tiarnalalon Sismondi
Registered User
Join date: 1 Jun 2006
Posts: 402
10-03-2006 09:44
Well..the first thing everyone is going to ask of you is to edit the post and put [ PHP] code here [ /PHP] (without the spaces).
Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
10-03-2006 09:58
i don tknow how to do that hun could you explane?
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
10-03-2006 10:03
This should do what you're looking to do:
CODE
integer campmoney = 0; // Initial amount to grant someone upon the VERY first sit after first rez. (Think, Special bonus)
integer campadd = 1; // Payout amount
integer camptime = 600; // Payout time in seconds (Script USES this)
string camptimeM = "10"; // Payout time in minutes (Attract SAYS this)
string reciever = NULL_KEY; // key of Sitter

default
{
state_entry()
{
llRequestPermissions(llGetOwner(),PERMISSION_DEBIT ); //Ask my owner for permission to give money and assume it suceeds
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // Set the hovertext to attract mode
llSitTarget(<0.4, 0, 0.6>, ZERO_ROTATION); // needed for llAvatarOnSitTarget to work
// Note that if both the vector and the rotation are zero,
// the SitTarget is removed instead of set and the following will not work:
}

changed(integer change)
{ // something changed
if (change & CHANGED_LINK)
{ // and it was a link change
if (llAvatarOnSitTarget() != NULL_KEY && reciever == NULL_KEY)
{ // if Avatar key isn't empty, somebody is sitting on me
if ( llSameGroup(llAvatarOnSitTarget()) ) // Check that the sitter is of the same group as the prim
{ // if so, allow them to sit and start the payments
reciever = llAvatarOnSitTarget(); // store sitting avatar's key
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // Setting hovertext to current amount earned
llSetTimerEvent(camptime); // amount of time between payments in seconds
}
else
{// if not, boot them off with an explanation.
llSay(0, "Group members only, sorry.");
llSay(0, "If you are a group member, please \"wear your tags\" by making the group active..");
llUnSit(llAvatarOnSitTarget()); // unsit him or her
}
}
else if( reciever != NULL_KEY )
{ // if the avatar has gotten up
llGiveMoney(reciever,campmoney); // give the avatar the amount of money he has earned.
reciever = NULL_KEY; // forget who the receiver was
campmoney=0; // reset earning count to 0
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // change the hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call timer(). Disable timer.
}
}
}

timer()
{
campmoney = campmoney+campadd; // current amount + xL$ per camptime
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // update hovertext with currently earned amount
if (llAvatarOnSitTarget() == NULL_KEY)
{ // Noone's sitting on me, reset the vars
reciever = NULL_KEY; // forget who the receiver was
campmoney = 0; // reset earning count to 0
llSetText("sit here for free money,\nL$" + (string)campadd + " every "+camptimeM+" minutes",<0,1,0>,1); // change hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call myself anymore. Disable timer.
}
}
}


To puse PHP tags, just put [ php] and [ /php] around your code (without the space I inserted to keep the interpreter form interpreting them).
_____________________
Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
10-03-2006 10:05
yay i did it ty so much hun :D

learn something new everyday
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
10-03-2006 10:08
From: Allatu Augustus
yay i did it ty so much hun :D

learn something new everyday
Is what this forum's for, N'est-il pas? =^.^=
_____________________
Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
10-03-2006 12:39
i know its still early but im just dieing to know how to do this lol i guess ill go to sleep now and hope someone has something by the time i get back :D
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
10-03-2006 15:48
From: Allatu Augustus
i know its still early but im just dieing to know how to do this lol i guess ill go to sleep now and hope someone has something by the time i get back :D
Ah - I posted a script that does exactly what you asked, yes? See above?
_____________________
Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
10-03-2006 16:22
oh oops lol i didnt look at the script you put it cause i thought you just did that to show me the PHP thing thank you so much hun :D
raven Blair
Registered User
Join date: 2 Feb 2004
Posts: 39
11-03-2006 15:55
I was hopen to get a hand with this script, i was wanting to add on and off diolog comands for the owner, and diolog comands to set price/time of payment, im not good at scripting at all, i cant write a script at all but i sometimes can mod them to do what i need or whant, i tried to do this myself but i only broke it over and over and over till i gave up.

So if anyone can help me add these things i would mostly aprishiate it.



CODE

integer campmoney = 0; // Initial amount to grant someone upon the VERY first sit after first rez. (Think, Special bonus)
integer campadd = 1; // Payout amount
integer camptime = 600; // Payout time in seconds (Script USES this)
string camptimeM = "10"; // Payout time in minutes (Attract SAYS this)
string reciever = NULL_KEY; // key of Sitter

default
{
state_entry()
{
llRequestPermissions(llGetOwner(),PERMISSION_DEBIT ); //Ask my owner for permission to give money and assume it suceeds
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // Set the hovertext to attract mode
llSitTarget(<0.4, 0, 0.6>, ZERO_ROTATION); // needed for llAvatarOnSitTarget to work
// Note that if both the vector and the rotation are zero,
// the SitTarget is removed instead of set and the following will not work:
}

changed(integer change)
{ // something changed
if (change & CHANGED_LINK)
{ // and it was a link change
if (llAvatarOnSitTarget() != NULL_KEY && reciever == NULL_KEY)
{ // if Avatar key isn't empty, somebody is sitting on me
if ( llSameGroup(llAvatarOnSitTarget()) ) // Check that the sitter is of the same group as the prim
{ // if so, allow them to sit and start the payments
reciever = llAvatarOnSitTarget(); // store sitting avatar's key
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // Setting hovertext to current amount earned
llSetTimerEvent(camptime); // amount of time between payments in seconds
}
else
{// if not, boot them off with an explanation.
llSay(0, "Group members only, sorry.");
llSay(0, "If you are a group member, please \"wear your tags\" by making the group active..");
llUnSit(llAvatarOnSitTarget()); // unsit him or her
}
}
else if( reciever != NULL_KEY )
{ // if the avatar has gotten up
llGiveMoney(reciever,campmoney); // give the avatar the amount of money he has earned.
reciever = NULL_KEY; // forget who the receiver was
campmoney=0; // reset earning count to 0
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM+" minutes",<0,1,0>,1); // change the hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call timer(). Disable timer.
}
}
}

timer()
{
campmoney = campmoney+campadd; // current amount + xL$ per camptime
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // update hovertext with currently earned amount
if (llAvatarOnSitTarget() == NULL_KEY)
{ // Noone's sitting on me, reset the vars
reciever = NULL_KEY; // forget who the receiver was
campmoney = 0; // reset earning count to 0
llSetText("sit here for free money,\nL$" + (string)campadd + " every "+camptimeM+" minutes",<0,1,0>,1); // change hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call myself anymore. Disable timer.
}
}
}



P.S. if it is easyer to make the comands a chat comand rather than a diolog box that is fine as well, just wanted diolog box to keep lag down.
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-04-2006 04:05
as far as I know, Dialogue boxes work using llSay.. is that right?

If you have two chairs, in close proximity, (and most camp chair setups are fairly tightly spaced) how do you keep chair A's dialogue from changing the settings on Chair B?

- Assuming of course that you'd WANT to.. if you had one chair set to 3L$/10m and wanted a second chair at 2L$/15m... wouldnt' the menu confuse the other chair? I recently had this very same problem with a menu driven colour change script... change the colour on one car, and your other car parked next to it, changes colour as well.

Perhaps specifying a channel number in the chair's descriptions?


Wouldn't these "settings" just be easier to place in a notecard?
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-04-2006 06:21
Put the Dialog Commands in the camping chair but keyed only to the owner.

The following hasnt been tested but I think its right.
CODE

integer campmoney = 0; // Initial amount to grant someone upon the VERY first sit after first rez. (Think, Special bonus)
integer campadd = 1; // Payout amount
integer camptime = 600; // Payout time in seconds (Script USES this)
string camptimeM = "10 minutes"; // Payout time in minutes (Attract SAYS this)
string reciever = NULL_KEY; // key of Sitter

list MenuChoices = ["On","Off","Payout","Bonus","Time"];
list AmountChoices = ["1$","2$","3$","4$","5$","10$"];
list BonusChoices = ["1$ Bonus","2$ Bonus","3$ Bonus","4$ Bonus","5$ Bonus","10$ Bonus"];
list TimerChoices = ["1 minute","2 minutes","3 minutes","4 minutes","5 minutes","10 minutes","15 minutes"];
integer Listening = 0;
integer listenchannel = 0;

UpdateListen(key id)
{
CancelListen();
Listening = llListen(listenchannel,"",id,"");
llSetTimerEvent(30);
}

CancelListen()
{
if(Listening > 0) llListenRemove(Listening);
Listening = 0;
llSetTimerEvent(0);
}

// Owner Conversation Dialog
ShowMainMenu(key id)
{

string text = "Main Menu\nPlease Select an Option";
// finally show the dialog
llDialog(id,text,MenuChoices,listenchannel);
UpdateListen(id);
}

ShowPayoutMenu(key id)
{

string text = "Payout Menu\nPlease Select an amount";
// finally show the dialog
llDialog(id,text,AmountChoices,listenchannel);
UpdateListen(id);
}

ShowBonusMenu(key id)
{

string text = "Bonus Menu\nPlease Select an amount";
// finally show the dialog
llDialog(id,text,BonusChoices,listenchannel);
UpdateListen(id);
}

ShowTimerMenu(key id)
{

string text = "Timer Menu\nPlease Select a time period";
// finally show the dialog
llDialog(id,text,TimerChoices,listenchannel);
UpdateListen(id);
}

SetInactive()
{
reciever = NULL_KEY; // forget who the receiver was
campmoney = 0; // reset earning count to 0
llSetText("sit here for free money,\nL$" + (string)campadd + " every "+camptimeM,<0,1,0>,1); // change hovertext back to attract mode
llSetTimerEvent(0); // Nobody is sitting on me, so no need to call myself anymore. Disable timer.
}
// States
default
{
state_entry()
{
llRequestPermissions(llGetOwner(),PERMISSION_DEBIT ); //Ask my owner for permission to give money and assume it suceeds
state Running;
}

on_rez(integer num) { llResetScript(); }
}

state Running
{
state_entry()
{
llSetText("sit here for free money,\nL$"+(string)campadd+" every "+camptimeM,<0,1,0>,1); // Set the hovertext to attract mode
llSitTarget(<0.4, 0, 0.6>, ZERO_ROTATION); // needed for llAvatarOnSitTarget to work
}

changed(integer change)
{
// something changed
if (change & CHANGED_LINK)
{
// and it was a link change
if (llAvatarOnSitTarget() != NULL_KEY && reciever == NULL_KEY)
{
// if Avatar key isn't empty, somebody is sitting on me
if ( llSameGroup(llAvatarOnSitTarget()) ) // Check that the sitter is of the same group as the prim
{
// if so, allow them to sit and start the payments
reciever = llAvatarOnSitTarget(); // store sitting avatar's key
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // Setting hovertext to current amount earned
llSetTimerEvent(camptime); // amount of time between payments in seconds
}
else
{
// if not, boot them off with an explanation.
llSay(0, "Group members only, sorry.");
llSay(0, "If you are a group member, please \"wear your tags\" by making the group active..");
llUnSit(llAvatarOnSitTarget()); // unsit him or her
}
}
else if( reciever != NULL_KEY )
{
// if the avatar has gotten up
llGiveMoney(reciever,campmoney); // give the avatar the amount of money he has earned.
SetInactive();
}
}
}

timer()
{
campmoney = campmoney+campadd; // current amount + xL$ per camptime
llSetText("Money: L$"+(string)campmoney,<0,1,0>,1); // update hovertext with currently earned amount
if (llAvatarOnSitTarget() == NULL_KEY)
{
// Noone's sitting on me, reset the vars
SetInactive();
}
}

touch_start(integer total_number)
{
// Owner
key id = llDetectedKey(0);
if( (id == llGetOwner()))
{
state Menu;
}
}

}


state Menu
{
state_entry()
{
ShowMainMenu(llGetOwner());
}

on_rez(integer num) { state default; }

timer()
{
CancelListen();
state Running;
}

listen( integer channel, string name, key id, string message )
{
CancelListen();

if("On" == message)
state Running;
else if("Off" == message)
state Disabled;
else if("Payout" == message)
ShowPayoutMenu(id);
else if("Bonus" == message)
ShowBonusMenu(id);
else if("Time" == message)
ShowTimerMenu(id);
else
{
integer index = llListFindList(AmountChoices, [ message ]);
if(index >= 0)
{
campadd = (integer)message;
state Running;
}
else
{
index = llListFindList(BonusChoices , [ message ]);
if(index >= 0)
{
campmoney = (integer)message;
state Running;
}
else
{
index = llListFindList(TimerChoices, [ message ]);
if(index >= 0)
{
camptimeM = message;
camptime = 60 * (integer)message; // Payout time in seconds (Script USES this)
state Running;
}
}
}
}
}

}

state Disabled
{
state_entry()
{
llSetText("",<0,1,0>,1); // Set the hovertext to attract mode
}

touch_start(integer total_number)
{
// Owner or owner Group control
key id = llDetectedKey(0);
if( (id == llGetOwner()))
{
state Menu;
}
}
}


Obvious things, if someone is sat on it when you change it to off mode they wont get paid.
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-05-2006 13:30
Wouldn't the owner be the same for multiple chairs in close vicinity?

Perhaps something could be done to track the position of the chair being spoken to?
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Allatu Augustus
Allatu Agustus
Join date: 19 Nov 2005
Posts: 32
11-06-2006 16:13
From: Winter Ventura
Wouldn't the owner be the same for multiple chairs in close vicinity?

Perhaps something could be done to track the position of the chair being spoken to?




Just change some small thing in each script to read diff but have the same outcome
that might work, i dont know ill test it with this script, i do things the lazy way :P
raven Blair
Registered User
Join date: 2 Feb 2004
Posts: 39
11-06-2006 16:45
From: Allatu Augustus
Just change some small thing in each script to read diff but have the same outcome
that might work, i dont know ill test it with this script, i do things the lazy way :P



ahhh this script has listen channles you can set each one diff, but it workds just fine with two next to eachother so there is no need to

CODE

integer Listening = 0;
integer listenchannel = 0;



Great work Newgate ty for the help, but one thing isnt working witht his, when i try to set the time the script just stops working all in all, everythng else works great.
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-06-2006 17:58
My partner and I make cars.. and we've had a lot of problems with menu driven commands for colour change. If I have two cars within 30m, changing the colour on one will change the colour on another. Our patch for the issue, was just to have it owner keyed.

With cars, you can tolerate that.. because really, how likely are you to have that situation on a day-to-day basis? I mean.. one user owning 5 cars parked right up next to each other?

But with camping chairs.. ALL of your chairs are LIKELY to be within 30m of each other.. and it's a real serious issue if you want, let's say.. 1 chair @ 5/10m, 2 @ 4/10, 4 @3/10, and 10 @ 2/15.
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Raeyan Aldrich
Registered User
Join date: 14 Oct 2006
Posts: 44
11-06-2006 19:23
From: Winter Ventura
as far as I know, Dialogue boxes work using llSay.. is that right?

If you have two chairs, in close proximity, (and most camp chair setups are fairly tightly spaced) how do you keep chair A's dialogue from changing the settings on Chair B?

- Assuming of course that you'd WANT to.. if you had one chair set to 3L$/10m and wanted a second chair at 2L$/15m... wouldnt' the menu confuse the other chair? I recently had this very same problem with a menu driven colour change script... change the colour on one car, and your other car parked next to it, changes colour as well.

Perhaps specifying a channel number in the chair's descriptions?


Wouldn't these "settings" just be easier to place in a notecard?


You would need a timeout system. Something along the lines of:
CODE

integer CHANNEL = 0;
integer mylisten;

default
{
listen(integer channel, string name, key id, string message)
{
//put commands in here - example below
if(message == "mycommand")
{
//do this
}
}
touch_start(integer total_number)
{
if(llDetectedKey(0) == llGetOwner())
{
mylisten = llListen(CHANNEL, "", llGetOwner(), "");
llOwnerSay("Awaiting Command.");
llSleep(10.0); //Pause for 10 seconds (gives the owner time to speak);
llListenRemove(mylisten);
}
}
}



just a basic outline/idea for you... but when clicked by the owner the object will prompt the owner to say his/her command, after 10 seconds, it stops listening... if a command is heard, it will be processed at the end of the pause when the listen() event is called off the queue.
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-07-2006 00:28
From: raven Blair
ahhh this script has listen channles you can set each one diff, but it workds just fine with two next to eachother so there is no need to

CODE

integer Listening = 0;
integer listenchannel = 0;



Great work Newgate ty for the help, but one thing isnt working witht his, when i try to set the time the script just stops working all in all, everythng else works great.



OOPS!
Sorry cut and paste problem in the listen. I have corrected the code in the original post.
The problem was that the timer responces where not being processed.

CODE

listen( integer channel, string name, key id, string message )
{
CancelListen();

if("On" == message)
state Running;
else if("Off" == message)
state Disabled;
else if("Payout" == message)
ShowPayoutMenu(id);
else if("Bonus" == message)
ShowBonusMenu(id);
else if("Time" == message)
ShowTimerMenu(id);
else
{
integer index = llListFindList(AmountChoices, [ message ]);
if(index >= 0)
{
campadd = (integer)message;
state Running;
}
else
{
index = llListFindList(BonusChoices, [ message ]);
if(index >= 0)
{
campmoney = (integer)message;
state Running;
}
else
{
index = llListFindList(TimerChoices , [ message ]);
if(index >= 0)
{
camptimeM = message;
camptime = 60 * (integer)message; // Payout time in seconds (Script USES this)
state Running;
}
}
}
}
}
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-07-2006 00:32
From: Winter Ventura
My partner and I make cars.. and we've had a lot of problems with menu driven commands for colour change. If I have two cars within 30m, changing the colour on one will change the colour on another. Our patch for the issue, was just to have it owner keyed.

With cars, you can tolerate that.. because really, how likely are you to have that situation on a day-to-day basis? I mean.. one user owning 5 cars parked right up next to each other?

But with camping chairs.. ALL of your chairs are LIKELY to be within 30m of each other.. and it's a real serious issue if you want, let's say.. 1 chair @ 5/10m, 2 @ 4/10, 4 @3/10, and 10 @ 2/15.



The problem sounds like all of the cars are using the same channel to listen on and that its always active. Use an randomly generated channel only assigned on activation/touch and removed after processing would remove the problem.
Winter Ventura
Eclectic Randomness
Join date: 18 Jul 2006
Posts: 2,579
11-07-2006 02:03
Good idea Newgate. I'll be pointing my partner (the scripting guy) to this very thread in hopes of applying this idea to our 1.1 revision, and new cars due out soon.

But something needs to be done to insure that chair A knows you're talking to chair B, and that it can ignore you.

So many things seem simple on paper.. but in actual application, things come up. I can tell you, I was confused the first time I changed the colour on my car, and the one my partner was working on changed colour too. (we since fixed THAT btw.)
_____________________

● Inworld Store: http://slurl.eclectic-randomness.com
● Website: http://www.eclectic-randomness.com
● Twitter: @WinterVentura
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-07-2006 05:46
From: Winter Ventura
Good idea Newgate. I'll be pointing my partner (the scripting guy) to this very thread in hopes of applying this idea to our 1.1 revision, and new cars due out soon.

But something needs to be done to insure that chair A knows you're talking to chair B, and that it can ignore you.


Well thats why you make things touch activated. Chair A is the only one that goes into listen mode and that way there can be no cross over, Unless both chair A and chair B happen to choose the same channel which is very unlikely. In that situation you use the Owner as well or record the User ID who activated the selection.

From: Winter Ventura
So many things seem simple on paper.. but in actual application, things come up. I can tell you, I was confused the first time I changed the colour on my car, and the one my partner was working on changed colour too. (we since fixed THAT btw.)


Well its usually down to just oversight in the design. My first few attempts at dialogs always used the same channel, I mean I was only talking to one at a time so why worry...
No I'm a bit wiser and hopefully dont make anywhere near as many dumb mistakes.....
Kyrah Abattoir
cruelty delight
Join date: 4 Jun 2004
Posts: 2,786
11-07-2006 07:15
chck this : /54/b6/46156/1.html
_____________________

tired of XStreetSL? try those!
apez http://tinyurl.com/yfm9d5b
metalife http://tinyurl.com/yzm3yvw
metaverse exchange http://tinyurl.com/yzh7j4a
slapt http://tinyurl.com/yfqah9u
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-07-2006 12:45
From: Kyrah Abattoir



Yeah pretty much what I do although I use seperate functions.
raven Blair
Registered User
Join date: 2 Feb 2004
Posts: 39
11-07-2006 20:15
good part, time set works, bad part, you somehow broke the on comand
when your turn it off and try to turn it back on it wont come back on.



never mind i fixed it :D
Newgate Ludd
Out of Chesse Error
Join date: 8 Apr 2005
Posts: 2,103
11-07-2006 23:38
From: raven Blair
good part, time set works, bad part, you somehow broke the on comand
when your turn it off and try to turn it back on it wont come back on.



never mind i fixed it :D



Hmmm, Should have worked fine as is. What was the problem?
1 2 3