diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/ClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/ClientView.cs | 81 |
1 files changed, 69 insertions, 12 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index ff1bac4..47cb582 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs | |||
@@ -561,6 +561,11 @@ namespace OpenSim.Region.ClientStack | |||
561 | public event RequestAvatarProperties OnRequestAvatarProperties; | 561 | public event RequestAvatarProperties OnRequestAvatarProperties; |
562 | public event SetAlwaysRun OnSetAlwaysRun; | 562 | public event SetAlwaysRun OnSetAlwaysRun; |
563 | 563 | ||
564 | public event FetchInventory OnAgentDataUpdateRequest; | ||
565 | public event FetchInventory OnUserInfoRequest; | ||
566 | public event TeleportLocationRequest OnSetStartLocationRequest; | ||
567 | |||
568 | |||
564 | public event CreateNewInventoryItem OnCreateNewInventoryItem; | 569 | public event CreateNewInventoryItem OnCreateNewInventoryItem; |
565 | public event CreateInventoryFolder OnCreateNewInventoryFolder; | 570 | public event CreateInventoryFolder OnCreateNewInventoryFolder; |
566 | public event UpdateInventoryFolder OnUpdateInventoryFolder; | 571 | public event UpdateInventoryFolder OnUpdateInventoryFolder; |
@@ -1301,6 +1306,19 @@ namespace OpenSim.Region.ClientStack | |||
1301 | OutPacket(replyPacket, ThrottleOutPacketType.Task); | 1306 | OutPacket(replyPacket, ThrottleOutPacketType.Task); |
1302 | } | 1307 | } |
1303 | 1308 | ||
1309 | public void SendAgentDataUpdate(LLUUID agentid, LLUUID activegroupid, string firstname, string lastname, ulong grouppowers, string groupname,string grouptitle) | ||
1310 | { | ||
1311 | AgentDataUpdatePacket sendAgentDataUpdate = (AgentDataUpdatePacket)PacketPool.Instance.GetPacket(PacketType.AgentDataUpdate); | ||
1312 | sendAgentDataUpdate.AgentData.ActiveGroupID = activegroupid; | ||
1313 | sendAgentDataUpdate.AgentData.AgentID = agentid; | ||
1314 | sendAgentDataUpdate.AgentData.FirstName = Helpers.StringToField(firstname); | ||
1315 | sendAgentDataUpdate.AgentData.GroupName = Helpers.StringToField(groupname); | ||
1316 | sendAgentDataUpdate.AgentData.GroupPowers = grouppowers; | ||
1317 | sendAgentDataUpdate.AgentData.GroupTitle = Helpers.StringToField(grouptitle); | ||
1318 | sendAgentDataUpdate.AgentData.LastName = Helpers.StringToField(lastname); | ||
1319 | OutPacket(sendAgentDataUpdate,ThrottleOutPacketType.Task); | ||
1320 | } | ||
1321 | |||
1304 | /// <summary> | 1322 | /// <summary> |
1305 | /// | 1323 | /// |
1306 | /// </summary> | 1324 | /// </summary> |
@@ -2795,6 +2813,7 @@ namespace OpenSim.Region.ClientStack | |||
2795 | //rezPacket.RezData.RezSelected; | 2813 | //rezPacket.RezData.RezSelected; |
2796 | //rezPacket.RezData.FromTaskID; | 2814 | //rezPacket.RezData.FromTaskID; |
2797 | //m_log.Info("[REZData]: " + rezPacket.ToString()); | 2815 | //m_log.Info("[REZData]: " + rezPacket.ToString()); |
2816 | |||
2798 | OnRezObject(this, rezPacket.InventoryData.ItemID, rezPacket.RezData.RayEnd, | 2817 | OnRezObject(this, rezPacket.InventoryData.ItemID, rezPacket.RezData.RayEnd, |
2799 | rezPacket.RezData.RayStart, rezPacket.RezData.RayTargetID, | 2818 | rezPacket.RezData.RayStart, rezPacket.RezData.RayTargetID, |
2800 | rezPacket.RezData.BypassRaycast, rezPacket.RezData.RayEndIsIntersection, | 2819 | rezPacket.RezData.BypassRaycast, rezPacket.RezData.RayEndIsIntersection, |
@@ -2949,6 +2968,41 @@ namespace OpenSim.Region.ClientStack | |||
2949 | Helpers.FieldToUTF8String(querydata.Name)); | 2968 | Helpers.FieldToUTF8String(querydata.Name)); |
2950 | } | 2969 | } |
2951 | break; | 2970 | break; |
2971 | case PacketType.AgentDataUpdateRequest: | ||
2972 | AgentDataUpdateRequestPacket avRequestDataUpdatePacket = (AgentDataUpdateRequestPacket)Pack; | ||
2973 | |||
2974 | if (OnAgentDataUpdateRequest != null) | ||
2975 | { | ||
2976 | OnAgentDataUpdateRequest(this, avRequestDataUpdatePacket.AgentData.AgentID, avRequestDataUpdatePacket.AgentData.SessionID); | ||
2977 | } | ||
2978 | |||
2979 | break; | ||
2980 | case PacketType.UserInfoRequest: | ||
2981 | UserInfoRequestPacket avUserInfoRequestPacket = (UserInfoRequestPacket)Pack; | ||
2982 | if (OnUserInfoRequest != null) | ||
2983 | { | ||
2984 | OnUserInfoRequest(this,avUserInfoRequestPacket.AgentData.AgentID,avUserInfoRequestPacket.AgentData.SessionID); | ||
2985 | |||
2986 | } | ||
2987 | break; | ||
2988 | |||
2989 | case PacketType.SetStartLocationRequest: | ||
2990 | SetStartLocationRequestPacket avSetStartLocationRequestPacket = (SetStartLocationRequestPacket)Pack; | ||
2991 | if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId) | ||
2992 | { | ||
2993 | if (OnSetStartLocationRequest != null) | ||
2994 | { | ||
2995 | OnSetStartLocationRequest(this, 0, avSetStartLocationRequestPacket.StartLocationData.LocationPos, | ||
2996 | avSetStartLocationRequestPacket.StartLocationData.LocationLookAt, | ||
2997 | avSetStartLocationRequestPacket.StartLocationData.LocationID); | ||
2998 | } | ||
2999 | } | ||
3000 | break; | ||
3001 | |||
3002 | case PacketType.AgentThrottle: | ||
3003 | AgentThrottlePacket atpack = (AgentThrottlePacket)Pack; | ||
3004 | m_packetQueue.SetThrottleFromClient(atpack.Throttle.Throttles); | ||
3005 | break; | ||
2952 | 3006 | ||
2953 | #endregion | 3007 | #endregion |
2954 | 3008 | ||
@@ -3654,14 +3708,11 @@ namespace OpenSim.Region.ClientStack | |||
3654 | OnEstateCovenantRequest(this, epack.SessionID); | 3708 | OnEstateCovenantRequest(this, epack.SessionID); |
3655 | } | 3709 | } |
3656 | break; | 3710 | break; |
3657 | case PacketType.AgentThrottle: | 3711 | |
3658 | AgentThrottlePacket atpack = (AgentThrottlePacket)Pack; | ||
3659 | m_packetQueue.SetThrottleFromClient(atpack.Throttle.Throttles); | ||
3660 | break; | ||
3661 | 3712 | ||
3662 | #endregion | 3713 | #endregion |
3663 | 3714 | ||
3664 | #region unimplemented handlers | 3715 | #region GodPackets |
3665 | 3716 | ||
3666 | case PacketType.RequestGodlikePowers: | 3717 | case PacketType.RequestGodlikePowers: |
3667 | RequestGodlikePowersPacket rglpPack = (RequestGodlikePowersPacket)Pack; | 3718 | RequestGodlikePowersPacket rglpPack = (RequestGodlikePowersPacket)Pack; |
@@ -3699,6 +3750,12 @@ namespace OpenSim.Region.ClientStack | |||
3699 | //OutPacket(kupack, ThrottleOutPacketType.Task); | 3750 | //OutPacket(kupack, ThrottleOutPacketType.Task); |
3700 | break; | 3751 | break; |
3701 | 3752 | ||
3753 | |||
3754 | #endregion | ||
3755 | |||
3756 | #region unimplemented handlers | ||
3757 | |||
3758 | |||
3702 | case PacketType.StartPingCheck: | 3759 | case PacketType.StartPingCheck: |
3703 | // Send the client the ping response back | 3760 | // Send the client the ping response back |
3704 | // Pass the same PingID in the matching packet | 3761 | // Pass the same PingID in the matching packet |
@@ -3746,17 +3803,17 @@ namespace OpenSim.Region.ClientStack | |||
3746 | // TODO: handle this packet | 3803 | // TODO: handle this packet |
3747 | m_log.Warn("[CLIENT]: unhandled MuteListRequest packet"); | 3804 | m_log.Warn("[CLIENT]: unhandled MuteListRequest packet"); |
3748 | break; | 3805 | break; |
3749 | case PacketType.AgentDataUpdateRequest: | 3806 | //case PacketType.AgentDataUpdateRequest: |
3750 | // TODO: handle this packet | 3807 | // TODO: handle this packet |
3751 | m_log.Warn("[CLIENT]: unhandled AgentDataUpdateRequest packet"); | 3808 | //m_log.Warn("[CLIENT]: unhandled AgentDataUpdateRequest packet"); |
3752 | break; | 3809 | //break; |
3753 | 3810 | ||
3754 | case PacketType.ParcelDwellRequest: | 3811 | case PacketType.ParcelDwellRequest: |
3755 | // TODO: handle this packet | 3812 | // TODO: handle this packet |
3756 | m_log.Warn("[CLIENT]: unhandled ParcelDwellRequest packet"); | 3813 | m_log.Warn("[CLIENT]: unhandled ParcelDwellRequest packet"); |
3757 | break; | 3814 | break; |
3758 | case PacketType.UseCircuitCode: | 3815 | case PacketType.UseCircuitCode: |
3759 | // TODO: handle this packet | 3816 | // TODO: Don't display this one, we handle it at a lower level |
3760 | //m_log.Warn("[CLIENT]: unhandled UseCircuitCode packet"); | 3817 | //m_log.Warn("[CLIENT]: unhandled UseCircuitCode packet"); |
3761 | break; | 3818 | break; |
3762 | case PacketType.EconomyDataRequest: | 3819 | case PacketType.EconomyDataRequest: |
@@ -3775,10 +3832,10 @@ namespace OpenSim.Region.ClientStack | |||
3775 | // TODO: handle this packet | 3832 | // TODO: handle this packet |
3776 | m_log.Warn("[CLIENT]: unhandled SoundTrigger packet"); | 3833 | m_log.Warn("[CLIENT]: unhandled SoundTrigger packet"); |
3777 | break; | 3834 | break; |
3778 | case PacketType.UserInfoRequest: | 3835 | //case PacketType.UserInfoRequest: |
3779 | // TODO: handle this packet | 3836 | // TODO: handle this packet |
3780 | m_log.Warn("[CLIENT]: unhandled UserInfoRequest packet"); | 3837 | //m_log.Warn("[CLIENT]: unhandled UserInfoRequest packet"); |
3781 | break; | 3838 | //break; |
3782 | case PacketType.InventoryDescendents: | 3839 | case PacketType.InventoryDescendents: |
3783 | // TODO: handle this packet | 3840 | // TODO: handle this packet |
3784 | m_log.Warn("[CLIENT]: unhandled InventoryDescent packet"); | 3841 | m_log.Warn("[CLIENT]: unhandled InventoryDescent packet"); |