Commit Graph

223 Commits (d7a98925ce5693f28ef48e4228680f3a7aba12af)

Author SHA1 Message Date
Justin Clarke Casey 8714833986 * refactor: For new objects, move attach to backup to occur when adding to a scene, rather than on creation of the group
* Adding to a scene is now parameterized such that one can choose not to actually persist that group
* This is to support a use case where a module wants a scene which consists of both objects which are persisted, and ones which are just temporary for the lifetime of that server instance
2008-06-12 17:49:08 +00:00
Teravus Ovares 622cd3db8b * Don't create ghost prim when rezzing objects from inventory 2008-06-05 10:44:46 +00:00
Charles Krinke d635b526e5 Mantis#1439. Thank you kindly, Melanie for a patch that
plumbs in the events for on_rez.
2008-06-04 14:31:36 +00:00
Charles Krinke 47cc1fcf46 Mantis#1428. Thank you kindly, fdg for a patch that solves:
When you copy an item in inventory and paste it, the name gets lost. 
Also when you use "Save as" in the Appearance Editing window the 
created item in inventory has always the name "New <item-type>", 
regardless of what you typed in as name.
2008-05-31 20:47:14 +00:00
mingchen 1d38510bd2 *Added a Few External Checks relating to scripts including the seperation of runscript into 3 different situations (Rez, start stop) 2008-05-28 23:20:01 +00:00
Jeff Ames 5752c1f5c2 Formatting cleanup. 2008-05-28 03:44:49 +00:00
Charles Krinke e34f537a1a Thank you kindly, Melanie for a patch that:
When renaming items in task inventory, they become useless. Fix attached
2008-05-28 02:47:24 +00:00
Jeff Ames 5d77625e9a Update svn properties. Formatting cleanup. 2008-05-25 23:27:38 +00:00
Justin Clarke Casey 86c46e92cd * Disabling isSelected check on object persistence backup (at least temporarily), since it appears we sometimes either don't receive or don't register deselect packets when
prims are shift copied.
* A better long term solution may be to address the problem of why we're not always seeing the deselects
2008-05-25 01:09:14 +00:00
Justin Clarke Casey bc92d72828 * Refactor: Collapses parts of different code paths in scene used when deleting and unlinking an object 2008-05-25 00:09:08 +00:00
Justin Clarke Casey 0ee69707ea * Refactor: Collapse some multiple remove object paths
* Push some delete functionality into InnerScene to match what's already there for adding objects
2008-05-24 23:11:07 +00:00
Justin Clarke Casey f3067ce6f9 * Refactor: Change previous commits Object methods to SceneObject methods instead, on the basis that this is less likely to cause confusion with c#'s base object type 2008-05-24 22:45:13 +00:00
Justin Clarke Casey 79eecd3d25 * Refactor: Renaming various *Entity*() methods to *Object*() methods on the basis that they all take SOG parameters to improve code readability for now 2008-05-24 22:10:14 +00:00
Teravus Ovares cd79be569c * Fixes endless loop in the Land Module when selecting any object.
* Fixes returning objects when the object owner hasn't been in the simulator since the simulator started up last.
2008-05-24 21:13:44 +00:00
Teravus Ovares 375673ec90 This enables return from the parcel object owner display.
There's some oddness with the parcel counts, but if you can get past the oddness, you can return objects under an owner that you have permission to return.
2008-05-24 11:10:21 +00:00
Teravus Ovares 3965fa2ff3 * Implements selected object return.
* If user is in the same sim with you, they'll get an inventory update, if not....  oh well, they'll have to clear their cache potentially before they'll see it.
2008-05-24 09:40:14 +00:00
Charles Krinke 066b350d20 Thank you kindly, Melanie, for:
Nothing huge, but the new button code for producing 
a new script does well, but the script will not allow 
for name change once created. It reverts back to new script.
2008-05-23 02:45:52 +00:00
Charles Krinke 7dcaa409b3 Thank you kindly, Melanie, for a patch which:
Previously, upload charging was possible only for UPD uploads. 
This is because UDP uploads are charged by the viewer, while in CAPS, 
this was changed to be server side, so hackers couldn't avoid 
paying the upload charge. This patch adds a method to allow 
implementation of this serverside charge.
2008-05-23 01:38:20 +00:00
Sean Dague 185eff8d0d From: Jeremy Bongio <jbongio@us.ibm.com>
House cleaning ...

