Advertisement
SmokeDelsin

my soul solid

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