Commit Graph

337 Commits (c25a0ea7923aa390d30b8eebdbca4e599edf9b0d)

Author SHA1 Message Date
Melanie Thielker c9b5641c49 Plumb the data path for all those eye candy values. Saves texture
animation, target omega, looped sound, script access pin, allowed
drop state and sale data. Loads it, too. Not all tested.
Code: No Nuts. Data: Cannot Guarantee Nut Free.
2008-08-24 05:25:26 +00:00
Melanie Thielker 63b6ab467a Implements 80% of object buy (prim vendor). You can't buy the object yet,
and the for sale setting doesn't survive a sim restart, but this is most
of the plumbing.
2008-08-24 00:51:21 +00:00
Jeff Ames 6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Jeff Ames 531f6c01eb Update svn properties, minor formatting cleanup. 2008-08-17 23:07:14 +00:00
Melanie Thielker fe1d78bb78 Add some locking on m_undo in SceneObjectPart 2008-08-17 19:17:44 +00:00
Teravus Ovares 910f9d10d6 * half of the attachmentpoint skull fix
* There's still a full object update coming when you release the attachment after modifying it that's killing it sometimes.
2008-08-17 03:09:47 +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 e8293801c5 Mantis#1901. Thank you kindly, Nlin for a patch that:
More sitting fixes: Inconsistent sitting position on 
rezzed prims that have no sit target set.
2008-08-07 15:15:57 +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
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
Dahlia Trimble c512120389 Attempt to update viewer for some physics status changes in SOP 2008-07-25 20:45:06 +00:00
Justin Clarke Casey d954f46a0a * Stop the HasGroupChanged flag being reverted for newly restored prims which need to be persisted to the db
* This should stop the problem where linked prims loaded via an archive did not survive server restart
* It may address mantis 1819 though the symptoms don't look consistent
2008-07-25 17:48:58 +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
Sean Dague c38b811f5d catch a null case in the convenience RegionID property 2008-07-23 22:14:35 +00:00
Jeff Ames 80d8e2889e Update svn properties. Formatting cleanup. Remove a compiler warning. 2008-07-23 13:24:25 +00:00
Melanie Thielker f112cebde2 Refactor the packet scheduling out of ClientView. Add intelligent
resending, timeouts, packet discarding. Add notification event for
packet discarding. Add priority scheduling for packet queues.
Add outgoing duplicate detection facility. Correct packet sequencing.
Make provisions for automatic server side throttle adjustments (comes
in next installment)
2008-07-22 17:58:42 +00:00
MW fb096dfbd5 added experimental packet tracker (LLPacketTracker.cs), which can be told to track a packet and if it hasn't been acked within a set time, trigger a IClientAPI event, that the application/scene can handle. Currently only terrain packet tracking is finished, Tracking for initial Prim packets (first full update for a prim) is being worked on. Future improvements would be to make it a more generic packet tracker with callback delegates instead of events.
Add a test event handler (which would fire after a minute if a terrain packet hadn't been acked) to scene to handle the OnUnackedTerrain event, which currently just resends the terrain patch.
The idea of this packet tracking is for the region level application to be able to know if the client stack gave up on sending a packet.
2008-07-21 15:13:34 +00:00
lbsa71 9dbb6f28bc * eliminated some warnings and added some const and readonlies
* refactored some member names for readability and ccc (code convention conformance)
* took away two refs from Rest.Inventory since
   * System.IO is part of System
   * System.Xml.Serialization is part of System.Xml
2008-07-21 10:02:55 +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
Sean Dague 44d0b7c724 make ParentUUID be a cached value, but allow setting it for
short term storage (needed to rebuild SOGs)
2008-07-16 21:27:57 +00:00
Sean Dague 194ffb4d88 made SOP have a blank setter for 2 convenience properties.
Got RegionStore mapping to the point that nhibernate would start, though
definitely not complete
2008-07-16 21:27:52 +00:00
Sean Dague 58a0d0bb32 be a little more discriminating on firing ShapeChanged script events
so that we don't get them on every object construction.
2008-07-16 18:29:03 +00:00
Sean Dague b5efb49d74 added new ParentUUID property to map out from SOP.
Updated some nhibernate parts, started in on migration.
2008-07-15 18:57:18 +00:00
Sean Dague edbf997e29 added RegionID get property 2008-07-14 21:39:30 +00:00
Justin Clarke Casey 23c4a409b7 minor: method documentation 2008-07-12 21:43:35 +00:00
Justin Clarke Casey 000d5e8b93 * minor: just some null guards and name changes to make it clearer that prim count is actually a prim local id dispenser 2008-07-12 21:03:12 +00:00
Sean Dague 867d72c956 change SitTarget calls from functions to properties 2008-07-07 20:12:14 +00:00
Jeff Ames d470d30c09 Copyright notices and formatting cleanup. 2008-07-06 14:02:22 +00:00
Sean Dague f0f1e00ec3 add a couple of LL conversion properties to SOP. I'll wait to clean
up the sit target usage until the sit target fix patch goes in, but it should
be cleaned.
Get prims table mappings to the point where nhibernate likes them enough
to start.
Remove field from asset mapping so it will start
2008-07-03 18:25:18 +00:00
Sean Dague 2c113c00cf property encapsulation for SOP 2008-07-02 20:31:17 +00:00
Sean Dague f162f4544c merge rotational and angular velocity 2008-07-01 21:31:02 +00:00
Teravus Ovares 7f847166a9 * Syncs the current revision XML Schema(xsd) to the XML Schema of revision 5251.
* This should resolve creating content, taking it, and being able to rez it again.
2008-06-29 02:04:44 +00:00
Sean Dague 30592156c8 tart the property wrapping in SOP. This will be a long process
will do more next week.
2008-06-27 23:22:14 +00:00
Dr Scofield 748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Dr Scofield 3d26e6ede0 move along, nothing to see here. just a couple of lazy variables. 2008-06-27 19:57:06 +00:00
Sean Dague 333b741e30 run NArrange on SOP to stack together the attributes,
properties, private methods, public methods, etc.
2008-06-27 19:21:15 +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
Justin Clarke Casey 6175021300 * refactor: Remove group changed responsibilty from ScheduleGroupForTerseUpdate 2008-06-27 15:04:35 +00:00
Justin Clarke Casey c9b41bdc4e * Add extra backup parameter to InnerScene.AddRestoredSceneObject() 2008-06-27 14:15:14 +00:00
Charles Krinke 3697e0898c Mantis#1612. Thank you, kindly, Matth for a patch that:
Adds the beginnints of llRemoteLoadScriptPin() and 
llSetRemoteScriptAccessPin().
2008-06-27 02:22:33 +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
Justin Clarke Casey 33d32355a1 * refactor: Remove largely duplicate code from SceneXmlLoader.CreatePrimFromXml2() 2008-06-17 17:23:00 +00:00
Jeff Ames 5910a49da6 Update svn properties. Formatting cleanup. 2008-06-10 08:35:46 +00:00
Teravus Ovares 8a93358405 * This completes ObjectDuplicateOnRay.
* In English, that means that Copy Selection works now, including Copy Centers and Copy Rotates.
2008-06-10 00:18:00 +00:00
Teravus Ovares 6ecb7c05b3 * Fixed it so you can do a lot more llDetected* methods in many additional situations and have it work.
* script Collision reporting works now in DotNetEngine
2008-06-08 22:53:52 +00:00
Teravus Ovares e9a444917a Fixes scale property with regards to the physics engine. 2008-06-06 08:03:12 +00:00
Teravus Ovares e12baa5eb3 * This sends collision events to the script engine.
* Unfortunately, there's some kludges with the Async manager and the llDetected functions that I have yet to decipher...  so llDetected functions don't work with collision events at the moment....
2008-06-05 13:24:59 +00:00
Jeff Ames 4ec4e16c80 Formatting cleanup, minor refactoring, svn properties. 2008-06-04 09:59:27 +00:00
Teravus Ovares 83bd85ce7f * Fix string literal with URL + LLcommand();
* Added 'detected around: value' when a x.Y detect occurs to help debug.
* Fixed object text is too long to store to the database (wikilith)
2008-05-29 16:21:41 +00:00
Charles Krinke 06147d0492 Mantis#1406. Thank you kindly, Xantor for a patch that:
llLoopSound sends out one packet to clients in view, so it doesn't work anymore 
when clients enter later on, or the prim is modified in any way.
Solution: Stored sound data on prim, send full update instead.
llStartSound and llLoopSound now accept both LLUUIDs to a sound as well as object 
inventory sound names. llStopSound clears prim data and sends full update.
2008-05-28 14:03:08 +00:00
Jeff Ames 5752c1f5c2 Formatting cleanup. 2008-05-28 03:44:49 +00:00
Charles Krinke 82e3698f59 Thank you very much, ChrisIndigo for a patch that:
If a script updates an object to the same position or rotation offset, 
the object triggers an update and storage of the object. This become 
more prevalent in sensor and timer events which may be firing frequently.
2008-05-28 02:10:16 +00:00
Justin Clarke Casey 5c8a93c426 * Extract and boil down necessary texture UUIDs for an archive of the scene prims
* no user functionality yet
2008-05-26 01:50:40 +00:00
Teravus Ovares c20f7d6171 * A hacky Top Scripts display. It isn't accurate as far as ms accounting, however you can use it to help find out what scripts are causing your simulator to cry.
* Access it from the Estate tools/Debug tab.
2008-05-25 20:50:45 +00:00
Teravus Ovares 29092d3999 * phantom sculpties don't request the sculpt texture anymore. 2008-05-25 04:15:32 +00:00
Teravus Ovares 5af108a029 * This update causes the backup process to run in a separate thread.
* Concurrency issues are resolved because each object makes a memory-only copy of itself and backs up the copy.
* Because of the way this is done, the latest at the time of the backup gets backed up (no functionality change)
* You can move *thousands of objects at a time* and the sim doesn't freeze and wait for the backup to complete.
* This can be enhanced more by dedicating the thread as opposed to starting it when the backup process starts.
2008-05-21 21:22:56 +00:00
Teravus Ovares 8217bbe484 * Fixed needing to alter your sculptie sometimes to get physics to generate a collision mesh for it.
* Sculpties load on startup reliably now and successfully generate a collision mesh as soon as the sculpt texture is available.
2008-05-21 05:46:32 +00:00
Teravus Ovares 529553c77e * Fixed a logic error in previous commit. Darn these long client(param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param,param); methods! 2008-05-18 03:32:17 +00:00
Teravus Ovares 2bd03b7c8c * Group type stuff. Nothing spectacular. two packets, sorta almost semi half tiny amount implemented. 2008-05-18 03:21:22 +00:00
Teravus Ovares aa5197304e * Committing patch from mantis 0001297: [PATCH] Fix behavior of child prim inventories. Also enables 'New Script' button. from Melanie. Thanks Melanie! 2008-05-16 23:11:00 +00:00
Jeff Ames 7fefb80abb Minor cleanup. 2008-05-16 13:33:57 +00:00
Jeff Ames 65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Teravus Ovares d60e457463 Committing patch from Melanie. 0001290: [PATCH] implement permissions propagation and script module hooks. Thanks Melanie!
* Implements quite a few inventory related perms.
* (from Teravus) Fixes Take Copy
2008-05-15 19:28:10 +00:00
Justin Clarke Casey 587f6ab645 * Refactor: Remove SceneObjectGroup.GetScenePresences() in favour of a direct call to Scene 2008-05-14 21:09:41 +00:00
Jeff Ames c995d60d37 Formatting cleanup. 2008-05-14 05:11:23 +00:00
Teravus Ovares b7baa3cd2a * Valid Sculpted prim now collide properly.
* The first time you set the sculpted texture of a prim you might have to futz with it to get it to generate a sculpted physics proxy
* Note that there are already issues in Trunk, (such as the prim scaling issue and prim jumping issue.  Essentially editing is difficult right now)
* This just adds to the experimental nature of trunk. :D
2008-05-09 07:50:00 +00:00
Teravus Ovares 7e275bfa37 * Wrote a method to get the OpenJpeg data of a sculpt texture asset and save it to the prim shape.
* Added some stuff around sculpted prim meshes..   but it's just there so the project compiles now.
2008-05-09 01:28:54 +00:00
Teravus Ovares 92c03978e1 * Fixes Prim ExtraParams
* Fixes Sculpty handling
* Fixes Light handling
* Fixes Flexi handling
* Fixes Sculpty + Flexi handling
* Fixes handling of Flexi type
* Fixes Changing prim type after changing to sculpty corrupting prim.
* Ugly code.
2008-05-08 04:58:44 +00:00
Sean Dague 5ff3c03c12 get all the right bits to SendPrimitiveToClient so we can actually
set vel, acc, and rvel in the packet (though this isn't done yet).
2008-05-07 18:40:18 +00:00
Jeff Ames 0ea48cf786 De-tabify source. 2008-05-06 22:41:38 +00:00
Sean Dague 0b09966c7e send actual velocity and angular velocity in terse updates
instead of hardcoding to zero when the primitive is non physical.
llTargetOmega should work now.
2008-05-06 22:17:00 +00:00
Teravus Ovares 7b446aba91 * Implemented DIE_AT_EDGE and Temporary objects don't save to the database. 2008-05-04 22:55:52 +00:00
Teravus Ovares 07167c9a3f * Committing some collision stuffs that I'm working on.
* Nothing user facing yet.
2008-05-03 04:33:17 +00:00
Teravus Ovares 412ca26565 * DuplicateOnRay with copy center works in two directions... Still fighting with it.
* DuplicateOnRay without copy center works in all directions.
2008-05-02 02:31:22 +00:00
Adam Frisby 20a9bf08f5 * Rolled back a few changes. 2008-05-01 18:04:42 +00:00
Adam Frisby 13526097f2 * Spring cleaning on Region.Environment.
* Converted a large number of read-only fields to be actually, readonly.
* Reformatted code sections.
* Removed redundant code.
2008-05-01 16:35:00 +00:00
Teravus Ovares 56b4f5a2ea * committing what I've got so far for DuplicateOnRay so I don't fight the conflict monster later. Not done yet, doesn't crash the server. 2008-05-01 15:17:49 +00:00
Adam Frisby 4692e92312 * Assorted spring cleanings. 2008-05-01 14:45:56 +00:00
Teravus Ovares 1c697ef0d2 * You can now rez objects out of inventory at the correct offset from prim you rez it on. Including multi prim groups and prim that have different X/Y/Z scales. 2008-05-01 06:31:12 +00:00
Teravus Ovares b70da6ac19 * Patch by Melanie. Implements proper objectflags on child objects. Thanks Melanie!
RE: 0001079: r4387. touch() event does not fire when touch script is in root prim and child prims are touched
2008-04-30 16:52:12 +00:00
Teravus Ovares 1fb54b074c * Added basic 3-5 level undo on prim position/rotation/scale.
* In the future this should be a config option...   and, hopefully this tides the builders over for a little while.
2008-04-28 01:48:21 +00:00
Teravus Ovares f71871bca3 * More attachment stuff, reworked some of the inventory routines to be what I need them to be for attachments. 2008-04-27 14:37:51 +00:00
Justin Clarke Casey accd89b3f1 * First draft implementation of copying prim inventory items back to agent inventory
* Now, if you own an item in a prim, you should be able to successfully drag it back into your inventory
* Temporarily, users which are not owners of the item cannot copy it, even if 'everyone can copy' is set
* This is pending fixes/implementation of upstream permission implementation
2008-04-26 20:31:01 +00:00
Teravus Ovares 323038ceb9 * Ooops, attachments now teleport/cross region borders along with your avatar. Those dastardly objects stick to you. 2008-04-26 17:36:30 +00:00
Teravus Ovares a534257b0e * Fixes prim crossing. See bug 1050.
* Causes the internal handling of attachments to put the prim group conceptually at the position of the avatar instead of 0,0,0
2008-04-25 21:41:55 +00:00
Justin Clarke Casey 6fec9c789b * Check in odds and ends which remain as an attempt to get the item properties panel for a prim's contents working
* Temporarily hacked things to bring our protocol data flow to be pretty much completely identical to the Linden's for this - to absolutely no avail.
* Leaving commented code in as a springboard for some future attempt
2008-04-25 21:31:40 +00:00
Teravus Ovares 298870b177 * Fixes Mantis: 1049. Y Texture repeat not being applied to resulting animation. 2008-04-25 19:48:47 +00:00
Teravus Ovares d3811f4747 * Fixes the object pay box to default to -2,-2,-2,-2,-2. Fixes mantis 1045. 2008-04-25 11:17:43 +00:00
Teravus Ovares 421730d972 * Used thomas' patch m884 as an example to make HUD attachments work. While I didn't use the patch directly, I did use the following from the patch to convert the uint value into the byte: (byte)((m_attachmentPoint % 16) * 16 + (m_attachmentPoint / 16)) 2008-04-25 09:47:21 +00:00
Teravus Ovares 9468917b5f * Implements llTarget, llTargetRemove, at_target(), not_at_target() 2008-04-25 01:00:55 +00:00
Sean Dague 2a2ef42e64 replace hard tabs with 4 spaces to be consistant in the source.
Please adjust your editors to not use hard tabs.
2008-04-24 12:27:24 +00:00
Teravus Ovares aa8aee90a3 * Adds much better support for attachments that you right click on in world.
* Your friends can see your attachments now.  People who appear in the sim after you've attached something can also see your attachments.
* You can position & rotate your attachments now.  Positions do *not* save.
* You can detach attachments now the regular way.
* Attachments do not cross into other regions with you..(this isn't too far off)
* Updated ODE to not request terse updates on child prim.
2008-04-24 11:32:41 +00:00
Teravus Ovares 12bba3da4b * Fixed an annoying pop-up box when crossing borders. 2008-04-23 23:55:02 +00:00
Teravus Ovares 1909d74d5f * Patch from Melanie. Mantis 0001037: Add various internal plumbing to the example economy module, implements llSetPayPrice(), money() and llGiveMoney() in scripts. Thanks Melanie!
* Moves module loading before the script engine so the script engine can pick up events from modules registering interfaces with scene.
2008-04-23 22:44:59 +00:00
Teravus Ovares 2a3bdde0fa * Adds llSetStatus(STATUS_ROTATE_X | STATUS_ROTATE_Y | STATUS_ROTATE_Z,TF)
* Currently if you apply that to only one or two axis you get unpredictable and sometimes explosive results.
* Three axis works well enough to play with it anyway.   More work is needed here.
* Fixed an incorrectly named method in ODE.NET
2008-04-23 15:32:19 +00:00
Adam Frisby 8425d53d68 * Applying Mantis #1022 - Thanks Melanie! 2008-04-23 11:54:35 +00:00
Adam Frisby 163d254bb9 * Applying Mantis #1021 (llStartAnimation/llStopAnimation) - Thanks Melanie! 2008-04-23 11:53:16 +00:00
Adam Frisby fef3b36894 * Optimised using statements and namespace references across entire project (this took a while to run). 2008-04-21 07:09:17 +00:00
Teravus Ovares 3358d70c5b * Updates LSL2CS converter
* All objects are not touchable by default now
* When a script listens for one of the touch events in the state, an object becomes touchable.
* All LSL scripts report which events they consume now
** This uses semi-complicated Regex to discover the events, stick them in a dictionary, and then write a method call into each script state's state_entry() event.
** Tedd may figure out a better way to do this in the future.  For now, this works for LSL.
2008-04-20 04:19:44 +00:00
Justin Clarke Casey 6ef4f1bdae * Resolve mantis 849
* Scripts in prims within linksets can now be properly edited using the 'edit linked parts' linden ui option
2008-04-03 13:33:46 +00:00