Tween on players leg not playing

Hello, I can’t tween the players leg for some reason
I am not the best with tweens but here is the script

local RS = game:GetService("ReplicatedStorage")
local RE = RS.Events
local ball = game.Workspace["Soccer Ball"]
local ts = game:GetService("TweenService")

RE.Kicked.OnServerEvent:Connect(function(plr, char, power)
	print("recieved")
	local rl = char:FindFirstChild("Right Leg")
	local kick = ts:Create(rl, TweenInfo.new(1), {["CFrame"] = rl.CFrame * CFrame.new(0, 0, math.rad(power/2))})
	kick:Play()
end)

the script runs it just does not play the tween

why tweening the leg when you can make an animation instead?

You shouldnt want to achieve it like this, Like @CreatedInLua said, Use an animation.
Animator | Roblox Creator Documentation
Animation Editor | Roblox Creator Documentation
Using Animations | Roblox Creator Documentation

I did what I want to do now, its for roblox football tools

It’s simply better to do an animation and most likely the solution. Make a simple kick animation with Roblox Animation Editor or whatever animation editor you use and then set the priority to Action.
Copy the id and then create an animation object inside your script with the animation id, reference it with a variable and get the player’s animator through the character. Create a loadanimation and run the play command and now you have a working kick animation

Edit: The reason the tween doesn’t work is probably due to core animations requiring the leg, just use an animation

you can’t cframe your player’s leg because all your bodies are attached together and together attached to HumanoidRootPart with weld or something called attachment. so you can’t cframe your leg off your character.

I fixed it now I just dont understand with the animation im not sure

This may help you understand animations