|
Espresso Saarinen
old geek
Join date: 22 Jan 2006
Posts: 93
|
07-01-2007 13:34
I pass the name of a LandMark which is in inventory to llRequestInventoryData(). In the dataserver() event, I get back the correct request key, but the data string is not what I expect in a SIM-local vector; it is "<-26611.869141, 5567.740234, 21.600000>" the 21 is about right, the rest is not what I expect. I have llOwnerSay() debugs all over the place to be sure I am really passing what I think I am passing. I can teleport to the LandMark by right click. FWIW, my intent is to use it to call llMapDestination(), having previously extracted the target SIM's name from the LandMark's name.
|
|
Simnelia Petrichor
Registered User
Join date: 10 Feb 2006
Posts: 35
|
07-02-2007 02:38
Is this a landmark in a different region from the one you're currently in? Because the vector you get back from llRequestInventoryData is the landmark's position relative to the corner of your current region.
|
|
Espresso Saarinen
old geek
Join date: 22 Jan 2006
Posts: 93
|
07-02-2007 08:54
Thanks, but adding llGetRegionCorner() gets me a global-relative vector, while I need a vector relative to the corner of the target region in order to pass it to llMapDestination(). I am tempted to string parse the region-relative vector out of the LandMark's name, but that would rely on the name not being edited. Hint: I am trying to script an object into which one dumps arbitrary landmarks and it allows you to teleport to one using llMapDestination().
|
|
Qie Niangao
Coin-operated
Join date: 24 May 2006
Posts: 7,138
|
07-02-2007 09:20
Seems like llGetRegionCorner() would be useful here (though I've never tried to use the landmark data returned by the dataserver).
|