like ts pmo atp brah
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local MOVEMENT_THRESHOLD = 0.1
local JUMP_DURATION = 0.5
local DEFAULT_SENSITIVITY = 1
local DEFAULT_SWAY_SIZE = 1
local player = Players.LocalPlayer
local camera = workspace.CurrentCamera
local char = player.Character or player.CharacterAdded:Wait()
local characterValues = char:WaitForChild("StatusValues")
local arms = game.ReplicatedStorage.Arms:Clone()
local animations = {}
local state = {
isMoving = false,
isJumping = false,
jumpStartTime = 0,
lastPosition = char.HumanoidRootPart.Position,
sway = Vector3.new(),
walkSway = CFrame.new(),
strafeSway = CFrame.Angles(0,0,0),
jumpSway = CFrame.new(),
jumpSwayGoal = Instance.new("CFrameValue")
}
local config = {
sensitivity = DEFAULT_SENSITIVITY,
swaySize = DEFAULT_SWAY_SIZE
}
local function loadAnimations()
local animFolder = game.ReplicatedStorage.Animations.Viewmodel
animations = {
idle = arms.Humanoid:WaitForChild("Animator"):LoadAnimation(animFolder.Idle),
run = arms.Humanoid:WaitForChild("Animator"):LoadAnimation(animFolder.Running),
jump = arms.Humanoid:WaitForChild("Animator"):LoadAnimation(animFolder.jump),
falling = arms.Humanoid:WaitForChild("Animator"):LoadAnimation(animFolder.falling)
}
end