mirror of
https://github.com/opensim/opensim.git
synced 2026-05-27 12:26:01 +08:00
* Added a few more packets to ClientView. Added tendons to the Skeletal Groups Module, made it shared to save on threads.
This commit is contained in:
@@ -561,6 +561,11 @@ namespace OpenSim.Region.ClientStack
|
||||
public event RequestAvatarProperties OnRequestAvatarProperties;
|
||||
public event SetAlwaysRun OnSetAlwaysRun;
|
||||
|
||||
public event FetchInventory OnAgentDataUpdateRequest;
|
||||
public event FetchInventory OnUserInfoRequest;
|
||||
public event TeleportLocationRequest OnSetStartLocationRequest;
|
||||
|
||||
|
||||
public event CreateNewInventoryItem OnCreateNewInventoryItem;
|
||||
public event CreateInventoryFolder OnCreateNewInventoryFolder;
|
||||
public event UpdateInventoryFolder OnUpdateInventoryFolder;
|
||||
@@ -1301,6 +1306,19 @@ namespace OpenSim.Region.ClientStack
|
||||
OutPacket(replyPacket, ThrottleOutPacketType.Task);
|
||||
}
|
||||
|
||||
public void SendAgentDataUpdate(LLUUID agentid, LLUUID activegroupid, string firstname, string lastname, ulong grouppowers, string groupname,string grouptitle)
|
||||
{
|
||||
AgentDataUpdatePacket sendAgentDataUpdate = (AgentDataUpdatePacket)PacketPool.Instance.GetPacket(PacketType.AgentDataUpdate);
|
||||
sendAgentDataUpdate.AgentData.ActiveGroupID = activegroupid;
|
||||
sendAgentDataUpdate.AgentData.AgentID = agentid;
|
||||
sendAgentDataUpdate.AgentData.FirstName = Helpers.StringToField(firstname);
|
||||
sendAgentDataUpdate.AgentData.GroupName = Helpers.StringToField(groupname);
|
||||
sendAgentDataUpdate.AgentData.GroupPowers = grouppowers;
|
||||
sendAgentDataUpdate.AgentData.GroupTitle = Helpers.StringToField(grouptitle);
|
||||
sendAgentDataUpdate.AgentData.LastName = Helpers.StringToField(lastname);
|
||||
OutPacket(sendAgentDataUpdate,ThrottleOutPacketType.Task);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
@@ -2795,6 +2813,7 @@ namespace OpenSim.Region.ClientStack
|
||||
//rezPacket.RezData.RezSelected;
|
||||
//rezPacket.RezData.FromTaskID;
|
||||
//m_log.Info("[REZData]: " + rezPacket.ToString());
|
||||
|
||||
OnRezObject(this, rezPacket.InventoryData.ItemID, rezPacket.RezData.RayEnd,
|
||||
rezPacket.RezData.RayStart, rezPacket.RezData.RayTargetID,
|
||||
rezPacket.RezData.BypassRaycast, rezPacket.RezData.RayEndIsIntersection,
|
||||
@@ -2949,6 +2968,41 @@ namespace OpenSim.Region.ClientStack
|
||||
Helpers.FieldToUTF8String(querydata.Name));
|
||||
}
|
||||
break;
|
||||
case PacketType.AgentDataUpdateRequest:
|
||||
AgentDataUpdateRequestPacket avRequestDataUpdatePacket = (AgentDataUpdateRequestPacket)Pack;
|
||||
|
||||
if (OnAgentDataUpdateRequest != null)
|
||||
{
|
||||
OnAgentDataUpdateRequest(this, avRequestDataUpdatePacket.AgentData.AgentID, avRequestDataUpdatePacket.AgentData.SessionID);
|
||||
}
|
||||
|
||||
break;
|
||||
case PacketType.UserInfoRequest:
|
||||
UserInfoRequestPacket avUserInfoRequestPacket = (UserInfoRequestPacket)Pack;
|
||||
if (OnUserInfoRequest != null)
|
||||
{
|
||||
OnUserInfoRequest(this,avUserInfoRequestPacket.AgentData.AgentID,avUserInfoRequestPacket.AgentData.SessionID);
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case PacketType.SetStartLocationRequest:
|
||||
SetStartLocationRequestPacket avSetStartLocationRequestPacket = (SetStartLocationRequestPacket)Pack;
|
||||
if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId)
|
||||
{
|
||||
if (OnSetStartLocationRequest != null)
|
||||
{
|
||||
OnSetStartLocationRequest(this, 0, avSetStartLocationRequestPacket.StartLocationData.LocationPos,
|
||||
avSetStartLocationRequestPacket.StartLocationData.LocationLookAt,
|
||||
avSetStartLocationRequestPacket.StartLocationData.LocationID);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case PacketType.AgentThrottle:
|
||||
AgentThrottlePacket atpack = (AgentThrottlePacket)Pack;
|
||||
m_packetQueue.SetThrottleFromClient(atpack.Throttle.Throttles);
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -3654,14 +3708,11 @@ namespace OpenSim.Region.ClientStack
|
||||
OnEstateCovenantRequest(this, epack.SessionID);
|
||||
}
|
||||
break;
|
||||
case PacketType.AgentThrottle:
|
||||
AgentThrottlePacket atpack = (AgentThrottlePacket)Pack;
|
||||
m_packetQueue.SetThrottleFromClient(atpack.Throttle.Throttles);
|
||||
break;
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region unimplemented handlers
|
||||
#region GodPackets
|
||||
|
||||
case PacketType.RequestGodlikePowers:
|
||||
RequestGodlikePowersPacket rglpPack = (RequestGodlikePowersPacket)Pack;
|
||||
@@ -3699,6 +3750,12 @@ namespace OpenSim.Region.ClientStack
|
||||
//OutPacket(kupack, ThrottleOutPacketType.Task);
|
||||
break;
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region unimplemented handlers
|
||||
|
||||
|
||||
case PacketType.StartPingCheck:
|
||||
// Send the client the ping response back
|
||||
// Pass the same PingID in the matching packet
|
||||
@@ -3746,17 +3803,17 @@ namespace OpenSim.Region.ClientStack
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled MuteListRequest packet");
|
||||
break;
|
||||
case PacketType.AgentDataUpdateRequest:
|
||||
//case PacketType.AgentDataUpdateRequest:
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled AgentDataUpdateRequest packet");
|
||||
break;
|
||||
//m_log.Warn("[CLIENT]: unhandled AgentDataUpdateRequest packet");
|
||||
//break;
|
||||
|
||||
case PacketType.ParcelDwellRequest:
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled ParcelDwellRequest packet");
|
||||
break;
|
||||
case PacketType.UseCircuitCode:
|
||||
// TODO: handle this packet
|
||||
// TODO: Don't display this one, we handle it at a lower level
|
||||
//m_log.Warn("[CLIENT]: unhandled UseCircuitCode packet");
|
||||
break;
|
||||
case PacketType.EconomyDataRequest:
|
||||
@@ -3775,10 +3832,10 @@ namespace OpenSim.Region.ClientStack
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled SoundTrigger packet");
|
||||
break;
|
||||
case PacketType.UserInfoRequest:
|
||||
//case PacketType.UserInfoRequest:
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled UserInfoRequest packet");
|
||||
break;
|
||||
//m_log.Warn("[CLIENT]: unhandled UserInfoRequest packet");
|
||||
//break;
|
||||
case PacketType.InventoryDescendents:
|
||||
// TODO: handle this packet
|
||||
m_log.Warn("[CLIENT]: unhandled InventoryDescent packet");
|
||||
|
||||
Reference in New Issue
Block a user