Jump to content

DarkEmperor13

Resident
  • Posts

    232
  • Joined

  • Last visited

Everything posted by DarkEmperor13

  1. Hi I'm very curious about something. I have seen in my time animations for women where the hips sway when they walk/run. I went into blender and fiddled with the volume bones of avastar and made an animation where the hips actually move. But when I uploaded the animation, the volume bones I edited don't move. Mind u have gone back and tried just using the regular bones but when I tried position the bones to make it look like a hip sway, I cant get the legs to level with one another. how do I do this? or is this only something that can be done using motion capture?
  2. I did and it still does this
  3. Hi I'm trying to make gloves for the belleza female bodies. I have it rigged and weighted perfectly but when I go to upload it and add it to avatar, the gloves don't rig to the hands like they should. Sorry for the age discretion. I forgot to put clothes on avi.
  4. is it possible to play an animation as well as a particle effect right before u teleport?
  5. WHAT'S UP PPL OF SECOND LIFE!? SO I AM IN THE BUILDING BUSINESS(A FIGURE OF SPEECH AND NOT LITERALLY) AND I AM WILLING TO MAKE STUFF FOR ANYONE WHO IS WILLING TO PAY AND REALLY NEED SOMETHING MADE FOR THEM! I MAKE CLOTHING FOR GIANNI, ADAM&EVE, MAITREYA, BELLEZA AND SLINK. I ALSO CREATE WEAPONS, VEHICLES, TYPERS, MAKEUP/TATTOOS AND MESH HOUSES. ANYONE WHO IS IN NEED OF ANYTHING MADE THAT FALLS UNDER THOSE CATEGORIES, PLZ MESSAGE ME IN-WORLD AND WE CAN DISCUSS BUSINESS!
  6. Hi i'm really in need of a script that handles multi-page dialog menus with sub menus in tow. The kind u see in furniture with animations. I could really use the help
  7. I'm trying to figure out how to make a multi-page menu with sub menus. // Simple Multipage Menu -- Rolig Loon -- August 2013 // The Menu routine in this script will parse your input list (gNames) into menu pages // of 12 buttons each, including a forward button and a back button, as appropriate. // It generates a page's buttons on demand, so that the list of button labels is // never more than 12 items long. // It does NOT trim potential menu items to fit the 25-character limit (or the // 12-character display limit), nor does it sort buttons or do other fancy things // that you are free to add for yourself. list gMain = ["Adult","Cuddles"]; list gPoses1 = ["","B","C","D","E","F","G", "H","I","J","K","L","M","N","O","P","Q", "R","S","T","U","V","W","X","Y"]; list gPoses2 = ["","B","C","D","E","F","G", "H","I","J","K","L","M","N","O","P","Q", "R","S","T","U","V","W","X","Y"]; list MenuButtons; // Your list of potential menu choices integer gMenuPosition; // Index number of the first button on the current page integer gLsn; // Dialog Listen Handle key UserID; integer MenuDialogChannel; integer MenuListenHandle; Menu0() { //Show Menu with selected buttons llDialog(llGetOwner()," \n",MenuButtons,-12345); //Listen to the menu chanel which menu item the user have chosen llListenRemove(MenuListenHandle); //Assign the listen to a handle so we can kill it when the user don't respond to the menu MenuListenHandle = llListen(MenuDialogChannel, "", UserID, ""); //Set a timer for the time the user has to respond to the menu. llSetTimerEvent(30.0); } Menu1() { integer Last; integer All = llGetListLength(gPoses1); if(gMenuPosition >= 9) //This is NOT the first menu page { MenuButtons += " <----"; if((All - gMenuPosition) > 11) // This is not the last page { MenuButtons += " ---->"; } else // This IS the last page { Last = TRUE; } } else if (All > gMenuPosition+9) // This IS the first page { if((All - gMenuPosition) > 11) // There are more pages to follow { MenuButtons += " ---->"; } else // This IS the last page { Last = TRUE; } } else // This is the only menu page { Last = TRUE; } if (All > 0) { integer b; integer len = llGetListLength(MenuButtons); // This bizarre test does the important work ...... for(b = gMenuPosition + len + Last - 1 ; (len < 12)&&(b < All); ++b) { MenuButtons = MenuButtons + [llList2String(gPoses1,b)]; len = llGetListLength(MenuButtons); } } gLsn = llListen(-12345,"","",""); llSetTimerEvent(10.0); llDialog(llGetOwner()," \n",MenuButtons,-12345); } Menu2() { integer Last; integer All = llGetListLength(gPoses2); if(gMenuPosition >= 9) //This is NOT the first menu page { MenuButtons += " <----"; if((All - gMenuPosition) > 11) // This is not the last page { MenuButtons += " ---->"; } else // This IS the last page { Last = TRUE; } } else if (All > gMenuPosition+9) // This IS the first page { if((All - gMenuPosition) > 11) // There are more pages to follow { MenuButtons += " ---->"; } else // This IS the last page { Last = TRUE; } } else // This is the only menu page { Last = TRUE; } if (All > 0) { integer b; integer len = llGetListLength(MenuButtons); // This bizarre test does the important work ...... for(b = gMenuPosition + len + Last - 1 ; (len < 12)&&(b < All); ++b) { MenuButtons = MenuButtons + [llList2String(gPoses2,b)]; len = llGetListLength(MenuButtons); } } gLsn = llListen(-12345,"","",""); llSetTimerEvent(10.0); llDialog(llGetOwner()," \n",MenuButtons,-12345); } default { touch_start(integer num_detected) { llListenRemove(gLsn); gMenuPosition = 0; MenuButtons = gMain; Menu0(); } listen(integer channel, string name, key id, string msg) { llListenRemove(gLsn); llSetTimerEvent(0.0); if(~llListFindList(gMain,[msg])) { if (msg == "Adult") { MenuButtons = gPoses1; Menu1(); } else if (msg == "Cuddles") { MenuButtons = gPoses2; Menu2(); } } else { if (msg == "Back") { MenuButtons = gMain; Menu0(); return; } if(~llSubStringIndex(msg,"---->")) { gMenuPosition += 10; Menu1(); } else if (~llSubStringIndex(msg,"<----")) { gMenuPosition -= 10; Menu1(); } else { //Do whatever the selected button directs..... your choice } } } timer() { llSetTimerEvent(0.0); llListenRemove(gLsn); } } But as u can see, i'm totally stumped. Could someone give me an example using one main and one sub?
  8. ive tried to add that as well and still nothing. one would think LL would come up with a way to block out items that can be used for grieving that use the llPushObject command and allow the items that dont grief ppl
  9. but I have it on my friend's parcel and only I can jump on if I place it down. I gave a copy to my friend so she can place it down and when we tried jumping on it, this time only she could jump and I couldnt
  10. Hi I am trying to make a trampoline and I have this as my coding; default { collision_start(integer total_num) { llPushObject(llDetectedKey(0), <0,0,100>, ZERO_VECTOR, FALSE); } } However, it only works for whoever is owner of the object.
  11. Great now i'm back to question 1. // :CATEGORY:Vehicles // :NAME:Motorcycle_Script // :AUTHOR:Cory Linden // :CREATED:2010-01-10 05:20:56.000 // :EDITED:2013-09-18 15:38:57 // :ID:524 // :NUM:708 // :REV:1.0 // :WORLD:Second Life // :DESCRIPTION: // Motorcycle Script.lsl // :CODE: // example motorcycle script // // Originally written by Cory Linden. // Then modified and tweaked by Andrew Linden for the forum script library. // // Root prim should be oriented such that its local X-, Y- and Z-axes are // parallel to forward, left, and up respectively. // // Sound triggers are commented out but not removed, so if you // want sounds, just add the sounds to the cycle's contents and uncomment // the triggers. // // Be careful when changing parameters. Some of them can be very // sensitive to change, such that a change of less than 5% can have a // noticable effect. You can tell some (but not necessarily all) of the // more sensitive settings in this example by looking for the ones that // have been set to double precission. Changing only one at a time is a // good idea. // // The geometry of the motorcycle itself can have significant impact on // whether it in a straight line when not trying to turn. For best results // use asymmetric design with as wide of a base as you can tolerate. // These are globals only for convenience (so when you need to modify // them you need only make a single change). There are other magic numbers // below that have not yet been pulled into globals. float gMaxTurnSpeed = 12; float gMaxWheelieSpeed = 5; float gMaxFwdSpeed = 30; float gMaxBackSpeed = -10; float gAngularRamp = 0.17; float gLinearRamp = 0.2; // These are true globals whose values are "accumulated" over // multiple control() callbacks. float gBank = 0.0; vector gLinearMotor = <0, 0, 0>; vector gAngularMotor = <0, 0, 0>; default { state_entry() { // init stuff that never changes llSetMemoryLimit(0x4000); llSetSitText("Ride"); llCollisionSound("", 0.0); llLinkSitTarget(1,<.5,0.01,0.5>,llEuler2Rot(<0.0,0.0,0>*DEG_TO_RAD)); llLinkSitTarget(7,<.5,0.01,0.5>,llEuler2Rot(<0.0,0.0,0>*DEG_TO_RAD)); llSetCameraEyeOffset(<-6.0, 0.0, 1.0>); llSetCameraAtOffset(<3.0, 0.0, 1.0>); // create the vehicle llSetVehicleFlags(-1); llSetVehicleType(VEHICLE_TYPE_CAR); llSetVehicleFlags(VEHICLE_FLAG_LIMIT_MOTOR_UP | VEHICLE_FLAG_LIMIT_ROLL_ONLY); llSetVehicleFloatParam(VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY, 0.2); llSetVehicleFloatParam(VEHICLE_LINEAR_DEFLECTION_EFFICIENCY, 0.8); llSetVehicleFloatParam(VEHICLE_ANGULAR_DEFLECTION_TIMESCALE, 0.8); llSetVehicleFloatParam(VEHICLE_LINEAR_DEFLECTION_TIMESCALE, 0.3); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_TIMESCALE, 0.8); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE, 0.4); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_TIMESCALE, 0.01); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE, 0.35); llSetVehicleVectorParam(VEHICLE_LINEAR_FRICTION_TIMESCALE, <1000, 100, 1000>); llSetVehicleVectorParam(VEHICLE_ANGULAR_FRICTION_TIMESCALE, <100, 10, 100>); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY, 0.49); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_TIMESCALE, 0.44); llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, 3.0); llSetVehicleFloatParam(VEHICLE_BANKING_MIX, 0.7); llSetVehicleFloatParam(VEHICLE_BANKING_TIMESCALE, 0.01); //llSetVehicleFloatParam(VEHICLE_HOVER_HEIGHT, 2.0); //llSetVehicleFloatParam(VEHICLE_HOVER_TIMESCALE, 1.0); //llSetVehicleFloatParam(VEHICLE_HOVER_EFFICIENCY, 0.5); } changed(integer change) { if (change & CHANGED_LINK) { key agent = llAvatarOnLinkSitTarget(1); if (agent) { llMessageLinked(LINK_ALL_CHILDREN , 0, "WHEEL_DRIVING", NULL_KEY); llSleep(.4); // not the owner ==> boot off llSetStatus(STATUS_PHYSICS, FALSE); llRequestPermissions(agent, PERMISSION_TRIGGER_ANIMATION | PERMISSION_TAKE_CONTROLS); llPlaySound("Motorcycle_Start", 0.40); // reset the global accumulators gAngularMotor = <0, 0, 0>; gLinearMotor = <180, 0, 0>; gBank = 0.0; } } else { // dismount llSetStatus(STATUS_PHYSICS, FALSE); llSleep(.1); llMessageLinked(LINK_ALL_CHILDREN , 0, "WHEEL_DEFAULT", NULL_KEY); llSleep(.4); llReleaseControls(); llStopAnimation("motorcycle_sit"); llStopSound(); //llPlaySound("off", 0.4); } } run_time_permissions(integer perm) { if (perm) { llStartAnimation("motorcycle_sit"); llTakeControls(CONTROL_FWD | CONTROL_BACK | CONTROL_RIGHT | CONTROL_LEFT | CONTROL_ROT_RIGHT | CONTROL_ROT_LEFT | CONTROL_UP, TRUE, FALSE); } } control(key id, integer level, integer edge) { // The idea here is to ramp up the motors when the keys are held down for a long // time and to let the motors decay after they are let go. This allows fine- // tuning of the motion of the vehicle by throttling the key controls. // // Note that this probably doesn't work well when the client FPS and/or the server // FPS is lagging. So for best results you'll want to turn off as much visual // effects as you can tolerate, and drive in the more empty areas. // linear integer key_control = FALSE; if(level & CONTROL_FWD) { llLoopSound("Motorcycle_Driving", 1.0); gLinearMotor.x = gLinearMotor.x + gLinearRamp * (gMaxFwdSpeed - gLinearMotor.x); key_control = TRUE; } if(edge & CONTROL_FWD) { llLoopSound("Motorcycle_Idle", 3.0); llSetLinkPrimitiveParams(5,[PRIM_OMEGA, <0,0,0>, 1, 1]); llSetLinkPrimitiveParams(6, [PRIM_OMEGA, <0,0,0>, 1, 1]); } if(level & CONTROL_BACK) { llSetLinkPrimitiveParams(5, [PRIM_OMEGA, <0,-1,0>, 2.5, 1]); llSetLinkPrimitiveParams(6, [PRIM_OMEGA, <0,-1,0>, 2.5, 1]); gLinearMotor.x = gLinearMotor.x + gLinearRamp * (gMaxBackSpeed - gLinearMotor.x); key_control = TRUE; } if (key_control) { llSetVehicleVectorParam(VEHICLE_LINEAR_MOTOR_DIRECTION, gLinearMotor); key_control = FALSE; } else { if (gLinearMotor.x > 15 || gLinearMotor.x < -5) { // Automatically reduce the motor if keys are let up when moving fast. gLinearMotor.x *= 0.8; llSetVehicleVectorParam(VEHICLE_LINEAR_MOTOR_DIRECTION, gLinearMotor); } else { // reduce the linear motor accumulator for the next control() event gLinearMotor.x *= 0.8; } } // angular if(level & (CONTROL_RIGHT|CONTROL_ROT_RIGHT)) { gAngularMotor.x = gAngularMotor.x + gAngularRamp * (gMaxTurnSpeed - gAngularMotor.x); key_control = TRUE; } if(level & (CONTROL_LEFT | CONTROL_ROT_LEFT)) { gAngularMotor.x = gAngularMotor.x - gAngularRamp * (gMaxTurnSpeed + gAngularMotor.x); key_control = TRUE; } if(level & CONTROL_UP) { gAngularMotor.y = gAngularMotor.y - gAngularRamp * (gMaxWheelieSpeed + gAngularMotor.y); key_control = TRUE; } if (key_control) { // turn on banking and apply angular motor gBank = 3.0; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION,gAngularMotor); gAngularMotor *= 0.95; // light attenuation } else { if (gAngularMotor.x > 4 || gAngularMotor.x < -4) { // We were turning hard, but no longer ==> reduce banking to help // the motorcycle travel straight when bouncing on rough terrain. // Also, turn off the angular motor ==> faster upright recovery. gAngularMotor *= 0.4; gBank *= 0.5; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION,gAngularMotor); } else { // reduce banking for straighter travel when not actively turning gAngularMotor *= 0.5; gBank *= 0.8; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); } } } } // END // in the control parts before I added the prim omegas, It was working again. Then I had did a test on the prim omega on one of the wheels adding the llSetLinkPrimitiveParams in to the if level & Control FWD as well as in the if edge & control FWD which didn't do anything to it which was good, but when I tried to do backwards, that's when it all messed up. I tried to remove it and it still wont stop the sound when I get off
  12. ah I see the issue. my bad lol. Ok for 2nd question: how can I get the wheels moving when driving and get them to stop when not driving? I know one can just simply use animated textures but there is one problem. This:
  13. i'm sorry but I dont understand what u mean
  14. Ok So I made two motorcycles and have to questions regarding them. First Question: On my own, I figured out how to make them two seaters but I ran into a problem. Here is my script: // :CATEGORY:Vehicles // :NAME:Motorcycle_Script // :AUTHOR:Cory Linden // :CREATED:2010-01-10 05:20:56.000 // :EDITED:2013-09-18 15:38:57 // :ID:524 // :NUM:708 // :REV:1.0 // :WORLD:Second Life // :DESCRIPTION: // Motorcycle Script.lsl // :CODE: // example motorcycle script // // Originally written by Cory Linden. // Then modified and tweaked by Andrew Linden for the forum script library. // // Root prim should be oriented such that its local X-, Y- and Z-axes are // parallel to forward, left, and up respectively. // // Sound triggers are commented out but not removed, so if you // want sounds, just add the sounds to the cycle's contents and uncomment // the triggers. // // Be careful when changing parameters. Some of them can be very // sensitive to change, such that a change of less than 5% can have a // noticable effect. You can tell some (but not necessarily all) of the // more sensitive settings in this example by looking for the ones that // have been set to double precission. Changing only one at a time is a // good idea. // // The geometry of the motorcycle itself can have significant impact on // whether it in a straight line when not trying to turn. For best results // use asymmetric design with as wide of a base as you can tolerate. // These are globals only for convenience (so when you need to modify // them you need only make a single change). There are other magic numbers // below that have not yet been pulled into globals. float gMaxTurnSpeed = 12; float gMaxWheelieSpeed = 5; float gMaxFwdSpeed = 30; float gMaxBackSpeed = -10; float gAngularRamp = 0.17; float gLinearRamp = 0.2; // These are true globals whose values are "accumulated" over // multiple control() callbacks. float gBank = 0.0; vector gLinearMotor = <0, 0, 0>; vector gAngularMotor = <0, 0, 0>; default { state_entry() { // init stuff that never changes llSetMemoryLimit(0x4000); llSetSitText("Ride"); llCollisionSound("", 0.0); llLinkSitTarget(1,<.5,0.01,0.5>,ZERO_ROTATION); llLinkSitTarget(2,<.5,0.01,0.5>,ZERO_ROTATION); llSetCameraEyeOffset(<-6.0, 0.0, 1.0>); llSetCameraAtOffset(<3.0, 0.0, 1.0>); // create the vehicle llSetVehicleFlags(-1); llSetVehicleType(VEHICLE_TYPE_CAR); llSetVehicleFlags(VEHICLE_FLAG_LIMIT_MOTOR_UP | VEHICLE_FLAG_LIMIT_ROLL_ONLY); llSetVehicleFloatParam(VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY, 0.2); llSetVehicleFloatParam(VEHICLE_LINEAR_DEFLECTION_EFFICIENCY, 0.8); llSetVehicleFloatParam(VEHICLE_ANGULAR_DEFLECTION_TIMESCALE, 0.8); llSetVehicleFloatParam(VEHICLE_LINEAR_DEFLECTION_TIMESCALE, 0.3); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_TIMESCALE, 0.8); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE, 0.4); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_TIMESCALE, 0.01); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE, 0.35); llSetVehicleVectorParam(VEHICLE_LINEAR_FRICTION_TIMESCALE, <1000, 100, 1000>); llSetVehicleVectorParam(VEHICLE_ANGULAR_FRICTION_TIMESCALE, <100, 10, 100>); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY, 0.49); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_TIMESCALE, 0.44); llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, 3.0); llSetVehicleFloatParam(VEHICLE_BANKING_MIX, 0.7); llSetVehicleFloatParam(VEHICLE_BANKING_TIMESCALE, 0.01); //llSetVehicleFloatParam(VEHICLE_HOVER_HEIGHT, 2.0); //llSetVehicleFloatParam(VEHICLE_HOVER_TIMESCALE, 1.0); //llSetVehicleFloatParam(VEHICLE_HOVER_EFFICIENCY, 0.5); } changed(integer change) { if (change & CHANGED_LINK) { key agent = llAvatarOnLinkSitTarget(1); if (agent) { llMessageLinked(LINK_ALL_CHILDREN , 0, "WHEEL_DRIVING", NULL_KEY); llSleep(.4); // not the owner ==> boot off llSetStatus(STATUS_PHYSICS, TRUE); llRequestPermissions(agent, PERMISSION_TRIGGER_ANIMATION | PERMISSION_TAKE_CONTROLS); llPlaySound("Motorcycle_Start", 0.40); // reset the global accumulators gAngularMotor = <0, 0, 0>; gLinearMotor = <180, 0, 0>; gBank = 0.0; } } else if (llAvatarOnLinkSitTarget(2)) { llRegionSayTo(llAvatarOnLinkSitTarget(2), PUBLIC_CHANNEL, "Passenger"); } else { // dismount llSetStatus(STATUS_PHYSICS, FALSE); llSleep(.1); llMessageLinked(LINK_ALL_CHILDREN , 0, "WHEEL_DEFAULT", NULL_KEY); llSleep(.4); llReleaseControls(); llStopAnimation("motorcycle_sit"); llStopSound(); //llPlaySound("off", 0.4); } } run_time_permissions(integer perm) { if (perm) { llStartAnimation("motorcycle_sit"); llTakeControls(CONTROL_FWD | CONTROL_BACK | CONTROL_RIGHT | CONTROL_LEFT | CONTROL_ROT_RIGHT | CONTROL_ROT_LEFT | CONTROL_UP, TRUE, FALSE); } } control(key id, integer level, integer edge) { // The idea here is to ramp up the motors when the keys are held down for a long // time and to let the motors decay after they are let go. This allows fine- // tuning of the motion of the vehicle by throttling the key controls. // // Note that this probably doesn't work well when the client FPS and/or the server // FPS is lagging. So for best results you'll want to turn off as much visual // effects as you can tolerate, and drive in the more empty areas. // linear integer key_control = FALSE; if(level & CONTROL_FWD) { llLoopSound("Motorcycle_Driving", 1.0); gLinearMotor.x = gLinearMotor.x + gLinearRamp * (gMaxFwdSpeed - gLinearMotor.x); key_control = TRUE; } if(edge & CONTROL_FWD) { llLoopSound("Motorcycle_Idle", 3.0); } if(level & CONTROL_BACK) { gLinearMotor.x = gLinearMotor.x + gLinearRamp * (gMaxBackSpeed - gLinearMotor.x); key_control = TRUE; } if (key_control) { llSetVehicleVectorParam(VEHICLE_LINEAR_MOTOR_DIRECTION, gLinearMotor); key_control = FALSE; } else { if (gLinearMotor.x > 15 || gLinearMotor.x < -5) { // Automatically reduce the motor if keys are let up when moving fast. gLinearMotor.x *= 0.8; llSetVehicleVectorParam(VEHICLE_LINEAR_MOTOR_DIRECTION, gLinearMotor); } else { // reduce the linear motor accumulator for the next control() event gLinearMotor.x *= 0.8; } } // angular if(level & (CONTROL_RIGHT|CONTROL_ROT_RIGHT)) { gAngularMotor.x = gAngularMotor.x + gAngularRamp * (gMaxTurnSpeed - gAngularMotor.x); key_control = TRUE; } if(level & (CONTROL_LEFT | CONTROL_ROT_LEFT)) { gAngularMotor.x = gAngularMotor.x - gAngularRamp * (gMaxTurnSpeed + gAngularMotor.x); key_control = TRUE; } if(level & CONTROL_UP) { gAngularMotor.y = gAngularMotor.y - gAngularRamp * (gMaxWheelieSpeed + gAngularMotor.y); key_control = TRUE; } if (key_control) { // turn on banking and apply angular motor gBank = 3.0; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION,gAngularMotor); gAngularMotor *= 0.95; // light attenuation } else { if (gAngularMotor.x > 4 || gAngularMotor.x < -4) { // We were turning hard, but no longer ==> reduce banking to help // the motorcycle travel straight when bouncing on rough terrain. // Also, turn off the angular motor ==> faster upright recovery. gAngularMotor *= 0.4; gBank *= 0.5; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); llSetVehicleVectorParam(VEHICLE_ANGULAR_MOTOR_DIRECTION,gAngularMotor); } else { // reduce banking for straighter travel when not actively turning gAngularMotor *= 0.5; gBank *= 0.8; llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, gBank); } } } } // END // Before I had added in the two seater function, when I got in, it would play a sound as the ignition sound then it would play the idle loop sound and when I move, it plays the engine sound. However, after I put in the two seat function, its stuck on the engine sound and keeps playing even when I get off the motorcycle. How do I fix that?
  15. OK so I have this: Sender string notecardNameOrKey = "#New Note#"; key notecardQueryId; integer notecardLine;// first notecard line is 0, so we don't have to set notecardLine = 1 here default { state_entry() { llSay(0, "Reading notecard..."); notecardQueryId = llGetNotecardLine(notecardNameOrKey, notecardLine); } touch_start(integer total_num) { llRegionSayTo(llDetectedKey(0), 5589, "Change"); } dataserver(key query_id, string data) { if (query_id == notecardQueryId) { if (data == EOF)// we have reached the EOF (end of file) { llSay(0, "No more lines in notecard, read " + (string) notecardLine + " lines."); llRemoveInventory(llGetInventoryName(INVENTORY_NOTECARD, 0)); } else { // increment line index first, both for line number reporting, and for reading the next line ++notecardLine; llSay(0, "Line " + (string) notecardLine + ": " + data); notecardQueryId = llGetNotecardLine(notecardNameOrKey, notecardLine); } } } } Receiver default { state_entry() { llListen(5589, "", NULL_KEY, "Change"); } listen(integer channel, string name, key id, string message) { } } How exactly do I get the UUID from the dataserver?
  16. Hi I'm in need of Scripter who is willing to make a script for free. It's nothing big and sadly I dont have any money, but I really need this script made for my project i'm working on. I made these tattoo Layers for Belleza Freya with my own UV maps and not taken from the devkit that I have because I honestly dont know how ppl are able to make textures that wrap around the legs and arms perfectly. I really want to make a hud that ppl can easily put in a note card with texture uuid without needing to go into the script especially for those who have no scripting knowledge. I'm not one to do this, but i'm begging for someone to do this for me.
  17. ya that seems like the only thing I can do at this point. Wait, is there a way I can use llGetTexture to get a texture in the prim and send it to the receiver without a notecard?
  18. ya I can script, but this is a little too advanced for me. If anyone is willing to help me in-world, I think would make it a lot easier. I made these tattoo Layers for Belleza Freya with my own UV maps and not taken from the devkit that I have because I honestly dont know how ppl are able to make textures that wrap around the legs and arms perfectly. I really want to make a hud that ppl can easily put in a note card with texture uuid without needing to go into the script especially for those who have no scripting knowledge.
  19. um.... can anyonepoint me to a script that does this? cause nothing ya'll said made any sense to me.
  20. Ok this is very frustrating. I've looked and looked, but couldn't find anything that helped me. I'm trying to make a Hud that reads a notecard containing a texture uuid which deletes the notecard after reading it and then when you click the button, it changes the texture of an attached object that is separate from it(like clothing for example) into the uuid that the hud got from the notecard. Basically something similar to how the appliers for mesh bodies work. I tried looking at llGetNoteCardLine from the wiki, but it doesn't tell me how to do textures. The same with a few posts I read dealing with a hud that reads from the notecard. None of them have anything to do with changing textures. Plz help.
  21. basically the bento tail has to have the tail weights correct?
  22. How does one make a rigged tail move? Does it have an ao separate to that of ur average ao or is it pretty much the same? In other words, can u script it to run animations without counteracting my basic ao or will it stop the ao I have and replace it? if so, how would u script it?
  23. Ok so I'm making a HUD for a mesh linkset I made and I'm trying to make two buttons on the hud that controls the scaling. Basically I want one button that increases the linkset by 5% each time I click and the other button to decrease size by 5% each time it's clicked on. I saw on the wiki about llScaleByFactor, but that toggles between the sizes. is there a way to use that to make it increase or decrease without toggling?
  24. Hey anyone know of a rez anchor script that is similar to the rez2 product or a rez anchor that has transferable scripts? I want to be able to use my own rezzer instead of that rezzer that comes with rez2 with the arrows sticking out of the square prim
×
×
  • Create New...