Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --//Harley Quinn created by WaverlyCole
- player = game:service'Players'.LocalPlayer
- mouse = player:GetMouse()
- char = player.Character
- humanoid = char.Humanoid
- rootpart = char.HumanoidRootPart
- torso = char.Torso
- hitdbtime = .5
- --//Joints
- N=torso:FindFirstChild("Neck")
- RS=torso:FindFirstChild("Right Shoulder")
- LS=torso:FindFirstChild("Left Shoulder")
- RH=torso:FindFirstChild("Right Hip")
- LH=torso:FindFirstChild("Left Hip")
- RJ=rootpart:FindFirstChild("RootJoint")
- --//Default C0's
- NC0=CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- RSC0=CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
- LSC0=CFrame.new(-1, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- RHC0=CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
- LHC0=CFrame.new(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
- RJC0=CFrame.new(0, 0, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- --//Cheats
- cframe = CFrame.new
- angle = CFrame.Angles
- radian = math.rad
- random = math.random
- --//Variables
- local idle,walk,fall,jump = false,false,false,false
- local jumpcheck = false
- local specialanim = nil
- --//Functions
- local function weldBetween(a, b)
- local weld = Instance.new("ManualWeld")
- weld.Part0 = a
- weld.Part1 = b
- weld.C0 = CFrame.new()
- weld.C1 = b.CFrame:inverse() * a.CFrame
- weld.Parent = a
- return weld;
- end
- local animate = function(joint,prop,cfrmz,alp)
- joint[prop]=joint[prop]:lerp(cfrmz,alp)
- end
- --//Harley Quinn created by WaverlyCole
- local movedb,hitting = false,false
- local keyDown = function(key)
- if movedb then return end
- if key == 'q' then
- movedb = true
- char.Humanoid.WalkSpeed = 0
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(-90),radian(90 + math.sin(tick()*2)*5)),0.1)
- animate(LS,'C0',LSC0*cframe(0,0,-.5)*angle(radian(0),radian(-30),radian(-90 + math.sin(tick()*2)*-5)),0.1)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(-50)),0.1)
- animate(BATWELD,'C0',BATC0*cframe(-1.5,-1.5,0)*angle(radian(0),radian(0),radian(90)),0.5)
- end
- wait(.5)
- hitting = true
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,-.5)*angle(radian(0),radian(20),radian(90 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,-.5)*angle(radian(0),radian(-45),radian(-90 + math.sin(tick()*2)*-5)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(90)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(-1.5,-2,0)*angle(radian(90),radian(0),radian(100)),0.3)
- end
- wait(.5)
- specialanim = nil
- hitting = false
- movedb = false
- char.Humanoid.WalkSpeed = 20
- elseif key =='e' then
- hitdbtime = .01
- movedb = true
- hitting = true
- char.Humanoid.WalkSpeed = 0
- for i = 1,360,20 do
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,-.5)*angle(radian(0),radian(20),radian(90 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,-.5)*angle(radian(0),radian(-45),radian(-90 + math.sin(tick()*2)*-5)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(i)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(-1.5,-2,0)*angle(radian(90),radian(0),radian(100)),0.3)
- end
- game:service'RunService'.RenderStepped:wait()
- end
- movedb = false
- hitting = false
- hitdbtime = .5
- specialanim = nil
- char.Humanoid.WalkSpeed = 20
- elseif key == 'f' then
- movedb = true
- char.Humanoid.WalkSpeed = 0
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(-10),radian(60 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,0)*angle(radian(10),radian(0),radian(0)),0.1)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(math.sin(tick()*(char.Humanoid.WalkSpeed/2))/3),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- end
- wait(.2)
- local ball = Instance.new'Part'
- local ballmesh = Instance.new('SpecialMesh',ball)
- ballmesh.MeshId = 'http://www.roblox.com/asset/?id=55021861'
- ballmesh.TextureId = 'http://www.roblox.com/asset/?id=188135984'
- ballmesh.Scale = Vector3.new(3,3,3)
- ball.Shape = 'Ball'
- ball.Size = Vector3.new(1,1,1)
- ball.CanCollide = false
- ball.CFrame = char['Left Arm'].CFrame * CFrame.new(0,-1,0)
- ball.Parent = char
- local ballweld = weldBetween(ball,char['Left Arm'])
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(-10),radian(60 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,0)*angle(radian(-30),radian(0),radian(0)),0.1)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(math.sin(tick()*(char.Humanoid.WalkSpeed/2))/3),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- end
- wait(.1)
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(-10),radian(60 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(-85)),0.5)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(math.sin(tick()*(char.Humanoid.WalkSpeed/2))/3),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- end
- wait(.1)
- ballweld:Destroy()
- ball.Anchored = true
- spawn(function()
- for i = 1,20 do
- ball.CFrame = ball.CFrame * CFrame.new(.1,-.1,0)
- game:service'RunService'.RenderStepped:wait()
- end
- end)
- wait(.1)
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(-90),radian(90 + math.sin(tick()*2)*5)),0.1)
- animate(LS,'C0',LSC0*cframe(0,0,-.5)*angle(radian(0),radian(-20),radian(-90)),0.1)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.1)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(-50)),0.1)
- animate(BATWELD,'C0',BATC0*cframe(-1.5,-1.5,0)*angle(radian(0),radian(0),radian(90)),0.5)
- end
- wait(.2)
- specialanim = function()
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,-.5)*angle(radian(0),radian(20),radian(90 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,-.5)*angle(radian(0),radian(-45),radian(-90 + math.sin(tick()*2)*-5)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(90)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(-1.5,-2,0)*angle(radian(90),radian(0),radian(100)),0.3)
- end
- local force = Instance.new('BodyForce',ball)
- force.Force = CFrame.new(ball.CFrame.p,mouse.Hit.p).lookVector*200 + Vector3.new(0,60,0)
- batsound.TimePosition = .7
- batsound:Play()
- ball.Anchored=false
- ball.Touched:connect(function(ob)
- if ob.Name ~= 'Base' and not ob:IsDescendantOf(char) then
- ob:Destroy()
- ball:Destroy()
- end
- end)
- wait(.5)
- movedb = false
- specialanim = nil
- char.Humanoid.WalkSpeed = 20
- elseif key == 'c' then
- movedb = true
- char.Humanoid.WalkSpeed = 0
- end
- end
- --//Movement
- game:service'RunService'.RenderStepped:connect(function()
- if rootpart.Velocity.y < -1 and not idle then
- idle,walk,fall,jump = false,false,true,false
- elseif jumpcheck then
- idle,walk,fall,jump = false,false,false,true
- elseif humanoid.MoveDirection ~= Vector3.new(0,0,0) then
- idle,walk,fall,jump = false,true,false,false
- elseif humanoid.MoveDirection == Vector3.new(0,0,0) then
- idle,walk,fall,jump = true,false,false,false
- end
- end)
- --//Harley Quinn created by WaverlyCole
- humanoid.StateChanged:connect(function(state)
- if state == Enum.HumanoidStateType.Jumping then
- jumpcheck = true
- else
- jumpcheck = false
- end
- end)
- --//Animate
- char.Animate.Disabled = true
- humanoid.Animator:Destroy()
- local playAnimation = coroutine.wrap(function()
- while true do
- game:service'RunService'.RenderStepped:wait()
- if specialanim then
- specialanim()
- elseif idle then
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(.6,0,-.5)*angle(radian(40),radian(-40),radian(20 + math.sin(tick()*2)*1)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,-.7)*angle(radian(0),radian(-40),radian(-20 + math.sin(tick()*2)*1)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(-1 + math.sin(tick()))*5,radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- elseif walk then
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,-.5)*angle(radian(0),radian(5),radian(60 + math.sin(tick()*2)*5)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,-.8)*angle(radian(0),radian(-50),radian(-60 + math.sin(tick()*2)*-5)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(math.sin(tick()*(char.Humanoid.WalkSpeed/2))*40)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(math.sin(tick()*-(char.Humanoid.WalkSpeed/2))*-40)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(math.sin(tick()*(char.Humanoid.WalkSpeed/2))/3),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- elseif fall then
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- elseif jump then
- animate(N,'C0',NC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RS,'C0',RSC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LS,'C0',LSC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RH,'C0',RHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(LH,'C0',LHC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(RJ,'C0',RJC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- animate(BATWELD,'C0',BATC0*cframe(0,0,0)*angle(radian(0),radian(0),radian(0)),0.3)
- end
- end
- end)
- --//Outfit
- repeat wait() until char:FindFirstChild'Pants'
- char.Pants.PantsTemplate = 'http://www.roblox.com/asset/?id=476061531'
- char.Shirt.ShirtTemplate = 'http://www.roblox.com/asset/?id=476061468'
- char.Head.face.Texture = 'http://www.roblox.com/asset/?id=519345419'
- for i,v in pairs(char:children()) do
- if v:IsA'Accessory' then
- v:Destroy()
- end
- end
- hair = Instance.new('Part')
- local mesh = Instance.new('SpecialMesh',hair)
- mesh.MeshId = 'rbxassetid://443042960'
- mesh.Scale = Vector3.new(0.032, 0.032, 0.032)
- mesh.TextureId = 'http://www.roblox.com/asset/?id=442391693'
- hair.Size = Vector3.new(.1,.1,.1)
- hair.CanCollide=false
- hair.CFrame = char.Head.CFrame * CFrame.Angles(0,math.rad(180),0) * CFrame.new(0,-.8,.4)
- hair.Parent=char.Head
- weldBetween(hair,char.Head)
- bat = Instance.new('Part')
- batmesh = Instance.new('SpecialMesh',bat)
- batmesh.MeshId = 'rbxassetid://491941089'
- batmesh.Scale = Vector3.new(0.032, 0.02, 0.032)
- batmesh.TextureId = 'rbxassetid://491941393'
- bat.Size = Vector3.new(.4,4,.4)
- bat.CanCollide=false
- bat.CFrame = char['Right Arm'].CFrame * CFrame.Angles(math.rad(-90),0,0) * CFrame.new(0,1.5,-1)
- bat.Parent = char
- local weld = weldBetween(bat,char['Right Arm'])
- BATC0 = weld.C0
- BATWELD = weld
- batsound = Instance.new('Sound',bat)
- batsound.SoundId = 'rbxassetid://724537174'
- batsound.Volume = 10
- batsound.Pitch = .8
- char.Humanoid.WalkSpeed = 20
- --//Harley Quinn created by WaverlyCole
- playAnimation()
- local db = false
- bat.Touched:connect(function(obj)
- local direction = CFrame.new(bat.CFrame.p,obj.CFrame.p)
- if obj.Name == 'HumanoidRootPart' or obj.Name == 'Base' then return end
- if not hitting or db then return end
- if not obj:IsDescendantOf(char) then
- print('hit '..obj.Name)
- db = true
- obj:BreakJoints()
- obj.Anchored=false
- local force = Instance.new('BodyForce',obj)
- force.Force = bat.CFrame.lookVector*500+Vector3.new(0,100,0)
- batsound.TimePosition = .7
- batsound:Play()
- wait(hitdbtime)
- force:Destroy()
- db = false
- end
- end)
- --//Harley Quinn created by WaverlyCole
- mouse.KeyDown:connect(keyDown)
Add Comment
Please, Sign In to add comment