Tom
9cc2d0b60a
Now merging the core changes.
2011-09-04 08:30:23 -07:00
Tom
af59352c4c
Change of tactic. Reverting this to the careminster version, then i'll selectively merge the changes made to core.
2011-09-04 07:54:17 -07:00
Tom
9ab951a954
I fucked up the merge for SOG, so reverting back to OpenSim Core's version...
2011-09-04 07:38:25 -07:00
Tom
66dec3b874
Resolve merge commits, stage 1
2011-09-04 07:06:36 -07:00
Justin Clark-Casey (justincc)
5c1fa968ab
Stop NPCs losing attachments when the source avatar takes them off.
...
This was happening because we were using the source avatar's item IDs in the clone appearance.
Switch to using the asset IDs of attachments instead for NPCs.
The InventoryAccessModule and AttachmentModule had to be changed to allow rezzing of an object without an associated inventory item.
Hopefully goes some way towards resolving http://opensimulator.org/mantis/view.php?id=5653
2011-09-03 01:11:16 +01:00
Justin Clark-Casey (justincc)
e6eb0d9a6f
Comment out Scene.CleanDroppedAttachments() and calls.
...
This method wasn't actually doing anything since dropped attachments retain a PCode of 9.
Also, behaviour of dropped attachments in other places appears to be that they persist after avatar logout rather than get deleted.
2011-09-02 23:19:27 +01:00
Justin Clark-Casey (justincc)
26b471f25a
Go back to resetting the State parameter for all parts of a SOG when SOG.ClearPartAttachmentData() is called.
...
Even though we don't use these on rez they are still present after an unlink, after which selecting them causes various viewers to crash
Hopefully really does address http://opensimulator.org/mantis/view.php?id=5664
2011-09-02 22:28:27 +01:00
Justin Clark-Casey (justincc)
af7c6c5f39
stop passing FromUserInventoryItemID right down into the deserializer.
...
the code becomes simpler if this is set from the outside - only one place needs to do this.
2011-09-02 00:50:16 +01:00
Justin Clark-Casey (justincc)
9c0a03731d
Move more of IAM.RezObject() into DoPreRezWhenFromItem()
2011-09-02 00:41:21 +01:00
Justin Clark-Casey (justincc)
c491cdcb95
refactor: use SOG register target waypoints and rots directly instead of calling through the SOP, which doesn't make conceptual sense anyway.
2011-09-01 02:18:31 +01:00
Justin Clark-Casey (justincc)
7eca929686
Eliminate pointless checks of SOG.RootPart != null
...
It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
2011-09-01 02:11:00 +01:00
Justin Clark-Casey (justincc)
10d883dc88
refactor: use ParentGroup.UUID directly instead of SOP.GetRootPartUUID()
2011-09-01 01:41:53 +01:00
Justin Clark-Casey (justincc)
63bf710237
Fix issue with llGetTorque() where it would only ever return a zero vector.
2011-09-01 01:37:35 +01:00
Justin Clark-Casey (justincc)
095b3e5756
Remove pointless cluttering SOP.ParentGroup != null checks.
...
The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database.
At all other times it's not possible for a SOP not to have a SOG parent.
2011-09-01 01:22:28 +01:00
Justin Clark-Casey (justincc)
7d58b5fa15
move common code into AttachmentsModule.DeleteAttachmentsFromScene()
2011-08-31 17:53:58 +01:00
Justin Clark-Casey (justincc)
e69f246b86
refactor: move multiple class to set avatar height into associated SP.AddToPhysicalScene()
2011-08-31 17:25:18 +01:00
Justin Clark-Casey (justincc)
899d109e82
get rid of appearance null checks - this is never null
2011-08-31 17:13:53 +01:00
Justin Clark-Casey (justincc)
54839d28ad
remove pointless m_attachments == null check since this field is never null
2011-08-31 16:46:43 +01:00
Justin Clark-Casey (justincc)
5a5206449f
minor: seal up another instance of using the appearance list without locking
2011-08-31 16:41:58 +01:00
Justin Clark-Casey (justincc)
32444d98cb
Make SP.Attachments available as sp.GetAttachments() instead.
...
The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself
This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase.
It also improves liveness.
This might improve attachment anomolies when performing region crossings.
2011-08-31 16:29:51 +01:00
Justin Clark-Casey (justincc)
1809aaf74c
minor: remove already processed avatar null check in Scene.RemoveClient()
...
remove some now duplicated method doc
2011-08-30 23:36:45 +01:00
Justin Clark-Casey (justincc)
ddc733cd3d
refactor: move SP.SaveChangedAttachments() fully into AttachmentsModule
2011-08-30 23:32:30 +01:00
Justin Clark-Casey (justincc)
04bafd2122
refactor: Move ScenePresence.RezAttachments() into AttachmentsModule
...
This adds an incomplete IScenePresence to match ISceneEntity
2011-08-30 23:06:10 +01:00
Justin Clark-Casey (justincc)
a90e1cf3aa
add Name property to ISceneEntity
2011-08-30 22:39:16 +01:00
Justin Clark-Casey (justincc)
1de68b34d9
refactor: migrate DropObject handling fully into AttachmentsModule from Scene
2011-08-30 22:25:38 +01:00
Mic Bowman
17dab7245f
Merge branch 'master' into bulletsim
2011-08-30 08:44:28 -07:00
Justin Clark-Casey (justincc)
be357f8fee
Fix bug in persisting saved appearances for npcs
...
Assets have to be marked non-local as well as non-temporary to persist. This is now done.
Hopefully addresses http://opensimulator.org/mantis/view.php?id=5660
2011-08-30 01:58:32 +01:00
Mic Bowman
648866b597
Merge branch 'master' into bulletsim
2011-08-29 09:55:34 -07:00
Makopoppo
795b56e695
Related to #4689 - Adding missing null check for SceneObjectPart
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com >
2011-08-27 07:45:02 -04:00
Justin Clark-Casey (justincc)
d4d894c20f
Stop avatars returning from neighbouring regions from stalling on the border crossing.
...
On making a root agent, we need to reset the ScenePresence.m_movement_flag so that it doesn't remember the
movement registered to the client when it exited the initial region.
If this is remember, then the client avatar movement isn't updated and it appears to stall in mid-air, though this is resolved with a prod/release of any other direction key.
This bug was probably introduced a few weeks ago. Surprised that nobody brought it up.
2011-08-27 01:28:33 +01:00
Justin Clark-Casey (justincc)
1615e7d29f
Eliminate duplicate AttachmentPoint properties by always using the one stored in the root part's state field.
2011-08-27 00:33:24 +01:00
Justin Clark-Casey (justincc)
33a894f3d2
refactor: move SOP.IsAttachment and AttachmentPoint up into SOG to avoid pointless duplication of identical values
2011-08-27 00:15:21 +01:00
Mic Bowman
23f10f1d22
Merge branch 'master' into bulletsim
2011-08-26 15:23:46 -07:00
Justin Clark-Casey (justincc)
15a514fcbc
refactor: simplify SOP.AttachedAvatar into SOG.AttachedAvatar
...
This does a tiny bit to reduce code complexity, memory requirement and the cpu time of pointlessly setting this field to the same value in every SOP
2011-08-26 23:06:41 +01:00
Justin Clark-Casey (justincc)
5f3ffc195f
refactor: move SOG.DetachToGround() to AttachmentsModule.DetachSceneObjectToGround() and remove redundant code
2011-08-26 22:49:11 +01:00
Justin Clark-Casey (justincc)
ae614c1264
refactor: simplify DetachSingleAttachmentToGround() by retrieving the scene object group direct
2011-08-26 22:37:53 +01:00
Justin Clark-Casey (justincc)
002313bf13
refactor: move sog.DetachToInventoryPrep() into AttachmentsModule.DetachSingleAttachmentToInv()
2011-08-26 22:02:23 +01:00
Justin Clark-Casey (justincc)
d5dc8133fc
remove pointless IsDeleted check on SP.RezAttachments()
...
IsDeleted is never set for an SP, even though it's on EntityBase.
It might be an idea to set it in the future
2011-08-24 22:37:08 +01:00
Justin Clark-Casey (justincc)
6d4432f440
refactor: simplify EntityBase.IsDeleted property
2011-08-24 22:34:26 +01:00
Justin Clark-Casey (justincc)
9ba4511d3e
add SOG helper properties IsPhantom, IsTemporary, etc. to improve code readability
...
use these in some sog methods
2011-08-24 21:53:12 +01:00
Justin Clark-Casey (justincc)
5eeee480d4
refactor: move Scene.Inventory.attachObjectAssetStore() into AttachmentsModule.AddSceneObjectAsAttachment()
2011-08-24 21:35:44 +01:00
Justin Clark-Casey (justincc)
274e354006
get rid of pointless grp null check in attachObjectAssetStore()
2011-08-24 21:23:10 +01:00
Justin Clark-Casey (justincc)
0e0d40c810
minor: remove hardcoded region numbers with the region size constant and a currently hardcoded offset
2011-08-24 21:18:11 +01:00
Justin Clark-Casey (justincc)
ccf07f6ae3
refactor: remove pointless AgentId argument from attachObjectAssetStore()
2011-08-24 21:14:57 +01:00
Justin Clark-Casey (justincc)
cf3ffe5bb4
Fix llAttachToAvatar()
...
Apart from one obvious bug, this was failing because attempting to serialize the script from inside the script (as part of saving the attachment as an inventory asset) was triggering an extremely long delay.
So we now don't do this. The state will be serialized anyway when the avatar normally logs out.
The worst that can happen is that if the client/server crashes, the attachment scripts start without previous state.
2011-08-24 20:49:23 +01:00
Justin Clark-Casey (justincc)
97b207240e
rename AttachmentsModule.ShowDetachInUserInventory() to DetachSingleAttachmentToInv() for consistency and to reflect it's actual behaviour
2011-08-23 22:05:22 +01:00
Justin Clark-Casey (justincc)
afd5469eec
Remove pointless contains check in ScenePresence.RemoveAttachment()
2011-08-23 00:08:29 +01:00
Justin Clark-Casey (justincc)
d328046efb
If an attachment fails, then start logging the exception for now, in order to help with the inconsistent state bug.
...
This also refactors AttachmentsModules to stop pointlessly refetching the ScenePresence in various methods. However, more of this is required.
2011-08-22 23:59:48 +01:00
Justin Clark-Casey (justincc)
2eaadf2dc0
Add warning log message to say which attachment fails validation in order to pin down problems with "Inconsistent Attachment State"
2011-08-22 23:28:37 +01:00
Justin Clark-Casey (justincc)
7cf4bb5256
Add ISimulatorFeaturesModule so that other modules can register features in addition to the hardcoded ones.
2011-08-22 22:13:07 +01:00