Jump to content

Icky Spot

Resident
  • Posts

    18
  • Joined

  • Last visited

Everything posted by Icky Spot

  1. Okay, i'll give it a shot. I'll just keep playing around with it i guess. Thanks for your time.
  2. Yeah, i knew why it stopped functioning, i just couldn't figure out how to fix it. Are you saying i don't need the state on at all? Or that i need an event handler?
  3. So first off, this script is a huge mess. I originally had a script that when you attached a prim, and touched it, it animated your avatar and added some floating text, simple enough. But then i decided to add a textbox so that people could change the text to whatever they wanted... i think i'm making it way too complicated, and in the process i've cluttered up the script so bad i don't even know where to begin to fix it, lol. Basically all i want is two options in the dialog menu when the peson clicks it, to toggle the anim/text on and off, and another to change the text. But i guess it also has to remember the changed text and i'm not sure how to do that. This is the mess i made so far, It works initally, but after i touch the prim once and activate the animation and text, the script seems to stop functioning, meaning, i can't touch it again to bring up the dialog menu. I know this is probably easy stuff for anyone with scripting knowledge, but i've been away from scripting and SL for so long, i'm outta my league here. Does anyone have some time to help me? Perhaps tell me the million things i'm doing wrong? It would be greatly appreciated. key toucher; list tools = ["Change Text","Anim On", "Anim Off"]; string msg = "\nPlease choose an option:"; string anim = "Writing"; integer attached = FALSE; integer permissions = FALSE; integer listen_id; integer unique_channel; integer create_unique_channel(key id) { return 0x80000000 | (integer)("0x" + (string) id); } default { state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION | PERMISSION_TAKE_CONTROLS); llSetText("",<1.0,1.0,1.0>,1.0); attached = FALSE; llStopAnimation(anim); unique_channel = create_unique_channel(llGetKey()); llListen(unique_channel, "", NULL_KEY, ""); } touch_start(integer total_number) { toucher = llDetectedKey(0); if (toucher == llGetOwner()) { llDialog(toucher, msg, tools, unique_channel); listen_id = llListen(unique_channel, "", toucher, ""); } } listen(integer unique_channel, string name, key id, string message) { if (message == "Change Text") { llTextBox(llGetOwner(), " \nType your titler message here, and click \"Submit\" ....",unique_channel); } else if (message == "Anim On") { llSetText("This would be the text the user had either chosen, or default main text",<1.0,1.0,1.0>,1.0); state on; } else if (message == "Anim Off") { state default; } } } state on { state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION); } run_time_permissions(integer permissions) { if (permissions > 0) { llStartAnimation(anim); llSetText("Main text here...",<1.0,0.0,0.0>, 1.0); attached = TRUE; permissions = TRUE; } } attach(key attachedAgent) { if (attachedAgent != NULL_KEY) { attached = TRUE; if (!permissions) { llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION); } } else { attached = FALSE; llStopAnimation(anim); } } }
  4. I own a parcel on Linden land(premium home), and i was playing around with setting up media last night. I thought i has "stopped" it(it was on YouTube) when i had logged, but my neighbour said it was on all night. I have serched the setting for the past hour unable to locate the option to disable media in my parcel for everyone outside of it. Can anyone help? My friend suggested that it was him that should disable media from other parcels on his own viewer, but that doesn't seem right, why should he have to do that when i could just make it play in my area. Thanks for the help. :)
  5. Can we control the UI of viewers with LSL? Like opening/closing or showing/hiding menus?
  6. This is a nice script, but yeah, it fails to work on linksets... only for single prims. Thanks, though.
  7. Okay, thanks! I'll stop looking then.
  8. It works perfectly guy, thanks again... one more question, Are there PrimitiveParam calls for these: llSetSitText(""); llSetTouchText(""); llSetTextureAnim( FALSE , ALL_SIDES, 1, 1, 0, 0, 0.0 ); llParticleSystem([]); I couldn't find how to place those witihin llSetPrimitiveParams... so i left them apart, the script still works, but i'm like totally picky about this sort of thing and would like everything within llSetPrimitiveParams. The only place i was looking was here: http://wiki.secondlife.com/wiki/LlSetPrimitiveParams
  9. Thanks Void and Luke! I'll give that a try and work it into my script. :matte-motes-tongue:
  10. Could somone please tell me why this isn't working on any prim that i am not the creator of? Works fine on prims i create. touch_start(integer num_detected) { string creator; creator = llKey2Name(llGetCreator()); llSetObjectName(creator); } Sorry, i'm not a very good scripter.
  11. Ha! TY... yeah i managed to figure it out prlly like 2 seconds before u posted that. Thanks again for all the help Rolig, its working perfectly now! I put the 'boytype' anim as default cuz i think its gonna be mostly boys buying this arm attachemt. :matte-motes-wink-tongue:
  12. Nevermind i think i fixed it... i just put the anim = "boytype" in with the Typing AO on part so it plays that anim by default. :matte-motes-big-grin-wink:
  13. It's for an arm attachment. And its working good, there's just one minor problem... when i first attach it then press the 'Typing AO' option in the dialog to turn it on, i get a script error saying - could not find animation '' - until you actually select one of the anims then it works perfect. I'm guessing that's because when no anim is selected it's still trying to play something? I'm gonna play with is and see if i can figure it out.
  14. You freakin rule! TY Rolig, i really appreciate it and now i understand how to do this kinda stuff for next time! My friends, who are obviously better scripters than i, always tell me i overthink things too much, and apparently thats what i was doing here, too.
  15. Alright, i have no idea how to change my typing script so it can be selected via a dialog menu. Originally, i just had an object i made with a female type animation in it, and the other one had the male typ animation in it... and you could turn it on/off by touching it. Well now i would prefer to have all of that in one script and work via dialog. Probably super easy for any mediocre scripters out there, but i can't figure some things out. First, i'll show you how far i got and then will explain the parts i can't do. key toucher; list tools = ["Type AO","Male","Female"]; string msg = "\nPlease choose an option:"; integer anim = llGetInventoryName(INVENTORY_ANIMATION); //this is totally wrong integer power = FALSE; integer listen_id; integer unique_channel; integer create_unique_channel(key id) { return 0x80000000 | (integer)("0x" + (string) id); } default { state_entry() { unique_channel = create_unique_channel(llGetKey()); llListen(unique_channel, "", NULL_KEY, ""); } touch_start(integer total_number) { toucher = llDetectedKey(0); if (toucher == llGetOwner()) { llDialog(toucher, msg, tools, unique_channel); listen_id = llListen(unique_channel, "", toucher, ""); } } // listen(integer channel, string name, key id, string message) { if (message == "Type AO") { power = !power; llSetTimerEvent((float)power); if(power) llOwnerSay("Type AO On"); else llOwnerSay("Type AO Off"); } else if (message == "Male") { anim == "boytype"; // no idea how to do this part } else if (message == "Female") { anim = "girltype"; // ...or this part } } // timer() { if (llGetAgentInfo(owner) & AGENT_TYPING) { llStartAnimation("anim"); // also not sure about this part } else { llStopAnimation("anim"); } } } So it's pretty straight forward, i want 3 basic choices, Type AO turns the typer on and off, then the Male/Female selects the specific animation. As you can probably already notice there are parts that are totally wtong lol. I sorta just filled in wild guesses where i don't know what to do. First is the "integer anim = llGetInventoryName(INVENTORY_ANIMATION);" at the very top. I will have two animations in the object, one called girltype, and one called boytype. I'm not sure how to make it so when the user chooses "Male" on the dialog, it selects the boytype animation. Second is the message part "else if (message == "Male")" that i mentioned above. I don't know how to choose the specific animation if the user chooses the "Male" or "Female" option. The last part would be in the timer. For now i just put "anim" to start and stop the selected animation chosen. As you can see i really have no idea what i'm doing... i can figure certain things out on my own but this is a little too complicated for me. I just want to make my script a little more user friendly than what i had originally. Can anyone help me out and show me what to do? Many thanks.
×
×
  • Create New...