Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Mixer Board

Zeta Eizenstark
Registered User
Join date: 20 Aug 2008
Posts: 79
06-04-2009 10:24
I'm getting really annoyed at the physical physics. I'm trying to make a mixer board with actuall slides that.....slide up and down but when I put it on physical they just shoot out. This is what I have right now, a hollow box as the base, and angled squares with spaces in between them. I have the slider which is longer than the space and is attached to a board below the squares....if you want too see I can send you a copy but it aint pretty. Any help would be good. And if anyone knows how one could have a sound longer than ten seconds, it would be nice to know. Thanks to anyone that helps.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
06-04-2009 10:47
To have a sound longer than 10s you have to use two sounds.

And physics in SL is really not useful for any parts smaller than about half a meter across. You lose 20cm just in the collision envelope.

What you want to do is have scripted prims that use llDetectedDrag() and position themselves continually using llSetPos()
_____________________
Argent Stonecutter - http://globalcausalityviolation.blogspot.com/

"And now I'm going to show you something really cool."

Skyhook Station - http://xrl.us/skyhook23
Coonspiracy Store - http://xrl.us/coonstore
Zeta Eizenstark
Registered User
Join date: 20 Aug 2008
Posts: 79
06-04-2009 11:14
I'm sorry to be so picky, but did you mean grab instead of drag, cause i couldn't find llDetectedDrag(). Just wanted to make sure I use the right one.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
06-04-2009 11:18
From: Zeta Eizenstark
I'm sorry to be so picky, but did you mean grab instead of drag, cause i couldn't find llDetectedDrag(). Just wanted to make sure I use the right one.
Yeh, I meant grab. Stupid ferret, got a brain the size of a peanut.

_____________________
Argent Stonecutter - http://globalcausalityviolation.blogspot.com/

"And now I'm going to show you something really cool."

Skyhook Station - http://xrl.us/skyhook23
Coonspiracy Store - http://xrl.us/coonstore
Rolig Loon
Not as dumb as I look
Join date: 22 Mar 2007
Posts: 2,482
06-04-2009 11:19
From: Argent Stonecutter
What you want to do is have scripted prims that use llDetectedDrag() and position themselves continually using llSetPos()


You mean, as in ....

CODE

touch(num) {
vector oldPos = llGetPos();
vector slide = llDetectedGrab(0);
llSetPos(oldPos + slide.z);
}


? I didn't know you could do that. Neat.
_____________________
It's hard to tell gender from names around here but if you care, Rolig = she. And I exist only in SL, so don't ask.... ;)

Look for my work in XStreetSL at
Zeta Eizenstark
Registered User
Join date: 20 Aug 2008
Posts: 79
06-05-2009 11:39
ok, i've gotten this to work somewhat

CODE

vector pos;
vector Pos;

default
{
touch_start(integer num)
{
pos = llGetPos();
}

touch(integer total_number)
{
Pos = llDetectedGrab(0);
}
touch_end(integer num)
{
if( Pos.x > .5)
Pos.x = .5;
if( Pos.x < -.5)
Pos.x = -.5;
pos.x += Pos.x;
llSay(0, (string)Pos.x);
llSetPos(pos);
}
}

CODE


any info on how to make it slide diaganally or that it doesn't move more than a certain distance, meaning that if i'm at .4 it doesn't add another .5, would be nice.
Zeta Eizenstark
Registered User
Join date: 20 Aug 2008
Posts: 79
06-09-2009 10:01
anyone?
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
06-09-2009 10:22
Keep track of the last dragged position, and subtract the change the previous value.

To convert a change in X to a movement along another vector, multiply the vector by the movement.

eg:

xyvector = llVecNorm(<1,1,0>;); // unit vector along the xy axis

newpos = basepos + xyvector * (pos.x - prevpos.x);
_____________________
Argent Stonecutter - http://globalcausalityviolation.blogspot.com/

"And now I'm going to show you something really cool."

Skyhook Station - http://xrl.us/skyhook23
Coonspiracy Store - http://xrl.us/coonstore