What I want:
https://gyazo.com/32252d1b7c407d6b475063b9a0a8367a
What I’m dealing with:
https://gyazo.com/5571a0255ce4adc7517e4a9ee3955d1f
Local Script:
--//Functions//--
local Tool = script.Parent
local Mouse = game.Players.LocalPlayer:GetMouse()
local Anims = Tool:WaitForChild("Anims")
local Hit = Tool:WaitForChild("Handle").Hit
local UIS = game:GetService("UserInputService")
local held = false
function isEquipped()
if Tool.Parent:FindFirstChild("Humanoid") then
return true else return false
end
end
--//Main//--
Tool.Equipped:Connect(function()
local Char = Tool.Parent
local Hum = Char:WaitForChild("Humanoid")
local Equip = Hum:LoadAnimation(Anims.Equip)
Equip:Play()
end)
Tool.Activated:Connect(function()
local Char = Tool.Parent
local Hum = Char:WaitForChild("Humanoid")
--//Anims//--
local Idle = Hum:LoadAnimation(Anims.Idle)
local Equip = Hum:LoadAnimation(Anims.Equip)
local HoldStart = Hum:LoadAnimation(Anims.HoldStart)
local Hold = Hum:LoadAnimation(Anims.Hold)
local Swing = Hum:LoadAnimation(Anims.Swing)
--//Input//--
UIS.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
HoldStart:Play()
HoldStart.Stopped:Wait()
Hold:Play()
held = true
while held == true do
game:GetService("RunService").RenderStepped:Wait()
end
end
end)
UIS.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
if not isEquipped() then return end
Hit:FireServer()
Hold:Stop()
Swing:Play()
held = false
end
end)
end)