i’m currently making a game where players get morphed into different rigs (that aren’t like the regular character ones), but here’s the problem, whenever i do this the animations are delayed due to them being played on the server, and if i play them on the client only that specific player getting morphed can see the animations
current method of morphing (server script):
local NewChar = game.Workspace.NPCs.NPC:Clone()
NewChar.Parent = workspace
NewChar.PrimaryPart.CFrame = Character.HumanoidRootPart.CFrame
Character:Destroy()
Player.Character = NewChar
--Animate script is already inside NewChar
is there another way of morphing from a player to a different rig?
i’m currently going to sleep so, i apologize if i take long to reply
It’s not working cause the clone is parented to nil. Parent it to something, maybe ReplicatedStorage, then apply the description and when you’re done with it destroy the clone.
i tried parenting it to Workspace but it still gives the same error, i also tried to remove the :Clone and get the description of the original model but that also didn’t work
that removed the error, however i don’t think :ApplyDescription is the right thing in this case due to only my bodycolors changing to the model’s colors
local Morph = game.ReplicatedStorage.RemoteEvents.Morph
local Player = game.Players.LocalPlayer
Morph.OnClientEvent:Connect(function(Char)
Char.Animate:Destroy()
Morph.Animate:Clone().Parent = Char
end)
to play the animations for the other players there is the Animate server script inside the model, and, to make it so the animations aren’t delayed for the player being morphed, i fire a RemoteEvent deleting the serverside Animate script and replacing it with a clientside Animate script.
thanks for the help!