Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ------------------
- --Basic Fighting--
- ------------------
- --By CKbackup--
- ---------------
- player = game.Players.LocalPlayer
- mouse = player:GetMouse()
- chara = player.Character
- equipped = false
- del = false
- attacking = false
- atkd = false
- hum = chara:FindFirstChildOfClass("Humanoid")
- debby = game.Debris
- ws = 16
- if hum.WalkSpeed > 16 then
- ws = hum.WalkSpeed
- end
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "Heartbeat"
- script:WaitForChild("Heartbeat")
- frame = 0.03333333333333
- tf = 0
- allowframeloss = false
- tossremainder = false
- lastframe = tick()
- script.Heartbeat:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if tf >= frame then
- if allowframeloss then
- script.Heartbeat:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.Heartbeat:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end)
- function swait(num)
- if num == 0 or num == nil then
- ArtificialHB.Event:wait()
- else
- for i = 0, num*30 do
- ArtificialHB.Event:wait()
- end
- end
- end
- New = function(Object, Parent, Name, Data)
- local Object = Instance.new(Object)
- for Index, Value in pairs(Data or {}) do
- Object[Index] = Value
- end
- Object.Parent = Parent
- Object.Name = Name
- return Object
- end
- RightArm = New("Model",chara,"RightArm",{})
- MainPart = New("Part",RightArm,"MainPart",{Transparency = 1,Transparency = 1,Size = Vector3.new(1, 2, 1),CFrame = CFrame.new(0.5, 3.00000787, -3.50019717, 1, 0, 0, 0, 1, 0, 0, 0, 1),CanCollide = false,BackSurface = Enum.SurfaceType.SmoothNoOutlines,BottomSurface = Enum.SurfaceType.SmoothNoOutlines,FrontSurface = Enum.SurfaceType.SmoothNoOutlines,LeftSurface = Enum.SurfaceType.SmoothNoOutlines,RightSurface = Enum.SurfaceType.SmoothNoOutlines,TopSurface = Enum.SurfaceType.SmoothNoOutlines,})
- Weld = New("ManualWeld",MainPart,"Weld",{Part0 = MainPart,Part1 = chara["Right Arm"],C1 = CFrame.new(0, -1.00135803e-005, -0.000197172165, 1, 0, 0, 0, 1, 0, 0, 0, 1),})
- Emit2Part = New("Part",RightArm,"Emit2Part",{BrickColor = BrickColor.new("New Yeller"),Material = Enum.Material.Neon,Transparency = 1,Transparency = 1,Size = Vector3.new(1, 1, 1),CFrame = CFrame.new(0.5, 2.10001373, -3.5001967, 1, 0, 0, 0, 1, 0, 0, 0, 1),CanCollide = false,BackSurface = Enum.SurfaceType.SmoothNoOutlines,BottomSurface = Enum.SurfaceType.SmoothNoOutlines,FrontSurface = Enum.SurfaceType.SmoothNoOutlines,LeftSurface = Enum.SurfaceType.SmoothNoOutlines,RightSurface = Enum.SurfaceType.SmoothNoOutlines,TopSurface = Enum.SurfaceType.SmoothNoOutlines,Color = Color3.new(1, 0, 0.74902),})
- Mesh = New("SpecialMesh",Emit2Part,"Mesh",{Scale = Vector3.new(1.29999995, 1.29999995, 1.29999995),MeshType = Enum.MeshType.Sphere,})
- Weld = New("ManualWeld",Emit2Part,"Weld",{Part0 = Emit2Part,Part1 = MainPart,C1 = CFrame.new(0, -0.899994135, 4.76837158e-007, 1, 0, 0, 0, 1, 0, 0, 0, 1),})
- LeftArm = New("Model",chara,"LeftArm",{})
- MainPart = New("Part",LeftArm,"MainPart",{Transparency = 1,Transparency = 1,Size = Vector3.new(1, 2, 1),CFrame = CFrame.new(-2.50000024, 3.00000787, -3.50019717, 1, 0, 0, 0, 1, 0, 0, 0, 1),CanCollide = false,BackSurface = Enum.SurfaceType.SmoothNoOutlines,BottomSurface = Enum.SurfaceType.SmoothNoOutlines,FrontSurface = Enum.SurfaceType.SmoothNoOutlines,LeftSurface = Enum.SurfaceType.SmoothNoOutlines,RightSurface = Enum.SurfaceType.SmoothNoOutlines,TopSurface = Enum.SurfaceType.SmoothNoOutlines,})
- Weld = New("ManualWeld",MainPart,"Weld",{Part0 = MainPart,Part1 = chara["Left Arm"],C1 = CFrame.new(-2.38418579e-007, -1.00135803e-005, -0.000197172165, 1, 0, 0, 0, 1, 0, 0, 0, 1),})
- EmitPart = New("Part",LeftArm,"EmitPart",{BrickColor = BrickColor.new("New Yeller"),Material = Enum.Material.Neon,Transparency = 1,Transparency = 1,Size = Vector3.new(1, 1, 1),CFrame = CFrame.new(-2.5, 2.10001373, -3.5001967, 1, 0, 0, 0, 1, 0, 0, 0, 1),CanCollide = false,BackSurface = Enum.SurfaceType.SmoothNoOutlines,BottomSurface = Enum.SurfaceType.SmoothNoOutlines,FrontSurface = Enum.SurfaceType.SmoothNoOutlines,LeftSurface = Enum.SurfaceType.SmoothNoOutlines,RightSurface = Enum.SurfaceType.SmoothNoOutlines,TopSurface = Enum.SurfaceType.SmoothNoOutlines,Color = Color3.new(1, 0, 0.74902),})
- Mesh = New("SpecialMesh",EmitPart,"Mesh",{Scale = Vector3.new(1.29999995, 1.29999995, 1.29999995),MeshType = Enum.MeshType.Sphere,})
- Weld = New("ManualWeld",EmitPart,"Weld",{Part0 = EmitPart,Part1 = MainPart,C1 = CFrame.new(2.38418579e-007, -0.899994135, 4.76837158e-007, 1, 0, 0, 0, 1, 0, 0, 0, 1),})
- lach = LeftArm:GetChildren()
- rach = RightArm:GetChildren()
- local pemit = Instance.new("ParticleEmitter")
- pemit.Enabled = false
- pemit.Color = ColorSequence.new(Color3.new(255,255,0))
- pemit.LightEmission = 1
- pemit.Size = NumberSequence.new(1.5,0)
- pemit.Texture = "http://www.roblox.com/asset/?id=243098098"
- pemit.Lifetime = NumberRange.new(.2)
- pemit.Rate = 100
- pemit.Rotation = NumberRange.new(0,360)
- pemit.Speed = NumberRange.new(0)
- local p1 = pemit:Clone()
- p1.Parent = EmitPart
- local p2 = pemit:Clone()
- p2.Parent = Emit2Part
- local p3 = pemit:Clone()
- p3.Parent = chara["Right Leg"]
- p3.Rate = 10000
- local p4 = pemit:Clone()
- p4.Parent = chara["Left Leg"]
- p4.Rate = 10000
- --Sounds--
- function LoadSnd(id,loop,vol,pit)
- local snd = New("Sound",chara.Head,"Sound",{SoundId = "rbxassetid://"..id,Looped = loop,Volume = vol,Pitch = pit})
- return snd
- end
- Swing2Snd = LoadSnd(536642316,false,1,1)
- HitPunchSnd = LoadSnd(153092227,false,1,1)
- HitHamonSnd = LoadSnd(260433624,false,1,1)
- HamonSnd = LoadSnd(876570589,false,1,1)
- SHamonSnd = LoadSnd(379557765,true,.5,1)
- --Play Sound in Part--
- function PlaySnd(snd,part)
- local sound = snd:Clone()
- sound.PlayOnRemove = true
- sound.Parent = part
- sound:Destroy()
- end
- maincol = "White"
- function CreateTrailObj(parent,color1,color2,ofsx,ofsz)
- local Att1 = New("Attachment",parent,"Att1",{Position = Vector3.new(ofsx,parent.Size.Y/2,ofsz)})
- local Att2 = New("Attachment",parent,"Att2",{Position = Vector3.new(ofsx,-(parent.Size.Y/2),ofsz)})
- local TEff = New("Trail",parent,"TrailEff",{Color = ColorSequence.new({ColorSequenceKeypoint.new(0,BrickColor.new(color1).Color),ColorSequenceKeypoint.new(1,BrickColor.new(color2).Color)}),Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,.5),NumberSequenceKeypoint.new(1,1)}),Attachment0 = Att1,Attachment1 = Att2,Enabled = false,Lifetime = .5,MinLength = .001})
- return TEff
- end
- RPunchT = CreateTrailObj(chara["Right Arm"],"White","White",0,0)
- LPunchT = CreateTrailObj(chara["Left Arm"],"White","White",0,0)
- RKickT = CreateTrailObj(chara["Right Leg"],"White","White",0,0)
- LKickT = CreateTrailObj(chara["Left Leg"],"White","White",0,0)
- --Punch Hit Effect--
- function PunchEff(pos)
- local p = Instance.new("Part",game.Workspace)
- p.Size = Vector3.new(1,1,1)
- p.BrickColor = BrickColor.new(maincol)
- p.Material = "Neon"
- p.Anchored = true
- p.CanCollide = false
- p.CFrame = pos
- local pm = Instance.new("SpecialMesh",p)
- pm.MeshType = "Sphere"
- coroutine.resume(coroutine.create(function()
- for i = 0,1,.05 do
- swait()
- p.Transparency = i
- pm.Scale = Vector3.new(2*i,2*i,2*i)
- end
- swait()
- p:Destroy()
- end))
- end
- --Damage Function--
- function dealdmg(dude,damage,env,toim,kby,kbx)
- coroutine.resume(coroutine.create(function()
- if dude ~= chara and dude:FindFirstChild("IsHit") == nil then
- finaldmg = damage + math.random(-env,env)
- dudehum = dude:FindFirstChildOfClass("Humanoid")
- dudehum.MaxHealth = 100
- dudehum.Health = dudehum.Health - finaldmg
- local vall = Instance.new("ObjectValue",dude)
- vall.Name = "IsHit"
- game.Debris:AddItem(vall,toim)
- local bfos = Instance.new("BodyVelocity",dude.Head)
- bfos.P = 20000
- bfos.MaxForce = Vector3.new(bfos.P,bfos.P,bfos.P)
- bfos.Velocity = Vector3.new(0,kby,0) + chara.HumanoidRootPart.CFrame.lookVector * kbx
- game.Debris:AddItem(bfos,.1)
- local naeeym2 = Instance.new("BillboardGui",dude)
- naeeym2.Size = UDim2.new(0,100,0,40)
- naeeym2.StudsOffset = Vector3.new(0,3,0)
- naeeym2.Adornee = dude.Head
- naeeym2.Name = "TalkingBillBoard"
- local tecks2 = Instance.new("TextLabel",naeeym2)
- tecks2.BackgroundTransparency = 1
- tecks2.BorderSizePixel = 0
- tecks2.Text = "-"..finaldmg
- tecks2.Font = "Fantasy"
- tecks2.FontSize = "Size24"
- tecks2.TextStrokeTransparency = 0
- tecks2.TextColor3 = Color3.new(1,0.6,0)
- tecks2.TextStrokeColor3 = Color3.new(0,0,0)
- tecks2.Size = UDim2.new(1,0,0.5,0)
- for i = 1, 5 do
- wait(.1)
- tecks2.Position = tecks2.Position - UDim2.new(0,0,.05,0)
- tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.2
- tecks2.TextTransparency = tecks2.TextTransparency + .2
- end
- naeeym2:Destroy()
- end
- end))
- end
- --Explode Hitbox--
- function ExHitbox(rad,pos,damage,env,toim,kby,kbx)
- local E = Instance.new("Explosion")
- E.Position = pos
- E.Parent = game.Workspace
- E.BlastRadius = rad
- E.BlastPressure = 0
- E.Visible = false
- E.Hit:connect(function(hit)
- if hit.Parent:FindFirstChildOfClass("Humanoid")~=nil then
- dealdmg(hit.Parent,damage,env,toim,kby,kbx)
- end
- end)
- end
- --Punch Touch--
- dela = .5
- punchactive = false
- function punchhit(hit)
- if punchactive == true then
- if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil and hit.Parent ~= chara and hit.Parent:FindFirstChild("IsHit")==nil then
- dealdmg(hit.Parent,15,2,dela,0,5)
- PlaySnd(HitPunchSnd,hit.Parent.Head)
- if maincol == "New Yeller" then
- PlaySnd(HitHamonSnd,hit.Parent.Head)
- end
- PunchEff(hit.CFrame)
- end
- end
- end
- Emit2Part.Touched:connect(punchhit)
- EmitPart.Touched:connect(punchhit)
- --Kick Touch--
- kickactive = false
- function kickhit(hit)
- if kickactive == true then
- if hit.Parent:FindFirstChildOfClass("Humanoid") ~= nil and hit.Parent ~= chara and hit.Parent:FindFirstChild("IsHit")==nil then
- PlaySnd(HitPunchSnd,hit.Parent.Head)
- PunchEff(hit.CFrame)
- if maincol == "New Yeller" then
- PlaySnd(HitHamonSnd,hit.Parent.Head)
- end
- dealdmg(hit.Parent,20,2,dela,0,20)
- end
- end
- end
- chara["Right Leg"].Touched:connect(kickhit)
- chara["Left Leg"].Touched:connect(kickhit)
- --Chat Function--
- function chatfunc(text)
- coroutine.resume(coroutine.create(function()
- if chara:FindFirstChild("TalkingBillBoard")~= nil then
- chara:FindFirstChild("TalkingBillBoard"):destroy()
- end
- local naeeym2 = Instance.new("BillboardGui",chara)
- naeeym2.Size = UDim2.new(0,100,0,40)
- naeeym2.StudsOffset = Vector3.new(0,3,0)
- naeeym2.Adornee = chara.Head
- naeeym2.Name = "TalkingBillBoard"
- local tecks2 = Instance.new("TextLabel",naeeym2)
- tecks2.BackgroundTransparency = 1
- tecks2.BorderSizePixel = 0
- tecks2.Text = ""
- tecks2.Font = "Fantasy"
- tecks2.FontSize = "Size24"
- tecks2.TextStrokeTransparency = 0
- tecks2.TextColor3 = Color3.new(1,1,1)
- tecks2.TextStrokeColor3 = Color3.new(0,0,0)
- tecks2.Size = UDim2.new(1,0,0.5,0)
- coroutine.resume(coroutine.create(function()
- for i = 1,string.len(text),1 do
- tecks2.Text = string.sub(text,1,i)
- swait(0.01)
- end
- swait(1)
- for i = 1, 5 do
- swait(.01)
- tecks2.Position = tecks2.Position - UDim2.new(0,0,.05,0)
- tecks2.TextStrokeTransparency = tecks2.TextStrokeTransparency +.2
- tecks2.TextTransparency = tecks2.TextTransparency + .2
- end
- naeeym2:Destroy()
- end))
- end))
- end
- function onChatted(msg)
- --chatfunc(msg)
- if msg == "Hamon!" then
- HamonSnd:Play()
- maincol = "New Yeller"
- for i = 0,.1,.01 do
- swait()
- EmitPart.Transparency = 1-i
- Emit2Part.Transparency = 1-i
- end
- p1.Enabled = true
- p2.Enabled = true
- RPunchT.Color = ColorSequence.new(Color3.new(1,1,0))
- LPunchT.Color = ColorSequence.new(Color3.new(1,1,0))
- RKickT.Color = ColorSequence.new(Color3.new(1,1,0))
- LKickT.Color = ColorSequence.new(Color3.new(1,1,0))
- elseif msg == "Hamon off." then
- maincol = "White"
- p1.Enabled = false
- p2.Enabled = false
- for i = .9,1,.01 do
- swait()
- EmitPart.Transparency = i
- Emit2Part.Transparency = i
- end
- RPunchT.Color = ColorSequence.new(BrickColor.new("White").Color)
- LPunchT.Color = ColorSequence.new(BrickColor.new("White").Color)
- RKickT.Color = ColorSequence.new(BrickColor.new("White").Color)
- LKickT.Color = ColorSequence.new(BrickColor.new("White").Color)
- end
- end
- player.Chatted:connect(onChatted)
- --Clerp Animations--
- TC = chara.HumanoidRootPart.RootJoint
- HC = chara.Torso.Neck
- RAC = chara.Torso["Right Shoulder"]
- LAC = chara.Torso["Left Shoulder"]
- RLC = chara.Torso["Right Hip"]
- LLC = chara.Torso["Left Hip"]
- TCF = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
- HCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, -0)
- RACF = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- LACF = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- RLCF = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0)
- LLCF = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- RWF = CFrame.new(-1.5, 0, 0) * CFrame.fromEulerAnglesXYZ(0,0,0)
- LWF = CFrame.new(1.5, 0, 0) * CFrame.fromEulerAnglesXYZ(0,0,0)
- RLWF = CFrame.new(-.5, 2, 0) * CFrame.fromEulerAnglesXYZ(0,0,0)
- LLWF = CFrame.new(.5, 2, 0) * CFrame.fromEulerAnglesXYZ(0,0,0)
- RW = Instance.new("Weld",HC.Parent)
- RW.Part1 = HC.Parent
- RW.Part0 = chara["Right Arm"]
- RW.C0 = RWF
- LW = Instance.new("Weld",HC.Parent)
- LW.Part1 = HC.Parent
- LW.Part0 = chara["Left Arm"]
- LW.C0 = LWF
- RLW = nil
- LLW = nil
- grp = Instance.new("Model",chara)
- function AddLegWelds()
- RLW = Instance.new("Weld",chara["Right Leg"])
- RLW.Part1 = HC.Parent
- RLW.Part0 = chara["Right Leg"]
- RLW.C0 = RLWF
- LLW = Instance.new("Weld",chara["Left Leg"])
- LLW.Part1 = HC.Parent
- LLW.Part0 = chara["Left Leg"]
- LLW.C0 = LLWF
- end
- function DestroyLegWelds()
- RLC = New("Motor6D",chara.Torso,"Right Hip",{Part0 = chara.Torso,Part1 = chara["Right Leg"],C0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, -0, -1, 0, 0),})
- LLC = New("Motor6D",chara.Torso,"Left Hip",{Part0 = chara.Torso,Part1 = chara["Left Leg"],C0 = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),C1 = CFrame.new(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0),})
- RLW:Destroy()
- LLW:Destroy()
- end
- function clerp(a,b,c)
- return a:lerp(b,c)
- end
- ITCF = TCF
- IHCF = HCF
- IRWF = RWF
- ILWF = LWF
- function res()
- TC.C0 = ITCF
- HC.C0 = IHCF
- RW.C0 = IRWF
- LW.C0 = ILWF
- end
- res()
- --Flip--
- function Flip()
- del = true
- res()
- hum.WalkSpeed = 0
- AddLegWelds()
- Swing2Snd:Play()
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF - Vector3.new(0,1,0),.4+i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),.4+i)
- RW.C0 = clerp(IRWF,RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),.4+i)
- LW.C0 = clerp(ILWF,LWF,.4+i)
- RLW.C0 = clerp(RLWF,RLWF - Vector3.new(0,1,-.5),.4+i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),.4+i)
- end
- local bf = Instance.new("BodyVelocity",chara.Torso)
- bf.P = 100000
- bf.MaxForce = Vector3.new(bf.P,bf.P,bf.P)
- bf.Velocity = Vector3.new(0,60,0) + chara.HumanoidRootPart.CFrame.lookVector*30
- debby:AddItem(bf,.5)
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF - Vector3.new(0,1,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),HCF * CFrame.fromEulerAnglesXYZ(math.rad(-20),0,0),i)
- RW.C0 = clerp(RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),(RWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LW.C0 = clerp(LWF,(LWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LLW.C0 = clerp((LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),LLWF,i)
- end
- bf.MaxForce = Vector3.new(bf.P,0,bf.P)
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(-360),0,0),i)
- end
- swait(.5)
- bf:Destroy()
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF,TCF - Vector3.new(0,1,0),i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(math.rad(-20),0,0),HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),i)
- RW.C0 = clerp((RWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),i)
- LW.C0 = clerp((LWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),LWF,i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),i)
- end
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF - Vector3.new(0,1,0),.6-i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),.6-i)
- RW.C0 = clerp(IRWF,RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),.6-i)
- LW.C0 = clerp(ILWF,LWF,.6-i)
- RLW.C0 = clerp(RLWF,RLWF - Vector3.new(0,1,-.5),.6-i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),.6-i)
- end
- DestroyLegWelds()
- res()
- hum.WalkSpeed = ws
- walking = false
- del = false
- end
- function BackFlip()
- del = true
- res()
- hum.WalkSpeed = 0
- AddLegWelds()
- Swing2Snd:Play()
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF - Vector3.new(0,1,0),.4+i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),.4+i)
- RW.C0 = clerp(IRWF,RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),.4+i)
- LW.C0 = clerp(ILWF,LWF,.4+i)
- RLW.C0 = clerp(RLWF,RLWF - Vector3.new(0,1,-.5),.4+i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),.4+i)
- end
- local bf = Instance.new("BodyVelocity",chara.Torso)
- bf.P = 100000
- bf.MaxForce = Vector3.new(bf.P,bf.P,bf.P)
- bf.Velocity = Vector3.new(0,60,0) + chara.HumanoidRootPart.CFrame.lookVector*-30
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF - Vector3.new(0,1,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(180),0,0),i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),HCF * CFrame.fromEulerAnglesXYZ(math.rad(-20),0,0),i)
- RW.C0 = clerp(RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),(RWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LW.C0 = clerp(LWF,(LWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LLW.C0 = clerp((LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),LLWF,i)
- end
- bf.MaxForce = Vector3.new(bf.P,0,bf.P)
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(math.rad(180),0,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(360),0,0),i)
- end
- swait(.5)
- bf:Destroy()
- for i = 0,1,.25 do
- swait()
- TC.C0 = clerp(TCF,TCF - Vector3.new(0,1,0),i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(math.rad(-20),0,0),HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),i)
- RW.C0 = clerp((RWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),i)
- LW.C0 = clerp((LWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),LWF,i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),i)
- end
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF - Vector3.new(0,1,0),.6-i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(30),0,0),.6-i)
- RW.C0 = clerp(IRWF,RWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-10)),.6-i)
- LW.C0 = clerp(ILWF,LWF,.6-i)
- RLW.C0 = clerp(RLWF,RLWF - Vector3.new(0,1,-.5),.6-i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),.6-i)
- end
- DestroyLegWelds()
- res()
- hum.WalkSpeed = ws
- walking = false
- del = false
- end
- --Keys--
- combo = 0
- function onKeyDown(key)
- if del == false then
- if key == "r" then
- BackFlip()
- elseif key == "t" then
- Flip()
- end
- end
- end
- function onButton1Down()
- if del == false then
- del = true
- torvel = (chara.HumanoidRootPart.Velocity*Vector3.new(0,1,0)).magnitude
- res()
- if torvel > 3 then
- Swing2Snd:Play()
- kickactive = true
- RKickT.Enabled = true
- if maincol == "New Yeller" then
- SHamonSnd:Play()
- p3.Enabled = true
- end
- AddLegWelds()
- for i = 0,1,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(-20),0,0),i)
- RW.C0 = clerp(IRWF,(RWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LW.C0 = clerp(ILWF,(LWF + Vector3.new(0,1,0)) * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),i)
- LLW.C0 = clerp(LLWF,(LLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(90),0,0),i)
- end
- for i = 0,1,.2 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(math.rad(-180),0,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(-360),0,0),i)
- end
- DestroyLegWelds()
- kickactive = false
- RKickT.Enabled = false
- p3.Enabled = false
- SHamonSnd:Stop()
- elseif torvel < 3 then
- if combo == 0 then
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- LW.C0 = clerp(ILWF,(LWF + Vector3.new(-.5,-.5,.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(70),0),.4+i)
- RW.C0 = clerp(IRWF,(RWF + Vector3.new(.5,1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- end
- swait(.1)
- Swing2Snd:Play()
- punchactive = true
- LPunchT.Enabled = true
- if maincol == "New Yeller" then
- SHamonSnd:Play()
- end
- for i = 0,.6,.3 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(80)),TCF,.4+i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-80)),HCF,.4+i)
- LW.C0 = clerp((LWF + Vector3.new(-.5,-.5,.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(70),0),(LWF - Vector3.new(.5,-1.4,.5)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- RW.C0 = clerp((RWF + Vector3.new(.5,1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),(RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),.4+i)
- end
- LW.C0 = (LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90))
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(TCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- HC.C0 = clerp(HCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- end
- TC.C0 = TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90))
- HC.C0 = HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90))
- swait(.1)
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.6-i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.6-i)
- LW.C0 = clerp(ILWF,(LWF - Vector3.new(.5,-1.4,.5)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.6-i)
- RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),.6-i)
- end
- punchactive = false
- LPunchT.Enabled = false
- SHamonSnd:Stop()
- combo = 1
- elseif combo == 1 then
- hum.WalkSpeed = 0
- AddLegWelds()
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),.4+i)
- HC.C0 = clerp(IHCF,HCF,.4+i)
- LLW.C0 = clerp(LLWF,LLWF * CFrame.fromEulerAnglesXYZ(math.rad(-45),0,0),.4+i)
- RLW.C0 = clerp(RLWF,(RLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),.4+i)
- end
- swait(.1)
- Swing2Snd:Play()
- kickactive = true
- RKickT.Enabled = true
- if maincol == "New Yeller" then
- SHamonSnd:Play()
- p3.Enabled = true
- end
- local bfos = Instance.new("BodyVelocity",chara.HumanoidRootPart)
- bfos.P = 10000
- bfos.MaxForce = Vector3.new(bfos.P,0,bfos.P)
- bfos.Velocity = chara.HumanoidRootPart.CFrame.lookVector * 200
- debby:AddItem(bfos,.1)
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),TCF * CFrame.fromEulerAnglesXYZ(math.rad(-45),0,0),.4+i)
- LLW.C0 = clerp(LLWF * CFrame.fromEulerAnglesXYZ(math.rad(-45),0,0),LLWF * CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),.4+i)
- RLW.C0 = clerp((RLWF - Vector3.new(0,1,-1))*CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),(RLWF - Vector3.new(0,1,1))*CFrame.fromEulerAnglesXYZ(math.rad(-90),0,0),.4+i)
- end
- swait(.3)
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(math.rad(-45),0,0),ITCF,.4+i)
- HC.C0 = clerp(HCF,IHCF,.4+i)
- LLW.C0 = clerp(LLWF * CFrame.fromEulerAnglesXYZ(math.rad(45),0,0),LLWF,.4+i)
- RLW.C0 = clerp((RLWF - Vector3.new(0,1,1))*CFrame.fromEulerAnglesXYZ(math.rad(-90),0,0),RLWF,.4+i)
- end
- DestroyLegWelds()
- kickactive = false
- RKickT.Enabled = false
- p3.Enabled = false
- SHamonSnd:Stop()
- combo = 2
- elseif combo == 2 then
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- LW.C0 = clerp(ILWF,(LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),.4+i)
- end
- swait(.1)
- Swing2Snd:Play()
- punchactive = true
- RPunchT.Enabled = true
- if maincol == "New Yeller" then
- SHamonSnd:Play()
- end
- for i = 0,.6,.3 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-80)),TCF,.4+i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(80)),HCF,.4+i)
- LW.C0 = clerp((LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),(LWF + Vector3.new(-.5,-.5,.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(70),0),.4+i)
- RW.C0 = clerp((RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),(RWF + Vector3.new(.5,1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- end
- RW.C0 = (RWF + Vector3.new(.5,1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90))
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(TCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- HC.C0 = clerp(HCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- end
- TC.C0 = TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90))
- HC.C0 = HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90))
- swait(.1)
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.6-i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.6-i)
- LW.C0 = clerp(ILWF,(LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.6-i)
- RW.C0 = clerp(IRWF,(RWF + Vector3.new(.5,1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.6-i)
- end
- punchactive = false
- RPunchT.Enabled = false
- SHamonSnd:Stop()
- combo = 3
- elseif combo == 3 then
- hum.WalkSpeed = 0
- AddLegWelds()
- for i = 0,.6,.2 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-90)),.4+i)
- HC.C0 = clerp(IHCF,HCF,.4+i)
- LLW.C0 = clerp(LLWF,LLWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-60)),.4+i)
- RLW.C0 = clerp(RLWF,RLWF*CFrame.fromEulerAnglesXYZ(0,0,math.rad(60)),.4+i)
- LW.C0 = clerp(ILWF,(LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.4+i)
- RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),.4+i)
- end
- Swing2Snd:Play()
- kickactive = true
- LKickT.Enabled = true
- if maincol == "New Yeller" then
- SHamonSnd:Play()
- p4.Enabled = true
- end
- local bfos = Instance.new("BodyVelocity",chara.HumanoidRootPart)
- bfos.P = 10000
- bfos.MaxForce = Vector3.new(bfos.P,0,bfos.P)
- bfos.Velocity = chara.HumanoidRootPart.CFrame.lookVector * 200
- debby:AddItem(bfos,.1)
- for i = 0,.6,.1 do
- swait()
- TC.C0 = clerp(TCF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-100)),TCF * CFrame.fromEulerAnglesXYZ(math.rad(-60),0,math.rad(90)),.4+i)
- end
- TC.C0 = TCF * CFrame.fromEulerAnglesXYZ(math.rad(-60),0,math.rad(90))
- swait(.2)
- for i = 0,.6,.1 do
- swait()
- TC.C0 = clerp(ITCF,TCF * CFrame.fromEulerAnglesXYZ(math.rad(-60),0,math.rad(90)),.6-i)
- HC.C0 = clerp(IHCF,HCF,.6-i)
- LLW.C0 = clerp(LLWF,LLWF * CFrame.fromEulerAnglesXYZ(0,0,math.rad(-60)),.6-i)
- RLW.C0 = clerp(RLWF,RLWF*CFrame.fromEulerAnglesXYZ(0,0,math.rad(60)),.6-i)
- LW.C0 = clerp(ILWF,(LWF - Vector3.new(.5,-1.4,0)) * CFrame.fromEulerAnglesXYZ(0,0,math.rad(90)),.6-i)
- RW.C0 = clerp(IRWF,(RWF - Vector3.new(-.5,.5,-.5)) * CFrame.fromEulerAnglesXYZ(math.rad(-90),math.rad(-70),0),.6-i)
- end
- DestroyLegWelds()
- kickactive = false
- LKickT.Enabled = false
- p4.Enabled = false
- SHamonSnd:Stop()
- combo = 0
- end
- end
- res()
- hum.WalkSpeed = ws
- walking = false
- del = false
- end
- end
- if mouse then
- mouse.Button1Down:connect(onButton1Down)
- mouse.KeyDown:connect(onKeyDown)
- end
- --Loop Function--
- walking = false
- toim = 0
- while true do
- swait()
- toim = toim + .1
- if del == false then attacking = false elseif del == true then attacking = true end
- if atkd == true then
- TC.C0 = TCF
- HC.C0 = HCF
- RW.C0 = RWF
- LW.C0 = LWF
- atkd = false
- end
- if atkdd == true then
- TC.C0 = ITCF
- HC.C0 = IHCF
- RW.C0 = IRWF
- LW.C0 = ILWF
- atkdd = false
- end
- torvel = (chara.HumanoidRootPart.Velocity*Vector3.new(1,0,1)).magnitude
- if torvel < 1 and walking == true and del == false and atkd == false and attacking == false then
- for i = 0,1,.25 do
- swait(.001)
- if del == false and attacking == false then
- TC.C0 = clerp(TCF,ITCF,i)
- HC.C0 = clerp(HCF * CFrame.fromEulerAnglesXYZ(math.rad(10),0,0),IHCF,i)
- RW.C0 = clerp((RWF - Vector3.new(-1,0,.7)) * CFrame.fromEulerAnglesXYZ(math.rad(45),0,math.rad(45)),IRWF,i)
- LW.C0 = clerp((LWF - Vector3.new(1,0,.7)) * CFrame.fromEulerAnglesXYZ(math.rad(45),0,math.rad(-45)),ILWF,i)
- end
- end
- walking = false
- elseif torvel > 1 and walking == false and del == false and atkd == false and attacking == false then
- for i = 0,1,.25 do
- swait(.001)
- if del == false and attacking == false then
- TC.C0 = clerp(ITCF,TCF,i)
- HC.C0 = clerp(IHCF,HCF * CFrame.fromEulerAnglesXYZ(math.rad(10),0,0),i)
- RW.C0 = clerp((RWF - Vector3.new(-1,0,.7)) * CFrame.fromEulerAnglesXYZ(math.rad(45),0,math.rad(45)),IRWF,1-i)
- LW.C0 = clerp((LWF - Vector3.new(1,0,.7)) * CFrame.fromEulerAnglesXYZ(math.rad(45),0,math.rad(-45)),ILWF,1-i)
- end
- end
- walking = true
- else
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement