Model deletes itself from the viewport

I’ve been trying to make a viewport with the player’s character,but for some reason when i clone the character to it it just deletes itself?
How can i make it not delete itself?

Honestly not sure if the category is supposed to be scripting or something else,so sorry if its not right.

Heres the script

local Player = game.Players.PlayerAdded:Wait()
-- Player Combat Animation
local Playerviewportgui = Player.PlayerGui:WaitForChild("Battle").Dummy
local PlayerviewportModel = Instance.new("Model")
local playerviewportcam = Instance.new("Camera")

playerviewportcam.Parent = Playerviewportgui

for i,inst in pairs(Player.Character:GetChildren()) do
	local bodypartclone = inst:Clone()
	if inst.Archivable == false then
		inst.Archivable = true
	end
	
	if bodypartclone:IsA("Script")  then
		
		bodypartclone:Destroy()
	else
		
		print(bodypartclone.Name .. " Was cloned into the viewport!") -- Works
		bodypartclone.Parent = PlayerviewportModel
	end


end

playerviewportcam.CFrame = CFrame.new(Vector3.new(0,0,0),PlayerviewportModel:WaitForChild("HumanoidRootPart").Position)
PlayerviewportModel.Parent = game.ReplicatedStorage -- The model doesn't disappear when its in the replicatedstorage
Playerviewportgui.CurrentCamera = playerviewportcam

PlayerviewportModel.Parent = Playerviewportgui.WorldModel -- The model just disappears?

Edit mode explorer screenshot

The model appears in the viewport but i cannot see it in the explorer on the client or on the serverside,also the camera disappears too. Please help?

No character or camera in the play mode

Thanks in advance.