Commit Graph

2911 Commits (f7104a66a596224dbf4daf6385f9e637d53550ca)

Author SHA1 Message Date
Melanie Thielker 4b6097756f Port the llParcelMediaQuery forward to the new Shared/ directory
Add a Dictionary for faster lookup of cached items.
2008-08-13 12:20:49 +00:00
Melanie Thielker 44adeb4ec8 Remove "static" from the AsyncCommand Manager to make it work properly
in multiple region per sim setups
2008-08-12 02:31:57 +00:00
Jeff Ames f894f5d87b Minor formatting cleanup. 2008-08-12 00:08:41 +00:00
Justin Clarke Casey b627c9c066 * minor: replace hard tabs with soft 4 space tabs in previous patch 2008-08-11 21:33:04 +00:00
Charles Krinke 2cee5abcac Mantis#1921. Thank you kindly, Leaf for a patch that:
llRezObject changed to llRezAtRoot. llRezObject implemented 
to call llRezAtRoot until I can figure out how to calculate 
a bounding box. Partial implementation of llPushObject 
(no angular impulse applied)
2008-08-11 21:27:31 +00:00
Jeff Ames 20e8e0ebae Update svn properties, minor formatting cleanup. 2008-08-10 00:44:33 +00:00
Charles Krinke 10822a139f Mantis#1521. Thank you kindly, Lmmz for a patch that:
Improves the implementation of the particle system.
2008-08-08 15:16:30 +00:00
Charles Krinke b72cc7df01 Mantis#1888. Thank you kindly, Tyre for a patch that:
This patch adds the missing parcel and region flag constants 
for LSL scripts. Tested with .Net and XEngine
2008-08-07 15:02:29 +00:00
Jeff Ames 0718aa0b7f Minor formatting cleanup. 2008-08-07 12:55:46 +00:00
Charles Krinke ab778c4114 Mantis#1859. Thank you kindly, Lmmz for a patch that:
Implements llForceMouselook().
2008-08-01 02:33:28 +00:00
Charles Krinke 1f7fde9436 Mantis#1868. Thank you kindly, HomerHorwitz for a patch that:
0001868: llXorBase64StringsCorrect leads to error if second string 
shorter than first which was an off by one error.
2008-07-31 15:11:44 +00:00
Melanie Thielker c441a03ea3 Thank you, HomerHorwitz, for a patch that implements llSetCameraParams/llClearCameraParams.
Fixes Mantis #1867
2008-07-31 12:31:31 +00:00
Melanie Thielker 244ad2e614 Thank you, HomerHorwitz, for a patch that add PERMISSION_CONTROL_CAMERA
Fixes Mantis #1861
2008-07-31 12:25:18 +00:00
Melanie Thielker af3e2c6e1c Thank you, sacha magne, for a patch that implements
llRequestSimulatorData("simname", DATA_SIM_RELEASE)
Fixes Mantis #1866
2008-07-31 10:51:30 +00:00
Mike Mazur 16cf5aa2b8 Allow the list hack from issue 1863 to compile, however its behavior is
different than in SL. See http://opensimulator.org/mantis/view.php?id=1863 for
details.
2008-07-31 07:11:49 +00:00
Mike Mazur 57ec7a26cd -make ZERO_VECTOR and ZERO_ROTATION static readonly properties so they can be
used in scripts
-cast from bool to LSL{Integer,Float,String} so functions such as `integer
isZero(integer x) { return (x == 0); }` work
-progress on issue 1863
2008-07-31 07:11:41 +00:00
Mike Mazur 56c4cc39ff Allow assignments in if/while/do-while control statements. Fix issue 1862. 2008-07-31 04:13:46 +00:00
Mike Mazur eef3864278 Fix issue 1860; exception thrown in the parser on if/if-else/for/while/do-while
statements with no body.
2008-07-31 01:27:33 +00:00
Mike Mazur 1c8f490573 More LSL_Types implicit/explicit cast changes. Fix issue 1854. 2008-07-31 00:29:19 +00:00
Melanie Thielker 3a2caa1f9a Thank you, HomerHorwitz, for a patch that
implements llSetLinkTexture. Heavily influenced by llSetLinkPrimitiveParams.
2008-07-30 22:37:42 +00:00
Mike Mazur f6fa4ada4e When casting strings to int, use double.Parse() as strings may be floats. With
this commit, issue 1822 should be fixed.
2008-07-28 07:46:53 +00:00
Mike Mazur d959c65b91 -implement LSLString -> Quaternion explicit cast
-sync Shared/LSL_Types.cs with Common/LSL_Types.cs
-get the test script in issue 1822 to compile
2008-07-28 02:36:26 +00:00
Mike Mazur 82fa53a486 -copy LSL_Types tests from Common/ to Shared/
-fix some whitespace/formatting
2008-07-28 02:36:18 +00:00
Melanie Thielker 40bb4edf8c Refresh LSLTypes.cs in Shared/ from the one in Common/, which was
more complete.
2008-07-28 01:33:21 +00:00
Melanie Thielker 9fca0aca64 Reinstate the configuration option on XEngine's use of the lexical
compiler. Changes the default in OpenSim.ini.example to "true" to
allow for a broader user base for testing.
2008-07-28 00:40:35 +00:00
Mike Mazur 9e58ce60c0 Use new LSL compiler by default in DotNetEngine and XEngine. Fix issues 1651, 1339. 2008-07-27 23:53:18 +00:00
Melanie Thielker 6c3db99a27 Addresses Mantis #1688
Changes erroneous return value of llGetLinkname() to "" for nonexistent
prims. Corrects an issue where the root prim of a linked set, upon
delink, retains the part number 1.
2008-07-27 19:32:43 +00:00
Charles Krinke e4ef774875 Mantis#1831.Thank you kindly, Francis for a patch that addresses:
Not all combinations of list order equally likely with llListRandomize()
2008-07-27 16:21:51 +00:00
Mike Mazur e17520621c Log to console if C# line/column lookup fails. 2008-07-27 10:41:44 +00:00
Mike Mazur 11a3fbf4aa Conversion from double to LSLInteger needs to be explicit. Fix issue 1826. 2008-07-27 07:09:33 +00:00
Mike Mazur 6267db0c4c Implement LSLFloat {+,-,*,/} LSLFloat operations. Fix issues 1532, 1701, 1824 &
1832.
2008-07-27 05:42:47 +00:00
lbsa71 8e869b2fff * Changed a number of field names to ccc (public members shouldn't be called m_) 2008-07-26 21:22:15 +00:00
Mike Mazur 19ad7db5e1 Add casts from integer to float. Fix issue 1822. 2008-07-25 07:50:31 +00:00
Mike Mazur e60cf0e67d -add test for newly introduced cast operators (issue 1818)
-fix formatting
-remove CompilerTest test since it seems to fail randomly
2008-07-25 04:47:11 +00:00
Melanie Thielker ac9a221993 Add mingchen's fix for string->float cast to Shared/ 2008-07-25 03:47:55 +00:00
Dahlia Trimble c1e239dedc llApplyImpulse now accepts any non-zero integer as not FALSE 2008-07-25 02:06:40 +00:00
Jeff Ames a4ad6a67b7 Update svn properties. Minor formatting cleanup. 2008-07-24 15:20:47 +00:00
Dahlia Trimble f74a9bcdc7 Implements llSetForce() and llGetForce(). These are experimental and the units may not match the Linden implementation. 2008-07-24 07:45:58 +00:00
Mike Mazur bb777a9c3c Replace the try/catch with a null check. 2008-07-24 05:23:42 +00:00
Mike Mazur 117cc09edc Replace implicit casts from LSLFloat to int and uint which were removed in
r5487.

Also put the unit tests back for Bamboo to execute them, let's see how this
goes.
2008-07-24 05:23:38 +00:00
Sean Dague cf317f5c33 refactor TaskInventoryItem Mask -> Permissions to be consistant with how things
are stored in the db.
2008-07-23 22:14:29 +00:00
Melanie Thielker db06e628de Attempt to fix Mantis #1804
Fetches the correct link part to chenge.
Please provide feedback, since I was not able to test all variants of this huge function.
2008-07-23 18:37:43 +00:00
Melanie Thielker f079af87dc Fix Mantis #1759
Corrects reported agent positions.
2008-07-23 18:08:16 +00:00
Sean Dague 090159defc refactored LandData to use properties, and cleaned up the naming on
the properties a bit to be more consistant with other objects (having things
like .Name .Description, etc).
2008-07-23 15:50:32 +00:00
Jeff Ames 80d8e2889e Update svn properties. Formatting cleanup. Remove a compiler warning. 2008-07-23 13:24:25 +00:00
Mike Mazur 003487631d Fix issue 1760. If the inventory item is not found, llSay() and throw an exception. 2008-07-23 08:03:32 +00:00
Mike Mazur f9e2f41d7c Enable LSL <-> C# source location mapping when reporing compiler errors to the user in-world. This method is not yet perfect but is an improvement in accuracy over the existing method. 2008-07-23 06:53:38 +00:00
Mike Mazur ba17b0df27 First version of position mapping between LSL <-> C# implemented. 2008-07-23 02:51:45 +00:00
Charles Krinke cda3206633 Mantis#1801. Thank you kindly, Junta_Kohime for a patch that:
I found a problem trying to get s value directly from a quaternion q.
Compiling a script which directly access to q.s value, caused the 
following error:
CS0103: 'The . symbol cannot be used in LSL except in float values 
or vector components'. Detected around: q.s
I did a small change to allow alphabetic letter "s" to be interpretated 
as valid identifier. This solves the problem.
2008-07-21 13:44:56 +00:00
Dahlia Trimble ce90e2ecce some optimizations in quaternion normalization in llRot2Fwd, llRot2Left, and llRot2Up. llAxes2Rot now uses these functions for sign error correction instead of vector*quat products. 2008-07-21 09:36:22 +00:00
Dahlia Trimble 08f3d212ce does some verification of the quaternion returned by llAxes2Rot and modifies the sign of the s term if a discrepency is found. This helps llAxes2Rot more closely match the Linden implementation. 2008-07-21 05:34:31 +00:00
Melanie Thielker 8ae7dc628b Make the max sizes of physical and nonphysical prims configurable in OpenSim.ini
Defaulted to 65536 and 10, respectively
2008-07-20 15:19:26 +00:00
Charles Krinke 9ff9279a7c Mantis#1785. Thank you kindly, Junta_Kohime for a patch that"
llAxes2Rot now implemented. Important note: quaternion <x,y,z,s> 
is equal to <-x,-y,-z,-s>. The result may be different from LSL 
output, but it is correct. A problem of rounding caused an error 
of square rooting of zero as negative number, corrected by squaring 
again. Function tested 360° along 3 axes. Vector fwd, left and up 
have to be normalized.
2008-07-19 14:45:10 +00:00
Melanie Thielker bcf74416a1 Fix prim link numbers (Mantis #1781)
Implements additional unlink modes (unlink root prim from link set, some
multi-set operations). Linking (single and mutiple) fully implemented.
Consistent numbering of links while in world. Link/delink with predictable
link numbering. Correct link numbers in LSL.
Not all multi-set ops implemented. Link numbers still change when taken and
re-rezzed.
2008-07-19 04:05:34 +00:00
Charles Krinke c0e389cfff Mantis#1778. Thank you kindly, Junta_Kohime for a patch that:
llRot2Left and llRot2Up functions modified, using fast algebric 
calculations instead of vectors and quaternions products. 
The accuracy is the same. Normalization is now implemented.
2008-07-18 19:09:51 +00:00
Justin Clarke Casey 03bd6c91a9 * Fix http://opensimulator.org/mantis/view.php?id=1761
* Now llGetLinkNumber() returns 0 if the prim is not linked, instead of 1
2008-07-18 11:51:27 +00:00
Mike Mazur 8b613e677f Implement cast to LSL_Types.LSLInteger from double. Fix issue 1770. 2008-07-18 07:52:44 +00:00
Mike Mazur 0b92ff4fde Treat LSL_Types as special cases in llList2Integer and llList2Float. This could be implemented many other places, but let's do that on a case-by-case basis. 2008-07-18 02:05:20 +00:00
Charles Krinke bc24c0e5d7 Mantis#1768. Thank you kindly, Junta_Kohime for a patch that:
llRot2Fwd function modified, using fast algebric calculations 
instead of vectors and quaternions products. The accuracy is 
the same. Normalization is now implemented.
2008-07-18 01:20:06 +00:00
Charles Krinke 26fd0595d7 Mantis#1598. Thank you kindly, Matth for a patch that addresses:
The previous implementation of llEuler2Rot was not mathematically 
incorrect, but it was an awkward way of posing the problem that 
led to a few degenerate cases which were not handled correctly - 
for example, PI rotations around X and Z axes were wrong. I put 
some comments in the source about how I arrived at the current 
implementation, which I think is easier to read, and gives 
results that match SL.
2008-07-17 19:11:56 +00:00
Charles Krinke 0106f96716 Mantis#1755. Thank you kindly, Matth for a patch that solves:
When using math operators +,-,*,/ in an LSL script with an LSLFloat 
and an integer literal the wrong result is returned. This patch 
adds operators to the LSLFloat type to handle this case.
2008-07-16 14:30:22 +00:00
Dr Scofield 1e39bfb036 squashing warnings critters 2008-07-16 09:42:14 +00:00
Charles Krinke 620f7926f3 Mantis#1753. Thank you kindly, Kinoc for a patch that:
Brings Yield Prolog up to date with sourceforge version 0.9.10
Patched applies to both DotNet and XEngine.
2008-07-16 01:00:40 +00:00
Charles Krinke b100b841b3 Mantis#1739. Thank you kindly, Grumly57 for an additional patch that:
Changed code to include Melanie's advice about X-SecondLife-Region, 
then put the exact same content format as a llHTTPRequest issued by 
other grids.
2008-07-14 17:47:12 +00:00
Charles Krinke 00791594ad Mantis#1739. Thank you kindly, Grumly57 for a patch that:
Implements X-SecondLife-* HTTP Headers for llHTTPRequest
2008-07-14 13:51:54 +00:00
Melanie Thielker 07bd749ac5 Patch #9150
Patch 7 of the region patches. Finish off the region parts of the estate dialog. Full user functionality. Terrain textures, heights, water, avatar counts, prim bonus, debug settings and region toggles can now be set from the dialog on a per-region basis. Estate stuff defaults to sane values where there are no defaults, to estate_settings.xml otherwise. Sun still b0rked :(
2008-07-14 01:39:36 +00:00
Melanie Thielker e712678689 Patch #9147
Patch #4 of the region settings series. Partial functionality of the new
storage system. More patches to follow.
2008-07-14 01:27:47 +00:00
Charles Krinke 476e08286e Mantis#1728. Thank you kindly, Mikem for a patch that solves:
The compiler was missing grammar rules for += etc. operators on 
vector.member variables, which the attached patch implements.
2008-07-14 01:07:21 +00:00
Charles Krinke 132b95ec95 Mantis#1714. Thank you kindly, Krtaylor for a patch that:
Solves llGetListLength fails scripts when list is not initialized.
2008-07-12 17:11:43 +00:00
Melanie Thielker d85774c101 Patch #9142 (No mantis)
Add a config option to OpenSim.ini to select between script compilers
in the XEngine without recompile.
Set UseNewCompiler=true in OpenSim.ini and try it out.
Creates the ICodeConverter interface and adapts the new compiler to it.
2008-07-12 01:34:36 +00:00
Melanie Thielker 746c6fb1a2 Patch #9141 (Mantis #1655)
Untangles llDie handling in XEngine, which resulted in a thread being
aborted while executing inside of Scene.
2008-07-12 00:06:45 +00:00
Melanie Thielker 53461fad2c Patch #9140 (Mantis #1683)
Add LifetimeService overrides to all MarshalByRef derived classes
to prevent the remoting interfaces from expiring.
2008-07-11 17:52:39 +00:00
Johan Berntsson 130d8047a2 Thanks Mike for another LSL compiler patch which fixes a bug where 'vector v=<0, 0, -0.5>' caused a syntax error, and implements multiple assignments in one line (x = y = 3;) 2008-07-11 08:33:53 +00:00
Johan Berntsson d41c1f40a8 Patch from Mike: errors from the LSL/C# compilers are now reported to the user in-world 2008-07-10 05:40:45 +00:00
Charles Krinke 38da8960e9 Mantis#1707. Thank you, Melanie for a patch that:
This patch limits the maximum size of prims that can be created using libsl bots 
or modified clients to 65536mper side. It also limits LSL functions to that size.
If a prim is already physical, the enforced constraint is 10m.
A prim that is larger than 10m cannot be turned physical, either via script or UI.
Linksets are handled correctly, so scaling of physical linksets is constrained by 
the size of it's largest component prim. Also, turning linksets physical is based 
on the size of it's largest ptim.
2008-07-10 03:13:29 +00:00
Charles Krinke c9a7bf7e58 Mantis#1673. Thank you kindly, Matth for a patch that:
LSLInteger + literal integer is not an LSLInteger.
The included patch fixes the issue: LSLInteger + literal 
integer is not an LSLInteger (also fixed for -,*,/)
2008-07-10 00:40:38 +00:00
Charles Krinke 9f68bcd80b Mantis#1700. Thank you, Melanie for a patch that:
Lets osSetParcelMediaTime honor the AllowOSComamnds setting
2008-07-09 14:32:21 +00:00
MW 58ce018625 for testing purposes only:
added void osSetParcelMediaTime(double time) command to script engines. 
which sets the position of the media that is playing. Time is in seconds.
Doesn't do any security checking (should be checking that the object/script is owned by the parcel owner). So could be abused, if it is then we should remove it, or add the security.
Only tested in dotnet scripting engine, but should work in XEngine too.
2008-07-09 12:02:01 +00:00
Johan Berntsson 5609292101 Patch from Mike which removes a lexer warning in the LSL compiler. 2008-07-09 07:37:42 +00:00
Charles Krinke 71666a894a Mantis#1691. Applied Melanie's modification of
Phrearch's iiGetCameraPos() patch, but not the original
yet. Thank you Phrearch and Melanie.
2008-07-08 15:05:23 +00:00
Johan Berntsson a73e3b4e3f another patch from Mike: the llscript compiler is now available in XEngine as well. Thanks Mike 2008-07-08 03:02:11 +00:00
Sean Dague 867d72c956 change SitTarget calls from functions to properties 2008-07-07 20:12:14 +00:00
Charles Krinke dfd5e675c0 Mantis#1678. Thank you kindly, Vytek for a patch that:
Changes ...TimeOfDay.Milliseconds to ...TimeOfDay.TotalMilliseconds
for llGetTimeOfDay() in both LSL_Api.cs and LSL_BuiltIn_Commands.cs
2008-07-06 18:39:37 +00:00
Jeff Ames d470d30c09 Copyright notices and formatting cleanup. 2008-07-06 14:02:22 +00:00
Charles Krinke f6375fceb4 Mantis#1674. Thank you kindly, Matth for a patch that:
This patch fixes an error in llSetPrimitiveParams() that 
prevents correctly setting the type of the prim to SCULPT_TYPE.
2008-07-06 03:47:21 +00:00
Charles Krinke ce5122ebf3 Mantis#1659. Thank you, Melanie for a patch that:
In LSL, the state command should have an immediate effect. 
The OpenSim script engine seems to wait until the function 
ends to process the state transition.
2008-07-04 00:59:38 +00:00
Charles Krinke cf87a9c5fe Mantis#1660. Thank you, kindly, Melanie for a patch that:
Attached patch changes TRUE and FALSE to be LSLIntegers.
2008-07-03 23:06:38 +00:00
Charles Krinke b1ab680a66 Mantis#1658. Thank you, Melanie for a patch that:
Adds IEmailModule and a module skelaton
2008-07-03 20:58:29 +00:00
Charles Krinke 103093cf11 Mantis#1654. Thank you kindly, Matth for a patch that:
Updates llGetPrimitiveParams() and associated files.
2008-07-03 15:34:05 +00:00
Charles Krinke e3a583f4b4 Mantis#1653. Thank you kindly, Vytek for a patch that:
Implements llGetTimeOfDay().
2008-07-03 14:25:43 +00:00
Charles Krinke c1456936a6 Mantis#1652. Thank you, Melanie for a patch that:
Applies the patch to LSL_Api.cs
2008-07-03 00:40:02 +00:00
Sean Dague 2c113c00cf property encapsulation for SOP 2008-07-02 20:31:17 +00:00
Charles Krinke 7580fa5c0a Mantis#1648. Thank you, Melanie for a patch that:
Fix a script Xengine deadlock/hang if llResetScript is used in changed()
2008-07-02 13:31:39 +00:00
Charles Krinke e4d68a8b64 Mantis#1643. Thank you Melanie for a patch that:
In the new runtime, there is a flag to diable all os* comamnds. 
The implementation of osGetScriptEngineName ignored it. 
This patch fixes this.
2008-07-01 21:57:36 +00:00
Dr Scofield 5e63206018 From: kurt taylor (krtaylor)
Another new OSSL function for returning the name of the script engine
currently running, osGetScriptEngineName, added to both DotNet and XEngine
OSSL API.
2008-07-01 07:16:02 +00:00
Dr Scofield 313f7f60fd properly explaining each #pragma warning disable
massaging OSHttpRequestPump to not abort on exceptions...
2008-06-30 11:57:47 +00:00
MW 037b31f9db patch from mantis #1632, thanks Melanie 2008-06-29 12:33:45 +00:00
Charles Krinke 7a255d4404 Comment out StringTest until we use it somewhere. 2008-06-28 17:01:26 +00:00
Charles Krinke 9a0ef22ed9 Mantis#1616. Applied Melanie's patch. This may or may
not break trunk.
2008-06-28 16:08:12 +00:00
Dr Scofield 55a4cf33a3 From: Kurt Taylor <krtaylor@us.ibm.com>
Patch to fix the passed parms and properly show llTakeCamera and
llReleaseCamera as deprecated. Patch for both XEngine and DotNetEngine.
2008-06-28 07:30:49 +00:00
Dr Scofield 748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Justin Clarke Casey 9bf67201c3 * Remove responsibilty for signalling scene object change from SceneObjectPart.SendFullUpdate()
* This means that we will no longer pointlessly repersist all the prims in the scene when OpenSim first starts up
* This also means that force-update on the console will not trigger repersistence.
* Also, in other places persistence is no longer done where it wasn't actually necessary
* I think I changed the code for all instances correctly, but it's not possible that I missed some and some things which did persist properly have stopped
* Please patch or mantis if this is the case
2008-06-27 16:36:19 +00:00
Charles Krinke 176efe3f06 Mantis#1610. Thank you, Melanie for a patch that:
Implements the beginning of llInventoryDrop. Doesn't cover 
the actual dropping yet, just the permissions for it.
2008-06-26 23:37:21 +00:00
Charles Krinke cf00df106d Mantis#1602. Thank you, Kinoc for a patch to:
Patch to activate YieldProlog on Xengine.
Only adds YieldProlog to assembly if required.
2008-06-26 13:42:18 +00:00
Charles Krinke 1cd6b71b60 Mantis#1594. Thank you, Melanie for a patch that:
Fixes:
- Wearable icon and name sreset to default on copy/paste
- Cache is not updated when renaming/moving folders
- Partial refactor to make inventory less dependen on AssetBase having a "Name" field
- Add llGiveInventoryList() function
2008-06-26 02:46:29 +00:00
Jeff Ames a2b1a1787d Minor formatting cleanup. 2008-06-25 14:30:28 +00:00
Jeff Ames 52a18954bb Update svn properties. Add copyright notices. 2008-06-25 13:19:42 +00:00
lbsa71 903dbcadd0 * Deleted some genned files 2008-06-25 07:25:54 +00:00
Charles Krinke c7edabd2d3 Mantis#1590. Thank you kindly, Melanie for a patch that:
Makes items appear in the item type folder, rather than in the root
2008-06-25 01:24:00 +00:00
Charles Krinke f6bf4c39be Mantis#1587. Thank you kindly, Melanie for a patch that:
Add permissions magling to llGiveInventoryItem, 
correct some corner case functionality
2008-06-24 23:55:33 +00:00
lbsa71 6b7930104b * Applied patch from Melanie, mantis issue #1581 - "Refactor LSL language, api and compiler out of XEngine"
"First stage in a major Script Engine refactor, that will result in the LSL implementaions ebing reconverged. Not there yet, but one major part is done."
Thank you, Melanie!
2008-06-24 21:09:49 +00:00