Aurora.ScriptEngine.AuroraDotNetEngine.APIs.LSL_Api.SetTexture C# (CSharp) Метод

SetTexture() защищенный Метод

protected SetTexture ( ISceneChildEntity part, string texture, int face ) : bool
part ISceneChildEntity
texture string
face int
Результат bool
        protected bool SetTexture(ISceneChildEntity part, string texture, int face)
        {
            UUID textureID = new UUID();
            int ns = GetNumberOfSides(part);

            textureID = InventoryKey(texture, (int)AssetType.Texture);
            if (textureID == UUID.Zero)
            {
                if (!UUID.TryParse(texture, out textureID))
                    return false;
            }

            Primitive.TextureEntry tex = part.Shape.Textures;

            if (face >= 0 && face < ns)
            {
                Primitive.TextureEntryFace texface = tex.CreateFace((uint)face);
                texface.TextureID = textureID;
                tex.FaceTextures[face] = texface;
                part.UpdateTexture(tex, false);
            }
            if (face == ScriptBaseClass.ALL_SIDES)
            {
                for (uint i = 0; i < ns; i++)
                {
                    if (tex.FaceTextures[i] != null)
                    {
                        tex.FaceTextures[i].TextureID = textureID;
                    }
                }
                tex.DefaultTexture.TextureID = textureID;
                part.UpdateTexture(tex, false);
            }
            return true;
        }
LSL_Api