aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Land/LandChannel.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Land/LandChannel.cs')
-rw-r--r--OpenSim/Region/CoreModules/World/Land/LandChannel.cs62
1 files changed, 48 insertions, 14 deletions
diff --git a/OpenSim/Region/CoreModules/World/Land/LandChannel.cs b/OpenSim/Region/CoreModules/World/Land/LandChannel.cs
index 73c592d..5ff063b 100644
--- a/OpenSim/Region/CoreModules/World/Land/LandChannel.cs
+++ b/OpenSim/Region/CoreModules/World/Land/LandChannel.cs
@@ -37,26 +37,37 @@ namespace OpenSim.Region.CoreModules.World.Land
37 { 37 {
38 #region Constants 38 #region Constants
39 39
40 public const float BAN_LINE_SAFETY_HEIGHT = 100;
40 //Land types set with flags in ParcelOverlay. 41 //Land types set with flags in ParcelOverlay.
41 //Only one of these can be used. 42 //Only one of these can be used.
42 public const float BAN_LINE_SAFETY_HIEGHT = 100; 43
43 public const byte LAND_FLAG_PROPERTY_BORDER_SOUTH = 128; //Equals 10000000
44 public const byte LAND_FLAG_PROPERTY_BORDER_WEST = 64; //Equals 01000000
45 44
46 //RequestResults (I think these are right, they seem to work): 45 //RequestResults (I think these are right, they seem to work):
47 public const int LAND_RESULT_MULTIPLE = 1; // The request they made contained more than a single peice of land 46 public const int LAND_RESULT_MULTIPLE = 1; // The request they made contained more than a single peice of land
48 public const int LAND_RESULT_SINGLE = 0; // The request they made contained only a single piece of land 47 public const int LAND_RESULT_SINGLE = 0; // The request they made contained only a single piece of land
49 48
50 //ParcelSelectObjects 49 //ParcelSelectObjects
50 public const int LAND_SELECT_OBJECTS_OWNER = 2;
51 public const int LAND_SELECT_OBJECTS_GROUP = 4; 51 public const int LAND_SELECT_OBJECTS_GROUP = 4;
52 public const int LAND_SELECT_OBJECTS_OTHER = 8; 52 public const int LAND_SELECT_OBJECTS_OTHER = 8;
53 public const int LAND_SELECT_OBJECTS_OWNER = 2; 53
54 public const byte LAND_TYPE_IS_BEING_AUCTIONED = 5; //Equals 00000101 54
55 public const byte LAND_TYPE_IS_FOR_SALE = 4; //Equals 00000100 55 public const byte LAND_TYPE_PUBLIC = 0; //Equals 00000000
56 public const byte LAND_TYPE_OWNED_BY_GROUP = 2; //Equals 00000010 56 // types 1 to 7 are exclusive
57 public const byte LAND_TYPE_OWNED_BY_OTHER = 1; //Equals 00000001 57 public const byte LAND_TYPE_OWNED_BY_OTHER = 1; //Equals 00000001
58 public const byte LAND_TYPE_OWNED_BY_GROUP = 2; //Equals 00000010
58 public const byte LAND_TYPE_OWNED_BY_REQUESTER = 3; //Equals 00000011 59 public const byte LAND_TYPE_OWNED_BY_REQUESTER = 3; //Equals 00000011
59 public const byte LAND_TYPE_PUBLIC = 0; //Equals 00000000 60 public const byte LAND_TYPE_IS_FOR_SALE = 4; //Equals 00000100
61 public const byte LAND_TYPE_IS_BEING_AUCTIONED = 5; //Equals 00000101
62 public const byte LAND_TYPE_unused6 = 6;
63 public const byte LAND_TYPE_unused7 = 7;
64 // next are flags
65 public const byte LAND_FLAG_unused8 = 0x08; // this may become excluside in future
66 public const byte LAND_FLAG_HIDEAVATARS = 0x10;
67 public const byte LAND_FLAG_LOCALSOUND = 0x20;
68 public const byte LAND_FLAG_PROPERTY_BORDER_WEST = 0x40; //Equals 01000000
69 public const byte LAND_FLAG_PROPERTY_BORDER_SOUTH = 0x80; //Equals 10000000
70
60 71
61 //These are other constants. Yay! 72 //These are other constants. Yay!
62 public const int START_LAND_LOCAL_ID = 1; 73 public const int START_LAND_LOCAL_ID = 1;
@@ -64,7 +75,7 @@ namespace OpenSim.Region.CoreModules.World.Land
64 #endregion 75 #endregion
65 76
66 private readonly Scene m_scene; 77 private readonly Scene m_scene;
67 private readonly LandManagementModule m_landManagementModule; 78 private readonly LandManagementModule m_landManagementModule;
68 79
69 public LandChannel(Scene scene, LandManagementModule landManagementMod) 80 public LandChannel(Scene scene, LandManagementModule landManagementMod)
70 { 81 {
@@ -80,7 +91,7 @@ namespace OpenSim.Region.CoreModules.World.Land
80 { 91 {
81 return m_landManagementModule.GetLandObject(x_float, y_float); 92 return m_landManagementModule.GetLandObject(x_float, y_float);
82 } 93 }
83 94
84 ILandObject obj = new LandObject(UUID.Zero, false, m_scene); 95 ILandObject obj = new LandObject(UUID.Zero, false, m_scene);
85 obj.LandData.Name = "NO LAND"; 96 obj.LandData.Name = "NO LAND";
86 return obj; 97 return obj;
@@ -95,6 +106,15 @@ namespace OpenSim.Region.CoreModules.World.Land
95 return null; 106 return null;
96 } 107 }
97 108
109 public ILandObject GetLandObject(UUID GlobalID)
110 {
111 if (m_landManagementModule != null)
112 {
113 return m_landManagementModule.GetLandObject(GlobalID);
114 }
115 return null;
116 }
117
98 public ILandObject GetLandObject(Vector3 position) 118 public ILandObject GetLandObject(Vector3 position)
99 { 119 {
100 return GetLandObject(position.X, position.Y); 120 return GetLandObject(position.X, position.Y);
@@ -106,7 +126,7 @@ namespace OpenSim.Region.CoreModules.World.Land
106 { 126 {
107 return m_landManagementModule.GetLandObject(x, y); 127 return m_landManagementModule.GetLandObject(x, y);
108 } 128 }
109 129
110 ILandObject obj = new LandObject(UUID.Zero, false, m_scene); 130 ILandObject obj = new LandObject(UUID.Zero, false, m_scene);
111 obj.LandData.Name = "NO LAND"; 131 obj.LandData.Name = "NO LAND";
112 return obj; 132 return obj;
@@ -121,7 +141,7 @@ namespace OpenSim.Region.CoreModules.World.Land
121 141
122 return new List<ILandObject>(); 142 return new List<ILandObject>();
123 } 143 }
124 144
125 public void Clear(bool setupDefaultParcel) 145 public void Clear(bool setupDefaultParcel)
126 { 146 {
127 if (m_landManagementModule != null) 147 if (m_landManagementModule != null)
@@ -156,6 +176,14 @@ namespace OpenSim.Region.CoreModules.World.Land
156 } 176 }
157 } 177 }
158 178
179 public void SendParcelsOverlay(IClientAPI client)
180 {
181 if (m_landManagementModule != null)
182 {
183 m_landManagementModule.SendParcelOverlay(client);
184 }
185 }
186
159 public void Join(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id) 187 public void Join(int start_x, int start_y, int end_x, int end_y, UUID attempting_user_id)
160 { 188 {
161 if (m_landManagementModule != null) 189 if (m_landManagementModule != null)
@@ -171,7 +199,7 @@ namespace OpenSim.Region.CoreModules.World.Land
171 m_landManagementModule.Subdivide(start_x, start_y, end_x, end_y, attempting_user_id); 199 m_landManagementModule.Subdivide(start_x, start_y, end_x, end_y, attempting_user_id);
172 } 200 }
173 } 201 }
174 202
175 public void ReturnObjectsInParcel(int localID, uint returnType, UUID[] agentIDs, UUID[] taskIDs, IClientAPI remoteClient) 203 public void ReturnObjectsInParcel(int localID, uint returnType, UUID[] agentIDs, UUID[] taskIDs, IClientAPI remoteClient)
176 { 204 {
177 if (m_landManagementModule != null) 205 if (m_landManagementModule != null)
@@ -203,7 +231,13 @@ namespace OpenSim.Region.CoreModules.World.Land
203 m_landManagementModule.setParcelOtherCleanTime(remoteClient, localID, otherCleanTime); 231 m_landManagementModule.setParcelOtherCleanTime(remoteClient, localID, otherCleanTime);
204 } 232 }
205 } 233 }
206 234 public void sendClientInitialLandInfo(IClientAPI remoteClient)
235 {
236 if (m_landManagementModule != null)
237 {
238 m_landManagementModule.sendClientInitialLandInfo(remoteClient);
239 }
240 }
207 #endregion 241 #endregion
208 } 242 }
209} 243}