-
Posts
352 -
Joined
-
Last visited
Content Type
Forums
Blogs
Knowledge Base
Posts posted by Ron Khondji
-
-
This should do it.
integer i; for (i = 0; i < numPoses; ++i)
- 1
-
Oooh. Don't let Henri see the Canny issue.
(Hint: his is the Cool VL viewer.)- 1
-
Maybe it's a priority problem.
This is what the wiki has to say about it:
8. Priority
8-1: The default built-in animations are always available to your avatar in-world. They may have different priorities on each keyframed part, unlike uploaded animations which always have the same animation on the whole body. Unless you give a higher priority to your animations, your animations will be overriden by them in-world. Priorities range from 0 to 4, with 4 being the highest priority. See the default built-in animations page to make sure what kind of priority each animation has.
8-2: Priority for uploaded animations is only given for the whole avatar, and is set in the uploading window. However, unless you animate each individual part of the avatar in your animation, some parts may be overridden by default animations (breathing, walking, etc.)
8-3: A later playing animation is given priority over the former one when their priorities are the same.To see if the animation is playing, you can select 'Developer - Avatar - Animation info' to get a list of all animations (uuid's) playing on the avatar above its head. I believe the number behind the animation name or uuid is the priority.
-
-
The mobile viewer is in alpha. That means it's very long from being a finished product.
Wait until it's a relaese candidate before you judge it.
- 1
- 1
-
It still works in the Linden viewers. Don't know about the third party viewers.
- 1
-
-
A hud can only be used by it's owner, as it is only on that users screen and not on anybody elses.
If you give a copy of the hud to somebody else, than that somebody becomes its owner and can use it just fine.
Or maybe I'm missing something. -
I just tried this (not very sophisticated) script:
default { state_entry () { llSetTimerEvent (30.0); } timer () { list agents = llGetAgentList (AGENT_LIST_REGION, []); integer num = llGetListLength (agents); while (--num > -1) { key id = llList2Key (agents, num); integer info = llGetAgentInfo (id); string t; if (info & AGENT_AUTOMATED) t = "BOT."; else t = "AVATAR."; llOwnerSay (llKey2Name (id) + ": " + t); } } }
and it seems to work just fine.
Tested it in 'Boardroom' and 'Violet'.- 2
- 1
-
Quote
In local chat:
[00:29] [Second Life: You have been banned indefinitely]"Second Life" might be the name of the object that's doing the banning. Try clicking on it.
-
I think the OP is talking about the sandboxes at, and near by, http://maps.secondlife.com/secondlife/LeTigre Sandbox 1/189/128/23
- 1
-
There is a llReplaceSubString() function nowadays.
- 1
-
Instead of typecasting manually, it might be easier to use this function:
list CastList(list L) { integer i = llGetListLength(L); while(--i > -1) { string d = llStringTrim(llList2String(L, i), STRING_TRIM); if (llGetSubString(d, 0, 0) == "<") { if (llGetSubString(d, -1, -1) == ">") { list s = llParseString2List(d, [","], []); integer sl= llGetListLength(s); if (sl == 3) L = llListReplaceList(L, [(vector)d], i, i); else if(sl == 4) L = llListReplaceList(L, [(rotation)d], i, i); } } else { if (~llSubStringIndex(d, ".")) { if ((float)(d + "1") != 0.0) L = llListReplaceList(L, [(float)d], i, i); } else { if ((string)((integer)d) == d) L = llListReplaceList(L, [(integer)d], i, i); else { if ((key)d) L = llListReplaceList(L, [(key)d], i, i); } } } } return L; }
Use it like:
list tempCamSettings = CastList(llParseString2List(temp,["#"],[""]));//convert to list
and then llSetCameraParams(tempCamSettings); should work as intended.
- 1
-
No. You haven't.
What I meant was you have to do something like this:
list tempCamSettings = llParseString2List(temp,["#"],[""]);//convert to list list testcam2 = [ (integer)llList2String(tempCamSettings, 0), (integer)llList2String(tempCamSettings, 1), (integer)llList2String(tempCamSettings, 2), (float)llList2String(tempCamSettings, 3), (integer)llList2String(tempCamSettings, 4), (float)llList2String(tempCamSettings, 5), (integer)llList2String(tempCamSettings, 6), (float)llList2String(tempCamSettings, 7), (integer)llList2String(tempCamSettings, 8), (float)llList2String(tempCamSettings, 9), (integer)llList2String(tempCamSettings, 10), (vector)llList2String(tempCamSettings, 11), (integer)llList2String(tempCamSettings, 12), (float)llList2String(tempCamSettings, 13), (integer)llList2String(tempCamSettings, 14), (integer)llList2String(tempCamSettings, 15), (integer)llList2String(tempCamSettings, 16), (float)llList2String(tempCamSettings, 17), (integer)llList2String(tempCamSettings, 18), (float)llList2String(tempCamSettings, 19), (integer)llList2String(tempCamSettings, 20), (float)llList2String(tempCamSettings, 21), (integer)llList2String(tempCamSettings, 22), (integer)llList2String(tempCamSettings, 23) ]; llClearCameraParams(); llSetCameraParams(testcam2);
- 1
-
LinksetData are all strings.
'lParseString2List(temp,["#"],[""])' results in a list of strings. So you need to typecast those strings back to what llSetCameraParams() is expecting.
I think.
- 1
-
-
-
Get the specular date like this:
state_entry() { integer face = ALL_SIDES; // or whatever face you need the sspecular date for. list params = llGetLinkPrimitiveParams(LINK_THIS, [PRIM_SPECULAR, face]); string texture = llList2String(params, 0); vector repeats = llList2Vector(params, 1); vector offsets = llList2Vector(params, 2); float rotation_in_radians = llList2Float(params, 3); vector color = llList2Vector(params, 4); integer glossiness = llList2Integer(params, 5); integer environment = llList2Integer(params, 6); }
- 1
-
-
-
I hope the prims are not farther then 20 meters apart from eachother.
- 1
-
I just tried Sandry's test url from the jira with this script.
key HttpRequest (string HtmlMsg) { return llHTTPRequest ("https://www.sandry.co.uk/dreamhost_test.txt", [HTTP_METHOD, "POST"], ""); } default { state_entry() { llSay(0, "Hello, Avatar!"); } touch_start(integer total_number) { HttpRequest ("Hallo"); } http_response (key request_id, integer status, list metadata, string body) { if (request_id) { llOwnerSay ("Status: " + (string)status); llOwnerSay ("Metadata: " + llList2CSV (metadata)); llOwnerSay ("Body: " + body); } } }
This came back:
[08:22] Object: Status: 200
[08:22] Object: Metadata:
[08:22] Object: Body: Hi Dreamhost Tester! .Maybe the problem has resolved itself?
(Second Life Server 2022-11-04.576376)
-
The RC's got rolled back yesterday.
-
Use llGetPrimitiveParams to get the alpha value of the face. Then use that value when setting the new color.
Can no longer log into a Adult region on Mobile ?
in Mobile
Posted
The reason is here on Canny.