diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 526 |
1 files changed, 521 insertions, 5 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index ba81d05..afd5f86 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -298,6 +298,26 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
298 | public event AvatarInterestUpdate OnAvatarInterestUpdate; | 298 | public event AvatarInterestUpdate OnAvatarInterestUpdate; |
299 | public event PlacesQuery OnPlacesQuery; | 299 | public event PlacesQuery OnPlacesQuery; |
300 | public event AgentFOV OnAgentFOV; | 300 | public event AgentFOV OnAgentFOV; |
301 | public event FindAgentUpdate OnFindAgentEvent; | ||
302 | public event TrackAgentUpdate OnTrackAgentEvent; | ||
303 | public event NewUserReport OnUserReportEvent; | ||
304 | public event SaveStateHandler OnSaveStateEvent; | ||
305 | public event GroupAccountSummaryRequest OnGroupAccountSummaryRequest; | ||
306 | public event GroupAccountDetailsRequest OnGroupAccountDetailsRequest; | ||
307 | public event GroupAccountTransactionsRequest OnGroupAccountTransactionsRequest; | ||
308 | public event FreezeUserUpdate OnParcelFreezeUserEvent; | ||
309 | public event EjectUserUpdate OnParcelEjectUserEvent; | ||
310 | public event ParcelBuyPass OnParcelBuyPass; | ||
311 | public event ParcelGodMark OnParcelGodMark; | ||
312 | public event GroupActiveProposalsRequest OnGroupActiveProposalsRequest; | ||
313 | public event GroupVoteHistoryRequest OnGroupVoteHistoryRequest; | ||
314 | public event SimWideDeletesDelegate OnSimWideDeletes; | ||
315 | public event SendPostcard OnSendPostcard; | ||
316 | public event MuteListEntryUpdate OnUpdateMuteListEntryEvent; | ||
317 | public event MuteListEntryRemove OnRemoveMuteListEntryEvent; | ||
318 | public event GodlikeMessage onGodlikeMessageEvent; | ||
319 | public event GodUpdateRegionInfoUpdate OnGodUpdateRegionInfoUpdateEvent; | ||
320 | |||
301 | 321 | ||
302 | #endregion Events | 322 | #endregion Events |
303 | 323 | ||
@@ -805,6 +825,189 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
805 | } | 825 | } |
806 | OutPacket(gmp, ThrottleOutPacketType.Task); | 826 | OutPacket(gmp, ThrottleOutPacketType.Task); |
807 | } | 827 | } |
828 | |||
829 | public void SendGroupActiveProposals(IClientAPI sender,UUID agentID, UUID sessionID, UUID groupID, UUID transactionID, Dictionary<int, string> VoteID, Dictionary<int, string> VoteInitiator, Dictionary<int, string> Majority, Dictionary<int, string> Quorum, Dictionary<int, string> TerseDateID, Dictionary<int, string> StartDateTime, Dictionary<int, string> EndDateTime, Dictionary<int, string> ProposalText) | ||
830 | { | ||
831 | foreach (KeyValuePair<int, string> Blank in VoteID) | ||
832 | { | ||
833 | GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket(); | ||
834 | |||
835 | GAPIRP.AgentData.AgentID = agentID; | ||
836 | GAPIRP.AgentData.GroupID = groupID; | ||
837 | GAPIRP.TransactionData.TransactionID = transactionID; | ||
838 | GAPIRP.TransactionData.TotalNumItems = 1; | ||
839 | GroupActiveProposalItemReplyPacket.ProposalDataBlock ProposalData = new GroupActiveProposalItemReplyPacket.ProposalDataBlock(); | ||
840 | GAPIRP.ProposalData = new GroupActiveProposalItemReplyPacket.ProposalDataBlock[1]; | ||
841 | ProposalData.VoteCast = Utils.StringToBytes("false"); | ||
842 | ProposalData.VoteID = new UUID(VoteID[Blank.Key]); | ||
843 | ProposalData.VoteInitiator = new UUID(VoteInitiator[Blank.Key]); | ||
844 | ProposalData.Majority = (float)Convert.ToInt32(Majority[Blank.Key]); | ||
845 | ProposalData.Quorum = Convert.ToInt32(Quorum[Blank.Key]); | ||
846 | ProposalData.TerseDateID = Utils.StringToBytes(TerseDateID[Blank.Key]); | ||
847 | ProposalData.StartDateTime = Utils.StringToBytes(StartDateTime[Blank.Key]); | ||
848 | ProposalData.EndDateTime = Utils.StringToBytes(EndDateTime[Blank.Key]); | ||
849 | ProposalData.ProposalText = Utils.StringToBytes(ProposalText[Blank.Key]); | ||
850 | ProposalData.AlreadyVoted = false; | ||
851 | GAPIRP.ProposalData[0] = ProposalData; | ||
852 | OutPacket(GAPIRP, ThrottleOutPacketType.Task); | ||
853 | } | ||
854 | if (VoteID.Count == 0) | ||
855 | { | ||
856 | GroupActiveProposalItemReplyPacket GAPIRP = new GroupActiveProposalItemReplyPacket(); | ||
857 | |||
858 | GAPIRP.AgentData.AgentID = agentID; | ||
859 | GAPIRP.AgentData.GroupID = groupID; | ||
860 | GAPIRP.TransactionData.TransactionID = transactionID; | ||
861 | GAPIRP.TransactionData.TotalNumItems = 1; | ||
862 | GroupActiveProposalItemReplyPacket.ProposalDataBlock ProposalData = new GroupActiveProposalItemReplyPacket.ProposalDataBlock(); | ||
863 | GAPIRP.ProposalData = new GroupActiveProposalItemReplyPacket.ProposalDataBlock[1]; | ||
864 | ProposalData.VoteCast = Utils.StringToBytes("false"); | ||
865 | ProposalData.VoteID = UUID.Zero; | ||
866 | ProposalData.VoteInitiator = UUID.Zero; | ||
867 | ProposalData.Majority = 0; | ||
868 | ProposalData.Quorum = 0; | ||
869 | ProposalData.TerseDateID = Utils.StringToBytes(""); | ||
870 | ProposalData.StartDateTime = Utils.StringToBytes(""); | ||
871 | ProposalData.EndDateTime = Utils.StringToBytes(""); | ||
872 | ProposalData.ProposalText = Utils.StringToBytes(""); | ||
873 | ProposalData.AlreadyVoted = false; | ||
874 | GAPIRP.ProposalData[0] = ProposalData; | ||
875 | OutPacket(GAPIRP, ThrottleOutPacketType.Task); | ||
876 | } | ||
877 | } | ||
878 | |||
879 | public void SendGroupVoteHistory(IClientAPI sender,UUID agentID, UUID sessionID, UUID groupID, UUID transactionID, Dictionary<int, string> VoteID, Dictionary<int, string> VoteInitiator, Dictionary<int, string> Majority, Dictionary<int, string> Quorum, Dictionary<int, string> TerseDateID, Dictionary<int, string> StartDateTime, Dictionary<int, string> EndDateTime, Dictionary<int, string> VoteType, Dictionary<int, string> VoteResult, Dictionary<int, string> ProposalText) | ||
880 | { | ||
881 | foreach (KeyValuePair<int, string> Blank in VoteID) | ||
882 | { | ||
883 | GroupVoteHistoryItemReplyPacket GVHIRP = new GroupVoteHistoryItemReplyPacket(); | ||
884 | |||
885 | GVHIRP.AgentData.AgentID = agentID; | ||
886 | GVHIRP.AgentData.GroupID = groupID; | ||
887 | GVHIRP.TransactionData.TransactionID = transactionID; | ||
888 | GVHIRP.TransactionData.TotalNumItems = 1; | ||
889 | GVHIRP.HistoryItemData.VoteID = new UUID(VoteID[Blank.Key]); | ||
890 | GVHIRP.HistoryItemData.VoteInitiator = new UUID(VoteInitiator[Blank.Key]); | ||
891 | GVHIRP.HistoryItemData.Majority = (float)Convert.ToInt32(Majority[Blank.Key]); | ||
892 | GVHIRP.HistoryItemData.Quorum = Convert.ToInt32(Quorum[Blank.Key]); | ||
893 | GVHIRP.HistoryItemData.TerseDateID = Utils.StringToBytes(TerseDateID[Blank.Key]); | ||
894 | GVHIRP.HistoryItemData.StartDateTime = Utils.StringToBytes(StartDateTime[Blank.Key]); | ||
895 | GVHIRP.HistoryItemData.EndDateTime = Utils.StringToBytes(EndDateTime[Blank.Key]); | ||
896 | GVHIRP.HistoryItemData.VoteType = Utils.StringToBytes(VoteType[Blank.Key]); | ||
897 | GVHIRP.HistoryItemData.VoteResult = Utils.StringToBytes(VoteResult[Blank.Key]); | ||
898 | GVHIRP.HistoryItemData.ProposalText = Utils.StringToBytes(ProposalText[Blank.Key]); | ||
899 | GroupVoteHistoryItemReplyPacket.VoteItemBlock VoteItem = new GroupVoteHistoryItemReplyPacket.VoteItemBlock(); | ||
900 | GVHIRP.VoteItem = new GroupVoteHistoryItemReplyPacket.VoteItemBlock[1]; | ||
901 | VoteItem.CandidateID = UUID.Zero; | ||
902 | VoteItem.NumVotes = 0; //TODO: FIX THIS!!! | ||
903 | VoteItem.VoteCast = Utils.StringToBytes("Yes"); | ||
904 | GVHIRP.VoteItem[0] = VoteItem; | ||
905 | OutPacket(GVHIRP, ThrottleOutPacketType.Task); | ||
906 | } | ||
907 | if (VoteID.Count == 0) | ||
908 | { | ||
909 | GroupVoteHistoryItemReplyPacket GVHIRP = new GroupVoteHistoryItemReplyPacket(); | ||
910 | |||
911 | GVHIRP.AgentData.AgentID = agentID; | ||
912 | GVHIRP.AgentData.GroupID = groupID; | ||
913 | GVHIRP.TransactionData.TransactionID = transactionID; | ||
914 | GVHIRP.TransactionData.TotalNumItems = 0; | ||
915 | GVHIRP.HistoryItemData.VoteID = UUID.Zero; | ||
916 | GVHIRP.HistoryItemData.VoteInitiator = UUID.Zero; | ||
917 | GVHIRP.HistoryItemData.Majority = 0; | ||
918 | GVHIRP.HistoryItemData.Quorum = 0; | ||
919 | GVHIRP.HistoryItemData.TerseDateID = Utils.StringToBytes(""); | ||
920 | GVHIRP.HistoryItemData.StartDateTime = Utils.StringToBytes(""); | ||
921 | GVHIRP.HistoryItemData.EndDateTime = Utils.StringToBytes(""); | ||
922 | GVHIRP.HistoryItemData.VoteType = Utils.StringToBytes(""); | ||
923 | GVHIRP.HistoryItemData.VoteResult = Utils.StringToBytes(""); | ||
924 | GVHIRP.HistoryItemData.ProposalText = Utils.StringToBytes(""); | ||
925 | GroupVoteHistoryItemReplyPacket.VoteItemBlock VoteItem = new GroupVoteHistoryItemReplyPacket.VoteItemBlock(); | ||
926 | GVHIRP.VoteItem = new GroupVoteHistoryItemReplyPacket.VoteItemBlock[1]; | ||
927 | VoteItem.CandidateID = UUID.Zero; | ||
928 | VoteItem.NumVotes = 0; //TODO: FIX THIS!!! | ||
929 | VoteItem.VoteCast = Utils.StringToBytes("No"); | ||
930 | GVHIRP.VoteItem[0] = VoteItem; | ||
931 | OutPacket(GVHIRP, ThrottleOutPacketType.Task); | ||
932 | } | ||
933 | } | ||
934 | |||
935 | public void SendGroupAccountingDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt) | ||
936 | { | ||
937 | GroupAccountDetailsReplyPacket GADRP = new GroupAccountDetailsReplyPacket(); | ||
938 | GADRP.AgentData = new GroupAccountDetailsReplyPacket.AgentDataBlock(); | ||
939 | GADRP.AgentData.AgentID = sender.AgentId; | ||
940 | GADRP.AgentData.GroupID = groupID; | ||
941 | GADRP.HistoryData = new GroupAccountDetailsReplyPacket.HistoryDataBlock[1]; | ||
942 | GroupAccountDetailsReplyPacket.HistoryDataBlock History = new GroupAccountDetailsReplyPacket.HistoryDataBlock(); | ||
943 | GADRP.MoneyData = new GroupAccountDetailsReplyPacket.MoneyDataBlock(); | ||
944 | GADRP.MoneyData.CurrentInterval = 0; | ||
945 | GADRP.MoneyData.IntervalDays = 7; | ||
946 | GADRP.MoneyData.RequestID = transactionID; | ||
947 | GADRP.MoneyData.StartDate = Utils.StringToBytes(DateTime.Today.ToString()); | ||
948 | History.Amount = amt; | ||
949 | History.Description = Utils.StringToBytes(""); | ||
950 | GADRP.HistoryData[0] = History; | ||
951 | OutPacket(GADRP, ThrottleOutPacketType.Task); | ||
952 | } | ||
953 | |||
954 | public void SendGroupAccountingSummary(IClientAPI sender,UUID groupID, uint moneyAmt, int totalTier, int usedTier) | ||
955 | { | ||
956 | GroupAccountSummaryReplyPacket GASRP = | ||
957 | (GroupAccountSummaryReplyPacket)PacketPool.Instance.GetPacket( | ||
958 | PacketType.GroupAccountSummaryReply); | ||
959 | |||
960 | GASRP.AgentData = new GroupAccountSummaryReplyPacket.AgentDataBlock(); | ||
961 | GASRP.AgentData.AgentID = sender.AgentId; | ||
962 | GASRP.AgentData.GroupID = groupID; | ||
963 | GASRP.MoneyData = new GroupAccountSummaryReplyPacket.MoneyDataBlock(); | ||
964 | GASRP.MoneyData.Balance = (int)moneyAmt; | ||
965 | GASRP.MoneyData.TotalCredits = totalTier; | ||
966 | GASRP.MoneyData.TotalDebits = usedTier; | ||
967 | GASRP.MoneyData.StartDate = new byte[1]; | ||
968 | GASRP.MoneyData.CurrentInterval = 1; | ||
969 | GASRP.MoneyData.GroupTaxCurrent = 0; | ||
970 | GASRP.MoneyData.GroupTaxEstimate = 0; | ||
971 | GASRP.MoneyData.IntervalDays = 0; | ||
972 | GASRP.MoneyData.LandTaxCurrent = 0; | ||
973 | GASRP.MoneyData.LandTaxEstimate = 0; | ||
974 | GASRP.MoneyData.LastTaxDate = new byte[1]; | ||
975 | GASRP.MoneyData.LightTaxCurrent = 0; | ||
976 | GASRP.MoneyData.TaxDate = new byte[1]; | ||
977 | GASRP.MoneyData.RequestID = sender.AgentId; | ||
978 | GASRP.MoneyData.ParcelDirFeeEstimate = 0; | ||
979 | GASRP.MoneyData.ParcelDirFeeCurrent = 0; | ||
980 | GASRP.MoneyData.ObjectTaxEstimate = 0; | ||
981 | GASRP.MoneyData.NonExemptMembers = 0; | ||
982 | GASRP.MoneyData.ObjectTaxCurrent = 0; | ||
983 | GASRP.MoneyData.LightTaxEstimate = 0; | ||
984 | OutPacket(GASRP, ThrottleOutPacketType.Task); | ||
985 | } | ||
986 | |||
987 | public void SendGroupTransactionsSummaryDetails(IClientAPI sender,UUID groupID, UUID transactionID, UUID sessionID, int amt) | ||
988 | { | ||
989 | GroupAccountTransactionsReplyPacket GATRP = | ||
990 | (GroupAccountTransactionsReplyPacket)PacketPool.Instance.GetPacket( | ||
991 | PacketType.GroupAccountTransactionsReply); | ||
992 | |||
993 | GATRP.AgentData = new GroupAccountTransactionsReplyPacket.AgentDataBlock(); | ||
994 | GATRP.AgentData.AgentID = sender.AgentId; | ||
995 | GATRP.AgentData.GroupID = groupID; | ||
996 | GATRP.MoneyData = new GroupAccountTransactionsReplyPacket.MoneyDataBlock(); | ||
997 | GATRP.MoneyData.CurrentInterval = 0; | ||
998 | GATRP.MoneyData.IntervalDays = 7; | ||
999 | GATRP.MoneyData.RequestID = transactionID; | ||
1000 | GATRP.MoneyData.StartDate = Utils.StringToBytes(DateTime.Today.ToString()); | ||
1001 | GATRP.HistoryData = new GroupAccountTransactionsReplyPacket.HistoryDataBlock[1]; | ||
1002 | GroupAccountTransactionsReplyPacket.HistoryDataBlock History = new GroupAccountTransactionsReplyPacket.HistoryDataBlock(); | ||
1003 | History.Amount = 0; | ||
1004 | History.Item = Utils.StringToBytes(""); | ||
1005 | History.Time = Utils.StringToBytes(""); | ||
1006 | History.Type = 0; | ||
1007 | History.User = Utils.StringToBytes(""); | ||
1008 | GATRP.HistoryData[0] = History; | ||
1009 | OutPacket(GATRP, ThrottleOutPacketType.Task); | ||
1010 | } | ||
808 | 1011 | ||
809 | /// <summary> | 1012 | /// <summary> |
810 | /// Send the region heightmap to the client | 1013 | /// Send the region heightmap to the client |
@@ -4537,6 +4740,25 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4537 | AddLocalPacketHandler(PacketType.AvatarInterestsUpdate, HandleAvatarInterestsUpdate); | 4740 | AddLocalPacketHandler(PacketType.AvatarInterestsUpdate, HandleAvatarInterestsUpdate); |
4538 | AddLocalPacketHandler(PacketType.GrantUserRights, HandleGrantUserRights); | 4741 | AddLocalPacketHandler(PacketType.GrantUserRights, HandleGrantUserRights); |
4539 | AddLocalPacketHandler(PacketType.PlacesQuery, HandlePlacesQuery); | 4742 | AddLocalPacketHandler(PacketType.PlacesQuery, HandlePlacesQuery); |
4743 | AddLocalPacketHandler(PacketType.UpdateMuteListEntry, HandleUpdateMuteListEntry); | ||
4744 | AddLocalPacketHandler(PacketType.RemoveMuteListEntry, HandleRemoveMuteListEntry); | ||
4745 | AddLocalPacketHandler(PacketType.UserReport, HandleUserReport); | ||
4746 | AddLocalPacketHandler(PacketType.FindAgent, HandleFindAgent); | ||
4747 | AddLocalPacketHandler(PacketType.TrackAgent, HandleTrackAgent); | ||
4748 | AddLocalPacketHandler(PacketType.GodUpdateRegionInfo, HandleGodUpdateRegionInfoUpdate); | ||
4749 | AddLocalPacketHandler(PacketType.GodlikeMessage, HandleGodlikeMessage); | ||
4750 | AddLocalPacketHandler(PacketType.StateSave, HandleSaveStatePacket); | ||
4751 | AddLocalPacketHandler(PacketType.GroupAccountDetailsRequest, HandleGroupAccountDetailsRequest); | ||
4752 | AddLocalPacketHandler(PacketType.GroupAccountSummaryRequest, HandleGroupAccountSummaryRequest); | ||
4753 | AddLocalPacketHandler(PacketType.GroupAccountTransactionsRequest, HandleGroupTransactionsDetailsRequest); | ||
4754 | AddLocalPacketHandler(PacketType.FreezeUser, HandleFreezeUser); | ||
4755 | AddLocalPacketHandler(PacketType.EjectUser, HandleEjectUser); | ||
4756 | AddLocalPacketHandler(PacketType.ParcelBuyPass, HandleParcelBuyPass); | ||
4757 | AddLocalPacketHandler(PacketType.ParcelGodMarkAsContent, HandleParcelGodMarkAsContent); | ||
4758 | AddLocalPacketHandler(PacketType.GroupActiveProposalsRequest, HandleGroupActiveProposalsRequest); | ||
4759 | AddLocalPacketHandler(PacketType.GroupVoteHistoryRequest, HandleGroupVoteHistoryRequest); | ||
4760 | AddLocalPacketHandler(PacketType.SimWideDeletes, HandleSimWideDeletes); | ||
4761 | AddLocalPacketHandler(PacketType.SendPostcard, HandleSendPostcard); | ||
4540 | } | 4762 | } |
4541 | 4763 | ||
4542 | #region Packet Handlers | 4764 | #region Packet Handlers |
@@ -4632,7 +4854,72 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4632 | 4854 | ||
4633 | return false; | 4855 | return false; |
4634 | } | 4856 | } |
4635 | 4857 | ||
4858 | private bool HandleParcelGodMarkAsContent(IClientAPI client, Packet Packet) | ||
4859 | { | ||
4860 | ParcelGodMarkAsContentPacket ParcelGodMarkAsContent = | ||
4861 | (ParcelGodMarkAsContentPacket)Packet; | ||
4862 | |||
4863 | ParcelGodMark ParcelGodMarkAsContentHandler = OnParcelGodMark; | ||
4864 | if (ParcelGodMarkAsContentHandler != null) | ||
4865 | { | ||
4866 | ParcelGodMarkAsContentHandler(this, | ||
4867 | ParcelGodMarkAsContent.AgentData.AgentID, | ||
4868 | ParcelGodMarkAsContent.ParcelData.LocalID); | ||
4869 | return true; | ||
4870 | } | ||
4871 | return false; | ||
4872 | } | ||
4873 | |||
4874 | private bool HandleFreezeUser(IClientAPI client, Packet Packet) | ||
4875 | { | ||
4876 | FreezeUserPacket FreezeUser = (FreezeUserPacket)Packet; | ||
4877 | |||
4878 | FreezeUserUpdate FreezeUserHandler = OnParcelFreezeUserEvent; | ||
4879 | if (FreezeUserHandler != null) | ||
4880 | { | ||
4881 | FreezeUserHandler(this, | ||
4882 | FreezeUser.AgentData.AgentID, | ||
4883 | FreezeUser.Data.Flags, | ||
4884 | FreezeUser.Data.TargetID); | ||
4885 | return true; | ||
4886 | } | ||
4887 | return false; | ||
4888 | } | ||
4889 | |||
4890 | private bool HandleEjectUser(IClientAPI client, Packet Packet) | ||
4891 | { | ||
4892 | EjectUserPacket EjectUser = | ||
4893 | (EjectUserPacket)Packet; | ||
4894 | |||
4895 | EjectUserUpdate EjectUserHandler = OnParcelEjectUserEvent; | ||
4896 | if (EjectUserHandler != null) | ||
4897 | { | ||
4898 | EjectUserHandler(this, | ||
4899 | EjectUser.AgentData.AgentID, | ||
4900 | EjectUser.Data.Flags, | ||
4901 | EjectUser.Data.TargetID); | ||
4902 | return true; | ||
4903 | } | ||
4904 | return false; | ||
4905 | } | ||
4906 | |||
4907 | private bool HandleParcelBuyPass(IClientAPI client, Packet Packet) | ||
4908 | { | ||
4909 | ParcelBuyPassPacket ParcelBuyPass = | ||
4910 | (ParcelBuyPassPacket)Packet; | ||
4911 | |||
4912 | ParcelBuyPass ParcelBuyPassHandler = OnParcelBuyPass; | ||
4913 | if (ParcelBuyPassHandler != null) | ||
4914 | { | ||
4915 | ParcelBuyPassHandler(this, | ||
4916 | ParcelBuyPass.AgentData.AgentID, | ||
4917 | ParcelBuyPass.ParcelData.LocalID); | ||
4918 | return true; | ||
4919 | } | ||
4920 | return false; | ||
4921 | } | ||
4922 | |||
4636 | private bool HandleParcelBuyRequest(IClientAPI sender, Packet Pack) | 4923 | private bool HandleParcelBuyRequest(IClientAPI sender, Packet Pack) |
4637 | { | 4924 | { |
4638 | ParcelBuyPacket parcel = (ParcelBuyPacket)Pack; | 4925 | ParcelBuyPacket parcel = (ParcelBuyPacket)Pack; |
@@ -4998,7 +5285,37 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
4998 | } | 5285 | } |
4999 | return true; | 5286 | return true; |
5000 | } | 5287 | } |
5001 | 5288 | ||
5289 | private bool HandleFindAgent(IClientAPI client, Packet Packet) | ||
5290 | { | ||
5291 | FindAgentPacket FindAgent = | ||
5292 | (FindAgentPacket)Packet; | ||
5293 | |||
5294 | FindAgentUpdate FindAgentHandler = OnFindAgentEvent; | ||
5295 | if (FindAgentHandler != null) | ||
5296 | { | ||
5297 | FindAgentHandler(this,FindAgent.AgentBlock.Hunter,FindAgent.AgentBlock.Prey); | ||
5298 | return true; | ||
5299 | } | ||
5300 | return false; | ||
5301 | } | ||
5302 | |||
5303 | private bool HandleTrackAgent(IClientAPI client, Packet Packet) | ||
5304 | { | ||
5305 | TrackAgentPacket TrackAgent = | ||
5306 | (TrackAgentPacket)Packet; | ||
5307 | |||
5308 | TrackAgentUpdate TrackAgentHandler = OnTrackAgentEvent; | ||
5309 | if (TrackAgentHandler != null) | ||
5310 | { | ||
5311 | TrackAgentHandler(this, | ||
5312 | TrackAgent.AgentData.AgentID, | ||
5313 | TrackAgent.TargetData.PreyID); | ||
5314 | return true; | ||
5315 | } | ||
5316 | return false; | ||
5317 | } | ||
5318 | |||
5002 | private bool HandlerRezObject(IClientAPI sender, Packet Pack) | 5319 | private bool HandlerRezObject(IClientAPI sender, Packet Pack) |
5003 | { | 5320 | { |
5004 | RezObjectPacket rezPacket = (RezObjectPacket)Pack; | 5321 | RezObjectPacket rezPacket = (RezObjectPacket)Pack; |
@@ -5581,7 +5898,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5581 | 5898 | ||
5582 | if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId) | 5899 | if (avSetStartLocationRequestPacket.AgentData.AgentID == AgentId && avSetStartLocationRequestPacket.AgentData.SessionID == SessionId) |
5583 | { | 5900 | { |
5584 | // Linden Client limitation.. | 5901 | // Linden Client limitation.. |
5585 | if (avSetStartLocationRequestPacket.StartLocationData.LocationPos.X == 255.5f | 5902 | if (avSetStartLocationRequestPacket.StartLocationData.LocationPos.X == 255.5f |
5586 | || avSetStartLocationRequestPacket.StartLocationData.LocationPos.Y == 255.5f) | 5903 | || avSetStartLocationRequestPacket.StartLocationData.LocationPos.Y == 255.5f) |
5587 | { | 5904 | { |
@@ -8268,6 +8585,70 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8268 | 8585 | ||
8269 | return true; | 8586 | return true; |
8270 | } | 8587 | } |
8588 | |||
8589 | private bool HandleGodUpdateRegionInfoUpdate(IClientAPI client, Packet Packet) | ||
8590 | { | ||
8591 | GodUpdateRegionInfoPacket GodUpdateRegionInfo = | ||
8592 | (GodUpdateRegionInfoPacket)Packet; | ||
8593 | |||
8594 | GodUpdateRegionInfoUpdate handlerGodUpdateRegionInfo = OnGodUpdateRegionInfoUpdateEvent; | ||
8595 | if (handlerGodUpdateRegionInfo != null) | ||
8596 | { | ||
8597 | handlerGodUpdateRegionInfo(this, | ||
8598 | GodUpdateRegionInfo.RegionInfo.BillableFactor, | ||
8599 | GodUpdateRegionInfo.RegionInfo.EstateID, | ||
8600 | GodUpdateRegionInfo.RegionInfo.RegionFlags, | ||
8601 | GodUpdateRegionInfo.RegionInfo.SimName, | ||
8602 | GodUpdateRegionInfo.RegionInfo.RedirectGridX, | ||
8603 | GodUpdateRegionInfo.RegionInfo.RedirectGridY); | ||
8604 | return true; | ||
8605 | } | ||
8606 | return false; | ||
8607 | } | ||
8608 | |||
8609 | private bool HandleSimWideDeletes(IClientAPI client, Packet Packet) | ||
8610 | { | ||
8611 | SimWideDeletesPacket SimWideDeletesRequest = | ||
8612 | (SimWideDeletesPacket)Packet; | ||
8613 | SimWideDeletesDelegate handlerSimWideDeletesRequest = OnSimWideDeletes; | ||
8614 | if (handlerSimWideDeletesRequest != null) | ||
8615 | { | ||
8616 | handlerSimWideDeletesRequest(this, SimWideDeletesRequest.AgentData.AgentID,(int)SimWideDeletesRequest.DataBlock.Flags,SimWideDeletesRequest.DataBlock.TargetID); | ||
8617 | return true; | ||
8618 | } | ||
8619 | return false; | ||
8620 | } | ||
8621 | |||
8622 | private bool HandleGodlikeMessage(IClientAPI client, Packet Packet) | ||
8623 | { | ||
8624 | GodlikeMessagePacket GodlikeMessage = | ||
8625 | (GodlikeMessagePacket)Packet; | ||
8626 | |||
8627 | GodlikeMessage handlerGodlikeMessage = onGodlikeMessageEvent; | ||
8628 | if (handlerGodlikeMessage != null) | ||
8629 | { | ||
8630 | handlerGodlikeMessage(this, | ||
8631 | GodlikeMessage.MethodData.Invoice, | ||
8632 | GodlikeMessage.MethodData.Method, | ||
8633 | GodlikeMessage.ParamList[0].Parameter); | ||
8634 | return true; | ||
8635 | } | ||
8636 | return false; | ||
8637 | } | ||
8638 | |||
8639 | private bool HandleSaveStatePacket(IClientAPI client, Packet Packet) | ||
8640 | { | ||
8641 | StateSavePacket SaveStateMessage = | ||
8642 | (StateSavePacket)Packet; | ||
8643 | SaveStateHandler handlerSaveStatePacket = OnSaveStateEvent; | ||
8644 | if (handlerSaveStatePacket != null) | ||
8645 | { | ||
8646 | handlerSaveStatePacket(this,SaveStateMessage.AgentData.AgentID); | ||
8647 | return true; | ||
8648 | } | ||
8649 | return false; | ||
8650 | } | ||
8651 | |||
8271 | private bool HandleGodKickUser(IClientAPI sender, Packet Pack) | 8652 | private bool HandleGodKickUser(IClientAPI sender, Packet Pack) |
8272 | { | 8653 | { |
8273 | GodKickUserPacket gkupack = (GodKickUserPacket)Pack; | 8654 | GodKickUserPacket gkupack = (GodKickUserPacket)Pack; |
@@ -8618,6 +8999,76 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8618 | } | 8999 | } |
8619 | return true; | 9000 | return true; |
8620 | } | 9001 | } |
9002 | |||
9003 | private bool HandleUpdateMuteListEntry(IClientAPI client, Packet Packet) | ||
9004 | { | ||
9005 | UpdateMuteListEntryPacket UpdateMuteListEntry = | ||
9006 | (UpdateMuteListEntryPacket)Packet; | ||
9007 | MuteListEntryUpdate handlerUpdateMuteListEntry = OnUpdateMuteListEntryEvent; | ||
9008 | if (handlerUpdateMuteListEntry != null) | ||
9009 | { | ||
9010 | handlerUpdateMuteListEntry(this, UpdateMuteListEntry.MuteData.MuteID, | ||
9011 | Utils.BytesToString(UpdateMuteListEntry.MuteData.MuteName), | ||
9012 | UpdateMuteListEntry.MuteData.MuteType, | ||
9013 | UpdateMuteListEntry.AgentData.AgentID); | ||
9014 | return true; | ||
9015 | } | ||
9016 | return false; | ||
9017 | } | ||
9018 | |||
9019 | private bool HandleRemoveMuteListEntry(IClientAPI client, Packet Packet) | ||
9020 | { | ||
9021 | RemoveMuteListEntryPacket RemoveMuteListEntry = | ||
9022 | (RemoveMuteListEntryPacket)Packet; | ||
9023 | MuteListEntryRemove handlerRemoveMuteListEntry = OnRemoveMuteListEntryEvent; | ||
9024 | if (handlerRemoveMuteListEntry != null) | ||
9025 | { | ||
9026 | handlerRemoveMuteListEntry(this, | ||
9027 | RemoveMuteListEntry.MuteData.MuteID, | ||
9028 | Utils.BytesToString(RemoveMuteListEntry.MuteData.MuteName), | ||
9029 | RemoveMuteListEntry.AgentData.AgentID); | ||
9030 | return true; | ||
9031 | } | ||
9032 | return false; | ||
9033 | } | ||
9034 | |||
9035 | private bool HandleUserReport(IClientAPI client, Packet Packet) | ||
9036 | { | ||
9037 | UserReportPacket UserReport = | ||
9038 | (UserReportPacket)Packet; | ||
9039 | |||
9040 | NewUserReport handlerUserReport = OnUserReportEvent; | ||
9041 | if (handlerUserReport != null) | ||
9042 | { | ||
9043 | handlerUserReport(this, | ||
9044 | Utils.BytesToString(UserReport.ReportData.AbuseRegionName), | ||
9045 | UserReport.ReportData.AbuserID, | ||
9046 | UserReport.ReportData.Category, | ||
9047 | UserReport.ReportData.CheckFlags, | ||
9048 | Utils.BytesToString(UserReport.ReportData.Details), | ||
9049 | UserReport.ReportData.ObjectID, | ||
9050 | UserReport.ReportData.Position, | ||
9051 | UserReport.ReportData.ReportType, | ||
9052 | UserReport.ReportData.ScreenshotID, | ||
9053 | Utils.BytesToString(UserReport.ReportData.Summary), | ||
9054 | UserReport.AgentData.AgentID); | ||
9055 | return true; | ||
9056 | } | ||
9057 | return false; | ||
9058 | } | ||
9059 | |||
9060 | private bool HandleSendPostcard(IClientAPI client, Packet packet) | ||
9061 | { | ||
9062 | SendPostcardPacket SendPostcard = | ||
9063 | (SendPostcardPacket)packet; | ||
9064 | SendPostcard handlerSendPostcard = OnSendPostcard; | ||
9065 | if (handlerSendPostcard != null) | ||
9066 | { | ||
9067 | handlerSendPostcard(this); | ||
9068 | return true; | ||
9069 | } | ||
9070 | return false; | ||
9071 | } | ||
8621 | 9072 | ||
8622 | private bool HandleUseCircuitCode(IClientAPI sender, Packet Pack) | 9073 | private bool HandleUseCircuitCode(IClientAPI sender, Packet Pack) |
8623 | { | 9074 | { |
@@ -8887,7 +9338,72 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
8887 | return true; | 9338 | return true; |
8888 | 9339 | ||
8889 | } | 9340 | } |
8890 | 9341 | ||
9342 | private bool HandleGroupVoteHistoryRequest(IClientAPI client, Packet Packet) | ||
9343 | { | ||
9344 | GroupVoteHistoryRequestPacket GroupVoteHistoryRequest = | ||
9345 | (GroupVoteHistoryRequestPacket)Packet; | ||
9346 | GroupVoteHistoryRequest handlerGroupVoteHistoryRequest = OnGroupVoteHistoryRequest; | ||
9347 | if (handlerGroupVoteHistoryRequest != null) | ||
9348 | { | ||
9349 | handlerGroupVoteHistoryRequest(this, GroupVoteHistoryRequest.AgentData.AgentID,GroupVoteHistoryRequest.AgentData.SessionID,GroupVoteHistoryRequest.GroupData.GroupID,GroupVoteHistoryRequest.TransactionData.TransactionID); | ||
9350 | return true; | ||
9351 | } | ||
9352 | return false; | ||
9353 | } | ||
9354 | |||
9355 | private bool HandleGroupActiveProposalsRequest(IClientAPI client, Packet Packet) | ||
9356 | { | ||
9357 | GroupActiveProposalsRequestPacket GroupActiveProposalsRequest = | ||
9358 | (GroupActiveProposalsRequestPacket)Packet; | ||
9359 | GroupActiveProposalsRequest handlerGroupActiveProposalsRequest = OnGroupActiveProposalsRequest; | ||
9360 | if (handlerGroupActiveProposalsRequest != null) | ||
9361 | { | ||
9362 | handlerGroupActiveProposalsRequest(this, GroupActiveProposalsRequest.AgentData.AgentID,GroupActiveProposalsRequest.AgentData.SessionID,GroupActiveProposalsRequest.GroupData.GroupID,GroupActiveProposalsRequest.TransactionData.TransactionID); | ||
9363 | return true; | ||
9364 | } | ||
9365 | return false; | ||
9366 | } | ||
9367 | |||
9368 | private bool HandleGroupAccountDetailsRequest(IClientAPI client, Packet Packet) | ||
9369 | { | ||
9370 | GroupAccountDetailsRequestPacket GroupAccountDetailsRequest = | ||
9371 | (GroupAccountDetailsRequestPacket)Packet; | ||
9372 | GroupAccountDetailsRequest handlerGroupAccountDetailsRequest = OnGroupAccountDetailsRequest; | ||
9373 | if (handlerGroupAccountDetailsRequest != null) | ||
9374 | { | ||
9375 | handlerGroupAccountDetailsRequest(this, GroupAccountDetailsRequest.AgentData.AgentID,GroupAccountDetailsRequest.AgentData.GroupID,GroupAccountDetailsRequest.MoneyData.RequestID,GroupAccountDetailsRequest.AgentData.SessionID); | ||
9376 | return true; | ||
9377 | } | ||
9378 | return false; | ||
9379 | } | ||
9380 | |||
9381 | private bool HandleGroupAccountSummaryRequest(IClientAPI client, Packet Packet) | ||
9382 | { | ||
9383 | GroupAccountSummaryRequestPacket GroupAccountSummaryRequest = | ||
9384 | (GroupAccountSummaryRequestPacket)Packet; | ||
9385 | GroupAccountSummaryRequest handlerGroupAccountSummaryRequest = OnGroupAccountSummaryRequest; | ||
9386 | if (handlerGroupAccountSummaryRequest != null) | ||
9387 | { | ||
9388 | handlerGroupAccountSummaryRequest(this, GroupAccountSummaryRequest.AgentData.AgentID,GroupAccountSummaryRequest.AgentData.GroupID); | ||
9389 | return true; | ||
9390 | } | ||
9391 | return false; | ||
9392 | } | ||
9393 | |||
9394 | private bool HandleGroupTransactionsDetailsRequest(IClientAPI client, Packet Packet) | ||
9395 | { | ||
9396 | GroupAccountTransactionsRequestPacket GroupAccountTransactionsRequest = | ||
9397 | (GroupAccountTransactionsRequestPacket)Packet; | ||
9398 | GroupAccountTransactionsRequest handlerGroupAccountTransactionsRequest = OnGroupAccountTransactionsRequest; | ||
9399 | if (handlerGroupAccountTransactionsRequest != null) | ||
9400 | { | ||
9401 | handlerGroupAccountTransactionsRequest(this, GroupAccountTransactionsRequest.AgentData.AgentID,GroupAccountTransactionsRequest.AgentData.GroupID,GroupAccountTransactionsRequest.MoneyData.RequestID,GroupAccountTransactionsRequest.AgentData.SessionID); | ||
9402 | return true; | ||
9403 | } | ||
9404 | return false; | ||
9405 | } | ||
9406 | |||
8891 | private bool HandleGroupTitlesRequest(IClientAPI sender, Packet Pack) | 9407 | private bool HandleGroupTitlesRequest(IClientAPI sender, Packet Pack) |
8892 | { | 9408 | { |
8893 | GroupTitlesRequestPacket groupTitlesRequest = | 9409 | GroupTitlesRequestPacket groupTitlesRequest = |
@@ -13688,7 +14204,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
13688 | if (handlerGodKickUser != null) | 14204 | if (handlerGodKickUser != null) |
13689 | { | 14205 | { |
13690 | handlerGodKickUser(gkupack.UserInfo.GodID, gkupack.UserInfo.GodSessionID, | 14206 | handlerGodKickUser(gkupack.UserInfo.GodID, gkupack.UserInfo.GodSessionID, |
13691 | gkupack.UserInfo.AgentID, gkupack.UserInfo.KickFlags, gkupack.UserInfo.Reason,gkupack.UserInfo); | 14207 | gkupack.UserInfo.AgentID, gkupack.UserInfo.KickFlags, gkupack.UserInfo.Reason,gkupack.UserInfo); |
13692 | } | 14208 | } |
13693 | } | 14209 | } |
13694 | else | 14210 | else |