Rather than using the variable name EntityList, the variable name
EntitieList was being used. Here's a patch to fix it.
2008-05-20 16:19:35 +00:00
Charles Krinke 01b5425a2d Thank you kindly, Melanie for a patch that avoids a null
ref in inventory give and also now causes items to appear
in the correct folders now, no longer in the root folder.
2008-05-19 20:05:10 +00:00
Justin Clarke Casey 682fc23e32 * minor: Just a few documentation odds and ends 2008-05-18 19:51:58 +00:00
Teravus Ovares 349a17f664 * Tweaked patch mantis 1302 and committing it. 2008-05-17 00:16:16 +00:00
Jeff Ames a5f08b430d Formatting cleanup. 2008-05-17 00:06:35 +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 65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Teravus Ovares 0976949ad4 * Committing half of patch mantis 001291 from Melanie! Thanks Melanie.
* Fixes perms on take-copy assuming you have a specific flag set..  which is still in discussion.
2008-05-15 20:29:28 +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
Teravus Ovares 39eb39c0d5 Applied Patch mantis 1220. Implements llGetStartParameter. Thanks! 2008-05-14 05:43:21 +00:00
Jeff Ames 6a1b787436 More formatting cleanup. 2008-05-14 05:33:32 +00:00
Jeff Ames c995d60d37 Formatting cleanup. 2008-05-14 05:11:23 +00:00
mingchen 91aa7fa4fe *Fixed compile error on last commit 2008-05-13 18:14:12 +00:00
mingchen 5972e93449 *Objects now delete correctly 2008-05-13 17:39:21 +00:00
mingchen 32785921d0 *Complete redo of the permissions module
*Removed hardcoded permissions checks
*Added permissions checks where needed
2008-05-13 16:22:57 +00:00
Teravus Ovares 8f26427055 * Fixed null reference exception when rezzing an object from inventory with a rootpart that isn't found. Added a way to tell if it's an attachment. 2008-05-11 13:30:47 +00:00
Adam Frisby ee352ebc79 * Added NPCModule and NPCAvatar classes for NPCs. Primitive, but we can grow them out.
* Fix for Scene.Inventory.cs - It assumes every entity at startup is a SceneObjectGroup. (Actually, this shouldn't have compiled[!] without a warning.)
* Fix for LandManager at startup - it assumes there's a land channel when perhaps there isnt. (Bug that needs another refactor to fix. [Mike - I've assigned a ticket to you about this])
2008-05-11 04:32:43 +00:00
mingchen 6c71a04da8 *Added all the permission checks to the sceneexternalchecks and modified permission module to follow this.
*This makes permission checking much more modular; allows restrictive and granting module to be made without modifying the existing permission module
2008-05-08 19:37:57 +00:00
mingchen 6551f17966 *Added SceneExternalChecks.cs that is used to manage checking the results of multiple functions that register with the class and return the result (usually true/false) based on those results. This is useful for module wanting to put their opinion in decisions such as 'can the user rez this object?' 2008-05-07 17:33:57 +00:00
Justin Clarke Casey 9655cf2807 * Refactor: Break out permissions code into a separate region PermissionsModule 2008-05-05 20:14:53 +00:00
Teravus Ovares 1130c3067c * A bit of spice from here, a pinch of salt from there, some brains that attracts zombies.. a recipe for llRezObject
* Original patch by YZh Thanks YZH!!!!
* object_rez event patch by Melanie, Thanks Melanie!!!
* Some fixups, some missing things(velocity,rotation)
* script delay
* Recoil
* Standard error messages
* Standard silent failures
* Easter egg management
2008-05-05 00:03:30 +00:00
Justin Clarke Casey 27a7391d6b * Add ability to defer item actions for AddItem() and DeleteItem(). This won't be useful until we let the client cache (again?) 2008-05-03 23:33:20 +00:00
Justin Clarke Casey 56827894e9 * Refactor RemoveItem() 2008-05-03 23:23:46 +00:00
Justin Clarke Casey 688940e810 * Refactor: Renaming item and folder tree search methods to have Find*() prefixes 2008-05-03 22:39:33 +00:00
Justin Clarke Casey 1087542705 * Refactor: Move bulk of CreateFolder from UserProfileCacheService into CachedUserInfo
* Remove unused/superseded methods from GridInventoryService
2008-05-03 18:57:02 +00:00
Justin Clarke Casey a5dfca8958 * Refactor: remove redundant userId parameter from UpdateItem() and DeleteItem()
* Put warning in remove folder method about non implementation (not that this is used anyway - may be legacy)
2008-05-03 18:13:32 +00:00
Justin Clarke Casey f5609ba452 * Refactor: remove pointless agentId parameter from CachedUserInfo.AddItem()
* Remove old framework asset transactions files which were region modularized
2008-05-03 18:01:38 +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
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 a9cc76e0ef * Long awaited patch from A_Biondi Mantis 923. Kept alive by Melanie. Thanks A_Biondi and Melanie!
* This builds but might not work.   JustinCC will examine..   it may work out of the box.
2008-04-30 16:08:24 +00:00
Teravus Ovares 80ea0b94b9 * Fixes child prim not editable as an attachment. You can right click on child prim in an attachment and get the proper pie menu. You get the attachment axis scope in the edit box. 2008-04-29 13:12:36 +00:00
Teravus Ovares 911e63765c * Single Attachments now work from inventory. You can attach from inventory and detach from inventory.
* Detaching from right clicking in world, detaches to your inventory.
* If you go up to a prim and attach it from in world, it appears in your inventory.
* Attachment placement is saved when you detach them. 
* Choosing wear remembers your last attachment point from inventory.
* Wrote a method to update an inventory item's asset and sends the updated inventory item to the Client
* Wrote a recursive method to find the folder of a known existing inventory item.
* Removed a block on physics object position on creation.  This might crash a region or two, let us know via Mantis if your region crashes because of a physics out of bounds error.
* Drop doesn't work.  The menu item doesn't even come up.  Don't know why :P.
2008-04-27 20:10:28 +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
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
Adam Frisby e456cb7533 * Patch for #973 - Object Rez from Inventory ignores permissions - Thanks tglion! 2008-04-23 13:22:06 +00:00
Adam Frisby bca7ab7e36 * Applying Mantis #1020 (Animations) - Thanks Melanie. 2008-04-23 11:52:25 +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
Justin Clarke Casey b6f8777dde * Fix build break in previous revision 2008-04-19 20:44:24 +00:00
Teravus Ovares 7c1f17b994 * Applying melanie's Landmark patch. Thanks Melanie!
* To make a landmark, you currently have to enable admin options in the advanced menu first.  We're working on this..   however use the admin options solution in the mean time.
2008-04-16 14:10:54 +00:00
Teravus Ovares 06967e230f * Updates BetaGridLikeMoneyModule
* Several people have asked for a way to limit uploads, so I've decided to show people how to do this in the BetaGridLikeMoneyModule.
* Configure it in OpenSim.ini using the [Economy] header.  See the bottom of the OpenSim.ini.example for more information.
* This also fleshes out the Economy API a bit more.
2008-04-10 09:36:55 +00:00
Justin Clarke Casey 90422db35a * Update code to use patched libsecondlife.dll which removes the problem where the AssetType enum was 'Primitive' rather than 'Object'
* The libsecondlife patch was also applied to libsecondlife itself in r1714
* Many, many thanks to Dr Schofield (IBM) for his help on this :)
2008-04-08 14:39:29 +00:00
Sean Dague 5ee75998ce more refactoring, this time on InventoryFolderBase
* wrap attributes in properties
 * clean up names a little bit
 * clean up name styles
