aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorSean Dague2008-07-23 15:50:32 +0000
committerSean Dague2008-07-23 15:50:32 +0000
commit090159defc731fca252b2b3520364712760f0f4e (patch)
tree78fe9dde5a9902d67aa6d1690cf575d778d154f2
parentSend Animation data for other avatars to new users joining the region (tested... (diff)
downloadopensim-SC-090159defc731fca252b2b3520364712760f0f4e.zip
opensim-SC-090159defc731fca252b2b3520364712760f0f4e.tar.gz
opensim-SC-090159defc731fca252b2b3520364712760f0f4e.tar.bz2
opensim-SC-090159defc731fca252b2b3520364712760f0f4e.tar.xz
refactored LandData to use properties, and cleaned up the naming on
the properties a bit to be more consistant with other objects (having things like .Name .Description, etc).
Diffstat (limited to '')
-rw-r--r--OpenSim/Data/MSSQL/MSSQLDataStore.cs132
-rw-r--r--OpenSim/Data/MySQL/MySQLDataStore.cs140
-rw-r--r--OpenSim/Data/SQLite/SQLiteRegionData.cs138
-rw-r--r--OpenSim/Framework/LandData.cs478
-rw-r--r--OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs74
-rw-r--r--OpenSim/Region/DataSnapshot/LandSnapshot.cs28
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Voice/AsterixVoice/AsteriskVoiceModule.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Voice/SIPVoice/SIPVoiceModule.cs2
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandChannel.cs4
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs80
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandObject.cs132
-rw-r--r--OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs12
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs18
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs64
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs64
16 files changed, 847 insertions, 523 deletions
diff --git a/OpenSim/Data/MSSQL/MSSQLDataStore.cs b/OpenSim/Data/MSSQL/MSSQLDataStore.cs
index 569268e..0ae879a 100644
--- a/OpenSim/Data/MSSQL/MSSQLDataStore.cs
+++ b/OpenSim/Data/MSSQL/MSSQLDataStore.cs
@@ -470,7 +470,7 @@ namespace OpenSim.Data.MSSQL
470 DataTable land = m_landTable; 470 DataTable land = m_landTable;
471 DataTable landaccesslist = m_landAccessListTable; 471 DataTable landaccesslist = m_landAccessListTable;
472 472
473 DataRow landRow = land.Rows.Find(parcel.landData.globalID.UUID); 473 DataRow landRow = land.Rows.Find(parcel.landData.GlobalID.UUID);
474 if (landRow == null) 474 if (landRow == null)
475 { 475 {
476 landRow = land.NewRow(); 476 landRow = land.NewRow();
@@ -486,14 +486,14 @@ namespace OpenSim.Data.MSSQL
486 SqlCommand cmd = 486 SqlCommand cmd =
487 new SqlCommand("delete from landaccesslist where LandUUID=@LandUUID", m_connection)) 487 new SqlCommand("delete from landaccesslist where LandUUID=@LandUUID", m_connection))
488 { 488 {
489 cmd.Parameters.Add(new SqlParameter("@LandUUID", parcel.landData.globalID.UUID)); 489 cmd.Parameters.Add(new SqlParameter("@LandUUID", parcel.landData.GlobalID.UUID));
490 cmd.ExecuteNonQuery(); 490 cmd.ExecuteNonQuery();
491 } 491 }
492 492
493 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.parcelAccessList) 493 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.ParcelAccessList)
494 { 494 {
495 DataRow newAccessRow = landaccesslist.NewRow(); 495 DataRow newAccessRow = landaccesslist.NewRow();
496 fillLandAccessRow(newAccessRow, entry, parcel.landData.globalID); 496 fillLandAccessRow(newAccessRow, entry, parcel.landData.GlobalID);
497 landaccesslist.Rows.Add(newAccessRow); 497 landaccesslist.Rows.Add(newAccessRow);
498 } 498 }
499 499
@@ -518,11 +518,11 @@ namespace OpenSim.Data.MSSQL
518 foreach (DataRow rawDataLand in rawDataForRegion) 518 foreach (DataRow rawDataLand in rawDataForRegion)
519 { 519 {
520 LandData newLand = buildLandData(rawDataLand); 520 LandData newLand = buildLandData(rawDataLand);
521 string accessListSearchExp = "LandUUID = '" + newLand.globalID.UUID + "'"; 521 string accessListSearchExp = "LandUUID = '" + newLand.GlobalID.UUID + "'";
522 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp); 522 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp);
523 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList) 523 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList)
524 { 524 {
525 newLand.parcelAccessList.Add(buildLandAccessData(rawDataLandAccess)); 525 newLand.ParcelAccessList.Add(buildLandAccessData(rawDataLandAccess));
526 } 526 }
527 527
528 landDataForRegion.Add(newLand); 528 landDataForRegion.Add(newLand);
@@ -992,43 +992,43 @@ namespace OpenSim.Data.MSSQL
992 { 992 {
993 LandData newData = new LandData(); 993 LandData newData = new LandData();
994 994
995 newData.globalID = new LLUUID((String)row["UUID"]); 995 newData.GlobalID = new LLUUID((String)row["UUID"]);
996 newData.localID = Convert.ToInt32(row["LocalLandID"]); 996 newData.LocalID = Convert.ToInt32(row["LocalLandID"]);
997 997
998 // Bitmap is a byte[512] 998 // Bitmap is a byte[512]
999 newData.landBitmapByteArray = (Byte[])row["Bitmap"]; 999 newData.Bitmap = (Byte[])row["Bitmap"];
1000 1000
1001 newData.landName = (String)row["Name"]; 1001 newData.Name = (String)row["Name"];
1002 newData.landDesc = (String)row["Description"]; 1002 newData.Description = (String)row["Description"];
1003 newData.ownerID = (String)row["OwnerUUID"]; 1003 newData.OwnerID = (String)row["OwnerUUID"];
1004 newData.isGroupOwned = Convert.ToBoolean(row["IsGroupOwned"]); 1004 newData.IsGroupOwned = Convert.ToBoolean(row["IsGroupOwned"]);
1005 newData.area = Convert.ToInt32(row["Area"]); 1005 newData.Area = Convert.ToInt32(row["Area"]);
1006 newData.auctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented 1006 newData.AuctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented
1007 newData.category = (Parcel.ParcelCategory)Convert.ToInt32(row["Category"]); 1007 newData.Category = (Parcel.ParcelCategory)Convert.ToInt32(row["Category"]);
1008 //Enum libsecondlife.Parcel.ParcelCategory 1008 //Enum libsecondlife.Parcel.ParcelCategory
1009 newData.claimDate = Convert.ToInt32(row["ClaimDate"]); 1009 newData.ClaimDate = Convert.ToInt32(row["ClaimDate"]);
1010 newData.claimPrice = Convert.ToInt32(row["ClaimPrice"]); 1010 newData.ClaimPrice = Convert.ToInt32(row["ClaimPrice"]);
1011 newData.groupID = new LLUUID((String)row["GroupUUID"]); 1011 newData.GroupID = new LLUUID((String)row["GroupUUID"]);
1012 newData.salePrice = Convert.ToInt32(row["SalePrice"]); 1012 newData.SalePrice = Convert.ToInt32(row["SalePrice"]);
1013 newData.landStatus = (Parcel.ParcelStatus)Convert.ToInt32(row["LandStatus"]); 1013 newData.Status = (Parcel.ParcelStatus)Convert.ToInt32(row["LandStatus"]);
1014 //Enum. libsecondlife.Parcel.ParcelStatus 1014 //Enum. libsecondlife.Parcel.ParcelStatus
1015 newData.landFlags = Convert.ToUInt32(row["LandFlags"]); 1015 newData.Flags = Convert.ToUInt32(row["LandFlags"]);
1016 newData.landingType = Convert.ToByte(row["LandingType"]); 1016 newData.LandingType = Convert.ToByte(row["LandingType"]);
1017 newData.mediaAutoScale = Convert.ToByte(row["MediaAutoScale"]); 1017 newData.MediaAutoScale = Convert.ToByte(row["MediaAutoScale"]);
1018 newData.mediaID = new LLUUID((String)row["MediaTextureUUID"]); 1018 newData.MediaID = new LLUUID((String)row["MediaTextureUUID"]);
1019 newData.mediaURL = (String)row["MediaURL"]; 1019 newData.MediaURL = (String)row["MediaURL"];
1020 newData.musicURL = (String)row["MusicURL"]; 1020 newData.MusicURL = (String)row["MusicURL"];
1021 newData.passHours = Convert.ToSingle(row["PassHours"]); 1021 newData.PassHours = Convert.ToSingle(row["PassHours"]);
1022 newData.passPrice = Convert.ToInt32(row["PassPrice"]); 1022 newData.PassPrice = Convert.ToInt32(row["PassPrice"]);
1023 newData.snapshotID = (String)row["SnapshotUUID"]; 1023 newData.SnapshotID = (String)row["SnapshotUUID"];
1024 1024
1025 newData.userLocation = 1025 newData.UserLocation =
1026 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]), 1026 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]),
1027 Convert.ToSingle(row["UserLocationZ"])); 1027 Convert.ToSingle(row["UserLocationZ"]));
1028 newData.userLookAt = 1028 newData.UserLookAt =
1029 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]), 1029 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]),
1030 Convert.ToSingle(row["UserLookAtZ"])); 1030 Convert.ToSingle(row["UserLookAtZ"]));
1031 newData.parcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); 1031 newData.ParcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
1032 1032
1033 return newData; 1033 return newData;
1034 } 1034 }
@@ -1186,40 +1186,40 @@ namespace OpenSim.Data.MSSQL
1186 /// <param name="regionUUID"></param> 1186 /// <param name="regionUUID"></param>
1187 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID) 1187 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID)
1188 { 1188 {
1189 row["UUID"] = land.globalID.UUID; 1189 row["UUID"] = land.GlobalID.UUID;
1190 row["RegionUUID"] = regionUUID.UUID; 1190 row["RegionUUID"] = regionUUID.UUID;
1191 row["LocalLandID"] = land.localID; 1191 row["LocalLandID"] = land.LocalID;
1192 1192
1193 // Bitmap is a byte[512] 1193 // Bitmap is a byte[512]
1194 row["Bitmap"] = land.landBitmapByteArray; 1194 row["Bitmap"] = land.Bitmap;
1195 1195
1196 row["Name"] = land.landName; 1196 row["Name"] = land.Name;
1197 row["Description"] = land.landDesc; 1197 row["Description"] = land.Description;
1198 row["OwnerUUID"] = land.ownerID.UUID; 1198 row["OwnerUUID"] = land.OwnerID.UUID;
1199 row["IsGroupOwned"] = land.isGroupOwned; 1199 row["IsGroupOwned"] = land.IsGroupOwned;
1200 row["Area"] = land.area; 1200 row["Area"] = land.Area;
1201 row["AuctionID"] = land.auctionID; //Unemplemented 1201 row["AuctionID"] = land.AuctionID; //Unemplemented
1202 row["Category"] = land.category; //Enum libsecondlife.Parcel.ParcelCategory 1202 row["Category"] = land.Category; //Enum libsecondlife.Parcel.ParcelCategory
1203 row["ClaimDate"] = land.claimDate; 1203 row["ClaimDate"] = land.ClaimDate;
1204 row["ClaimPrice"] = land.claimPrice; 1204 row["ClaimPrice"] = land.ClaimPrice;
1205 row["GroupUUID"] = land.groupID.UUID; 1205 row["GroupUUID"] = land.GroupID.UUID;
1206 row["SalePrice"] = land.salePrice; 1206 row["SalePrice"] = land.SalePrice;
1207 row["LandStatus"] = land.landStatus; //Enum. libsecondlife.Parcel.ParcelStatus 1207 row["LandStatus"] = land.Status; //Enum. libsecondlife.Parcel.ParcelStatus
1208 row["LandFlags"] = land.landFlags; 1208 row["LandFlags"] = land.Flags;
1209 row["LandingType"] = land.landingType; 1209 row["LandingType"] = land.LandingType;
1210 row["MediaAutoScale"] = land.mediaAutoScale; 1210 row["MediaAutoScale"] = land.MediaAutoScale;
1211 row["MediaTextureUUID"] = land.mediaID.UUID; 1211 row["MediaTextureUUID"] = land.MediaID.UUID;
1212 row["MediaURL"] = land.mediaURL; 1212 row["MediaURL"] = land.MediaURL;
1213 row["MusicURL"] = land.musicURL; 1213 row["MusicURL"] = land.MusicURL;
1214 row["PassHours"] = land.passHours; 1214 row["PassHours"] = land.PassHours;
1215 row["PassPrice"] = land.passPrice; 1215 row["PassPrice"] = land.PassPrice;
1216 row["SnapshotUUID"] = land.snapshotID.UUID; 1216 row["SnapshotUUID"] = land.SnapshotID.UUID;
1217 row["UserLocationX"] = land.userLocation.X; 1217 row["UserLocationX"] = land.UserLocation.X;
1218 row["UserLocationY"] = land.userLocation.Y; 1218 row["UserLocationY"] = land.UserLocation.Y;
1219 row["UserLocationZ"] = land.userLocation.Z; 1219 row["UserLocationZ"] = land.UserLocation.Z;
1220 row["UserLookAtX"] = land.userLookAt.X; 1220 row["UserLookAtX"] = land.UserLookAt.X;
1221 row["UserLookAtY"] = land.userLookAt.Y; 1221 row["UserLookAtY"] = land.UserLookAt.Y;
1222 row["UserLookAtZ"] = land.userLookAt.Z; 1222 row["UserLookAtZ"] = land.UserLookAt.Z;
1223 } 1223 }
1224 1224
1225 /// <summary> 1225 /// <summary>
diff --git a/OpenSim/Data/MySQL/MySQLDataStore.cs b/OpenSim/Data/MySQL/MySQLDataStore.cs
index 74f15cb..2ace4b1 100644
--- a/OpenSim/Data/MySQL/MySQLDataStore.cs
+++ b/OpenSim/Data/MySQL/MySQLDataStore.cs
@@ -692,7 +692,7 @@ namespace OpenSim.Data.MySQL
692 DataTable land = m_landTable; 692 DataTable land = m_landTable;
693 DataTable landaccesslist = m_landAccessListTable; 693 DataTable landaccesslist = m_landAccessListTable;
694 694
695 DataRow landRow = land.Rows.Find(Util.ToRawUuidString(parcel.landData.globalID)); 695 DataRow landRow = land.Rows.Find(Util.ToRawUuidString(parcel.landData.GlobalID));
696 if (landRow == null) 696 if (landRow == null)
697 { 697 {
698 landRow = land.NewRow(); 698 landRow = land.NewRow();
@@ -708,14 +708,14 @@ namespace OpenSim.Data.MySQL
708 MySqlCommand cmd = 708 MySqlCommand cmd =
709 new MySqlCommand("delete from landaccesslist where LandUUID=?LandUUID", m_connection)) 709 new MySqlCommand("delete from landaccesslist where LandUUID=?LandUUID", m_connection))
710 { 710 {
711 cmd.Parameters.Add(new MySqlParameter("?LandUUID", Util.ToRawUuidString(parcel.landData.globalID))); 711 cmd.Parameters.Add(new MySqlParameter("?LandUUID", Util.ToRawUuidString(parcel.landData.GlobalID)));
712 cmd.ExecuteNonQuery(); 712 cmd.ExecuteNonQuery();
713 } 713 }
714 714
715 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.parcelAccessList) 715 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.ParcelAccessList)
716 { 716 {
717 DataRow newAccessRow = landaccesslist.NewRow(); 717 DataRow newAccessRow = landaccesslist.NewRow();
718 fillLandAccessRow(newAccessRow, entry, parcel.landData.globalID); 718 fillLandAccessRow(newAccessRow, entry, parcel.landData.GlobalID);
719 landaccesslist.Rows.Add(newAccessRow); 719 landaccesslist.Rows.Add(newAccessRow);
720 } 720 }
721 721
@@ -787,11 +787,11 @@ namespace OpenSim.Data.MySQL
787 foreach (DataRow rawDataLand in rawDataForRegion) 787 foreach (DataRow rawDataLand in rawDataForRegion)
788 { 788 {
789 LandData newLand = buildLandData(rawDataLand); 789 LandData newLand = buildLandData(rawDataLand);
790 string accessListSearchExp = "LandUUID = '" + Util.ToRawUuidString(newLand.globalID) + "'"; 790 string accessListSearchExp = "LandUUID = '" + Util.ToRawUuidString(newLand.GlobalID) + "'";
791 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp); 791 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp);
792 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList) 792 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList)
793 { 793 {
794 newLand.parcelAccessList.Add(buildLandAccessData(rawDataLandAccess)); 794 newLand.ParcelAccessList.Add(buildLandAccessData(rawDataLandAccess));
795 } 795 }
796 796
797 landDataForRegion.Add(newLand); 797 landDataForRegion.Add(newLand);
@@ -1319,59 +1319,59 @@ namespace OpenSim.Data.MySQL
1319 { 1319 {
1320 LandData newData = new LandData(); 1320 LandData newData = new LandData();
1321 1321
1322 newData.globalID = new LLUUID((String) row["UUID"]); 1322 newData.GlobalID = new LLUUID((String) row["UUID"]);
1323 newData.localID = Convert.ToInt32(row["LocalLandID"]); 1323 newData.LocalID = Convert.ToInt32(row["LocalLandID"]);
1324 1324
1325 // Bitmap is a byte[512] 1325 // Bitmap is a byte[512]
1326 newData.landBitmapByteArray = (Byte[]) row["Bitmap"]; 1326 newData.Bitmap = (Byte[]) row["Bitmap"];
1327 1327
1328 newData.landName = (String) row["Name"]; 1328 newData.Name = (String) row["Name"];
1329 newData.landDesc = (String) row["Description"]; 1329 newData.Description = (String) row["Description"];
1330 newData.ownerID = (String) row["OwnerUUID"]; 1330 newData.OwnerID = (String) row["OwnerUUID"];
1331 newData.isGroupOwned = Convert.ToBoolean(row["IsGroupOwned"]); 1331 newData.IsGroupOwned = Convert.ToBoolean(row["IsGroupOwned"]);
1332 newData.area = Convert.ToInt32(row["Area"]); 1332 newData.Area = Convert.ToInt32(row["Area"]);
1333 newData.auctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented 1333 newData.AuctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented
1334 newData.category = (Parcel.ParcelCategory) Convert.ToInt32(row["Category"]); 1334 newData.Category = (Parcel.ParcelCategory) Convert.ToInt32(row["Category"]);
1335 //Enum libsecondlife.Parcel.ParcelCategory 1335 //Enum libsecondlife.Parcel.ParcelCategory
1336 newData.claimDate = Convert.ToInt32(row["ClaimDate"]); 1336 newData.ClaimDate = Convert.ToInt32(row["ClaimDate"]);
1337 newData.claimPrice = Convert.ToInt32(row["ClaimPrice"]); 1337 newData.ClaimPrice = Convert.ToInt32(row["ClaimPrice"]);
1338 newData.groupID = new LLUUID((String) row["GroupUUID"]); 1338 newData.GroupID = new LLUUID((String) row["GroupUUID"]);
1339 newData.salePrice = Convert.ToInt32(row["SalePrice"]); 1339 newData.SalePrice = Convert.ToInt32(row["SalePrice"]);
1340 newData.landStatus = (Parcel.ParcelStatus) Convert.ToInt32(row["LandStatus"]); 1340 newData.Status = (Parcel.ParcelStatus) Convert.ToInt32(row["LandStatus"]);
1341 //Enum. libsecondlife.Parcel.ParcelStatus 1341 //Enum. libsecondlife.Parcel.ParcelStatus
1342 newData.landFlags = Convert.ToUInt32(row["LandFlags"]); 1342 newData.Flags = Convert.ToUInt32(row["LandFlags"]);
1343 newData.landingType = Convert.ToByte(row["LandingType"]); 1343 newData.LandingType = Convert.ToByte(row["LandingType"]);
1344 newData.mediaAutoScale = Convert.ToByte(row["MediaAutoScale"]); 1344 newData.MediaAutoScale = Convert.ToByte(row["MediaAutoScale"]);
1345 newData.mediaID = new LLUUID((String) row["MediaTextureUUID"]); 1345 newData.MediaID = new LLUUID((String) row["MediaTextureUUID"]);
1346 newData.mediaURL = (String) row["MediaURL"]; 1346 newData.MediaURL = (String) row["MediaURL"];
1347 newData.musicURL = (String) row["MusicURL"]; 1347 newData.MusicURL = (String) row["MusicURL"];
1348 newData.passHours = Convert.ToSingle(row["PassHours"]); 1348 newData.PassHours = Convert.ToSingle(row["PassHours"]);
1349 newData.passPrice = Convert.ToInt32(row["PassPrice"]); 1349 newData.PassPrice = Convert.ToInt32(row["PassPrice"]);
1350 LLUUID authedbuyer = LLUUID.Zero; 1350 LLUUID authedbuyer = LLUUID.Zero;
1351 LLUUID snapshotID = LLUUID.Zero; 1351 LLUUID snapshotID = LLUUID.Zero;
1352 1352
1353 Helpers.TryParse((string)row["AuthBuyerID"], out authedbuyer); 1353 Helpers.TryParse((string)row["AuthBuyerID"], out authedbuyer);
1354 Helpers.TryParse((string)row["SnapshotUUID"], out snapshotID); 1354 Helpers.TryParse((string)row["SnapshotUUID"], out snapshotID);
1355 1355
1356 newData.authBuyerID = authedbuyer; 1356 newData.AuthBuyerID = authedbuyer;
1357 newData.snapshotID = snapshotID; 1357 newData.SnapshotID = snapshotID;
1358 try 1358 try
1359 { 1359 {
1360 newData.userLocation = 1360 newData.UserLocation =
1361 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]), 1361 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]),
1362 Convert.ToSingle(row["UserLocationZ"])); 1362 Convert.ToSingle(row["UserLocationZ"]));
1363 newData.userLookAt = 1363 newData.UserLookAt =
1364 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]), 1364 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]),
1365 Convert.ToSingle(row["UserLookAtZ"])); 1365 Convert.ToSingle(row["UserLookAtZ"]));
1366 } 1366 }
1367 catch (InvalidCastException) 1367 catch (InvalidCastException)
1368 { 1368 {
1369 newData.userLocation = LLVector3.Zero; 1369 newData.UserLocation = LLVector3.Zero;
1370 newData.userLookAt = LLVector3.Zero; 1370 newData.UserLookAt = LLVector3.Zero;
1371 m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.landName); 1371 m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.Name);
1372 } 1372 }
1373 1373
1374 newData.parcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); 1374 newData.ParcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
1375 1375
1376 return newData; 1376 return newData;
1377 } 1377 }
@@ -1576,41 +1576,41 @@ namespace OpenSim.Data.MySQL
1576 /// <param name="regionUUID"></param> 1576 /// <param name="regionUUID"></param>
1577 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID) 1577 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID)
1578 { 1578 {
1579 row["UUID"] = Util.ToRawUuidString(land.globalID); 1579 row["UUID"] = Util.ToRawUuidString(land.GlobalID);
1580 row["RegionUUID"] = Util.ToRawUuidString(regionUUID); 1580 row["RegionUUID"] = Util.ToRawUuidString(regionUUID);
1581 row["LocalLandID"] = land.localID; 1581 row["LocalLandID"] = land.LocalID;
1582 1582
1583 // Bitmap is a byte[512] 1583 // Bitmap is a byte[512]
1584 row["Bitmap"] = land.landBitmapByteArray; 1584 row["Bitmap"] = land.Bitmap;
1585 1585
1586 row["Name"] = land.landName; 1586 row["Name"] = land.Name;
1587 row["Description"] = land.landDesc; 1587 row["Description"] = land.Description;
1588 row["OwnerUUID"] = Util.ToRawUuidString(land.ownerID); 1588 row["OwnerUUID"] = Util.ToRawUuidString(land.OwnerID);
1589 row["IsGroupOwned"] = land.isGroupOwned; 1589 row["IsGroupOwned"] = land.IsGroupOwned;
1590 row["Area"] = land.area; 1590 row["Area"] = land.Area;
1591 row["AuctionID"] = land.auctionID; //Unemplemented 1591 row["AuctionID"] = land.AuctionID; //Unemplemented
1592 row["Category"] = land.category; //Enum libsecondlife.Parcel.ParcelCategory 1592 row["Category"] = land.Category; //Enum libsecondlife.Parcel.ParcelCategory
1593 row["ClaimDate"] = land.claimDate; 1593 row["ClaimDate"] = land.ClaimDate;
1594 row["ClaimPrice"] = land.claimPrice; 1594 row["ClaimPrice"] = land.ClaimPrice;
1595 row["GroupUUID"] = Util.ToRawUuidString(land.groupID); 1595 row["GroupUUID"] = Util.ToRawUuidString(land.GroupID);
1596 row["SalePrice"] = land.salePrice; 1596 row["SalePrice"] = land.SalePrice;
1597 row["LandStatus"] = land.landStatus; //Enum. libsecondlife.Parcel.ParcelStatus 1597 row["LandStatus"] = land.Status; //Enum. libsecondlife.Parcel.ParcelStatus
1598 row["LandFlags"] = land.landFlags; 1598 row["LandFlags"] = land.Flags;
1599 row["LandingType"] = land.landingType; 1599 row["LandingType"] = land.LandingType;
1600 row["MediaAutoScale"] = land.mediaAutoScale; 1600 row["MediaAutoScale"] = land.MediaAutoScale;
1601 row["MediaTextureUUID"] = Util.ToRawUuidString(land.mediaID); 1601 row["MediaTextureUUID"] = Util.ToRawUuidString(land.MediaID);
1602 row["MediaURL"] = land.mediaURL; 1602 row["MediaURL"] = land.MediaURL;
1603 row["MusicURL"] = land.musicURL; 1603 row["MusicURL"] = land.MusicURL;
1604 row["PassHours"] = land.passHours; 1604 row["PassHours"] = land.PassHours;
1605 row["PassPrice"] = land.passPrice; 1605 row["PassPrice"] = land.PassPrice;
1606 row["SnapshotUUID"] = Util.ToRawUuidString(land.snapshotID); 1606 row["SnapshotUUID"] = Util.ToRawUuidString(land.SnapshotID);
1607 row["UserLocationX"] = land.userLocation.X; 1607 row["UserLocationX"] = land.UserLocation.X;
1608 row["UserLocationY"] = land.userLocation.Y; 1608 row["UserLocationY"] = land.UserLocation.Y;
1609 row["UserLocationZ"] = land.userLocation.Z; 1609 row["UserLocationZ"] = land.UserLocation.Z;
1610 row["UserLookAtX"] = land.userLookAt.X; 1610 row["UserLookAtX"] = land.UserLookAt.X;
1611 row["UserLookAtY"] = land.userLookAt.Y; 1611 row["UserLookAtY"] = land.UserLookAt.Y;
1612 row["UserLookAtZ"] = land.userLookAt.Z; 1612 row["UserLookAtZ"] = land.UserLookAt.Z;
1613 row["AuthBuyerID"] = land.authBuyerID; 1613 row["AuthBuyerID"] = land.AuthBuyerID;
1614 } 1614 }
1615 1615
1616 /// <summary> 1616 /// <summary>
diff --git a/OpenSim/Data/SQLite/SQLiteRegionData.cs b/OpenSim/Data/SQLite/SQLiteRegionData.cs
index 6e30060..0f9323b 100644
--- a/OpenSim/Data/SQLite/SQLiteRegionData.cs
+++ b/OpenSim/Data/SQLite/SQLiteRegionData.cs
@@ -533,7 +533,7 @@ namespace OpenSim.Data.SQLite
533 DataTable land = ds.Tables["land"]; 533 DataTable land = ds.Tables["land"];
534 DataTable landaccesslist = ds.Tables["landaccesslist"]; 534 DataTable landaccesslist = ds.Tables["landaccesslist"];
535 535
536 DataRow landRow = land.Rows.Find(Util.ToRawUuidString(parcel.landData.globalID)); 536 DataRow landRow = land.Rows.Find(Util.ToRawUuidString(parcel.landData.GlobalID));
537 if (landRow == null) 537 if (landRow == null)
538 { 538 {
539 landRow = land.NewRow(); 539 landRow = land.NewRow();
@@ -548,14 +548,14 @@ namespace OpenSim.Data.SQLite
548 // I know this caused someone issues before, but OpenSim is unusable if we leave this stuff around 548 // I know this caused someone issues before, but OpenSim is unusable if we leave this stuff around
549 using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn)) 549 using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn))
550 { 550 {
551 cmd.Parameters.Add(new SqliteParameter(":LandUUID", Util.ToRawUuidString(parcel.landData.globalID))); 551 cmd.Parameters.Add(new SqliteParameter(":LandUUID", Util.ToRawUuidString(parcel.landData.GlobalID)));
552 cmd.ExecuteNonQuery(); 552 cmd.ExecuteNonQuery();
553 } 553 }
554 554
555 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.parcelAccessList) 555 foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.ParcelAccessList)
556 { 556 {
557 DataRow newAccessRow = landaccesslist.NewRow(); 557 DataRow newAccessRow = landaccesslist.NewRow();
558 fillLandAccessRow(newAccessRow, entry, parcel.landData.globalID); 558 fillLandAccessRow(newAccessRow, entry, parcel.landData.GlobalID);
559 landaccesslist.Rows.Add(newAccessRow); 559 landaccesslist.Rows.Add(newAccessRow);
560 } 560 }
561 } 561 }
@@ -580,11 +580,11 @@ namespace OpenSim.Data.SQLite
580 foreach (DataRow rawDataLand in rawDataForRegion) 580 foreach (DataRow rawDataLand in rawDataForRegion)
581 { 581 {
582 LandData newLand = buildLandData(rawDataLand); 582 LandData newLand = buildLandData(rawDataLand);
583 string accessListSearchExp = "LandUUID = '" + Util.ToRawUuidString(newLand.globalID) + "'"; 583 string accessListSearchExp = "LandUUID = '" + Util.ToRawUuidString(newLand.GlobalID) + "'";
584 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp); 584 DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp);
585 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList) 585 foreach (DataRow rawDataLandAccess in rawDataForLandAccessList)
586 { 586 {
587 newLand.parcelAccessList.Add(buildLandAccessData(rawDataLandAccess)); 587 newLand.ParcelAccessList.Add(buildLandAccessData(rawDataLandAccess));
588 } 588 }
589 589
590 landDataForRegion.Add(newLand); 590 landDataForRegion.Add(newLand);
@@ -1033,53 +1033,53 @@ namespace OpenSim.Data.SQLite
1033 { 1033 {
1034 LandData newData = new LandData(); 1034 LandData newData = new LandData();
1035 1035
1036 newData.globalID = new LLUUID((String) row["UUID"]); 1036 newData.GlobalID = new LLUUID((String) row["UUID"]);
1037 newData.localID = Convert.ToInt32(row["LocalLandID"]); 1037 newData.LocalID = Convert.ToInt32(row["LocalLandID"]);
1038 1038
1039 // Bitmap is a byte[512] 1039 // Bitmap is a byte[512]
1040 newData.landBitmapByteArray = (Byte[]) row["Bitmap"]; 1040 newData.Bitmap = (Byte[]) row["Bitmap"];
1041 1041
1042 newData.landName = (String) row["Name"]; 1042 newData.Name = (String) row["Name"];
1043 newData.landDesc = (String) row["Desc"]; 1043 newData.Description = (String) row["Desc"];
1044 newData.ownerID = (String) row["OwnerUUID"]; 1044 newData.OwnerID = (String) row["OwnerUUID"];
1045 newData.isGroupOwned = (Boolean) row["IsGroupOwned"]; 1045 newData.IsGroupOwned = (Boolean) row["IsGroupOwned"];
1046 newData.area = Convert.ToInt32(row["Area"]); 1046 newData.Area = Convert.ToInt32(row["Area"]);
1047 newData.auctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented 1047 newData.AuctionID = Convert.ToUInt32(row["AuctionID"]); //Unemplemented
1048 newData.category = (Parcel.ParcelCategory) Convert.ToInt32(row["Category"]); 1048 newData.Category = (Parcel.ParcelCategory) Convert.ToInt32(row["Category"]);
1049 //Enum libsecondlife.Parcel.ParcelCategory 1049 //Enum libsecondlife.Parcel.ParcelCategory
1050 newData.claimDate = Convert.ToInt32(row["ClaimDate"]); 1050 newData.ClaimDate = Convert.ToInt32(row["ClaimDate"]);
1051 newData.claimPrice = Convert.ToInt32(row["ClaimPrice"]); 1051 newData.ClaimPrice = Convert.ToInt32(row["ClaimPrice"]);
1052 newData.groupID = new LLUUID((String) row["GroupUUID"]); 1052 newData.GroupID = new LLUUID((String) row["GroupUUID"]);
1053 newData.salePrice = Convert.ToInt32(row["SalePrice"]); 1053 newData.SalePrice = Convert.ToInt32(row["SalePrice"]);
1054 newData.landStatus = (Parcel.ParcelStatus) Convert.ToInt32(row["LandStatus"]); 1054 newData.Status = (Parcel.ParcelStatus) Convert.ToInt32(row["LandStatus"]);
1055 //Enum. libsecondlife.Parcel.ParcelStatus 1055 //Enum. libsecondlife.Parcel.ParcelStatus
1056 newData.landFlags = Convert.ToUInt32(row["LandFlags"]); 1056 newData.Flags = Convert.ToUInt32(row["LandFlags"]);
1057 newData.landingType = (Byte) row["LandingType"]; 1057 newData.LandingType = (Byte) row["LandingType"];
1058 newData.mediaAutoScale = (Byte) row["MediaAutoScale"]; 1058 newData.MediaAutoScale = (Byte) row["MediaAutoScale"];
1059 newData.mediaID = new LLUUID((String) row["MediaTextureUUID"]); 1059 newData.MediaID = new LLUUID((String) row["MediaTextureUUID"]);
1060 newData.mediaURL = (String) row["MediaURL"]; 1060 newData.MediaURL = (String) row["MediaURL"];
1061 newData.musicURL = (String) row["MusicURL"]; 1061 newData.MusicURL = (String) row["MusicURL"];
1062 newData.passHours = Convert.ToSingle(row["PassHours"]); 1062 newData.PassHours = Convert.ToSingle(row["PassHours"]);
1063 newData.passPrice = Convert.ToInt32(row["PassPrice"]); 1063 newData.PassPrice = Convert.ToInt32(row["PassPrice"]);
1064 newData.snapshotID = (String) row["SnapshotUUID"]; 1064 newData.SnapshotID = (String) row["SnapshotUUID"];
1065 try 1065 try
1066 { 1066 {
1067 1067
1068 newData.userLocation = 1068 newData.UserLocation =
1069 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]), 1069 new LLVector3(Convert.ToSingle(row["UserLocationX"]), Convert.ToSingle(row["UserLocationY"]),
1070 Convert.ToSingle(row["UserLocationZ"])); 1070 Convert.ToSingle(row["UserLocationZ"]));
1071 newData.userLookAt = 1071 newData.UserLookAt =
1072 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]), 1072 new LLVector3(Convert.ToSingle(row["UserLookAtX"]), Convert.ToSingle(row["UserLookAtY"]),
1073 Convert.ToSingle(row["UserLookAtZ"])); 1073 Convert.ToSingle(row["UserLookAtZ"]));
1074 1074
1075 } 1075 }
1076 catch (InvalidCastException) 1076 catch (InvalidCastException)
1077 { 1077 {
1078 m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.landName); 1078 m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.Name);
1079 newData.userLocation = LLVector3.Zero; 1079 newData.UserLocation = LLVector3.Zero;
1080 newData.userLookAt = LLVector3.Zero; 1080 newData.UserLookAt = LLVector3.Zero;
1081 } 1081 }
1082 newData.parcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); 1082 newData.ParcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
1083 LLUUID authBuyerID = LLUUID.Zero; 1083 LLUUID authBuyerID = LLUUID.Zero;
1084 1084
1085 try 1085 try
@@ -1270,41 +1270,41 @@ namespace OpenSim.Data.SQLite
1270 /// <param name="regionUUID"></param> 1270 /// <param name="regionUUID"></param>
1271 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID) 1271 private static void fillLandRow(DataRow row, LandData land, LLUUID regionUUID)
1272 { 1272 {
1273 row["UUID"] = Util.ToRawUuidString(land.globalID); 1273 row["UUID"] = Util.ToRawUuidString(land.GlobalID);
1274 row["RegionUUID"] = Util.ToRawUuidString(regionUUID); 1274 row["RegionUUID"] = Util.ToRawUuidString(regionUUID);
1275 row["LocalLandID"] = land.localID; 1275 row["LocalLandID"] = land.LocalID;
1276 1276
1277 // Bitmap is a byte[512] 1277 // Bitmap is a byte[512]
1278 row["Bitmap"] = land.landBitmapByteArray; 1278 row["Bitmap"] = land.Bitmap;
1279 1279
1280 row["Name"] = land.landName; 1280 row["Name"] = land.Name;
1281 row["Desc"] = land.landDesc; 1281 row["Desc"] = land.Description;
1282 row["OwnerUUID"] = Util.ToRawUuidString(land.ownerID); 1282 row["OwnerUUID"] = Util.ToRawUuidString(land.OwnerID);
1283 row["IsGroupOwned"] = land.isGroupOwned; 1283 row["IsGroupOwned"] = land.IsGroupOwned;
1284 row["Area"] = land.area; 1284 row["Area"] = land.Area;
1285 row["AuctionID"] = land.auctionID; //Unemplemented 1285 row["AuctionID"] = land.AuctionID; //Unemplemented
1286 row["Category"] = land.category; //Enum libsecondlife.Parcel.ParcelCategory 1286 row["Category"] = land.Category; //Enum libsecondlife.Parcel.ParcelCategory
1287 row["ClaimDate"] = land.claimDate; 1287 row["ClaimDate"] = land.ClaimDate;
1288 row["ClaimPrice"] = land.claimPrice; 1288 row["ClaimPrice"] = land.ClaimPrice;
1289 row["GroupUUID"] = Util.ToRawUuidString(land.groupID); 1289 row["GroupUUID"] = Util.ToRawUuidString(land.GroupID);
1290 row["SalePrice"] = land.salePrice; 1290 row["SalePrice"] = land.SalePrice;
1291 row["LandStatus"] = land.landStatus; //Enum. libsecondlife.Parcel.ParcelStatus 1291 row["LandStatus"] = land.Status; //Enum. libsecondlife.Parcel.ParcelStatus
1292 row["LandFlags"] = land.landFlags; 1292 row["LandFlags"] = land.Flags;
1293 row["LandingType"] = land.landingType; 1293 row["LandingType"] = land.LandingType;
1294 row["MediaAutoScale"] = land.mediaAutoScale; 1294 row["MediaAutoScale"] = land.MediaAutoScale;
1295 row["MediaTextureUUID"] = Util.ToRawUuidString(land.mediaID); 1295 row["MediaTextureUUID"] = Util.ToRawUuidString(land.MediaID);
1296 row["MediaURL"] = land.mediaURL; 1296 row["MediaURL"] = land.MediaURL;
1297 row["MusicURL"] = land.musicURL; 1297 row["MusicURL"] = land.MusicURL;
1298 row["PassHours"] = land.passHours; 1298 row["PassHours"] = land.PassHours;
1299 row["PassPrice"] = land.passPrice; 1299 row["PassPrice"] = land.PassPrice;
1300 row["SnapshotUUID"] = Util.ToRawUuidString(land.snapshotID); 1300 row["SnapshotUUID"] = Util.ToRawUuidString(land.SnapshotID);
1301 row["UserLocationX"] = land.userLocation.X; 1301 row["UserLocationX"] = land.UserLocation.X;
1302 row["UserLocationY"] = land.userLocation.Y; 1302 row["UserLocationY"] = land.UserLocation.Y;
1303 row["UserLocationZ"] = land.userLocation.Z; 1303 row["UserLocationZ"] = land.UserLocation.Z;
1304 row["UserLookAtX"] = land.userLookAt.X; 1304 row["UserLookAtX"] = land.UserLookAt.X;
1305 row["UserLookAtY"] = land.userLookAt.Y; 1305 row["UserLookAtY"] = land.UserLookAt.Y;
1306 row["UserLookAtZ"] = land.userLookAt.Z; 1306 row["UserLookAtZ"] = land.UserLookAt.Z;
1307 row["AuthbuyerID"] = Util.ToRawUuidString(land.authBuyerID); 1307 row["AuthbuyerID"] = Util.ToRawUuidString(land.AuthBuyerID);
1308 } 1308 }
1309 1309
1310 /// <summary> 1310 /// <summary>
diff --git a/OpenSim/Framework/LandData.cs b/OpenSim/Framework/LandData.cs
index 11a4fb4..4553cc3 100644
--- a/OpenSim/Framework/LandData.cs
+++ b/OpenSim/Framework/LandData.cs
@@ -33,103 +33,427 @@ namespace OpenSim.Framework
33{ 33{
34 public class LandData 34 public class LandData
35 { 35 {
36 public LLVector3 AABBMax = new LLVector3(); 36 public LLVector3 _AABBMax = new LLVector3();
37 public LLVector3 AABBMin = new LLVector3(); 37 public LLVector3 _AABBMin = new LLVector3();
38 public int area = 0; 38 public int _area = 0;
39 public uint auctionID = 0; //Unemplemented. If set to 0, not being auctioned 39 public uint _auctionID = 0; //Unemplemented. If set to 0, not being auctioned
40 public LLUUID authBuyerID = LLUUID.Zero; //Unemplemented. Authorized Buyer's UUID 40 public LLUUID _authBuyerID = LLUUID.Zero; //Unemplemented. Authorized Buyer's UUID
41 public Parcel.ParcelCategory category = new Parcel.ParcelCategory(); //Unemplemented. Parcel's chosen category 41 public Parcel.ParcelCategory _category = new Parcel.ParcelCategory(); //Unemplemented. Parcel's chosen category
42 public int claimDate = 0; 42 public int _claimDate = 0;
43 public int claimPrice = 0; //Unemplemented 43 public int _claimPrice = 0; //Unemplemented
44 public LLUUID globalID = LLUUID.Zero; 44 public LLUUID _globalID = LLUUID.Zero;
45 public LLUUID groupID = LLUUID.Zero; //Unemplemented 45 public LLUUID _groupID = LLUUID.Zero; //Unemplemented
46 public int groupPrims = 0; 46 public int _groupPrims = 0;
47 public bool isGroupOwned = false; 47 public bool _isGroupOwned = false;
48 public byte[] landBitmapByteArray = new byte[512]; 48 public byte[] _bitmap = new byte[512];
49 public string landDesc = String.Empty; 49 public string _description = String.Empty;
50 50
51 51
52 public uint landFlags = (uint) Parcel.ParcelFlags.AllowFly | (uint) Parcel.ParcelFlags.AllowLandmark | 52 public uint _flags = (uint) Parcel.ParcelFlags.AllowFly | (uint) Parcel.ParcelFlags.AllowLandmark |
53 (uint) Parcel.ParcelFlags.AllowAllObjectEntry | 53 (uint) Parcel.ParcelFlags.AllowAllObjectEntry |
54 (uint) Parcel.ParcelFlags.AllowDeedToGroup | (uint) Parcel.ParcelFlags.AllowTerraform | 54 (uint) Parcel.ParcelFlags.AllowDeedToGroup | (uint) Parcel.ParcelFlags.AllowTerraform |
55 (uint) Parcel.ParcelFlags.CreateObjects | (uint) Parcel.ParcelFlags.AllowOtherScripts | 55 (uint) Parcel.ParcelFlags.CreateObjects | (uint) Parcel.ParcelFlags.AllowOtherScripts |
56 (uint) Parcel.ParcelFlags.SoundLocal; 56 (uint) Parcel.ParcelFlags.SoundLocal;
57 57
58 public byte landingType = 0; 58 public byte _landingType = 0;
59 public string landName = "Your Parcel"; 59 public string _name = "Your Parcel";
60 public Parcel.ParcelStatus landStatus = Parcel.ParcelStatus.Leased; 60 public Parcel.ParcelStatus _status = Parcel.ParcelStatus.Leased;
61 public int localID = 0; 61 public int _localID = 0;
62 public byte mediaAutoScale = 0; 62 public byte _mediaAutoScale = 0;
63 public LLUUID mediaID = LLUUID.Zero; 63 public LLUUID _mediaID = LLUUID.Zero;
64 64
65 public string mediaURL = String.Empty; 65 public string _mediaURL = String.Empty;
66 public string musicURL = String.Empty; 66 public string _musicURL = String.Empty;
67 public int otherPrims = 0; 67 public int _otherPrims = 0;
68 public LLUUID ownerID = LLUUID.Zero; 68 public LLUUID _ownerID = LLUUID.Zero;
69 public int ownerPrims = 0; 69 public int _ownerPrims = 0;
70 public List<ParcelManager.ParcelAccessEntry> parcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); 70 public List<ParcelManager.ParcelAccessEntry> _parcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
71 public float passHours = 0; 71 public float _passHours = 0;
72 public int passPrice = 0; 72 public int _passPrice = 0;
73 public int salePrice = 0; //Unemeplemented. Parcels price. 73 public int _salePrice = 0; //Unemeplemented. Parcels price.
74 public int selectedPrims = 0; 74 public int _selectedPrims = 0;
75 public int simwideArea = 0; 75 public int _simwideArea = 0;
76 public int simwidePrims = 0; 76 public int _simwidePrims = 0;
77 public LLUUID snapshotID = LLUUID.Zero; 77 public LLUUID _snapshotID = LLUUID.Zero;
78 public LLVector3 userLocation = new LLVector3(); 78 public LLVector3 _userLocation = new LLVector3();
79 public LLVector3 userLookAt = new LLVector3(); 79 public LLVector3 _userLookAt = new LLVector3();
80
81 public LLVector3 AABBMax {
82 get {
83 return _AABBMax;
84 }
85 set {
86 _AABBMax = value;
87 }
88 }
89
90 public LLVector3 AABBMin {
91 get {
92 return _AABBMin;
93 }
94 set {
95 _AABBMin = value;
96 }
97 }
98
99 public int Area {
100 get {
101 return _area;
102 }
103 set {
104 _area = value;
105 }
106 }
107
108 public uint AuctionID {
109 get {
110 return _auctionID;
111 }
112 set {
113 _auctionID = value;
114 }
115 }
116
117 public LLUUID AuthBuyerID {
118 get {
119 return _authBuyerID;
120 }
121 set {
122 _authBuyerID = value;
123 }
124 }
125
126 public libsecondlife.Parcel.ParcelCategory Category {
127 get {
128 return _category;
129 }
130 set {
131 _category = value;
132 }
133 }
134
135 public int ClaimDate {
136 get {
137 return _claimDate;
138 }
139 set {
140 _claimDate = value;
141 }
142 }
143
144 public int ClaimPrice {
145 get {
146 return _claimPrice;
147 }
148 set {
149 _claimPrice = value;
150 }
151 }
152
153 public LLUUID GlobalID {
154 get {
155 return _globalID;
156 }
157 set {
158 _globalID = value;
159 }
160 }
161
162 public LLUUID GroupID {
163 get {
164 return _groupID;
165 }
166 set {
167 _groupID = value;
168 }
169 }
170
171 public int GroupPrims {
172 get {
173 return _groupPrims;
174 }
175 set {
176 _groupPrims = value;
177 }
178 }
179
180 public bool IsGroupOwned {
181 get {
182 return _isGroupOwned;
183 }
184 set {
185 _isGroupOwned = value;
186 }
187 }
188
189 public byte[] Bitmap {
190 get {
191 return _bitmap;
192 }
193 set {
194 _bitmap = value;
195 }
196 }
197
198 public string Description {
199 get {
200 return _description;
201 }
202 set {
203 _description = value;
204 }
205 }
206
207 public uint Flags {
208 get {
209 return _flags;
210 }
211 set {
212 _flags = value;
213 }
214 }
215
216 public byte LandingType {
217 get {
218 return _landingType;
219 }
220 set {
221 _landingType = value;
222 }
223 }
224
225 public string Name {
226 get {
227 return _name;
228 }
229 set {
230 _name = value;
231 }
232 }
233
234 public libsecondlife.Parcel.ParcelStatus Status {
235 get {
236 return _status;
237 }
238 set {
239 _status = value;
240 }
241 }
242
243 public int LocalID {
244 get {
245 return _localID;
246 }
247 set {
248 _localID = value;
249 }
250 }
251
252 public byte MediaAutoScale {
253 get {
254 return _mediaAutoScale;
255 }
256 set {
257 _mediaAutoScale = value;
258 }
259 }
260
261 public LLUUID MediaID {
262 get {
263 return _mediaID;
264 }
265 set {
266 _mediaID = value;
267 }
268 }
269
270 public string MediaURL {
271 get {
272 return _mediaURL;
273 }
274 set {
275 _mediaURL = value;
276 }
277 }
278
279 public string MusicURL {
280 get {
281 return _musicURL;
282 }
283 set {
284 _musicURL = value;
285 }
286 }
287
288 public int OtherPrims {
289 get {
290 return _otherPrims;
291 }
292 set {
293 _otherPrims = value;
294 }
295 }
296
297 public LLUUID OwnerID {
298 get {
299 return _ownerID;
300 }
301 set {
302 _ownerID = value;
303 }
304 }
305
306 public int OwnerPrims {
307 get {
308 return _ownerPrims;
309 }
310 set {
311 _ownerPrims = value;
312 }
313 }
314
315 public List<libsecondlife.ParcelManager.ParcelAccessEntry> ParcelAccessList {
316 get {
317 return _parcelAccessList;
318 }
319 set {
320 _parcelAccessList = value;
321 }
322 }
323
324 public float PassHours {
325 get {
326 return _passHours;
327 }
328 set {
329 _passHours = value;
330 }
331 }
332
333 public int PassPrice {
334 get {
335 return _passPrice;
336 }
337 set {
338 _passPrice = value;
339 }
340 }
341
342 public int SalePrice {
343 get {
344 return _salePrice;
345 }
346 set {
347 _salePrice = value;
348 }
349 }
350
351 public int SelectedPrims {
352 get {
353 return _selectedPrims;
354 }
355 set {
356 _selectedPrims = value;
357 }
358 }
359
360 public int SimwideArea {
361 get {
362 return _simwideArea;
363 }
364 set {
365 _simwideArea = value;
366 }
367 }
368
369 public int SimwidePrims {
370 get {
371 return _simwidePrims;
372 }
373 set {
374 _simwidePrims = value;
375 }
376 }
377
378 public LLUUID SnapshotID {
379 get {
380 return _snapshotID;
381 }
382 set {
383 _snapshotID = value;
384 }
385 }
386
387 public LLVector3 UserLocation {
388 get {
389 return _userLocation;
390 }
391 set {
392 _userLocation = value;
393 }
394 }
395
396 public LLVector3 UserLookAt {
397 get {
398 return _userLookAt;
399 }
400 set {
401 _userLookAt = value;
402 }
403 }
80 404
81 public LandData() 405 public LandData()
82 { 406 {
83 globalID = LLUUID.Random(); 407 _globalID = LLUUID.Random();
84 } 408 }
85 409
86 public LandData Copy() 410 public LandData Copy()
87 { 411 {
88 LandData landData = new LandData(); 412 LandData landData = new LandData();
89 413
90 landData.AABBMax = AABBMax; 414 landData._AABBMax = _AABBMax;
91 landData.AABBMin = AABBMin; 415 landData._AABBMin = _AABBMin;
92 landData.area = area; 416 landData._area = _area;
93 landData.auctionID = auctionID; 417 landData._auctionID = _auctionID;
94 landData.authBuyerID = authBuyerID; 418 landData._authBuyerID = _authBuyerID;
95 landData.category = category; 419 landData._category = _category;
96 landData.claimDate = claimDate; 420 landData._claimDate = _claimDate;
97 landData.claimPrice = claimPrice; 421 landData._claimPrice = _claimPrice;
98 landData.globalID = globalID; 422 landData._globalID = _globalID;
99 landData.groupID = groupID; 423 landData._groupID = _groupID;
100 landData.groupPrims = groupPrims; 424 landData._groupPrims = _groupPrims;
101 landData.otherPrims = otherPrims; 425 landData._otherPrims = _otherPrims;
102 landData.ownerPrims = ownerPrims; 426 landData._ownerPrims = _ownerPrims;
103 landData.selectedPrims = selectedPrims; 427 landData._selectedPrims = _selectedPrims;
104 landData.isGroupOwned = isGroupOwned; 428 landData._isGroupOwned = _isGroupOwned;
105 landData.localID = localID; 429 landData._localID = _localID;
106 landData.landingType = landingType; 430 landData._landingType = _landingType;
107 landData.mediaAutoScale = mediaAutoScale; 431 landData._mediaAutoScale = _mediaAutoScale;
108 landData.mediaID = mediaID; 432 landData._mediaID = _mediaID;
109 landData.mediaURL = mediaURL; 433 landData._mediaURL = _mediaURL;
110 landData.musicURL = musicURL; 434 landData._musicURL = _musicURL;
111 landData.ownerID = ownerID; 435 landData._ownerID = _ownerID;
112 landData.landBitmapByteArray = (byte[]) landBitmapByteArray.Clone(); 436 landData._bitmap = (byte[]) _bitmap.Clone();
113 landData.landDesc = landDesc; 437 landData._description = _description;
114 landData.landFlags = landFlags; 438 landData._flags = _flags;
115 landData.landName = landName; 439 landData._name = _name;
116 landData.landStatus = landStatus; 440 landData._status = _status;
117 landData.passHours = passHours; 441 landData._passHours = _passHours;
118 landData.passPrice = passPrice; 442 landData._passPrice = _passPrice;
119 landData.salePrice = salePrice; 443 landData._salePrice = _salePrice;
120 landData.snapshotID = snapshotID; 444 landData._snapshotID = _snapshotID;
121 landData.userLocation = userLocation; 445 landData._userLocation = _userLocation;
122 landData.userLookAt = userLookAt; 446 landData._userLookAt = _userLookAt;
123 447
124 landData.parcelAccessList.Clear(); 448 landData._parcelAccessList.Clear();
125 foreach (ParcelManager.ParcelAccessEntry entry in parcelAccessList) 449 foreach (ParcelManager.ParcelAccessEntry entry in _parcelAccessList)
126 { 450 {
127 ParcelManager.ParcelAccessEntry newEntry = new ParcelManager.ParcelAccessEntry(); 451 ParcelManager.ParcelAccessEntry newEntry = new ParcelManager.ParcelAccessEntry();
128 newEntry.AgentID = entry.AgentID; 452 newEntry.AgentID = entry.AgentID;
129 newEntry.Flags = entry.Flags; 453 newEntry.Flags = entry.Flags;
130 newEntry.Time = entry.Time; 454 newEntry.Time = entry.Time;
131 455
132 landData.parcelAccessList.Add(newEntry); 456 landData._parcelAccessList.Add(newEntry);
133 } 457 }
134 458
135 return landData; 459 return landData;
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
index 7141e13..d1fd63c 100644
--- a/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
@@ -2703,22 +2703,22 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2703 2703
2704 updatePacket.ParcelData.AABBMax = landData.AABBMax; 2704 updatePacket.ParcelData.AABBMax = landData.AABBMax;
2705 updatePacket.ParcelData.AABBMin = landData.AABBMin; 2705 updatePacket.ParcelData.AABBMin = landData.AABBMin;
2706 updatePacket.ParcelData.Area = landData.area; 2706 updatePacket.ParcelData.Area = landData.Area;
2707 updatePacket.ParcelData.AuctionID = landData.auctionID; 2707 updatePacket.ParcelData.AuctionID = landData.AuctionID;
2708 updatePacket.ParcelData.AuthBuyerID = landData.authBuyerID; //unemplemented 2708 updatePacket.ParcelData.AuthBuyerID = landData.AuthBuyerID; //unemplemented
2709 2709
2710 updatePacket.ParcelData.Bitmap = landData.landBitmapByteArray; 2710 updatePacket.ParcelData.Bitmap = landData.Bitmap;
2711 2711
2712 updatePacket.ParcelData.Desc = Helpers.StringToField(landData.landDesc); 2712 updatePacket.ParcelData.Desc = Helpers.StringToField(landData.Description);
2713 updatePacket.ParcelData.Category = (byte)landData.category; 2713 updatePacket.ParcelData.Category = (byte)landData.Category;
2714 updatePacket.ParcelData.ClaimDate = landData.claimDate; 2714 updatePacket.ParcelData.ClaimDate = landData.ClaimDate;
2715 updatePacket.ParcelData.ClaimPrice = landData.claimPrice; 2715 updatePacket.ParcelData.ClaimPrice = landData.ClaimPrice;
2716 updatePacket.ParcelData.GroupID = landData.groupID; 2716 updatePacket.ParcelData.GroupID = landData.GroupID;
2717 updatePacket.ParcelData.GroupPrims = landData.groupPrims; 2717 updatePacket.ParcelData.GroupPrims = landData.GroupPrims;
2718 updatePacket.ParcelData.IsGroupOwned = landData.isGroupOwned; 2718 updatePacket.ParcelData.IsGroupOwned = landData.IsGroupOwned;
2719 updatePacket.ParcelData.LandingType = (byte)landData.landingType; 2719 updatePacket.ParcelData.LandingType = (byte)landData.LandingType;
2720 updatePacket.ParcelData.LocalID = landData.localID; 2720 updatePacket.ParcelData.LocalID = landData.LocalID;
2721 if (landData.area > 0) 2721 if (landData.Area > 0)
2722 { 2722 {
2723 updatePacket.ParcelData.MaxPrims = parcelObjectCapacity; 2723 updatePacket.ParcelData.MaxPrims = parcelObjectCapacity;
2724 } 2724 }
@@ -2726,20 +2726,20 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2726 { 2726 {
2727 updatePacket.ParcelData.MaxPrims = 0; 2727 updatePacket.ParcelData.MaxPrims = 0;
2728 } 2728 }
2729 updatePacket.ParcelData.MediaAutoScale = landData.mediaAutoScale; 2729 updatePacket.ParcelData.MediaAutoScale = landData.MediaAutoScale;
2730 updatePacket.ParcelData.MediaID = landData.mediaID; 2730 updatePacket.ParcelData.MediaID = landData.MediaID;
2731 updatePacket.ParcelData.MediaURL = Helpers.StringToField(landData.mediaURL); 2731 updatePacket.ParcelData.MediaURL = Helpers.StringToField(landData.MediaURL);
2732 updatePacket.ParcelData.MusicURL = Helpers.StringToField(landData.musicURL); 2732 updatePacket.ParcelData.MusicURL = Helpers.StringToField(landData.MusicURL);
2733 updatePacket.ParcelData.Name = Helpers.StringToField(landData.landName); 2733 updatePacket.ParcelData.Name = Helpers.StringToField(landData.Name);
2734 updatePacket.ParcelData.OtherCleanTime = 0; //unemplemented 2734 updatePacket.ParcelData.OtherCleanTime = 0; //unemplemented
2735 updatePacket.ParcelData.OtherCount = 0; //unemplemented 2735 updatePacket.ParcelData.OtherCount = 0; //unemplemented
2736 updatePacket.ParcelData.OtherPrims = landData.otherPrims; 2736 updatePacket.ParcelData.OtherPrims = landData.OtherPrims;
2737 updatePacket.ParcelData.OwnerID = landData.ownerID; 2737 updatePacket.ParcelData.OwnerID = landData.OwnerID;
2738 updatePacket.ParcelData.OwnerPrims = landData.ownerPrims; 2738 updatePacket.ParcelData.OwnerPrims = landData.OwnerPrims;
2739 updatePacket.ParcelData.ParcelFlags = landData.landFlags; 2739 updatePacket.ParcelData.ParcelFlags = landData.Flags;
2740 updatePacket.ParcelData.ParcelPrimBonus = simObjectBonusFactor; 2740 updatePacket.ParcelData.ParcelPrimBonus = simObjectBonusFactor;
2741 updatePacket.ParcelData.PassHours = landData.passHours; 2741 updatePacket.ParcelData.PassHours = landData.PassHours;
2742 updatePacket.ParcelData.PassPrice = landData.passPrice; 2742 updatePacket.ParcelData.PassPrice = landData.PassPrice;
2743 updatePacket.ParcelData.PublicCount = 0; //unemplemented 2743 updatePacket.ParcelData.PublicCount = 0; //unemplemented
2744 2744
2745 updatePacket.ParcelData.RegionDenyAnonymous = ((regionFlags & (uint)Simulator.RegionFlags.DenyAnonymous) > 2745 updatePacket.ParcelData.RegionDenyAnonymous = ((regionFlags & (uint)Simulator.RegionFlags.DenyAnonymous) >
@@ -2753,11 +2753,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2753 2753
2754 updatePacket.ParcelData.RentPrice = 0; 2754 updatePacket.ParcelData.RentPrice = 0;
2755 updatePacket.ParcelData.RequestResult = request_result; 2755 updatePacket.ParcelData.RequestResult = request_result;
2756 updatePacket.ParcelData.SalePrice = landData.salePrice; 2756 updatePacket.ParcelData.SalePrice = landData.SalePrice;
2757 updatePacket.ParcelData.SelectedPrims = landData.selectedPrims; 2757 updatePacket.ParcelData.SelectedPrims = landData.SelectedPrims;
2758 updatePacket.ParcelData.SelfCount = 0; //unemplemented 2758 updatePacket.ParcelData.SelfCount = 0; //unemplemented
2759 updatePacket.ParcelData.SequenceID = sequence_id; 2759 updatePacket.ParcelData.SequenceID = sequence_id;
2760 if (landData.simwideArea > 0) 2760 if (landData.SimwideArea > 0)
2761 { 2761 {
2762 updatePacket.ParcelData.SimWideMaxPrims = parcelObjectCapacity; 2762 updatePacket.ParcelData.SimWideMaxPrims = parcelObjectCapacity;
2763 } 2763 }
@@ -2765,14 +2765,14 @@ namespace OpenSim.Region.ClientStack.LindenUDP
2765 { 2765 {
2766 updatePacket.ParcelData.SimWideMaxPrims = 0; 2766 updatePacket.ParcelData.SimWideMaxPrims = 0;
2767 } 2767 }
2768 updatePacket.ParcelData.SimWideTotalPrims = landData.simwidePrims; 2768 updatePacket.ParcelData.SimWideTotalPrims = landData.SimwidePrims;
2769 updatePacket.ParcelData.SnapSelection = snap_selection; 2769 updatePacket.ParcelData.SnapSelection = snap_selection;
2770 updatePacket.ParcelData.SnapshotID = landData.snapshotID; 2770 updatePacket.ParcelData.SnapshotID = landData.SnapshotID;
2771 updatePacket.ParcelData.Status = (byte)landData.landStatus; 2771 updatePacket.ParcelData.Status = (byte)landData.Status;
2772 updatePacket.ParcelData.TotalPrims = landData.ownerPrims + landData.groupPrims + landData.otherPrims + 2772 updatePacket.ParcelData.TotalPrims = landData.OwnerPrims + landData.GroupPrims + landData.OtherPrims +
2773 landData.selectedPrims; 2773 landData.SelectedPrims;
2774 updatePacket.ParcelData.UserLocation = landData.userLocation; 2774 updatePacket.ParcelData.UserLocation = landData.UserLocation;
2775 updatePacket.ParcelData.UserLookAt = landData.userLookAt; 2775 updatePacket.ParcelData.UserLookAt = landData.UserLookAt;
2776 updatePacket.Header.Zerocoded = true; 2776 updatePacket.Header.Zerocoded = true;
2777 remote_client.OutPacket((Packet)updatePacket, ThrottleOutPacketType.Task); 2777 remote_client.OutPacket((Packet)updatePacket, ThrottleOutPacketType.Task);
2778 } 2778 }
diff --git a/OpenSim/Region/DataSnapshot/LandSnapshot.cs b/OpenSim/Region/DataSnapshot/LandSnapshot.cs
index efc4a84..930ea8f 100644
--- a/OpenSim/Region/DataSnapshot/LandSnapshot.cs
+++ b/OpenSim/Region/DataSnapshot/LandSnapshot.cs
@@ -142,7 +142,7 @@ namespace OpenSim.Region.DataSnapshot.Providers
142 foreach (LandObject land in landList.Values) 142 foreach (LandObject land in landList.Values)
143 { 143 {
144 LandData parcel = land.landData; 144 LandData parcel = land.landData;
145 if ((parcel.landFlags & (uint)Parcel.ParcelFlags.ShowDirectory) == (uint)Parcel.ParcelFlags.ShowDirectory) 145 if ((parcel.Flags & (uint)Parcel.ParcelFlags.ShowDirectory) == (uint)Parcel.ParcelFlags.ShowDirectory)
146 { 146 {
147 147
148 //TODO: make better method of marshalling data from LandData to XmlNode 148 //TODO: make better method of marshalling data from LandData to XmlNode
@@ -152,7 +152,7 @@ namespace OpenSim.Region.DataSnapshot.Providers
152 XmlAttribute scripts_attr = nodeFactory.CreateAttribute("scripts"); 152 XmlAttribute scripts_attr = nodeFactory.CreateAttribute("scripts");
153 scripts_attr.Value = GetScriptsPermissions(parcel); 153 scripts_attr.Value = GetScriptsPermissions(parcel);
154 XmlAttribute category_attr = nodeFactory.CreateAttribute("category"); 154 XmlAttribute category_attr = nodeFactory.CreateAttribute("category");
155 category_attr.Value = parcel.category.ToString(); 155 category_attr.Value = parcel.Category.ToString();
156 //XmlAttribute entities_attr = nodeFactory.CreateAttribute("entities"); 156 //XmlAttribute entities_attr = nodeFactory.CreateAttribute("entities");
157 //entities_attr.Value = land.primsOverMe.Count.ToString(); 157 //entities_attr.Value = land.primsOverMe.Count.ToString();
158 xmlparcel.Attributes.Append(scripts_attr); 158 xmlparcel.Attributes.Append(scripts_attr);
@@ -162,24 +162,24 @@ namespace OpenSim.Region.DataSnapshot.Providers
162 162
163 //name, description, area, and UUID 163 //name, description, area, and UUID
164 XmlNode name = nodeFactory.CreateNode(XmlNodeType.Element, "name", ""); 164 XmlNode name = nodeFactory.CreateNode(XmlNodeType.Element, "name", "");
165 name.InnerText = parcel.landName; 165 name.InnerText = parcel.Name;
166 xmlparcel.AppendChild(name); 166 xmlparcel.AppendChild(name);
167 167
168 XmlNode desc = nodeFactory.CreateNode(XmlNodeType.Element, "description", ""); 168 XmlNode desc = nodeFactory.CreateNode(XmlNodeType.Element, "description", "");
169 desc.InnerText = parcel.landDesc; 169 desc.InnerText = parcel.Description;
170 xmlparcel.AppendChild(desc); 170 xmlparcel.AppendChild(desc);
171 171
172 XmlNode uuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", ""); 172 XmlNode uuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", "");
173 uuid.InnerText = parcel.globalID.ToString(); 173 uuid.InnerText = parcel.GlobalID.ToString();
174 xmlparcel.AppendChild(uuid); 174 xmlparcel.AppendChild(uuid);
175 175
176 XmlNode area = nodeFactory.CreateNode(XmlNodeType.Element, "area", ""); 176 XmlNode area = nodeFactory.CreateNode(XmlNodeType.Element, "area", "");
177 area.InnerText = parcel.area.ToString(); 177 area.InnerText = parcel.Area.ToString();
178 xmlparcel.AppendChild(area); 178 xmlparcel.AppendChild(area);
179 179
180 //default location 180 //default location
181 XmlNode tpLocation = nodeFactory.CreateNode(XmlNodeType.Element, "location", ""); 181 XmlNode tpLocation = nodeFactory.CreateNode(XmlNodeType.Element, "location", "");
182 LLVector3 loc = parcel.userLocation; 182 LLVector3 loc = parcel.UserLocation;
183 if (loc.Equals(LLVector3.Zero)) // This test is mute at this point: the location is wrong by default 183 if (loc.Equals(LLVector3.Zero)) // This test is mute at this point: the location is wrong by default
184 loc = new LLVector3((parcel.AABBMax.X - parcel.AABBMin.X) / 2, (parcel.AABBMax.Y - parcel.AABBMin.Y) / 2, (parcel.AABBMax.Y - parcel.AABBMin.Y) / 2); 184 loc = new LLVector3((parcel.AABBMax.X - parcel.AABBMin.X) / 2, (parcel.AABBMax.Y - parcel.AABBMin.Y) / 2, (parcel.AABBMax.Y - parcel.AABBMin.Y) / 2);
185 tpLocation.InnerText = loc.X.ToString() + "/" + loc.Y.ToString() + "/" + loc.Z.ToString(); 185 tpLocation.InnerText = loc.X.ToString() + "/" + loc.Y.ToString() + "/" + loc.Z.ToString();
@@ -188,19 +188,19 @@ namespace OpenSim.Region.DataSnapshot.Providers
188 //TODO: figure how to figure out teleport system landData.landingType 188 //TODO: figure how to figure out teleport system landData.landingType
189 189
190 //land texture snapshot uuid 190 //land texture snapshot uuid
191 if (parcel.snapshotID != LLUUID.Zero) 191 if (parcel.SnapshotID != LLUUID.Zero)
192 { 192 {
193 XmlNode textureuuid = nodeFactory.CreateNode(XmlNodeType.Element, "image", ""); 193 XmlNode textureuuid = nodeFactory.CreateNode(XmlNodeType.Element, "image", "");
194 textureuuid.InnerText = parcel.snapshotID.ToString(); 194 textureuuid.InnerText = parcel.SnapshotID.ToString();
195 xmlparcel.AppendChild(textureuuid); 195 xmlparcel.AppendChild(textureuuid);
196 } 196 }
197 197
198 //attached user and group 198 //attached user and group
199 if (parcel.groupID != LLUUID.Zero) 199 if (parcel.GroupID != LLUUID.Zero)
200 { 200 {
201 XmlNode groupblock = nodeFactory.CreateNode(XmlNodeType.Element, "group", ""); 201 XmlNode groupblock = nodeFactory.CreateNode(XmlNodeType.Element, "group", "");
202 XmlNode groupuuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", ""); 202 XmlNode groupuuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", "");
203 groupuuid.InnerText = parcel.groupID.ToString(); 203 groupuuid.InnerText = parcel.GroupID.ToString();
204 groupblock.AppendChild(groupuuid); 204 groupblock.AppendChild(groupuuid);
205 205
206 //No name yet, there's no way to get a group name since they don't exist yet. 206 //No name yet, there's no way to get a group name since they don't exist yet.
@@ -209,11 +209,11 @@ namespace OpenSim.Region.DataSnapshot.Providers
209 xmlparcel.AppendChild(groupblock); 209 xmlparcel.AppendChild(groupblock);
210 } 210 }
211 211
212 if (!parcel.isGroupOwned) 212 if (!parcel.IsGroupOwned)
213 { 213 {
214 XmlNode userblock = nodeFactory.CreateNode(XmlNodeType.Element, "owner", ""); 214 XmlNode userblock = nodeFactory.CreateNode(XmlNodeType.Element, "owner", "");
215 215
216 LLUUID userOwnerUUID = parcel.ownerID; 216 LLUUID userOwnerUUID = parcel.OwnerID;
217 217
218 XmlNode useruuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", ""); 218 XmlNode useruuid = nodeFactory.CreateNode(XmlNodeType.Element, "uuid", "");
219 useruuid.InnerText = userOwnerUUID.ToString(); 219 useruuid.InnerText = userOwnerUUID.ToString();
@@ -278,7 +278,7 @@ namespace OpenSim.Region.DataSnapshot.Providers
278 278
279 private string GetScriptsPermissions(LandData parcel) 279 private string GetScriptsPermissions(LandData parcel)
280 { 280 {
281 if ((parcel.landFlags & (uint)Parcel.ParcelFlags.AllowOtherScripts) == (uint)Parcel.ParcelFlags.AllowOtherScripts) 281 if ((parcel.Flags & (uint)Parcel.ParcelFlags.AllowOtherScripts) == (uint)Parcel.ParcelFlags.AllowOtherScripts)
282 return "yes"; 282 return "yes";
283 else 283 else
284 return "no"; 284 return "no";
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
index 57524a9..0d22ab9 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
@@ -1423,7 +1423,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney
1423 else 1423 else
1424 { 1424 {
1425 ILandObject obj = avatar.Scene.LandChannel.GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); 1425 ILandObject obj = avatar.Scene.LandChannel.GetLandObject(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y);
1426 if ((obj.landData.landFlags & (uint)Parcel.ParcelFlags.AllowDamage) != 0) 1426 if ((obj.landData.Flags & (uint)Parcel.ParcelFlags.AllowDamage) != 0)
1427 { 1427 {
1428 avatar.Invulnerable = false; 1428 avatar.Invulnerable = false;
1429 } 1429 }
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Voice/AsterixVoice/AsteriskVoiceModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Voice/AsterixVoice/AsteriskVoiceModule.cs
index 80936f6..1f41a92 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Voice/AsterixVoice/AsteriskVoiceModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Voice/AsterixVoice/AsteriskVoiceModule.cs
@@ -178,7 +178,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Voice.AsterixVoice
178 LandData land = m_scene.GetLandData(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); 178 LandData land = m_scene.GetLandData(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y);
179 179
180 LLSDParcelVoiceInfoResponse parcelVoiceInfo = 180 LLSDParcelVoiceInfoResponse parcelVoiceInfo =
181 new LLSDParcelVoiceInfoResponse(regionName, land.localID, creds); 181 new LLSDParcelVoiceInfoResponse(regionName, land.LocalID, creds);
182 182
183 string r = LLSDHelpers.SerialiseLLSDReply(parcelVoiceInfo); 183 string r = LLSDHelpers.SerialiseLLSDReply(parcelVoiceInfo);
184 184
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Voice/SIPVoice/SIPVoiceModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Voice/SIPVoice/SIPVoiceModule.cs
index 865894e..c6852f7 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Voice/SIPVoice/SIPVoiceModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Voice/SIPVoice/SIPVoiceModule.cs
@@ -147,7 +147,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Voice.SIPVoice
147 LandData land = m_scene.GetLandData(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y); 147 LandData land = m_scene.GetLandData(avatar.AbsolutePosition.X, avatar.AbsolutePosition.Y);
148 148
149 LLSDParcelVoiceInfoResponse parcelVoiceInfo = 149 LLSDParcelVoiceInfoResponse parcelVoiceInfo =
150 new LLSDParcelVoiceInfoResponse(regionName, land.localID, creds); 150 new LLSDParcelVoiceInfoResponse(regionName, land.LocalID, creds);
151 151
152 string r = LLSDHelpers.SerialiseLLSDReply(parcelVoiceInfo); 152 string r = LLSDHelpers.SerialiseLLSDReply(parcelVoiceInfo);
153 m_log.DebugFormat("[VOICE][PARCELVOICE]: {0}", r); 153 m_log.DebugFormat("[VOICE][PARCELVOICE]: {0}", r);
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandChannel.cs b/OpenSim/Region/Environment/Modules/World/Land/LandChannel.cs
index b83de23..d519d4d 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandChannel.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandChannel.cs
@@ -89,7 +89,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
89 return m_landManagementModule.GetLandObject(x_float, y_float); 89 return m_landManagementModule.GetLandObject(x_float, y_float);
90 } 90 }
91 ILandObject obj = new LandObject(LLUUID.Zero, false, m_scene); 91 ILandObject obj = new LandObject(LLUUID.Zero, false, m_scene);
92 obj.landData.landName = "NO LAND"; 92 obj.landData.Name = "NO LAND";
93 return obj; 93 return obj;
94 } 94 }
95 95
@@ -101,7 +101,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
101 return m_landManagementModule.GetLandObject(x, y); 101 return m_landManagementModule.GetLandObject(x, y);
102 } 102 }
103 ILandObject obj = new LandObject(LLUUID.Zero, false, m_scene); 103 ILandObject obj = new LandObject(LLUUID.Zero, false, m_scene);
104 obj.landData.landName = "NO LAND"; 104 obj.landData.Name = "NO LAND";
105 return obj; 105 return obj;
106 } 106 }
107 107
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
index b2456a2..ca03035 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
@@ -162,8 +162,8 @@ namespace OpenSim.Region.Environment.Modules.World.Land
162 ILandObject fullSimParcel = new LandObject(LLUUID.Zero, false, m_scene); 162 ILandObject fullSimParcel = new LandObject(LLUUID.Zero, false, m_scene);
163 163
164 fullSimParcel.setLandBitmap(fullSimParcel.getSquareLandBitmap(0, 0, (int)Constants.RegionSize, (int)Constants.RegionSize)); 164 fullSimParcel.setLandBitmap(fullSimParcel.getSquareLandBitmap(0, 0, (int)Constants.RegionSize, (int)Constants.RegionSize));
165 fullSimParcel.landData.ownerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 165 fullSimParcel.landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
166 fullSimParcel.landData.claimDate = Util.UnixTimeSinceEpoch(); 166 fullSimParcel.landData.ClaimDate = Util.UnixTimeSinceEpoch();
167 AddLandObject(fullSimParcel); 167 AddLandObject(fullSimParcel);
168 } 168 }
169 169
@@ -279,18 +279,18 @@ namespace OpenSim.Region.Environment.Modules.World.Land
279 if (!avatar.IsChildAgent) 279 if (!avatar.IsChildAgent)
280 { 280 {
281 over.sendLandUpdateToClient(avatar.ControllingClient); 281 over.sendLandUpdateToClient(avatar.ControllingClient);
282 m_scene.EventManager.TriggerAvatarEnteringNewParcel(avatar, over.landData.localID, 282 m_scene.EventManager.TriggerAvatarEnteringNewParcel(avatar, over.landData.LocalID,
283 m_scene.RegionInfo.RegionID); 283 m_scene.RegionInfo.RegionID);
284 } 284 }
285 } 285 }
286 286
287 if (avatar.currentParcelUUID != over.landData.globalID) 287 if (avatar.currentParcelUUID != over.landData.GlobalID)
288 { 288 {
289 if (!avatar.IsChildAgent) 289 if (!avatar.IsChildAgent)
290 { 290 {
291 over.sendLandUpdateToClient(avatar.ControllingClient); 291 over.sendLandUpdateToClient(avatar.ControllingClient);
292 avatar.currentParcelUUID = over.landData.globalID; 292 avatar.currentParcelUUID = over.landData.GlobalID;
293 m_scene.EventManager.TriggerAvatarEnteringNewParcel(avatar, over.landData.localID, 293 m_scene.EventManager.TriggerAvatarEnteringNewParcel(avatar, over.landData.LocalID,
294 m_scene.RegionInfo.RegionID); 294 m_scene.RegionInfo.RegionID);
295 } 295 }
296 } 296 }
@@ -316,7 +316,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
316 if (clientAvatar.AbsolutePosition.Z < LandChannel.BAN_LINE_SAFETY_HIEGHT && 316 if (clientAvatar.AbsolutePosition.Z < LandChannel.BAN_LINE_SAFETY_HIEGHT &&
317 clientAvatar.sentMessageAboutRestrictedParcelFlyingDown) 317 clientAvatar.sentMessageAboutRestrictedParcelFlyingDown)
318 { 318 {
319 handleAvatarChangingParcel(clientAvatar, parcel.landData.localID, m_scene.RegionInfo.RegionID); 319 handleAvatarChangingParcel(clientAvatar, parcel.landData.LocalID, m_scene.RegionInfo.RegionID);
320 //They are going below the safety line! 320 //They are going below the safety line!
321 if (!parcel.isBannedFromLand(clientAvatar.UUID)) 321 if (!parcel.isBannedFromLand(clientAvatar.UUID))
322 { 322 {
@@ -362,7 +362,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
362 { 362 {
363 if (landList.ContainsKey(landLocalID)) 363 if (landList.ContainsKey(landLocalID))
364 { 364 {
365 if (agentID == landList[landLocalID].landData.ownerID) 365 if (agentID == landList[landLocalID].landData.OwnerID)
366 { 366 {
367 landList[landLocalID].updateAccessList(flags, entries, remote_client); 367 landList[landLocalID].updateAccessList(flags, entries, remote_client);
368 } 368 }
@@ -388,7 +388,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
388 public ILandObject AddLandObject(ILandObject new_land) 388 public ILandObject AddLandObject(ILandObject new_land)
389 { 389 {
390 lastLandLocalID++; 390 lastLandLocalID++;
391 new_land.landData.localID = lastLandLocalID; 391 new_land.landData.LocalID = lastLandLocalID;
392 landList.Add(lastLandLocalID, new_land.Copy()); 392 landList.Add(lastLandLocalID, new_land.Copy());
393 393
394 394
@@ -430,7 +430,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
430 } 430 }
431 } 431 }
432 432
433 m_scene.EventManager.TriggerLandObjectRemoved(landList[local_id].landData.globalID); 433 m_scene.EventManager.TriggerLandObjectRemoved(landList[local_id].landData.GlobalID);
434 landList.Remove(local_id); 434 landList.Remove(local_id);
435 } 435 }
436 436
@@ -445,13 +445,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
445 { 445 {
446 if (landBitmapSlave[x, y]) 446 if (landBitmapSlave[x, y])
447 { 447 {
448 landIDList[x, y] = master.landData.localID; 448 landIDList[x, y] = master.landData.LocalID;
449 } 449 }
450 } 450 }
451 } 451 }
452 452
453 removeLandObject(slave.landData.localID); 453 removeLandObject(slave.landData.LocalID);
454 UpdateLandObject(master.landData.localID, master.landData); 454 UpdateLandObject(master.landData.LocalID, master.landData);
455 } 455 }
456 456
457 public ILandObject GetLandObject(int parcelLocalID) 457 public ILandObject GetLandObject(int parcelLocalID)
@@ -550,15 +550,15 @@ namespace OpenSim.Region.Environment.Modules.World.Land
550 Dictionary<LLUUID, List<LandObject>> landOwnersAndParcels = new Dictionary<LLUUID, List<LandObject>>(); 550 Dictionary<LLUUID, List<LandObject>> landOwnersAndParcels = new Dictionary<LLUUID, List<LandObject>>();
551 foreach (LandObject p in landList.Values) 551 foreach (LandObject p in landList.Values)
552 { 552 {
553 if (!landOwnersAndParcels.ContainsKey(p.landData.ownerID)) 553 if (!landOwnersAndParcels.ContainsKey(p.landData.OwnerID))
554 { 554 {
555 List<LandObject> tempList = new List<LandObject>(); 555 List<LandObject> tempList = new List<LandObject>();
556 tempList.Add(p); 556 tempList.Add(p);
557 landOwnersAndParcels.Add(p.landData.ownerID, tempList); 557 landOwnersAndParcels.Add(p.landData.OwnerID, tempList);
558 } 558 }
559 else 559 else
560 { 560 {
561 landOwnersAndParcels[p.landData.ownerID].Add(p); 561 landOwnersAndParcels[p.landData.OwnerID].Add(p);
562 } 562 }
563 } 563 }
564 564
@@ -568,15 +568,15 @@ namespace OpenSim.Region.Environment.Modules.World.Land
568 int simPrims = 0; 568 int simPrims = 0;
569 foreach (LandObject p in landOwnersAndParcels[owner]) 569 foreach (LandObject p in landOwnersAndParcels[owner])
570 { 570 {
571 simArea += p.landData.area; 571 simArea += p.landData.Area;
572 simPrims += p.landData.ownerPrims + p.landData.otherPrims + p.landData.groupPrims + 572 simPrims += p.landData.OwnerPrims + p.landData.OtherPrims + p.landData.GroupPrims +
573 p.landData.selectedPrims; 573 p.landData.SelectedPrims;
574 } 574 }
575 575
576 foreach (LandObject p in landOwnersAndParcels[owner]) 576 foreach (LandObject p in landOwnersAndParcels[owner])
577 { 577 {
578 p.landData.simwideArea = simArea; 578 p.landData.SimwideArea = simArea;
579 p.landData.simwidePrims = simPrims; 579 p.landData.SimwidePrims = simPrims;
580 } 580 }
581 } 581 }
582 } 582 }
@@ -658,13 +658,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
658 658
659 //Lets create a new land object with bitmap activated at that point (keeping the old land objects info) 659 //Lets create a new land object with bitmap activated at that point (keeping the old land objects info)
660 ILandObject newLand = startLandObject.Copy(); 660 ILandObject newLand = startLandObject.Copy();
661 newLand.landData.landName = "Subdivision of " + newLand.landData.landName; 661 newLand.landData.Name = "Subdivision of " + newLand.landData.Name;
662 newLand.landData.globalID = LLUUID.Random(); 662 newLand.landData.GlobalID = LLUUID.Random();
663 663
664 newLand.setLandBitmap(newLand.getSquareLandBitmap(start_x, start_y, end_x, end_y)); 664 newLand.setLandBitmap(newLand.getSquareLandBitmap(start_x, start_y, end_x, end_y));
665 665
666 //Now, lets set the subdivision area of the original to false 666 //Now, lets set the subdivision area of the original to false
667 int startLandObjectIndex = startLandObject.landData.localID; 667 int startLandObjectIndex = startLandObject.landData.LocalID;
668 landList[startLandObjectIndex].setLandBitmap( 668 landList[startLandObjectIndex].setLandBitmap(
669 newLand.modifyLandBitmapSquare(startLandObject.getLandBitmap(), start_x, start_y, end_x, end_y, false)); 669 newLand.modifyLandBitmapSquare(startLandObject.getLandBitmap(), start_x, start_y, end_x, end_y, false));
670 landList[startLandObjectIndex].forceUpdateLandInfo(); 670 landList[startLandObjectIndex].forceUpdateLandInfo();
@@ -673,7 +673,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
673 673
674 //Now add the new land object 674 //Now add the new land object
675 ILandObject result = AddLandObject(newLand); 675 ILandObject result = AddLandObject(newLand);
676 UpdateLandObject(startLandObject.landData.localID, startLandObject.landData); 676 UpdateLandObject(startLandObject.landData.LocalID, startLandObject.landData);
677 result.sendLandUpdateToAvatarsOverMe(); 677 result.sendLandUpdateToAvatarsOverMe();
678 678
679 679
@@ -726,14 +726,14 @@ namespace OpenSim.Region.Environment.Modules.World.Land
726 } 726 }
727 foreach (ILandObject p in selectedLandObjects) 727 foreach (ILandObject p in selectedLandObjects)
728 { 728 {
729 if (p.landData.ownerID != masterLandObject.landData.ownerID) 729 if (p.landData.OwnerID != masterLandObject.landData.OwnerID)
730 { 730 {
731 return; 731 return;
732 } 732 }
733 } 733 }
734 foreach (ILandObject slaveLandObject in selectedLandObjects) 734 foreach (ILandObject slaveLandObject in selectedLandObjects)
735 { 735 {
736 landList[masterLandObject.landData.localID].setLandBitmap( 736 landList[masterLandObject.landData.LocalID].setLandBitmap(
737 slaveLandObject.mergeLandBitmaps(masterLandObject.getLandBitmap(), slaveLandObject.getLandBitmap())); 737 slaveLandObject.mergeLandBitmaps(masterLandObject.getLandBitmap(), slaveLandObject.getLandBitmap()));
738 performFinalLandJoin(masterLandObject, slaveLandObject); 738 performFinalLandJoin(masterLandObject, slaveLandObject);
739 } 739 }
@@ -775,19 +775,19 @@ namespace OpenSim.Region.Environment.Modules.World.Land
775 775
776 if (currentParcelBlock != null) 776 if (currentParcelBlock != null)
777 { 777 {
778 if (currentParcelBlock.landData.ownerID == remote_client.AgentId) 778 if (currentParcelBlock.landData.OwnerID == remote_client.AgentId)
779 { 779 {
780 //Owner Flag 780 //Owner Flag
781 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_OWNED_BY_REQUESTER); 781 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_OWNED_BY_REQUESTER);
782 } 782 }
783 else if (currentParcelBlock.landData.salePrice > 0 && 783 else if (currentParcelBlock.landData.SalePrice > 0 &&
784 (currentParcelBlock.landData.authBuyerID == LLUUID.Zero || 784 (currentParcelBlock.landData.AuthBuyerID == LLUUID.Zero ||
785 currentParcelBlock.landData.authBuyerID == remote_client.AgentId)) 785 currentParcelBlock.landData.AuthBuyerID == remote_client.AgentId))
786 { 786 {
787 //Sale Flag 787 //Sale Flag
788 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_IS_FOR_SALE); 788 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_IS_FOR_SALE);
789 } 789 }
790 else if (currentParcelBlock.landData.ownerID == LLUUID.Zero) 790 else if (currentParcelBlock.landData.OwnerID == LLUUID.Zero)
791 { 791 {
792 //Public Flag 792 //Public Flag
793 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_PUBLIC); 793 tempByte = Convert.ToByte(tempByte | LandChannel.LAND_TYPE_PUBLIC);
@@ -931,7 +931,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
931 { 931 {
932 if (m_scene.ExternalChecks.ExternalChecksCanAbandonParcel(remote_client.AgentId, landList[local_id])) 932 if (m_scene.ExternalChecks.ExternalChecksCanAbandonParcel(remote_client.AgentId, landList[local_id]))
933 { 933 {
934 landList[local_id].landData.ownerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 934 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
935 m_scene.Broadcast(SendParcelOverlay); 935 m_scene.Broadcast(SendParcelOverlay);
936 landList[local_id].sendLandUpdateToClient(remote_client); 936 landList[local_id].sendLandUpdateToClient(remote_client);
937 } 937 }
@@ -945,8 +945,8 @@ namespace OpenSim.Region.Environment.Modules.World.Land
945 { 945 {
946 if (m_scene.ExternalChecks.ExternalChecksCanReclaimParcel(remote_client.AgentId, landList[local_id])) 946 if (m_scene.ExternalChecks.ExternalChecksCanReclaimParcel(remote_client.AgentId, landList[local_id]))
947 { 947 {
948 landList[local_id].landData.ownerID = m_scene.RegionInfo.MasterAvatarAssignedUUID; 948 landList[local_id].landData.OwnerID = m_scene.RegionInfo.MasterAvatarAssignedUUID;
949 landList[local_id].landData.claimDate = Util.UnixTimeSinceEpoch(); 949 landList[local_id].landData.ClaimDate = Util.UnixTimeSinceEpoch();
950 m_scene.Broadcast(SendParcelOverlay); 950 m_scene.Broadcast(SendParcelOverlay);
951 landList[local_id].sendLandUpdateToClient(remote_client); 951 landList[local_id].sendLandUpdateToClient(remote_client);
952 } 952 }
@@ -992,11 +992,11 @@ namespace OpenSim.Region.Environment.Modules.World.Land
992 } 992 }
993 if (lob != null) 993 if (lob != null)
994 { 994 {
995 LLUUID AuthorizedID = lob.landData.authBuyerID; 995 LLUUID AuthorizedID = lob.landData.AuthBuyerID;
996 int saleprice = lob.landData.salePrice; 996 int saleprice = lob.landData.SalePrice;
997 LLUUID pOwnerID = lob.landData.ownerID; 997 LLUUID pOwnerID = lob.landData.OwnerID;
998 998
999 bool landforsale = ((lob.landData.landFlags & 999 bool landforsale = ((lob.landData.Flags &
1000 (uint)(Parcel.ParcelFlags.ForSale | Parcel.ParcelFlags.ForSaleObjects | Parcel.ParcelFlags.SellParcelObjects)) != 0); 1000 (uint)(Parcel.ParcelFlags.ForSale | Parcel.ParcelFlags.ForSaleObjects | Parcel.ParcelFlags.SellParcelObjects)) != 0);
1001 if ((AuthorizedID == LLUUID.Zero || AuthorizedID == e.agentId) && e.parcelPrice >= saleprice && landforsale) 1001 if ((AuthorizedID == LLUUID.Zero || AuthorizedID == e.agentId) && e.parcelPrice >= saleprice && landforsale)
1002 { 1002 {
@@ -1034,7 +1034,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
1034 1034
1035 public void IncomingLandObjectFromStorage(LandData data) 1035 public void IncomingLandObjectFromStorage(LandData data)
1036 { 1036 {
1037 ILandObject new_land = new LandObject(data.ownerID, data.isGroupOwned, m_scene); 1037 ILandObject new_land = new LandObject(data.OwnerID, data.IsGroupOwned, m_scene);
1038 new_land.landData = data.Copy(); 1038 new_land.landData = data.Copy();
1039 new_land.setLandBitmapFromByteArray(); 1039 new_land.setLandBitmapFromByteArray();
1040 AddLandObject(new_land); 1040 AddLandObject(new_land);
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs b/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs
index 02d74e5..8abfcf8 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandObject.cs
@@ -77,8 +77,8 @@ namespace OpenSim.Region.Environment.Modules.World.Land
77 public LandObject(LLUUID owner_id, bool is_group_owned, Scene scene) 77 public LandObject(LLUUID owner_id, bool is_group_owned, Scene scene)
78 { 78 {
79 m_scene = scene; 79 m_scene = scene;
80 landData.ownerID = owner_id; 80 landData.OwnerID = owner_id;
81 landData.isGroupOwned = is_group_owned; 81 landData.IsGroupOwned = is_group_owned;
82 } 82 }
83 83
84 #endregion 84 #endregion
@@ -107,7 +107,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
107 107
108 public ILandObject Copy() 108 public ILandObject Copy()
109 { 109 {
110 ILandObject newLand = new LandObject(landData.ownerID, landData.isGroupOwned, m_scene); 110 ILandObject newLand = new LandObject(landData.OwnerID, landData.IsGroupOwned, m_scene);
111 111
112 //Place all new variables here! 112 //Place all new variables here!
113 newLand.landBitmap = (bool[,]) (landBitmap.Clone()); 113 newLand.landBitmap = (bool[,]) (landBitmap.Clone());
@@ -139,7 +139,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
139 { 139 {
140 //Normal Calculations 140 //Normal Calculations
141 return Convert.ToInt32( 141 return Convert.ToInt32(
142 Math.Round((Convert.ToDecimal(landData.area) / Convert.ToDecimal(65536)) * m_scene.objectCapacity * 142 Math.Round((Convert.ToDecimal(landData.Area) / Convert.ToDecimal(65536)) * m_scene.objectCapacity *
143 Convert.ToDecimal(m_scene.RegionInfo.RegionSettings.ObjectBonus))); ; 143 Convert.ToDecimal(m_scene.RegionInfo.RegionSettings.ObjectBonus))); ;
144 } 144 }
145 } 145 }
@@ -165,9 +165,9 @@ namespace OpenSim.Region.Environment.Modules.World.Land
165 uint regionFlags = 336723974 & ~((uint)(Simulator.RegionFlags.AllowLandmark | Simulator.RegionFlags.AllowSetHome)); 165 uint regionFlags = 336723974 & ~((uint)(Simulator.RegionFlags.AllowLandmark | Simulator.RegionFlags.AllowSetHome));
166 if (estateModule != null) 166 if (estateModule != null)
167 regionFlags = estateModule.GetRegionFlags(); 167 regionFlags = estateModule.GetRegionFlags();
168 if ((landData.landFlags & (uint)Parcel.ParcelFlags.AllowLandmark) != 0) 168 if ((landData.Flags & (uint)Parcel.ParcelFlags.AllowLandmark) != 0)
169 regionFlags |= (uint)Simulator.RegionFlags.AllowLandmark; 169 regionFlags |= (uint)Simulator.RegionFlags.AllowLandmark;
170 if (landData.ownerID == remote_client.AgentId) 170 if (landData.OwnerID == remote_client.AgentId)
171 regionFlags |= (uint)Simulator.RegionFlags.AllowSetHome; 171 regionFlags |= (uint)Simulator.RegionFlags.AllowSetHome;
172 remote_client.SendLandProperties(remote_client, sequence_id, 172 remote_client.SendLandProperties(remote_client, sequence_id,
173 snap_selection, request_result, landData, 173 snap_selection, request_result, landData,
@@ -183,31 +183,31 @@ namespace OpenSim.Region.Environment.Modules.World.Land
183 //Needs later group support 183 //Needs later group support
184 LandData newData = landData.Copy(); 184 LandData newData = landData.Copy();
185 185
186 if (args.AuthBuyerID != newData.authBuyerID || args.SalePrice != newData.salePrice) 186 if (args.AuthBuyerID != newData.AuthBuyerID || args.SalePrice != newData.SalePrice)
187 { 187 {
188 if (m_scene.ExternalChecks.ExternalChecksCanSellParcel(remote_client.AgentId, this)) 188 if (m_scene.ExternalChecks.ExternalChecksCanSellParcel(remote_client.AgentId, this))
189 { 189 {
190 newData.authBuyerID = args.AuthBuyerID; 190 newData.AuthBuyerID = args.AuthBuyerID;
191 newData.salePrice = args.SalePrice; 191 newData.SalePrice = args.SalePrice;
192 } 192 }
193 } 193 }
194 newData.category = args.Category; 194 newData.Category = args.Category;
195 newData.landDesc = args.Desc; 195 newData.Description = args.Desc;
196 newData.groupID = args.GroupID; 196 newData.GroupID = args.GroupID;
197 newData.landingType = args.LandingType; 197 newData.LandingType = args.LandingType;
198 newData.mediaAutoScale = args.MediaAutoScale; 198 newData.MediaAutoScale = args.MediaAutoScale;
199 newData.mediaID = args.MediaID; 199 newData.MediaID = args.MediaID;
200 newData.mediaURL = args.MediaURL; 200 newData.MediaURL = args.MediaURL;
201 newData.musicURL = args.MusicURL; 201 newData.MusicURL = args.MusicURL;
202 newData.landName = args.Name; 202 newData.Name = args.Name;
203 newData.landFlags = args.ParcelFlags; 203 newData.Flags = args.ParcelFlags;
204 newData.passHours = args.PassHours; 204 newData.PassHours = args.PassHours;
205 newData.passPrice = args.PassPrice; 205 newData.PassPrice = args.PassPrice;
206 newData.snapshotID = args.SnapshotID; 206 newData.SnapshotID = args.SnapshotID;
207 newData.userLocation = args.UserLocation; 207 newData.UserLocation = args.UserLocation;
208 newData.userLookAt = args.UserLookAt; 208 newData.UserLookAt = args.UserLookAt;
209 209
210 m_scene.LandChannel.UpdateLandObject(landData.localID, newData); 210 m_scene.LandChannel.UpdateLandObject(landData.LocalID, newData);
211 211
212 sendLandUpdateToAvatarsOverMe(); 212 sendLandUpdateToAvatarsOverMe();
213 } 213 }
@@ -216,16 +216,16 @@ namespace OpenSim.Region.Environment.Modules.World.Land
216 public void updateLandSold(LLUUID avatarID, LLUUID groupID, bool groupOwned, uint AuctionID, int claimprice, int area) 216 public void updateLandSold(LLUUID avatarID, LLUUID groupID, bool groupOwned, uint AuctionID, int claimprice, int area)
217 { 217 {
218 LandData newData = landData.Copy(); 218 LandData newData = landData.Copy();
219 newData.ownerID = avatarID; 219 newData.OwnerID = avatarID;
220 newData.groupID = groupID; 220 newData.GroupID = groupID;
221 newData.isGroupOwned = groupOwned; 221 newData.IsGroupOwned = groupOwned;
222 //newData.auctionID = AuctionID; 222 //newData.auctionID = AuctionID;
223 newData.claimDate = Util.UnixTimeSinceEpoch(); 223 newData.ClaimDate = Util.UnixTimeSinceEpoch();
224 newData.claimPrice = claimprice; 224 newData.ClaimPrice = claimprice;
225 newData.salePrice = 0; 225 newData.SalePrice = 0;
226 newData.authBuyerID = LLUUID.Zero; 226 newData.AuthBuyerID = LLUUID.Zero;
227 newData.landFlags &= ~(uint) (Parcel.ParcelFlags.ForSale | Parcel.ParcelFlags.ForSaleObjects | Parcel.ParcelFlags.SellParcelObjects); 227 newData.Flags &= ~(uint) (Parcel.ParcelFlags.ForSale | Parcel.ParcelFlags.ForSaleObjects | Parcel.ParcelFlags.SellParcelObjects);
228 m_scene.LandChannel.UpdateLandObject(landData.localID, newData); 228 m_scene.LandChannel.UpdateLandObject(landData.LocalID, newData);
229 229
230 sendLandUpdateToAvatarsOverMe(); 230 sendLandUpdateToAvatarsOverMe();
231 } 231 }
@@ -245,13 +245,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
245 245
246 public bool isBannedFromLand(LLUUID avatar) 246 public bool isBannedFromLand(LLUUID avatar)
247 { 247 {
248 if ((landData.landFlags & (uint) Parcel.ParcelFlags.UseBanList) > 0) 248 if ((landData.Flags & (uint) Parcel.ParcelFlags.UseBanList) > 0)
249 { 249 {
250 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 250 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
251 entry.AgentID = avatar; 251 entry.AgentID = avatar;
252 entry.Flags = ParcelManager.AccessList.Ban; 252 entry.Flags = ParcelManager.AccessList.Ban;
253 entry.Time = new DateTime(); 253 entry.Time = new DateTime();
254 if (landData.parcelAccessList.Contains(entry)) 254 if (landData.ParcelAccessList.Contains(entry))
255 { 255 {
256 //They are banned, so lets send them a notice about this parcel 256 //They are banned, so lets send them a notice about this parcel
257 return true; 257 return true;
@@ -262,13 +262,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
262 262
263 public bool isRestrictedFromLand(LLUUID avatar) 263 public bool isRestrictedFromLand(LLUUID avatar)
264 { 264 {
265 if ((landData.landFlags & (uint) Parcel.ParcelFlags.UseAccessList) > 0) 265 if ((landData.Flags & (uint) Parcel.ParcelFlags.UseAccessList) > 0)
266 { 266 {
267 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 267 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
268 entry.AgentID = avatar; 268 entry.AgentID = avatar;
269 entry.Flags = ParcelManager.AccessList.Access; 269 entry.Flags = ParcelManager.AccessList.Access;
270 entry.Time = new DateTime(); 270 entry.Time = new DateTime();
271 if (!landData.parcelAccessList.Contains(entry)) 271 if (!landData.ParcelAccessList.Contains(entry))
272 { 272 {
273 //They are not allowed in this parcel, but not banned, so lets send them a notice about this parcel 273 //They are not allowed in this parcel, but not banned, so lets send them a notice about this parcel
274 return true; 274 return true;
@@ -302,9 +302,9 @@ namespace OpenSim.Region.Environment.Modules.World.Land
302 302
303 if (over != null) 303 if (over != null)
304 { 304 {
305 if (over.landData.localID == landData.localID) 305 if (over.landData.LocalID == landData.LocalID)
306 { 306 {
307 if (((over.landData.landFlags & (uint)Parcel.ParcelFlags.AllowDamage) != 0) && m_scene.RegionInfo.RegionSettings.AllowDamage) 307 if (((over.landData.Flags & (uint)Parcel.ParcelFlags.AllowDamage) != 0) && m_scene.RegionInfo.RegionSettings.AllowDamage)
308 avatars[i].Invulnerable = false; 308 avatars[i].Invulnerable = false;
309 else 309 else
310 avatars[i].Invulnerable = true; 310 avatars[i].Invulnerable = true;
@@ -322,7 +322,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
322 public List<LLUUID> createAccessListArrayByFlag(ParcelManager.AccessList flag) 322 public List<LLUUID> createAccessListArrayByFlag(ParcelManager.AccessList flag)
323 { 323 {
324 List<LLUUID> list = new List<LLUUID>(); 324 List<LLUUID> list = new List<LLUUID>();
325 foreach (ParcelManager.ParcelAccessEntry entry in landData.parcelAccessList) 325 foreach (ParcelManager.ParcelAccessEntry entry in landData.ParcelAccessList)
326 { 326 {
327 if (entry.Flags == flag) 327 if (entry.Flags == flag)
328 { 328 {
@@ -344,13 +344,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
344 if (flags == (uint) ParcelManager.AccessList.Access || flags == (uint) ParcelManager.AccessList.Both) 344 if (flags == (uint) ParcelManager.AccessList.Access || flags == (uint) ParcelManager.AccessList.Both)
345 { 345 {
346 List<LLUUID> avatars = createAccessListArrayByFlag(ParcelManager.AccessList.Access); 346 List<LLUUID> avatars = createAccessListArrayByFlag(ParcelManager.AccessList.Access);
347 remote_client.SendLandAccessListData(avatars,(uint) ParcelManager.AccessList.Access,landData.localID); 347 remote_client.SendLandAccessListData(avatars,(uint) ParcelManager.AccessList.Access,landData.LocalID);
348 } 348 }
349 349
350 if (flags == (uint) ParcelManager.AccessList.Ban || flags == (uint) ParcelManager.AccessList.Both) 350 if (flags == (uint) ParcelManager.AccessList.Ban || flags == (uint) ParcelManager.AccessList.Both)
351 { 351 {
352 List<LLUUID> avatars = createAccessListArrayByFlag(ParcelManager.AccessList.Ban); 352 List<LLUUID> avatars = createAccessListArrayByFlag(ParcelManager.AccessList.Ban);
353 remote_client.SendLandAccessListData(avatars, (uint)ParcelManager.AccessList.Ban, landData.localID); 353 remote_client.SendLandAccessListData(avatars, (uint)ParcelManager.AccessList.Ban, landData.LocalID);
354 } 354 }
355 } 355 }
356 356
@@ -364,7 +364,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
364 } 364 }
365 365
366 List<ParcelManager.ParcelAccessEntry> toRemove = new List<ParcelManager.ParcelAccessEntry>(); 366 List<ParcelManager.ParcelAccessEntry> toRemove = new List<ParcelManager.ParcelAccessEntry>();
367 foreach (ParcelManager.ParcelAccessEntry entry in newData.parcelAccessList) 367 foreach (ParcelManager.ParcelAccessEntry entry in newData.ParcelAccessList)
368 { 368 {
369 if (entry.Flags == (ParcelManager.AccessList) flags) 369 if (entry.Flags == (ParcelManager.AccessList) flags)
370 { 370 {
@@ -374,7 +374,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
374 374
375 foreach (ParcelManager.ParcelAccessEntry entry in toRemove) 375 foreach (ParcelManager.ParcelAccessEntry entry in toRemove)
376 { 376 {
377 newData.parcelAccessList.Remove(entry); 377 newData.ParcelAccessList.Remove(entry);
378 } 378 }
379 foreach (ParcelManager.ParcelAccessEntry entry in entries) 379 foreach (ParcelManager.ParcelAccessEntry entry in entries)
380 { 380 {
@@ -383,13 +383,13 @@ namespace OpenSim.Region.Environment.Modules.World.Land
383 temp.Time = new DateTime(); //Pointless? Yes. 383 temp.Time = new DateTime(); //Pointless? Yes.
384 temp.Flags = (ParcelManager.AccessList) flags; 384 temp.Flags = (ParcelManager.AccessList) flags;
385 385
386 if (!newData.parcelAccessList.Contains(temp)) 386 if (!newData.ParcelAccessList.Contains(temp))
387 { 387 {
388 newData.parcelAccessList.Add(temp); 388 newData.ParcelAccessList.Add(temp);
389 } 389 }
390 } 390 }
391 391
392 m_scene.LandChannel.UpdateLandObject(landData.localID, newData); 392 m_scene.LandChannel.UpdateLandObject(landData.LocalID, newData);
393 } 393 }
394 394
395 #endregion 395 #endregion
@@ -398,7 +398,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
398 398
399 public void updateLandBitmapByteArray() 399 public void updateLandBitmapByteArray()
400 { 400 {
401 landData.landBitmapByteArray = convertLandBitmapToBytes(); 401 landData.Bitmap = convertLandBitmapToBytes();
402 } 402 }
403 403
404 /// <summary> 404 /// <summary>
@@ -459,7 +459,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
459 landData.AABBMax = 459 landData.AABBMax =
460 new LLVector3((float) (max_x * 4), (float) (max_y * 4), 460 new LLVector3((float) (max_x * 4), (float) (max_y * 4),
461 (float) m_scene.Heightmap[tx, ty]); 461 (float) m_scene.Heightmap[tx, ty]);
462 landData.area = tempArea; 462 landData.Area = tempArea;
463 } 463 }
464 464
465 #endregion 465 #endregion
@@ -622,7 +622,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
622 int x = 0, y = 0, i = 0, bitNum = 0; 622 int x = 0, y = 0, i = 0, bitNum = 0;
623 for (i = 0; i < 512; i++) 623 for (i = 0; i < 512; i++)
624 { 624 {
625 tempByte = landData.landBitmapByteArray[i]; 625 tempByte = landData.Bitmap[i];
626 for (bitNum = 0; bitNum < 8; bitNum++) 626 for (bitNum = 0; bitNum < 8; bitNum++)
627 { 627 {
628 bool bit = Convert.ToBoolean(Convert.ToByte(tempByte >> bitNum) & (byte) 1); 628 bool bit = Convert.ToBoolean(Convert.ToByte(tempByte >> bitNum) & (byte) 1);
@@ -655,7 +655,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
655 { 655 {
656 if (obj.LocalId > 0) 656 if (obj.LocalId > 0)
657 { 657 {
658 if (request_type == LandChannel.LAND_SELECT_OBJECTS_OWNER && obj.OwnerID == landData.ownerID) 658 if (request_type == LandChannel.LAND_SELECT_OBJECTS_OWNER && obj.OwnerID == landData.OwnerID)
659 { 659 {
660 resultLocalIDs.Add(obj.LocalId); 660 resultLocalIDs.Add(obj.LocalId);
661 } 661 }
@@ -798,10 +798,10 @@ namespace OpenSim.Region.Environment.Modules.World.Land
798 798
799 public void resetLandPrimCounts() 799 public void resetLandPrimCounts()
800 { 800 {
801 landData.groupPrims = 0; 801 landData.GroupPrims = 0;
802 landData.ownerPrims = 0; 802 landData.OwnerPrims = 0;
803 landData.otherPrims = 0; 803 landData.OtherPrims = 0;
804 landData.selectedPrims = 0; 804 landData.SelectedPrims = 0;
805 805
806 806
807 lock (primsOverMe) 807 lock (primsOverMe)
@@ -816,17 +816,17 @@ namespace OpenSim.Region.Environment.Modules.World.Land
816 816
817 if (obj.IsSelected) 817 if (obj.IsSelected)
818 { 818 {
819 landData.selectedPrims += prim_count; 819 landData.SelectedPrims += prim_count;
820 } 820 }
821 else 821 else
822 { 822 {
823 if (prim_owner == landData.ownerID) 823 if (prim_owner == landData.OwnerID)
824 { 824 {
825 landData.ownerPrims += prim_count; 825 landData.OwnerPrims += prim_count;
826 } 826 }
827 else 827 else
828 { 828 {
829 landData.otherPrims += prim_count; 829 landData.OtherPrims += prim_count;
830 } 830 }
831 } 831 }
832 832
@@ -843,17 +843,17 @@ namespace OpenSim.Region.Environment.Modules.World.Land
843 LLUUID prim_owner = obj.OwnerID; 843 LLUUID prim_owner = obj.OwnerID;
844 int prim_count = obj.PrimCount; 844 int prim_count = obj.PrimCount;
845 845
846 if (prim_owner == landData.ownerID) 846 if (prim_owner == landData.OwnerID)
847 { 847 {
848 landData.ownerPrims -= prim_count; 848 landData.OwnerPrims -= prim_count;
849 } 849 }
850 else if (prim_owner == landData.groupID) 850 else if (prim_owner == landData.GroupID)
851 { 851 {
852 landData.groupPrims -= prim_count; 852 landData.GroupPrims -= prim_count;
853 } 853 }
854 else 854 else
855 { 855 {
856 landData.otherPrims -= prim_count; 856 landData.OtherPrims -= prim_count;
857 } 857 }
858 858
859 primsOverMe.Remove(obj); 859 primsOverMe.Remove(obj);
diff --git a/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
index b0d9a26..23db484 100644
--- a/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Permissions/PermissionsModule.cs
@@ -331,7 +331,7 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
331 331
332 // Users should be able to edit what is over their land. 332 // Users should be able to edit what is over their land.
333 ILandObject parcel = m_scene.LandChannel.GetLandObject(task.AbsolutePosition.X, task.AbsolutePosition.Y); 333 ILandObject parcel = m_scene.LandChannel.GetLandObject(task.AbsolutePosition.X, task.AbsolutePosition.Y);
334 if (parcel != null && parcel.landData.ownerID == user) 334 if (parcel != null && parcel.landData.OwnerID == user)
335 return objectOwnerMask; 335 return objectOwnerMask;
336 336
337 // Admin objects should not be editable by the above 337 // Admin objects should not be editable by the above
@@ -423,7 +423,7 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
423 423
424 // Users should be able to edit what is over their land. 424 // Users should be able to edit what is over their land.
425 ILandObject parcel = m_scene.LandChannel.GetLandObject(group.AbsolutePosition.X, group.AbsolutePosition.Y); 425 ILandObject parcel = m_scene.LandChannel.GetLandObject(group.AbsolutePosition.X, group.AbsolutePosition.Y);
426 if ((parcel != null) && (parcel.landData.ownerID == currentUser)) 426 if ((parcel != null) && (parcel.landData.OwnerID == currentUser))
427 { 427 {
428 permission = true; 428 permission = true;
429 } 429 }
@@ -492,12 +492,12 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
492 { 492 {
493 bool permission = false; 493 bool permission = false;
494 494
495 if (parcel.landData.ownerID == user) 495 if (parcel.landData.OwnerID == user)
496 { 496 {
497 permission = true; 497 permission = true;
498 } 498 }
499 499
500 if (parcel.landData.isGroupOwned) 500 if (parcel.landData.IsGroupOwned)
501 { 501 {
502 // TODO: Need to do some extra checks here. Requires group code. 502 // TODO: Need to do some extra checks here. Requires group code.
503 } 503 }
@@ -723,7 +723,7 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
723 return false; 723 return false;
724 } 724 }
725 725
726 if ((land.landData.landFlags & ((int)Parcel.ParcelFlags.AllowAllObjectEntry)) != 0) 726 if ((land.landData.Flags & ((int)Parcel.ParcelFlags.AllowAllObjectEntry)) != 0)
727 { 727 {
728 return true; 728 return true;
729 } 729 }
@@ -770,7 +770,7 @@ namespace OpenSim.Region.Environment.Modules.World.Permissions
770 ILandObject land = m_scene.LandChannel.GetLandObject(objectPosition.X, objectPosition.Y); 770 ILandObject land = m_scene.LandChannel.GetLandObject(objectPosition.X, objectPosition.Y);
771 if (land == null) return false; 771 if (land == null) return false;
772 772
773 if ((land.landData.landFlags & ((int)Parcel.ParcelFlags.CreateObjects)) == 773 if ((land.landData.Flags & ((int)Parcel.ParcelFlags.CreateObjects)) ==
774 (int)Parcel.ParcelFlags.CreateObjects) 774 (int)Parcel.ParcelFlags.CreateObjects)
775 permission = true; 775 permission = true;
776 776
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index 7ff5024..98149f5 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -2444,9 +2444,9 @@ namespace OpenSim.Region.Environment.Scenes
2444 ILandObject land = LandChannel.GetLandObject(agent.startpos.X, agent.startpos.Y); 2444 ILandObject land = LandChannel.GetLandObject(agent.startpos.X, agent.startpos.Y);
2445 if (land != null) 2445 if (land != null)
2446 { 2446 {
2447 if (land.landData.landingType == (byte)1 && land.landData.userLocation != LLVector3.Zero) 2447 if (land.landData.LandingType == (byte)1 && land.landData.UserLocation != LLVector3.Zero)
2448 { 2448 {
2449 agent.startpos = land.landData.userLocation; 2449 agent.startpos = land.landData.UserLocation;
2450 } 2450 }
2451 } 2451 }
2452 } 2452 }
@@ -3311,7 +3311,7 @@ namespace OpenSim.Region.Environment.Scenes
3311 } 3311 }
3312 else 3312 else
3313 { 3313 {
3314 return land.landData.ownerID; 3314 return land.landData.OwnerID;
3315 } 3315 }
3316 } 3316 }
3317 3317
@@ -3329,7 +3329,7 @@ namespace OpenSim.Region.Environment.Scenes
3329 } 3329 }
3330 else 3330 else
3331 { 3331 {
3332 land.landData.musicURL = url; 3332 land.landData.MusicURL = url;
3333 return; 3333 return;
3334 } 3334 }
3335 } 3335 }
@@ -3345,7 +3345,7 @@ namespace OpenSim.Region.Environment.Scenes
3345 3345
3346 else 3346 else
3347 { 3347 {
3348 land.landData.mediaURL = url; 3348 land.landData.MediaURL = url;
3349 return; 3349 return;
3350 } 3350 }
3351 } 3351 }
@@ -3394,13 +3394,13 @@ namespace OpenSim.Region.Environment.Scenes
3394 { 3394 {
3395 if (parcel != null) 3395 if (parcel != null)
3396 { 3396 {
3397 if ((parcel.landData.landFlags & (uint)Parcel.ParcelFlags.AllowOtherScripts) != 0) 3397 if ((parcel.landData.Flags & (uint)Parcel.ParcelFlags.AllowOtherScripts) != 0)
3398 { 3398 {
3399 return true; 3399 return true;
3400 } 3400 }
3401 else if ((parcel.landData.landFlags & (uint)Parcel.ParcelFlags.AllowGroupScripts) != 0) 3401 else if ((parcel.landData.Flags & (uint)Parcel.ParcelFlags.AllowGroupScripts) != 0)
3402 { 3402 {
3403 if (part.OwnerID == parcel.landData.ownerID || (parcel.landData.isGroupOwned && part.GroupID == parcel.landData.groupID) || ExternalChecks.ExternalChecksCanBeGodLike(part.OwnerID)) 3403 if (part.OwnerID == parcel.landData.OwnerID || (parcel.landData.IsGroupOwned && part.GroupID == parcel.landData.GroupID) || ExternalChecks.ExternalChecksCanBeGodLike(part.OwnerID))
3404 { 3404 {
3405 return true; 3405 return true;
3406 } 3406 }
@@ -3411,7 +3411,7 @@ namespace OpenSim.Region.Environment.Scenes
3411 } 3411 }
3412 else 3412 else
3413 { 3413 {
3414 if (part.OwnerID == parcel.landData.ownerID) 3414 if (part.OwnerID == parcel.landData.OwnerID)
3415 { 3415 {
3416 return true; 3416 return true;
3417 } 3417 }
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index da1e511..b8a214a 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -4334,9 +4334,9 @@ namespace OpenSim.Region.ScriptEngine.Common
4334 ILandObject parcel = World.LandChannel.GetLandObject(av.AbsolutePosition.X, av.AbsolutePosition.Y); 4334 ILandObject parcel = World.LandChannel.GetLandObject(av.AbsolutePosition.X, av.AbsolutePosition.Y);
4335 if (parcel != null) 4335 if (parcel != null)
4336 { 4336 {
4337 if (m_host.ObjectOwner == parcel.landData.ownerID || 4337 if (m_host.ObjectOwner == parcel.landData.OwnerID ||
4338 (m_host.OwnerID == m_host.GroupID && m_host.GroupID == parcel.landData.groupID 4338 (m_host.OwnerID == m_host.GroupID && m_host.GroupID == parcel.landData.GroupID
4339 && parcel.landData.isGroupOwned) || World.ExternalChecks.ExternalChecksCanBeGodLike(m_host.OwnerID)) 4339 && parcel.landData.IsGroupOwned) || World.ExternalChecks.ExternalChecksCanBeGodLike(m_host.OwnerID))
4340 { 4340 {
4341 av.StandUp(); 4341 av.StandUp();
4342 } 4342 }
@@ -4702,7 +4702,7 @@ namespace OpenSim.Region.ScriptEngine.Common
4702 m_host.AddScriptLPS(1); 4702 m_host.AddScriptLPS(1);
4703 LLUUID key; 4703 LLUUID key;
4704 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 4704 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
4705 if (land.ownerID == m_host.OwnerID) 4705 if (land.OwnerID == m_host.OwnerID)
4706 { 4706 {
4707 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 4707 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
4708 if (LLUUID.TryParse(avatar, out key)) 4708 if (LLUUID.TryParse(avatar, out key))
@@ -4710,7 +4710,7 @@ namespace OpenSim.Region.ScriptEngine.Common
4710 entry.AgentID = key; 4710 entry.AgentID = key;
4711 entry.Flags = ParcelManager.AccessList.Access; 4711 entry.Flags = ParcelManager.AccessList.Access;
4712 entry.Time = DateTime.Now.AddHours(hours); 4712 entry.Time = DateTime.Now.AddHours(hours);
4713 land.parcelAccessList.Add(entry); 4713 land.ParcelAccessList.Add(entry);
4714 } 4714 }
4715 } 4715 }
4716 } 4716 }
@@ -6852,7 +6852,7 @@ namespace OpenSim.Region.ScriptEngine.Common
6852 m_host.AddScriptLPS(1); 6852 m_host.AddScriptLPS(1);
6853 LLUUID key; 6853 LLUUID key;
6854 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6854 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6855 if (land.ownerID == m_host.OwnerID) 6855 if (land.OwnerID == m_host.OwnerID)
6856 { 6856 {
6857 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 6857 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
6858 if (LLUUID.TryParse(avatar, out key)) 6858 if (LLUUID.TryParse(avatar, out key))
@@ -6860,7 +6860,7 @@ namespace OpenSim.Region.ScriptEngine.Common
6860 entry.AgentID = key; 6860 entry.AgentID = key;
6861 entry.Flags = ParcelManager.AccessList.Ban; 6861 entry.Flags = ParcelManager.AccessList.Ban;
6862 entry.Time = DateTime.Now.AddHours(hours); 6862 entry.Time = DateTime.Now.AddHours(hours);
6863 land.parcelAccessList.Add(entry); 6863 land.ParcelAccessList.Add(entry);
6864 } 6864 }
6865 } 6865 }
6866 } 6866 }
@@ -6870,15 +6870,15 @@ namespace OpenSim.Region.ScriptEngine.Common
6870 m_host.AddScriptLPS(1); 6870 m_host.AddScriptLPS(1);
6871 LLUUID key; 6871 LLUUID key;
6872 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6872 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6873 if (land.ownerID == m_host.OwnerID) 6873 if (land.OwnerID == m_host.OwnerID)
6874 { 6874 {
6875 if (LLUUID.TryParse(avatar, out key)) 6875 if (LLUUID.TryParse(avatar, out key))
6876 { 6876 {
6877 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6877 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6878 { 6878 {
6879 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Access) 6879 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Access)
6880 { 6880 {
6881 land.parcelAccessList.Remove(entry); 6881 land.ParcelAccessList.Remove(entry);
6882 break; 6882 break;
6883 } 6883 }
6884 } 6884 }
@@ -6891,15 +6891,15 @@ namespace OpenSim.Region.ScriptEngine.Common
6891 m_host.AddScriptLPS(1); 6891 m_host.AddScriptLPS(1);
6892 LLUUID key; 6892 LLUUID key;
6893 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6893 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6894 if (land.ownerID == m_host.OwnerID) 6894 if (land.OwnerID == m_host.OwnerID)
6895 { 6895 {
6896 if (LLUUID.TryParse(avatar, out key)) 6896 if (LLUUID.TryParse(avatar, out key))
6897 { 6897 {
6898 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6898 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6899 { 6899 {
6900 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Ban) 6900 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Ban)
6901 { 6901 {
6902 land.parcelAccessList.Remove(entry); 6902 land.ParcelAccessList.Remove(entry);
6903 break; 6903 break;
6904 } 6904 }
6905 } 6905 }
@@ -6961,7 +6961,7 @@ namespace OpenSim.Region.ScriptEngine.Common
6961 public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos) 6961 public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos)
6962 { 6962 {
6963 m_host.AddScriptLPS(1); 6963 m_host.AddScriptLPS(1);
6964 return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.landFlags; 6964 return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags;
6965 } 6965 }
6966 6966
6967 public LSL_Types.LSLInteger llGetRegionFlags() 6967 public LSL_Types.LSLInteger llGetRegionFlags()
@@ -7038,13 +7038,13 @@ namespace OpenSim.Region.ScriptEngine.Common
7038 { 7038 {
7039 m_host.AddScriptLPS(1); 7039 m_host.AddScriptLPS(1);
7040 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 7040 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
7041 if (land.ownerID == m_host.OwnerID) 7041 if (land.OwnerID == m_host.OwnerID)
7042 { 7042 {
7043 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 7043 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
7044 { 7044 {
7045 if (entry.Flags == ParcelManager.AccessList.Ban) 7045 if (entry.Flags == ParcelManager.AccessList.Ban)
7046 { 7046 {
7047 land.parcelAccessList.Remove(entry); 7047 land.ParcelAccessList.Remove(entry);
7048 } 7048 }
7049 } 7049 }
7050 } 7050 }
@@ -7054,13 +7054,13 @@ namespace OpenSim.Region.ScriptEngine.Common
7054 { 7054 {
7055 m_host.AddScriptLPS(1); 7055 m_host.AddScriptLPS(1);
7056 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 7056 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
7057 if (land.ownerID == m_host.OwnerID) 7057 if (land.OwnerID == m_host.OwnerID)
7058 { 7058 {
7059 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 7059 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
7060 { 7060 {
7061 if (entry.Flags == ParcelManager.AccessList.Access) 7061 if (entry.Flags == ParcelManager.AccessList.Access)
7062 { 7062 {
7063 land.parcelAccessList.Remove(entry); 7063 land.ParcelAccessList.Remove(entry);
7064 } 7064 }
7065 } 7065 }
7066 } 7066 }
@@ -7083,7 +7083,7 @@ namespace OpenSim.Region.ScriptEngine.Common
7083 { 7083 {
7084 if (category == 0) 7084 if (category == 0)
7085 { 7085 {
7086 return land.simwidePrims; 7086 return land.SimwidePrims;
7087 } 7087 }
7088 7088
7089 else 7089 else
@@ -7102,22 +7102,22 @@ namespace OpenSim.Region.ScriptEngine.Common
7102 7102
7103 else if (category == 1)//Owner Prims 7103 else if (category == 1)//Owner Prims
7104 { 7104 {
7105 return land.ownerPrims; 7105 return land.OwnerPrims;
7106 } 7106 }
7107 7107
7108 else if (category == 2)//Group Prims 7108 else if (category == 2)//Group Prims
7109 { 7109 {
7110 return land.groupPrims; 7110 return land.GroupPrims;
7111 } 7111 }
7112 7112
7113 else if (category == 3)//Other Prims 7113 else if (category == 3)//Other Prims
7114 { 7114 {
7115 return land.otherPrims; 7115 return land.OtherPrims;
7116 } 7116 }
7117 7117
7118 else if (category == 4)//Selected 7118 else if (category == 4)//Selected
7119 { 7119 {
7120 return land.selectedPrims; 7120 return land.SelectedPrims;
7121 } 7121 }
7122 7122
7123 else if (category == 5)//Temp 7123 else if (category == 5)//Temp
@@ -7175,14 +7175,14 @@ namespace OpenSim.Region.ScriptEngine.Common
7175 7175
7176 if (sim_wide == 1) 7176 if (sim_wide == 1)
7177 { 7177 {
7178 decimal v = land.simwideArea * (decimal)(0.22) * (decimal)bonusfactor; 7178 decimal v = land.SimwideArea * (decimal)(0.22) * (decimal)bonusfactor;
7179 7179
7180 return (int)v; 7180 return (int)v;
7181 } 7181 }
7182 7182
7183 else 7183 else
7184 { 7184 {
7185 decimal v = land.area * (decimal)(0.22) * (decimal)bonusfactor; 7185 decimal v = land.Area * (decimal)(0.22) * (decimal)bonusfactor;
7186 7186
7187 return (int)v; 7187 return (int)v;
7188 } 7188 }
@@ -7203,19 +7203,19 @@ namespace OpenSim.Region.ScriptEngine.Common
7203 switch (o.ToString()) 7203 switch (o.ToString())
7204 { 7204 {
7205 case "0": 7205 case "0":
7206 ret = ret + new LSL_Types.list(land.landName); 7206 ret = ret + new LSL_Types.list(land.Name);
7207 break; 7207 break;
7208 case "1": 7208 case "1":
7209 ret = ret + new LSL_Types.list(land.landDesc); 7209 ret = ret + new LSL_Types.list(land.Description);
7210 break; 7210 break;
7211 case "2": 7211 case "2":
7212 ret = ret + new LSL_Types.list(land.ownerID.ToString()); 7212 ret = ret + new LSL_Types.list(land.OwnerID.ToString());
7213 break; 7213 break;
7214 case "3": 7214 case "3":
7215 ret = ret + new LSL_Types.list(land.groupID.ToString()); 7215 ret = ret + new LSL_Types.list(land.GroupID.ToString());
7216 break; 7216 break;
7217 case "4": 7217 case "4":
7218 ret = ret + new LSL_Types.list(land.area); 7218 ret = ret + new LSL_Types.list(land.Area);
7219 break; 7219 break;
7220 default: 7220 default:
7221 ret = ret + new LSL_Types.list(0); 7221 ret = ret + new LSL_Types.list(0);
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index a5c5453..c7a7581 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -4198,9 +4198,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4198 ILandObject parcel = World.LandChannel.GetLandObject(av.AbsolutePosition.X, av.AbsolutePosition.Y); 4198 ILandObject parcel = World.LandChannel.GetLandObject(av.AbsolutePosition.X, av.AbsolutePosition.Y);
4199 if (parcel != null) 4199 if (parcel != null)
4200 { 4200 {
4201 if (m_host.ObjectOwner == parcel.landData.ownerID || 4201 if (m_host.ObjectOwner == parcel.landData.OwnerID ||
4202 (m_host.OwnerID == m_host.GroupID && m_host.GroupID == parcel.landData.groupID 4202 (m_host.OwnerID == m_host.GroupID && m_host.GroupID == parcel.landData.GroupID
4203 && parcel.landData.isGroupOwned) || World.ExternalChecks.ExternalChecksCanBeGodLike(m_host.OwnerID)) 4203 && parcel.landData.IsGroupOwned) || World.ExternalChecks.ExternalChecksCanBeGodLike(m_host.OwnerID))
4204 { 4204 {
4205 av.StandUp(); 4205 av.StandUp();
4206 } 4206 }
@@ -4566,7 +4566,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4566 m_host.AddScriptLPS(1); 4566 m_host.AddScriptLPS(1);
4567 LLUUID key; 4567 LLUUID key;
4568 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 4568 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
4569 if (land.ownerID == m_host.OwnerID) 4569 if (land.OwnerID == m_host.OwnerID)
4570 { 4570 {
4571 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 4571 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
4572 if (LLUUID.TryParse(avatar, out key)) 4572 if (LLUUID.TryParse(avatar, out key))
@@ -4574,7 +4574,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4574 entry.AgentID = key; 4574 entry.AgentID = key;
4575 entry.Flags = ParcelManager.AccessList.Access; 4575 entry.Flags = ParcelManager.AccessList.Access;
4576 entry.Time = DateTime.Now.AddHours(hours); 4576 entry.Time = DateTime.Now.AddHours(hours);
4577 land.parcelAccessList.Add(entry); 4577 land.ParcelAccessList.Add(entry);
4578 } 4578 }
4579 } 4579 }
4580 } 4580 }
@@ -6632,7 +6632,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6632 m_host.AddScriptLPS(1); 6632 m_host.AddScriptLPS(1);
6633 LLUUID key; 6633 LLUUID key;
6634 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6634 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6635 if (land.ownerID == m_host.OwnerID) 6635 if (land.OwnerID == m_host.OwnerID)
6636 { 6636 {
6637 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry(); 6637 ParcelManager.ParcelAccessEntry entry = new ParcelManager.ParcelAccessEntry();
6638 if (LLUUID.TryParse(avatar, out key)) 6638 if (LLUUID.TryParse(avatar, out key))
@@ -6640,7 +6640,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6640 entry.AgentID = key; 6640 entry.AgentID = key;
6641 entry.Flags = ParcelManager.AccessList.Ban; 6641 entry.Flags = ParcelManager.AccessList.Ban;
6642 entry.Time = DateTime.Now.AddHours(hours); 6642 entry.Time = DateTime.Now.AddHours(hours);
6643 land.parcelAccessList.Add(entry); 6643 land.ParcelAccessList.Add(entry);
6644 } 6644 }
6645 } 6645 }
6646 } 6646 }
@@ -6650,15 +6650,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6650 m_host.AddScriptLPS(1); 6650 m_host.AddScriptLPS(1);
6651 LLUUID key; 6651 LLUUID key;
6652 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6652 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6653 if (land.ownerID == m_host.OwnerID) 6653 if (land.OwnerID == m_host.OwnerID)
6654 { 6654 {
6655 if (LLUUID.TryParse(avatar, out key)) 6655 if (LLUUID.TryParse(avatar, out key))
6656 { 6656 {
6657 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6657 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6658 { 6658 {
6659 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Access) 6659 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Access)
6660 { 6660 {
6661 land.parcelAccessList.Remove(entry); 6661 land.ParcelAccessList.Remove(entry);
6662 break; 6662 break;
6663 } 6663 }
6664 } 6664 }
@@ -6671,15 +6671,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6671 m_host.AddScriptLPS(1); 6671 m_host.AddScriptLPS(1);
6672 LLUUID key; 6672 LLUUID key;
6673 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6673 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6674 if (land.ownerID == m_host.OwnerID) 6674 if (land.OwnerID == m_host.OwnerID)
6675 { 6675 {
6676 if (LLUUID.TryParse(avatar, out key)) 6676 if (LLUUID.TryParse(avatar, out key))
6677 { 6677 {
6678 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6678 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6679 { 6679 {
6680 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Ban) 6680 if (entry.AgentID == key && entry.Flags == ParcelManager.AccessList.Ban)
6681 { 6681 {
6682 land.parcelAccessList.Remove(entry); 6682 land.ParcelAccessList.Remove(entry);
6683 break; 6683 break;
6684 } 6684 }
6685 } 6685 }
@@ -6741,7 +6741,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6741 public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos) 6741 public LSL_Types.LSLInteger llGetParcelFlags(LSL_Types.Vector3 pos)
6742 { 6742 {
6743 m_host.AddScriptLPS(1); 6743 m_host.AddScriptLPS(1);
6744 return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.landFlags; 6744 return (int)World.LandChannel.GetLandObject((float)pos.x, (float)pos.y).landData.Flags;
6745 } 6745 }
6746 6746
6747 public LSL_Types.LSLInteger llGetRegionFlags() 6747 public LSL_Types.LSLInteger llGetRegionFlags()
@@ -6818,13 +6818,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6818 { 6818 {
6819 m_host.AddScriptLPS(1); 6819 m_host.AddScriptLPS(1);
6820 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6820 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6821 if (land.ownerID == m_host.OwnerID) 6821 if (land.OwnerID == m_host.OwnerID)
6822 { 6822 {
6823 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6823 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6824 { 6824 {
6825 if (entry.Flags == ParcelManager.AccessList.Ban) 6825 if (entry.Flags == ParcelManager.AccessList.Ban)
6826 { 6826 {
6827 land.parcelAccessList.Remove(entry); 6827 land.ParcelAccessList.Remove(entry);
6828 } 6828 }
6829 } 6829 }
6830 } 6830 }
@@ -6834,13 +6834,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6834 { 6834 {
6835 m_host.AddScriptLPS(1); 6835 m_host.AddScriptLPS(1);
6836 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData; 6836 LandData land = World.LandChannel.GetLandObject(m_host.AbsolutePosition.X, m_host.AbsolutePosition.Y).landData;
6837 if (land.ownerID == m_host.OwnerID) 6837 if (land.OwnerID == m_host.OwnerID)
6838 { 6838 {
6839 foreach (ParcelManager.ParcelAccessEntry entry in land.parcelAccessList) 6839 foreach (ParcelManager.ParcelAccessEntry entry in land.ParcelAccessList)
6840 { 6840 {
6841 if (entry.Flags == ParcelManager.AccessList.Access) 6841 if (entry.Flags == ParcelManager.AccessList.Access)
6842 { 6842 {
6843 land.parcelAccessList.Remove(entry); 6843 land.ParcelAccessList.Remove(entry);
6844 } 6844 }
6845 } 6845 }
6846 } 6846 }
@@ -6863,7 +6863,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6863 { 6863 {
6864 if (category == 0) 6864 if (category == 0)
6865 { 6865 {
6866 return land.simwidePrims; 6866 return land.SimwidePrims;
6867 } 6867 }
6868 6868
6869 else 6869 else
@@ -6882,22 +6882,22 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6882 6882
6883 else if (category == 1)//Owner Prims 6883 else if (category == 1)//Owner Prims
6884 { 6884 {
6885 return land.ownerPrims; 6885 return land.OwnerPrims;
6886 } 6886 }
6887 6887
6888 else if (category == 2)//Group Prims 6888 else if (category == 2)//Group Prims
6889 { 6889 {
6890 return land.groupPrims; 6890 return land.GroupPrims;
6891 } 6891 }
6892 6892
6893 else if (category == 3)//Other Prims 6893 else if (category == 3)//Other Prims
6894 { 6894 {
6895 return land.otherPrims; 6895 return land.OtherPrims;
6896 } 6896 }
6897 6897
6898 else if (category == 4)//Selected 6898 else if (category == 4)//Selected
6899 { 6899 {
6900 return land.selectedPrims; 6900 return land.SelectedPrims;
6901 } 6901 }
6902 6902
6903 else if (category == 5)//Temp 6903 else if (category == 5)//Temp
@@ -6955,14 +6955,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6955 6955
6956 if (sim_wide == 1) 6956 if (sim_wide == 1)
6957 { 6957 {
6958 decimal v = land.simwideArea * (decimal)(0.22) * (decimal)bonusfactor; 6958 decimal v = land.SimwideArea * (decimal)(0.22) * (decimal)bonusfactor;
6959 6959
6960 return (int)v; 6960 return (int)v;
6961 } 6961 }
6962 6962
6963 else 6963 else
6964 { 6964 {
6965 decimal v = land.area * (decimal)(0.22) * (decimal)bonusfactor; 6965 decimal v = land.Area * (decimal)(0.22) * (decimal)bonusfactor;
6966 6966
6967 return (int)v; 6967 return (int)v;
6968 } 6968 }
@@ -6983,19 +6983,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
6983 switch (o.ToString()) 6983 switch (o.ToString())
6984 { 6984 {
6985 case "0": 6985 case "0":
6986 ret = ret + new LSL_Types.list(land.landName); 6986 ret = ret + new LSL_Types.list(land.Name);
6987 break; 6987 break;
6988 case "1": 6988 case "1":
6989 ret = ret + new LSL_Types.list(land.landDesc); 6989 ret = ret + new LSL_Types.list(land.Description);
6990 break; 6990 break;
6991 case "2": 6991 case "2":
6992 ret = ret + new LSL_Types.list(land.ownerID.ToString()); 6992 ret = ret + new LSL_Types.list(land.OwnerID.ToString());
6993 break; 6993 break;
6994 case "3": 6994 case "3":
6995 ret = ret + new LSL_Types.list(land.groupID.ToString()); 6995 ret = ret + new LSL_Types.list(land.GroupID.ToString());
6996 break; 6996 break;
6997 case "4": 6997 case "4":
6998 ret = ret + new LSL_Types.list(land.area); 6998 ret = ret + new LSL_Types.list(land.Area);
6999 break; 6999 break;
7000 default: 7000 default:
7001 ret = ret + new LSL_Types.list(0); 7001 ret = ret + new LSL_Types.list(0);