Change the way attachments are persisted. Editing a worn attachment will now

save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
This commit is contained in:
Melanie
2010-11-16 21:01:56 +00:00
parent 56bd42b438
commit 7bb005b0d1
12 changed files with 109 additions and 61 deletions

View File

@@ -122,11 +122,20 @@ namespace OpenSim.Region.Framework.Interfaces
void ShowDetachInUserInventory(UUID itemID, IClientAPI remoteClient);
/// <summary>
/// Update the position of an attachment
/// Update the user inventory with a changed attachment
/// </summary>
/// <param name="client"></param>
/// <param name="sog"></param>
/// <param name="pos"></param>
void UpdateAttachmentPosition(IClientAPI client, SceneObjectGroup sog, Vector3 pos);
/// <param name="remoteClient">
/// A <see cref="IClientAPI"/>
/// </param>
/// <param name="grp">
/// A <see cref="SceneObjectGroup"/>
/// </param>
/// <param name="itemID">
/// A <see cref="UUID"/>
/// </param>
/// <param name="agentID">
/// A <see cref="UUID"/>
/// </param>
void UpdateKnownItem(IClientAPI remoteClient, SceneObjectGroup grp, UUID itemID, UUID agentID);
}
}
}

View File

@@ -183,6 +183,7 @@ namespace OpenSim.Region.Framework.Interfaces
/// <returns>false if the item did not exist, true if the update occurred successfully</returns>
bool UpdateInventoryItem(TaskInventoryItem item);
bool UpdateInventoryItem(TaskInventoryItem item, bool fireScriptEvents);
bool UpdateInventoryItem(TaskInventoryItem item, bool fireScriptEvents, bool considerChanged);
/// <summary>
/// Remove an item from this entity's inventory