2008-04-07 23:27:05 +00:00
Sean Dague f436815107 Refactor InventoryItemBase to do the following:
* wrap fields as Properties
 * rename some fields/properties to more sensible names
 * set style to PropName to match more standard C# approach
2008-04-07 23:15:35 +00:00
Justin Clarke Casey da9eeffc9e * Objects which have their name or description changed while within inventory will now retain those details when rezzed to a scene 2008-04-07 21:33:25 +00:00
Justin Clarke Casey 033f0138c8 * Preserve original creator's name when an object is given 2008-04-07 21:03:03 +00:00
Justin Clarke Casey dfe5e9d4eb * EXPERIMENTAL ROUGH DRAFT: First rough implementation of avatar to avatar item giving
* Now you can drag an object from your inventory and give it to another avatar
* !!! Use at your own risk !!!  Many things are unimplemented as of yet, including permissions (the person receiving your item can probably do absolutely everything with it)
* Also, items for the receiving end up in their root folder rather than the objects folder
2008-04-07 01:46:00 +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
Justin Clarke Casey 272fbef65f Minor: just some method comments 2008-04-02 17:34:53 +00:00
Justin Clarke Casey 5f04cebb25 * Fix for mantis 131, 796
* Take copy now actually takes a copy into inventory rather than the original
2008-03-31 16:12:24 +00:00
Teravus Ovares 0cb05c1952 * Updated ray tracing code. It's now good enough to use when the XYZ vector components of the scale have a difference of less then 4.5 meters.
* When a new prim is created and raytracing is called for, raytrace from the camera position to the ground in the direction of the Norm(RayEnd - RayStart).
* If we got a hit based on our camera, create the new prim at the edge of the prim we hit.
* Don't raytrace if the difference between any component of the vector exceeds 4.5meters.
2008-03-21 05:54:56 +00:00
Jeff Ames 47180080f0 Formatting cleanup. 2008-03-18 05:16:43 +00:00
Jeff Ames a8aeec29da Fix a few mono compiler warnings. Minor cleanup. 2008-03-17 17:39:42 +00:00
Justin Clarke Casey bbb9a21eb5 * Fix mantis 757.
* DelinkFromGroup was removing the parts from the delinked group, which later upset the update thread when it tried to do a queued update for that object
* Temporary fix is to stop deleting the parts, though it would be good later to stop sending out the now spurious updates
* This fix actually reveals another bug, where rapid linking and delinking will cause the non root prims to disappear (though they're actually still there if you relog).  This is the next bug to tackle.
2008-03-12 18:59:50 +00:00
Justin Clarke Casey 9aeff3fb86 * Temporary resolution for mantis #711
* Trying to store items other than textures, sounds and scripts in a prim's inventory should no longer cause an exception.
* Temporary solution is to ignore storage requests for these assets - actually implementing this requires changes to TaskInventoryItem, at least
2008-03-07 12:39:06 +00:00
Sean Dague 4ea52b2105 Change SceneObjectPart.LocalID to .LocalId to be case matching
with SceneObjectGroup.LocalId (and hence reduce confusion).
2008-03-05 18:57:13 +00:00
Teravus Ovares d015356902 * Applied patch 708 from devalnor. Thanks devalnor!
* ODE: Added support for larger box stacks. (they're slow, but they work)
* ODEPlugin no longer tries to 'catch up' with the simulator frame rate if it gets behind.  Catching up was causing a lot of problems with larger box stacks and other things that stall the simulator (like saving prim in the datastore)
2008-03-03 16:52:25 +00:00
Justin Clarke Casey 0eeb56c61d * Properly guard against the possibility that CopyInventoryItem doesn't get an asset back from the cache 2008-02-20 23:31:33 +00:00
Justin Clarke Casey b0c5ef0b68 * Eliminate AssetCache.CopyAsset()
* Resolve a bad logic bug in AssetCache.GetAsset()
* This may make some asset related things work better (possibly getting main map images will now be improved).
2008-02-20 23:21:51 +00:00
Jeff Ames a8cfbbe963 Minor cleanup. 2008-02-20 18:38:20 +00:00
Charles Krinke 2c81e18fc3 Thank you very much Ahzzmandius for adding the support
to purge the avatars inventory "Trash" folder using the
bizarre tortoiseSVN method of diff/patch.
2008-02-18 03:25:14 +00:00
MW b618802e53 Moved the AgentAssetTransactionsManager (and AgentAssetTransactions) out of CommsManager and into a module (AgentAgentTransactionModule), still needs cleaning up though.
But its one more thing out of the CommsManager. One day we will kill the CommsManager!
2008-02-16 13:01:42 +00:00
Jeff Ames 001ce95e4c Clean up more unnecessary String.Format calls 2008-02-13 03:38:18 +00:00
Justin Clarke Casey 365cf8e455 * Refactor: Move last commit's refactor back to AgentAssetTransactionsManager
* Push asset update (invoked when clothing is altered) down into AgentAssetTransactions from Scene.Inventory.cs to join others
* I've tested that clothing creation and update still works, but please let me know if it suddently breaks for you.
* Add/correct comments
2008-02-13 00:30:51 +00:00
Justin Clarke Casey 2018cf312b Refactor: factor a method out of AgentAssetTransactionsManager 2008-02-12 22:41:57 +00:00
Justin Clarke Casey 6a3455a98c * Refactoring: Rename AssetTransactions.cs and AssetTransactionsManager and align classes with file names
* Small amount of ndoc
* This will probably require a prebuild and nant clean
2008-02-12 18:15:54 +00:00
Justin Clarke Casey 7647239f32 Tiny change to print out a warning in a situation which almost guaranteeably never occurs anyway 2008-02-11 21:58:58 +00:00
lbsa71 c927928245 * some refactoring on permissions
* temporary re-introduced the weird 'flip-back' behaviour, but debugging it; will remove it if I don't find anything.
2008-02-11 13:26:55 +00:00
Dalien Talbot c935b308e6 The very beginnings of attachments (no detachments! :) 2008-02-10 22:23:11 +00:00
Jeff Ames e207284fef Clean up logging calls using String.Format explicitly 2008-02-10 01:57:59 +00:00
Jeff Ames 6ed5283bc0 Converted logging to use log4net.
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00
Justin Clarke Casey 0325e6ee6a * Library scripts can now be dragged into prims
* Unfortunately, they show us as non modify, though they will run
* We're probably hitting unimplement permissions stuff
2008-01-23 17:52:13 +00:00
lbsa71 8d0364e228 * changed nonsensical PermissionMask and ObjectFlags mixup; if this causes perms weirdness, let's all work together to find the real cause. 2008-01-22 15:07:30 +00:00
Justin Clarke Casey dfb84d0d37 Change misleading placeholder error messages for attempts to persist non-script items to prim inventory 2008-01-21 22:34:14 +00:00
Justin Clarke Casey 57519b6dba * Store task inventory when an object is taken into agent inventory
* This means that you can take an object from a region and rez it somewhere else, with its inventory intact.
* As for earlier, at this stage only scripts can be placed in inventory
* This isn't an efficient implementation, a better one will probably need to come along soonish
2008-01-16 18:35:34 +00:00
Teravus Ovares 45e945616b * Pass 2 of collidable (non physical) linksets
* Linkset status is now persistent
* Tweaked a physics child prim positioning hack to generate less database saves
* Re-factored physics object creation calls into ApplyPhysics.  To create a new physics representation of an object or linkset, it's only necessary to call *group*.ApplyPhysics(bool m_physicalPrim).  *lbsa has been waiting for this refactoring*
* We have collidable linksets now. (they don't become phantom anymore)
2008-01-15 04:14:27 +00:00
Adam Frisby b25f9f322c * Mother of all commits:
* Cleaned up copyright notices in AssemblyInfo.cs's
* Added Copyright headers to a bunch of files missing them
* Replaced several common string instances with a static constant to prevent reallocation of the same strings thousands of times. "" -> String.Empty is the first such candidate.
2008-01-15 02:09:55 +00:00
Justin Clarke Casey 796ae57bea Prim inventory script saving phase 2.
* It is now possible to edit and save scripts directly from prim inventories
* On saving, the script will be restarted in the region
* Doesn't appear that it's yet possible to drag inventory contents back to agent inventory.  Not quite sure why this is yet - the perms all look very permissive.
2008-01-09 15:46:45 +00:00
Justin Clarke Casey 0428701da7 Minor prim inventory method refactoring 2008-01-07 22:32:10 +00:00
Justin Clarke Casey 348b79d801 Trigger persistence of the scripts in a prim's inventory when that inventory is changed/updated/deleted (before the trigger only happened if the prim was moved).
This is still development code - experimental prim inventory persistence cannot yet be enabled by users.
2008-01-07 22:11:26 +00:00