local player = game.Players.LocalPlayer mouse = player:GetMouse() local damage = 5 function leftpunch() local leftpunch = player:findFirstChild("Left Arm") leftpunch.Position.Vector3.new(30.422, 179.001, 138.099) leftpunch.Rotation.Vector3.new(90.161, 17.144, -53.438) wait(1) leftpunch.Position.Vector3.new(37.5, 179.8, 146.003) leftpunch.Rotation.Vector3.new(179.669, -0, 180) end function keyDown(key) if key=="z" then leftpunch() if leftpunch():onTouched(player) then local hum = player:findFirstChild("Humanoid") player.Humanoid.Health:TakeDamage(damage) end end end script.Parent.mouse:connect(keyDown)
When you press z, you left punch, But it's not working. Why? Can you explain why too?
put it into 1 function
function KeyDown(key) key:lower() if key == 'z' then --watever arm movements here leftpunch.Touched:connect(function(hit) h = hit.Parent:FindFirstChild('Humandoid') if h ~= nil then h:TakeDamage(damage) elseif hit.Parent.Name == leftpunch.Parent.Name then print('Player cannot Punch himself') end end end end mouse.KeyDown:connect(KeyDown)
mouse is not an event. You need to do
local mouse = game.Players.LocalPlayer:GetMouse(); mouse.KeyDown:connect(function(key) --key code end)