From d6d3e14f291d3217d1727dfb9ddfe2420c9a0a42 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sun, 24 Jul 2016 19:31:28 +0100 Subject: [PATCH] add a missing update to avatar damage Invulnerable --- OpenSim/Framework/ISceneAgent.cs | 1 + OpenSim/Region/CoreModules/World/Land/LandObject.cs | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/OpenSim/Framework/ISceneAgent.cs b/OpenSim/Framework/ISceneAgent.cs index be11931109..1848b1757e 100644 --- a/OpenSim/Framework/ISceneAgent.cs +++ b/OpenSim/Framework/ISceneAgent.cs @@ -55,6 +55,7 @@ namespace OpenSim.Framework /// bool IsChildAgent { get; } + bool Invulnerable { get; set; } /// /// Avatar appearance data. /// diff --git a/OpenSim/Region/CoreModules/World/Land/LandObject.cs b/OpenSim/Region/CoreModules/World/Land/LandObject.cs index 4cea7bb209..b00f2b0de3 100644 --- a/OpenSim/Region/CoreModules/World/Land/LandObject.cs +++ b/OpenSim/Region/CoreModules/World/Land/LandObject.cs @@ -374,6 +374,10 @@ namespace OpenSim.Region.CoreModules.World.Land public void SendLandProperties(int sequence_id, bool snap_selection, int request_result, IClientAPI remote_client) { + remote_client.SceneAgent.Invulnerable = + !m_scene.RegionInfo.RegionSettings.AllowDamage || + (m_landData.Flags & (uint)ParcelFlags.AllowDamage) == 0; + if (remote_client.SceneAgent.PresenceType == PresenceType.Npc) return;