Difference between revisions of "Talk:LlTakeControls"

From Second Life Wiki
Jump to navigation Jump to search
(llTakeControls(1, TRUE, TRUE) ok? And blacklisted functions?)
 
(14 intermediate revisions by 7 users not shown)
Line 1: Line 1:
There must certainly be more CONTROL_<KEY> codes.
There must certainly be more CONTROL_<KEY> codes.
:There aren't! -- [[User:Strife Onizuka|Strife Onizuka]] 08:30, 3 May 2008 (PDT)
:There aren't! -- [[User:Strife Onizuka|Strife Onizuka]] 08:30, 3 May 2008 (PDT)
:: There are a few JIRA items raised related to this; I raised a pretty detailed one [https://jira.secondlife.com/browse/SVC-5244 here]. --[[User:Reynard_Baroque|<span style="background:red;">&nbsp;&nbsp;</span><span style="color:red"> <b>&yen;</b> </span><span style="background:red;">&nbsp;&nbsp;</span><span style="color:gold;background:navy;">&nbsp;<b>Reynard</b>&nbsp;</span>]] 01:32, 10 January 2011 (UTC)


== Shift States ==
== Shift States ==
Line 12: Line 13:


And is <tt><big>llTakeControls(1, TRUE, TRUE)</big></tt> acceptable, or is that not recommended? --[[User:Stickman Ingmann|Stickman]] 23:16, 20 June 2008 (PDT)
And is <tt><big>llTakeControls(1, TRUE, TRUE)</big></tt> acceptable, or is that not recommended? --[[User:Stickman Ingmann|Stickman]] 23:16, 20 June 2008 (PDT)
*Answering my own stupid question, "1" is 0x00000001, which is CONTROL_FWD. Only. --[[User:Stickman Ingmann|Stickman]] 23:31, 20 June 2008 (PDT)
:[[llPushObject]] is purported to be one of the blacklisted functions, I don't really know about any others. -- [[User:Strife Onizuka|Strife Onizuka]] 06:33, 21 June 2008 (PDT)
:[[llPushObject]] works just fine in "no outside script" areas.  It's ignored if target is not owner and "no pushing" is set on the parcel, but the script continues functioning just fine.  (I'm removing the comment about blacklisted functions until someone finds one). -- [[User:Jopsy Pendragon|Jopsy Pendragon]] 15 April 2010 (PDT)
==== Better examples? ====
As a newbie scripter I found the given example a bit inconclusive... Would it be possible to get an example that better illustrates the difference between level and edge, maybe something that would show how to tap a key without getting multiple events back as a for instance? :)
I don't know enough about scripting or control and llTakeControl to mention the things that can be done with it, but there must be some really good scripters out there who knows ^^  - [[User:Kessalta Blackburn|Kessalta Blackburn]] 05:23, 16 February 2011 (PST)
:There isn't a ways to not get multiple events. Generally speaking the user will want to do one of two things with this: They want to know when a key is pressed or how long it is being held down and in which combination. You use edge to detect when a key is pressed and level to keep track of which ones are being held down. What can be more simpler than that? -- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 15:19, 18 February 2011 (PST)
I think I was a bit unclear, I'm sorry... I know that you get multiple events whenever you hit a key... I meant, show an example of how to only react to one event? If that makes more sense?
I learn visually - and slowly :P - and I think I might not be the only one... It took me a while to figure out the one event per key stroke, and I figure it might benefit others if there were an example like that. I suppose I could make that myself, but given my rather green status, I thought it wiser to leave it to someone who know what they are doing... heh... -- [[User:Kessalta Blackburn|Kessalta Blackburn]] 05:39, 19 February 2011 (PST)
I see what your getting at and it's a good point. This (kinda) relates to one of my (wiki) projects, so maybe I can kill two birds with one stone but I can't promise a time frame. -- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 21:04, 21 February 2011 (PST)
== A note regarding accept/pass_on behavor. ==
SatguruS Resident's recent edit changes the description of FALSE/FALSE to state that the specified controls are disabled.<br/>
While this would be logical behavior, it is not the actual behavior; All ''unspecified'' controls are disabled instead.<br/>
A bug, no doubt, but to fix it now would break content, as this is a commonly used means of immobilizing a user. -- '''[[User:Faust_Vollmar|Faust]]'''<sup><small>([[User_talk:Faust_Vollmar|T]]|[[Special:Contributions/Faust_Vollmar|C]])</small></sup> 03:09, 10 March 2012 (PST)
:Then the documentation needs to be changed. -- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 11:57, 14 March 2012 (PDT)
== adding issues to deep notes ==
I see bugs added to deep notes are using the inject-2 method, but the format is confusing me, so if someone could add https://jira.secondlife.com/browse/SCR-97 that'd be nice <br/>-- '''[[User:Void_Singer|Void]]''' <sup><small>([[User_talk:Void_Singer|talk]]|[[Special:Contributions/Void_Singer|contribs]])</small></sup> 04:26, 29 March 2014 (PDT)
:Sure. The problem is that [[Template:Issues/SCR-97]] doesn't exist yet. After that it can be injected. There are three injection points. The reason for their being several is that they occur at different points in the Function template execution. 1) occurs before just about everything, it's used for templates that mess with the "mode". 2) occurs after "mode" has stabilized but before parameters are setup. 3) occurs after parameter setup but before other description fields are setup. In hind sight, Issues should really be injected in 3 because sometimes they use parameters. Since most don't and they aren't affected by "mode", you can inject them anywhere. -- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 11:16, 29 March 2014 (PDT)
ah ok, was having a dense moment, thanks<br/>-- '''[[User:Void_Singer|Void]]''' <sup><small>([[User_talk:Void_Singer|talk]]|[[Special:Contributions/Void_Singer|contribs]])</small></sup> 00:12, 30 March 2014 (PDT)
:Yeah I find it to be annoying. I wish we could have a Widget that would do it automagically. I wonder if I can coerce the Feed widget to do it for me...-- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 17:39, 30 March 2014 (PDT)
::Nope, just about all widgets are broken. -- '''[[User:Strife_Onizuka|Strife]]''' <sup><small>([[User talk:Strife_Onizuka|talk]]|[[Special:Contributions/Strife_Onizuka|contribs]])</small></sup> 18:22, 30 March 2014 (PDT)

