OpenSim.Region.ScriptEngine.Shared.Api.OSSL_Api.osNpcRemove C# (CSharp) Method

osNpcRemove() public method

public osNpcRemove ( OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString npc ) : void
npc OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString
return void
        public void osNpcRemove(LSL_Key npc)
        {
            CheckThreatLevel(ThreatLevel.High, "osNpcRemove");
            m_host.AddScriptLPS(1);

            try
            {
                INPCModule module = World.RequestModuleInterface<INPCModule>();
                if (module != null)
                {
                    UUID npcId = new UUID(npc.m_string);

                    if (!module.CheckPermissions(npcId, m_host.OwnerID))
                        return;

                    module.DeleteNPC(npcId, World);                   
                }
            }
            catch { }
        }

Usage Example

        public void TestOsNpcRemoveUnowned()
        {
            TestHelpers.InMethod();
//            log4net.Config.XmlConfigurator.Configure();

            // Store an avatar with a different height from default in a notecard.
            UUID userId = TestHelpers.ParseTail(0x1);
            float newHeight = 1.9f;

            ScenePresence sp = SceneHelpers.AddScenePresence(m_scene, userId);
            sp.Appearance.AvatarHeight = newHeight;
            SceneObjectGroup so = SceneHelpers.CreateSceneObject(1, userId, 0x10);
            SceneObjectPart part = so.RootPart;
            m_scene.AddSceneObject(so);

            OSSL_Api osslApi = new OSSL_Api();
            osslApi.Initialize(m_engine, part, null, null);

            string notecardName = "appearanceNc";
            osslApi.osOwnerSaveAppearance(notecardName);

            string npcRaw
                = osslApi.osNpcCreate(
                    "Jane", "Doe", new LSL_Types.Vector3(128, 128, 128), notecardName, ScriptBaseClass.OS_NPC_NOT_OWNED);
            
            osslApi.osNpcRemove(npcRaw);

            UUID npcId = new UUID(npcRaw);
            ScenePresence npc = m_scene.GetScenePresence(npcId);
            Assert.That(npc, Is.Null);
        }
All Usage Examples Of OpenSim.Region.ScriptEngine.Shared.Api.OSSL_Api::osNpcRemove
OSSL_Api