Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Player, Char, Mouse = game:service("Players").LocalPlayer, game:GetService("Players").LocalPlayer.Character, game:GetService("Players").LocalPlayer:GetMouse()
- Humanoid = Char:findFirstChild("Humanoid")
- Torso = Char:findFirstChild("Torso")
- Head = Char:findFirstChild("Head")
- ra = Char:findFirstChild("Right Arm")
- la = Char:findFirstChild("Left Arm")
- rl = Char:findFirstChild("Right Leg")
- ll = Char:findFirstChild("Left Leg")
- rs = Torso:findFirstChild("Right Shoulder")
- ls = Torso:findFirstChild("Left Shoulder")
- rh = Torso:findFirstChild("Right Hip")
- lh = Torso:findFirstChild("Left Hip")
- neck = Torso:findFirstChild("Neck")
- rp = Char:findFirstChild("HumanoidRootPart")
- rp.Archivable = true
- rj = rp:findFirstChild("RootJoint")
- rj.Archivable = true
- Humanoid:ClearAllChildren()
- rootpart = Char:findFirstChild("HumanoidRootPart")
- Camera = workspace.CurrentCamera
- CF = CFrame.new
- components = CF().components
- local Targetz
- local Targetz1
- local hat
- grab = false
- --==/ V DO NOT TOUCH THIS V /==--
- function Lerp(a, b, i) --< DO NOT TOUCH THIS >--
- return a:lerp(b, i) --< DO NOT TOUCH THIS : GENERALIZED FUNCTIONS >--
- end --< DO NOT TOUCH THIS >--
- --==/ ^ DO NOT TOUCH THIS ^ /==--
- --==/BASE/DEFAULT WELDS/==--
- --=/ARM REWELDS/=--
- --/Right Arm/--
- rm = Instance.new("Motor6D", Torso)
- rm.C0 = CFrame.new(1.5, 0.5, 0) *CFrame.Angles(0, 0, 0)
- rm.C1 = CFrame.new(0, 0.5, 0)
- rm.Part0 = Torso
- rm.Part1 = ra
- --/Left Arm/--
- lm = Instance.new("Motor6D", Torso)
- lm.C0 = CFrame.new(-1.5, 0.5, 0) *CFrame.Angles(0, 0, 0)
- lm.C1 = CFrame.new(0, 0.5, 0)
- lm.Part0 = Torso
- lm.Part1 = la
- --=/LEG REWELDS/=--
- --/Right Leg/--
- rlegm = Instance.new("Motor6D", Torso)
- rlegm.C0 = CFrame.new(0.5, -1, 0) *CFrame.Angles(0, 0, 0)
- rlegm.C1 = CFrame.new(0, 1, 0)
- rlegm.Part0 = Torso
- rlegm.Part1 = rl
- --/Left Leg/--
- llegm = Instance.new("Motor6D", Torso)
- llegm.C0 = CFrame.new(-0.5, -1, 0) *CFrame.Angles(0, 0, 0)
- llegm.C1 = CFrame.new(0, 1, 0)
- llegm.Part0 = Torso
- llegm.Part1 = ll
- --=/Neck Motor6D/=--
- neck.C0 = CFrame.new(0,1,0)
- neck.C1 = CFrame.new(0,-0.5,0)
- --==/BASE VARIABLES & DEBOUNCES/==--
- --=/TRIGONOMETRY/=--
- sine = 1
- angle = 0
- axis = 0
- anglespeed = 1
- axisspeed = anglespeed
- --=/DEBOUNCES/=--
- anim = false
- walking = false
- --==/SNAP FUNCTION/==--
- function snap()
- if(Mouse.Target and Mouse.Target.Parent and Mouse.Target.Parent:findFirstChild("Humanoid") and Mouse.Target.Parent:findFirstChild("Humanoid").Parent and (Mouse.Target.Position - Torso.Position).magnitude < 5) or hat~=nil then
- anim = true
- for i = 1, 10 do
- wait()
- rm.C0 = Lerp(rm.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(100), 0, 0), 0.35)
- end
- anim = false
- if hat ~= nil then
- Targetz = hat.Character
- end
- TargetzHum = Targetz:findFirstChild("Humanoid")
- TargetzHum.PlatformStand = true
- torso2 = Targetz:findFirstChild("Torso")
- head2 = Targetz:findFirstChild("Head")
- ra2 = Targetz:findFirstChild("Right Arm")
- la2 = Targetz:findFirstChild("Left Arm")
- rl2 = Targetz:findFirstChild("Right Leg")
- ll2 = Targetz:findFirstChild("Left Leg")
- local rootpart2
- if Targetz:findFirstChild("HumanoidRootPart") then
- rootpart2 = Targetz:findFirstChild("HumanoidRootPart")
- rootpart2:Destroy()
- end
- for i,v in pairs(torso2:children()) do
- if v:IsA("Motor6D") and v.Name ~= "Neck" then
- v:destroy()
- end
- end
- local rm = Instance.new("Rotate", torso2)
- rm.C0 = CFrame.new(1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- rm.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- rm.Part0 = torso2
- rm.Part1 = ra2
- rm.Name = "Right Shoulder"
- local lm = Instance.new("Rotate", torso2)
- lm.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- lm.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- lm.Part0 = torso2
- lm.Part1 = la2
- lm.Name = "Left Shoulder"
- local rlegm = Instance.new("Rotate", torso2)
- rlegm.C0 = CFrame.new(0.5, -1, 0) * CFrame.Angles(0, math.pi/2, 0)
- rlegm.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0, math.pi/2, 0)
- rlegm.Part0 = torso2
- rlegm.Part1 = rl2
- local llegm = Instance.new("Rotate", torso2)
- llegm.C0 = CFrame.new(-0.5, -1, 0) * CFrame.Angles(0, math.pi/2, 0)
- llegm.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0, math.pi/2, 0)
- llegm.Part0 = torso2
- llegm.Part1 = ll2
- name = Targetz.Name
- NAME = string.upper(name)
- print("HAH "..NAME..", GIT SNAPPED FU\5CKER")
- Grab = Instance.new("Motor6D", ra)
- Grab.Part0 = ra
- Grab.Part1 = torso2
- Grab.C0 = CFrame.new(0, -0.8, 0.65) * CFrame.Angles(math.rad(250), math.rad(180), 0)
- hat=nil
- end
- end
- function letgoasragdoll()
- anim = true
- grab = false
- for i = 1, 10 do
- wait()
- rm.C0 = Lerp(rm.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(110), 0, 0), 0.35)
- end
- anim = false
- grab = false
- wait()
- Grab:Destroy()
- Targetz:findFirstChild("Humanoid"):ChangeState("Physics")
- end
- function letgounharmed()
- anim = true
- grab = false
- for i = 1, 10 do
- wait()
- rm.C0 = Lerp(rm.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(110), 0, 0), 0.35)
- end
- anim = false
- grab = false
- wait()
- Targetz:findFirstChild("Humanoid"):ChangeState("Physics")
- Grab:Destroy()
- end
- --==/MOUSE EVENTS/==--
- --=/BUTTON1DOWN/=--
- Mouse.Button1Down:connect(function(hit)
- if grab == false then
- if Mouse.Target.Parent:findFirstChild("Humanoid") then
- grab=true
- Targetz1 = game.Players:GetPlayerFromCharacter(Mouse.Target.Parent:findFirstChild("Humanoid").Parent)
- Targetz = Targetz1.Character
- elseif Mouse.Target.Parent.ClassName == ("Hat") then
- grab = true
- hat = game.Players:GetPlayerFromCharacter(Mouse.Target.Parent.Parent:findFirstChild("Head").Parent)
- end
- if Targetz ~= nil or hat ~= nil then
- snap()
- end
- end
- end)
- --=/KEYDOWN/=--
- Mouse.KeyDown:connect(function(key)
- if key == "q" then
- if Targetz then
- Targetz:BreakJoints()
- print("killed target HEUHEUEHUEH")
- end
- elseif key == "e" then
- if Targetz and Grab then
- letgoasragdoll()
- print("let go poisoned")
- end
- elseif key == "r" then
- if Targetz and Grab then
- letgounharmed()
- print("let go unragdolled and unharmed")
- end
- end
- end)
- --==/BASIC MOVEMENT & ATTACKS/==--
- game:GetService("RunService").Stepped:connect(function()
- angle = (angle % 100) + anglespeed/10
- axis = (axis % 100) + axisspeed/10
- speed = Vector3.new(rootpart.Velocity.X, 0, rootpart.Velocity.Z).magnitude
- --=/IDLE/=--
- if speed < 2 then
- animpose = "Idle"
- --=/WALKING/=--
- elseif speed > 2 then
- animpose = "Walking"
- walking = true
- end
- --==/ANIMATION FUNCTIONS/==--
- if animpose == "Idle" and anim == false then --> idle
- anglespeed = 0.1
- axisspeed = 0.1
- rm.C0 = Lerp(rm.C0, CFrame.new(1.4, 0.6, 0) * CFrame.Angles(math.rad(10), 0, math.rad(10)), 0.35)
- lm.C0 = Lerp(lm.C0, CFrame.new(-1.4, 0.6, 0) * CFrame.Angles(-math.rad(10), 0, -math.rad(10)), 0.35)
- rlegm.C0 = Lerp(rlegm.C0, CFrame.new(0.5, -0.95, 0) * CFrame.Angles(-math.rad(10), 0, math.rad(5)), 0.35)
- llegm.C0 = Lerp(llegm.C0, CFrame.new(-0.5, -0.95, 0) * CFrame.Angles(math.rad(10), 0, -math.rad(5)), 0.35)
- neck.C0 = Lerp(neck.C0, CFrame.new(0, 1, 0) * CFrame.Angles(0, 0, 0), 0.35)
- rj.C0 = Lerp(rj.C0, CFrame.new(0, -0.25, 0) * CFrame.Angles(math.rad(-90), 0, math.rad(180)), 0.35)
- elseif animpose == "Walking" and anim == false and walking == true then --> walk
- anglespeed = 2.5
- rm.C0 = Lerp(rm.C0, CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.sin(angle) * 1.5, 0, -math.sin(angle) * 0.7), 0.35)
- lm.C0 = Lerp(lm.C0, CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(-math.sin(angle) * 1.5, 0, -math.sin(angle) * 0.7), 0.35)
- rlegm.C0 = Lerp(rlegm.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.asin(-math.sin(angle)) * 1.25, 0, math.rad(2.5)), 0.35)
- llegm.C0 = Lerp(llegm.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.sin(angle) * 1.25, 0, -math.rad(2.5)), 0.35)
- neck.C0 = Lerp(neck.C0, CFrame.new(0, 1, 0) * CFrame.Angles(0, math.sin(angle) * -0.2, 0), 0.35)
- rj.C0 = Lerp(rj.C0, CFrame.new(0, -0.25 + math.abs(math.sin(angle) * 0.6), 0) * CFrame.Angles(math.rad(-80), Head.RotVelocity.Y/-50, math.rad(180) + math.sin(angle) * 0.1, 0), 0.35)
- Humanoid.WalkSpeed = 16
- end
- end)
Add Comment
Please, Sign In to add comment