Latest revision as of 18:22, 30 March 2014

There must certainly be more CONTROL_<KEY> codes.

There aren't! -- Strife Onizuka 08:30, 3 May 2008 (PDT)
There are a few JIRA items raised related to this; I raised a pretty detailed one here. --   ¥    Reynard  01:32, 10 January 2011 (UTC)

Shift States

OK then, given that those few are the only recognized key/button presses, what about shift state modifiers SHIFT/CTRL/ALT? yes, no, maybe?

Again, sorry, no. The only effect shift has is changing the ROT_(LEFT/RIGHT) to just (LEFT/RIGHT). -- Strife Onizuka 14:11, 3 May 2008 (PDT)

Does anyone have a list of the blacklisted functions?

And is llTakeControls(1, TRUE, TRUE) acceptable, or is that not recommended? --Stickman 23:16, 20 June 2008 (PDT)

  • Answering my own stupid question, "1" is 0x00000001, which is CONTROL_FWD. Only. --Stickman 23:31, 20 June 2008 (PDT)
llPushObject is purported to be one of the blacklisted functions, I don't really know about any others. -- Strife Onizuka 06:33, 21 June 2008 (PDT)


llPushObject works just fine in "no outside script" areas. It's ignored if target is not owner and "no pushing" is set on the parcel, but the script continues functioning just fine. (I'm removing the comment about blacklisted functions until someone finds one). -- Jopsy Pendragon 15 April 2010 (PDT)


Better examples?

As a newbie scripter I found the given example a bit inconclusive... Would it be possible to get an example that better illustrates the difference between level and edge, maybe something that would show how to tap a key without getting multiple events back as a for instance? :) I don't know enough about scripting or control and llTakeControl to mention the things that can be done with it, but there must be some really good scripters out there who knows ^^ - Kessalta Blackburn 05:23, 16 February 2011 (PST)

There isn't a ways to not get multiple events. Generally speaking the user will want to do one of two things with this: They want to know when a key is pressed or how long it is being held down and in which combination. You use edge to detect when a key is pressed and level to keep track of which ones are being held down. What can be more simpler than that? -- Strife (talk|contribs) 15:19, 18 February 2011 (PST)

I think I was a bit unclear, I'm sorry... I know that you get multiple events whenever you hit a key... I meant, show an example of how to only react to one event? If that makes more sense? I learn visually - and slowly :P - and I think I might not be the only one... It took me a while to figure out the one event per key stroke, and I figure it might benefit others if there were an example like that. I suppose I could make that myself, but given my rather green status, I thought it wiser to leave it to someone who know what they are doing... heh... -- Kessalta Blackburn 05:39, 19 February 2011 (PST)

I see what your getting at and it's a good point. This (kinda) relates to one of my (wiki) projects, so maybe I can kill two birds with one stone but I can't promise a time frame. -- Strife (talk|contribs) 21:04, 21 February 2011 (PST)

A note regarding accept/pass_on behavor.

SatguruS Resident's recent edit changes the description of FALSE/FALSE to state that the specified controls are disabled.
While this would be logical behavior, it is not the actual behavior; All unspecified controls are disabled instead.
A bug, no doubt, but to fix it now would break content, as this is a commonly used means of immobilizing a user. -- Faust(T|C) 03:09, 10 March 2012 (PST)

Then the documentation needs to be changed. -- Strife (talk|contribs) 11:57, 14 March 2012 (PDT)

adding issues to deep notes

I see bugs added to deep notes are using the inject-2 method, but the format is confusing me, so if someone could add https://jira.secondlife.com/browse/SCR-97 that'd be nice
-- Void (talk|contribs) 04:26, 29 March 2014 (PDT)

Sure. The problem is that Template:Issues/SCR-97 doesn't exist yet. After that it can be injected. There are three injection points. The reason for their being several is that they occur at different points in the Function template execution. 1) occurs before just about everything, it's used for templates that mess with the "mode". 2) occurs after "mode" has stabilized but before parameters are setup. 3) occurs after parameter setup but before other description fields are setup. In hind sight, Issues should really be injected in 3 because sometimes they use parameters. Since most don't and they aren't affected by "mode", you can inject them anywhere. -- Strife (talk|contribs) 11:16, 29 March 2014 (PDT)

ah ok, was having a dense moment, thanks
-- Void (talk|contribs) 00:12, 30 March 2014 (PDT)

Yeah I find it to be annoying. I wish we could have a Widget that would do it automagically. I wonder if I can coerce the Feed widget to do it for me...-- Strife (talk|contribs) 17:39, 30 March 2014 (PDT)
Nope, just about all widgets are broken. -- Strife (talk|contribs) 18:22, 30 March 2014 (PDT)