public LSL_Integer llOverMyLand(string id)
{
if (!ScriptProtection.CheckThreatLevel(ThreatLevel.None, "LSL", m_host, "LSL", m_itemID)) return 0;
UUID key = new UUID();
if (UUID.TryParse(id, out key))
{
IScenePresence presence = World.GetScenePresence(key);
IParcelManagementModule parcelManagement = World.RequestModuleInterface<IParcelManagementModule>();
if (presence != null) // object is an avatar
{
if (parcelManagement != null)
{
if (m_host.OwnerID
== parcelManagement.GetLandObject(
presence.AbsolutePosition.X, presence.AbsolutePosition.Y).LandData.OwnerID)
return 1;
}
}
else // object is not an avatar
{
ISceneChildEntity obj = World.GetSceneObjectPart(key);
if (obj != null)
if (parcelManagement != null)
{
if (m_host.OwnerID
== parcelManagement.GetLandObject(
obj.AbsolutePosition.X, obj.AbsolutePosition.Y).LandData.OwnerID)
return 1;
}
}
}
return 0;
}