Advertisement
AgentVK

Blood Will

Dec 22nd, 2017
637
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.92 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4.  
  5.  
  6.  
  7. wait(0.2)
  8.  
  9.  
  10.  
  11. Player = game:GetService("Players").LocalPlayer
  12. PlayerGui = Player.PlayerGui
  13. Cam = workspace.CurrentCamera
  14. Backpack = Player.Backpack
  15. Character = Player.Character
  16. Humanoid = Character.Humanoid
  17. Mouse = Player:GetMouse()
  18. RootPart = Character["HumanoidRootPart"]
  19. Torso = Character["Torso"]
  20. Head = Character["Head"]
  21. RightArm = Character["Right Arm"]
  22. LeftArm = Character["Left Arm"]
  23. RightLeg = Character["Right Leg"]
  24. LeftLeg = Character["Left Leg"]
  25. RootJoint = RootPart["RootJoint"]
  26. Neck = Torso["Neck"]
  27. RightShoulder = Torso["Right Shoulder"]
  28. LeftShoulder = Torso["Left Shoulder"]
  29. RightHip = Torso["Right Hip"]
  30. LeftHip = Torso["Left Hip"]
  31. local sick = Instance.new("Sound",Character)
  32. sick.SoundId = "rbxassetid://1117396305"
  33. sick.Looped = true
  34. sick.Pitch = 1
  35. sick.Volume = 1
  36. sick:Play()
  37.  
  38. IT = Instance.new
  39. CF = CFrame.new
  40. VT = Vector3.new
  41. RAD = math.rad
  42. C3 = Color3.new
  43. UD2 = UDim2.new
  44. BRICKC = BrickColor.new
  45. ANGLES = CFrame.Angles
  46. EULER = CFrame.fromEulerAnglesXYZ
  47. COS = math.cos
  48. ACOS = math.acos
  49. SIN = math.sin
  50. ASIN = math.asin
  51. ABS = math.abs
  52. MRANDOM = math.random
  53. FLOOR = math.floor
  54.  
  55. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  56. local NEWMESH = IT(MESH)
  57. if MESH == "SpecialMesh" then
  58. NEWMESH.MeshType = MESHTYPE
  59. if MESHID ~= "nil" and MESHID ~= "" then
  60. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  61. end
  62. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  63. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  64. end
  65. end
  66. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  67. NEWMESH.Scale = SCALE
  68. NEWMESH.Parent = PARENT
  69. return NEWMESH
  70. end
  71.  
  72. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  73. local NEWPART = IT("Part")
  74. NEWPART.formFactor = FORMFACTOR
  75. NEWPART.Reflectance = REFLECTANCE
  76. NEWPART.Transparency = TRANSPARENCY
  77. NEWPART.CanCollide = false
  78. NEWPART.Locked = true
  79. NEWPART.Anchored = true
  80. if ANCHOR == false then
  81. NEWPART.Anchored = false
  82. end
  83. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  84. NEWPART.Name = NAME
  85. NEWPART.Size = SIZE
  86. NEWPART.Position = Torso.Position
  87. NEWPART.Material = MATERIAL
  88. NEWPART:BreakJoints()
  89. NEWPART.Parent = PARENT
  90. return NEWPART
  91. end
  92.  
  93. --//=================================\\
  94. --|| CUSTOMIZATION
  95. --\\=================================//
  96.  
  97. Class_Name = "Template"
  98. Weapon_Name = "Add-ons"
  99.  
  100. Custom_Colors = {
  101. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  102. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  103.  
  104. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  105. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  106. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  107. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  108. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  109.  
  110. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  111. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  112. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  113. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  114. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  115. }
  116.  
  117.  
  118. Player_Size = 1 --Size of the player.
  119. Animation_Speed = 3
  120. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  121.  
  122. local Speed = 16
  123. local Effects2 = {}
  124.  
  125. --//=================================\\
  126. --|| END OF CUSTOMIZATION
  127. --\\=================================//
  128.  
  129. local function weldBetween(a, b)
  130. local weldd = Instance.new("ManualWeld")
  131. weldd.Part0 = a
  132. weldd.Part1 = b
  133. weldd.C0 = CFrame.new()
  134. weldd.C1 = b.CFrame:inverse() * a.CFrame
  135. weldd.Parent = a
  136. return weldd
  137. end
  138.  
  139. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  140. local acs = Instance.new("Part")
  141. acs.CanCollide = false
  142. acs.Anchored = false
  143. acs.Size = Vector3.new(0,0,0)
  144. acs.CFrame = attachmentpart.CFrame
  145. acs.Parent = Character
  146. acs.BrickColor = color
  147. local meshs = Instance.new("SpecialMesh")
  148. meshs.MeshId = mesh
  149. meshs.TextureId = texture
  150. meshs.Parent = acs
  151. meshs.Scale = scale
  152. meshs.Offset = offset
  153. weldBetween(attachmentpart,acs)
  154. end
  155.  
  156. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  157. if TYPE == "Gem" then
  158. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  159. acs.Anchored = false
  160. acs.CanCollide = false
  161. acs.CFrame = PART.CFrame
  162. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  163. weldBetween(PART,acs)
  164. elseif TYPE == "Skull" then
  165. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  166. acs.Anchored = false
  167. acs.CanCollide = false
  168. acs.CFrame = PART.CFrame
  169. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  170. weldBetween(PART,acs)
  171. elseif TYPE == "Eye" then
  172. local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  173. acs.Anchored = false
  174. acs.CanCollide = false
  175. acs.CFrame = PART.CFrame
  176. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  177. weldBetween(PART,acs)
  178. end
  179. end
  180.  
  181. --//=================================\\
  182. --|| USEFUL VALUES
  183. --\\=================================//
  184.  
  185. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  186. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  187. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  188. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  189. local CHANGEDEFENSE = 0
  190. local CHANGEDAMAGE = 0
  191. local CHANGEMOVEMENT = 0
  192. local ANIM = "Idle"
  193. local ATTACK = false
  194. local EQUIPPED = false
  195. local HOLD = false
  196. local COMBO = 1
  197. local Rooted = false
  198. local SINE = 0
  199. local KEYHOLD = false
  200. local CHANGE = 2 / Animation_Speed
  201. local WALKINGANIM = false
  202. local WALK = 0
  203. local VALUE1 = false
  204. local VALUE2 = false
  205. local ROBLOXIDLEANIMATION = IT("Animation")
  206. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  207. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  208. --ROBLOXIDLEANIMATION.Parent = Humanoid
  209. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  210. WEAPONGUI.Name = "Weapon GUI"
  211. local Weapon = IT("Model")
  212. Weapon.Name = Weapon_Name
  213. local Effects = IT("Folder", Weapon)
  214. Effects.Name = "Effects"
  215. local ANIMATOR = Humanoid.Animator
  216. local ANIMATE = Character.Animate
  217. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  218. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  219. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  220. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  221. local UNANCHOR = true
  222.  
  223. local SKILLTEXTCOLOR = C3(1,0,0)
  224.  
  225. --//=================================\\
  226. --\\=================================//
  227.  
  228.  
  229. --//=================================\\
  230. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  231. --\\=================================//
  232.  
  233. ArtificialHB = Instance.new("BindableEvent", script)
  234. ArtificialHB.Name = "ArtificialHB"
  235.  
  236. script:WaitForChild("ArtificialHB")
  237.  
  238. frame = Frame_Speed
  239. tf = 0
  240. allowframeloss = false
  241. tossremainder = false
  242. lastframe = tick()
  243. script.ArtificialHB:Fire()
  244.  
  245. game:GetService("RunService").Heartbeat:connect(function(s, p)
  246. tf = tf + s
  247. if tf >= frame then
  248. if allowframeloss then
  249. script.ArtificialHB:Fire()
  250. lastframe = tick()
  251. else
  252. for i = 1, math.floor(tf / frame) do
  253. script.ArtificialHB:Fire()
  254. end
  255. lastframe = tick()
  256. end
  257. if tossremainder then
  258. tf = 0
  259. else
  260. tf = tf - frame * math.floor(tf / frame)
  261. end
  262. end
  263. end)
  264.  
  265. --//=================================\\
  266. --\\=================================//
  267.  
  268.  
  269.  
  270.  
  271.  
  272. --//=================================\\
  273. --|| SOME FUNCTIONS
  274. --\\=================================//
  275.  
  276. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  277. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  278. end
  279.  
  280. function PositiveAngle(NUMBER)
  281. if NUMBER >= 0 then
  282. NUMBER = 0
  283. end
  284. return NUMBER
  285. end
  286.  
  287. function NegativeAngle(NUMBER)
  288. if NUMBER <= 0 then
  289. NUMBER = 0
  290. end
  291. return NUMBER
  292. end
  293.  
  294. function Swait(NUMBER)
  295. if NUMBER == 0 or NUMBER == nil then
  296. ArtificialHB.Event:wait()
  297. else
  298. for i = 1, NUMBER do
  299. ArtificialHB.Event:wait()
  300. end
  301. end
  302. end
  303.  
  304. function QuaternionFromCFrame(cf)
  305. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  306. local trace = m00 + m11 + m22
  307. if trace > 0 then
  308. local s = math.sqrt(1 + trace)
  309. local recip = 0.5 / s
  310. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  311. else
  312. local i = 0
  313. if m11 > m00 then
  314. i = 1
  315. end
  316. if m22 > (i == 0 and m00 or m11) then
  317. i = 2
  318. end
  319. if i == 0 then
  320. local s = math.sqrt(m00 - m11 - m22 + 1)
  321. local recip = 0.5 / s
  322. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  323. elseif i == 1 then
  324. local s = math.sqrt(m11 - m22 - m00 + 1)
  325. local recip = 0.5 / s
  326. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  327. elseif i == 2 then
  328. local s = math.sqrt(m22 - m00 - m11 + 1)
  329. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  330. end
  331. end
  332. end
  333.  
  334. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  335. local xs, ys, zs = x + x, y + y, z + z
  336. local wx, wy, wz = w * xs, w * ys, w * zs
  337. local xx = x * xs
  338. local xy = x * ys
  339. local xz = x * zs
  340. local yy = y * ys
  341. local yz = y * zs
  342. local zz = z * zs
  343. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  344. end
  345.  
  346. function QuaternionSlerp(a, b, t)
  347. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  348. local startInterp, finishInterp;
  349. if cosTheta >= 0.0001 then
  350. if (1 - cosTheta) > 0.0001 then
  351. local theta = ACOS(cosTheta)
  352. local invSinTheta = 1 / SIN(theta)
  353. startInterp = SIN((1 - t) * theta) * invSinTheta
  354. finishInterp = SIN(t * theta) * invSinTheta
  355. else
  356. startInterp = 1 - t
  357. finishInterp = t
  358. end
  359. else
  360. if (1 + cosTheta) > 0.0001 then
  361. local theta = ACOS(-cosTheta)
  362. local invSinTheta = 1 / SIN(theta)
  363. startInterp = SIN((t - 1) * theta) * invSinTheta
  364. finishInterp = SIN(t * theta) * invSinTheta
  365. else
  366. startInterp = t - 1
  367. finishInterp = t
  368. end
  369. end
  370. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  371. end
  372.  
  373. function Clerp(a, b, t)
  374. local qa = {QuaternionFromCFrame(a)}
  375. local qb = {QuaternionFromCFrame(b)}
  376. local ax, ay, az = a.x, a.y, a.z
  377. local bx, by, bz = b.x, b.y, b.z
  378. local _t = 1 - t
  379. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  380. end
  381.  
  382. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  383. local frame = IT("Frame")
  384. frame.BackgroundTransparency = TRANSPARENCY
  385. frame.BorderSizePixel = BORDERSIZEPIXEL
  386. frame.Position = POSITION
  387. frame.Size = SIZE
  388. frame.BackgroundColor3 = COLOR
  389. frame.BorderColor3 = BORDERCOLOR
  390. frame.Name = NAME
  391. frame.Parent = PARENT
  392. return frame
  393. end
  394.  
  395. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  396. local label = IT("TextLabel")
  397. label.BackgroundTransparency = 1
  398. label.Size = UD2(1, 0, 1, 0)
  399. label.Position = UD2(0, 0, 0, 0)
  400. label.TextColor3 = TEXTCOLOR
  401. label.TextStrokeTransparency = STROKETRANSPARENCY
  402. label.TextTransparency = TRANSPARENCY
  403. label.FontSize = TEXTFONTSIZE
  404. label.Font = TEXTFONT
  405. label.BorderSizePixel = BORDERSIZEPIXEL
  406. label.TextScaled = false
  407. label.Text = TEXT
  408. label.Name = NAME
  409. label.Parent = PARENT
  410. return label
  411. end
  412.  
  413. function NoOutlines(PART)
  414. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  415. end
  416.  
  417.  
  418. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  419. local NEWWELD = IT(TYPE)
  420. NEWWELD.Part0 = PART0
  421. NEWWELD.Part1 = PART1
  422. NEWWELD.C0 = C0
  423. NEWWELD.C1 = C1
  424. NEWWELD.Parent = PARENT
  425. return NEWWELD
  426. end
  427.  
  428. function CreateSound(ID, PARENT, VOLUME, PITCH)
  429. local NEWSOUND = nil
  430. coroutine.resume(coroutine.create(function()
  431. NEWSOUND = IT("Sound", PARENT)
  432. NEWSOUND.Volume = VOLUME
  433. NEWSOUND.Pitch = PITCH
  434. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  435. Swait()
  436. NEWSOUND:play()
  437. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  438. end))
  439. return NEWSOUND
  440. end
  441.  
  442. function CFrameFromTopBack(at, top, back)
  443. local right = top:Cross(back)
  444. return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  445. end
  446.  
  447. function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  448. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  449. local mesh = IT("SpecialMesh",wave)
  450. mesh.MeshType = "FileMesh"
  451. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  452. mesh.Scale = SIZE
  453. mesh.Offset = VT(0,0,-SIZE.X/8)
  454. wave.CFrame = CFRAME
  455. coroutine.resume(coroutine.create(function(PART)
  456. for i = 1, WAIT do
  457. Swait()
  458. mesh.Scale = mesh.Scale + GROW
  459. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  460. if DOESROT == true then
  461. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  462. end
  463. wave.Transparency = wave.Transparency + (0.5/WAIT)
  464. if wave.Transparency > 0.99 then
  465. wave:remove()
  466. end
  467. end
  468. end))
  469. end
  470.  
  471. function CreateCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  472. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  473. local mesh = IT("SpecialMesh",wave)
  474. mesh.MeshType = "FileMesh"
  475. mesh.MeshId = "http://www.roblox.com/asset/?id=1078075"
  476. mesh.Scale = SIZE
  477. mesh.Offset = VT(0,0,-SIZE.X/8)
  478. wave.CFrame = CFRAME
  479. coroutine.resume(coroutine.create(function(PART)
  480. for i = 1, WAIT do
  481. Swait()
  482. mesh.Scale = mesh.Scale + GROW
  483. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  484. if DOESROT == true then
  485. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  486. end
  487. wave.Transparency = wave.Transparency + (0.5/WAIT)
  488. if wave.Transparency > 0.99 then
  489. wave:remove()
  490. end
  491. end
  492. end))
  493. end
  494.  
  495. function CreateIceCrown(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  496. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  497. local mesh = IT("SpecialMesh",wave)
  498. mesh.MeshType = "FileMesh"
  499. mesh.MeshId = "http://www.roblox.com/asset/?id=1323306"
  500. mesh.Scale = SIZE
  501. mesh.Offset = VT(0,0,-SIZE.X/8)
  502. wave.CFrame = CFRAME
  503. coroutine.resume(coroutine.create(function(PART)
  504. for i = 1, WAIT do
  505. Swait()
  506. mesh.Scale = mesh.Scale + GROW
  507. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  508. if DOESROT == true then
  509. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  510. end
  511. wave.Transparency = wave.Transparency + (0.5/WAIT)
  512. if wave.Transparency > 0.99 then
  513. wave:remove()
  514. end
  515. end
  516. end))
  517. end
  518.  
  519. function CreateSpikeball(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  520. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  521. local mesh = IT("SpecialMesh",wave)
  522. mesh.MeshType = "FileMesh"
  523. mesh.MeshId = "http://www.roblox.com/asset/?id=9982590"
  524. mesh.Scale = SIZE
  525. mesh.Offset = VT(0,0,-SIZE.X/8)
  526. wave.CFrame = CFRAME
  527. coroutine.resume(coroutine.create(function(PART)
  528. for i = 1, WAIT do
  529. Swait()
  530. mesh.Scale = mesh.Scale + GROW
  531. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  532. if DOESROT == true then
  533. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  534. end
  535. wave.Transparency = wave.Transparency + (0.5/WAIT)
  536. if wave.Transparency > 0.99 then
  537. wave:remove()
  538. end
  539. end
  540. end))
  541. end
  542.  
  543. function CreateSwirl(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  544. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  545. local mesh = IT("SpecialMesh",wave)
  546. mesh.MeshType = "FileMesh"
  547. mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  548. mesh.Scale = SIZE
  549. wave.CFrame = CFRAME
  550. coroutine.resume(coroutine.create(function(PART)
  551. for i = 1, WAIT do
  552. Swait()
  553. mesh.Scale = mesh.Scale + GROW
  554. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  555. if DOESROT == true then
  556. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  557. end
  558. wave.Transparency = wave.Transparency + (0.5/WAIT)
  559. if wave.Transparency > 0.99 then
  560. wave:remove()
  561. end
  562. end
  563. end))
  564. end
  565.  
  566. function CreateTornado(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
  567. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  568. local mesh = IT("SpecialMesh",wave)
  569. mesh.MeshType = "FileMesh"
  570. mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  571. mesh.Scale = SIZE
  572. wave.CFrame = CFRAME
  573. coroutine.resume(coroutine.create(function(PART)
  574. for i = 1, WAIT do
  575. Swait()
  576. mesh.Scale = mesh.Scale + GROW
  577. if DOESROT == true then
  578. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  579. end
  580. wave.Transparency = wave.Transparency + (0.5/WAIT)
  581. if wave.Transparency > 0.99 then
  582. wave:remove()
  583. end
  584. end
  585. end))
  586. end
  587.  
  588. function CreateRing(SIZE,DOESROT,ROT,WAIT,CFRAME,COLOR,GROW)
  589. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  590. local mesh = IT("SpecialMesh",wave)
  591. mesh.MeshType = "FileMesh"
  592. mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  593. mesh.Scale = SIZE
  594. mesh.Offset = VT(0,0,0)
  595. wave.CFrame = CFRAME
  596. coroutine.resume(coroutine.create(function(PART)
  597. for i = 1, WAIT do
  598. Swait()
  599. mesh.Scale = mesh.Scale + GROW
  600. if DOESROT == true then
  601. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  602. end
  603. wave.Transparency = wave.Transparency + (0.5/WAIT)
  604. if wave.Transparency > 0.99 then
  605. wave:remove()
  606. end
  607. end
  608. end))
  609. end
  610.  
  611. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  612. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  613. local mesh = IT("SpecialMesh",wave)
  614. mesh.MeshType = "Sphere"
  615. mesh.Scale = SIZE
  616. mesh.Offset = VT(0,0,0)
  617. wave.CFrame = CFRAME
  618. coroutine.resume(coroutine.create(function(PART)
  619. for i = 1, WAIT do
  620. Swait()
  621. mesh.Scale = mesh.Scale + GROW
  622. wave.Transparency = wave.Transparency + (1/WAIT)
  623. if wave.Transparency > 0.99 then
  624. wave:remove()
  625. end
  626. end
  627. end))
  628. return wave
  629. end
  630.  
  631. function MagicBlock(SIZE,WAIT,CFRAME,COLOR,GROW)
  632. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(SIZE,SIZE,SIZE), true)
  633. local mesh = IT("BlockMesh",wave)
  634. wave.CFrame = CFRAME
  635. coroutine.resume(coroutine.create(function(PART)
  636. for i = 1, WAIT do
  637. Swait()
  638. mesh.Scale = mesh.Scale + GROW
  639. wave.CFrame = CFRAME * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  640. wave.Transparency = wave.Transparency + (1/WAIT)
  641. if wave.Transparency > 0.99 then
  642. wave:remove()
  643. end
  644. end
  645. end))
  646. end
  647.  
  648. function MakeForm(PART,TYPE)
  649. if TYPE == "Cyl" then
  650. local MSH = IT("CylinderMesh",PART)
  651. elseif TYPE == "Ball" then
  652. local MSH = IT("SpecialMesh",PART)
  653. MSH.MeshType = "Sphere"
  654. elseif TYPE == "Wedge" then
  655. local MSH = IT("SpecialMesh",PART)
  656. MSH.MeshType = "Wedge"
  657. end
  658. end
  659.  
  660. function CheckTableForString(Table, String)
  661. for i, v in pairs(Table) do
  662. if string.find(string.lower(String), string.lower(v)) then
  663. return true
  664. end
  665. end
  666. return false
  667. end
  668.  
  669. function CheckIntangible(Hit)
  670. local ProjectileNames = {"Water", "Arrow", "Projectile", "Effect", "Rail", "Lightning", "Bullet"}
  671. if Hit and Hit.Parent then
  672. if ((not Hit.CanCollide or CheckTableForString(ProjectileNames, Hit.Name)) and not Hit.Parent:FindFirstChild("Humanoid")) then
  673. return true
  674. end
  675. end
  676. return false
  677. end
  678.  
  679. Debris = game:GetService("Debris")
  680.  
  681. function CastZapRay(StartPos, Vec, Length, Ignore, DelayIfHit)
  682. local Direction = CFrame.new(StartPos, Vec).lookVector
  683. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  684. local RayHit, RayPos, RayNormal = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, Direction * Length), Ignore)
  685. if RayHit and CheckIntangible(RayHit) then
  686. if DelayIfHit then
  687. wait()
  688. end
  689. RayHit, RayPos, RayNormal = CastZapRay((RayPos + (Vec * 0.01)), Vec, (Length - ((StartPos - RayPos).magnitude)), Ignore, DelayIfHit)
  690. end
  691. return RayHit, RayPos, RayNormal
  692. end
  693.  
  694. function turnto(position)
  695. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  696. end
  697.  
  698. --//=================================\\
  699. --|| SPEECH
  700. --\\=================================//
  701.  
  702. function chatfunc(text,waitt)
  703. local chat = coroutine.wrap(function()
  704. if Character:FindFirstChild("TalkingBillBoard")~= nil then
  705. Character:FindFirstChild("TalkingBillBoard"):destroy()
  706. end
  707. local naeeym2 = Instance.new("BillboardGui",Character)
  708. naeeym2.Size = UDim2.new(0,100,0,40)
  709. naeeym2.StudsOffset = Vector3.new(0,5,0)
  710. naeeym2.Adornee = Character.Head
  711. naeeym2.Name = "TalkingBillBoard"
  712. naeeym2.AlwaysOnTop = true
  713. local tecks2 = Instance.new("TextLabel",naeeym2)
  714. tecks2.BackgroundTransparency = 1
  715. tecks2.BorderSizePixel = 0
  716. tecks2.Text = ""
  717. tecks2.Font = "SciFi"
  718. tecks2.TextSize = 30
  719. tecks2.TextStrokeTransparency = 1
  720. tecks2.TextColor3 = SKILLTEXTCOLOR
  721. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  722. tecks2.Size = UDim2.new(1,0,0.5,0)
  723. for i = 1,string.len(text),1 do
  724. tecks2.Text = string.sub(text,1,i)
  725. Swait()
  726. end
  727. wait(waitt)
  728. coroutine.resume(coroutine.create(function()
  729. for i = 1, 10 do
  730. tecks2.TextTransparency = tecks2.TextTransparency + 0.1
  731. Swait()
  732. end
  733. naeeym2:Destroy()
  734. end))
  735. end)
  736. chat()
  737. end
  738.  
  739. --//=================================\\
  740. --|| WEAPON CREATION
  741. --\\=================================//
  742.  
  743. for _, c in pairs(Weapon:GetChildren()) do
  744. if c.ClassName == "Part" then
  745. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  746. end
  747. end
  748.  
  749. Weapon.Parent = Character
  750.  
  751. Humanoid.Died:connect(function()
  752. ATTACK = true
  753. end)
  754.  
  755. local MANA = 0
  756. local MAXMANA = 600
  757.  
  758. print(Class_Name.." loaded.")
  759.  
  760. local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  761. local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.80, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  762. local SKILL3FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  763.  
  764. local MANABAR = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0),"Mana Bar")
  765. local MANACOVER = CreateFrame(MANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(0,0,0), C3(0, 0, 0),"Mana Cover")
  766. local MANATEXT = CreateLabel(MANABAR, "ENERGY ["..FLOOR(MANA).."]", C3(1, 1, 1), "Size32", "SciFi", 1, 2, 1, "Mana Text")
  767.  
  768. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Blood arrow", SKILLTEXTCOLOR, 6, "Legacy", 0, 2, 1, "Text 1")
  769. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Blood pillar", SKILLTEXTCOLOR, 6, "Legacy", 0, 2, 1, "Text 2")
  770. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[V] Violence", SKILLTEXTCOLOR, 6, "Legacy", 0, 2, 1, "Text 3")
  771. SKILL3TEXT.TextTransparency = 1
  772.  
  773. --//=================================\\
  774. --|| DAMAGE FUNCTIONS
  775. --\\=================================//
  776.  
  777. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  778. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  779. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  780. local BODYGYRO = IT("BodyGyro", STATPART)
  781. local BODYPOSITION = IT("BodyPosition", STATPART)
  782. BODYPOSITION.P = 2000
  783. BODYPOSITION.D = 100
  784. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  785. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  786. game:GetService("Debris"):AddItem(STATPART ,5)
  787. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  788. BILLBOARDGUI.Adornee = STATPART
  789. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  790. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  791. BILLBOARDGUI.AlwaysOnTop = false
  792. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  793. TEXTLABEL.BackgroundTransparency = 1
  794. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  795. TEXTLABEL.Text = TEXT
  796. TEXTLABEL.Font = "SciFi"
  797. TEXTLABEL.FontSize="Size42"
  798. TEXTLABEL.TextColor3 = COLOR
  799. TEXTLABEL.TextStrokeTransparency = 1
  800. TEXTLABEL.TextScaled = true
  801. TEXTLABEL.TextWrapped = true
  802. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  803. if LABELTYPE == "Normal" then
  804. for i = 1, 20 do
  805. STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
  806. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  807. end
  808. elseif LABELTYPE == "Debuff" then
  809. for i = 1, 20 do
  810. STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
  811. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  812. end
  813. elseif LABELTYPE == "Shock" then
  814. local ORIGIN = STATPART.Position
  815. for i = 1, 20 do
  816. STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
  817. TEXTLABEL.Transparency = TEXTLABEL.Transparency + (1/20)
  818. end
  819. end
  820. THEPART.Parent = nil
  821. end),STATPART, BODYPOSITION, TEXTLABEL)
  822. end
  823.  
  824.  
  825. --//=================================\\
  826. --|| DAMAGING
  827. --\\=================================//
  828.  
  829. function AddMana(amount)
  830. MANA = MANA + amount
  831. end
  832.  
  833. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping,DoesPoison)
  834. local dmg = math.random(min,max)
  835. for i,v in ipairs(workspace:GetChildren()) do
  836. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  837. local body = v:GetChildren()
  838. for part = 1, #body do
  839. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  840. if(body[part].Position - position).Magnitude < radius then
  841. if v.ClassName == "Model" then
  842. if v:FindFirstChild("Humanoid") then
  843. if v.Humanoid.Health ~= 0 then
  844. if CanBeDodgedByJumping == true then
  845. if body[part].Position.Y < position.Y+5 then
  846. if math.random(1,100) < critrate+1 then
  847. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  848. AddMana(dmg*critmultiplier)
  849. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  850. else
  851. v.Humanoid.Health = v.Humanoid.Health - dmg
  852. AddMana(dmg)
  853. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  854. end
  855. local defence = Instance.new("BoolValue",v)
  856. defence.Name = ("HitBy"..Player.Name)
  857. game:GetService("Debris"):AddItem(defence, 0.005)
  858. end
  859. else
  860. if beserk == true then
  861. v.Humanoid.Health = 0
  862. end
  863. if math.random(1,100) < critrate+1 then
  864. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  865. AddMana(dmg*critmultiplier)
  866. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  867. else
  868. v.Humanoid.Health = v.Humanoid.Health - dmg
  869. AddMana(dmg)
  870. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  871. end
  872. local defence = Instance.new("BoolValue",v)
  873. defence.Name = ("HitBy"..Player.Name)
  874. game:GetService("Debris"):AddItem(defence, 0.005)
  875. end
  876. end
  877. end
  878. end
  879. if DoesPoison == true then
  880. if v:FindFirstChildOfClass("Humanoid") then
  881. Poison(v:FindFirstChildOfClass("Humanoid"),MRANDOM(7,23)*2,1)
  882. end
  883. end
  884. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  885. end
  886. end
  887. end
  888. if v.ClassName == "Part" then
  889. if v.Anchored == false and (v.Position - position).Magnitude < radius then
  890. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  891. end
  892. end
  893. end
  894. end
  895. end
  896.  
  897. function Poison(HUMANOID,LAST,DAMAGE)
  898. if HUMANOID.Parent:FindFirstChild("PoisonedBy"..Player.Name) == nil then
  899. local defence = Instance.new("BoolValue",HUMANOID.Parent)
  900. defence.Name = ("PoisonedBy"..Player.Name)
  901. game:GetService("Debris"):AddItem(defence, LAST)
  902. coroutine.resume(coroutine.create(function()
  903. for i = 1, LAST/2 do
  904. if HUMANOID.Parent:FindFirstChild("Head") then
  905. StatLabel("Normal", HUMANOID.Parent.Head.CFrame * CF(0, 0 + (HUMANOID.Parent.Head.Size.z - 1), 0), "POISON/"..DAMAGE, C3(0,1,0))
  906. end
  907. Swait(2)
  908. AddMana(DAMAGE)
  909. HUMANOID.Health = HUMANOID.Health - DAMAGE
  910. end
  911. end))
  912. end
  913. end
  914.  
  915. --//=================================\\
  916. --|| ATTACK FUNCTIONS AND STUFF
  917. --\\=================================//
  918.  
  919. function clerp(a, b, t)
  920. return a:lerp(b, t)
  921. end
  922.  
  923. function newBezier(startpos, pos2, pos3, endpos, t)
  924. local A = clerp(startpos, pos2, t)
  925. local B = clerp(pos2, pos3, t)
  926. local C = clerp(pos3, endpos, t)
  927. local lerp1 = clerp(A, B, t)
  928. local lerp2 = clerp(B, C, t)
  929. local cubic = clerp(lerp1, lerp2, t)
  930. return cubic
  931. end
  932.  
  933. function BloodArrow(Target)
  934. ATTACK = true
  935. local newball = Instance.new("Part", workspace)
  936. newball.Anchored = true
  937. newball.Shape = "Ball"
  938. newball.Material = "Neon"
  939. newball.Size = Vector3.new(0,0,0)
  940. newball.CanCollide = false
  941. newball.CFrame = CF(Target)
  942. newball.BrickColor = BRICKC"Really red"
  943. newball.Transparency = 1
  944. local POS = Mouse.Hit.p
  945. local onefourth = Target:Lerp(POS, 0.25) + Vector3.new(0,0,0)
  946. local threefourths = Target:Lerp(POS, 0.75) + Vector3.new(0,0,0)
  947. local A1 = IT("Attachment",newball)
  948. A1.Position = Vector3.new(0, 0.5, 0)
  949. local A2 = IT("Attachment",newball)
  950. A2.Position = Vector3.new(0, -0.5, 0)
  951. local Trail = IT("Trail",newball)
  952. Trail.LightEmission = 1
  953. Trail.FaceCamera = true
  954. Trail.Texture = "rbxassetid://945758042"
  955. Trail.Attachment0 = A1
  956. Trail.Attachment1 = A2
  957. Trail.Lifetime = 2
  958. Trail.MinLength = 0
  959. Trail.Transparency = NumberSequence.new(0, 1)
  960. Trail.Color = ColorSequence.new(newball.Color)
  961. coroutine.resume(coroutine.create(function()
  962. for i = 0, 1, 0.07 do
  963. Swait()
  964. newball.CFrame = CFrame.new(newBezier(Target, onefourth, threefourths, POS, i))
  965. end
  966. newball.Transparency = 1
  967. CreateSound("514867425", newball, 3, 1)
  968. AoEDamage(newball.Position,5,15,25,5,false,2,2,false,false)
  969. MagicSphere(VT(22,22,22),55,newball.CFrame,"Really red",VT(0.2,0.2,0.2))
  970. MagicSphere(VT(20,20,20),55,newball.CFrame,"Pearl",VT(0.2,0.2,0.2))
  971. game:GetService("Debris"):AddItem(newball, 5)
  972. end))
  973. ATTACK = false
  974. end
  975.  
  976. function BloodPillar()
  977. ATTACK = true
  978. coroutine.resume(coroutine.create(function()
  979. local CFRAME = CF(Mouse.Hit.p)
  980. MagicSphere(VT(15,6500,15),55,CF(Mouse.Hit.p),"Really red",VT(-15/55,0,-15/55))
  981. MagicSphere(VT(14,6500,14),55,CF(Mouse.Hit.p),"Pearl",VT(-14/55,0,-14/55))
  982. Swait(55)
  983. AoEDamage(Mouse.Hit.p,5,15,25,5,false,2,2,false,false)
  984. local aaaa = MagicSphere(VT(22,22,22),55,CFRAME,"Really red",VT(0.2,0.2,0.2))
  985. MagicSphere(VT(20,20,20),55,CFRAME,"Pearl",VT(0.2,0.2,0.2))
  986. CreateSound("514867425", aaaa, 3, 1)
  987. end))
  988. ATTACK = false
  989. end
  990.  
  991. function Violence()
  992. ATTACK = true
  993. coroutine.resume(coroutine.create(function()
  994. local CFRAME = CF(Mouse.Hit.p)
  995. MagicSphere(VT(35,6500,35),155,CF(Mouse.Hit.p),"Really red",VT(-35/155,0,-35/155))
  996. MagicSphere(VT(34,6500,34),155,CF(Mouse.Hit.p),"Pearl",VT(-34/155,0,-34/155))
  997. Swait(155)
  998. AoEDamage(Mouse.Hit.p,65,1500,2500,45,false,2,2,false,false)
  999. local aaaa = MagicSphere(VT(62,62,62),155,CFRAME,"Really red",VT(2,2,2))
  1000. MagicSphere(VT(60,60,60),155,CFRAME,"Pearl",VT(2,2,2))
  1001. CreateSound("514867425", aaaa, 16, 0.85)
  1002. MANA = 0
  1003. end))
  1004. ATTACK = false
  1005. end
  1006.  
  1007. --//=================================\\
  1008. --|| ASSIGN THINGS TO KEYS
  1009. --\\=================================//
  1010.  
  1011. function MouseDown(Mouse)
  1012. if ATTACK == false then
  1013. end
  1014. end
  1015.  
  1016. function MouseUp(Mouse)
  1017. HOLD = false
  1018. end
  1019.  
  1020. function KeyDown(Key)
  1021. KEYHOLD = true
  1022. if Key == "z" and ATTACK == false then
  1023. BloodArrow(Torso.CFrame*CF(0,1,0).p)
  1024. end
  1025.  
  1026. if Key == "b" and ATTACK == false then
  1027. BloodPillar()
  1028. end
  1029.  
  1030. if Key == "v" and ATTACK == false and MANA >= MAXMANA then
  1031. Violence()
  1032. end
  1033. end
  1034.  
  1035. function KeyUp(Key)
  1036. KEYHOLD = false
  1037. end
  1038.  
  1039. Mouse.Button1Down:connect(function(NEWKEY)
  1040. MouseDown(NEWKEY)
  1041. end)
  1042. Mouse.Button1Up:connect(function(NEWKEY)
  1043. MouseUp(NEWKEY)
  1044. end)
  1045. Mouse.KeyDown:connect(function(NEWKEY)
  1046. KeyDown(NEWKEY)
  1047. end)
  1048. Mouse.KeyUp:connect(function(NEWKEY)
  1049. KeyUp(NEWKEY)
  1050. end)
  1051.  
  1052. --//=================================\\
  1053. --\\=================================//
  1054.  
  1055.  
  1056. function unanchor()
  1057. if UNANCHOR == true then
  1058. g = Character:GetChildren()
  1059. for i = 1, #g do
  1060. if g[i].ClassName == "Part" then
  1061. g[i].Anchored = false
  1062. end
  1063. end
  1064. end
  1065. end
  1066.  
  1067.  
  1068. --//=================================\\
  1069. --|| WRAP THE WHOLE SCRIPT UP
  1070. --\\=================================//
  1071.  
  1072. Humanoid.Changed:connect(function(Jump)
  1073. if Jump == "Jump" and (Disable_Jump == true) then
  1074. Humanoid.Jump = false
  1075. end
  1076. end)
  1077.  
  1078. while true do
  1079. Swait()
  1080. ANIMATE.Parent = nil
  1081. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  1082. IDLEANIMATION:Play()
  1083. SINE = SINE + CHANGE
  1084. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1085. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1086. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  1087. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  1088. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1089. if TORSOVELOCITY < 1 then
  1090. ANIM = "Idle"
  1091. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.3 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1092. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1093. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1094. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1095. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1096. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1097. elseif TORSOVELOCITY > 1 then
  1098. ANIM = "Walk"
  1099. WALK = WALK + 1 / Animation_Speed
  1100. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  1101. WALK = 0
  1102. if WALKINGANIM == true then
  1103. WALKINGANIM = false
  1104. elseif WALKINGANIM == false then
  1105. WALKINGANIM = true
  1106. end
  1107. end
  1108. --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1109. --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1110. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0.3 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1111. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-7.5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1112. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1113. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1114. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1115. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1116. end
  1117. if #Effects2>0 then
  1118. for e=1,#Effects2 do
  1119. if Effects2[e]~=nil then
  1120. local Thing=Effects2[e]
  1121. if Thing~=nil then
  1122. local Part=Thing[1]
  1123. local Mode=Thing[2]
  1124. local Delay=Thing[3]
  1125. local IncX=Thing[4]
  1126. local IncY=Thing[5]
  1127. local IncZ=Thing[6]
  1128. local Part2=Thing[8]
  1129. if Thing[1].Transparency<=1 then
  1130. if Thing[2]=="Block1" then
  1131. Thing[1].CFrame=Thing[1].CFrame
  1132. Mesh=Thing[1].Mesh
  1133. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1134. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1135. elseif Thing[2]=="Cylinder" then
  1136. Mesh=Thing[1].Mesh
  1137. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1138. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1139. elseif Thing[2]=="Blood" then
  1140. Mesh=Thing[7]
  1141. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1142. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1143. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1144. elseif Thing[2]=="Elec" then
  1145. Mesh=Thing[1].Mesh
  1146. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1147. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1148. elseif Thing[2]=="Disappear" then
  1149. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1150. end
  1151. else
  1152. Part.Parent=nil
  1153. table.remove(Effects2,e)
  1154. end
  1155. end
  1156. end
  1157. end
  1158. end
  1159. unanchor()
  1160. Humanoid.MaxHealth = "inf"
  1161. Humanoid.Health = "inf"
  1162. if Rooted == false then
  1163. Disable_Jump = false
  1164. Humanoid.WalkSpeed = Speed
  1165. elseif Rooted == true then
  1166. Disable_Jump = true
  1167. Humanoid.WalkSpeed = 0
  1168. end
  1169. if Head:FindFirstChild("face") then
  1170. Head.face:remove()
  1171. end
  1172. if Head:FindFirstChildOfClass("Sound") then
  1173. Head:FindFirstChildOfClass("Sound"):remove()
  1174. end
  1175. MANACOVER:TweenSize(UD2(1 * (MANA / MAXMANA), 0, 1, 0), "Out", "Quad", 0.1, 0.1)
  1176. MANATEXT.Text = "ENERGY ["..FLOOR(MANA).."]"
  1177. if MANA >= MAXMANA then
  1178. MANACOVER.Transparency = 1
  1179. SKILL3TEXT.TextTransparency = 0
  1180. else
  1181. MANACOVER.Transparency = 0
  1182. SKILL3TEXT.TextTransparency = 1
  1183. end
  1184. end
  1185.  
  1186. --//=================================\\
  1187. --\\=================================//
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193. --//====================================================\\--
  1194. --|| END OF SCRIPT
  1195. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement