Commit Graph

208 Commits

Author SHA1 Message Date
Charles Krinke
e4fc55f71e Mantis#2352. Thank you kindly, Jonc for a patch that:
If prim is part of SOG, then ask the SOG to update the 
position, rather than asking the part itself.
Ghosted child prims should no longer result from llSetPos.
Not sure if this is the right approach for all cases ,
would appreciate feedback on the patch.
2008-10-08 01:49:58 +00:00
Charles Krinke
e87195d1bd Mantis#1906. Thank you kindly, Idb for a patch that:
Removed cache accesses to obtain sensed object/avatar 
name, it is already available.
2008-10-08 01:44:35 +00:00
Justin Clarke Casey
f085d53be2 * Apply http://opensimulator.org/mantis/view.php?id=2345
* Bring llSetLinkTexture into line with llSetLinkColor and lLSetLinkPrimitiveParams() implementations
* Thanks ralphos
2008-10-07 14:58:56 +00:00
Justin Clarke Casey
48d86fb23f * Apply http://opensimulator.org/mantis/view.php?id=1207
* Implmements llModifyLand() and a check for the "Allow others to terraform flag"
* Thanks tglion!
2008-10-07 14:49:12 +00:00
Dr Scofield
e5a50b6a3b From: chris yeoh <yeohc@au1.ibm.com>
The attached patch fixes mantis bug 2312 (llGetPos() returns incorrect
values for child prims where the root prim is rotated). Regression
tests still pass.

Incidentally AbsolutePosition which was used before looks a little
suspicious to me as its always going to return the wrong value if the
root prim is rotated. GetWorldPosition does take the rotation into
account, but AbsolutePosition is used in a lot of places.  Though i
don't understand why there is both GetWorldPosition as well as
AbsolutePosition so I've left the latter alone.

[i also cleaned up some indent problems, --- dr scofield]
2008-10-07 11:41:43 +00:00
Dr Scofield
7d525843d0 From: chris yeoh <yeohc@au1.ibm.com>
Attached is a patch for LLGround which was just plain broken and could
cause a runtime error. It now returns valid data with valid input (ie
the offset does not take the position off the edge of the sim), but a
runtime error will occur if invalid data is given.

