Jump to content

Karlos Zero

Resident
  • Posts

    12
  • Joined

  • Last visited

Everything posted by Karlos Zero

  1. That solves the issue for Alt+Click situation but if you go into mouselook mode it will limit your rotation to a 360 so it won't be usable if for instance you're walking and exploring in mouselook. I had an older wacom driver that worked well but it seems like its an incompatibility on MAC
  2. Hi and thanks for the reply everyone! Arton's suggestion worked well. Since the object I am working on should detect the owner, I made the sensor filter that and thus it was resolved now the rotation worked well. Thanks for all the support! Just for clarification, the object is meant to be sat on by another avatar not the owner.
  3. Hi everyone, I am working on a script for a saddle sitter for avatars, and I managed to make the saddle move and turn, but once another avatar sits on it, the turning function stops completely. Not sure why since I am not an expert scripter, but I am sure I overlooked something. Will paste my script here and let me know your thoughts on the topic. rotation Turn; default { state_entry() { llSetTimerEvent(0.5); llSensorRepeat("", NULL_KEY, AGENT, 5, PI,0.5); llSitTarget(<0.0, 0.0, 0.1>, ZERO_ROTATION); } timer() { vector OFFSET = <0,0,2>; vector OwnerPos = llList2Vector(llGetObjectDetails(llGetOwner(), [OBJECT_POS]),0) + OFFSET; llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_POSITION, OwnerPos]); llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_ROTATION, Turn]); } sensor(integer num_detected) { Turn = llDetectedRot(0); } }
  4. Hey guys, thanks a lot for the ideas! testing them now to see how to make the best of them. Many thanks again!
  5. Hi, I am working on a script that does the math when it's given a value from another object/avi, but I want to filter numbers from letters so that I'd have letters or words denied and numbers only accepted, and inputs with numbers and words also rejected. Is there any way I can check a text that my script listened to and verify if it's a number or a letter or a mixture of both? Any clues what commands or methods I should look for to be able to apply this? Your help is much appreciated.
  6. Well LepreKhaun, I think my statement is clear, as I mentioned above, this discussion and all code used is for educational purposes on my end.
  7. Hi LepreKhaun, The script I have here will not be the final one to be used, it will only be a part of a larger one that has more than just a dialog box or a sensor. I am using this script for now to get my head around how it's done but my final script will be far from this. I have no intentions on using it "as is" this is only for my learning purposes. That's why I am asking for help with the things I can not figure with my limited knowledge resources. I actually post here as a last resourse after I can not figure how to get things done from the Wiki and online resources.
  8. Hi Rolig, You are right, I added your snippet, made a very minute changes and it worked as planned. I really can't thank you enough!! Much appreciated!!
  9. Many thanks Ron for your fast reply, I took the snippets and tried to fit it in place. I can see where it's going now but I am stuck again at a half a step to the script's completion. At this point the script does use the "index" as a zero value which makes it send the message to the first avi on the list only. I would appreciate if you point out my error, I can't seem to put my hand on it. // Sensor Dialog//CONFIGinteger gOwnerOnly = FALSE;integer gChann = -293190;integer gStride = 9;//Listlist names;list ids;integer gPos = 0;key tReq;dialog(key id){ integer nTop = gPos + gStride - 1; list buttons = llList2List(names, gPos, nTop); string msg = llDumpList2String(buttons, "\n"); while(llGetListLength(buttons) % 3 != 0) { buttons = llListInsertList(buttons, [" "], gStride); } if (gPos >= gStride) { buttons += ["PREVIOUS"]; }else{ buttons += [" "]; } buttons += [" "]; if (nTop - 1 < llGetListLength(names)) { buttons += ["NEXT"]; }else{ buttons += [" "]; } llDialog(id, msg, buttons, gChann);}default{ state_entry() { llListen(gChann, "", NULL_KEY, ""); } touch_start(integer num_times) { if ( ( gOwnerOnly == TRUE && llDetectedKey(0) == llGetOwner() ) || gOwnerOnly == FALSE) { tReq = llDetectedKey(0); llOwnerSay("Sensing Avis"); llSensor("", NULL_KEY, AGENT,5, PI); } } sensor(integer num_detected) { names = []; gPos = 0; integer i; ids = []; ids += [llDetectedKey(i)]; for (i = 0; i < num_detected; i++) { names = names + llDetectedName(i); } dialog(tReq); } listen(integer channel, string name, key id, string msg) { if (msg == "NEXT") { gPos = gPos + gStride; dialog(id); } else if (msg == "PREVIOUS") { gPos = gPos - gStride; dialog(id); } else if (msg == " ") { llOwnerSay("Sorry, this is just a filler!"); } else if (msg) { integer index = llListFindList(names, [msg]); llRegionSayTo(llList2Key (ids, index),0, "Hi, the Hud is speaking to you"); llOwnerSay(msg); } }}// END //
  10. Hi, I am writing a script that would do a sensor scan on Avatars close by, then open a Dialog and lists their names, and when I click the name, it shall send a message via "llRegionSayto" that particular Avatar. At this point the script responding to touch would open the Dialog, Sensor the avis and list them on the buttons correctly as intended. But when pressing the button I somehow can not link it to sending the message to that particular UUID of the name. I have made the sensor prepare 2 separate lists, one of the Avatar Names, and the other for the Avatar UUIDs. Any ideas how can I make this work? (( Please note I am not a pro-scripter, so please explain a bit. Much appreciated in advance. )) // Sensor Dialog //CONFIG integer gOwnerOnly = FALSE; integer gChann = -293190; integer gStride = 9; //List list names; list ids; integer gPos = 0; key tReq; dialog(key id) { integer nTop = gPos + gStride - 1; list buttons = llList2List(names, gPos, nTop); string msg = llDumpList2String(buttons, "\n"); while(llGetListLength(buttons) % 3 != 0) { buttons = llListInsertList(buttons, [" "], gStride); } if (gPos >= gStride) { buttons += ["PREVIOUS"]; }else{ buttons += [" "]; } buttons += [" "]; if (nTop - 1 < llGetListLength(names)) { buttons += ["NEXT"]; }else{ buttons += [" "]; } llDialog(id, msg, buttons, gChann); } default { state_entry() { llListen(gChann, "", NULL_KEY, ""); } touch_start(integer num_times) { if ( ( gOwnerOnly == TRUE && llDetectedKey(0) == llGetOwner() ) || gOwnerOnly == FALSE) { tReq = llDetectedKey(0); llOwnerSay("Sensing Avis"); llSensor("", NULL_KEY, AGENT, 3, PI); } } sensor(integer num_detected) { names = []; gPos = 0; integer i; ids = []; integer u; for (i = 0; i < num_detected; i++) { names = names + llDetectedName(i); ids=ids + llDetectedKey(u); } dialog(tReq); } listen(integer channel, string name, key id, string msg) { if (msg == "NEXT") { gPos = gPos + gStride; dialog(id); }else if (msg == "PREVIOUS") { gPos = gPos - gStride; dialog(id); }else if (msg == " ") { llOwnerSay("Sorry, this is just a filler!"); } else{ llOwnerSay(msg); llRegionSayTo((string)ids,0,"Hi, the Hud is speaking to you"); //the String ids sends the whole list, I need to select just one of those ids } } } // END //
  11. Yesterday I had this issue, I visited one of Magnum's sandboxes and there was a griefing attack in progress (Lots of physical prims rezzed with loads of sounds) I was wearing weapons and AO and couple more huds, When tped out All the scripts on me were "NO Run" Even in the weapons I wore that are (NO MOD)! I had a hud on me that I made, the script was also No Run!. Of course the AO was ruined, couldnt event get it to reset itself cause I can't actually tick the script (Running). I am not sure why this would happen but obviously the Sim Overload caused it to turn off all scripts of everyone around that griefed sim.
  12. I have the same issue right here, It says "We're sorry, but online billing is temporarily unavailable. Please try again later." And that's on the Aditi Page "https://secondlife.aditi.lindenlab.com" That is the same even after finishing the Mesh turtorial. I think it's a problem on LL's end.
×
×
  • Create New...