I don’t know if this is a me problem, but CharacterAdded:Wait() or CharacterAppearanceLoaded:Wait() never function properly. Here is the script:
local replicatedStorage = game:GetService("ReplicatedStorage")
local camera = game.Workspace.CurrentCamera
local Players = game:GetService("Players")
local localPlayer = Players.LocalPlayer
localPlayer.CharacterAppearanceLoaded:Wait()
local viewmod = require(replicatedStorage.ViewModule)
local module = viewmod.new()
replicatedStorage.RequestViewModel.Event:Connect(function(rig)
module:setViewModel(camera, rig)
end)
replicatedStorage.DisconnectViewModel.Event:Connect(function()
module:disconnectViewModel()
end)
local Character = localPlayer.Character
Character.Humanoid.Died:Connect(function()
module:disconnectViewModel()
end)
Script is in StarterGui