On invalid data the LL servers return the ground height based on a
valid point closest to the effective position calculated using the
supplied offset. Is the OpenSim convention to replicate the LL servers
as closely as possible? If so I can submit an additional patch to
replicate the LL behaviour.
2008-10-07 11:33:41 +00:00
Charles Krinke
68021fa8ff Mantis#2342. Thank you kindly, Ralphos for a patch that solves:
llSetLinkApha is not fully implemented and has not been updated 
to use the recently added GetLinkParts and associated implementation 
pattern as per llSetLinkColor and llSetLinkPrimitiveParams.
2008-10-06 14:50:58 +00:00
Charles Krinke
e575ef7ad2 Revert r6697 patch as the build fails. 2008-10-06 00:58:43 +00:00
Charles Krinke
4f6cdc08d6 Mantis#1207. Thank you, TGlion for a patch that addresses:
Implementation of llModifyLand() and There is a bug on 
permission-check of land-terraforming: x an y-coordinates 
are interchanged on function-call ExternalChecksCanTerraformLand.
Correct: x is west, and y is north. 2) Missing check of 
"Other allow to terraform-flag" (Parcel.ParcelFlags.AllowTerraform)
2008-10-06 00:46:27 +00:00
Jeff Ames
aab6cdd8b0 Update svn properties, minor formatting cleanup. 2008-10-05 14:15:39 +00:00
Melanie Thielker
6bf521c7df Guard against negative scale set through LSL functions 2008-10-04 14:23:33 +00:00
Melanie Thielker
cffd73c59f Reintroduces the discovery mechanism to use llRequestSimulatorData("", 128)
Causes the dataserver event to return "OpenSim" when running on OpenSim.
Requires ThreatLevel to be "High" or above to function.
2008-10-03 06:15:23 +00:00
Charles Krinke
d5b3a66f52 Mantis#2307. Thank you kindly, Godfrey for a patch that solves:
In Second Life's implementation of llParseString2List(), all spacer 
strings which occur within the source string are included in the 
resulting list. In OpenSim's implementation, any spacers occurring 
at the beginning of the string are discarded; furthermore, if multiple 
spacers occur between non-spacer elements, or at the end of the source 
string, only the first spacer is added to the resulting list; 
the remainder are discarded.
2008-10-03 02:33:59 +00:00
Melanie Thielker
e30856a32f Mantis #2317
Thank you, fusspawn, for an implementation of osGetSimulatorVersion.
This patch removes the llRequestSimulatorData(..., 128) hack and
implements the functionality as an osFunction.
2008-10-03 01:30:22 +00:00
Homer Horwitz
b1c1de2fbe - Added SendScriptTeleportRequest to IClientView and classes implementing it.
- Implemented llMapDestination.
2008-10-01 21:30:48 +00:00
Jeff Ames
f6699892dc Update svn properties, minor formatting cleanup. 2008-09-30 05:26:57 +00:00
Charles Krinke
68ae63e546 Mantis#2300. Thank you kindly, Idb for a patch that solves:
A number of the deprecated functions had missing parameters 
causing compile errors. These included:
llSound, llMakeExplosion, llMakeFountain, llMakeSmoke,
llMakeFire, llPointAt, llXorBase64Strings, llSetPrimURL
2008-09-30 01:59:51 +00:00
Charles Krinke
307f26e80e Mantis#2299. Thank you kindly, Idb for a patch that:
OS/SL script conformance, implement llSoundPreload and 
llRemoteLoadScript to behave as in SL. In SL 
llSoundPreload appears to do nothing. In OS 
llRemoteLoadScript shouts an error when invoked 
"Deprecated. Please use llRemoteLoadScriptPin instead."
2008-09-29 20:24:59 +00:00
Dr Scofield
87ac46c1c5 From: rob smart (smartrob@uk.ibm.com)
minor fixes to osParseJSON.
2008-09-29 17:47:17 +00:00
Charles Krinke
6758ecc403 Implement the plumbing for llSetVehicleType from the LSL
subroutine down through the physics modules through PhysActor
and SceneObjectPart. No connection to the physics simulators.
2008-09-28 22:38:59 +00:00
Charles Krinke
ebbbd37605 Added the plumbing for llSetVehicleRotationParam
in the classes between the LSL implementation and the
underlying physics engines.
2008-09-28 21:53:56 +00:00
Charles Krinke
d68d631dc0 A little bit further with LLSetVehicleVectorParam. 2008-09-28 21:20:25 +00:00
Charles Krinke
3747862999 Plumb the connection though from llSetVehicleVectorParam
to the various physics engines. No connection to the 
underlying physics simulator yet, just plumbing through
the various classes.
2008-09-28 20:20:32 +00:00
Charles Krinke
9709d01358 Remove llSetVehicledoubleParam. It does not exist.
It was a mistake a year ago to add it in.
2008-09-28 19:31:58 +00:00
Charles Krinke
3397236c6c Plumb the connection through from llSetVehicleFloatParam
to the various physics engines. No connection to the 
underlying physics simulator yet, just plumbing through
the various classes.
2008-09-28 18:36:30 +00:00
Charles Krinke
6a863311f7 Mantis#2287. Thank you kindly, Idb for a patch that solves:
The current llGetLinkName returns an empty string if a prim 
with the given link number is not found in the link set. In 
SL an empty string is only returned if the prim name is actually 
blank, a NULL_KEY is returned instead with a couple of exceptions.
2008-09-28 01:12:57 +00:00
Melanie Thielker
415520cea6 Fix listeners in multi-region instances 2008-09-26 20:12:11 +00:00
Melanie Thielker
54ef88c12c Thank you, idb, for a patch that implements the stubs for llGetAgentLanguage() 2008-09-26 18:40:16 +00:00
Teravus Ovares
16b6738cda * Patch from JHurliman
* Updates to libomv r2243, 
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman. 
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00
Justin Clarke Casey
4b78aa50e6 * Apply http://opensimulator.org/mantis/view.php?id=2274
* Reapply homer's click action implementation, which accidentally got blatted
* Thanks tyre
2008-09-26 15:18:22 +00:00
Melanie Thielker
b65d2139c8 Bringing the OSSLPrim back. Prim.Rotation, etc, will now work again.
As a bonus, the OSSLPrim has now come to XEngine, too!
2008-09-26 03:04:36 +00:00
Melanie Thielker
c21a8b9969 Full API convergence. Api is back in LSL_Api.cs and OSSL_Api.cs.
The binaries are still different, but that is only a small step away now.
The OSSLPrim has been removed. This commit will breal all scripts
using Prim.Scale(), etc, syntax. It was not secure and will have to
be brought back in another form.
2008-09-26 02:51:00 +00:00
Charles Krinke
33add28b51 Mantis#2265. Thank you kindly, Idb for a patch that:
Implements the LSL function llGetAttached().
2008-09-26 01:49:06 +00:00
Homer Horwitz
91e0369f83 Implement LSL-function llSetClickAction. 2008-09-25 20:37:56 +00:00
Homer Horwitz
0e6237739a Implement LSL-function llGetRegionAgentCount. 2008-09-25 19:02:14 +00:00
Melanie Thielker
f11107821e Add an extension to allow registering multiple interfaces of a type with
Scene. Make the script engines check that the engine name in the
//Engine:language comment is a valid engine and treat it as a normal
comment if it's not.
//DotNetEngine: needs to be written as //ScriptEngine.DotNetEngine: now, since
that is it's real internal name. //XEngine: still works
2008-09-25 17:26:32 +00:00
Charles Krinke
339671afc6 Mantis#2017. Thank you kindly, Tyre, for a patch that solves:
Check the client dialog box (from top menu) WORLD / REGION ESTATE 
/ REGION tab. The client dialog box seems to have a hard limit of 
about 32 characters per line available for displaying the region 
version number. Our regions are sending a string which is greater 
than the limit, causing the client to wrap the text and look ugly.
2008-09-25 14:57:40 +00:00
Melanie Thielker
a3fcaef890 CONVERGENCE!!!!!!
The entire LSL API is now in the single, shared file
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api_Base.cs
This is for both engines. The OSSL function are still separate.
2008-09-25 06:04:47 +00:00
Melanie Thielker
f3c8963c86 Convergence is almost complete. This brings the diff between the API to < 10k
and makes it use a common set of types in both engine. Fixes the issues with
running both engines and HTTP requests / listens / timers etc..
Also fixes a couple of minor Scene issues and a CTB by nullref.
2008-09-25 05:13:44 +00:00
Charles Krinke
5edaddce6d Mantis#2123. Thank you kindly, Idb for a patch that solves:
Under both DotNetEngine and XEngine, if an agent's UUID 
is passed as the parameter to llGetObjectMass(), 
it throws an exception.
2008-09-25 03:58:03 +00:00
Melanie Thielker
fb7a29a5ef Rename lots of stuff in DNE to reduce source code differences in the
LSL implementation files. Rename lots of stuff in XEngine for the same
reason. Move methods between interfaces. Just refactor stuff.
2008-09-24 13:18:06 +00:00
Melanie Thielker
218902bedc Decouple AsyncCommands from XEngine and the script instance. Make
all methods needed outside the API ststic. Async command processing
is now wholly internal to the API. This sets the stage for the next
convergence step.
2008-09-24 02:58:05 +00:00
Melanie Thielker
44e566260c Mantis #2243
Thank you, tyre, for a patch that refactors LSL to use a unified set of
method signatures and type names, reorders methods and removes unused
and adds new method stubs.
2008-09-23 11:41:34 +00:00
Justin Clarke Casey
8e00e933a4 * Apply http://opensimulator.org/mantis/view.php?id=2234
* Exceptions can thrown by llGetOwnerKey() 
* Thanks idb
2008-09-22 20:09:06 +00:00
Jeff Ames
c8349e21c4 Update svn properties, minor formatting cleanup. 2008-09-21 02:41:22 +00:00
Homer Horwitz
f352d6ed9b - Consistency fix: Like llGetNumberOfNotecardLines, llGetNotecardLine returns NULL_KEY on error now
- Conformance fix: If the notecard can't be found, shout on DEBUG_CHANNEL as the docs state
- Bug fix: Don't let llGetNotecardLine throw an exception on freshly created notecards
2008-09-20 17:32:58 +00:00
Melanie Thielker
5a1be7835c XEngine: Fix llGetListEntryType to return the correct type for the LSL types.
Change serialization to omit types it can't deal with.
2008-09-20 16:24:36 +00:00
Melanie Thielker
5d3fe9f8cd Guard LLRezObject against NaN 2008-09-19 17:34:35 +00:00
Melanie Thielker
592f98c4aa Mantis #2217
Guard against NaN being returned from llRotBetween. Return a zero rotation
if the result is NaN.
2008-09-19 17:00:17 +00:00
Melanie Thielker
48c2ef7e12 Fix llParcelMedia queries. Correct types and add a missing ToString() (XEngine) 2008-09-18 20:23:18 +00:00