Jump to content

Search the Community

Showing results for tags 'door'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • People Forum
    • Your Avatar
    • Make Friends
    • Lifestyles and Relationships
    • Role Play
    • General Discussion Forum
    • Forums Feedback
    • Missed Connections
    • Second Life Education
  • Places and Events Forum
    • Favorite Destinations
    • Upcoming Events and Activities
    • Games in Second Life
  • Official Contests & Events
    • Leap Into Love Snapshot Contest
  • Creation Forum
    • Fashion
    • Art, Music and Photography
    • Animation Forum
    • Bakes on Mesh
    • Environmental Enhancement Project
    • Machinima Forum
    • Building and Texturing Forum
    • Mesh
    • LSL Scripting
    • LSL Library
    • Sansar for Second Life Residents
  • Technology Forum
    • Second Life Server
    • Second Life Viewer
    • Second Life Web
    • General Second Life Tech Discussion
  • Commerce Forum
    • Merchants
    • Inworld Employment
    • Wanted
  • Land Forum
    • General Discussion
    • Mainland
    • Regions for Sale: Full Private Island
    • Region for Rent: Full Private Island
    • Regions for Sale: Homesteads
    • Region Rentals: Homestead
    • Parcels for Sale: Mainland
    • Parcels for Rent: Mainland
    • Wanted: Full Private Island
    • Wanted: Homesteads
    • Wanted: Mainland
  • International Forum
    • Deutsches Forum
    • Foro en español
    • Forum in italiano
    • Forum français
    • 日本語フォーラム
    • 한국어 포럼
    • Fórum em português
    • Forum polskie
    • المنتدى العربي
    • Türkçe Forum
    • Форум по-русски
  • Adult Content Forum
    • Highlight Upcoming Events
    • General Discussion
    • General Announcements
  • Answers
    • Abuse and Griefing
    • Account
    • Avatar
    • Creation
    • Inventory
    • Getting Started
    • Controls
    • Land
    • Linden Dollars (L$)
    • Shopping
    • Technical
    • Viewers
    • Everything Else
    • International Answers

Blogs

  • Commerce
  • Featured News
  • Inworld
  • Tools and Technology
  • Tips and Tricks
  • Land

