diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/ClientView.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/ClientView.cs | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index 065e5e0..41e44a5 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs | |||
@@ -516,6 +516,8 @@ namespace OpenSim.Region.ClientStack | |||
516 | 516 | ||
517 | public event UUIDNameRequest OnNameFromUUIDRequest; | 517 | public event UUIDNameRequest OnNameFromUUIDRequest; |
518 | 518 | ||
519 | public event ParcelAccessListRequest OnParcelAccessListRequest; | ||
520 | public event ParcelAccessListUpdateRequest OnParcelAccessListUpdateRequest; | ||
519 | public event ParcelPropertiesRequest OnParcelPropertiesRequest; | 521 | public event ParcelPropertiesRequest OnParcelPropertiesRequest; |
520 | public event ParcelDivideRequest OnParcelDivideRequest; | 522 | public event ParcelDivideRequest OnParcelDivideRequest; |
521 | public event ParcelJoinRequest OnParcelJoinRequest; | 523 | public event ParcelJoinRequest OnParcelJoinRequest; |
@@ -3117,8 +3119,33 @@ namespace OpenSim.Region.ClientStack | |||
3117 | break; | 3119 | break; |
3118 | 3120 | ||
3119 | #region Parcel related packets | 3121 | #region Parcel related packets |
3122 | case PacketType.ParcelAccessListRequest: | ||
3123 | ParcelAccessListRequestPacket requestPacket = (ParcelAccessListRequestPacket)Pack; | ||
3124 | if (OnParcelAccessListRequest != null) | ||
3125 | { | ||
3126 | OnParcelAccessListRequest(requestPacket.AgentData.AgentID, requestPacket.AgentData.SessionID, requestPacket.Data.Flags, requestPacket.Data.SequenceID, requestPacket.Data.LocalID,this); | ||
3127 | } | ||
3128 | break; | ||
3120 | 3129 | ||
3130 | case PacketType.ParcelAccessListUpdate: | ||
3131 | ParcelAccessListUpdatePacket updatePacket = (ParcelAccessListUpdatePacket)Pack; | ||
3132 | List<ParcelManager.ParcelAccessEntry> entries = new List<ParcelManager.ParcelAccessEntry>(); | ||
3133 | foreach (ParcelAccessListUpdatePacket.ListBlock block in updatePacket.List) | ||
3134 | { | ||
3135 | ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); | ||
3136 | entry.AgentID = block.ID; | ||
3137 | entry.Flags = (ParcelManager.AccessList)block.Flags; | ||
3138 | entry.Time = new DateTime(); | ||
3139 | entries.Add(entry); | ||
3140 | } | ||
3141 | |||
3142 | if (OnParcelAccessListUpdateRequest != null) | ||
3143 | { | ||
3144 | OnParcelAccessListUpdateRequest(updatePacket.AgentData.AgentID, updatePacket.AgentData.SessionID, updatePacket.Data.Flags, updatePacket.Data.LocalID, entries, this); | ||
3145 | } | ||
3146 | break; | ||
3121 | case PacketType.ParcelPropertiesRequest: | 3147 | case PacketType.ParcelPropertiesRequest: |
3148 | |||
3122 | ParcelPropertiesRequestPacket propertiesRequest = (ParcelPropertiesRequestPacket) Pack; | 3149 | ParcelPropertiesRequestPacket propertiesRequest = (ParcelPropertiesRequestPacket) Pack; |
3123 | if (OnParcelPropertiesRequest != null) | 3150 | if (OnParcelPropertiesRequest != null) |
3124 | { | 3151 | { |
@@ -3151,10 +3178,10 @@ namespace OpenSim.Region.ClientStack | |||
3151 | } | 3178 | } |
3152 | break; | 3179 | break; |
3153 | case PacketType.ParcelPropertiesUpdate: | 3180 | case PacketType.ParcelPropertiesUpdate: |
3154 | ParcelPropertiesUpdatePacket updatePacket = (ParcelPropertiesUpdatePacket) Pack; | 3181 | ParcelPropertiesUpdatePacket parcelPropertiesPacket = (ParcelPropertiesUpdatePacket) Pack; |
3155 | if (OnParcelPropertiesUpdateRequest != null) | 3182 | if (OnParcelPropertiesUpdateRequest != null) |
3156 | { | 3183 | { |
3157 | OnParcelPropertiesUpdateRequest(updatePacket, this); | 3184 | OnParcelPropertiesUpdateRequest(parcelPropertiesPacket, this); |
3158 | } | 3185 | } |
3159 | break; | 3186 | break; |
3160 | case PacketType.ParcelSelectObjects: | 3187 | case PacketType.ParcelSelectObjects: |
@@ -3283,10 +3310,7 @@ namespace OpenSim.Region.ClientStack | |||
3283 | // TODO: handle this packet | 3310 | // TODO: handle this packet |
3284 | MainLog.Instance.Warn("CLIENT", "unhandled AgentDataUpdateRequest packet"); | 3311 | MainLog.Instance.Warn("CLIENT", "unhandled AgentDataUpdateRequest packet"); |
3285 | break; | 3312 | break; |
3286 | case PacketType.ParcelAccessListRequest: | 3313 | |
3287 | // TODO: handle this packet | ||
3288 | MainLog.Instance.Warn("CLIENT", "unhandled ParcelAccessListRequest packet"); | ||
3289 | break; | ||
3290 | case PacketType.ParcelDwellRequest: | 3314 | case PacketType.ParcelDwellRequest: |
3291 | // TODO: handle this packet | 3315 | // TODO: handle this packet |
3292 | MainLog.Instance.Warn("CLIENT", "unhandled ParcelDwellRequest packet"); | 3316 | MainLog.Instance.Warn("CLIENT", "unhandled ParcelDwellRequest packet"); |