I honestly have no idea why this is happening. I used the same code when the player spawns and it works. When I use it in this script, it doesn’t change the face’s transparency. The face’s transparency changes from the server through a remotefunction and it doesn’t replicate to the client.
It’s changing on the server and doesn’t replicate which is why I have no idea what to do. I printed each thing that gets recognized by the for loop and the face is in there. If you have any questions, feel free to ask. Here’s the snippet of code:
for _, v in pairs(plr.Character:GetDescendants()) do
local transparency = Functions:HasProperty(v, "Transparency")
if transparency then
if v:IsA("Decal") then print("Decal", v:GetFullName()) end
pcall(function()
if v:IsA("Decal") then print("Decal changed transparency", v:GetFullName()) end
--incase there is a numbersequence, pcall the function
v.Transparency = 1
print(v.Transparency)
end)
end
end
There’s a lot of good scripts, that you can use, to make player invivisble/ visible. I don’t really want to give you my code, so try using this:
plr.Character:WaitForChild("Head"):WaitForChild("face").Transparency = 1
for _, v in pairs(plr.Character:GetDescendants()) do
local transparency = Functions:HasProperty(v, "Transparency")
if transparency then
if v:IsA("Decal") then print("Decal", v:GetFullName()) end
pcall(function()
if v:IsA("Decal") then print("Decal changed transparency", v:GetFullName()) end
--incase there is a numbersequence, pcall the function
v.Transparency = 1
print(v.Transparency)
end)
end
end
I just found a really weird bug where when I set the transparency to 1 in studio, the white parts don’t go invisible.
This is the 3rd Roblox Studio bug which I’ve found in just a few weeks. It’s really weird. The first one was that the toolbar wasn’t working (had to reopen studio). This other time I logged in and the camera FOV was set to 2.
I remade this code from ScriptingHelpers. (Script not LocalScript)
-- Loops through all of the character's children
for _, item in pairs (character:GetChildren()) do
-- If the item is a part (This means that this is probably a body part), set the transparency to 1 (100% Transparent)
if item.ClassName == "Part" then
if item.Name ~= "HumanoidRootPart" then --Use this when setting player visible.
item.Transparency = 1
-- If the item is an accesssory or a tool, loop through all of the accessory's children
end
elseif item.ClassName == "Accessory" then --Do not make tools invisible, because it may have a bug that when you want player to be visible the tool is still invisible. If you want to make tools invisible too, you should add a code that will only set the transparency for tools.
for _, accessoryPart in pairs (item:GetChildren()) do
--If it finds a part, set it to transparent
if accessoryPart.ClassName == "Part" then
accessoryPart.Transparency = 1
end
end
end
end
This is the exact same as my script. The face still doesn’t replicate. Even setting the face’s transparency to 1 using chr.Head.face.Transparency = 1 doesn’t replicate. This works fine in normals scripts, but when I use it for the remotefunction, it doesn’t replicate