Advertisement
sawgamer1

Untitled

Nov 13th, 2018
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 117.47 KB | None | 0 0
  1. -- This script has been converted to FE by iPxter
  2.  
  3.  
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  6. do
  7. print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  8. script.Parent = Player.Character
  9.  
  10. --RemoteEvent for communicating
  11. local Event = Instance.new("RemoteEvent")
  12. Event.Name = "UserInput_Event"
  13.  
  14. --Fake event to make stuff like Mouse.KeyDown work
  15. local function fakeEvent()
  16. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  17. t.connect = t.Connect
  18. return t
  19. end
  20.  
  21. --Creating fake input objects with fake variables
  22. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  23. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  24. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  25. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  26. end}
  27. --Merged 2 functions into one by checking amount of arguments
  28. CAS.UnbindAction = CAS.BindAction
  29.  
  30. --This function will trigger the events that have been :Connect()'ed
  31. local function te(self,ev,...)
  32. local t = m[ev]
  33. if t and t._fakeEvent and t.Function then
  34. t.Function(...)
  35. end
  36. end
  37. m.TrigEvent = te
  38. UIS.TrigEvent = te
  39.  
  40. Event.OnServerEvent:Connect(function(plr,io)
  41. if plr~=Player then return end
  42. if io.isMouse then
  43. m.Target = io.Target
  44. m.Hit = io.Hit
  45. else
  46. local b = io.UserInputState == Enum.UserInputState.Begin
  47. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  48. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  49. end
  50. for _,t in pairs(CAS.Actions) do
  51. for _,k in pairs(t.Keys) do
  52. if k==io.KeyCode then
  53. t.Function(t.Name,io.UserInputState,io)
  54. end
  55. end
  56. end
  57. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  58. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  59. end
  60. end)
  61. Event.Parent = NLS([==[
  62. local Player = owner
  63. local Event = script:WaitForChild("UserInput_Event")
  64.  
  65. local UIS = game:GetService("UserInputService")
  66. local input = function(io,a)
  67. if a then return end
  68. --Since InputObject is a client-side instance, we create and pass table instead
  69. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  70. end
  71. UIS.InputBegan:Connect(input)
  72. UIS.InputEnded:Connect(input)
  73.  
  74. local Mouse = Player:GetMouse()
  75. local h,t
  76. --Give the server mouse data 30 times every second, but only if the values changed
  77. --If player is not moving their mouse, client won't fire events
  78. while wait(1/30) do
  79. if h~=Mouse.Hit or t~=Mouse.Target then
  80. h,t=Mouse.Hit,Mouse.Target
  81. Event:FireServer({isMouse=true,Target=t,Hit=h})
  82. end
  83. end]==],Player.Character)
  84. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  85. end
  86.  
  87.  
  88. Player = owner
  89. Character = Player.Character
  90. local txt = Instance.new("BillboardGui", Character)
  91. txt.Adornee = Character.Head
  92. txt.Name = "_status"
  93. txt.Size = UDim2.new(2, 0, 1.2, 0)
  94. txt.StudsOffset = Vector3.new(-9, 8, 0)
  95. local text = Instance.new("TextLabel", txt)
  96. text.Size = UDim2.new(10, 0, 7, 0)
  97. text.FontSize = "Size24"
  98. text.TextScaled = true
  99. text.TextTransparency = 0
  100. text.BackgroundTransparency = 1
  101. text.TextTransparency = 0
  102. text.TextStrokeTransparency = 0
  103. text.Font = "Antique"
  104. text.TextStrokeColor3 = Color3.new(196, 40, 28)
  105. text.Text = "The Corrupted Doctor"
  106. script.Name = "The Corrupted Doctor"
  107. --//====================================================\\--
  108. --|| CREATED BY SHACKLUSTER-EDITED BY PROMLG112
  109. --\\====================================================//--
  110. local chara = Character
  111.  
  112. function chat(...)
  113. local txxt = {...}
  114. local ch = coroutine.wrap(function()
  115. if chara:FindFirstChild("Chatt")~= nil then
  116. Character:FindFirstChild("Chatt"):destroy()
  117. end
  118. local txt = Instance.new("BillboardGui", chara)
  119. txt.Adornee = chara.Head
  120. txt.Name = "Chatt"
  121. txt.Size = UDim2.new(2, 0, 1.2, 0)
  122. txt.StudsOffset = Vector3.new(-9, 7, 0)
  123. local text = Instance.new("TextLabel", txt)
  124. text.Size = UDim2.new(10, 0, 7, 0)
  125. text.TextSize = 32
  126. text.Font = Enum.Font.Antique
  127. text.TextScaled = false
  128. text.BackgroundTransparency = 1
  129. text.TextColor3 = Color3.new(0,0,0)
  130. text.TextStrokeTransparency = 0
  131. text.TextStrokeColor3 = Color3.new(0/0, 0/0, 0/0)
  132. text.Text = ""
  133. txxt = table.concat(txxt,"\t")
  134. for i = 1, #txxt do
  135. text.Text = txxt:sub(1,i)
  136.  
  137. end
  138. wait(2)
  139. for trans = 0,1,00.1 do
  140. text.TextTransparency = trans
  141. text.TextStrokeTransparency = trans
  142. wait()
  143. end
  144. wait()
  145. txt:destroy()
  146. end)
  147.  
  148. ch(...)
  149. end
  150. Player.Chatted:connect(chat)
  151.  
  152. wait(0.2)
  153.  
  154. Player = owner
  155. PlayerGui = Player.PlayerGui
  156. Cam = workspace.CurrentCamera
  157. Backpack = Player.Backpack
  158. Character = Player.Character
  159. Humanoid = Character.Humanoid
  160. Mouse = Player:GetMouse()
  161. RootPart = Character["HumanoidRootPart"]
  162. Torso = Character["Torso"]
  163. Head = Character["Head"]
  164. RightArm = Character["Right Arm"]
  165. LeftArm = Character["Left Arm"]
  166. RightLeg = Character["Right Leg"]
  167. LeftLeg = Character["Left Leg"]
  168. RootJoint = RootPart["RootJoint"]
  169. Neck = Torso["Neck"]
  170. RightShoulder = Torso["Right Shoulder"]
  171. LeftShoulder = Torso["Left Shoulder"]
  172. RightHip = Torso["Right Hip"]
  173. LeftHip = Torso["Left Hip"]
  174.  
  175. for i,v in pairs(Character:GetChildren()) do
  176. if v.ClassName == "Shirt" or v.ClassName == "Pants" or v.ClassName == "CharacterMesh" then
  177. v:Destroy()
  178. end
  179. end
  180.  
  181. for i,v in pairs(Character:GetChildren()) do
  182. if v.ClassName == "Accessory" or v.ClassName == "Hat" then
  183. v:Destroy()
  184. end
  185. end
  186.  
  187. local Shirt = Instance.new("Shirt",Character)
  188. local Pants = Instance.new("Pants",Character)
  189. Shirt.ShirtTemplate = "rbxassetid://648758131"
  190. Pants.PantsTemplate = "rbxassetid://472675863"
  191.  
  192. local sick = Instance.new("Sound",Character)
  193. sick.SoundId = "rbxassetid://561833161"
  194. sick.Looped = true
  195. sick.Pitch = 1
  196. sick.Volume = 1.3
  197. sick:Play()
  198.  
  199. IT = Instance.new
  200. CF = CFrame.new
  201. VT = Vector3.new
  202. RAD = math.rad
  203. C3 = Color3.new
  204. UD2 = UDim2.new
  205. BRICKC = BrickColor.new
  206. ANGLES = CFrame.Angles
  207. EULER = CFrame.fromEulerAnglesXYZ
  208. COS = math.cos
  209. ACOS = math.acos
  210. SIN = math.sin
  211. ASIN = math.asin
  212. ABS = math.abs
  213. MRANDOM = math.random
  214. FLOOR = math.floor
  215. local CLOAKED = false
  216. local KILLINSTINCT = 0
  217. --//=================================\\
  218. --|| SOME OTHER STUFF
  219. --\\=================================//
  220. Humanoid.Name = "God Mode"
  221.  
  222. --//=================================\\
  223. --|| CUSTOMIZATION
  224. --\\=================================//
  225.  
  226. Player_Size = 1 --Size of the player.
  227. Animation_Speed = 3
  228. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  229.  
  230. local Speed = 16
  231. local Effects2 = {}
  232.  
  233. --//=================================\\
  234. --|| END OF CUSTOMIZATION
  235. --\\=================================//
  236.  
  237. local function weldBetween(a, b)
  238. local weldd = Instance.new("ManualWeld")
  239. weldd.Part0 = a
  240. weldd.Part1 = b
  241. weldd.C0 = CFrame.new()
  242. weldd.C1 = b.CFrame:inverse() * a.CFrame
  243. weldd.Parent = a
  244. return weldd
  245. end
  246. --//=================================\\
  247. --|| USEFUL VALUES
  248. --\\=================================//
  249.  
  250. Animation_Speed = 3
  251. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  252. local Speed = 16
  253. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  254. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  255. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  256. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  257. local DAMAGEMULTIPLIER = 1
  258. local ANIM = "Idle"
  259. local ATTACK = false
  260. local EQUIPPED = false
  261. local HOLD = false
  262. local CLOCKTARGET = nil
  263. local CLOCKSPEED = 2.5
  264. local CLOCKLOOP = 0
  265. local COMBO = 1
  266. local Rooted = false
  267. local SINE = 0
  268. local KEYHOLD = false
  269. local CHANGE = 2 / Animation_Speed
  270. local WALKINGANIM = false
  271. local VALUE1 = false
  272. local VALUE2 = false
  273. local ROBLOXIDLEANIMATION = IT("Animation")
  274. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  275. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  276. --ROBLOXIDLEANIMATION.Parent = Humanoid
  277. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  278. WEAPONGUI.Name = "Weapon GUI"
  279. local Weapon = IT("Model")
  280. Weapon.Name = "Adds"
  281. local Effects = IT("Folder", Weapon)
  282. Effects.Name = "Effects"
  283. local ANIMATOR = Humanoid.Animator
  284. local ANIMATE = Character.Animate
  285. local UNANCHOR = true
  286. local ENERGYSOUND = 1417051162
  287. local BEAMSOUND = 1417056781
  288. local EXPLOSIONSOUND = 1417056081
  289.  
  290. --//=================================\\
  291. --\\=================================//
  292.  
  293. local asd = Instance.new("ParticleEmitter")
  294. asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
  295. asd.LightEmission = .1
  296. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  297. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
  298. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  299. asd.Transparency = bbb
  300. asd.Size = aaa
  301. asd.ZOffset = .9
  302. asd.Acceleration = Vector3.new(0, -15, 0)
  303. asd.LockedToPart = false
  304. asd.EmissionDirection = "Back"
  305. asd.Lifetime = NumberRange.new(1, 2)
  306. asd.Rotation = NumberRange.new(-100, 100)
  307. asd.RotSpeed = NumberRange.new(-100, 100)
  308. asd.Speed = NumberRange.new(10)
  309. asd.Enabled = false
  310. asd.VelocitySpread = 999
  311.  
  312. function getbloody(victim,amount)
  313. local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  314. PART.CFrame = victim.CFrame
  315. local HITPLAYERSOUNDS = {"356551938","264486467"}
  316. Debris:AddItem(PART,5)
  317. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  318. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  319. CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  320. local prtcl = asd:Clone()
  321. prtcl.Parent = PART
  322. prtcl:Emit(amount*10)
  323. end
  324.  
  325. --//=================================\\
  326. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  327. --\\=================================//
  328.  
  329. ArtificialHB = Instance.new("BindableEvent", script)
  330. ArtificialHB.Name = "ArtificialHB"
  331.  
  332. script:WaitForChild("ArtificialHB")
  333.  
  334. frame = Frame_Speed
  335. tf = 0
  336. allowframeloss = false
  337. tossremainder = false
  338. lastframe = tick()
  339. script.ArtificialHB:Fire()
  340.  
  341. game:GetService("RunService").Heartbeat:connect(function(s, p)
  342. tf = tf + s
  343. if tf >= frame then
  344. if allowframeloss then
  345. script.ArtificialHB:Fire()
  346. lastframe = tick()
  347. else
  348. for i = 1, math.floor(tf / frame) do
  349. script.ArtificialHB:Fire()
  350. end
  351. lastframe = tick()
  352. end
  353. if tossremainder then
  354. tf = 0
  355. else
  356. tf = tf - frame * math.floor(tf / frame)
  357. end
  358. end
  359. end)
  360.  
  361. --//=================================\\
  362. --\\=================================//
  363. Humanoid.Name = "God Mode"
  364.  
  365. local l = game.Lighting
  366. local sky = Instance.new("Sky",l)
  367. l.TimeOfDay = "00:00:00"
  368. l.Brightness = 1
  369. l.Ambient = Color3.new(0.25, 0.5, 0.75)
  370. ---
  371.  
  372.  
  373.  
  374. --//=================================\\
  375. --|| SOME FUNCTIONS
  376. --\\=================================//
  377. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  378. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  379. end
  380.  
  381. function PositiveAngle(NUMBER)
  382. if NUMBER >= 0 then
  383. NUMBER = 0
  384. end
  385. return NUMBER
  386. end
  387.  
  388. function NegativeAngle(NUMBER)
  389. if NUMBER <= 0 then
  390. NUMBER = 0
  391. end
  392. return NUMBER
  393. end
  394.  
  395. function Swait(NUMBER)
  396. if NUMBER == 0 or NUMBER == nil then
  397. ArtificialHB.Event:wait()
  398. else
  399. for i = 1, NUMBER do
  400. ArtificialHB.Event:wait()
  401. end
  402. end
  403. end
  404.  
  405. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  406. local NEWMESH = IT(MESH)
  407. if MESH == "SpecialMesh" then
  408. NEWMESH.MeshType = MESHTYPE
  409. if MESHID ~= "nil" and MESHID ~= "" then
  410. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  411. end
  412. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  413. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  414. end
  415. end
  416. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  417. NEWMESH.Scale = SCALE
  418. NEWMESH.Parent = PARENT
  419. return NEWMESH
  420. end
  421.  
  422. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  423. local NEWPART = IT("Part")
  424. NEWPART.formFactor = FORMFACTOR
  425. NEWPART.Reflectance = REFLECTANCE
  426. NEWPART.Transparency = TRANSPARENCY
  427. NEWPART.CanCollide = false
  428. NEWPART.Locked = true
  429. NEWPART.Anchored = true
  430. if ANCHOR == false then
  431. NEWPART.Anchored = false
  432. end
  433. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  434. NEWPART.Name = NAME
  435. NEWPART.Size = SIZE
  436. NEWPART.Position = Torso.Position
  437. NEWPART.Material = MATERIAL
  438. NEWPART:BreakJoints()
  439. NEWPART.Parent = PARENT
  440. return NEWPART
  441. end
  442.  
  443. local function weldBetween(a, b)
  444. local weldd = Instance.new("ManualWeld")
  445. weldd.Part0 = a
  446. weldd.Part1 = b
  447. weldd.C0 = CFrame.new()
  448. weldd.C1 = b.CFrame:inverse() * a.CFrame
  449. weldd.Parent = a
  450. return weldd
  451. end
  452.  
  453.  
  454. function QuaternionFromCFrame(cf)
  455. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  456. local trace = m00 + m11 + m22
  457. if trace > 0 then
  458. local s = math.sqrt(1 + trace)
  459. local recip = 0.5 / s
  460. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  461. else
  462. local i = 0
  463. if m11 > m00 then
  464. i = 1
  465. end
  466. if m22 > (i == 0 and m00 or m11) then
  467. i = 2
  468. end
  469. if i == 0 then
  470. local s = math.sqrt(m00 - m11 - m22 + 1)
  471. local recip = 0.5 / s
  472. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  473. elseif i == 1 then
  474. local s = math.sqrt(m11 - m22 - m00 + 1)
  475. local recip = 0.5 / s
  476. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  477. elseif i == 2 then
  478. local s = math.sqrt(m22 - m00 - m11 + 1)
  479. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  480. end
  481. end
  482. end
  483.  
  484. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  485. local xs, ys, zs = x + x, y + y, z + z
  486. local wx, wy, wz = w * xs, w * ys, w * zs
  487. local xx = x * xs
  488. local xy = x * ys
  489. local xz = x * zs
  490. local yy = y * ys
  491. local yz = y * zs
  492. local zz = z * zs
  493. 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))
  494. end
  495.  
  496. function QuaternionSlerp(a, b, t)
  497. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  498. local startInterp, finishInterp;
  499. if cosTheta >= 0.0001 then
  500. if (1 - cosTheta) > 0.0001 then
  501. local theta = ACOS(cosTheta)
  502. local invSinTheta = 1 / SIN(theta)
  503. startInterp = SIN((1 - t) * theta) * invSinTheta
  504. finishInterp = SIN(t * theta) * invSinTheta
  505. else
  506. startInterp = 1 - t
  507. finishInterp = t
  508. end
  509. else
  510. if (1 + cosTheta) > 0.0001 then
  511. local theta = ACOS(-cosTheta)
  512. local invSinTheta = 1 / SIN(theta)
  513. startInterp = SIN((t - 1) * theta) * invSinTheta
  514. finishInterp = SIN(t * theta) * invSinTheta
  515. else
  516. startInterp = t - 1
  517. finishInterp = t
  518. end
  519. end
  520. 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
  521. end
  522.  
  523. function Clerp(a, b, t)
  524. local qa = {QuaternionFromCFrame(a)}
  525. local qb = {QuaternionFromCFrame(b)}
  526. local ax, ay, az = a.x, a.y, a.z
  527. local bx, by, bz = b.x, b.y, b.z
  528. local _t = 1 - t
  529. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  530. end
  531.  
  532. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  533. local frame = IT("Frame")
  534. frame.BackgroundTransparency = TRANSPARENCY
  535. frame.BorderSizePixel = BORDERSIZEPIXEL
  536. frame.Position = POSITION
  537. frame.Size = SIZE
  538. frame.BackgroundColor3 = COLOR
  539. frame.BorderColor3 = BORDERCOLOR
  540. frame.Name = NAME
  541. frame.Parent = PARENT
  542. return frame
  543. end
  544.  
  545. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  546. local label = IT("TextLabel")
  547. label.BackgroundTransparency = 1
  548. label.Size = UD2(1, 0, 1, 0)
  549. label.Position = UD2(0, 0, 0, 0)
  550. label.TextColor3 = TEXTCOLOR
  551. label.TextStrokeTransparency = STROKETRANSPARENCY
  552. label.TextTransparency = TRANSPARENCY
  553. label.FontSize = TEXTFONTSIZE
  554. label.Font = TEXTFONT
  555. label.BorderSizePixel = BORDERSIZEPIXEL
  556. label.TextStrokeColor3 = C3(1,1,1)
  557. label.TextScaled = false
  558. label.Text = TEXT
  559. label.Name = NAME
  560. label.Parent = PARENT
  561. return label
  562. end
  563.  
  564. function NoOutlines(PART)
  565. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  566. end
  567.  
  568. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  569. local NEWWELD = IT(TYPE)
  570. NEWWELD.Part0 = PART0
  571. NEWWELD.Part1 = PART1
  572. NEWWELD.C0 = C0
  573. NEWWELD.C1 = C1
  574. NEWWELD.Parent = PARENT
  575. return NEWWELD
  576. end
  577.  
  578. local S = IT("Sound")
  579. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  580. local NEWSOUND = nil
  581. coroutine.resume(coroutine.create(function()
  582. NEWSOUND = S:Clone()
  583. NEWSOUND.Parent = PARENT
  584. NEWSOUND.Volume = VOLUME
  585. NEWSOUND.Pitch = PITCH
  586. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  587. NEWSOUND:play()
  588. if DOESLOOP == true then
  589. NEWSOUND.Looped = true
  590. else
  591. repeat wait(1) until NEWSOUND.Playing == false
  592. NEWSOUND:remove()
  593. end
  594. end))
  595. return NEWSOUND
  596. end
  597.  
  598. function CFrameFromTopBack(at, top, back)
  599. local right = top:Cross(back)
  600. 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)
  601. end
  602.  
  603. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  604. function WACKYEFFECT(Table)
  605. local TYPE = (Table.EffectType or "Sphere")
  606. local SIZE = (Table.Size or VT(1,1,1))
  607. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  608. local TRANSPARENCY = (Table.Transparency or 0)
  609. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  610. local CFRAME = (Table.CFrame or Torso.CFrame)
  611. local MOVEDIRECTION = (Table.MoveToPos or nil)
  612. local ROTATION1 = (Table.RotationX or 0)
  613. local ROTATION2 = (Table.RotationY or 0)
  614. local ROTATION3 = (Table.RotationZ or 0)
  615. local MATERIAL = (Table.Material or "Neon")
  616. local COLOR = (Table.Color or C3(1,1,1))
  617. local TIME = (Table.Time or 45)
  618. local SOUNDID = (Table.SoundID or nil)
  619. local SOUNDPITCH = (Table.SoundPitch or nil)
  620. local SOUNDVOLUME = (Table.SoundVolume or nil)
  621. coroutine.resume(coroutine.create(function()
  622. local PLAYSSOUND = false
  623. local SOUND = nil
  624. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  625. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  626. PLAYSSOUND = true
  627. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  628. end
  629. EFFECT.Color = COLOR
  630. local MSH = nil
  631. if TYPE == "Sphere" then
  632. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  633. elseif TYPE == "Block" then
  634. MSH = IT("BlockMesh",EFFECT)
  635. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  636. elseif TYPE == "Wave" then
  637. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  638. elseif TYPE == "Ring" then
  639. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  640. elseif TYPE == "Slash" then
  641. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  642. elseif TYPE == "Round Slash" then
  643. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  644. elseif TYPE == "Swirl" then
  645. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  646. elseif TYPE == "Skull" then
  647. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  648. elseif TYPE == "Crystal" then
  649. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  650. end
  651. if MSH ~= nil then
  652. local MOVESPEED = nil
  653. if MOVEDIRECTION ~= nil then
  654. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  655. end
  656. local GROWTH = SIZE - ENDSIZE
  657. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  658. if TYPE == "Block" then
  659. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  660. else
  661. EFFECT.CFrame = CFRAME
  662. end
  663. for LOOP = 1, TIME+1 do
  664. Swait()
  665. MSH.Scale = MSH.Scale - GROWTH/TIME
  666. if TYPE == "Wave" then
  667. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  668. end
  669. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  670. if TYPE == "Block" then
  671. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  672. else
  673. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  674. end
  675. if MOVEDIRECTION ~= nil then
  676. local ORI = EFFECT.Orientation
  677. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  678. EFFECT.Orientation = ORI
  679. end
  680. end
  681. if PLAYSSOUND == false then
  682. EFFECT:remove()
  683. else
  684. repeat Swait() until SOUND.Playing == false
  685. EFFECT:remove()
  686. end
  687. else
  688. if PLAYSSOUND == false then
  689. EFFECT:remove()
  690. else
  691. repeat Swait() until SOUND.Playing == false
  692. EFFECT:remove()
  693. end
  694. end
  695. end))
  696. end
  697.  
  698. function MakeForm(PART,TYPE)
  699. if TYPE == "Cyl" then
  700. local MSH = IT("CylinderMesh",PART)
  701. elseif TYPE == "Ball" then
  702. local MSH = IT("SpecialMesh",PART)
  703. MSH.MeshType = "Sphere"
  704. elseif TYPE == "Wedge" then
  705. local MSH = IT("SpecialMesh",PART)
  706. MSH.MeshType = "Wedge"
  707. end
  708. end
  709.  
  710. Debris = game:GetService("Debris")
  711.  
  712. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  713. local DIRECTION = CF(StartPos,EndPos).lookVector
  714. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  715. end
  716.  
  717. function turnto(position)
  718. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  719. end
  720.  
  721. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  722. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  723. end
  724.  
  725. function PositiveAngle(NUMBER)
  726. if NUMBER >= 0 then
  727. NUMBER = 0
  728. end
  729. return NUMBER
  730. end
  731.  
  732. function NegativeAngle(NUMBER)
  733. if NUMBER <= 0 then
  734. NUMBER = 0
  735. end
  736. return NUMBER
  737. end
  738.  
  739. function Swait(NUMBER)
  740. if NUMBER == 0 or NUMBER == nil then
  741. ArtificialHB.Event:wait()
  742. else
  743. for i = 1, NUMBER do
  744. ArtificialHB.Event:wait()
  745. end
  746. end
  747. end
  748.  
  749. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  750. local NEWMESH = IT(MESH)
  751. if MESH == "SpecialMesh" then
  752. NEWMESH.MeshType = MESHTYPE
  753. if MESHID ~= "nil" and MESHID ~= "" then
  754. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  755. end
  756. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  757. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  758. end
  759. end
  760. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  761. NEWMESH.Scale = SCALE
  762. NEWMESH.Parent = PARENT
  763. return NEWMESH
  764. end
  765.  
  766. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  767. local NEWPART = IT("Part")
  768. NEWPART.formFactor = FORMFACTOR
  769. NEWPART.Reflectance = REFLECTANCE
  770. NEWPART.Transparency = TRANSPARENCY
  771. NEWPART.CanCollide = false
  772. NEWPART.Locked = true
  773. NEWPART.Anchored = true
  774. if ANCHOR == false then
  775. NEWPART.Anchored = false
  776. end
  777. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  778. NEWPART.Name = NAME
  779. NEWPART.Size = SIZE
  780. NEWPART.Position = Torso.Position
  781. NEWPART.Material = MATERIAL
  782. NEWPART:BreakJoints()
  783. NEWPART.Parent = PARENT
  784. return NEWPART
  785. end
  786.  
  787. local function weldBetween(a, b)
  788. local weldd = Instance.new("ManualWeld")
  789. weldd.Part0 = a
  790. weldd.Part1 = b
  791. weldd.C0 = CFrame.new()
  792. weldd.C1 = b.CFrame:inverse() * a.CFrame
  793. weldd.Parent = a
  794. return weldd
  795. end
  796.  
  797.  
  798. function QuaternionFromCFrame(cf)
  799. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  800. local trace = m00 + m11 + m22
  801. if trace > 0 then
  802. local s = math.sqrt(1 + trace)
  803. local recip = 0.5 / s
  804. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  805. else
  806. local i = 0
  807. if m11 > m00 then
  808. i = 1
  809. end
  810. if m22 > (i == 0 and m00 or m11) then
  811. i = 2
  812. end
  813. if i == 0 then
  814. local s = math.sqrt(m00 - m11 - m22 + 1)
  815. local recip = 0.5 / s
  816. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  817. elseif i == 1 then
  818. local s = math.sqrt(m11 - m22 - m00 + 1)
  819. local recip = 0.5 / s
  820. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  821. elseif i == 2 then
  822. local s = math.sqrt(m22 - m00 - m11 + 1)
  823. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  824. end
  825. end
  826. end
  827.  
  828. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  829. local xs, ys, zs = x + x, y + y, z + z
  830. local wx, wy, wz = w * xs, w * ys, w * zs
  831. local xx = x * xs
  832. local xy = x * ys
  833. local xz = x * zs
  834. local yy = y * ys
  835. local yz = y * zs
  836. local zz = z * zs
  837. 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))
  838. end
  839.  
  840. function QuaternionSlerp(a, b, t)
  841. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  842. local startInterp, finishInterp;
  843. if cosTheta >= 0.0001 then
  844. if (1 - cosTheta) > 0.0001 then
  845. local theta = ACOS(cosTheta)
  846. local invSinTheta = 1 / SIN(theta)
  847. startInterp = SIN((1 - t) * theta) * invSinTheta
  848. finishInterp = SIN(t * theta) * invSinTheta
  849. else
  850. startInterp = 1 - t
  851. finishInterp = t
  852. end
  853. else
  854. if (1 + cosTheta) > 0.0001 then
  855. local theta = ACOS(-cosTheta)
  856. local invSinTheta = 1 / SIN(theta)
  857. startInterp = SIN((t - 1) * theta) * invSinTheta
  858. finishInterp = SIN(t * theta) * invSinTheta
  859. else
  860. startInterp = t - 1
  861. finishInterp = t
  862. end
  863. end
  864. 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
  865. end
  866.  
  867. function Clerp(a, b, t)
  868. local qa = {QuaternionFromCFrame(a)}
  869. local qb = {QuaternionFromCFrame(b)}
  870. local ax, ay, az = a.x, a.y, a.z
  871. local bx, by, bz = b.x, b.y, b.z
  872. local _t = 1 - t
  873. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  874. end
  875.  
  876. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  877. local frame = IT("Frame")
  878. frame.BackgroundTransparency = TRANSPARENCY
  879. frame.BorderSizePixel = BORDERSIZEPIXEL
  880. frame.Position = POSITION
  881. frame.Size = SIZE
  882. frame.BackgroundColor3 = COLOR
  883. frame.BorderColor3 = BORDERCOLOR
  884. frame.Name = NAME
  885. frame.Parent = PARENT
  886. return frame
  887. end
  888.  
  889. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  890. local label = IT("TextLabel")
  891. label.BackgroundTransparency = 1
  892. label.Size = UD2(1, 0, 1, 0)
  893. label.Position = UD2(0, 0, 0, 0)
  894. label.TextColor3 = TEXTCOLOR
  895. label.TextStrokeTransparency = STROKETRANSPARENCY
  896. label.TextTransparency = TRANSPARENCY
  897. label.FontSize = TEXTFONTSIZE
  898. label.Font = TEXTFONT
  899. label.BorderSizePixel = BORDERSIZEPIXEL
  900. label.TextScaled = false
  901. label.Text = TEXT
  902. label.Name = NAME
  903. label.Parent = PARENT
  904. return label
  905. end
  906.  
  907. function NoOutlines(PART)
  908. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  909. end
  910.  
  911. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  912. local NEWWELD = IT(TYPE)
  913. NEWWELD.Part0 = PART0
  914. NEWWELD.Part1 = PART1
  915. NEWWELD.C0 = C0
  916. NEWWELD.C1 = C1
  917. NEWWELD.Parent = PARENT
  918. return NEWWELD
  919. end
  920.  
  921. local S = IT("Sound")
  922. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  923. local NEWSOUND = nil
  924. coroutine.resume(coroutine.create(function()
  925. NEWSOUND = S:Clone()
  926. NEWSOUND.Parent = PARENT
  927. NEWSOUND.Volume = VOLUME
  928. NEWSOUND.Pitch = PITCH
  929. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  930. NEWSOUND:play()
  931. if DOESLOOP == true then
  932. NEWSOUND.Looped = true
  933. else
  934. repeat wait(1) until NEWSOUND.Playing == false
  935. NEWSOUND:remove()
  936. end
  937. end))
  938. return NEWSOUND
  939. end
  940.  
  941. function CFrameFromTopBack(at, top, back)
  942. local right = top:Cross(back)
  943. 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)
  944. end
  945.  
  946. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  947. function WACKYEFFECT(Table)
  948. local TYPE = (Table.EffectType or "Sphere")
  949. local SIZE = (Table.Size or VT(1,1,1))
  950. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  951. local TRANSPARENCY = (Table.Transparency or 0)
  952. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  953. local CFRAME = (Table.CFrame or Torso.CFrame)
  954. local MOVEDIRECTION = (Table.MoveToPos or nil)
  955. local ROTATION1 = (Table.RotationX or 0)
  956. local ROTATION2 = (Table.RotationY or 0)
  957. local ROTATION3 = (Table.RotationZ or 0)
  958. local MATERIAL = (Table.Material or "Neon")
  959. local COLOR = (Table.Color or C3(1,1,1))
  960. local TIME = (Table.Time or 45)
  961. local SOUNDID = (Table.SoundID or nil)
  962. local SOUNDPITCH = (Table.SoundPitch or nil)
  963. local SOUNDVOLUME = (Table.SoundVolume or nil)
  964. coroutine.resume(coroutine.create(function()
  965. local PLAYSSOUND = false
  966. local SOUND = nil
  967. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  968. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  969. PLAYSSOUND = true
  970. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  971. end
  972. EFFECT.Color = COLOR
  973. local MSH = nil
  974. if TYPE == "Sphere" then
  975. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  976. elseif TYPE == "Block" then
  977. MSH = IT("BlockMesh",EFFECT)
  978. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  979. elseif TYPE == "Wave" then
  980. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  981. elseif TYPE == "Ring" then
  982. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  983. elseif TYPE == "Slash" then
  984. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  985. elseif TYPE == "Round Slash" then
  986. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  987. elseif TYPE == "Swirl" then
  988. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  989. elseif TYPE == "Skull" then
  990. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  991. elseif TYPE == "Crystal" then
  992. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  993. end
  994. if MSH ~= nil then
  995. local MOVESPEED = nil
  996. if MOVEDIRECTION ~= nil then
  997. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  998. end
  999. local GROWTH = SIZE - ENDSIZE
  1000. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1001. if TYPE == "Block" then
  1002. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1003. else
  1004. EFFECT.CFrame = CFRAME
  1005. end
  1006. for LOOP = 1, TIME+1 do
  1007. Swait()
  1008. MSH.Scale = MSH.Scale - GROWTH/TIME
  1009. if TYPE == "Wave" then
  1010. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1011. end
  1012. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1013. if TYPE == "Block" then
  1014. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1015. else
  1016. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1017. end
  1018. if MOVEDIRECTION ~= nil then
  1019. local ORI = EFFECT.Orientation
  1020. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1021. EFFECT.Orientation = ORI
  1022. end
  1023. end
  1024. if PLAYSSOUND == false then
  1025. EFFECT:remove()
  1026. else
  1027. SOUND.Stopped:Connect(function()
  1028. EFFECT:remove()
  1029. end)
  1030. end
  1031. else
  1032. if PLAYSSOUND == false then
  1033. EFFECT:remove()
  1034. else
  1035. repeat Swait() until SOUND.Playing == false
  1036. EFFECT:remove()
  1037. end
  1038. end
  1039. end))
  1040. end
  1041.  
  1042. function MakeForm(PART,TYPE)
  1043. if TYPE == "Cyl" then
  1044. local MSH = IT("CylinderMesh",PART)
  1045. elseif TYPE == "Ball" then
  1046. local MSH = IT("SpecialMesh",PART)
  1047. MSH.MeshType = "Sphere"
  1048. elseif TYPE == "Wedge" then
  1049. local MSH = IT("SpecialMesh",PART)
  1050. MSH.MeshType = "Wedge"
  1051. end
  1052. end
  1053.  
  1054. Debris = game:GetService("Debris")
  1055.  
  1056. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1057. local DIRECTION = CF(StartPos,EndPos).lookVector
  1058. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1059. end
  1060.  
  1061. local EyeSizes={
  1062. NumberSequenceKeypoint.new(0,1,0),
  1063. NumberSequenceKeypoint.new(1,0,0)
  1064. }
  1065. local EyeTrans={
  1066. NumberSequenceKeypoint.new(0,0.8,0),
  1067. NumberSequenceKeypoint.new(1,1,0)
  1068. }
  1069. local PE=Instance.new("ParticleEmitter",nil)
  1070. PE.LightEmission=.8
  1071. PE.Color = ColorSequence.new(BRICKC("Black").Color)
  1072. PE.Size=NumberSequence.new(EyeSizes)
  1073. PE.Transparency=NumberSequence.new(EyeTrans)
  1074. PE.Lifetime=NumberRange.new(0.35,1.5)
  1075. PE.Rotation=NumberRange.new(0,360)
  1076. PE.Rate=999
  1077. PE.VelocitySpread = 10000
  1078. PE.Acceleration = Vector3.new(0,0,0)
  1079. PE.Drag = 5
  1080. PE.Speed = NumberRange.new(0,0,0)
  1081. PE.Texture="http://www.roblox.com/asset/?id=1351966707"
  1082. PE.ZOffset = -0
  1083. PE.Name = "PE"
  1084. PE.Enabled = false
  1085.  
  1086. function particles(art)
  1087. local PARTICLES = PE:Clone()
  1088. PARTICLES.Parent = art
  1089. end
  1090.  
  1091. function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
  1092. if FLOOR ~= nil then
  1093. coroutine.resume(coroutine.create(function()
  1094. local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
  1095. PART.CFrame = CF(POSITION)
  1096. for i = 1, 45 do
  1097. local RingPiece = CreatePart(3, Effects, "Plastic", 0, 0, "Pearl", "DebreePart", BLOCKSIZE)
  1098. RingPiece.Material = FLOOR.Material
  1099. RingPiece.Color = FLOOR.Color
  1100. RingPiece.CFrame = PART.CFrame * ANGLES(RAD(0), RAD(i*8), RAD(0)) * CF(SIZE, 0, 0) * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1101. Debris:AddItem(RingPiece,SWAIT)
  1102. end
  1103. PART:remove()
  1104. end))
  1105. end
  1106. end
  1107.  
  1108. function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
  1109. if FLOOR ~= nil then
  1110. for i = 1, AMOUNT do
  1111. local DEBREE = CreatePart(3, Effects, "Neon", FLOOR.Reflectance, FLOOR.Transparency, "Peal", "Debree", BLOCKSIZE, false)
  1112. DEBREE.Material = FLOOR.Material
  1113. DEBREE.Color = FLOOR.Color
  1114. DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1115. DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
  1116. coroutine.resume(coroutine.create(function()
  1117. Swait(15)
  1118. DEBREE.Parent = workspace
  1119. DEBREE.CanCollide = true
  1120. Debris:AddItem(DEBREE,SWAIT)
  1121. end))
  1122. end
  1123. end
  1124. end
  1125.  
  1126. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1127. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1128. end
  1129.  
  1130. function PositiveAngle(NUMBER)
  1131. if NUMBER >= 0 then
  1132. NUMBER = 0
  1133. end
  1134. return NUMBER
  1135. end
  1136.  
  1137. function NegativeAngle(NUMBER)
  1138. if NUMBER <= 0 then
  1139. NUMBER = 0
  1140. end
  1141. return NUMBER
  1142. end
  1143.  
  1144. function Swait(NUMBER)
  1145. if NUMBER == 0 or NUMBER == nil then
  1146. ArtificialHB.Event:wait()
  1147. else
  1148. for i = 1, NUMBER do
  1149. ArtificialHB.Event:wait()
  1150. end
  1151. end
  1152. end
  1153.  
  1154. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1155. local NEWMESH = IT(MESH)
  1156. if MESH == "SpecialMesh" then
  1157. NEWMESH.MeshType = MESHTYPE
  1158. if MESHID ~= "nil" and MESHID ~= "" then
  1159. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1160. end
  1161. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1162. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1163. end
  1164. end
  1165. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1166. NEWMESH.Scale = SCALE
  1167. NEWMESH.Parent = PARENT
  1168. return NEWMESH
  1169. end
  1170.  
  1171. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1172. local NEWPART = IT("Part")
  1173. NEWPART.formFactor = FORMFACTOR
  1174. NEWPART.Reflectance = REFLECTANCE
  1175. NEWPART.Transparency = TRANSPARENCY
  1176. NEWPART.CanCollide = false
  1177. NEWPART.Locked = true
  1178. NEWPART.Anchored = true
  1179. if ANCHOR == false then
  1180. NEWPART.Anchored = false
  1181. end
  1182. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1183. NEWPART.Name = NAME
  1184. NEWPART.Size = SIZE
  1185. NEWPART.Position = Torso.Position
  1186. NEWPART.Material = MATERIAL
  1187. NEWPART:BreakJoints()
  1188. NEWPART.Parent = PARENT
  1189. return NEWPART
  1190. end
  1191.  
  1192. local function weldBetween(a, b)
  1193. local weldd = Instance.new("ManualWeld")
  1194. weldd.Part0 = a
  1195. weldd.Part1 = b
  1196. weldd.C0 = CFrame.new()
  1197. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1198. weldd.Parent = a
  1199. return weldd
  1200. end
  1201.  
  1202.  
  1203. function QuaternionFromCFrame(cf)
  1204. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1205. local trace = m00 + m11 + m22
  1206. if trace > 0 then
  1207. local s = math.sqrt(1 + trace)
  1208. local recip = 0.5 / s
  1209. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1210. else
  1211. local i = 0
  1212. if m11 > m00 then
  1213. i = 1
  1214. end
  1215. if m22 > (i == 0 and m00 or m11) then
  1216. i = 2
  1217. end
  1218. if i == 0 then
  1219. local s = math.sqrt(m00 - m11 - m22 + 1)
  1220. local recip = 0.5 / s
  1221. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1222. elseif i == 1 then
  1223. local s = math.sqrt(m11 - m22 - m00 + 1)
  1224. local recip = 0.5 / s
  1225. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1226. elseif i == 2 then
  1227. local s = math.sqrt(m22 - m00 - m11 + 1)
  1228. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1229. end
  1230. end
  1231. end
  1232.  
  1233. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1234. local xs, ys, zs = x + x, y + y, z + z
  1235. local wx, wy, wz = w * xs, w * ys, w * zs
  1236. local xx = x * xs
  1237. local xy = x * ys
  1238. local xz = x * zs
  1239. local yy = y * ys
  1240. local yz = y * zs
  1241. local zz = z * zs
  1242. 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))
  1243. end
  1244.  
  1245. function QuaternionSlerp(a, b, t)
  1246. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1247. local startInterp, finishInterp;
  1248. if cosTheta >= 0.0001 then
  1249. if (1 - cosTheta) > 0.0001 then
  1250. local theta = ACOS(cosTheta)
  1251. local invSinTheta = 1 / SIN(theta)
  1252. startInterp = SIN((1 - t) * theta) * invSinTheta
  1253. finishInterp = SIN(t * theta) * invSinTheta
  1254. else
  1255. startInterp = 1 - t
  1256. finishInterp = t
  1257. end
  1258. else
  1259. if (1 + cosTheta) > 0.0001 then
  1260. local theta = ACOS(-cosTheta)
  1261. local invSinTheta = 1 / SIN(theta)
  1262. startInterp = SIN((t - 1) * theta) * invSinTheta
  1263. finishInterp = SIN(t * theta) * invSinTheta
  1264. else
  1265. startInterp = t - 1
  1266. finishInterp = t
  1267. end
  1268. end
  1269. 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
  1270. end
  1271.  
  1272. function Clerp(a, b, t)
  1273. local qa = {QuaternionFromCFrame(a)}
  1274. local qb = {QuaternionFromCFrame(b)}
  1275. local ax, ay, az = a.x, a.y, a.z
  1276. local bx, by, bz = b.x, b.y, b.z
  1277. local _t = 1 - t
  1278. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1279. end
  1280.  
  1281. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1282. local frame = IT("Frame")
  1283. frame.BackgroundTransparency = TRANSPARENCY
  1284. frame.BorderSizePixel = BORDERSIZEPIXEL
  1285. frame.Position = POSITION
  1286. frame.Size = SIZE
  1287. frame.BackgroundColor3 = COLOR
  1288. frame.BorderColor3 = BORDERCOLOR
  1289. frame.Name = NAME
  1290. frame.Parent = PARENT
  1291. return frame
  1292. end
  1293.  
  1294. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1295. local label = IT("TextLabel")
  1296. label.BackgroundTransparency = 1
  1297. label.Size = UD2(1, 0, 1, 0)
  1298. label.Position = UD2(0, 0, 0, 0)
  1299. label.TextColor3 = TEXTCOLOR
  1300. label.TextStrokeTransparency = STROKETRANSPARENCY
  1301. label.TextTransparency = TRANSPARENCY
  1302. label.FontSize = TEXTFONTSIZE
  1303. label.Font = TEXTFONT
  1304. label.BorderSizePixel = BORDERSIZEPIXEL
  1305. label.TextScaled = false
  1306. label.Text = TEXT
  1307. label.Name = NAME
  1308. label.Parent = PARENT
  1309. return label
  1310. end
  1311.  
  1312. function NoOutlines(PART)
  1313. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1314. end
  1315.  
  1316. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1317. local NEWWELD = IT(TYPE)
  1318. NEWWELD.Part0 = PART0
  1319. NEWWELD.Part1 = PART1
  1320. NEWWELD.C0 = C0
  1321. NEWWELD.C1 = C1
  1322. NEWWELD.Parent = PARENT
  1323. return NEWWELD
  1324. end
  1325.  
  1326. local S = IT("Sound")
  1327. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1328. local NEWSOUND = nil
  1329. coroutine.resume(coroutine.create(function()
  1330. NEWSOUND = S:Clone()
  1331. NEWSOUND.Parent = PARENT
  1332. NEWSOUND.Volume = VOLUME
  1333. NEWSOUND.Pitch = PITCH
  1334. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1335. NEWSOUND:play()
  1336. if DOESLOOP == true then
  1337. NEWSOUND.Looped = true
  1338. else
  1339. repeat wait(1) until NEWSOUND.Playing == false
  1340. NEWSOUND:remove()
  1341. end
  1342. end))
  1343. return NEWSOUND
  1344. end
  1345.  
  1346. function CFrameFromTopBack(at, top, back)
  1347. local right = top:Cross(back)
  1348. 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)
  1349. end
  1350.  
  1351. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1352. function WACKYEFFECT(Table)
  1353. local TYPE = (Table.EffectType or "Sphere")
  1354. local SIZE = (Table.Size or VT(1,1,1))
  1355. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1356. local TRANSPARENCY = (Table.Transparency or 0)
  1357. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1358. local CFRAME = (Table.CFrame or Torso.CFrame)
  1359. local MOVEDIRECTION = (Table.MoveToPos or nil)
  1360. local ROTATION1 = (Table.RotationX or 0)
  1361. local ROTATION2 = (Table.RotationY or 0)
  1362. local ROTATION3 = (Table.RotationZ or 0)
  1363. local MATERIAL = (Table.Material or "Neon")
  1364. local COLOR = (Table.Color or C3(1,1,1))
  1365. local TIME = (Table.Time or 45)
  1366. local SOUNDID = (Table.SoundID or nil)
  1367. local SOUNDPITCH = (Table.SoundPitch or nil)
  1368. local SOUNDVOLUME = (Table.SoundVolume or nil)
  1369. coroutine.resume(coroutine.create(function()
  1370. local PLAYSSOUND = false
  1371. local SOUND = nil
  1372. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1373. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1374. PLAYSSOUND = true
  1375. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1376. end
  1377. EFFECT.Color = COLOR
  1378. local MSH = nil
  1379. if TYPE == "Sphere" then
  1380. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1381. elseif TYPE == "Block" then
  1382. MSH = IT("BlockMesh",EFFECT)
  1383. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1384. elseif TYPE == "Wave" then
  1385. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1386. elseif TYPE == "Ring" then
  1387. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1388. elseif TYPE == "Slash" then
  1389. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1390. elseif TYPE == "Round Slash" then
  1391. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1392. elseif TYPE == "Swirl" then
  1393. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1394. elseif TYPE == "Skull" then
  1395. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1396. elseif TYPE == "Crystal" then
  1397. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1398. end
  1399. if MSH ~= nil then
  1400. local MOVESPEED = nil
  1401. if MOVEDIRECTION ~= nil then
  1402. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1403. end
  1404. local GROWTH = SIZE - ENDSIZE
  1405. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1406. if TYPE == "Block" then
  1407. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1408. else
  1409. EFFECT.CFrame = CFRAME
  1410. end
  1411. for LOOP = 1, TIME+1 do
  1412. Swait()
  1413. MSH.Scale = MSH.Scale - GROWTH/TIME
  1414. if TYPE == "Wave" then
  1415. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1416. end
  1417. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1418. if TYPE == "Block" then
  1419. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1420. else
  1421. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1422. end
  1423. if MOVEDIRECTION ~= nil then
  1424. local ORI = EFFECT.Orientation
  1425. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1426. EFFECT.Orientation = ORI
  1427. end
  1428. end
  1429. if PLAYSSOUND == false then
  1430. EFFECT:remove()
  1431. else
  1432. repeat Swait() until SOUND.Playing == false
  1433. EFFECT:remove()
  1434. end
  1435. else
  1436. if PLAYSSOUND == false then
  1437. EFFECT:remove()
  1438. else
  1439. repeat Swait() until SOUND.Playing == false
  1440. EFFECT:remove()
  1441. end
  1442. end
  1443. end))
  1444. end
  1445.  
  1446. function MakeForm(PART,TYPE)
  1447. if TYPE == "Cyl" then
  1448. local MSH = IT("CylinderMesh",PART)
  1449. elseif TYPE == "Ball" then
  1450. local MSH = IT("SpecialMesh",PART)
  1451. MSH.MeshType = "Sphere"
  1452. elseif TYPE == "Wedge" then
  1453. local MSH = IT("SpecialMesh",PART)
  1454. MSH.MeshType = "Wedge"
  1455. end
  1456. end
  1457.  
  1458. Debris = game:GetService("Debris")
  1459.  
  1460. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1461. local DIRECTION = CF(StartPos,EndPos).lookVector
  1462. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1463. end
  1464.  
  1465. function turnto(position)
  1466. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1467. end
  1468.  
  1469. --//=================================\\
  1470. --|| WEAPON CREATION
  1471. --\\=================================//
  1472. local BODY = {}
  1473.  
  1474. for _, c in pairs(Character:GetDescendants()) do
  1475. if c:IsA("BasePart") and c.Name ~= "Handle" then
  1476. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  1477. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1478. end
  1479. table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  1480. elseif c:IsA("JointInstance") then
  1481. table.insert(BODY,{c,c.Parent,nil,nil,nil})
  1482. end
  1483. end
  1484.  
  1485. for e = 1, #BODY do
  1486. if BODY[e] ~= nil then
  1487. local STUFF = BODY[e]
  1488. local PART = STUFF[1]
  1489. local PARENT = STUFF[2]
  1490. local MATERIAL = STUFF[3]
  1491. local COLOR = STUFF[4]
  1492. local TRANSPARENCY = STUFF[5]
  1493. if PART.ClassName == "Part" and PART ~= RootPart then
  1494. PART.Material = MATERIAL
  1495. PART.Color = COLOR
  1496. PART.Transparency = TRANSPARENCY
  1497. end
  1498. PART.AncestryChanged:Connect(function()
  1499. PART.Parent = PARENT
  1500. end)
  1501. end
  1502. end
  1503.  
  1504. -------------------------------------------------------
  1505. local Orbd = Instance.new("Part", Character)
  1506. Orbd.Name = "Orbd"
  1507. Orbd.Shape = Enum.PartType.Ball
  1508. Orbd.CanCollide = false
  1509. Orbd.BrickColor = BrickColor.new("Really black")
  1510. Orbd.Transparency = 0
  1511. Orbd.Material = "Neon"
  1512. Orbd.Size = Vector3.new(0.3, 0.3, 0.3)
  1513. Orbd.TopSurface = Enum.SurfaceType.Smooth
  1514. Orbd.BottomSurface = Enum.SurfaceType.Smooth
  1515.  
  1516. local Weld = Instance.new("Weld", Orbd)
  1517. Weld.Part0 = Character.Head
  1518. Weld.Part1 = Orbd
  1519. Weld.C1 = CFrame.new(-0.26, -0.24, 0.55)
  1520.  
  1521. --------------------------------------------------------
  1522. local Orbvc = Instance.new("Part", Character)
  1523. Orbvc.Name = "Orbvc"
  1524. Orbvc.Shape = Enum.PartType.Ball
  1525. Orbvc.CanCollide = false
  1526. Orbvc.BrickColor = BrickColor.new("Really black")
  1527. Orbvc.Transparency = 0
  1528. Orbvc.Material = "Neon"
  1529. Orbvc.Size = Vector3.new(0.3, 0.3, 0.3)
  1530. Orbvc.TopSurface = Enum.SurfaceType.Smooth
  1531. Orbvc.BottomSurface = Enum.SurfaceType.Smooth
  1532.  
  1533. local Weld = Instance.new("Weld", Orbvc)
  1534. Weld.Part0 = Character.Head
  1535. Weld.Part1 = Orbvc
  1536. Weld.C1 = CFrame.new(0.26, -0.24, 0.55)
  1537. ---------------------------------------------------------
  1538. local Mask = Instance.new("Part", Character)
  1539. Mask.Name = "Mask"
  1540. Mask.CanCollide = false
  1541. Mask.BrickColor = BrickColor.new("Medium stone grey")
  1542. Mask.Transparency = 0
  1543. Mask.Material = "Neon"
  1544. Mask.Size = Vector3.new(0.1, 0.1, 0.1)
  1545. Mask.TopSurface = Enum.SurfaceType.Smooth
  1546. Mask.BottomSurface = Enum.SurfaceType.Smooth
  1547.  
  1548. local Weld = Instance.new("Weld", Mask)
  1549. Weld.Part0 = Character.Head
  1550. Weld.Part1 = Mask
  1551. Weld.C1 = CFrame.new(0, -0.1, 0.8)
  1552.  
  1553. local M1 = Instance.new("SpecialMesh")
  1554. M1.Parent = Mask
  1555. M1.MeshId = "http://www.roblox.com/asset/?id=62679079"
  1556. M1.Scale = Vector3.new( 1, 1, 2)
  1557. ----------------------------------------------------------
  1558. local Hood = Instance.new("Part", Character)
  1559. Hood.Name = "Hood"
  1560. Hood.CanCollide = false
  1561. Hood.BrickColor = BrickColor.new("Really black")
  1562. Hood.Transparency = 0
  1563. Hood.Material = "Plastic"
  1564. Hood.Size = Vector3.new(0.1, 0.1, 0.1)
  1565. Hood.TopSurface = Enum.SurfaceType.Smooth
  1566. Hood.BottomSurface = Enum.SurfaceType.Smooth
  1567.  
  1568. local Weld = Instance.new("Weld", Hood)
  1569. Weld.Part0 = Character.Head
  1570. Weld.Part1 = Hood
  1571. Weld.C1 = CFrame.new(0, -0.2, 0)
  1572.  
  1573. local M2 = Instance.new("SpecialMesh")
  1574. M2.Parent = Hood
  1575. M2.MeshId = "http://www.roblox.com/asset/?id=83499032"
  1576. M2.Scale = Vector3.new( 1, 1.2, 1.1)
  1577. ------------------------------------------------------
  1578. --[[
  1579. Thanks for using Build-To-Lua by jarredbcv.
  1580. ]]--
  1581.  
  1582. New = function(Object, Parent, Name, Data)
  1583. local Object = Instance.new(Object)
  1584. for Index, Value in pairs(Data or {}) do
  1585. Object[Index] = Value
  1586. end
  1587. Object.Parent = Parent
  1588. Object.Name = Name
  1589. return Object
  1590. end
  1591.  
  1592. for i = 1, 35 do
  1593. local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/35.2, "Dark stone grey", "FaceGradient", VT(1.01,0.5,1.01),false)
  1594. FACE.Color = C3(0,0,0)
  1595. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  1596. CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  1597. end
  1598.  
  1599. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Really red", "Eye", VT(0.6,0.1,1)/2,false)
  1600. MakeForm(Eye,"Ball")
  1601. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(-18), RAD(15)), CF(0, 0, 0.4))
  1602. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Black", "Eye", VT(0.6,0.1,1)/2,false)
  1603. MakeForm(Eye,"Ball")
  1604. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.2,0) * ANGLES(RAD(0), RAD(18), RAD(-15)), CF(0, 0, 0.4))
  1605. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Black", "Eye", VT(0.1,1,1)/2,false)
  1606. MakeForm(Eye,"Ball")
  1607. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(-18), RAD(0)), CF(0, 0, 0.4))
  1608. local Eye = CreatePart(3, Character, "Neon", 0, 0, "Black", "Eye", VT(0.1,1,1)/2,false)
  1609. MakeForm(Eye,"Ball")
  1610. CreateWeldOrSnapOrMotor("Weld", Eye, Head, Eye, CF(0,0.15,0) * ANGLES(RAD(0), RAD(18), RAD(0)), CF(0, 0, 0.4))
  1611.  
  1612. local BasePart = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(1.01,0.3,1.01),false)
  1613. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, BasePart, CF(0, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1614. for i = 1, 3 do
  1615. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.2,1.02,0.2),false)
  1616. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0, 0, 0.6-0.3*i) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0, 0, 0))
  1617. MakeForm(Part,"Cyl")
  1618. end
  1619. for i = 1, 3 do
  1620. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.2,1.02,0.2),false)
  1621. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.6-0.3*i, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(90)), CF(0, 0, 0))
  1622. MakeForm(Part,"Cyl")
  1623. end
  1624. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.51,0.6,0.25),false)
  1625. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
  1626. MakeForm(Part,"Wedge")
  1627. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.51,0.6,0.25),false)
  1628. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125, -0.4, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
  1629. MakeForm(Part,"Wedge")
  1630. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
  1631. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(-0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(90), RAD(180)), CF(0, 0, 0))
  1632. MakeForm(Part,"Wedge")
  1633. local Part = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Black", "BraceletPart", VT(0.52,0.5,0.25/2.3),false)
  1634. CreateWeldOrSnapOrMotor("Weld", BasePart, BasePart, Part, CF(0.125/2.3, -0.25, -0.25) * ANGLES(RAD(0), RAD(-90), RAD(180)), CF(0, 0, 0))
  1635. MakeForm(Part,"Wedge")
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643. for _, c in pairs(Weapon:GetChildren()) do
  1644. if c.ClassName == "Part" then
  1645. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1646. local AURA = c:Clone()
  1647. AURA:BreakJoints()
  1648. AURA.Parent = c
  1649. AURA.CFrame = c.CFrame
  1650. AURA.Size = AURA.Size*1.001
  1651. AURA.Transparency = 0.8
  1652. AURA.BrickColor = BRICKC"Royal purple"
  1653. AURA.Material = "Neon"
  1654. weldBetween(c,AURA)
  1655. end
  1656. end
  1657. function refit()
  1658. Character.Parent = workspace
  1659. for e = 1, #BODY do
  1660. if BODY[e] ~= nil then
  1661. local STUFF = BODY[e]
  1662. local PART = STUFF[1]
  1663. local PARENT = STUFF[2]
  1664. local MATERIAL = STUFF[3]
  1665. local COLOR = STUFF[4]
  1666. local TRANSPARENCY = STUFF[5]
  1667. if PART.ClassName == "Part" and PART ~= RootPart then
  1668. PART.Material = MATERIAL
  1669. PART.Color = COLOR
  1670. PART.Transparency = TRANSPARENCY
  1671. end
  1672. if PART.Parent ~= PARENT then
  1673. Humanoid:remove()
  1674. PART.Parent = PARENT
  1675. Humanoid = IT("Humanoid",Character)
  1676. end
  1677. end
  1678. end
  1679. end
  1680.  
  1681. local SKILLTEXTCOLOR = BRICKC"Black".Color
  1682. local SKILLFONT = "Bodoni"
  1683. local SKILLTEXTSIZE = 7
  1684.  
  1685. Weapon.Parent = Character
  1686.  
  1687. Humanoid.Died:connect(function()
  1688.  
  1689. ATTACK = true
  1690. end)
  1691.  
  1692. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23-.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  1693. local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50+.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  1694. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  1695. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  1696. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  1697. local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.76, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
  1698.  
  1699.  
  1700. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] BEAM OF CORRUPTION", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 1")
  1701. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[X] EXPLOSION", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 2")
  1702. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] STUN", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 3")
  1703. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[E] SCREAM", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 4")
  1704. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[R] WARP", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 5")
  1705. local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[Q] PAIN", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 0, 0, "Text 6")
  1706.  
  1707. --//=================================\\
  1708. --|| RAGDOLL STUFF
  1709. --\\=================================//
  1710.  
  1711. function recurse(root,callback,i)
  1712. i= i or 0
  1713. for _,v in pairs(root:GetChildren()) do
  1714. i = i + 1
  1715. callback(i,v)
  1716.  
  1717. if #v:GetChildren() > 0 then
  1718. i = recurse(v,callback,i)
  1719. end
  1720. end
  1721.  
  1722. return i
  1723. end
  1724.  
  1725. function ragdollJoint(character, part0, part1, attachmentName, className, properties)
  1726. attachmentName = attachmentName.."RigAttachment"
  1727. local constraint = Instance.new(className.."Constraint")
  1728. constraint.Attachment0 = part0:FindFirstChild(attachmentName)
  1729. constraint.Attachment1 = part1:FindFirstChild(attachmentName)
  1730. constraint.Name = "RagdollConstraint"..part1.Name
  1731.  
  1732. for _,propertyData in next,properties or {} do
  1733. constraint[propertyData[1]] = propertyData[2]
  1734. end
  1735.  
  1736. constraint.Parent = character
  1737. end
  1738.  
  1739. function getAttachment0(character, attachmentName)
  1740. for _,child in next,character:GetChildren() do
  1741. local attachment = child:FindFirstChild(attachmentName)
  1742. if attachment then
  1743. return attachment
  1744. end
  1745. end
  1746. end
  1747.  
  1748. function ArtificialHitbox(Part)
  1749. local HITBOX = CreatePart(3, Part, "Metal", 0, 1, "Really black", "Hitbox", Part.Size/2, false)
  1750. HITBOX.CanCollide = true
  1751. HITBOX.CFrame = Part.CFrame
  1752. weldBetween(Part,HITBOX)
  1753. end
  1754.  
  1755. function R15Ragdoll(character,KeepArms)
  1756. character:BreakJoints()
  1757. coroutine.resume(coroutine.create(function()
  1758. recurse(character, function(_,v)
  1759. if v:IsA("Attachment") then
  1760. v.Axis = Vector3.new(0, 1, 0)
  1761. v.SecondaryAxis = Vector3.new(0, 0, 1)
  1762. v.Rotation = Vector3.new(0, 0, 0)
  1763. end
  1764. end)
  1765. for _,child in next,character:GetChildren() do
  1766. if child:IsA("Accoutrement") then
  1767. for _,part in next,child:GetChildren() do
  1768. if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
  1769. local attachment1 = part:FindFirstChildOfClass("Attachment")
  1770. local attachment0 = getAttachment0(character,attachment1.Name)
  1771. if attachment0 and attachment1 then
  1772. local constraint = Instance.new("HingeConstraint")
  1773. constraint.Attachment0 = attachment0
  1774. constraint.Attachment1 = attachment1
  1775. constraint.LimitsEnabled = true
  1776. constraint.UpperAngle = 0
  1777. constraint.LowerAngle = 0
  1778. constraint.Parent = character
  1779. end
  1780. ArtificialHitbox(part)
  1781. elseif part.Name == "HumanoidRootPart" then
  1782. part:remove()
  1783. end
  1784. end
  1785. end
  1786. end
  1787.  
  1788. ragdollJoint(character,character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
  1789. {"LimitsEnabled",true};
  1790. {"UpperAngle",5};
  1791. })
  1792. if character:FindFirstChild("Head") then
  1793. ragdollJoint(character,character.UpperTorso, character.Head, "Neck", "BallSocket", {
  1794. {"LimitsEnabled",true};
  1795. {"UpperAngle",15};
  1796. })
  1797. end
  1798.  
  1799. local handProperties = {
  1800. {"LimitsEnabled", true};
  1801. {"UpperAngle",0};
  1802. {"LowerAngle",0};
  1803. }
  1804. ragdollJoint(character,character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
  1805. ragdollJoint(character,character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
  1806.  
  1807. local shinProperties = {
  1808. {"LimitsEnabled", true};
  1809. {"UpperAngle", 0};
  1810. {"LowerAngle", -75};
  1811. }
  1812. ragdollJoint(character,character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
  1813. ragdollJoint(character,character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
  1814.  
  1815. local footProperties = {
  1816. {"LimitsEnabled", true};
  1817. {"UpperAngle", 15};
  1818. {"LowerAngle", -45};
  1819. }
  1820. ragdollJoint(character,character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
  1821. ragdollJoint(character,character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
  1822. if KeepArms == true then
  1823. ragdollJoint(character,character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
  1824. ragdollJoint(character,character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
  1825. ragdollJoint(character,character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
  1826. ragdollJoint(character,character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
  1827. end
  1828. ragdollJoint(character,character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
  1829. ragdollJoint(character,character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
  1830. Debris:AddItem(character,5)
  1831. end))
  1832. end
  1833.  
  1834. function Ragdoll(Character2,CharTorso,KeepArms)
  1835. coroutine.resume(coroutine.create(function()
  1836. Character2:BreakJoints()
  1837. local hum = Character2:findFirstChild("Humanoid")
  1838. hum:remove()
  1839. local function Scan(ch)
  1840. local e
  1841. for e = 1,#ch do
  1842. Scan(ch[e]:GetChildren())
  1843. if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
  1844. ch[e]:remove()
  1845. end
  1846. end
  1847. end
  1848. local NEWHUM = IT("Humanoid")
  1849. NEWHUM.Name = "Corpse"
  1850. NEWHUM.Health = 0
  1851. NEWHUM.MaxHealth = 0
  1852. NEWHUM.PlatformStand = true
  1853. NEWHUM.Parent = Character2
  1854. NEWHUM.DisplayDistanceType = "None"
  1855.  
  1856. local ch = Character2:GetChildren()
  1857. local i
  1858. for i = 1,#ch do
  1859. if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
  1860. ch[i]:remove()
  1861. end
  1862. end
  1863.  
  1864. local Torso2 = Character2.Torso
  1865. local movevector = Vector3.new()
  1866.  
  1867. if Torso2 then
  1868. movevector = CFrame.new(CharTorso.Position,Torso2.Position).lookVector
  1869. local Head = Character2:FindFirstChild("Head")
  1870. if Head then
  1871. local Neck = Instance.new("Weld")
  1872. Neck.Name = "Neck"
  1873. Neck.Part0 = Torso2
  1874. Neck.Part1 = Head
  1875. Neck.C0 = CFrame.new(0, 1.5, 0)
  1876. Neck.C1 = CFrame.new()
  1877. Neck.Parent = Torso2
  1878.  
  1879. end
  1880. local Limb = Character2:FindFirstChild("Right Arm")
  1881. if Limb and KeepArms == true then
  1882.  
  1883. Limb.CFrame = Torso2.CFrame * CFrame.new(1.5, 0, 0)
  1884. local Joint = Instance.new("Glue")
  1885. Joint.Name = "RightShoulder"
  1886. Joint.Part0 = Torso2
  1887. Joint.Part1 = Limb
  1888. Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  1889. Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  1890. Joint.Parent = Torso2
  1891.  
  1892. local B = Instance.new("Part")
  1893. B.TopSurface = 0
  1894. B.BottomSurface = 0
  1895. B.formFactor = "Symmetric"
  1896. B.Size = Vector3.new(1, 1, 1)
  1897. B.Transparency = 1
  1898. B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  1899. B.Parent = Character2
  1900. local W = Instance.new("Weld")
  1901. W.Part0 = Limb
  1902. W.Part1 = B
  1903. W.C0 = CFrame.new(0, -0.5, 0)
  1904. W.Parent = Limb
  1905.  
  1906. end
  1907. local Limb = Character2:FindFirstChild("Left Arm")
  1908. if Limb and KeepArms == true then
  1909.  
  1910. Limb.CFrame = Torso2.CFrame * CFrame.new(-1.5, 0, 0)
  1911. local Joint = Instance.new("Glue")
  1912. Joint.Name = "LeftShoulder"
  1913. Joint.Part0 = Torso2
  1914. Joint.Part1 = Limb
  1915. Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  1916. Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  1917. Joint.Parent = Torso2
  1918.  
  1919. local B = Instance.new("Part")
  1920. B.TopSurface = 0
  1921. B.BottomSurface = 0
  1922. B.formFactor = "Symmetric"
  1923. B.Size = Vector3.new(1, 1, 1)
  1924. B.Transparency = 1
  1925. B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  1926. B.Parent = Character2
  1927. local W = Instance.new("Weld")
  1928. W.Part0 = Limb
  1929. W.Part1 = B
  1930. W.C0 = CFrame.new(0, -0.5, 0)
  1931. W.Parent = Limb
  1932.  
  1933. end
  1934. local Limb = Character2:FindFirstChild("Right Leg")
  1935. if Limb then
  1936.  
  1937. Limb.CFrame = Torso2.CFrame * CFrame.new(0.5, -2, 0)
  1938. local Joint = Instance.new("Glue")
  1939. Joint.Name = "RightHip"
  1940. Joint.Part0 = Torso2
  1941. Joint.Part1 = Limb
  1942. Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  1943. Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  1944. Joint.Parent = Torso2
  1945.  
  1946. local B = Instance.new("Part")
  1947. B.TopSurface = 0
  1948. B.BottomSurface = 0
  1949. B.formFactor = "Symmetric"
  1950. B.Size = Vector3.new(1, 1, 1)
  1951. B.Transparency = 1
  1952. B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  1953. B.Parent = Character2
  1954. local W = Instance.new("Weld")
  1955. W.Part0 = Limb
  1956. W.Part1 = B
  1957. W.C0 = CFrame.new(0, -0.5, 0)
  1958. W.Parent = Limb
  1959.  
  1960. end
  1961. local Limb = Character2:FindFirstChild("Left Leg")
  1962. if Limb then
  1963.  
  1964. Limb.CFrame = Torso2.CFrame * CFrame.new(-0.5, -2, 0)
  1965. local Joint = Instance.new("Glue")
  1966. Joint.Name = "LeftHip"
  1967. Joint.Part0 = Torso2
  1968. Joint.Part1 = Limb
  1969. Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  1970. Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  1971. Joint.Parent = Torso2
  1972.  
  1973. local B = Instance.new("Part")
  1974. B.TopSurface = 0
  1975. B.BottomSurface = 0
  1976. B.formFactor = "Symmetric"
  1977. B.Size = Vector3.new(1, 1, 1)
  1978. B.Transparency = 1
  1979. B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
  1980. B.Parent = Character2
  1981. local W = Instance.new("Weld")
  1982. W.Part0 = Limb
  1983. W.Part1 = B
  1984. W.C0 = CFrame.new(0, -0.5, 0)
  1985. W.Parent = Limb
  1986.  
  1987. end
  1988. --[
  1989. local Bar = Instance.new("Part")
  1990. Bar.TopSurface = 0
  1991. Bar.BottomSurface = 0
  1992. Bar.formFactor = "Symmetric"
  1993. Bar.Size = Vector3.new(1, 1, 1)
  1994. Bar.Transparency = 1
  1995. Bar.CFrame = Torso2.CFrame * CFrame.new(0, 0.5, 0)
  1996. Bar.Parent = Character2
  1997. local Weld = Instance.new("Weld")
  1998. Weld.Part0 = Torso2
  1999. Weld.Part1 = Bar
  2000. Weld.C0 = CFrame.new(0, 0.5, 0)
  2001. Weld.Parent = Torso2
  2002. --]]
  2003. end
  2004. Character2.Parent = workspace
  2005. Debris:AddItem(Character2,5)
  2006.  
  2007. return Character2,Torso2
  2008. end))
  2009. end
  2010.  
  2011. --//=================================\\
  2012. --|| DAMAGE FUNCTIONS
  2013. --\\=================================//
  2014. function StatLabel(CFRAME, TEXT, COLOR)
  2015. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  2016. STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
  2017. local BODYGYRO = IT("BodyGyro", STATPART)
  2018. game:GetService("Debris"):AddItem(STATPART ,5)
  2019. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  2020. BILLBOARDGUI.Adornee = STATPART
  2021. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  2022. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  2023. BILLBOARDGUI.AlwaysOnTop = false
  2024. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  2025. TEXTLABEL.BackgroundTransparency = 1
  2026. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  2027. TEXTLABEL.Text = TEXT
  2028. TEXTLABEL.Font = SKILLFONT
  2029. TEXTLABEL.FontSize="Size42"
  2030. TEXTLABEL.TextColor3 = COLOR
  2031. TEXTLABEL.TextStrokeTransparency = 0
  2032. TEXTLABEL.TextScaled = true
  2033. TEXTLABEL.TextWrapped = true
  2034. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  2035. for i = 1, 50 do
  2036. Swait()
  2037. STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
  2038. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
  2039. TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
  2040. end
  2041. THEPART.Parent = nil
  2042. end),STATPART, TEXTLABEL)
  2043. end
  2044.  
  2045. function StatLabel(CFRAME, TEXT, COLOR)
  2046. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  2047. STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
  2048. local BODYGYRO = IT("BodyGyro", STATPART)
  2049. game:GetService("Debris"):AddItem(STATPART ,5)
  2050. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  2051. BILLBOARDGUI.Adornee = STATPART
  2052. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  2053. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  2054. BILLBOARDGUI.AlwaysOnTop = false
  2055. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  2056. TEXTLABEL.BackgroundTransparency = 1
  2057. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  2058. TEXTLABEL.Text = TEXT
  2059. TEXTLABEL.Font = "Fantasy"
  2060. TEXTLABEL.FontSize="Size42"
  2061. TEXTLABEL.TextColor3 = COLOR
  2062. TEXTLABEL.TextStrokeTransparency = 0
  2063. TEXTLABEL.TextScaled = true
  2064. TEXTLABEL.TextWrapped = true
  2065. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  2066. for i = 1, 50 do
  2067. Swait()
  2068. STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
  2069. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
  2070. TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
  2071. end
  2072. THEPART.Parent = nil
  2073. end),STATPART, TEXTLABEL)
  2074. end
  2075.  
  2076. function StatLabel(CFRAME, TEXT, COLOR)
  2077. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  2078. STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
  2079. local BODYGYRO = IT("BodyGyro", STATPART)
  2080. game:GetService("Debris"):AddItem(STATPART ,5)
  2081. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  2082. BILLBOARDGUI.Adornee = STATPART
  2083. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  2084. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  2085. BILLBOARDGUI.AlwaysOnTop = false
  2086. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  2087. TEXTLABEL.BackgroundTransparency = 1
  2088. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  2089. TEXTLABEL.Text = TEXT
  2090. TEXTLABEL.Font = SKILLFONT
  2091. TEXTLABEL.FontSize="Size42"
  2092. TEXTLABEL.TextColor3 = COLOR
  2093. TEXTLABEL.TextStrokeTransparency = 0
  2094. TEXTLABEL.TextScaled = true
  2095. TEXTLABEL.TextWrapped = true
  2096. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  2097. for i = 1, 50 do
  2098. Swait()
  2099. STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
  2100. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
  2101. TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
  2102. end
  2103. THEPART.Parent = nil
  2104. end),STATPART, TEXTLABEL)
  2105. end
  2106.  
  2107. --//=================================\\
  2108. --|| DAMAGING
  2109. --\\=================================//
  2110. function ApplyDamage(Humanoid,Damage,TorsoPart)
  2111. local defence = Instance.new("BoolValue",Humanoid.Parent)
  2112. defence.Name = ("HitBy"..Player.Name)
  2113. game:GetService("Debris"):AddItem(defence, 0.001)
  2114. Damage = Damage * DAMAGEMULTIPLIER
  2115. if Humanoid.Health ~= 0 then
  2116. local CritChance = MRANDOM(1,100)
  2117. if Damage > Humanoid.Health then
  2118. Damage = math.ceil(Humanoid.Health)
  2119. if Damage == 0 then
  2120. Damage = 0.1
  2121. end
  2122. end
  2123. Humanoid.Health = Humanoid.Health - Damage
  2124. end
  2125. end
  2126.  
  2127. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  2128. local CHILDREN = workspace:GetDescendants()
  2129. for index, CHILD in pairs(CHILDREN) do
  2130. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  2131. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2132. if HUM then
  2133. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2134. if TORSO then
  2135. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2136. if INSTAKILL == false then
  2137. CHILD:BreakJoints()
  2138. else
  2139. local DMG = MRANDOM(MINDMG,MAXDMG)
  2140. ApplyDamage(HUM,DMG,TORSO)
  2141. end
  2142. if FLING > 0 then
  2143. for _, c in pairs(CHILD:GetChildren()) do
  2144. if c:IsA("BasePart") then
  2145. local bv = Instance.new("BodyVelocity")
  2146. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2147. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  2148. bv.Parent = c
  2149. Debris:AddItem(bv,0.05)
  2150. end
  2151. end
  2152. end
  2153. end
  2154. end
  2155. end
  2156. end
  2157. end
  2158. end
  2159.  
  2160. function KillChildren(v)
  2161. v:BreakJoints()
  2162. for _, c in pairs(v:GetChildren()) do
  2163. if c:IsA("BasePart") then
  2164. if c.Transparency < 1 then
  2165. if c:FindFirstChildOfClass("Decal") then
  2166. c:FindFirstChildOfClass("Decal"):remove()
  2167. end
  2168. particles(c)
  2169. c.PE.Enabled = true
  2170. c.Parent = Effects
  2171. c.CanCollide = false
  2172. c.Material = "Neon"
  2173. c.Color = C3(0,0,0)
  2174. c.Transparency = 1
  2175. local grav = Instance.new("BodyPosition",c)
  2176. grav.P = 20000
  2177. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  2178. grav.position = c.Position + VT(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5))
  2179. grav.Name = "GravityForce"
  2180. coroutine.resume(coroutine.create(function()
  2181. for i = 1, 20 do
  2182. Swait()
  2183. c.Transparency = c.Transparency + 1/20
  2184. end
  2185. c.PE.Enabled = false
  2186. Debris:AddItem(c,2)
  2187. end))
  2188. end
  2189. end
  2190. end
  2191. end
  2192.  
  2193. function ApplyAoE(POSITION,RANGE)
  2194. local CHILDREN = workspace:GetDescendants()
  2195. for index, CHILD in pairs(CHILDREN) do
  2196. if CHILD.ClassName == "Model" and CHILD ~= Character then
  2197. local LISTED = false
  2198. for LIST = 1, #WHITELIST do
  2199. if WHITELIST[LIST] ~= nil then
  2200. if CHILD.Name == WHITELIST[LIST] then
  2201. LISTED = true
  2202. end
  2203. end
  2204. end
  2205. if LISTED == false then
  2206. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2207. if HUM then
  2208. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2209. if TORSO then
  2210. if (TORSO.Position - POSITION).Magnitude <= RANGE+TORSO.Size.Magnitude then
  2211. KillChildren(CHILD)
  2212. end
  2213. end
  2214. end
  2215. end
  2216. end
  2217. end
  2218. end
  2219.  
  2220. function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
  2221. local defence = Instance.new("BoolValue",Humanoid.Parent)
  2222. defence.Name = ("HitBy"..Player.Name)
  2223. game:GetService("Debris"):AddItem(defence, 0.001)
  2224. if Humanoid.Health ~= 0 then
  2225. local CritChance = MRANDOM(1,100)
  2226. if CritChance < CritRate + 1 then
  2227. Damage = Damage*CritMultiplier
  2228. end
  2229. if Damage > Humanoid.Health then
  2230. Damage = math.ceil(Humanoid.Health)
  2231. if Damage == 0 then
  2232. Damage = 0.1
  2233. end
  2234. end
  2235. Humanoid.Health = Humanoid.Health - Damage
  2236. if Humanoid.Parent:FindFirstChild("Head") then
  2237. CreateSound(HITPLAYERSOUNDS[MRANDOM(1,#HITPLAYERSOUNDS)], Humanoid.Parent.Head, 5, 1)
  2238. if CritChance < CritRate + 1 then
  2239. StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "CRIT//"..Damage, C3(1, 0, 0))
  2240. else
  2241. StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, SKILLTEXTCOLOR)
  2242. end
  2243. end
  2244. end
  2245. end
  2246.  
  2247. function AoEDamage(position,radius,min,max,maxstrength,critrate,critmultiplier,CanBeDodgedByJumping)
  2248. local dmg = math.random(min,max)
  2249. for i,v in ipairs(workspace:GetChildren()) do
  2250. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  2251. local body = v:GetChildren()
  2252. for part = 1, #body do
  2253. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  2254. if(body[part].Position - position).Magnitude < radius then
  2255. if v.ClassName == "Model" then
  2256. if v:FindFirstChildOfClass("Humanoid") then
  2257. if CanBeDodgedByJumping == true then
  2258. if body[part].Position.Y < position.Y+5 then
  2259. ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  2260. end
  2261. else
  2262. ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  2263. end
  2264. local bv = Instance.new("BodyVelocity")
  2265. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2266. bv.velocity = RootPart.CFrame.lookVector*maxstrength
  2267. bv.Parent = body[part]
  2268. Debris:AddItem(bv,0.2)
  2269. end
  2270. end
  2271. end
  2272. end
  2273. end
  2274. end
  2275. if v:FindFirstChild("HitBy"..Player.Name) then
  2276. v:FindFirstChild("HitBy"..Player.Name):remove()
  2277. end
  2278. end
  2279. end
  2280.  
  2281. function Kill(Char)
  2282. local NewCharacter = IT("Model",Effects)
  2283. NewCharacter.Name = "Ow im ded ;-;"
  2284. for _, c in pairs(Char:GetDescendants()) do
  2285. if c:IsA("BasePart") and c.Transparency == 0 then
  2286. if c.Parent == Char then
  2287. getbloody(c,5)
  2288. end
  2289. c:BreakJoints()
  2290. c.Material = "Glass"
  2291. c.Color = C3(0.5,0,0)
  2292. c.CanCollide = true
  2293. c.Transparency = 0.3
  2294. if c:FindFirstChildOfClass("SpecialMesh") then
  2295. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  2296. end
  2297. if c.Name == "Head" then
  2298. c:ClearAllChildren()
  2299. c.Size = VT(c.Size.Y,c.Size.Y,c.Size.Y)
  2300. end
  2301. if c.ClassName == "MeshPart" then
  2302. c.TextureID = ""
  2303. end
  2304. if c:FindFirstChildOfClass("BodyPosition") then
  2305. c:FindFirstChildOfClass("BodyPosition"):remove()
  2306. end
  2307. if c:FindFirstChildOfClass("ParticleEmitter") then
  2308. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  2309. end
  2310. c.Parent = NewCharacter
  2311. c.Name = "DeadPart"
  2312. c.Velocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))/15
  2313. c.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-15,85),MRANDOM(-45,45))
  2314. end
  2315. end
  2316. Char:remove()
  2317. Debris:AddItem(NewCharacter,5)
  2318. end
  2319.  
  2320. function ApplyAoE(POSITION,RANGE,BRUTAL)
  2321. local CHILDREN = workspace:GetDescendants()
  2322. for index, CHILD in pairs(CHILDREN) do
  2323. if CHILD.ClassName == "Model" and CHILD ~= Character then
  2324. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2325. if HUM then
  2326. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2327. if TORSO then
  2328. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2329. if BRUTAL == true then
  2330. Kill(CHILD)
  2331. else
  2332. CHILD:BreakJoints()
  2333. end
  2334. end
  2335. end
  2336. end
  2337. end
  2338. end
  2339. end
  2340.  
  2341. --//=================================\\
  2342. --|| ATTACK FUNCTIONS AND STUFF
  2343. --\\=================================//
  2344. function Click()
  2345. ATTACK = true
  2346. Rooted = false
  2347. local HIT = nil
  2348. OFFSET = -45
  2349. for i=0, 1, 0.1 / Animation_Speed do
  2350. Swait()
  2351. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(45)), 0.15 / Animation_Speed)
  2352. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2353. end
  2354. OFFSET = 45
  2355. local PUNCH = CreatePart(3, Effects, "Granite", 0, 1, "Really black", "Hit", VT(0.7,0.7,0.7),false)
  2356. PUNCH.CanCollide = true
  2357. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PUNCH, CF(0,-1,0), CF(0, 0, 0))
  2358. TAUNT = true
  2359. local TOUCH = PUNCH.Touched:Connect(function(hit)
  2360. if hit.Parent:FindFirstChildOfClass("Humanoid") then
  2361. HIT = hit.Parent
  2362. end
  2363. end)
  2364. for i=0, 0.3, 0.1 / Animation_Speed do
  2365. Swait()
  2366. RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.3)
  2367. if HIT ~= nil then
  2368. break
  2369. end
  2370. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
  2371. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, -0.75) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2372. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-35), RAD(0), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2373. end
  2374. PUNCH:remove()
  2375. TOUCH:disconnect()
  2376. if HIT ~= nil then
  2377. for _, c in pairs(HIT:GetChildren()) do
  2378. if c:IsA("BasePart") then
  2379. c.Anchored = true
  2380. end
  2381. end
  2382. Rooted = true
  2383. CreateSound(649634100, Torso, 10, 0.8)
  2384. CreateSound(1368573150, RightArm, 3, 1.5)
  2385. for i=0, 0.6, 0.1 / Animation_Speed do
  2386. Swait()
  2387. WACKYEFFECT({EffectType = "Block", Size = VT(3,3,3)/3, Size2 = VT(1,1,1)/3, Transparency = 0.5, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.3,0), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2388. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 2.5), RAD(25), RAD(-45)), 0.05 / Animation_Speed)
  2389. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.45, 0.5, -0.75) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2390. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-35), RAD(0), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2391. end
  2392. for _, c in pairs(HIT:GetChildren()) do
  2393. if c:IsA("BasePart") then
  2394. c.Anchored = false
  2395. end
  2396. end
  2397. KillChildren(HIT)
  2398. end
  2399. OFFSET = 0
  2400. ATTACK = false
  2401. Rooted = false
  2402. TAUNT = false
  2403. end
  2404.  
  2405. function Teleport()
  2406. ATTACK = true
  2407. Rooted = false
  2408. for i=0, 0.5, 0.1 / Animation_Speed do
  2409. Swait()
  2410. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2411. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-25), RAD(12)) * ANGLES(RAD(125 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1.5 / Animation_Speed)
  2412. end
  2413. for e = 1, #BODY do
  2414. if BODY[e] ~= nil then
  2415. local STUFF = BODY[e]
  2416. local PART = STUFF[1]
  2417. if PART:IsA("BasePart") and PART ~= RootPart and PART.Name ~= "FaceGradient" and PART.Name ~= "Hair" and PART.Transparency ~= 1 then
  2418. local PRT = PART:Clone()
  2419. PRT.Anchored = true
  2420. PRT.CanCollide = false
  2421. PRT.Material = "Neon"
  2422. PRT.Color = C3(0,0,0)
  2423. PRT.Name = "WarpEffect"
  2424. PRT.Parent = Effects
  2425. PRT.CFrame = PART.CFrame
  2426. PRT:BreakJoints()
  2427. if PRT:FindFirstChildOfClass("Sound") then
  2428. PRT:FindFirstChildOfClass("Sound"):remove()
  2429. end
  2430. if PRT:FindFirstChildOfClass("Decal") then
  2431. PRT:FindFirstChildOfClass("Decal"):remove()
  2432. end
  2433. coroutine.resume(coroutine.create(function()
  2434. for i = 1, 100 do
  2435. Swait()
  2436. PRT.Transparency = PRT.Transparency + 1/100
  2437. end
  2438. PRT:remove()
  2439. end))
  2440. end
  2441. end
  2442. end
  2443. CreateSound(217767125, Torso, 10, 1)
  2444. local POS = RootPart.Orientation
  2445. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,6,0))
  2446. RootPart.Orientation = POS
  2447. RootJoint.Parent = RootPart
  2448. for i=0, 0.5, 0.1 / Animation_Speed do
  2449. Swait()
  2450. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2451. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.6, 0.75, -0.5) * ANGLES(RAD(0), RAD(-15), RAD(12)) * ANGLES(RAD(175 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 2.5 / Animation_Speed)
  2452. end
  2453. for i=0, 0.1, 0.1 / Animation_Speed do
  2454. Swait()
  2455. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, 0.5) * ANGLES(RAD(0), RAD(-45), RAD(12)) * ANGLES(RAD(45 - 2.5 * COS(SINE / 12) + 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.75 / Animation_Speed)
  2456. end
  2457. ATTACK = false
  2458. Rooted = false
  2459. end
  2460.  
  2461. function SpawnSmite(POS)
  2462. local HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, Character)
  2463. local EMITPOS = HITPOS
  2464. if HITFLOOR ~= nil then
  2465. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
  2466. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
  2467. EMITPOS = HITPOS
  2468. elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  2469. HITFLOOR,HITPOS = Raycast(POS+VT(0,1,0), (CF(POS, POS + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
  2470. EMITPOS = HITPOS
  2471. end
  2472. end
  2473. if HITFLOOR ~= nil then
  2474. ApplyAoE(EMITPOS,10)
  2475. WACKYEFFECT({EffectType = "Sphere", Size = VT(0,100000,0), Size2 = VT(10,100000,10), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  2476. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*2, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2477. WACKYEFFECT({EffectType = "Block", Size = VT(0,0,0), Size2 = VT(10,10,10)*1.5, Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 1, SoundVolume = 5})
  2478. for i = 1, 5 do
  2479. local TOPOS = CF(EMITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,12)
  2480. WACKYEFFECT({EffectType = "Slash", Size = VT(0,0,0), Size2 = VT(0.2,0,0.2), Transparency = 0, Transparency2 = 1, CFrame = CF(EMITPOS,TOPOS.p) * ANGLES(RAD(90), RAD(0), RAD(0)), MoveToPos = TOPOS.p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 419011114, SoundPitch = 1, SoundVolume = 5})
  2481. end
  2482. end
  2483. end
  2484.  
  2485. function SpawnMeteor(POS,SIZE,ISDEBREE,ORIPOS)
  2486. coroutine.resume(coroutine.create(function()
  2487. local METEOR = IT("Model",Effects)
  2488. METEOR.Name = "Meteorite"
  2489. local CENTER = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
  2490. METEOR.PrimaryPart = CENTER
  2491. local PRT = CreatePart(3, METEOR, "Granite", 0, 0, "Really black", "MeteorCenter", VT(5,5,5)*SIZE)
  2492. PRT.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2493. for i = 1, 15 do
  2494. local FIRE = CreatePart(3, METEOR, "Neon", 0, 0, "Really black", "Fire", VT(5.1,1,5.1)*SIZE)
  2495. FIRE.CFrame = CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  2496. end
  2497. if ISDEBREE ~= true then
  2498. METEOR:SetPrimaryPartCFrame(CF(POS) * ANGLES(RAD(MRANDOM(-15,15)), RAD(0), RAD(MRANDOM(-15,15)))*CF(0,500,0) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2499. else
  2500. METEOR:SetPrimaryPartCFrame(CF(ORIPOS,POS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2501. end
  2502. local IMPACT = false
  2503. CreateSound(463593339, CENTER, 10, 0.6)
  2504. if SIZE >= 3.5 then
  2505. for i = 1, MRANDOM(3,7) do
  2506. SpawnMeteor(CF(POS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,SIZE*12).p,SIZE/MRANDOM(4,5),true,CENTER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,SIZE*15).p)
  2507. end
  2508. end
  2509. for i = 1, 200 do
  2510. Swait()
  2511. local HITFLOOR,HITPOS = Raycast(CENTER.Position, CF(CENTER.Position,POS).lookVector, 3, Character)
  2512. if HITFLOOR == nil then
  2513. local ORI = CENTER.Orientation
  2514. METEOR:SetPrimaryPartCFrame(CF(HITPOS) * ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))))
  2515. else
  2516. if HITFLOOR.Anchored == true then
  2517. CreateDebreeRing(HITFLOOR,HITPOS,30*SIZE,VT(6,6,6)*SIZE,5)
  2518. CreateFlyingDebree(HITFLOOR,CF(HITPOS),8,VT(4,4,4)*SIZE,5,175)
  2519. end
  2520. IMPACT = true
  2521. break
  2522. end
  2523. end
  2524. if IMPACT == true then
  2525. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*4*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  2526. WACKYEFFECT({EffectType = "Block", Size = CENTER.Size, Size2 = VT(10,10,10)*3*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 201858144, SoundPitch = 1, SoundVolume = 5})
  2527. WACKYEFFECT({EffectType = "Sphere", Size = VT(SIZE*20,0,SIZE*20), Size2 = VT(0,SIZE*750,0), Transparency = 0, Transparency2 = 1, CFrame = CF(CENTER.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 1, SoundVolume = 5})
  2528. ApplyAoE(CENTER.Position,30*SIZE)
  2529. end
  2530. METEOR:remove()
  2531. end))
  2532. end
  2533. function Equivalent_Pain()
  2534. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  2535. if HITFLOOR then
  2536. ATTACK = true
  2537. Rooted = true
  2538. FULL = true
  2539. local GYRO = IT("BodyGyro",RootPart)
  2540. GYRO.D = 25
  2541. GYRO.P = 20000
  2542. GYRO.MaxTorque = VT(0,math.huge,0)
  2543. for i=0, 0.3, 0.1 / Animation_Speed do
  2544. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2545. Swait()
  2546. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-15)), 1 / Animation_Speed)
  2547. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2548. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.3) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2549. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(45), RAD(-12)) * ANGLES(RAD(-25), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2550. 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(-35)), 1 / Animation_Speed)
  2551. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(5)), 1 / Animation_Speed)
  2552. end
  2553. GYRO:remove()
  2554. CreateSound(12222200, RightArm, 10, 1)
  2555. for i=0, 0.4, 0.1 / Animation_Speed do
  2556. Swait()
  2557. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, -0.75) * ANGLES(RAD(40), RAD(0), RAD(35)), 1.5 / Animation_Speed)
  2558. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2559. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.45, -1.45) * ANGLES(RAD(75), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2560. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(-12)) * ANGLES(RAD(-35), RAD(55), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2561. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.5) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(65)), 1 / Animation_Speed)
  2562. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-15)), 1 / Animation_Speed)
  2563. end
  2564. CreateSound(289842971, RightArm, 10, 1)
  2565. coroutine.resume(coroutine.create(function()
  2566. local HIT,POS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(Mouse.Hit.p+VT(0,1,0), Mouse.Hit.p-VT(0,1,0))).lookVector, 45, Character)
  2567. local ECHO = POS
  2568. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") then
  2569. HIT,POS = Raycast(ECHO+VT(0,1,0), (CF(ECHO, ECHO + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent)
  2570. ECHO = POS
  2571. elseif HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  2572. HIT,POS = Raycast(ECHO+VT(0,1,0), (CF(ECHO, ECHO + VT(0, -1, 0))).lookVector, 100, HITFLOOR.Parent.Parent)
  2573. ECHO = POS
  2574. end
  2575. if ECHO.Y == HITPOS.Y then
  2576. local DISTANCE = (HITPOS - ECHO).Magnitude/3
  2577. local CFRAME = CF(HITPOS,ECHO)
  2578. local RANGE = math.ceil(DISTANCE)
  2579. for i = 1, RANGE-1 do
  2580. Swait(3)
  2581. local A = CFRAME*CF(0,0,-i*3)
  2582. ApplyAoE(A.p,4)
  2583. CreateFlyingDebree(HITFLOOR,A,2,VT(2,2,2),2,65)
  2584. end
  2585. local SIZE = 3
  2586. local POS = CFRAME*CF(0,0,-RANGE*3).p
  2587. WACKYEFFECT({Time = 75, EffectType = "Sphere", Size = VT(55,0,55)*SIZE, Size2 = VT(55,15,55)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 130972023, SoundPitch = 0.8, SoundVolume = 10})
  2588. WACKYEFFECT({EffectType = "Sphere", Size = VT(10,250,10)*SIZE, Size2 = VT(20,1000,20)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 178452241, SoundPitch = 1, SoundVolume = 10})
  2589. WACKYEFFECT({EffectType = "Sphere", Size = VT(30,150,30)*SIZE, Size2 = VT(50,300,50)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 178452241, SoundPitch = 1, SoundVolume = 10})
  2590. for i = 1, 9 do
  2591. WACKYEFFECT({TIME = 65, EffectType = "Sphere", Size = VT(5,5,0)*SIZE, Size2 = VT(0,0,35)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS+VT(0,15*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-25*SIZE), MoveToPos = CF(POS+VT(0,15*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-55*SIZE).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
  2592. end
  2593. for i = 1, 9 do
  2594. WACKYEFFECT({TIME = 65, EffectType = "Sphere", Size = VT(5,5,0)*SIZE, Size2 = VT(0,0,35)*SIZE, Transparency = 0, Transparency2 = 1, CFrame = CF(POS+VT(0,5*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-25*SIZE), MoveToPos = CF(POS+VT(0,5*SIZE,0))*ANGLES(RAD(0),RAD((360/9)*i),RAD(0))*ANGLES(RAD(25),RAD(0),RAD(0))*CF(0,0,-55*SIZE).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.8, SoundVolume = 5})
  2595. end
  2596. ApplyAoE(POS,30*SIZE)
  2597. CreateDebreeRing(HITFLOOR,POS,30*SIZE,VT(8,8,8)*SIZE,5)
  2598. CreateDebreeRing(HITFLOOR,POS,50*SIZE,VT(2,2,2)*SIZE,5)
  2599. end
  2600. end))
  2601. for i=0, 0.6, 0.1 / Animation_Speed do
  2602. Swait()
  2603. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, -0.75) * ANGLES(RAD(40), RAD(0), RAD(35)), 1.5 / Animation_Speed)
  2604. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2605. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.45, -1.45) * ANGLES(RAD(75), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2606. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-25), RAD(-12)) * ANGLES(RAD(-35), RAD(55), RAD(0)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2607. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.5) * ANGLES(RAD(0), RAD(55), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(65)), 1 / Animation_Speed)
  2608. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.6, -0.2) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(-15)), 1 / Animation_Speed)
  2609. end
  2610. FULL = false
  2611. ATTACK = false
  2612. Rooted = false
  2613. end
  2614. end
  2615.  
  2616. function ReeeEEEEEE()
  2617. ATTACK = true
  2618. Rooted = false
  2619. Speed = 12
  2620. local FX = CreateSound(198165368, Head, 4, 0.5, false)
  2621. repeat
  2622. Swait()
  2623. FX.Parent = Head
  2624. local CHILDREN = workspace:GetDescendants()
  2625. for index, CHILD in pairs(CHILDREN) do
  2626. if CHILD.ClassName == "Model" and CHILD ~= Character then
  2627. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2628. if HUM then
  2629. local TORSO = CHILD:FindFirstChild("Head")
  2630. if TORSO then
  2631. if (TORSO.Position - Head.Position).Magnitude <= 25 then
  2632. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(5,5,5), Transparency = 0, Transparency2 = 1, CFrame = CF(TORSO.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2633. TORSO:remove()
  2634. if CHILD:FindFirstChild("Torso") then
  2635. Ragdoll(CHILD,Torso,true)
  2636. elseif CHILD:FindFirstChild("UpperTorso") then
  2637. R15Ragdoll(CHILD,true)
  2638. end
  2639. end
  2640. end
  2641. end
  2642. end
  2643. end
  2644. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.5, 0) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
  2645. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-45), RAD(0), RAD(0)), 1 / Animation_Speed)
  2646. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(15)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2647. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-15)) * ANGLES(RAD(0), RAD(-15), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2648. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(-45), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2649. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(-45), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2650. until FX.Playing == false
  2651. Speed = 16
  2652. ATTACK = false
  2653. Rooted = false
  2654. end
  2655.  
  2656. function Charge(TIME,GYRO)
  2657. local SND = CreateSound(ENERGYSOUND,Torso,6,TIME,false)
  2658. local G = nil
  2659. if GYRO == true then
  2660. G = IT("BodyGyro",RootPart)
  2661. G.D = 250
  2662. G.P = 200000
  2663. G.MaxTorque = VT(math.huge,math.huge,math.huge)
  2664. end
  2665. for i=0, TIME, 0.1 / Animation_Speed do
  2666. Swait()
  2667. if G then
  2668. G.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2669. end
  2670. WACKYEFFECT({TIME = 25, EffectType = "Sphere", Size = VT(1.2,1.2,1.2), Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = BasePart.CFrame, MoveToPos = BasePart.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,-4).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2671. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2672. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2673. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2674. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2675. 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)
  2676. 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)
  2677. end
  2678. SND:remove()
  2679. if G then
  2680. return G
  2681. end
  2682. end
  2683.  
  2684. function Corrupted_Beam()
  2685. ATTACK = true
  2686. Rooted = false
  2687. local GRAV = IT("BodyPosition",RootPart)
  2688. GRAV.D = 75
  2689. GRAV.P = 20000
  2690. GRAV.MaxForce = VT(math.huge,math.huge,math.huge)
  2691. GRAV.Position = RootPart.Position
  2692. local GYRO = Charge(2,true)
  2693. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, "Black", "Beam", VT(15,15,0))
  2694. MakeForm(BEAM,"Ball")
  2695. CreateSound(BEAMSOUND,BEAM,10,1,false)
  2696. CreateSound(BEAMSOUND,BEAM,10,0.9,false)
  2697. CreateSound(BEAMSOUND,BEAM,10,0.8,false)
  2698. for i = 1, 150 do
  2699. Swait()
  2700. BEAM.Size = BEAM.Size + VT(-0.1,-0.1,2)
  2701. ApplyAoE(BEAM.CFrame*CF(0,0,-BEAM.Size.Z/2).p,BEAM.Size.Y/2,50,200,0,false)
  2702. WACKYEFFECT({TIME = 25, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,0,0), Transparency = 0.5, Transparency2 = 1, CFrame = BEAM.CFrame*CF(0,0,BEAM.Size.Z/2), MoveToPos = BEAM.CFrame*CF(0,0,BEAM.Size.Z/2)*ANGLES(RAD(90),RAD(MRANDOM(0,360)),RAD(0))*CF(0,0.3,-25).p, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2703. BEAM.CFrame = CF(Torso.Position,Torso.CFrame*CF(0,0,-1).p)*CF(0,0,-2-(BEAM.Size.Z/2))
  2704. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2705. 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)
  2706. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2707. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2708. 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)
  2709. 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)
  2710. end
  2711. GRAV:remove()
  2712. BEAM:remove()
  2713. GYRO:remove()
  2714. ATTACK = false
  2715. Rooted = false
  2716. end
  2717.  
  2718. function Corrupted_Explosion()
  2719. ATTACK = true
  2720. Rooted = true
  2721. for i=0, 1, 0.1 / Animation_Speed do
  2722. Swait()
  2723. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.3, 0) * ANGLES(RAD(0), RAD(0), RAD(-75)), 0.6 / Animation_Speed)
  2724. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(75)), 0.6 / Animation_Speed)
  2725. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(15)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2726. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)) * LEFTSHOULDERC0, 0.1 / Animation_Speed)
  2727. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2728. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2729. end
  2730. for i=0, 0.4, 0.1 / Animation_Speed do
  2731. Swait()
  2732. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -1, -0.3) * ANGLES(RAD(75), RAD(0), RAD(75)), 1 / Animation_Speed)
  2733. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 1/ Animation_Speed)
  2734. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2735. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2736. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.01) * ANGLES(RAD(75), RAD(25), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  2737. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  2738. end
  2739. local BEAM = CreatePart(3, Effects, "Neon", 0, 0, "Black", "Beam", VT(0,0,0))
  2740. local BEAM2 = CreatePart(3, Effects, "Neon", 0, 0, "Black", "Beam", VT(0,0,0))
  2741. MakeForm(BEAM,"Ball")
  2742. MakeForm(BEAM2,"Ball")
  2743. BEAM.CFrame = CF(RootPart.Position)
  2744. BEAM2.CFrame = CF(RootPart.Position)
  2745. CreateSound(EXPLOSIONSOUND,RootPart,10,1,false)
  2746. for i=1, 100 do
  2747. Swait()
  2748. BEAM.Size = BEAM.Size + VT(0.7,8,0.7)
  2749. BEAM2.Size = BEAM2.Size + VT(2,2,2)
  2750. ApplyAoE(BEAM2.Position,BEAM2.Size.Z/2,5,5,15,true)
  2751. BEAM.CFrame = CF(RootPart.Position)
  2752. BEAM2.CFrame = CF(RootPart.Position)
  2753. WACKYEFFECT({TIME = 5+i, EffectType = "Swirl", Size = BEAM2.Size*1.15, Size2 = VT(0,BEAM.Size.Y,0), Transparency = 0.8, Transparency2 = 1, CFrame = BEAM.CFrame * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2754. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -1, -0.3) * ANGLES(RAD(75), RAD(0), RAD(75)), 1 / Animation_Speed)
  2755. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 1/ Animation_Speed)
  2756. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2757. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2758. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.01) * ANGLES(RAD(75), RAD(25), RAD(0)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  2759. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  2760. end
  2761. WACKYEFFECT({TIME = 75, EffectType = "Sphere", Size = BEAM.Size, Size2 = VT(0,BEAM.Size.Y,0), Transparency = 0, Transparency2 = 0, CFrame = BEAM.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2762. WACKYEFFECT({TIME = 75, EffectType = "Sphere", Size = BEAM2.Size, Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 0.6, CFrame = BEAM2.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2763. BEAM2:remove()
  2764. BEAM:remove()
  2765. ATTACK = false
  2766. Rooted = false
  2767. end
  2768.  
  2769. function Corrupted_Immobilization()
  2770. ATTACK = true
  2771. Rooted = true
  2772. Charge(2,false)
  2773. local SND = CreateSound(EXPLOSIONSOUND,RootPart,10,1,false)
  2774. local SND2 = CreateSound(ENERGYSOUND,RootPart,10,1,false)
  2775. for i = 1, 60 do
  2776. Swait()
  2777. ApplyAoE(RootPart.Position,i*1.3,10,20,-200,true)
  2778. SND.Pitch = SND.Pitch - 1/60
  2779. SND2.Pitch = SND.Pitch
  2780. WACKYEFFECT({TIME = 4, EffectType = "Wave", Size = VT(i*2,10,i*2), Size2 = VT(i*2,10,i*2), Transparency = 0.9, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2781. WACKYEFFECT({TIME = math.ceil(15-(i/10)), EffectType = "Wave", Size = VT(0,10,0), Size2 = VT(i*2,6,i*2), Transparency = 0.8, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(0), RAD(i*5), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2782. WACKYEFFECT({TIME = math.ceil(15-(i/10)), EffectType = "Wave", Size = VT(0,6,0), Size2 = VT(i*1.6,10,i*1.6), Transparency = 0.8, Transparency2 = 1, CFrame = CF(RootPart.Position-VT(0,3,0)) * ANGLES(RAD(MRANDOM(-5,5)), RAD(i*5), RAD(MRANDOM(-5,5))), MoveToPos = nil, RotationX = 0, RotationY = i/8, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2783. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  2784. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2785. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(-45), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2786. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-45), RAD(45), RAD(-45)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2787. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2788. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-65), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2789. end
  2790. SND:remove()
  2791. SND2:remove()
  2792. ATTACK = false
  2793. Rooted = false
  2794. end
  2795.  
  2796. --//=================================\\
  2797. --|| ASSIGN THINGS TO KEYS
  2798. --\\=================================//
  2799.  
  2800. function MouseDown(Mouse)
  2801. if ATTACK == false then
  2802. Click()
  2803. end
  2804. end
  2805.  
  2806. function MouseUp(Mouse)
  2807. HOLD = false
  2808. end
  2809.  
  2810. function KeyDown(Key)
  2811. KEYHOLD = true
  2812. if Key == "z" and ATTACK == false then
  2813. Corrupted_Beam()
  2814. end
  2815.  
  2816. if Key == "e" and ATTACK == false then
  2817. ReeeEEEEEE()
  2818. end
  2819.  
  2820. if Key == "r" and ATTACK == false then
  2821. Teleport()
  2822. end
  2823.  
  2824. if Key == "q" and ATTACK == false then
  2825. Equivalent_Pain()
  2826. end
  2827.  
  2828. if Key == "x" and ATTACK == false then
  2829. Corrupted_Explosion()
  2830. end
  2831.  
  2832. if Key == "c" and ATTACK == false then
  2833. Corrupted_Immobilization()
  2834. elseif Key == "1" and ATTACK == false then
  2835. if CHOICE ~= 1 then
  2836. CHOICE = 1
  2837. sick:Play()
  2838. end
  2839. elseif Key == "2" and ATTACK == false then
  2840. if CHOICE ~= 2 then
  2841. CHOICE = 2
  2842. sick:Play()
  2843. end
  2844. elseif Key == "3" and ATTACK == false then
  2845. if CHOICE ~= 3 then
  2846. CHOICE = 3
  2847. sick:Play()
  2848. end
  2849. elseif Key == "4" and ATTACK == false then
  2850. if CHOICE ~= 4 then
  2851. CHOICE = 4
  2852. sick:Play()
  2853. end
  2854.  
  2855. end
  2856. end
  2857.  
  2858.  
  2859.  
  2860. function KeyUp(Key)
  2861. KEYHOLD = false
  2862. end
  2863.  
  2864. --//=================================\\
  2865. --\\=================================//
  2866.  
  2867. function unanchor()
  2868. if UNANCHOR == true then
  2869. g = Character:GetChildren()
  2870. for i = 1, #g do
  2871. if g[i].ClassName == "Part" then
  2872. g[i].Anchored = false
  2873. end
  2874. end
  2875. end
  2876. end
  2877.  
  2878. --//=================================\\
  2879. --|| WRAP THE WHOLE SCRIPT UP
  2880. --\\=================================//
  2881.  
  2882. Humanoid.Changed:connect(function(Jump)
  2883. if Jump == "Jump" and (Disable_Jump == true) then
  2884. Humanoid.Jump = false
  2885. end
  2886. end)
  2887.  
  2888. while true do
  2889. Swait()
  2890. script.Parent = WEAPONGUI
  2891. ANIMATE.Parent = nil
  2892. if Humanoid then
  2893. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  2894. IDLEANIMATION:Play()
  2895. end
  2896. SINE = SINE + CHANGE
  2897. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2898. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2899. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  2900. local WALKSPEEDVALUE = 5 / (Humanoid.WalkSpeed / 16)
  2901. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  2902. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2903. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2904. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(45 * COS(SINE / WALKSPEEDVALUE))), 1 / Animation_Speed)
  2905. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.125 * COS(SINE / WALKSPEEDVALUE) +0.2+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(45 * COS(SINE / WALKSPEEDVALUE))), 1 / Animation_Speed)
  2906. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  2907. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2908. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2909. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2910. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2911. end
  2912. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  2913. ANIM = "Jump"
  2914. if ATTACK == false then
  2915. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2916. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2917. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  2918. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  2919. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2920. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  2921. end
  2922. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  2923. ANIM = "Fall"
  2924. if ATTACK == false then
  2925. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2926. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2927. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  2928. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  2929. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  2930. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  2931. end
  2932. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  2933. ANIM = "Idle"
  2934. if ATTACK == false then
  2935. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0 - 0.05 * COS(SINE / 12), 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2936. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2937. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-15), RAD(5 + 1 * COS(SINE / 12))) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2938. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(15), RAD(-5 - 1 * COS(SINE / 12))) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2939. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2940. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(-2 + 2 * COS(SINE / 12)), RAD(-74), RAD(0)) * ANGLES(RAD(-2), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2941. if VALUE1 == false and MRANDOM(1,200) == 1 then
  2942. coroutine.resume(coroutine.create(function()
  2943. VALUE1 = true
  2944. for i = 1, 25 do
  2945. Swait()
  2946. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD((15+MRANDOM(-15,15)/15)), RAD(0)), 3 / Animation_Speed)
  2947.  
  2948. end
  2949. VALUE1 = false
  2950. end))
  2951. end
  2952. end
  2953.  
  2954. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  2955. ANIM = "Walk"
  2956. if ATTACK == false then
  2957. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2958. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 8 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2959. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.15 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(25 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2960. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(-25 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2961. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
  2962. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
  2963. end
  2964. end
  2965.  
  2966.  
  2967. sick.Parent = Torso
  2968. sick.Playing = true
  2969.  
  2970.  
  2971. unanchor()
  2972. Humanoid.MaxHealth = "inf"
  2973. Humanoid.Health = "inf"
  2974. if Rooted == false then
  2975. Disable_Jump = false
  2976. Humanoid.WalkSpeed = Speed
  2977. elseif Rooted == true then
  2978. Disable_Jump = true
  2979. Humanoid.WalkSpeed = 0
  2980. end
  2981. end
  2982. --//=================================\\
  2983. --\\=================================//
  2984.  
  2985.  
  2986.  
  2987.  
  2988.  
  2989. --//====================================================\\--
  2990. --|| END OF SCRIPT
  2991. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement