Advertisement
V3rmLua33

RARE

Jan 30th, 2015
452
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 25.59 KB | None | 0 0
  1. --==Made by LuisPambid==--
  2. --==Soul Solid==--
  3.  
  4. local player=game.Players.LocalPlayer
  5. local char=player.Character
  6. repeat wait() until player and char
  7. local torso=char.Torso
  8. local head=char.Head
  9. local human=char.Humanoid
  10. local arm={Left=char["Left Arm"], Right=char["Right Arm"]}
  11. local leg={Left=char["Left Leg"], Right=char["Right Leg"]}
  12. local c=function(f) coroutine.resume(coroutine.create(f)) end
  13. local p=function(f) pcall(f) end
  14. local add={
  15.     Part=function(par, a, c, col, t, s, cf, ms)
  16.         local p=Instance.new("Part", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
  17.         local m=Instance.new("BlockMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) end)
  18.         return p
  19.     end,
  20.     Wedge=function(par, a, c, col, t, s, cf, ms)
  21.         local p=Instance.new("WedgePart", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
  22.         local m=Instance.new("SpecialMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) m.MeshType="Wedge" end)
  23.         return p
  24.     end,
  25.     Gui=function(ins, par, bc, bg, tc, fs, text, t, s, pos)
  26.         local g=Instance.new(ins, par) pcall(function() g.BorderColor=BrickColor.new(bc) g.BackgroundColor=BrickColor.new(bg) g.TextColor=BrickColor.new(tc) g.FontSize=fs g.Font="ArialBold" g.Text=text g.Transparency=t g.Size=s g.Position=pos  end)
  27.         return g
  28.     end,
  29.     Weld=function(par, p1, cf)
  30.         local w=Instance.new("Weld", par) pcall(function() w.Part0=w.Parent or par w.Part1=p1 w.C1=cf or CFrame.new() end)
  31.         return w
  32.     end,
  33.     Mesh=function(ins, par, s, of, t)
  34.         local m=Instance.new(ins, par) pcall(function() m.Scale=s or Vector3.new() m.Offset=of or Vector3.new() m.MeshType=t end)
  35.         return m
  36.     end,
  37.     Sound=function(parent, id, volume, pitch)
  38.         local s=Instance.new("Sound", parent) pcall(function() s.SoundId=id s.Volume=volume s.Pitch=pitch end)
  39.         return s
  40.     end,
  41. }
  42. local scriptname="Soul Solid" --Name here
  43. pcall(function() player.Backpack[scriptname]:remove() char[scriptname]:remove() char["Objects"]:remove() player.PlayerGui[scriptname]:remove()  end)
  44. local model=Instance.new("Model", char) model.Name="Objects"
  45. local modelB=Instance.new("Model", char) modelB.Name=scriptname
  46. local gui=Instance.new("ScreenGui", player.PlayerGui) gui.Name=scriptname
  47. local bin=Instance.new("HopperBin", player.Backpack) bin.Name=scriptname
  48. local skincolor="New Yeller"
  49. local suitcolor="Really black"
  50. local body={}
  51. local animate={}
  52. local obj={}
  53. function createParts()
  54.     --==PARTS==--
  55.     body.Head=head:clone() body.Head.Parent=model body.Head.BrickColor=BrickColor.new(skincolor) body.Head.Transparency=0
  56.     body.Torso=add.Part(model, false, false, skincolor, 0, Vector3.new(2, 2, 1), nil)
  57.     body.ArmLeft, body.ArmRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil)
  58.     body.LegLeft, body.LegRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil)
  59.     p(function() for i, v in pairs(char:children()) do v.Transparency=1 end end)
  60.     p(function() for i, v in pairs(char:children()) do v["face"]:clone().Parent=body.Head v["face"]:remove() end end)
  61.     p(function() for i, v in pairs(char:children()) do if v.ClassName=="Hat" then v:remove() end end end)
  62.     --==WELDS==--
  63.     body.HeadW=add.Weld(body.Head, body.Torso, CFrame.new(0, 1.5, 0))
  64.     body.TorsoW=add.Weld(body.Torso, torso, nil)
  65.     body.ArmLeftW, body.ArmRightW=add.Weld(body.ArmLeft, body.Torso, CFrame.new(-1.5, .5, 0)), add.Weld(body.ArmRight, body.Torso, CFrame.new(1.5, .5, 0))
  66.     body.LegLeftW, body.LegRightW=add.Weld(body.LegLeft, body.Torso, CFrame.new(-.5, -1.5, 0)), add.Weld(body.LegRight, body.Torso, CFrame.new(.5, -1.5, 0))
  67.     --==MESHES==--
  68.     add.Mesh("BlockMesh", body.ArmLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
  69.     add.Mesh("BlockMesh", body.ArmRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
  70.     add.Mesh("BlockMesh", body.LegLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
  71.     add.Mesh("BlockMesh", body.LegRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
  72.     ---------------------------------------------------------------------------------------
  73.     animate={
  74.         ["Head"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  75.             body.HeadW.C1=CFrame.new(0, 1.5, 0)*cf
  76.         end;
  77.         ["Torso"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  78.             body.TorsoW.C1=cf
  79.         end;
  80.         ["ArmLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  81.             body.ArmLeftW.C1=CFrame.new(-1.5, .5, 0)*cf
  82.         end;
  83.         ["ArmRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  84.             body.ArmRightW.C1=CFrame.new(1.5, .5, 0)*cf
  85.         end;
  86.         ["LegLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  87.             body.LegLeftW.C1=CFrame.new(-.5, -1.5, 0)*cf
  88.         end;
  89.         ["LegRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
  90.             body.LegRightW.C1=CFrame.new(.5, -1.5, 0)*cf
  91.         end;
  92.     }
  93.     --==Objects==--
  94.     --Suit--
  95.     obj.ArmLeft, obj.ArmRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil)
  96.     obj.ArmLeftW, obj.ArmRightW=add.Weld(obj.ArmLeft, body.ArmLeft, nil), add.Weld(obj.ArmRight, body.ArmRight, nil)
  97.     obj.LegLeft, obj.LegRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil)
  98.     obj.LegLeftW, obj.LegRightW=add.Weld(obj.LegLeft, body.LegLeft, nil), add.Weld(obj.LegRight, body.LegRight, nil)
  99.     obj.Torso=add.Part(model, false, false, suitcolor, 0, Vector3.new(2, 2, 1), nil)
  100.     obj.TorsoW=add.Weld(obj.Torso, body.Torso, nil)
  101.     add.Mesh("BlockMesh", obj.ArmLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
  102.     add.Mesh("BlockMesh", obj.ArmRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
  103.     add.Mesh("BlockMesh", obj.LegLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
  104.     add.Mesh("BlockMesh", obj.LegRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
  105.     add.Mesh("BlockMesh", obj.Torso, Vector3.new(1.05, 1.05, 1.05), nil, nil)
  106.     ---------------------------------------------------------------------------------------
  107.     obj.Handle=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.25, 2, .25), nil)
  108.     obj.HandleW=add.Weld(obj.Handle, body.ArmRight, CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, 0))
  109.     for i=1, 5 do
  110.         obj.Design=add.Part(modelB, false, false, "White", 0, Vector3.new(.3, .1, .1), nil)
  111.         obj.DesignW=add.Weld(obj.Design, obj.Handle, CFrame.new(0, -1+i/3, 0)*CFrame.Angles(math.rad(45), 0, 0))
  112.     end
  113.     --SEALS--
  114.     obj.Seal=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil)
  115.     obj.SealM=add.Mesh("BlockMesh", obj.Seal, Vector3.new(.2, .5, 1), nil, nil)
  116.     obj.SealW=add.Weld(obj.Seal, obj.Handle, CFrame.new(0, -1.15, .1))
  117.     obj.Seal2=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil)
  118.     obj.Seal2M=add.Mesh("BlockMesh", obj.Seal2, Vector3.new(.25, 1, .5), nil, nil)
  119.     obj.Seal2W=add.Weld(obj.Seal2, obj.Handle, CFrame.new(0, -1.1, 0))
  120.     obj.Seal3=add.Part(modelB, false,false, "White", 0, Vector3.new(.3, 2, .2), nil)
  121.     obj.Seal3M=add.Mesh("BlockMesh", obj.Seal3, Vector3.new(1, 1, .5), nil, nil)
  122.     obj.Seal3W=add.Weld(obj.Seal3, obj.Handle, nil)
  123.     ---------------------------------------------------------------------------------------
  124.     obj.Guard=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.5, .2, .5), nil)
  125.     obj.GuardW=add.Weld(obj.Guard, obj.Handle, CFrame.new(0, 1.1, 0))
  126.     obj.GuardB=add.Part(modelB, false, false, "White", 0, Vector3.new(.25, .2, .3), nil)
  127.     obj.GuardBM=add.Mesh("BlockMesh", obj.GuardB, Vector3.new(.5, 1, 1), nil, nil)
  128.     obj.GuardBW=add.Weld(obj.GuardB, obj.Handle, CFrame.new(0, 1.25, 0))
  129.     obj.Blade=add.Part(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 4, .25), nil) obj.Blade.Reflectance=.5
  130.     obj.BladeM=add.Mesh("BlockMesh", obj.Blade, Vector3.new(.5, 1, 1), nil, nil)
  131.     obj.BladeW=add.Weld(obj.Blade, obj.Handle, CFrame.new(0, 3, 0))
  132.     obj.Point=add.Wedge(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 1, .25), nil) obj.Point.Reflectance=.5
  133.     obj.PointM=add.Mesh("SpecialMesh", obj.Point, Vector3.new(.5, 1, 1), nil, "Wedge")
  134.     obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, 2.5, 0)*CFrame.Angles(math.rad(0), 0, 0))
  135.     --==Signature(L)==--
  136.     obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, 1, .2), nil)
  137.     obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.25, -.2))
  138.     obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, .2, .5), nil)
  139.     obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.65, 0))
  140. end
  141. function removeParts()
  142.     p(function()
  143.         for i, v in pairs(model:children()) do v:remove() end       for i, v in pairs(modelB:children()) do v:remove() end  for i, v in pairs(char:children()) do v.Transparency=0 end
  144.     end)
  145. end
  146. --Variables--
  147. local trailDeb=false
  148. local running=false
  149. local hitDeb=false
  150. local attacking=false
  151. local hitting=false
  152. local shield=false
  153. local keyDeb=false
  154. local keyDeb2=false
  155. local looping=false
  156. local w, a, s, d=false, false, false, false
  157. local combo=0
  158. local speed=32
  159. local attackspeed=.25
  160. local dmg=math.random(5, 10)
  161. local looping2=false
  162. local rage=1
  163. local Slash=add.Sound(torso, "rbxasset://sounds//swordslash.wav", 1, 1)
  164. local Dash=add.Sound(torso, "http://www.roblox.com/asset/?id=22968437", 1, 1)
  165. local Clang=add.Sound(torso, "http://www.roblox.com/asset/?id=11113679", 1, 1)
  166. local Heal=add.Sound(torso, "http://www.roblox.com/asset/?id=2101144", 1, 1)
  167. local Electricity=add.Sound(torso, "http://www.roblox.com/asset/?id=10756118", 1, 1)
  168. local attackLabel=add.Gui("TextLabel", gui, "Really black", "Really black", "White", "Size18", "Dash(C)", 0, UDim2.new(0, 150, 0, 50), UDim2.new(0, 0, 0, 150))
  169. local attackLabel2=add.Gui("TextLabel", attackLabel, "Really black", "Really black", "White", "Size18", "Block(V)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
  170. local attackLabel3=add.Gui("TextLabel", attackLabel2, "Really black", "Really black", "White", "Size18", "Jump(Space)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
  171. local attackLabel4=add.Gui("TextLabel", attackLabel3, "Really black", "Really black", "White", "Size18", "Regenerate(X)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
  172. local attackLabel5=add.Gui("TextLabel", attackLabel4, "Really black", "Really black", "White", "Size18", "Ultimate(Z)ON/OFF", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
  173. function lightningGen(startPos, endPos)
  174.     local magnitude=(startPos-endPos).magnitude
  175.     local distance=(startPos+endPos)/2
  176.     local pattern=add.Part(workspace, true, false, "White", 1, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPos)) pattern.Name="Effect"
  177.     local startPosProx=startPos
  178.     for i=1, 9 do
  179.         local startPosProx2=startPosProx
  180.         local random=Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
  181.         local findSize=pattern.Size.z/10
  182.         local findOffSet=pattern.CFrame.lookVector*-1
  183.         local compute=i*findSize*findOffSet
  184.         local newStartPos=startPos
  185.         local newEndPos=CFrame.new(random+compute+newStartPos).p
  186.         local magnitude=(startPosProx2-newEndPos).magnitude
  187.         local distance=(startPosProx2+newEndPos)/2
  188.         local lightning=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPosProx2)) lightning.Name="Effect"
  189.         c(function()
  190.             for i=0, 1, .1 do wait()
  191.                 lightning.Transparency=i
  192.             end
  193.             lightning:remove()
  194.         end)
  195.         startPosProx=newEndPos
  196.     end
  197.     pattern:remove()
  198. end
  199. function computePos(pos, pos2)
  200.     local pos3=Vector3.new(pos2.x, pos.y, pos2.z)
  201.     torso.CFrame=CFrame.new(pos, pos3)
  202.     return pos3
  203. end
  204. function nearTorso(pos, dis)
  205.     local temp
  206.     local distance=dis
  207.     for i, v in pairs(workspace:children()) do
  208.         if v:isA("Model") then
  209.             temp=v:findFirstChild("Torso")
  210.             local humanoid=v:findFirstChild("Humanoid")
  211.             if temp and humanoid and v~=char and (temp.CFrame.p-pos).magnitude<distance then
  212.                 distance=(temp.CFrame.p-pos).magnitude
  213.                 return temp
  214.             end
  215.         end
  216.     end
  217. end
  218.  
  219. function hit(h)
  220.     if hitting==true and looping2==true and h.Parent:findFirstChild("Humanoid")==nil and h~=nil and h.Parent~=char and h.Parent~=model and h.Parent~=modelB and h.Name~="Effect" and h.Name~="Base" and hitDeb==false then hitDeb=true
  221.         p(function() print("found")
  222.             local pYPos=h.Position.y-(h.Size.y/2)
  223.             local sYPos=obj.Blade.Position.y
  224.             if sYPos<=pYPos or sYPos>=(pYPos+h.Size.y) then return end
  225.             local p=h:clone() p.Parent=workspace p.Anchored=false p.CanCollide=true --p.Name="Effect"
  226.             local p2=h:clone() p2.Parent=workspace p2.Anchored=false p2.CanCollide=true --p2.Name="Effect"
  227.             h:remove()
  228.             p.formFactor="Custom"
  229.             p2.formFactor="Custom"
  230.             p.Size=Vector3.new(h.Size.x, sYPos-pYPos, h.Size.z)
  231.             p2.Size=Vector3.new(h.Size.x, p2.Size.y-(sYPos-pYPos), h.Size.z)
  232.             p.CFrame=h.CFrame*CFrame.new(0, -p2.Size.y/2, 0)
  233.             p2.CFrame=h.CFrame*CFrame.new(0, p.Size.y/2, 0)
  234.             c(function() wait(2)
  235.             --[[p.Anchored=false p2.Anchored=false
  236.                 for i=0, 1, .05 do
  237.                     wait()
  238.                     p.Transparency=i p2.Transparency=i
  239.                 end]]
  240.                 p:remove() p2:remove()
  241.             end)
  242.         end)
  243.         wait()
  244.         hitDeb=false
  245.     elseif hitting==true and game.Players[h.Parent.Name] and h.Parent~=char and hitDeb==false then hitDeb=true
  246.         pcall(function()
  247.             local hHuman=h.Parent:findFirstChild("Humanoid")
  248.             hHuman.Health=hHuman.Health-dmg
  249.             --[[for i=1, 5 do
  250.                 local spark=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, 1, .2), obj.Point.CFrame*CFrame.Angles(math.random(-45, 45), math.random(-45, 45), math.random(-45, 45))) spark.Name="Effect"
  251.                 local sparkM=add.Mesh("BlockMesh", spark, Vector3.new(.5, 1, .5), nil, nil)
  252.                 c(function()
  253.                     for i=0, 1, .05 do wait()
  254.                         spark.Transparency=i
  255.                     end spark:remove()
  256.                 end)
  257.             end]]
  258.             local fakeM=Instance.new("Model", workspace) fakeM.Name=dmg
  259.             local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0
  260.             local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head"
  261.             local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil)
  262.             local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0)
  263.             game.Debris:addItem(fakeM, 2)  
  264.         end)
  265.         wait(.2)
  266.         hitDeb=false
  267.     end
  268. end
  269.  
  270. function trail(pos, cf)
  271.     c(function()
  272.         local old=(pos.CFrame*cf).p
  273.         while trailDeb==true do
  274.             wait()
  275.             local new=(pos.CFrame*cf).p
  276.             local mag=(old-new).magnitude
  277.             local dis=(old+new)/2
  278.             local trail=add.Part(workspace, true, false, "Pastel light blue", 0, Vector3.new(.2, mag, .2), CFrame.new(dis, new)*CFrame.Angles(math.pi/2, 0, 0)) trail.Name="Effect"
  279.             trail.Touched:connect(hit)
  280.             local tMesh=add.Mesh("CylinderMesh", trail, Vector3.new(1, 1, 1), nil, nil)
  281.             old=new
  282.             c(function()
  283.                 for i=1, 0, -.1 do
  284.                     wait()
  285.                     tMesh.Scale=tMesh.Scale*Vector3.new(i, 1, i)
  286.                 end
  287.                 trail:remove()
  288.             end)
  289.             c(function()
  290.                 for i=0, 1, .1 do
  291.                     wait()
  292.                     trail.Transparency=i
  293.                 end
  294.             end)
  295.         end
  296.     end)
  297. end
  298.  
  299. function onRunning() while attacking or looping do wait() end
  300.     if w or a or s or d then
  301.         animate.ArmLeft(CFrame.Angles(0, 0, math.rad(-15)))
  302.         animate.ArmRight(CFrame.Angles(0, 0, math.rad(15)))
  303.         animate.LegLeft(CFrame.Angles(0, 0, math.rad(-5)))
  304.         animate.LegRight(CFrame.Angles(0, 0, math.rad(5)))
  305.     end
  306. end
  307.  
  308. function doAttacks() combo=combo+1 rage=rage+1 print("Combo: "..combo)
  309.     if attacking==false and looping==false then attacking=true
  310.         if combo==1 then hitting=true Slash:play()
  311.             for i, v in pairs(modelB:children()) do v.Touched:connect(hit) end
  312.             for i=0, 1, attackspeed do wait()
  313.                 animate.Torso(CFrame.Angles(0, -math.rad(45)*i, 0))
  314.                 animate.ArmRight(CFrame.Angles(0, 0, math.rad(90)*i))
  315.                 obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)-(math.rad(135)*i), 0, 0)
  316.             end
  317.             trailDeb=true   trail(obj.Point, CFrame.new(0, 1, 0))
  318.             for i=0, 1, attackspeed do wait()
  319.                 animate.Torso(CFrame.Angles(0, -math.rad(45)-(-math.rad(135)*i), 0))
  320.                 obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(225)-(-math.rad(135)*i), 0, -math.rad(15)*i)
  321.             end
  322.             if combo>1 then combo=2 print("Combo: "..combo) Slash:play()
  323.                 for i=1, 0, -attackspeed do wait()
  324.                     animate.Torso(CFrame.Angles(0, -math.rad(90)+(math.rad(90)*i), 0))
  325.                     animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i))
  326.                     obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i)
  327.                 end
  328.                 trailDeb=false
  329.                 for i=1, 0, -attackspeed do wait()
  330.                     animate.Torso(CFrame.Angles(0, -math.rad(90)*i, 0))
  331.                 end
  332.                 attacking=false
  333.                 hitting=false
  334.                 combo=0
  335.                 onRunning()
  336.                 return
  337.             end
  338.             trailDeb=false
  339.             for i=1, 0, -.2 do wait()
  340.                 animate.Torso(CFrame.Angles(0, math.rad(90)*i, 0))
  341.                 animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i))
  342.                 obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i)
  343.             end
  344.         end
  345.         attacking=false
  346.         hitting=false
  347.         combo=0
  348.         onRunning()
  349.     end
  350. end
  351.  
  352. local Abilities={
  353.     ["Dash"]=function() Dash:play()
  354.         local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, 0, 1.5)*CFrame.Angles(math.rad(90), 0, 0)) aura.Name="Effect"
  355.         local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
  356.         c(function()
  357.             for i=0, 2, .1 do wait()
  358.                 auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
  359.             end
  360.         end)
  361.         c(function()
  362.             for i=0, 1, .1 do
  363.                 wait()
  364.                 aura.Transparency=i
  365.             end
  366.             pcall(function() aura:remove() end)
  367.         end)
  368.         torso.CFrame=torso.CFrame+torso.CFrame.lookVector*10
  369.     end;
  370.     ["DashJump"]=function() Dash:play()
  371.         local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(math.rad(180), 0, 0)) aura.Name="Effect"
  372.         local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
  373.         c(function()
  374.             for i=0, 2, .1 do wait()
  375.                 auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
  376.             end
  377.         end)
  378.         c(function()
  379.             for i=0, 1, .1 do
  380.                 wait()
  381.                 aura.Transparency=i
  382.             end
  383.             pcall(function() aura:remove() end)
  384.         end)
  385.         pcall(function() torso:findFirstChild("BodyPosition"):remove() end)
  386.         c(function()
  387.             local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(0, math.huge, 0) bp.position=torso.Position+Vector3.new(0, 10, 0)
  388.             wait(3)
  389.             bp:remove()
  390.         end)
  391.     end;
  392.     ["Shield"]=function(mouse) human.WalkSpeed=0
  393.         local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=torso.Position
  394.         looping=true
  395.         for i=0, 1, .2 do wait()
  396.             animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0))
  397.             animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i))
  398.             obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i)
  399.         end
  400.         Clang:play()
  401.         local shieldPart=add.Part(model, true, false, "White", 1, Vector3.new(15, 15, 4), torso.CFrame+torso.CFrame.lookVector*1.5)
  402.         while looping do wait() computePos(torso.CFrame.p, mouse.Hit.p) shieldPart.CFrame=torso.CFrame+torso.CFrame.lookVector*1.5
  403.             shieldPart.Touched:connect(function(h)
  404.                 if h.Parent~=char and h.Parent~=modelB and h.Parent~=model and h.Name~="Trail" and h.Name~="Base" and hitDeb==false then hitDeb=true print(h.Name)
  405.                     Clang:play()
  406.                     c(function()
  407.                         --[[local effect=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), CFrame.new(h.CFrame.p, torso.CFrame.p)) effect.Name="Trail"
  408.                         local mesh=add.Mesh("SpecialMesh", effect, Vector3.new(1.5, 1.5, 1.5), nil, "File") mesh.MeshId="http://www.roblox.com/asset/?id=3270017"
  409.                         c(function()
  410.                             for i=0, 1, .1 do
  411.                                 wait()
  412.                                 effect.Mesh.Scale=effect.Mesh.Scale+Vector3.new(i, i, i)
  413.                             end
  414.                             effect:remove()
  415.                         end)
  416.                         c(function()
  417.                             for i=0, 1, .1 do
  418.                                 wait()
  419.                                 effect.Transparency=i
  420.                             end
  421.                         end)]]
  422.                         h.Anchored=false
  423.                         local bp=Instance.new("BodyPosition", h) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=(CFrame.new(torso.CFrame.p, h.CFrame.p)*CFrame.new(0, 0, -h.Velocity.z*1.5)).p
  424.                         local bg=Instance.new("BodyGyro", h) bg.maxTorque=Vector3.new(0, math.huge, 0) bg.cframe=CFrame.new(h.CFrame.p, torso.CFrame.p)
  425.                         h.Velocity=Vector3.new(0, 0, 0) h.RotVelocity=Vector3.new(0, 0, 0)
  426.                         game.Debris:addItem(bp, .2) game.Debris:addItem(bg, .2)
  427.                     end)
  428.                     wait()
  429.                     hitDeb=false
  430.                 end
  431.             end)
  432.         end
  433.         bp:remove()
  434.         shieldPart:remove()
  435.         for i=1, 0, -.2 do wait()
  436.             animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0))
  437.             animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i))
  438.             obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i)
  439.         end
  440.         human.WalkSpeed=speed
  441.     end;
  442.     ["Regenerate"]=function(mouse) human.WalkSpeed=0
  443.         looping=true
  444.         for i=0, 1, .1 do wait()
  445.             animate.Torso(CFrame.new(0, -1*i, 0))
  446.             animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
  447.             animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i))
  448.             animate.LegLeft(CFrame.new(0, 1*i, -1*i))
  449.             animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0))
  450.             obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0)
  451.         end
  452.         while looping and human.Health<100 do wait() human.Health=human.Health+1 Heal:play()
  453.             local aura=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect"
  454.             local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(1, 1, 1), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
  455.             local aura2=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(5, 5, 5), body.Torso.CFrame*CFrame.new(math.random(-15, 15), math.random(-15, 15), math.random(-15, 15))*CFrame.Angles(math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45))))
  456.             aura2.Name="Effect"
  457.             c(function()
  458.                 for i=0, 3, .2 do wait()
  459.                     auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
  460.                 end
  461.                 c(function()
  462.                     for i=.5, 1, .1 do
  463.                         wait()
  464.                         aura.Transparency=i aura2.Transparency=i
  465.                     end
  466.                 end)
  467.                 aura:remove() aura2:remove()
  468.             end)
  469.         end
  470.         for i=1, 0, -.1 do wait()
  471.             animate.Torso(CFrame.new(0, -1*i, 0))
  472.             animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
  473.             animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i))
  474.             animate.LegLeft(CFrame.new(0, 1*i, -1*i))
  475.             animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0))
  476.             obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0)
  477.         end
  478.         human.WalkSpeed=speed
  479.     end;
  480.     ["Ultimate"]=function()
  481.         c(function()
  482.             looping2=true
  483.             speed=40 attackspeed=.25 dmg=dmg*2.5
  484.             while looping2 and human.Health>2 do wait(.2) human.Health=human.Health-2 Electricity:play()
  485.                 lightningGen(body.Torso.CFrame.p, body.Torso.Position+Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)))
  486.                 local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect"
  487.                 local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
  488.                 c(function()
  489.                     for i=0, 1, .1 do wait()
  490.                         auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
  491.                     end
  492.                 end)
  493.                 c(function()
  494.                     for i=0, 1, .1 do
  495.                         wait()
  496.                         aura.Transparency=i
  497.                     end
  498.                     aura:remove()
  499.                 end)
  500.             end
  501.             speed=32 attackspeed=.2 dmg=math.random(5, 10)
  502.             keyDeb=false looping2=false
  503.         end)
  504.     end;
  505. }
  506.  
  507. bin.Selected:connect(function(mouse) createParts() human.WalkSpeed=speed
  508.     onRunning()
  509.     while attacking do wait() end
  510.     mouse.Button1Down:connect(doAttacks)
  511.     mouse.KeyDown:connect(function(key) key=key:lower()
  512.         if key=="w" then w=true onRunning() end
  513.         if key=="a" then a=true onRunning() end
  514.         if key=="s" then s=true onRunning() end
  515.         if key=="d" then d=true onRunning() end
  516.         if key=="c" and keyDeb2==false then keyDeb2=true Abilities.Dash() wait() keyDeb2=false end
  517.         if key==" " and keyDeb2==false then keyDeb2=true Abilities.DashJump() wait() keyDeb2=false end
  518.         if key=="v" and keyDeb==false then keyDeb=true Abilities.Shield(mouse) keyDeb=false end
  519.         if key=="x" and keyDeb==false and human.Health<100 then keyDeb=true Abilities.Regenerate(mouse) keyDeb=false end
  520.         if key=="z" and keyDeb==false and human.Health>5 then
  521.             keyDeb=true
  522.             Abilities.Ultimate(mouse)
  523.         elseif key=="z" and keyDeb==true then
  524.             keyDeb=false looping2=false
  525.         end
  526.     end)
  527.     mouse.KeyUp:connect(function(key) key=key:lower()
  528.         if key=="v" then looping=false end
  529.         if key=="x" then looping=false end
  530.     end)
  531. end)
  532. bin.Deselected:connect(function() removeParts() end)--mediafire
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement