public override void FromOSD(OSDMap v) { OSDMap values = (OSDMap)v; EstateID = (uint)values["EstateID"].AsInteger(); EstateName = values["EstateName"].AsString(); AbuseEmailToEstateOwner = values["AbuseEmailToEstateOwner"].AsBoolean(); DenyAnonymous = values["DenyAnonymous"].AsBoolean(); ResetHomeOnTeleport = values["ResetHomeOnTeleport"].AsBoolean(); FixedSun = values["FixedSun"].AsBoolean(); DenyTransacted = values["DenyTransacted"].AsBoolean(); BlockDwell = values["BlockDwell"].AsBoolean(); DenyIdentified = values["DenyIdentified"].AsBoolean(); AllowVoice = values["AllowVoice"].AsBoolean(); UseGlobalTime = values["UseGlobalTime"].AsBoolean(); PricePerMeter = values["PricePerMeter"].AsInteger(); TaxFree = values["TaxFree"].AsBoolean(); AllowDirectTeleport = values["AllowDirectTeleport"].AsBoolean(); ParentEstateID = (uint)values["ParentEstateID"].AsInteger(); SunPosition = values["SunPosition"].AsReal(); EstateSkipScripts = values["EstateSkipScripts"].AsBoolean(); BillableFactor = (float)values["BillableFactor"].AsReal(); PublicAccess = values["PublicAccess"].AsBoolean(); AbuseEmail = values["AbuseEmail"].AsString(); EstateOwner = values["EstateOwner"].AsUUID(); AllowLandmark = values["AllowLandmark"].AsBoolean(); AllowParcelChanges = values["AllowParcelChanges"].AsBoolean(); AllowSetHome = values["AllowSetHome"].AsBoolean(); DenyMinors = values["DenyMinors"].AsBoolean(); OSDArray Managers = values["EstateManagers"] as OSDArray; if (Managers != null) { EstateManagers = Managers.ConvertAll <UUID>((o) => o); } OSDArray Ban = values["EstateBans"] as OSDArray; if (Ban != null) { EstateBans = Ban.ConvertAll <EstateBan>((o) => { EstateBan ban = new EstateBan(); ban.FromOSD(o); return(ban); }); } OSDArray Access = values["EstateAccess"] as OSDArray; if (Access != null) { EstateAccess = Access.ConvertAll <UUID>((o) => o); } OSDArray Groups = values["EstateGroups"] as OSDArray; if (Groups != null) { EstateGroups = Groups.ConvertAll <UUID>((o) => o); } }
public override void FromOSD(OSDMap v) { OSDMap values = (OSDMap) v; EstateID = (uint) values["EstateID"].AsInteger(); EstateName = values["EstateName"].AsString(); AbuseEmailToEstateOwner = values["AbuseEmailToEstateOwner"].AsBoolean(); DenyAnonymous = values["DenyAnonymous"].AsBoolean(); ResetHomeOnTeleport = values["ResetHomeOnTeleport"].AsBoolean(); FixedSun = values["FixedSun"].AsBoolean(); DenyTransacted = values["DenyTransacted"].AsBoolean(); BlockDwell = values["BlockDwell"].AsBoolean(); DenyIdentified = values["DenyIdentified"].AsBoolean(); AllowVoice = values["AllowVoice"].AsBoolean(); UseGlobalTime = values["UseGlobalTime"].AsBoolean(); PricePerMeter = values["PricePerMeter"].AsInteger(); TaxFree = values["TaxFree"].AsBoolean(); AllowDirectTeleport = values["AllowDirectTeleport"].AsBoolean(); RedirectGridX = values["RedirectGridX"].AsInteger(); RedirectGridY = values["RedirectGridY"].AsInteger(); ParentEstateID = (uint) values["ParentEstateID"].AsInteger(); SunPosition = values["SunPosition"].AsReal(); EstateSkipScripts = values["EstateSkipScripts"].AsBoolean(); BillableFactor = (float) values["BillableFactor"].AsReal(); PublicAccess = values["PublicAccess"].AsBoolean(); AbuseEmail = values["AbuseEmail"].AsString(); EstateOwner = values["EstateOwner"].AsUUID(); AllowLandmark = values["AllowLandmark"].AsBoolean(); AllowParcelChanges = values["AllowParcelChanges"].AsBoolean(); AllowSetHome = values["AllowSetHome"].AsBoolean(); DenyMinors = values["DenyMinors"].AsBoolean(); OSDArray Managers = values["EstateManagers"] as OSDArray; if (Managers != null) { #if (!ISWIN) List<UUID> list = new List<UUID>(); foreach (OSD id in Managers) { list.Add(id.AsUUID()); } EstateManagers = list.ToArray(); #else EstateManagers = Managers.Select(id => id.AsUUID()).ToArray(); #endif } OSDArray Ban = values["EstateBans"] as OSDArray; if (Ban != null) { List<EstateBan> NewBan = new List<EstateBan>(); foreach (OSD BannedUser in Ban) { EstateBan ban = new EstateBan(); ban.FromOSD(BannedUser); NewBan.Add(ban); } EstateBans = NewBan.ToArray(); } OSDArray Access = values["EstateAccess"] as OSDArray; if (Access != null) { #if (!ISWIN) List<UUID> list1 = new List<UUID>(); foreach (OSD uuid in Access) { list1.Add(uuid.AsUUID()); } EstateAccess = list1.ToArray(); #else EstateAccess = Access.Select(uuid => uuid.AsUUID()).ToArray(); #endif } OSDArray Groups = values["EstateGroups"] as OSDArray; if (Groups != null) { #if (!ISWIN) List<UUID> list2 = new List<UUID>(); foreach (OSD uuid in Groups) { list2.Add(uuid.AsUUID()); } EstateGroups = list2.ToArray(); #else EstateGroups = Groups.Select(uuid => uuid.AsUUID()).ToArray(); #endif } }