Morph Potion is not working

1.What do you want to achieve?
I want to make morph potion which turns you into penguin
2. Im fix my script but nothing happen.

local tool = script.Parent
tool.Activated:Connect(function(plr)
	local model = game.ReplicatedStorage:FindFirstChild("Penguin")
	local oldModel = game.Players:GetPlayerFromCharacter(tool.Parent)
	local newModel = model:Clone()
	newModel.Name = oldModel.Name
	oldModel = newModel
	newModel.Parent = game.Workspace 
	newModel:SetPrimaryPartCFrame(game.workspace.SpawnLocation.CFrame)
	for _, object in ipairs(game.StarterPlayer.StarterCharacterScripts:GetChildren()) do
		local newObject = object:Clone()
		newObject.Parent = newModel
	end
	oldModel:Destroy()
end)

list
I think to achieve this I need to modify my script. Because idk how morph is working.

Try and replace the oldModel with the actual character (plr.Character)
Add a check to see if the tool has already been used. If it has, the script will exit early to prevent multiple cloning services.
Try replace game.Players:GetPlayerFromCharacter(tool.Parent) with plr to get the player directly.
Try change oldModel:Destroy() to tool:Destroy() since we are replacing the tool with the new model.