im using a part as a projectile to hit the other player

how would i let an attacker take control over another player's character, im using a part as a projectile to attack the target and this is my script
```lua
local enabled = false
local players = game:GetService("Players")
local work = game:GetService("Workspace")
script.Parent.Touched:Connect(function(hit)
    local player = players:GetPlayerFromCharacter(hit.Parent)
    local player2 = players:GetPlayerFromCharacter(hit.Parent.Parent)
    if player then
        if enabled then return end
        enabled = true
        local control = player.Character:Clone()
        control.Parent = work
        control.HumanoidRootPart.CFrame = player.Character.HumanoidRootPart.CFrame
        player.Character = nil
        players[script.Parent.Name].Character:Clone()
        players[script.Parent.Name].Character = control
        wait(15)
        for i,v in pairs(work:GetChildren()) do
            if v:IsA("Model") and v.Name == script.Parent.Name then
                players[script.Parent.Name].Character = v
            end
        end
    elseif player2 then
        if enabled then return end
        enabled = true
        players[script.Parent.Name].Character = player2.Character
        player2.Character = nil
        wait(15)
        for i,v in pairs(work:GetChildren()) do
            if v:IsA("Model") and v.Name == script.Parent.Name then
                players[script.Parent.Name].Character = v
            end
        end
    end
end)
```