Categories

  • English
  • Deutsch
  • Français
  • Español
  • Português
  • 日本語
  • Italiano
  • Pусский
  • Türkçe

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 14 results

  1. ainst Composer

    Sliding linked four parts door script

    Hello! I need to create four parts linked to house sliding door like on picture. all parts move frome one position in the linkset to another. Any suggestions greatly appreciated!
  2. ainst Composer

    Script for the four parts sliding door

    Hello! I need to create a script for the four parts door sliding. the door must be linked to the building. Each part do not enter one into the other, but come in behind one after another. Parts can simply move from one position of all parts to another. Any suggestions greatly appreciated! Please, help! reward 500 ls.
  3. Hello everyone, I have 2 questions : My first : Here is the script for opening and closing a door. However, the sound of the opening starts when you click and the closing sound once the door is closed. I would like the closing sound to start during the closing movement and not once closed. My second : Do you think I can add a script in a second prim linked so that the two objects follow the same movement? Can you help me please ? /* * Smooth Rotating Linked Door With Hinge * * By: Lyn Mimistrobell * Version: 1.1 * License: Do whatever you like with it, just don't blame me if you break it :) */ /* * Define the rotation in degrees, using the door prim's local coordinate * system */ vector ROTATION = <0.0, 0.0, 180.0>; /* * Define the position of the virtual hinge; usually this is half the door * prim's width and thickness */ vector HINGE_POSITION = <-0.4, 1.3, 0.0>; /* * Define how fast the door opens, in seconds */ float SECONDS_TO_ROTATE = 1.0; /* * Define after how much time the door should close automatically, in seconds; * set to 0.0 to disable autolmatic closing */ float AUTO_CLOSE_TIME = 10.0; /* * Define a sound that plays when the door starts to open; set to NULL_KEY * for no sound. */ key SOUND_ON_OPEN = "b814a289-a786-ef81-e5df-e0e9b9aeebab"; /* * Define a sound that plays when the door has closed; set to NULL_KEY * for no sound. */ key SOUND_ON_CLOSE = "00429879-654d-7925-9e66-5c1695324e58"; /* * Define the volume of the opening and closing sounds */ float SOUND_VOLUME = 1.0; /* * NORMALLY, THERE IS NO NEED TO CHANGE ANYTHING BELOW THIS COMMENT. IF YOU DO * YOU RISK BREAKING IT. */ integer gClosed; // Door state: TRUE = closed, FALSE = opened rotation gRotationClosed; // Initial rotation of the door (closed) vector gPositionClosed; // Initial position of the door (closed) vector gRotationPerSecond; // The amount to rotate each second doOpenOrClose() { /* * Only perform the rotation if the door isn't root or unlinked */ integer linkNumber = llGetLinkNumber(); if (linkNumber < 2) return; if (gClosed) { /* * Store the initial rotation and position so we can return to it. * * Rotating back purely by calculations can in the longer term cause the door * to be positioned incorrectly because of precision errors * * We determine this everytime before the door is being opened in case it was * moved, assuming the door was closed whilst being manipulated. */ gPositionClosed = llGetLocalPos(); gRotationClosed = llGetLocalRot(); /* * Play the opening sound and preload the closing sound */ if (SOUND_ON_OPEN) llPlaySound(SOUND_ON_OPEN, SOUND_VOLUME); } vector hingePosition = gPositionClosed + HINGE_POSITION * gRotationClosed; /* * Reset the timer and start moving */ llResetTime(); while (llGetTime() < SECONDS_TO_ROTATE) { float time = llGetTime(); if (! gClosed) /* * Invert the timer for closing direction */ time = SECONDS_TO_ROTATE - time; rotation rotationThisStep = llEuler2Rot(gRotationPerSecond * time) * gRotationClosed; vector positionThisStep = hingePosition - HINGE_POSITION * rotationThisStep; llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, rotationThisStep, PRIM_POS_LOCAL, positionThisStep]); } /* * Set the new state */ gClosed = !gClosed; if (gClosed) { /* * Finalize the closing movement */ llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, gRotationClosed, PRIM_POS_LOCAL, gPositionClosed]); /* * Play the closing sound and preload the opening sound */ if (SOUND_ON_CLOSE) llPlaySound(SOUND_ON_CLOSE, SOUND_VOLUME); if (SOUND_ON_OPEN) llPreloadSound(SOUND_ON_OPEN); } else { /* * Finalize the opening movement */ rotation rotationOpened = llEuler2Rot(ROTATION * DEG_TO_RAD) * gRotationClosed; vector positionOpened = hingePosition - HINGE_POSITION * rotationOpened; llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, rotationOpened, PRIM_POS_LOCAL, positionOpened]); /* * Preload the closing sound */ if (SOUND_ON_CLOSE) llPreloadSound(SOUND_ON_CLOSE); /* * Set a timer to automatically close */ llSetTimerEvent(AUTO_CLOSE_TIME); } } default { state_entry() { /* * Assume the door is closed when the script is reset */ gClosed = TRUE; /* * These doesn't change unless the script is changed, calculate them once */ gRotationPerSecond = (ROTATION * DEG_TO_RAD / SECONDS_TO_ROTATE); /* * Preload the opening sound */ if (SOUND_ON_OPEN) llPreloadSound(SOUND_ON_OPEN); } touch_start(integer agentCount) { doOpenOrClose(); } timer() { llSetTimerEvent(0.0); /* * Close the door if it isn't already closed */ if (! gClosed) doOpenOrClose(); } }
  4. ainst Composer

    door/key script

    I need to create a door that opens only if the avatar holds the key. I have a regular door script, but what to do next? Please, do not bother to answer if you are not a scripter.
  5. Please advise a good door script without a hinge for vehicle (boat)! what requirements should it meet? Thanks!
  6. Hello! Please help to combine these two scripts. I am trying to make a script for a linked door without a "hinge". I need to add the closing / opening sensor to the FIRST SCRIPT. Thank's for any help! FIRST SCRIPT (please help to add sensor here) // 2017 Maschinenwerk, Corp. // All Rights Reserved. /* * Define the rotation in degrees, using the door prim's local coordinate * system */ vector ROTATION = <0.0, 0.0, 80.0>; /* * Define the position of the virtual hinge; usually this is half the door * prim's width and thickness */ vector HINGE_POSITION = <-0.8, 0.05, 0.0>; /* * Define how fast the door opens, in seconds */ float SECONDS_TO_ROTATE = 1.0; /* * Define after how much time the door should close automatically, in seconds; * set to 0.0 to disable autolmatic closing */ float AUTO_CLOSE_TIME = 10.0; /* * Define a sound that plays when the door starts to open; set to NULL_KEY * for no sound. */ key SOUND_ON_OPEN = "e5e01091-9c1f-4f8c-8486-46d560ff664f"; /* * Define a sound that plays when the door has closed; set to NULL_KEY * for no sound. */ key SOUND_ON_CLOSE = "88d13f1f-85a8-49da-99f7-6fa2781b2229"; /* * Define the volume of the opening and closing sounds */ float SOUND_VOLUME = 1.0; /* * NORMALLY, THERE IS NO NEED TO CHANGE ANYTHING BELOW THIS COMMENT. IF YOU DO * YOU RISK BREAKING IT. */ integer gClosed; // Door state: TRUE = closed, FALSE = opened rotation gRotationClosed; // Initial rotation of the door (closed) vector gPositionClosed; // Initial position of the door (closed) vector gRotationPerSecond; // The amount to rotate each second doOpenOrClose() { /* * Only perform the rotation if the door isn't root or unlinked */ integer linkNumber = llGetLinkNumber(); if (linkNumber < 2) return; if (gClosed) { /* * Store the initial rotation and position so we can return to it. * * Rotating back purely by calculations can in the longer term cause the door * to be positioned incorrectly because of precision errors * * We determine this everytime before the door is being opened in case it was * moved, assuming the door was closed whilst being manipulated. */ gPositionClosed = llGetLocalPos(); gRotationClosed = llGetLocalRot(); /* * Play the opening sound and preload the closing sound */ if (SOUND_ON_OPEN) llPlaySound(SOUND_ON_OPEN, SOUND_VOLUME); } vector hingePosition = gPositionClosed + HINGE_POSITION * gRotationClosed; /* * Reset the timer and start moving */ llResetTime(); while (llGetTime() < SECONDS_TO_ROTATE) { float time = llGetTime(); if (! gClosed) /* * Invert the timer for closing direction */ time = SECONDS_TO_ROTATE - time; rotation rotationThisStep = llEuler2Rot(gRotationPerSecond * time) * gRotationClosed; vector positionThisStep = hingePosition - HINGE_POSITION * rotationThisStep; llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, rotationThisStep, PRIM_POS_LOCAL, positionThisStep]); } /* * Set the new state */ gClosed = !gClosed; if (gClosed) { /* * Finalize the closing movement */ llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, gRotationClosed, PRIM_POS_LOCAL, gPositionClosed]); /* * Play the closing sound and preload the opening sound */ if (SOUND_ON_CLOSE) llPlaySound(SOUND_ON_CLOSE, SOUND_VOLUME); if (SOUND_ON_OPEN) llPreloadSound(SOUND_ON_OPEN); } else { /* * Finalize the opening movement */ rotation rotationOpened = llEuler2Rot(ROTATION * DEG_TO_RAD) * gRotationClosed; vector positionOpened = hingePosition - HINGE_POSITION * rotationOpened; llSetLinkPrimitiveParamsFast(linkNumber, [PRIM_ROT_LOCAL, rotationOpened, PRIM_POS_LOCAL, positionOpened]); /* * Preload the closing sound */ if (SOUND_ON_CLOSE) llPreloadSound(SOUND_ON_CLOSE); /* * Set a timer to automatically close */ llSetTimerEvent(AUTO_CLOSE_TIME); } } default { state_entry() { /* * Assume the door is closed when the script is reset */ gClosed = TRUE; /* * These doesn't change unless the script is changed, calculate them once */ gRotationPerSecond = (ROTATION * DEG_TO_RAD / SECONDS_TO_ROTATE); /* * Preload the opening sound */ if (SOUND_ON_OPEN) llPreloadSound(SOUND_ON_OPEN); } touch_start(integer agentCount) { doOpenOrClose(); } timer() { llSetTimerEvent(0.0); /* * Close the door if it isn't already closed */ if (! gClosed) doOpenOrClose(); } } SECOND SCRIPT (sensor is here) float TIMER_CLOSE = 5.0; integer DIRECTION = -1; // direction door opens in. Either 1 (outwards) or -1 (inwards); integer DOOR_OPEN = 1; integer DOOR_CLOSE = 2; vector originalPos; door(integer what) { rotation rot; rotation delta; vector eul; llSetTimerEvent(0); if (what == DOOR_OPEN) { // llTriggerSound("doorOpen", 1); eul = < 0, 0, 90 * DIRECTION > ; //90 degrees around the z-axis, in Euler form } else if (what == DOOR_CLOSE) { // llTriggerSound("doorClose", 1); eul = < 0, 0, 90 * -DIRECTION > ; //90 degrees around the z-axis, in Euler form } eul *= DEG_TO_RAD; //convert to radians rotation rot = llGetRot(); delta = llEuler2Rot(eul); rot = delta * rot; llSetRot(rot); } default { on_rez(integer start_param) { llResetScript(); } state_entry() { originalPos = llGetPos(); llSensorRepeat("", "", AGENT, 5, PI, 1); } sensor(integer num_detected) { door(DOOR_OPEN); state open_state; } moving_end() { originalPos = llGetPos(); } } state open_state { state_entry() { llSensorRepeat("", "", AGENT, 5, PI, 1); } no_sensor() { door(DOOR_CLOSE); llSetPos(originalPos); state default; } sensor(integer num_detected) {} moving_start() { door(DOOR_CLOSE); state default; } }
  7. MIVIMEX

    Physics problem EXIT:: SOLVED!

    Hello! The problem solved! Hello! Help please I have a problem. I'm trying to upload through the Firestorm the roof with an exit to the top, but I can not do physics. I tried a simplified cubic physics and the same model. But the passage is not formed. Applied rotation and scale. Prim / Convex hull don't work. I press the analyze and without, it does not help. It will be the roof of the moving object, so I think the analyze needs to be done. I will be grateful for any help! Thank you! P.S. When uploading with cubic physics, I do not even see the outlines of these cubes. Two months ago I uploaded another model and every cube could be seen.
  8. Zara Avindar

    drawbridge

    I have a script that I've been using on a drawbridge that works great. Then I moved the drawbridge to a new location and the bridge is reorienting itself to North - South whenever it is operated. I'm assuming something is wrong with my math in the orientation function. I'm hoping that someone can pinpoint what it is for me... thank you in advance. Here's is my orientation function that I'm using... rotation slerp(rotation source,rotation target,float amount) { return llAxisAngle2Rot(llRot2Axis(target/=source),amount*llRot2Angle(target))*source; }
  9. MIVIMEX

    Door Script with Lighting

    Hello! I have a question. I'm building a boat and there must be a refrigerator with a door with lighting on/off when door is open/close. I want to add such a lines to script, but I do not know where. Advise please! THANK YOU! LINES TO ADD: /////////////////ON llSetPrimitiveParams([PRIM_POINT_LIGHT,TRUE,<1.0, 1.0, 1.0>,1.0,15,0.750, PRIM_GLOW, ALL_SIDES, 0.4]); ///////////////// OFF llSetPrimitiveParams([PRIM_POINT_LIGHT,FALSE,<1.0, 1.0, 1.0>,1.0,15,0.750, PRIM_GLOW, ALL_SIDES, 0.0]); DOOR SCRIPT (For vehicles) //------------------------------------------------------ // Timeless Linked Door Script by Timeless Prototype //------------------------------------------------------ // The latest version of this script can always be found // in the Library section of the wiki: // http://www.secondlife.com/badgeo/ // This script is free to use, but whereever it is used // the SCRIPT's permissions MUST be set to: // [x] Next owner can modify // [x] Next owner can copy // [x] Next owner can transfer // [x] Allow anyone to copy // [x] Share with group //------------------------------------------------------ // USAGE INSTRUCTIONS FOR EVERYDAY USE: //------------------------------------------------------ // Say the following commands on channel 0: // 'unlock' - Unlocks all doors in range. // 'lock' - Locks all doors in range and allows // only the permitted users to open it. // To open the door, either Touch it, Walk into it or // say 'open' or say 'close'. //------------------------------------------------------ // USAGE INSTRUCTIONS FOR BUILDERS: //------------------------------------------------------ // 1. Copy and paste this script into the door prim and // change the settings (see further down). // 2. The door prim must be linked to at least one other // prim (could be linked to the house for example). // 3. The door prim MUST NOT be the root prim. // 4. Use Edit Linked Parts to move, rotate and size the // door prim for the closed state. // 5. When ready, stand close to the door and say // '/door closed' (this records the closed door // position, rotation and size to the object's // name and description). // 6. Use the Edit Linked parts to move, rotate and size // the door prim for the opened state. // 7. When ready, stand close to the door and say // '/door opened' (this records the opened door // position, rotation and size). // 8. Once recorded it will not accept these commands // again. If you do need to redo the settings then // delete the Name and Description of the door prim // (these are where the position information is // stored), and then follow the steps above again. // Note: deleting the object name won't save, so set // the object name to 'Object' to reset the object // name. //------------------------------------------------------ // Change these settings to suit your needs. //------------------------------------------------------ // To mute any/all of the sounds set the sound string(s) // to "" (empty string). // To get the UUID of a sound, right click on the sound // in your inventory and choose "Copy Asset UUID", then // paste the UUID in here. string doorOpenSound = "9a076511-9aa8-f50d-e34c-1396a07a66a9"; string doorCloseSound = "876d3492-b8b8-7745-f5ae-dc5176ec6105"; string confirmedSound = "69743cb2-e509-ed4d-4e52-e697dc13d7ac"; string accessDeniedSound = "58da0f9f-42e5-8a8f-ee51-4fac6c247c98"; string doorBellSound = ""; // Setting to empty stops door announcements too. float autoCloseTime = 0.0; // 0 seconds to disable auto close. integer allowGroupToo = TRUE; // Set to FALSE to disallow same group access to door. list allowedAgentUUIDs = ["e032aea2-9489-40d3-87b3-713300ead4cc"]; // Comma-separated, quoted list of avatar UUIDs who are allowed access to this door. integer listenChannel = 0; //------------------------------------------------------ // Leave the rest of the settings alone, these are // handled by the script itself. //------------------------------------------------------ integer isLocked = FALSE; // Only when the door is locked do the permissions apply. integer isOpen = TRUE; vector openPos = ZERO_VECTOR; rotation openRot = ZERO_ROTATION; vector openScale = ZERO_VECTOR; vector closedPos = ZERO_VECTOR; rotation closedRot = ZERO_ROTATION; vector closedScale = ZERO_VECTOR; key openerKey = NULL_KEY; key closerKey = NULL_KEY; integer isSetup = FALSE; integer listenHandle = 0; string avatarName = ""; mySayName(integer channel, string objectName, string message) { string name = llGetObjectName(); llSetObjectName(objectName); llSay(0, "/me " + message); llSetObjectName(name); } mySay(integer channel, string message) { string name = llGetObjectName(); llSetObjectName("Door"); llSay(0, message); llSetObjectName(name); } myOwnerSay(string message) { string name = llGetObjectName(); llSetObjectName("Door"); llOwnerSay(message); llSetObjectName(name); } mySoundConfirmed() { if (confirmedSound != "") { llTriggerSound(confirmedSound, 1.0); } } mySoundAccessDenied() { if (accessDeniedSound != "") { llTriggerSound(accessDeniedSound, 1.0); } } myGetDoorParams() { isSetup = FALSE; if (llSubStringIndex(llGetObjectDesc(), "door;") == 0 && llSubStringIndex(llGetObjectName(), "door;") == 0) { list nameWords = llParseString2List(llGetObjectName(), [";"], []); list descWords = llParseString2List(llGetObjectDesc(), [";"], []); if (llGetListLength(nameWords) != 4 || llGetListLength(descWords) != 4) { myOwnerSay("The door prim's name and/or description has invalid syntax and/or number of parameters. Delete the door prim's name and description and setup the door prim again."); } else { openPos = (vector)llList2String(nameWords, 1); openRot = (rotation)llList2String(nameWords, 2); openScale = (vector)llList2String(nameWords, 3); closedPos = (vector)llList2String(descWords, 1); closedRot = (rotation)llList2String(descWords, 2); closedScale = (vector)llList2String(descWords, 3); isSetup = TRUE; } } } mySetDoorParams(vector openPos, rotation openRot, vector openScale, vector closedPos, rotation closedRot, vector closedScale) { llSetObjectName("door;" + (string)openPos + ";" + (string)openRot + ";" + (string)openScale); llSetObjectDesc("door;" + (string)closedPos + ";" + (string)closedRot + ";" + (string)closedScale); isSetup = TRUE; } integer myPermissionCheck(key id) { integer hasPermission = FALSE; if (isLocked == FALSE) { hasPermission = TRUE; } else if (llGetOwnerKey(id) == llGetOwner()) { hasPermission = TRUE; } else if (allowGroupToo == TRUE && llSameGroup(id)) { hasPermission = TRUE; } else if (llListFindList(allowedAgentUUIDs, [(string)id]) != -1) { hasPermission = TRUE; } return hasPermission; } myOpenDoor() { isOpen = FALSE; myToggleDoor(); } myCloseDoor() { isOpen = TRUE; myToggleDoor(); } myToggleDoor() { if (isSetup == FALSE) { myOwnerSay("The door prim has not been configured yet. Please read the usage instructions in the door script."); } else if (llGetLinkNumber() == 0 || llGetLinkNumber() == 1) { myOwnerSay("The door prim must be linked to at least one other prim and the door prim must not be the root prim"); } else { isOpen = !isOpen; if (isOpen) { if (doorBellSound != "") { llTriggerSound(doorBellSound, 1.0); if (avatarName != "") { mySayName(0, avatarName, "is at the door."); avatarName = ""; } } if (doorOpenSound != "") { llTriggerSound(doorOpenSound, 1.0); } llSetPrimitiveParams([ PRIM_POSITION, openPos, PRIM_ROTATION, ZERO_ROTATION * openRot / llGetRootRotation(), PRIM_SIZE, openScale ]); // Door API. llMessageLinked(LINK_SET, 255, "cmd|door|opened", NULL_KEY); } else { if (doorCloseSound != "") { llTriggerSound(doorCloseSound, 1.0); } llSetPrimitiveParams([ PRIM_POSITION, closedPos, PRIM_ROTATION, ZERO_ROTATION * closedRot / llGetRootRotation(), PRIM_SIZE, closedScale ]); // Door API. llMessageLinked(LINK_SET, 255, "cmd|door|closed", NULL_KEY); } llSetTimerEvent(0.0); if (isOpen == TRUE && autoCloseTime != 0.0) { llSetTimerEvent(autoCloseTime); } } } default { state_entry() { listenHandle = llListen(listenChannel, "", NULL_KEY, ""); myGetDoorParams(); } touch_start(integer total_number) { if (myPermissionCheck(llDetectedKey(0)) == TRUE) { avatarName = llDetectedName(0); myToggleDoor(); } else { mySoundAccessDenied(); } } timer() { myCloseDoor(); } link_message(integer sender_num, integer num, string str, key id) { // Door API. The API is here in case you want to create PIN entry keypads or whatever. if (num == llGetLinkNumber()) { if (str == "cmd|door|doOpen") { myOpenDoor(); } else if (str == "cmd|door|doClose") { myCloseDoor(); } } if (str == "cmd|door|discover") { llMessageLinked(LINK_SET, 255, "cmd|door|discovered|" + (string)llGetKey(), id); } } listen(integer channel, string name, key id, string message) { // Performance note: it's quicker to compare the strings than to compare permissions each time anyone says anything on this channel. if (message == "open") { if (myPermissionCheck(id) == TRUE) { // Only open the door if the person is quite close to this door. openerKey = id; closerKey = NULL_KEY; avatarName = name; llSensor(name, id, AGENT, 5.0, TWO_PI); } else { mySoundAccessDenied(); } } else if (message == "close") { if (myPermissionCheck(id) == TRUE) { openerKey = NULL_KEY; closerKey = id; avatarName = name; // Only close the door if the person is quite close to this door. llSensor(name, id, AGENT, 5.0, TWO_PI); } else { mySoundAccessDenied(); } } else if (message == "lock") { if (myPermissionCheck(id) == TRUE) { isLocked = TRUE; mySoundConfirmed(); } else { mySoundAccessDenied(); } } else if (message == "unlock") { if (myPermissionCheck(id) == TRUE) { isLocked = FALSE; mySoundConfirmed(); } else { mySoundAccessDenied(); } } else if (message == "/door opened" && llSubStringIndex(llGetObjectName(), "door;") == -1) { if (llGetOwnerKey(id) == llGetOwner()) { mySoundConfirmed(); openPos = llGetLocalPos(); openRot = llGetLocalRot(); openScale = llGetScale(); isOpen = TRUE; if (! (closedPos == ZERO_VECTOR && closedRot == ZERO_ROTATION && closedScale == ZERO_VECTOR)) { mySetDoorParams(openPos, openRot, openScale, closedPos, closedRot, closedScale); } } else { mySoundAccessDenied(); } } else if (message == "/door closed" && llSubStringIndex(llGetObjectDesc(), "door;") == -1) { if (llGetOwnerKey(id) == llGetOwner()) { mySoundConfirmed(); closedPos = llGetLocalPos(); closedRot = llGetLocalRot(); closedScale = llGetScale(); isOpen = FALSE; if (! (openPos == ZERO_VECTOR && openRot == ZERO_ROTATION && openScale == ZERO_VECTOR)) { mySetDoorParams(openPos, openRot, openScale, closedPos, closedRot, closedScale); } } else { mySoundAccessDenied(); } } } sensor(integer num_detected) { if (openerKey != NULL_KEY) { integer i; for (i = 0; i < num_detected; i++) { if (llDetectedKey(i) == openerKey && myPermissionCheck(llDetectedKey(i)) == TRUE) { myOpenDoor(); } } openerKey = NULL_KEY; } else { integer i; for (i = 0; i < num_detected; i++) { if (llDetectedKey(i) == closerKey && myPermissionCheck(llDetectedKey(i)) == TRUE) { myCloseDoor(); } } closerKey = NULL_KEY; } } //------------------------------------------------------ // Uncomment the following code if you particularly want // collisions to affect the door state. //------------------------------------------------------ // collision_start(integer num_detected) // { // integer i; // for (i = 0; i < num_detected; i++) // { // if (myPermissionCheck(llDetectedKey(i)) == TRUE) // { // avatarName = llDetectedName(i); // myOpenDoor(); // } // else if (llDetectedType(i) & AGENT) // { // mySoundAccessDenied(); // } // } // } } // End of default state and end of script
  10. I have the free open source smooth rotating door script. It works great. But how can I make it so when touching one door it opens two? Ive had this script in the past but seem to have lost it. So basically it creates double doors that both open when when is touched. Also, I've added a transparent textured mesh 'plane' as the hinge of one door, but when I flip it and use on the other the door opens but then flips upside down!! Anyone else experienced this?
  11. I wish to begin building and learn its craft. For my first project, I've chosen to create a small simple changing room. Using the creation tool, I enlarged and elongated a hemisphere. Now I'm hoping to learn how to create a door on hinges with an inside lock to access and secure the inner space. Also, is it possible to texture the inside surface of the hemisphere different from the outside, perhaps with a texture changer in the shape of a control panel, that might also include an interior adjustable lighting switch? Any assistance with this first project of mine would be much appreciated. Thanks for reading this post, and your consideration. Robert, AKA ChoiceRider
  12. Apartment, Houses, & Dock Rentals Available for Rent! On the front of Blake Sea Prims are adjustable http://maps.secondlife.com/secondlife/Flung/15/20/22 FREE Furniture Set after 1st Week! For more information contact Daraden Friller.
  13. Hello, I need your help. I just created an account and deleted the official viewer for Linux. I log in (login) and up there all right, but in the loading screen the dice connect the region and it closes. I leave a fragment of what is read in the console: 2017-12-08T02: 56: 55Z INFORMATION: print: *************** SURNAME OF CALL END OF LL *************** 2017-12-08T02: 56: 55Z INFO: handleViewerCrash: lock marker file created /home/abraham/.secondlife/logs/SecondLife.error_marker 2017-12-08T02: 56: 55Z INFO: writeDebugInfo: opening debug file /home/abraham/.secondlife/logs/dump-76e39617-a589-409b-a712-485ca525d991//dynamic_debug_info.log ./secondlife: line 138: 1845 Segment violation $ LL_WRAPPER bin / do-not-directly-run-secondlife-bin "$ {ARGS [@]}" *** bad closing ($ LL_RUN_ERR). *** ********************************************** ***** This is a BETA version of the Second Life Linux client. Thanks for trying! Please read README-linux.txt before reporting problems.
  14. The Last Door Tavern... Written by Malphas(Kiro Ametza). "Doors are taken for granted by those that breach their thresholds day in and day out as part of their routine, meager goals within their lives. Some on occasion open doors and find something they'd not otherwise find in any other places, such as riches, whether materialistic or not in nature, happiness on the simplest of levels to the grandest scales known to those who span the gap between the dawn of creation, to now and further into the days to come. The Last Door Tavern has become a result of some folks' cumulative luck and effort, a safe haven tucked away out of space and time that wayfarers from the darkest of days and the brightest of nights may stumble into in hopes of what they seek so long as they are a willing patron and not that of a rowdy troublemaker. Doors, wonderful things that they are, you may just stumble through one you expected to lead to a home, to your new occupation, even while fleeing from those who would do you harm, take a breath and examine your surroundings, the place you've happened upon will do good by you so long as you do good by it in return. While the...prices of service may vary in unique ways, you can rest assured that what you pay for will most certainly be delivered. Though know this, should you enter this safe haven seeking to do its patrons or staff harm, know our own that have sought to make this place what it is are beyond qualified to take out the trash, so do yourselves a favor if you stumble in unknowingly through a door... Make this a trip you may return from better off as a product of, rather than never returning again. Our doors are always open." The Last Door Tavern has a home. The Hollow Woods has become its final place. Nestled on a calm shore you will find a menu befitting the weariest of travelers. But mind your manners and be careful what you order. The prices are not paid in gold or silver, dollar or pound...They cost so much more. But that is not the only thing that costs. Are you looking for a special item? We may have it or just know the person that has it. But what are you willing to pay for it? Are you willing to give the lovely barkeep a vial of your blood? A lock of your hair? Even the breath from your lungs? Seems pretty simple. Or is it. So do come visit. We love newcomers, we love their tales and we love more so their needs and wants. So sign the guest book and come for a spell...Just be careful what you order. Hollow Woods, Home to The Last Door Tavern Liyah's Tumblr Feature The Last Door Tavern! Hollow Woods, Home to The Last Door Tavern Flickr Album! Facebook Page for The Last Door Tavern
×