Jump to content

DarkEmperor13

Resident
  • Posts

    232
  • Joined

  • Last visited

Everything posted by DarkEmperor13

  1. I'm making a combat hud thats just for fun and im trying to figure out how to make it where u can select a target using the hud and rez an object that homes in on the target
  2. Ok so i made a pair of wings and rigged them to avastar in blender. Went into pose mode, then held shift key and selected all the wing bones and made sure that only the wings bones were selected then went to pose ->animation->bake action and left everything the way it was and clicked bake and all that showed on the animation layout was the wing bones. So i made an animation and once i was done, i exported the bvh and went to beta grid to test it out and then uploaded it and then uploaded the wings i made. Then i created a script in the wings and wrote the coding for animation override. After that, i then proceeded to do the action that i had set the animation to within the script. The animation does what it was supposed to but when perform the action, (which in this case i had it set to walk) my avatar is frozen and just slides on movement. Kinda like when u push a statue along an ice flooring. The movement u see are the wings almost as if i had exported it from blender with invisble animation frames for everything and not just the wings. Is there a way to fix that?
  3. ok wait i i fixed it! integer gotTPperms; default { changed(integer change) { if (change & (CHANGED_OWNER | CHANGED_INVENTORY)) { llResetScript(); } } state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_TELEPORT); llListen(-99588, "", NULL_KEY, "Destination1"); llSetLinkPrimitiveParams(LINK_THIS, [PRIM_TEXT, llGetInventoryName(INVENTORY_LANDMARK, 0), <0.502, 0.000, 1.000>, 1]); } touch_start(integer total_number) { llRegionSayTo(llGetOwner(), -99587, "Tp1"); } listen(integer ch, string nm, key id, string msg) { llTeleportAgent(llGetOwner(), llGetInventoryName(INVENTORY_LANDMARK, 1), ZERO_VECTOR, ZERO_VECTOR); } run_time_permissions(integer perm) { gotTPperms = TRUE; } } and it doesnt ask to be tp'd. Of course thats only when i tp to a different spot on the same sim im on. still need to try out tping to a different sim entirely. But Now one other thing ive noticed. It doesnt tp me to the landmarks coordinates. Is that suppose to happen?
  4. ok but like when after i tp, i get like maybe up to 3 permission requests.
  5. ok so i edited it a bit. default { changed(integer change) { if (change & (CHANGED_OWNER | CHANGED_INVENTORY)) { llResetScript(); } } state_entry() { llListen(-99588, "", NULL_KEY, "Destination1"); llSetLinkPrimitiveParams(LINK_THIS, [PRIM_TEXT, llGetInventoryName(INVENTORY_LANDMARK, 0), <0.502, 0.000, 1.000>, 1]); } touch_start(integer total_number) { llRegionSayTo(llGetOwner(), -99587, "Tp1"); } listen(integer ch, string nm, key id, string msg) { llRequestPermissions(llGetOwner(), PERMISSION_TELEPORT); } run_time_permissions(integer perm) { llTeleportAgent(llGetOwner(), llGetInventoryName(INVENTORY_LANDMARK, 1), ZERO_VECTOR, ZERO_VECTOR); } } is there not a way to get it to do auto permission? cause now i asks me for permission everytime after the animation plays.
  6. but its not like u can put runtime permission event within a listen event.
  7. I created a Teleport HUD as well as an effect. Basically the HUD has buttons for places you want to tp to and it sends a message to the object used as an effect so it starts doing the effect before i tp and then sends a message back to the hud tell it to tp me. Effect Object Script stageZero() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.20415>, PRIM_SIZE, <0.39100, 0.39100, 0.13860>, PRIM_GLOW, ALL_SIDES, 0, PRIM_COLOR, ALL_SIDES, <1,1,1>, 0 ]); } stageOne() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.19187>, PRIM_SIZE, <0.53493, 0.53493, 0.21115>, PRIM_GLOW, ALL_SIDES, 0 ]); } stageTwo() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.14861>, PRIM_SIZE, <0.70750, 0.70750, 0.24968>, PRIM_GLOW, ALL_SIDES, .2 ]); } stageThree() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.10645>, PRIM_SIZE, <1.06353, 1.06353, 0.33400> ]); } stageFour() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.07002>, PRIM_SIZE, <1.27184, 1.27184, 0.40688> ]); } stageFive() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.03632>, PRIM_SIZE, <1.48013, 1.48013, 0.47427> ]); } stageSix() { llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -0.95105>, PRIM_SIZE, <1.74699, 1.74699, 0.64480> ]); } default { state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION); stageZero(); llTargetOmega(<0,0,.1>,7,1); llSetTextureAnim(ANIM_ON | LOOP, 1, 4, 2, 0, 8, 3); llListen(-99587, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { integer perm = llGetPermissions(); if(msg == "Tp1") { llSetAlpha(1, ALL_SIDES); llSleep(.1); stageOne(); llSleep(.1); stageThree(); llSleep(.1); stageFour(); llSleep(.1); stageFive(); llSleep(.1); stageSix(); llSleep(.1); if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("Enter Ground"); } llSleep(2.8); llSay(-99588, "Tp1"); state Teleported; } if(msg == "Tp2") { llSetAlpha(1, ALL_SIDES); llSleep(.1); stageOne(); llSleep(.1); stageThree(); llSleep(.1); stageFour(); llSleep(.1); stageFive(); llSleep(.1); stageSix(); llSleep(.1); if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("Enter Ground"); } llSleep(2.8); llSay(-99588, "Tp1"); state Teleported; } if(msg == "Tp3") { llSetAlpha(1, ALL_SIDES); llSleep(.1); stageOne(); llSleep(.1); stageThree(); llSleep(.1); stageFour(); llSleep(.1); stageFive(); llSleep(.1); stageSix(); llSleep(.1); if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("Enter Ground"); } llSleep(2.8); llSay(-99588, "Tp1"); state Teleported; } if(msg == "Tp4") { llSetAlpha(1, ALL_SIDES); llSleep(.1); stageOne(); llSleep(.1); stageThree(); llSleep(.1); stageFour(); llSleep(.1); stageFive(); llSleep(.1); stageSix(); llSleep(.1); if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("Enter Ground"); } llSleep(2.8); llSay(-99588, "Tp1"); state Teleported; } if(msg == "Tp5") { llSetAlpha(1, ALL_SIDES); llSleep(.1); stageOne(); llSleep(.1); stageThree(); llSleep(.1); stageFour(); llSleep(.1); stageFive(); llSleep(.1); stageSix(); llSleep(.1); if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("Enter Ground"); } llSleep(3); llSay(-99588, "Tp1"); state Teleported; } } } state Teleported { state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION|PERMISSION_TELEPORT); llListen(-99587, "", NULL_KEY, "Exit"); } changed(integer change) { integer perm = llGetPermissions(); if (change & CHANGED_TELEPORT) { if(perm & PERMISSION_TRIGGER_ANIMATION) { llStartAnimation("In Ground"); llSleep(1); llStartAnimation("Exit Ground"); } llSleep(3); stageFive(); llSleep(.1); stageFour(); llSleep(.1); stageThree(); llSleep(.1); stageTwo(); llSleep(.1); stageOne(); llSleep(.1); llSetPrimitiveParams([ PRIM_POSITION, <0.00000, 0.00000, -1.20415>, PRIM_SIZE, <0.39100, 0.39100, 0.13860>, PRIM_GLOW, ALL_SIDES, 0 ]); llSleep(.1); state default; } } } A Button on the HUD Script default { changed(integer change) { if (change & (CHANGED_OWNER | CHANGED_INVENTORY)) { llResetScript(); } } state_entry() { llListen(-99588, "", NULL_KEY, "Tp1"); llSetLinkPrimitiveParams(LINK_THIS, [PRIM_TEXT, llGetInventoryName(INVENTORY_LANDMARK, 0), <0.502, 0.000, 1.000>, 1]); llRequestPermissions(llGetOwner(), PERMISSION_TELEPORT); } touch_start(integer total_number) { llRegionSayTo(llGetOwner(), -99587, "Tp1"); } listen(integer ch, string nm, key id, string msg) { integer perm = llGetPermissions(); if(perm &PERMISSION_TELEPORT) { llTeleportAgent(llGetOwner(), llGetInventoryName(INVENTORY_LANDMARK, 1), ZERO_VECTOR, ZERO_VECTOR); } } } The problem im having is that when it Teleports me to a different sim, it goes to the teleporting screen but takes forever and eventually crashes me
  8. A couple years ago i went to this sim where you do combat with vehicles, but in order to get more vehicles, u had to rank up if i remember correctly. But no matter how much i try, i cant remember nor can i find the objects i got there in my inventory and when i try to do a search like "deathmatch" it gives me nothin and then i tried to search using "vehicle combat" and all it gave me was sandboxes where u can rez vehicles and all that garbage. Does anyone know what sim i'm talking about or know of a sim that does combat with vehicles?
  9. ok so i have made a spanker hud that lets u spank anyone if u click it. integer dlgHandle = -1; key id; integer dlgChannel = -9999; list avatarList = []; list uuidList = []; reset() { llSetTimerEvent(0.0); llListenRemove(dlgHandle); dlgHandle = -1; } default { touch_start(integer total_number) { llOwnerSay("Scanning..."); avatarList = []; // Look for any avatars within 10m. llSensor("", NULL_KEY, AGENT_BY_USERNAME, 96.0, PI); } sensor(integer num_detected) { integer i; while((i < num_detected) && (i < 9)) { if (llDetectedKey(i) != llGetOwner()) { avatarList += [llDetectedName(i)]; uuidList += [llDetectedKey(i)]; } ++i; } if (llGetListLength(avatarList) > 0) { state dialog; } } no_sensor() { llSleep(2); llOwnerSay("No Avatars in sight. =("); } } state dialog { state_entry() { // Set up a listener to detect button clicks. dlgHandle = llListen(dlgChannel, "", llGetOwner(), ""); // Start a new timer. llSetTimerEvent(30.0); // Add a 'Cancel' button. avatarList += ["Cancel"]; // Display the dialog. llDialog(llGetOwner(), "Please select an avatar.", avatarList, dlgChannel); } listen(integer channel, string name, key id, string message) { integer index = llListFindList(avatarList,[message]); key uuid = llList2Key(uuidList,index); // The message parameter holds the caption of the // button that was clicked. Search the menu options // list for it. if ((channel == dlgChannel) && (llListFindList(avatarList, [message]) != -1)) { if (message != "Cancel") { llSay(0, llGetDisplayName(llGetOwner()) + " smacks " + llGetDisplayName(uuid) + "'s luscious ass!"); } reset(); state default; } } timer() { reset(); state default; } } It has worked up until now and now it gives me an error. The error i get is: llDialog: button labels must be 24 or fewer characters long
  10. Not even sure if this is remotely right default { state_entry() { llSay(0, "Hello, Avatar!"); } changed(integer change) { if (change & CHANGED_LINK) { key agent = llAvatarOnSitTarget(); if (agent) { if(agent != llGetOwner()) { llSetLinkMedia( 1, 0, [PRIM_MEDIA_CURRENT_URL, "https://emulatorgames.online/games/n64/bomberman-64", PRIM_MEDIA_AUTO_PLAY, TRUE, PRIM_MEDIA_WIDTH_PIXELS, 1.2, PRIM_MEDIA_HEIGHT_PIXELS, 0.7, PRIM_MEDIA_PERMS_INTERACT, PRIM_MEDIA_PERM_ANYONE, PRIM_MEDIA_PERMS_CONTROL, PRIM_MEDIA_PERM_NONE]); } else { llSetLinkMedia( 1, 0, [PRIM_MEDIA_CURRENT_URL, "https://emulatorgames.online/games/n64/bomberman-64", PRIM_MEDIA_AUTO_PLAY, TRUE, PRIM_MEDIA_WIDTH_PIXELS, 1.2, PRIM_MEDIA_HEIGHT_PIXELS, 0.7, PRIM_MEDIA_PERMS_INTERACT, PRIM_MEDIA_PERM_ANYONE, PRIM_MEDIA_PERMS_CONTROL, PRIM_MEDIA_PERM_NONE, PRIM_MEDIA_AUTO_ZOOM, TRUE ]); } } else { } } } } Before anyone asks, i will NOT pay a fortune to hire someone to script an arcade machine just to have it not be modifiable cause im not made of money. I just want to know how to script it.
  11. Hey does anyone know of a store that sells men's clothes and gives them away as lucky chair prizes for mesh bodies? Edit: Oh and the only store ik of is ADN
  12. i tried removing everything that dealt with banking but then my dang car wouldnt turn
  13. Here's my script: 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 llListen(19864, "", llGetOwner(), ""); llSetSitText("Ride"); llCollisionSound("", 0.0); llSitTarget(<-0,0.0,-.1>,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.1); llSetVehicleFloatParam(VEHICLE_LINEAR_DEFLECTION_TIMESCALE, 0.1); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_TIMESCALE, 1); llSetVehicleFloatParam(VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE, 0.1); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_TIMESCALE, 0.1); llSetVehicleFloatParam(VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE, 0.1); llSetVehicleVectorParam(VEHICLE_LINEAR_FRICTION_TIMESCALE, <1000, 100, 1000>); llSetVehicleVectorParam(VEHICLE_ANGULAR_FRICTION_TIMESCALE, <500, 500, 1000>); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY, 0.50); llSetVehicleFloatParam(VEHICLE_VERTICAL_ATTRACTION_TIMESCALE, 0.50); // llSetVehicleFloatParam(VEHICLE_BANKING_EFFICIENCY, 3.0); // llSetVehicleFloatParam(VEHICLE_BANKING_MIX, 0.7); // llSetVehicleFloatParam(VEHICLE_BANKING_TIMESCALE, 0.01); } changed(integer change) { if (change & CHANGED_LINK) { key agent = llAvatarOnSitTarget(); if (agent) { if (agent != llGetOwner()) { // owner has mounted llSay(0, "You aren't the owner"); llUnSit(agent); llPushObject(agent, <0,0,100>, ZERO_VECTOR, FALSE); } else { 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); // 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("car 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) { llSetLinkPrimitiveParams(3,[PRIM_OMEGA, <0,-1,0>, 1, 1]); llSetLinkPrimitiveParams(20, [PRIM_OMEGA, <0,-1,0>, 1, 1]); llSetLinkPrimitiveParams(15, [PRIM_OMEGA, <0,1,0>, 1, 1]); llSetLinkPrimitiveParams(17, [PRIM_OMEGA, <0,1,0>, 1, 1]); gLinearMotor.x = gLinearMotor.x + gLinearRamp * (gMaxFwdSpeed - gLinearMotor.x); key_control = TRUE; } if(edge & CONTROL_FWD) { llSetLinkPrimitiveParams(3,[PRIM_OMEGA, <0,0,0>, 1, 1]); llSetLinkPrimitiveParams(20, [PRIM_OMEGA, <0,0,0>, 1, 1]); llSetLinkPrimitiveParams(15, [PRIM_OMEGA, <0,0,0>, 1, 1]); llSetLinkPrimitiveParams(17, [PRIM_OMEGA, <0,0,0>, 1, 1]); } 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 = FALSE; } 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 // ok when i turn, the car turns like an airplane like the pic below. How do I fix it?
  14. I got both the male and female classic bodies. The female body(havent tried male) when u put on a shirt with sleeves, it doesnt line up with the arms. Is it possible that i have the wrong clothing for the wrong legacy body?
  15. To be exact, about.... 50. 45 are in the hud, 2 in the shirt mesh of the outfit, 2 in the skirt and 1 in the leggings. I first tried doing a touch event that went like: default { touch_start(integer total_number) { integer linkNumber = llDetectedLinkNumber(0); if(linkNumber == 1) { //Lines of code } if(linkNumber == 2) { //Lines of code } etc, etc. but that did nothing
  16. Ok this startingt post is gonna be a bit long so bare with me. OK so I'm making a HUD and the picture below shows u how it looks: Mind you, this is a HUD for an Outfit I've made. the outfit has 3 parts to it: Top, Skirt and Leggings. The Top has 2 faces that indicate the shirt's main texture and the back strap texture. The Skirt has two faces as well indicating the Skirts main and trim textures and the leggings are only one face. Now on the HUD in the picture above, (where you see Shirt, Backstrap, Etc, Etc) below is the the codes for the Shirt and Backstrap buttons: ======= Shirt Button ======= default { touch_start(integer total_number) { llRegionSay(17789, "Shirt"); } } ====== Backstrap Button ====== default { touch_start(integer total_number) { llRegionSay(17789, "Backstrap"); } } Ok now if u look the right in the picture above, you see the 40 squared buttons. For this example i'll use the button with red and white stripes. The code is this: default { state_entry() { llListen(17789, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Backstrap") { state Back; } if(msg == "Skirt") { state Skirt; } if(msg == "Skirt Trim") { state Trim; } if(msg == "Pants") { state Pants; } } touch_start(integer total_number) { llRegionSayTo(llDetectedKey(0), 479813, "Stripe Red"); } } state Back { state_entry() { llListen(17789, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Shirt") { state default; } if(msg == "Skirt") { state Skirt; } if(msg == "Skirt Trim") { state Trim; } if(msg == "Pants") { state Pants; } } touch_start(integer total_number) { llRegionSayTo(llDetectedKey(0), 479814, "Stripe Red"); } } state Skirt { state_entry() { llListen(17789, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Backstrap") { state Back; } if(msg == "Shirt") { state default; } if(msg == "Skirt Trim") { state Trim; } if(msg == "Pants") { state Pants; } } touch_start(integer total_number) { llRegionSayTo(llDetectedKey(0), 479815, "Stripe Red"); } } state Trim { state_entry() { llListen(17789, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Backstrap") { state Back; } if(msg == "Skirt") { state Skirt; } if(msg == "Shirt") { state default; } if(msg == "Pants") { state Pants; } } touch_start(integer total_number) { llRegionSayTo(llDetectedKey(0), 479816, "Stripe Red"); } } state Pants { state_entry() { llListen(17789, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Backstrap") { state Back; } if(msg == "Skirt") { state Skirt; } if(msg == "Skirt Trim") { state Trim; } if(msg == "Shirt") { state default; } } touch_start(integer total_number) { llRegionSayTo(llDetectedKey(0), 479817, "Fishnet Red"); } } Now if i go to the actual top of the outfit(or shirt if u prefer to call it that) it will have two codes: SD - Top and SD - Backstrap. The codes are as followed: //for both scripts, I left out all the if() events except for "if(msg == Stripe Red);" cause the codes are long and i'm trying not to make this post any longer than it is! ====== SD - Top ====== default { state_entry() { llListen(479813, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Stripe Red") { llSetLinkPrimitiveParams(LINK_THIS, [PRIM_TEXTURE, 0, "9d613082-f79f-9cba-5013-1ecf1beaa3d9", <1,1,0>, <0,0,0>, 0, PRIM_COLOR, 0, <0.963, 0.227, 0.209>, 1, PRIM_ALPHA_MODE,0, PRIM_ALPHA_MODE_BLEND, 0]); llSetLinkPrimitiveParams(LINK_ALL_CHILDREN, [PRIM_TEXTURE, 0, "e000197d-e2d5-09ab-57f7-84d8923f9939", <1,1,0>, <0,0,0>, 0, PRIM_COLOR, 0, <1, 1, 1>, 1, PRIM_ALPHA_MODE,0, PRIM_ALPHA_MODE_BLEND, 0]); } } } ====== SD - Backstrap ====== default { state_entry() { llListen(479814, "", NULL_KEY, ""); } listen(integer ch, string nm, key id, string msg) { if(msg == "Stripe Red") { llSetLinkPrimitiveParams(LINK_THIS, [PRIM_TEXTURE, 1, "9d613082-f79f-9cba-5013-1ecf1beaa3d9", <1,1,0>, <0,0,0>, 0, PRIM_COLOR, 0, <0.963, 0.227, 0.209>, 1, PRIM_ALPHA_MODE,0, PRIM_ALPHA_MODE_BLEND, 0]); llSetLinkPrimitiveParams(LINK_ALL_CHILDREN, [PRIM_TEXTURE, 1, "e000197d-e2d5-09ab-57f7-84d8923f9939", <1,1,0>, <0,0,0>, 0, PRIM_COLOR, 0, <1, 1, 1>, 1, PRIM_ALPHA_MODE,0, PRIM_ALPHA_MODE_BLEND, 0]); } } } Next if I got over to the HUD and Click the red and white stripe button i mentioned before, the shirt of the mesh out fit gets colored red and white stripes on face #0 which is what it should do. But when i click on the Backstrap button and then i click on lets say the black and white stripe button, instead of coloring the shirt of the mesh black and white striped on facve #1, it does it once again on face #0. So i went back in Script "SD - Backstrap and in one of the state_entry()'s i put llSay(0, "Touched Backstrap Button") and when i went to the HUD and clicked Backstrap, in local it said, "OBject: Touched Backstrap Button". So I know that the texture buttons are listening to the labeled buttons so why is it not doing what it should?
  17. Hi I'm new to using redelivery terminals. I'm trying to figure out how to link one to ur mp store or if anyone can point me to a redelivery terminal on MP that does this.
  18. im looking for a store to rent with 100 prims for 100L and isnt a small store for i have lots of stuff to sell. please contact me inworld
×
×
  • Create New...