another..

This commit is contained in:
UbitUmarov
2020-08-26 16:09:12 +01:00
parent 088a778853
commit 7dc50c93b8
5 changed files with 39 additions and 36 deletions

View File

@@ -1210,6 +1210,7 @@ namespace OpenSim.Framework
void SendInventoryItemCreateUpdate(InventoryItemBase Item, UUID transactionID, uint callbackId);
void SendRemoveInventoryItem(UUID itemID);
void SendRemoveInventoryItems(UUID[] items);
void SendTakeControls(int controls, bool passToAgent, bool TakeControls);

View File

@@ -39,7 +39,6 @@ using log4net;
using OpenSim.Framework;
using OpenSim.Framework.Serialization.External;
using OpenSim.Region.Framework;
using OpenSim.Framework.Client;
using OpenSim.Region.Framework.Interfaces;
using OpenSim.Region.Framework.Scenes.Serialization;
using OpenSim.Services.Interfaces;
@@ -214,24 +213,16 @@ namespace OpenSim.Region.Framework.Scenes
private void ChangePlacement(InventoryItemBase item, InventoryFolderBase f)
{
ScenePresence sp = GetScenePresence(item.Owner);
if (sp != null)
if (sp != null && sp.ControllingClient != null && sp.ControllingClient.IsActive)
{
if (sp.ControllingClient is IClientCore)
{
IClientCore core = (IClientCore)sp.ControllingClient;
IClientInventory inv;
if (core.TryGet<IClientInventory>(out inv))
{
InventoryFolderBase parent = InventoryService.GetFolder(f.Owner, f.ParentID);
inv.SendRemoveInventoryItems(new UUID[] { item.ID });
inv.SendBulkUpdateInventory(new InventoryFolderBase[0], new InventoryItemBase[] { item });
string message = "The item was placed in folder " + f.Name;
if (parent != null)
message += " under " + parent.Name;
sp.ControllingClient.SendAgentAlertMessage(message, false);
}
}
IClientAPI cli = sp.ControllingClient;
InventoryFolderBase parent = InventoryService.GetFolder(f.Owner, f.ParentID);
cli.SendRemoveInventoryItems(new UUID[] { item.ID });
cli.SendBulkUpdateInventory(new InventoryFolderBase[0], new InventoryItemBase[] { item });
string message = "The item was placed in folder " + f.Name;
if (parent != null)
message += " under " + parent.Name;
cli.SendAgentAlertMessage(message, false);
}
}

View File

@@ -1142,7 +1142,10 @@ namespace OpenSim.Region.OptionalModules.Agent.InternetRelayClientView.Server
public void SendRemoveInventoryItem(UUID itemID)
{
}
public void SendRemoveInventoryItems(UUID[] items)
{
}
public void SendTakeControls(int controls, bool passToAgent, bool TakeControls)

View File

@@ -845,11 +845,11 @@ namespace OpenSim.Region.OptionalModules.World.NPC
{
}
public virtual void SendInventoryItemDetails(InventoryItemBase[] items)
public void SendInventoryItemDetails(InventoryItemBase[] items)
{
}
public virtual void SendInventoryItemCreateUpdate(InventoryItemBase Item, uint callbackID)
public void SendInventoryItemCreateUpdate(InventoryItemBase Item, uint callbackID)
{
}
@@ -857,15 +857,19 @@ namespace OpenSim.Region.OptionalModules.World.NPC
{
}
public virtual void SendRemoveInventoryItem(UUID itemID)
public void SendRemoveInventoryItem(UUID itemID)
{
}
public virtual void SendBulkUpdateInventory(InventoryNodeBase node, UUID? transactionID = null)
public void SendRemoveInventoryItems(UUID[] items)
{
}
public virtual void SendBulkUpdateInventory(InventoryFolderBase[] folders, InventoryItemBase[] items)
public void SendBulkUpdateInventory(InventoryNodeBase node, UUID? transactionID = null)
{
}
public void SendBulkUpdateInventory(InventoryFolderBase[] folders, InventoryItemBase[] items)
{
}
@@ -873,7 +877,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC
{
}
public virtual void SendTaskInventory(UUID taskID, short serial, byte[] fileName)
public void SendTaskInventory(UUID taskID, short serial, byte[] fileName)
{
}

View File

@@ -787,21 +787,21 @@ namespace OpenSim.Tests.Common
{
}
public virtual void SendInventoryFolderDetails(UUID ownerID, UUID folderID,
List<InventoryItemBase> items,
List<InventoryFolderBase> folders,
int version,
int descendents,
bool fetchFolders,
bool fetchItems)
public void SendInventoryFolderDetails(UUID ownerID, UUID folderID,
List<InventoryItemBase> items,
List<InventoryFolderBase> folders,
int version,
int descendents,
bool fetchFolders,
bool fetchItems)
{
}
public virtual void SendInventoryItemDetails(InventoryItemBase[] items)
public void SendInventoryItemDetails(InventoryItemBase[] items)
{
}
public virtual void SendInventoryItemCreateUpdate(InventoryItemBase Item, uint callbackID)
public void SendInventoryItemCreateUpdate(InventoryItemBase Item, uint callbackID)
{
}
@@ -809,15 +809,19 @@ namespace OpenSim.Tests.Common
{
}
public virtual void SendRemoveInventoryItem(UUID itemID)
public void SendRemoveInventoryItem(UUID itemID)
{
}
public virtual void SendBulkUpdateInventory(InventoryNodeBase node, UUID? transactionID = null)
public void SendRemoveInventoryItems(UUID[] items)
{
}
public virtual void SendBulkUpdateInventory(InventoryFolderBase[] folders, InventoryItemBase[] items)
public void SendBulkUpdateInventory(InventoryNodeBase node, UUID? transactionID = null)
{
}
public void SendBulkUpdateInventory(InventoryFolderBase[] folders, InventoryItemBase[] items)
{
}