OpenSim.Region.ScriptEngine.Shared.Api.LSL_Api.llResetAnimationOverride C# (CSharp) Method

llResetAnimationOverride() public method

public llResetAnimationOverride ( OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString animState ) : void
animState OpenSim.Region.ScriptEngine.Shared.LSL_Types.LSLString
return void
        public void llResetAnimationOverride(LSL_String animState)
        {
            ScenePresence presence = World.GetScenePresence(m_item.PermsGranter);
            if (presence == null)
                return;

            if (m_item.PermsGranter == UUID.Zero)
            {
                llShout(ScriptBaseClass.DEBUG_CHANNEL, "No permission to override animations");
                return;
            }

            if ((m_item.PermsMask & ScriptBaseClass.PERMISSION_OVERRIDE_ANIMATIONS) == 0)
            {
                llShout(ScriptBaseClass.DEBUG_CHANNEL, "No permission to override animations");
                return;
            }

            if (animState == "ALL")
            {
                presence.SetAnimationOverride("ALL", UUID.Zero);
                return;
            }
                
            string state = String.Empty;

            foreach (KeyValuePair<string, string> kvp in MovementAnimationsForLSL)
            {
                if (kvp.Value.ToLower() == ((string)animState).ToLower())
                {
                    state = kvp.Key;
                    break;
                }
            }

            if (state == String.Empty)
            {
                return;
            }

            presence.SetAnimationOverride(state, UUID.Zero);
        }
LSL_Api