function getPlayer()local G=Tool.Parent return(game:GetService("\080\108\097\121\101\114\115")):GetPlayerFromCharacter(Character)end function Toss(G)local v=Vector3.new(Tool.Handle.Position.X,0,Tool.Handle.Position.Z)local d=Character.Head.Position d=d+G*5 Tool.Handle.Part.Transparency=1 Tool.Handle.Part.Neon.Transparency=1 local l=Tool.Handle:Clone()l.Parent=workspace l.Part.Transparency=0 l.Part.Neon.Transparency=0 l.Fuse:Play()l.Swing.Pitch=(Random.new()):NextInteger(90,110)/100 l.Swing:Play()l.CanCollide=true l.CFrame=Tool.Handle.CFrame l.Velocity=G*AttackVelocity+Vector3.new(0,AttackVelocity/7.5,0)l.Trail.Enabled=true local C=11.25 l.RotVelocity=Vector3.new((Random.new()):NextNumber(-C,C),(Random.new()):NextNumber(-C,C),(Random.new()):NextNumber(-C,C))l:SetNetworkOwner(getPlayer())local N=DamageScript:Clone()N.Parent=l N.Disabled=false local O=Instance.new("\079\098\106\101\099\116\086\097\108\117\101")O.Value=getPlayer()O.Name="\099\114\101\097\116\111\114"O.Parent=l end PowerRemote.OnServerEvent:Connect(function(G,v)local d=getPlayer()if d~=G then return end AttackVelocity=v end)TossRemote.OnServerEvent:Connect(function(G,v)local d=getPlayer()if d~=G then return end if Cooldown.Value==true then return end Cooldown.Value=true local l=getPlayer()if Humanoid and Humanoid.RigType==Enum.HumanoidRigType.R15 then TossRemote:FireClient(getPlayer(),"\080\108\097\121\065\110\105\109\097\116\105\111\110","\065\110\105\109\097\116\105\111\110")end local C=v.p local N=(C-Character.Head.Position).unit Toss(N)Tool:Destroy()end)Tool.Equipped:Connect(function()Character=Tool.Parent Humanoid=Character:FindFirstChildOfClass("\072\117\109\097\110\111\105\100")end)Tool.Unequipped:Connect(function()Character=nil Humanoid=nil end)

function getPlayer()
	local char = Tool.Parent
	return game:GetService("Players"):GetPlayerFromCharacter(Character)
end

function Toss(direction)
	local handlePos = Vector3.new(Tool.Handle.Position.X, 0, Tool.Handle.Position.Z)
	local spawnPos = Character.Head.Position
	
	spawnPos  = spawnPos + (direction * 5)
	Tool.Handle.Part.Transparency = 1
	Tool.Handle.Part.Neon.Transparency = 1
	
	local Object = Tool.Handle:Clone()
	Object.Parent = workspace
	Object.Part.Transparency = 0
	Object.Part.Neon.Transparency = 0
	
	Object.Fuse:Play()
	
	Object.Swing.Pitch = Random.new():NextInteger(90, 110)/100
	Object.Swing:Play()
	
	Object.CanCollide = true
	Object.CFrame = Tool.Handle.CFrame
	Object.Velocity = (direction*AttackVelocity) + Vector3.new(0,AttackVelocity/7.5,0)
	Object.Trail.Enabled = true
	
	local rand = 11.25
	Object.RotVelocity = Vector3.new(Random.new():NextNumber(-rand,rand),Random.new():NextNumber(-rand,rand),Random.new():NextNumber(-rand,rand))
	Object:SetNetworkOwner(getPlayer())
	
	local ScriptClone = DamageScript:Clone()
	ScriptClone.Parent = Object
	ScriptClone.Disabled = false
	
	local tag = Instance.new("ObjectValue")
	tag.Value = getPlayer()
	tag.Name = "creator"
	tag.Parent = Object
end

PowerRemote.OnServerEvent:Connect(function(player, Power)
	local holder = getPlayer()
	if holder ~= player then return end
	
	AttackVelocity = Power
end)

TossRemote.OnServerEvent:Connect(function(player, mousePosition)
	local holder = getPlayer()
	if holder ~= player then return end
	
	if Cooldown.Value == true then return end
	Cooldown.Value = true
	
	local holder = getPlayer()
	
	if Humanoid and Humanoid.RigType == Enum.HumanoidRigType.R15 then
		TossRemote:FireClient(getPlayer(), "PlayAnimation", "Animation")
	end
	local targetPos = mousePosition.p
	local lookAt = (targetPos - Character.Head.Position).unit
	
	Toss(lookAt)
	
	Tool:Destroy()
end)

Tool.Equipped:Connect(function()
	Character = Tool.Parent
	Humanoid = Character:FindFirstChildOfClass("Humanoid")
end)

Tool.Unequipped:Connect(function()
	Character = nil
	Humanoid = nil
end)
