Jump to content

Search the Community

Showing results for tags 'script'.



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
    • Experience Tools Forum
    • 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
    • Linden Homes
    • 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


About Me

Found 240 results

  1. Hello! Is it possible to make such a script so that if you put it, for example, in an element of clothing (or even full mesh avatar), so that when shooting and hitting bullets on clothes, blood particles will fly out of it? as a spray. Advise me please, thanks a lot!
  2. Why isn't the touch script working? Please, I need help from a scripter ASAP. Here's the snippet: integer setting; float wait; float rand; default { state_entry() { @blink; llSetText((string)setting, <1, 1, 1>, 1); if(setting == 0) { llOffsetTexture(0, 0.2, -1); llOffsetTexture(0, 0.4, -1); wait = 0; rand = llFrand(0.2) + 0.1; while(wait < rand) { wait = wait + 0.25; llOffsetTexture(0, 0.4, -1); } llOffsetTexture(0, 0.2, -1); llOffsetTexture(0, 0, -1); wait = 0; rand = llFrand(8.0); while(wait < rand) { wait = wait + 0.25; llOffsetTexture(0, 0, -1); } } if(setting == 1) { llOffsetTexture(0, 0, -1); } if(setting == 2) { llOffsetTexture(0, 0.4, -1); } if(setting == 3) { llOffsetTexture(0, -0.1, -1); } if(setting == 4) { llOffsetTexture(0, 0.2, -1); } jump blink; } touch(integer total_number) { if(setting == 4) { setting = 0; } else { setting = setting + 1; } llOwnerSay((string)setting); } }
  3. Hey there, so i just started to learn scripting and start with a simple draw/holster script and now trying to put animation in it. actually i managed to insert an animation and work just fine. what i am wondering is is it possible to insert another animation/pose after the first one. so the script goes like this (i tried several option after browsed the wiki and all over internet but still didnt work most of the time the script only run 1 animation.) : integer IsBowie_L = TRUE; integer ChatChan = 0; string DrawCmd = "pull"; string HolsterCmd = "bag"; integer IsVisible; integer hListen; default { state_entry() { llRequestPermissions(llGetOwner(),PERMISSION_TRIGGER_ANIMATION); } attach(key id) { if (id != NULL_KEY) { hListen = llListen(ChatChan, "", id, ""); } else { llListenRemove(hListen); } } listen(integer chan, string name, key id, string msg) { if (chan == ChatChan) { if (llToLower(msg) == llToLower(DrawCmd)) { if (IsBowie_L) { if (llGetLinkNumber() == LINK_ROOT) llSetLinkAlpha(LINK_SET, 1.0, ALL_SIDES); else llSetAlpha(1.0, ALL_SIDES); llStartAnimation("dualdrawblades"); } else { if (llGetLinkNumber() == LINK_ROOT) llSetLinkAlpha(LINK_SET, 0.0, ALL_SIDES); else llSetAlpha(0.0, ALL_SIDES); } } else if (llToLower(msg) == llToLower(HolsterCmd)) { if (IsBowie_L) { if (llGetLinkNumber() == LINK_ROOT) llSetLinkAlpha(LINK_SET, 0.0, ALL_SIDES); else llSetAlpha(0.0, ALL_SIDES); llStopAnimation("dualdrawblades"); } else { if (llGetLinkNumber() == LINK_ROOT) llSetLinkAlpha(LINK_SET, 1.0, ALL_SIDES); else llSetAlpha(1.0, ALL_SIDES); } } } } } is it possible to add another animation after the first one that already here . Thank you soo much for any input...
  4. 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
  5. 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?
  6. PLEASE NOTE: I figured out a workaround by placing the original touch script in the root -- however, I would still like to know why this didn't work. Thank you. Hello: I need help sorting out this script. I have a listen script that works except for the avatar llDetectedName(0). The list text comes up into chat but Instead of the avatars first name, it returns all 0's. It worked fine as a standalone touch script but I need it to work in a child prim so created a listen script -- and need to have listens to send instructions to other child prime as well. Thank you! This is what pops up in chat: The answer to your question, 00000000-0000-0000-0000-000000000000, is Blah blah blah.. This is the listen script in the child prim: list linesofchat= [ "Blah blah blah.", "Yada yada yada.", "la la la la la la la.", ]; default { state_entry() { llListen( 12345, "", NULL_KEY, "" ); } listen( integer channel, string name, key id, string message ) {if ( message == "motorboat" ) { integer j = llFloor(llFrand(llGetListLength(linesofchat))); string av = llDetectedName(0); av = llList2String(llParseString2List(av,[" "],[""]),0); llSay(0, "The answer to your question, " + av + ", is " + llList2String(linesofchat,j)); } } } This is the call script in the root prim: integer channel = 12345; default { touch_start(integer total_number) { ; llSay(channel,"motorboat"); } }
  7. im searching for a script that colors a object by usings the nearest persons uuid within 10 meters if it cant find any it uses owners uuid for all faces and linked parts
  8. Hello! I'm trying to create a script of an exploding barrel. I want the object (the barrel - a single mesh object) to explode when bullets hit it - throwing out the explosion particles, making a sound, maybe becoming physical and flying off to the side and self destruct. Have any ideas? Thank you! If I ask to scripters - how much could it cost to write such a script these days?
  9. Looking for a way for a group to pool L$ together in a way we have a live feed of the total balance, plus records of who put what in. Ideally it would show within SL all information. The funds are to be pooled together in order to facilitate future land rental &/or community purchases. Has anyone seen something like this as a tool? Even an API option would be helpful, as we could reroute it back into SL? Any suggestions would be greatly appreciated.
  10. I'm sharing an asset that would be helpful, it's not an SL group. Commission Central is a Discord created as a community to share art and link up content creators with clients. https://discord.gg/dbxcqNz Please share!
  11. Hiya folks -- I have a large pendulum and am using the Dora Gustafson, Studio Dora swing script (below) from the outworlds script library. The text prims are set up and linked as such: pendulum (cube prim, tapered at the bottom), then a cylinder stretched out on z that acts like a rod and at the top, a small cube that is the root and contains the swing script. it works okay, i had to adjust the angle and the steps in the swing script to decrease the swing angle and slow it down -- well, it works mostly okay, it can be kinda jerky every now and then but I can live with that for now. What I'd like to do next is to rotate the root cube so the pendulum continues to swing but via the root, will also slowly rotate within a circular space on the ground so that if you attached a pencil to the pendulum end, it would act like a kind of spirograph. Not sure how to incorporate the rotation of the root prim into the swing script. I plopped in a target omega line of code but it didn't do anything - I'm guessing because I have no clue what I"m doing and that I read somewhere and can't find it there is a specific target omega for physical objects. (?) in an absolutely perfect world, the swing script would also randomly change the angle so that would alter the length of the path / lines. Appreciate any help. Thank you! This is the swing script: // :SHOW: // :CATEGORY:Pendulum // :NAME:Pendulum // :AUTHOR:Dora Gustafson, Studio Dora // :KEYWORDS: // :CREATED:2015-11-24 20:38:39 // :EDITED:2015-11-24 19:38:39 // :ID:1094 // :NUM:1870 // :REV:1 // :WORLD:Second Life // :DESCRIPTION: // Will swing a prim like a simple pendulum pivoting at an axis parallel to the prim's Y-axis // :CODE: // Pendulum motion by Dora Gustafson, Studio Dora 2012 // Will swing a prim like a simple pendulum pivoting at an axis parallel to the prim's Y-axis // The pivot axis will be at the top of a prim with the Z-axis pointing up // Quote from http://en.wikipedia.org/wiki/Pendulum_(mathematics) // • A simple pendulum is an idealization of a real pendulum using the following assumptions: // • The rod or cord on which the bob swings is massless, inextensible and always remains taut; // • Motion occurs only in two dimensions, i.e. the bob does not trace an ellipse but an arc. // • The motion does not lose energy to friction or air resistance. // The periode time increase with the Z dimension (the pendulum length)... // If it is too small the motion will not be well because of the time limitation with Key Framed Motions // The parameters set in the script works nice with a 3m long pendulum // If the pendulum is moved, rotated or resized the script must be reset to update the motion float angle=1.0; // max swing from resting (radians) //I CHANGED THIS TO 0.35 float steps=12.0; // number of Key Frames //I CHANGED THIS TO 48.0 float step=0.0; list KFMlist=[]; vector U; vector V; float angleU=0.0; float angleV; integer swing=TRUE; vector basePos; rotation baseRot; default { state_entry() { llSetMemoryLimit( llGetUsedMemory()+0x1000); llSetPrimitiveParams([PRIM_PHYSICS_SHAPE_TYPE, PRIM_PHYSICS_SHAPE_CONVEX]); basePos = llGetPos(); baseRot = llGetRot(); vector v1 = llGetScale(); float periode = TWO_PI*llSqrt( v1.z/9.81); float dT = periode/steps; dT = llRound(45.0*dT)/45.0; if ( dT < 0.11111111 ) dT = 0.11111111; v1.x = 0.0; v1.y = 0.0; v1 = -0.5*v1*llGetRot(); U = v1; while ( step < steps ) { step += 1.0; angleV = angle*llCos( TWO_PI*step/steps + PI_BY_TWO); V = v1*llAxisAngle2Rot(llRot2Fwd(llGetRot()), angleV); KFMlist += [V-U, llEuler2Rot(< angleV-angleU, 0.0, 0.0>), dT]; angleU = angleV; U = V; } } touch_start( integer n) { llSetKeyframedMotion( [], []); llSleep(0.2); llSetPrimitiveParams([PRIM_POSITION, basePos, PRIM_ROTATION, baseRot]); if ( swing ) llSetKeyframedMotion( KFMlist, [ KFM_MODE, KFM_LOOP]); swing = !swing; } on_rez( integer n) { llResetScript(); } }
  12. Hello all, with the help of a lot people from this forum i have this script what is working almost how i want, let me explain what it is. The script go in a object and the object is attached as hud to the avatar, when more people attach the object as hud and someone say "/66 hello" it comes on the screen of all who have the hud and it play a sound when someone sent a message, so far it is working how i want....now there is one thing i cant get to work. I have been told that when i use llregionsay it sent the message to everyone on the region with the hud but that not work, only people who are in 20 meter range get the message and when hit CTRL the people in 100 meter get the message but i want that everyone on the region with the hud get the message. To be clear, the message is not sent to the local chat but is sent to the hud so when you have the hud in the middle of your screen you see the message in the middle of your screen. The other thing i hope can be fixed is that now when someone say something with "/66 hello" it sent that to all others with the hud with the name of the one who have sent it but it use the usernames and i want that it sent the displayname. Hope someone can help me with this. integer transmit_channel = 66; integer listen_handle; ////////////////////////////// float MyFade; string MyMessage; say_message(string message) { llRegionSay(-3, message); llPlaySound("Horn",0.5); llSetTimerEvent(0.0); llSetText(message, <0.004, 1.000, 0.439>, 1.0); MyFade = 1.0; MyMessage = message; llSetTimerEvent(6.0); // tick every 1 seconds. } ////////////////////////////// transmit(string message) { llRegionSay(transmit_channel, message); } ////////////////////////////// show_help() { llOwnerSay("Bird Call Directions:"); llOwnerSay("/bc on: Turn on."); llOwnerSay("/bc off : Turn off."); llOwnerSay("/bc reset: Reset."); } ////////////////////////////// default { state_entry() { llOwnerSay("Bird Call enabled"); llSetObjectName(llGetDisplayName(llGetOwner()) + " (BC)"); state on; } } ////////////////////////////// state on { timer() { MyFade -= 0.3; // reduce by 1/5th each time llSetText(MyMessage, <0.004, 1.000, 0.439>, MyFade); if (MyFade == 0.0) llSetTimerEvent(0.0); } state_entry() { llListen(0, "", llGetOwner(), ""); listen_handle = llListen(transmit_channel, "", NULL_KEY, ""); } ////////////////////////////// attach(key attached) { if (attached != NULL_KEY) { llSetObjectName(llGetDisplayName(llGetOwner()) + " (BC)"); llOwnerSay("Bird Call enabled (To sent a message to your team, type in local for example /5 bandage me). Type \"/bc help \" for directions."); llOwnerSay("Bird Call on."); llOwnerSay("Bird Call listening on channel " + (string) transmit_channel); } } ////////////////////////////// changed(integer change) { if (change & CHANGED_OWNER) { llResetScript(); } } ////////////////////////////// listen(integer channel, string name, key id, string message) { if (channel == 0 && id == llGetOwner() && llStringLength(message) > 4 && llGetSubString(llToLower(message), 0, 3) == "/bc ") { message = llDeleteSubString(message, 0, 3); if (llGetSubString(llToLower(message), 0, llStringLength("channel ") - 1) == "channel " && llStringLength(message) > llStringLength("channel ")) { message = llDeleteSubString(message, 0, llStringLength("channel ") - 1); if ((integer) message != 0) { transmit_channel = (integer) message; llListenRemove(listen_handle); listen_handle = llListen(transmit_channel, "", NULL_KEY, ""); llOwnerSay("Bird Call listening on channel " + (string) transmit_channel); } } ////////////////////////////// else if (llGetSubString(llToLower(message), 0, llStringLength("off") - 1) == "off") { state off; } else if (llGetSubString(llToLower(message), 0, llStringLength("help") - 1) == "help") { show_help(); } else if (llGetSubString(llToLower(message), 0, llStringLength("scan") - 1) == "scan") { state scan; } else if (llGetSubString(llToLower(message), 0, llStringLength("reset") - 1) == "reset") { llResetScript(); } else { transmit(message); } } ////////////////////////////// else if (channel != 0) { if (id == llGetOwner()) { say_message(message); } else { say_message(name + ": " + message); } } } } ////////////////////////////// state off { state_entry() { llListen(0, "", llGetOwner(), ""); llOwnerSay("Bird Call off."); } attach(key attached) { if (attached != NULL_KEY) { llSetObjectName(llGetDisplayName(llGetOwner()) + " (BC)"); llOwnerSay("Bird Call enabled (status: OFF). Type \"/bc help\" for directions."); } } ////////////////////////////// changed(integer change) { if (change & CHANGED_OWNER) { llResetScript(); } } ////////////////////////////// listen(integer channel, string name, key id, string message) { if (channel == 0 && id == llGetOwner() && llStringLength(message) > 4 && llGetSubString(llToLower(message), 0, 3) == "/bc ") { message = llDeleteSubString(message, 0, 3); if (llGetSubString(llToLower(message), 0, llStringLength("on") - 1) == "on") { state on; } else if (llGetSubString(llToLower(message), 0, llStringLength("help") - 1) == "help") { show_help(); } else if (llGetSubString(llToLower(message), 0, llStringLength("scan") - 1) == "scan") { state scan; } else if (llGetSubString(llToLower(message), 0, llStringLength("reset") - 1) == "reset") { llResetScript(); } } } } ////////////////////////////// state scan { state_entry() { llListen(0, "", llGetOwner(), ""); listen_handle = llListen(transmit_channel, "", NULL_KEY, ""); llSetTimerEvent(5); llOwnerSay("Channel Scanning...say \"bc stop\" to stop."); } attach(key attached) { if (attached != NULL_KEY) { llSetObjectName(llGetDisplayName(llGetOwner()) + " (BC)"); llOwnerSay("Bird Call enabled (status: SCANNING). Type \"/bc help\" for directions."); } } ////////////////////////////// changed(integer change) { if (change & CHANGED_OWNER) { llResetScript(); } } ////////////////////////////// timer() { transmit_channel++; llListenRemove(listen_handle); listen_handle = llListen(transmit_channel, "", NULL_KEY, ""); llOwnerSay("Bird Call listening on channel " + (string) transmit_channel); } listen(integer channel, string name, key id, string message) { if (channel == 0 && id == llGetOwner() && llStringLength(message) > 4 && llGetSubString(llToLower(message), 0, 3) == "/bc ") { message = llDeleteSubString(message, 0, 3); if (llGetSubString(llToLower(message), 0, llStringLength("channel ") - 1) == "channel " && llStringLength(message) > llStringLength("channel ")) { message = llDeleteSubString(message, 0, llStringLength("channel ") - 1); if ((integer) message != 0) { transmit_channel = (integer) message; llListenRemove(listen_handle); listen_handle = llListen(transmit_channel, "", NULL_KEY, ""); llOwnerSay("Bird Call listening on channel " + (string) transmit_channel); } } ////////////////////////////// else if (llGetSubString(llToLower(message), 0, llStringLength("on") - 1) == "on") { state on; } else if (llGetSubString(llToLower(message), 0, llStringLength("stop") - 1) == "stop") { state on; } else if (llGetSubString(llToLower(message), 0, llStringLength("off") - 1) == "off") { state off; } else if (llGetSubString(llToLower(message), 0, llStringLength("help") - 1) == "help") { show_help(); } else if (llGetSubString(llToLower(message), 0, llStringLength("reset") - 1) == "reset") { llResetScript(); } else { transmit(message); } } ////////////////////////////// else if (channel != 0) { if (id == llGetOwner()) { say_message(message); } else { say_message(name + ": " + message); } state on; } } }
  13. We're looking for advanced scripters to help us with an in-world project. If you have the ability to create advanced scripts please contact us in-world through "CrocTechnologies Resident" via IM or Notecard to discuss further details.
  14. Hi fellow scripters and builders! I'm working on a control HUD to one of my upcoming projects, and I've kind of hit a dead end thanks to my insufficient trigonometry. What I need is the following: I've got a face on the HUD. It's middle point represents a pivot. The HUD wearer can click the face, and I need to be able to get the angle (calculated from the "upwards" Z axis) from that. The click provides coordinates in the form of a vector <u,v,0> where U is the horizontal coord, V is the vertical coord, and they both are a range from 0.0 to 1.0 - using function llDetectedTouchUV() I'm attaching a visualization of what I have in mind. I'm sure this is a trivial problem, but for someone who had long forgotten everything about trigonometry, it's a total blocker. Thank you to whoever will be able to help me out! ♥
  15. Hello! Help please with particles! I build a boat and I want to make such a wake on the water, which starts from the very nose and goes around the boats's hull. I saw it inworld so I believe its possible, I just dont know how. Particles does not go through the hull. They are slightly spraying forward and then circling the boat. But my particles go through without encountering obstacles. How can I simulate such particle wake? I have a particle script generator. I'm playing with sliders but I can not find the right one yet. Maybe someone has done this before and just tell the right parameter? This would greatly help. (Animation shows my particles going through obstacle)
  16. Hello friends, I'm new to programming scripts. My project is to create a boat. It has been easier to write the script separately for the lights, the horn, the ignition, movement of the helix, in short, several scripts. The problem is that I want to activate them by command but, in all, I used channel 0, using the function llListen, however, by putting all the scripts in their respective prims inside my boat, it seems that the instructions are mixed making several scripts respond simultaneously, how can I make everyone listen on a different channel? best regards.
  17. Hello! Im a professional scripter with 10 years of experience on the field, that offers a unique scripting service for second life, almost everything can be scripted or modified. Vehicles, breedables, RP systems, gambling, clothing , visuals, HUDs, tools, weapons, etc... I am also a web developer that uses JS/PHP/SQL for external http server communication with databases. My prices are affordable, and i charge similar than other less experienced scripters, contact me inworld with your request : Hao Zaytsev ( by notecard if possible ) Please do not reply this message or contact me throught the forum, better inworld. Cheers, Hao Zaytsev
  18. Hello! Please help to make a depth gauge for the boat. I have a script that shows the depth in the form of hovertext. But I need to turn it into an analog scale with an animated arrow texture or a fixed arrow with an animated scale for one mesh prim. How would I do it better? Thank you very much!
  19. Hello! Please help to make a depth gauge for the boat. I have a script that shows the depth in the form of hovertext. But I need to turn it into an analog scale with an animated arrow texture or a fixed arrow with an animated scale for one mesh prim. I can provide this script. Please, not very expensive, I dont want this gauge to be more expensive than my boat. I can wait as long as you need. You can leave this script no mod! More details .: that's how I see it. One prim mesh with two - three faces. One face for the background, the second for the arrow, the third for the body (not necessary). We need to animate one texture, depending on the depth. Mesh and textures I do myself. Simple scale from 0 to 20. I also have full perm scripted analog compass and altimeter gauges, if that helps. Thank you very much! _------------+------------_ THE PROBLEM SOLVED!
  20. Hello there! I have an attachment that is used to push/pull users for a combat weapon. The object uses llPushObject from an attachment. For some reason or another, the script just loses all power and can no longer move anything. It can SLIGHTLY move things but the power is significantly decreased. Using llGetEnergy returns that the object has plenty of energy left. Things I've tried: Changing mass of attachment Moving object to different attachment point. Resetting the scripts. Trying it on LIGHT objects/avatars. Relogging Changing sims. Taking the object off and putting it back on. Making the root prim bigger. Enable.disable phantom. The only thing that gets it working again is to rez out a new object, put the scripts in, then attach it. Nothing above worked except for this. The object I have made has multiple links and is a lengthy process to remake it every time it randomly quits. Is there something I am doing wrong or what? ;( Code Snippet: sensor( integer i ) { key id = llDetectedKey( 0 ); vector pos = llDetectedPos( 0 ); vector o_pos = llGetPos(); float mass = llGetObjectMass( id ); float dist = llVecDist( pos, o_pos ); float force = llPow( dist, 3.0 ) * push_force; // push_force = 150 vector local_pos = ( pos - o_pos ); // Convert global positions to local force. Target Pos - Current Pos llPushObject( id, local_pos * force * mass, ZERO_VECTOR, FALSE ); } Keep in mind, the code above is a shortly written example of my main code. This is to keep things simple. EDIT: I've singled out the issue. This only happens when going to another sim from the one I first created the object in. I.E if I make it in some random sim of my choice, it will work flawlessly, but if I go to another one, it doesn't work at all. And if I go back to the sim before, it no longer works there either.
  21. I will try to explain what I am looking for .. I want to be able to make a sticker (a panda for example) .. and once i click on the panda sticker it will show up in a sticker collections book. The original panda sticker can be trashed and cant be used any more and then you just go about getting more stickers to click on and add to a book It doesnt have to be a book either.. can be a board you put in your house (sort of like those chore charts that display a sticker when someone does a chore??) I have a million ideas for stickers but want a place where people can display the ones they own already.. plus if they already have .. the panda sticker they can sell it (like a gatcha resale item) or trade it ..until they get the complete set. I hope this makes sense! I dont know a thing about scripting .. I only know how to make the stickers and the boards/books lol
  22. Hello, I am wondering how does aeros production (HUD<->prims) or other separate objects communicate. I red that it works via linked-messages. But in wiki it writes that Linkedmessage function can communicate only in the same prim between scripts. Therefore, if there is 2 separate object, does the only solution is e.mail and http? Thank you ^^
  23. Hello! I have recently been attempting to convert one of my land-based planes into a seaplane. I have successfully installed floats on it, but find that my aircraft sinks like a rock. The aircraft in question is an mm_MXS-R 1.2 by Michie Yokosuka, and the mm_MXS-R_script_1.2 it contains is marked as 'no modify'. Therefore, I have since been trying to learn how to create a patch script which I can insert into my plane's root prim, that will allow my plane to float on water. Based on past forum posts, I have crafted the following script, but it does not seem to work: default { state_entry() { vector pos = llGetPos(); float altitude_sea = (pos.z - llWater(ZERO_VECTOR)); if (altitude_sea > 0 ) { llSetVehicleFloatParam( VEHICLE_HOVER_HEIGHT, 0 ); llSetVehicleFloatParam( VEHICLE_HOVER_EFFICIENCY, 0 ); llSetVehicleFloatParam( VEHICLE_HOVER_TIMESCALE, 10 ); llSetVehicleFloatParam( VEHICLE_BUOYANCY, .977 ); } else if (altitude_sea < 0 ) { llSetVehicleFloatParam( VEHICLE_HOVER_HEIGHT, 0 ); llSetVehicleFloatParam( VEHICLE_HOVER_EFFICIENCY, 0.2 ); llSetVehicleFloatParam( VEHICLE_HOVER_TIMESCALE, 0.4 ); llSetVehicleFloatParam( VEHICLE_BUOYANCY, 1.0 ); } } } I have also installed VICE on the plane via RCX's free installer program, and that process has been a resounding success. So currently the additional scripts installed on the plane's root prim are: RCX VICE+TCS LISTENER VICE Bomb Control v1.2.0 VICE+TCS ALA sensor The following VICE Patch: /** * @author: reconx86 (RCX Productions) * * @license: You are allowed to share this script full-perm with others and even use it in your own projects. * But do not sell the script seperately nor as part of a script package. * * This script is made to make any incompatible mod-vehicle work with VICE. * It's not recommended to use unless you really can't script the vehicle at hand, this script may cause glitches and interfere with the main-script functions. */ integer seated; key owner; integer links; integer prevLinks; default { state_entry() { owner = llGetOwner(); prevLinks = llGetNumberOfPrims(); } changed(integer change) { if (change & CHANGED_OWNER) { owner = llGetOwner(); } if (change & CHANGED_LINK) { integer link_nr; links = llGetNumberOfPrims(); for (link_nr = 0; link_nr <= links; link_nr++) { if (owner == llGetLinkKey(link_nr)) { if (!seated) { llMessageLinked(LINK_SET, seated = TRUE, "seated", owner); } prevLinks = links; } } if (seated && links == prevLinks - 1) { llMessageLinked(LINK_SET, seated = FALSE, "seated", NULL_KEY); } prevLinks = links; } } } I would really appreciate it if someone could help me perfect my seaplane patch script!
  24. I am a very experienced mesh and script writer who is looking for a team to join, or custom jobs. I have been around secondlife for 11 years, and can make just about anything. I am very reliable, and affordable. Contact me in world : kira Alena.
  25. Hello im looking for either a guide on how to make a RP hud/script. Im looking to start a new RP/Breedable system and need a guide that can help get me started or looking for people that are interested in the same thing and are looking for work Any help is appreciated ty!
×
×
  • Create New...