diff options
-rw-r--r-- | OpenSim/Framework/EventData.cs | 54 | ||||
-rw-r--r-- | OpenSim/Framework/IClientAPI.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | 33 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | 6 |
5 files changed, 102 insertions, 3 deletions
diff --git a/OpenSim/Framework/EventData.cs b/OpenSim/Framework/EventData.cs new file mode 100644 index 0000000..bbca240 --- /dev/null +++ b/OpenSim/Framework/EventData.cs | |||
@@ -0,0 +1,54 @@ | |||
1 | /* | ||
2 | * Copyright (c) Contributors, http://opensimulator.org/ | ||
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions are met: | ||
7 | * * Redistributions of source code must retain the above copyright | ||
8 | * notice, this list of conditions and the following disclaimer. | ||
9 | * * Redistributions in binary form must reproduce the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer in the | ||
11 | * documentation and/or other materials provided with the distribution. | ||
12 | * * Neither the name of the OpenSim Project nor the | ||
13 | * names of its contributors may be used to endorse or promote products | ||
14 | * derived from this software without specific prior written permission. | ||
15 | * | ||
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY | ||
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | ||
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | */ | ||
27 | |||
28 | using System; | ||
29 | using OpenMetaverse; | ||
30 | |||
31 | namespace OpenSim.Framework | ||
32 | { | ||
33 | public enum EventDataFlags | ||
34 | { | ||
35 | Mature = 1 << 0, | ||
36 | } | ||
37 | |||
38 | public class EventData | ||
39 | { | ||
40 | public uint eventID; | ||
41 | public string creator; | ||
42 | public string name; | ||
43 | public string category; | ||
44 | public string description; | ||
45 | public DateTime date; | ||
46 | public uint dateUTC; | ||
47 | public uint duration; | ||
48 | public uint cover; | ||
49 | public uint amount; | ||
50 | public string simName; | ||
51 | public Vector3 globalPos; | ||
52 | public uint eventFlags; | ||
53 | } | ||
54 | } | ||
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs index a5ce06c..5322dda 100644 --- a/OpenSim/Framework/IClientAPI.cs +++ b/OpenSim/Framework/IClientAPI.cs | |||
@@ -318,6 +318,7 @@ namespace OpenSim.Framework | |||
318 | public delegate void DirLandQuery(IClientAPI remoteClient, UUID queryID, uint queryFlags, uint searchType, int price, int area, int queryStart); | 318 | public delegate void DirLandQuery(IClientAPI remoteClient, UUID queryID, uint queryFlags, uint searchType, int price, int area, int queryStart); |
319 | public delegate void DirPopularQuery(IClientAPI remoteClient, UUID queryID, uint queryFlags); | 319 | public delegate void DirPopularQuery(IClientAPI remoteClient, UUID queryID, uint queryFlags); |
320 | public delegate void DirClassifiedQuery(IClientAPI remoteClient, UUID queryID, string queryText, uint queryFlags, uint category, int queryStart); | 320 | public delegate void DirClassifiedQuery(IClientAPI remoteClient, UUID queryID, string queryText, uint queryFlags, uint category, int queryStart); |
321 | public delegate void EventInfoRequest(IClientAPI remoteClient, uint eventID); | ||
321 | 322 | ||
322 | public delegate void MapItemRequest(IClientAPI remoteClient, uint flags, uint EstateID, bool godlike, uint itemtype, ulong regionhandle); | 323 | public delegate void MapItemRequest(IClientAPI remoteClient, uint flags, uint EstateID, bool godlike, uint itemtype, ulong regionhandle); |
323 | 324 | ||
@@ -617,7 +618,8 @@ namespace OpenSim.Framework | |||
617 | event DirLandQuery OnDirLandQuery; | 618 | event DirLandQuery OnDirLandQuery; |
618 | event DirPopularQuery OnDirPopularQuery; | 619 | event DirPopularQuery OnDirPopularQuery; |
619 | event DirClassifiedQuery OnDirClassifiedQuery; | 620 | event DirClassifiedQuery OnDirClassifiedQuery; |
620 | 621 | event EventInfoRequest OnEventInfoRequest; | |
622 | |||
621 | event MapItemRequest OnMapItemRequest; | 623 | event MapItemRequest OnMapItemRequest; |
622 | 624 | ||
623 | 625 | ||
@@ -862,7 +864,7 @@ namespace OpenSim.Framework | |||
862 | void SendDirClassifiedReply(UUID queryID, DirClassifiedReplyData[] data); | 864 | void SendDirClassifiedReply(UUID queryID, DirClassifiedReplyData[] data); |
863 | void SendDirLandReply(UUID queryID, DirLandReplyData[] data); | 865 | void SendDirLandReply(UUID queryID, DirLandReplyData[] data); |
864 | void SendDirPopularReply(UUID queryID, DirPopularReplyData[] data); | 866 | void SendDirPopularReply(UUID queryID, DirPopularReplyData[] data); |
865 | 867 | void SendEventInfoReply(EventData info); | |
866 | 868 | ||
867 | void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags); | 869 | void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags); |
868 | 870 | ||
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs index 4714bb3..ed4ac60 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs | |||
@@ -1001,6 +1001,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
1001 | public event DirLandQuery OnDirLandQuery; | 1001 | public event DirLandQuery OnDirLandQuery; |
1002 | public event DirPopularQuery OnDirPopularQuery; | 1002 | public event DirPopularQuery OnDirPopularQuery; |
1003 | public event DirClassifiedQuery OnDirClassifiedQuery; | 1003 | public event DirClassifiedQuery OnDirClassifiedQuery; |
1004 | public event EventInfoRequest OnEventInfoRequest; | ||
1004 | 1005 | ||
1005 | public event MapItemRequest OnMapItemRequest; | 1006 | public event MapItemRequest OnMapItemRequest; |
1006 | 1007 | ||
@@ -6405,6 +6406,13 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
6405 | dirClassifiedQueryPacket.QueryData.QueryStart); | 6406 | dirClassifiedQueryPacket.QueryData.QueryStart); |
6406 | } | 6407 | } |
6407 | break; | 6408 | break; |
6409 | case PacketType.EventInfoRequest: | ||
6410 | EventInfoRequestPacket eventInfoRequestPacket = (EventInfoRequestPacket)Pack; | ||
6411 | if (OnEventInfoRequest != null) | ||
6412 | { | ||
6413 | OnEventInfoRequest(this, eventInfoRequestPacket.EventData.EventID); | ||
6414 | } | ||
6415 | break; | ||
6408 | 6416 | ||
6409 | default: | 6417 | default: |
6410 | m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString()); | 6418 | m_log.Warn("[CLIENT]: unhandled packet " + Pack.ToString()); |
@@ -7073,6 +7081,31 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
7073 | OutPacket(packet, ThrottleOutPacketType.Task); | 7081 | OutPacket(packet, ThrottleOutPacketType.Task); |
7074 | } | 7082 | } |
7075 | 7083 | ||
7084 | public void SendEventInfoReply(EventData data) | ||
7085 | { | ||
7086 | EventInfoReplyPacket packet = (EventInfoReplyPacket)PacketPool.Instance.GetPacket(PacketType.EventInfoReply); | ||
7087 | |||
7088 | packet.AgentData = new EventInfoReplyPacket.AgentDataBlock(); | ||
7089 | packet.AgentData.AgentID = AgentId; | ||
7090 | |||
7091 | packet.EventData = new EventInfoReplyPacket.EventDataBlock(); | ||
7092 | packet.EventData.EventID = data.eventID; | ||
7093 | packet.EventData.Creator = Utils.StringToBytes(data.creator); | ||
7094 | packet.EventData.Name = Utils.StringToBytes(data.name); | ||
7095 | packet.EventData.Category = Utils.StringToBytes(data.category); | ||
7096 | packet.EventData.Desc = Utils.StringToBytes(data.description); | ||
7097 | packet.EventData.Date = Utils.StringToBytes(data.date.ToString()); | ||
7098 | packet.EventData.DateUTC = data.dateUTC; | ||
7099 | packet.EventData.Duration = data.duration; | ||
7100 | packet.EventData.Cover = data.cover; | ||
7101 | packet.EventData.Amount = data.amount; | ||
7102 | packet.EventData.SimName = Utils.StringToBytes(data.simName); | ||
7103 | packet.EventData.GlobalPos = new Vector3d(data.globalPos); | ||
7104 | packet.EventData.EventFlags = data.eventFlags; | ||
7105 | |||
7106 | OutPacket(packet, ThrottleOutPacketType.Task); | ||
7107 | } | ||
7108 | |||
7076 | public void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags) | 7109 | public void SendMapItemReply(mapItemReply[] replies, uint mapitemtype, uint flags) |
7077 | { | 7110 | { |
7078 | MapItemReplyPacket mirplk = new MapItemReplyPacket(); | 7111 | MapItemReplyPacket mirplk = new MapItemReplyPacket(); |
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs index acad64a..a2d626e 100644 --- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs | |||
@@ -329,9 +329,11 @@ namespace OpenSim.Region.Environment.Modules.World.NPC | |||
329 | public event DirLandQuery OnDirLandQuery; | 329 | public event DirLandQuery OnDirLandQuery; |
330 | public event DirPopularQuery OnDirPopularQuery; | 330 | public event DirPopularQuery OnDirPopularQuery; |
331 | public event DirClassifiedQuery OnDirClassifiedQuery; | 331 | public event DirClassifiedQuery OnDirClassifiedQuery; |
332 | public event EventInfoRequest OnEventInfoRequest; | ||
332 | 333 | ||
333 | public event MapItemRequest OnMapItemRequest; | 334 | public event MapItemRequest OnMapItemRequest; |
334 | 335 | ||
336 | |||
335 | #pragma warning restore 67 | 337 | #pragma warning restore 67 |
336 | 338 | ||
337 | #endregion | 339 | #endregion |
@@ -934,5 +936,9 @@ namespace OpenSim.Region.Environment.Modules.World.NPC | |||
934 | public void KillEndDone() | 936 | public void KillEndDone() |
935 | { | 937 | { |
936 | } | 938 | } |
939 | |||
940 | public void SendEventInfoReply (EventData info) | ||
941 | { | ||
942 | } | ||
937 | } | 943 | } |
938 | } | 944 | } |
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs index ef78cb5..61791fb 100644 --- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs +++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs | |||
@@ -224,7 +224,7 @@ namespace OpenSim.Region.Examples.SimpleModule | |||
224 | public event DirLandQuery OnDirLandQuery; | 224 | public event DirLandQuery OnDirLandQuery; |
225 | public event DirPopularQuery OnDirPopularQuery; | 225 | public event DirPopularQuery OnDirPopularQuery; |
226 | public event DirClassifiedQuery OnDirClassifiedQuery; | 226 | public event DirClassifiedQuery OnDirClassifiedQuery; |
227 | 227 | public event EventInfoRequest OnEventInfoRequest; | |
228 | 228 | ||
229 | public event MapItemRequest OnMapItemRequest; | 229 | public event MapItemRequest OnMapItemRequest; |
230 | 230 | ||
@@ -932,5 +932,9 @@ namespace OpenSim.Region.Examples.SimpleModule | |||
932 | public void KillEndDone() | 932 | public void KillEndDone() |
933 | { | 933 | { |
934 | } | 934 | } |
935 | |||
936 | public void SendEventInfoReply (EventData info) | ||
937 | { | ||
938 | } | ||
935 | } | 939 | } |
936 | } | 940 | } |