Advertisement
Im_Meme

Dead Winter

Aug 11th, 2018
479
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 80.01 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER EDITED BY DUCKILES
  3. --\\====================================================//--
  4.  
  5. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  6. local Player,game,owner = owner,game
  7. local RealPlayer = Player
  8. do
  9. print("FE Compatibility code by Mokiros")
  10. local rp = RealPlayer
  11. script.Parent = rp.Character
  12.  
  13. --RemoteEvent for communicating
  14. local Event = Instance.new("RemoteEvent")
  15. Event.Name = "UserInput_Event"
  16.  
  17. --Fake event to make stuff like Mouse.KeyDown work
  18. local function fakeEvent()
  19. local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  20. t.connect = t.Connect
  21. return t
  22. end
  23.  
  24. --Creating fake input objects with fake variables
  25. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  26. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  27. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  28. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  29. end}
  30. --Merged 2 functions into one by checking amount of arguments
  31. CAS.UnbindAction = CAS.BindAction
  32.  
  33. --This function will trigger the events that have been :Connect()'ed
  34. local function te(self,ev,...)
  35. local t = m[ev]
  36. if t and t._fakeEvent then
  37. for _,f in pairs(t.Functions) do
  38. f(...)
  39. end
  40. end
  41. end
  42. m.TrigEvent = te
  43. UIS.TrigEvent = te
  44.  
  45. Event.OnServerEvent:Connect(function(plr,io)
  46. if plr~=rp then return end
  47. m.Target = io.Target
  48. m.Hit = io.Hit
  49. if not io.isMouse then
  50. local b = io.UserInputState == Enum.UserInputState.Begin
  51. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  52. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  53. end
  54. for _,t in pairs(CAS.Actions) do
  55. for _,k in pairs(t.Keys) do
  56. if k==io.KeyCode then
  57. t.Function(t.Name,io.UserInputState,io)
  58. end
  59. end
  60. end
  61. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  62. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  63. end
  64. end)
  65. Event.Parent = NLS([==[
  66. local Player = game:GetService("Players").LocalPlayer
  67. local Event = script:WaitForChild("UserInput_Event")
  68.  
  69. local Mouse = Player:GetMouse()
  70. local UIS = game:GetService("UserInputService")
  71. local input = function(io,a)
  72. if a then return end
  73. --Since InputObject is a client-side instance, we create and pass table instead
  74. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  75. end
  76. UIS.InputBegan:Connect(input)
  77. UIS.InputEnded:Connect(input)
  78.  
  79. local h,t
  80. --Give the server mouse data 30 times every second, but only if the values changed
  81. --If player is not moving their mouse, client won't fire events
  82. while wait(1/30) do
  83. if h~=Mouse.Hit or t~=Mouse.Target then
  84. h,t=Mouse.Hit,Mouse.Target
  85. Event:FireServer({isMouse=true,Target=t,Hit=h})
  86. end
  87. end]==],Player.Character)
  88.  
  89. ----Sandboxed game object that allows the usage of client-side methods and services
  90. --Real game object
  91. local _rg = game
  92.  
  93. --Metatable for fake service
  94. local fsmt = {
  95. __index = function(self,k)
  96. local s = rawget(self,"_RealService")
  97. if s then return s[k] end
  98. end,
  99. __newindex = function(self,k,v)
  100. local s = rawget(self,"_RealService")
  101. if s then s[k]=v end
  102. end,
  103. __call = function(self,...)
  104. local s = rawget(self,"_RealService")
  105. if s then return s(...) end
  106. end
  107. }
  108. local function FakeService(t,RealService)
  109. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  110. return setmetatable(t,fsmt)
  111. end
  112.  
  113. --Fake game object
  114. local g = {
  115. GetService = function(self,s)
  116. return self[s]
  117. end,
  118. Players = FakeService({
  119. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  120. },"Players"),
  121. UserInputService = FakeService(UIS,"UserInputService"),
  122. ContextActionService = FakeService(CAS,"ContextActionService"),
  123. }
  124. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  125. g.service = g.GetService
  126.  
  127. g.RunService = FakeService({
  128. RenderStepped = _rg:GetService("RunService").Heartbeat,
  129. BindToRenderStep = function(self,name,_,fun)
  130. self._btrs[name] = self.Heartbeat:Connect(fun)
  131. end,
  132. UnbindFromRenderStep = function(self,name)
  133. self._btrs[name]:Disconnect()
  134. end,
  135. },"RunService")
  136.  
  137. setmetatable(g,{
  138. __index=function(self,s)
  139. return _rg:GetService(s) or typeof(_rg[s])=="function"
  140. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  141. end,
  142. __newindex = fsmt.__newindex,
  143. __call = fsmt.__call
  144. })
  145. --Changing owner to fake player object to support owner:GetMouse()
  146. game,owner = g,g.Players.LocalPlayer
  147. end
  148.  
  149. script.Name = "Dead winter"
  150. wait(0.2)
  151.  
  152. Player = owner
  153. PlayerGui = Player.PlayerGui
  154. Cam = workspace.CurrentCamera
  155. Backpack = Player.Backpack
  156. Character = Player.Character
  157. Humanoid = Character.Humanoid
  158. Mouse = Player:GetMouse()
  159. RootPart = Character["HumanoidRootPart"]
  160. Torso = Character["Torso"]
  161. Head = Character["Head"]
  162. RightArm = Character["Right Arm"]
  163. LeftArm = Character["Left Arm"]
  164. RightLeg = Character["Right Leg"]
  165. LeftLeg = Character["Left Leg"]
  166. RootJoint = RootPart["RootJoint"]
  167. Neck = Torso["Neck"]
  168. RightShoulder = Torso["Right Shoulder"]
  169. LeftShoulder = Torso["Left Shoulder"]
  170. RightHip = Torso["Right Hip"]
  171. LeftHip = Torso["Left Hip"]
  172.  
  173. IT = Instance.new
  174. CF = CFrame.new
  175. VT = Vector3.new
  176. RAD = math.rad
  177. C3 = Color3.new
  178. UD2 = UDim2.new
  179. BRICKC = BrickColor.new
  180. ANGLES = CFrame.Angles
  181. EULER = CFrame.fromEulerAnglesXYZ
  182. COS = math.cos
  183. ACOS = math.acos
  184. SIN = math.sin
  185. ASIN = math.asin
  186. ABS = math.abs
  187. MRANDOM = math.random
  188. FLOOR = math.floor
  189.  
  190. --//=================================\\
  191. --|| USEFUL VALUES
  192. --\\=================================//
  193.  
  194. Animation_Speed = 3
  195. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  196. local Speed = 16
  197. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  198. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  199. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  200. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  201. local DAMAGEMULTIPLIER = 1
  202. local ANIM = "Idle"
  203. local ATTACK = false
  204. local EQUIPPED = false
  205. local HOLD = false
  206. local COMBO = 1
  207. local Rooted = true
  208. local SINE = 0
  209. local KEYHOLD = false
  210. local CHANGE = 2 / Animation_Speed
  211. local WALKINGANIM = false
  212. local VALUE1 = true
  213. local VALUE2 = false
  214. local ROBLOXIDLEANIMATION = IT("Animation")
  215. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  216. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  217. --ROBLOXIDLEANIMATION.Parent = Humanoid
  218. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  219. WEAPONGUI.Name = "Weapon GUI"
  220. local Weapon = IT("Model")
  221. Weapon.Name = "Adds"
  222. local Effects = IT("Folder", Weapon)
  223. Effects.Name = "Effects"
  224. local ANIMATOR = Humanoid.Animator
  225. local ANIMATE = Character.Animate
  226. local UNANCHOR = true
  227. local COLOR = C3(102,255,255)
  228. Player_Size = 1 --Size of the player.
  229.  
  230. --//=================================\\
  231. --\\=================================//
  232.  
  233.  
  234. --//=================================\\
  235. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  236. --\\=================================//
  237.  
  238. ArtificialHB = Instance.new("BindableEvent", script)
  239. ArtificialHB.Name = "ArtificialHB"
  240.  
  241. script:WaitForChild("ArtificialHB")
  242.  
  243. frame = Frame_Speed
  244. tf = 0
  245. allowframeloss = false
  246. tossremainder = false
  247. lastframe = tick()
  248. script.ArtificialHB:Fire()
  249.  
  250. game:GetService("RunService").Heartbeat:connect(function(s, p)
  251. tf = tf + s
  252. if tf >= frame then
  253. if allowframeloss then
  254. script.ArtificialHB:Fire()
  255. lastframe = tick()
  256. else
  257. for i = 1, math.floor(tf / frame) do
  258. script.ArtificialHB:Fire()
  259. end
  260. lastframe = tick()
  261. end
  262. if tossremainder then
  263. tf = 0
  264. else
  265. tf = tf - frame * math.floor(tf / frame)
  266. end
  267. end
  268. end)
  269.  
  270. --//=================================\\
  271. --\\=================================//
  272.  
  273. --//=================================\\
  274. --|| SOME FUNCTIONS
  275. --\\=================================//
  276.  
  277. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  278. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  279. end
  280.  
  281. function PositiveAngle(NUMBER)
  282. if NUMBER >= 0 then
  283. NUMBER = 0
  284. end
  285. return NUMBER
  286. end
  287.  
  288. function NegativeAngle(NUMBER)
  289. if NUMBER <= 0 then
  290. NUMBER = 0
  291. end
  292. return NUMBER
  293. end
  294.  
  295. function Swait(NUMBER)
  296. if NUMBER == 0 or NUMBER == nil then
  297. ArtificialHB.Event:wait()
  298. else
  299. for i = 1, NUMBER do
  300. ArtificialHB.Event:wait()
  301. end
  302. end
  303. end
  304.  
  305. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  306. local NEWMESH = IT(MESH)
  307. if MESH == "SpecialMesh" then
  308. NEWMESH.MeshType = MESHTYPE
  309. if MESHID ~= "nil" and MESHID ~= "" then
  310. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  311. end
  312. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  313. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  314. end
  315. end
  316. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  317. NEWMESH.Scale = SCALE
  318. NEWMESH.Parent = PARENT
  319. return NEWMESH
  320. end
  321.  
  322. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  323. local NEWPART = IT("Part")
  324. NEWPART.formFactor = FORMFACTOR
  325. NEWPART.Reflectance = REFLECTANCE
  326. NEWPART.Transparency = TRANSPARENCY
  327. NEWPART.CanCollide = false
  328. NEWPART.Locked = true
  329. NEWPART.Anchored = true
  330. if ANCHOR == false then
  331. NEWPART.Anchored = false
  332. end
  333. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  334. NEWPART.Name = NAME
  335. NEWPART.Size = SIZE
  336. NEWPART.Position = Torso.Position
  337. NEWPART.Material = MATERIAL
  338. NEWPART:BreakJoints()
  339. NEWPART.Parent = PARENT
  340. return NEWPART
  341. end
  342.  
  343. local function weldBetween(a, b)
  344. local weldd = Instance.new("ManualWeld")
  345. weldd.Part0 = a
  346. weldd.Part1 = b
  347. weldd.C0 = CFrame.new()
  348. weldd.C1 = b.CFrame:inverse() * a.CFrame
  349. weldd.Parent = a
  350. return weldd
  351. end
  352.  
  353.  
  354. function QuaternionFromCFrame(cf)
  355. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  356. local trace = m00 + m11 + m22
  357. if trace > 0 then
  358. local s = math.sqrt(1 + trace)
  359. local recip = 0.5 / s
  360. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  361. else
  362. local i = 0
  363. if m11 > m00 then
  364. i = 1
  365. end
  366. if m22 > (i == 0 and m00 or m11) then
  367. i = 2
  368. end
  369. if i == 0 then
  370. local s = math.sqrt(m00 - m11 - m22 + 1)
  371. local recip = 0.5 / s
  372. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  373. elseif i == 1 then
  374. local s = math.sqrt(m11 - m22 - m00 + 1)
  375. local recip = 0.5 / s
  376. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  377. elseif i == 2 then
  378. local s = math.sqrt(m22 - m00 - m11 + 1)
  379. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  380. end
  381. end
  382. end
  383.  
  384. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  385. local xs, ys, zs = x + x, y + y, z + z
  386. local wx, wy, wz = w * xs, w * ys, w * zs
  387. local xx = x * xs
  388. local xy = x * ys
  389. local xz = x * zs
  390. local yy = y * ys
  391. local yz = y * zs
  392. local zz = z * zs
  393. 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))
  394. end
  395.  
  396. function QuaternionSlerp(a, b, t)
  397. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  398. local startInterp, finishInterp;
  399. if cosTheta >= 0.0001 then
  400. if (1 - cosTheta) > 0.0001 then
  401. local theta = ACOS(cosTheta)
  402. local invSinTheta = 1 / SIN(theta)
  403. startInterp = SIN((1 - t) * theta) * invSinTheta
  404. finishInterp = SIN(t * theta) * invSinTheta
  405. else
  406. startInterp = 1 - t
  407. finishInterp = t
  408. end
  409. else
  410. if (1 + cosTheta) > 0.0001 then
  411. local theta = ACOS(-cosTheta)
  412. local invSinTheta = 1 / SIN(theta)
  413. startInterp = SIN((t - 1) * theta) * invSinTheta
  414. finishInterp = SIN(t * theta) * invSinTheta
  415. else
  416. startInterp = t - 1
  417. finishInterp = t
  418. end
  419. end
  420. 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
  421. end
  422.  
  423. function Clerp(a, b, t)
  424. local qa = {QuaternionFromCFrame(a)}
  425. local qb = {QuaternionFromCFrame(b)}
  426. local ax, ay, az = a.x, a.y, a.z
  427. local bx, by, bz = b.x, b.y, b.z
  428. local _t = 1 - t
  429. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  430. end
  431.  
  432. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  433. local frame = IT("Frame")
  434. frame.BackgroundTransparency = TRANSPARENCY
  435. frame.BorderSizePixel = BORDERSIZEPIXEL
  436. frame.Position = POSITION
  437. frame.Size = SIZE
  438. frame.BackgroundColor3 = COLOR
  439. frame.BorderColor3 = BORDERCOLOR
  440. frame.Name = NAME
  441. frame.Parent = PARENT
  442. return frame
  443. end
  444.  
  445. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  446. local label = IT("TextLabel")
  447. label.BackgroundTransparency = 1
  448. label.Size = UD2(1, 0, 1, 0)
  449. label.Position = UD2(0, 0, 0, 0)
  450. label.TextColor3 = TEXTCOLOR
  451. label.TextStrokeTransparency = STROKETRANSPARENCY
  452. label.TextTransparency = TRANSPARENCY
  453. label.FontSize = TEXTFONTSIZE
  454. label.Font = TEXTFONT
  455. label.BorderSizePixel = BORDERSIZEPIXEL
  456. label.TextScaled = false
  457. label.Text = TEXT
  458. label.Name = NAME
  459. label.Parent = PARENT
  460. return label
  461. end
  462.  
  463. function NoOutlines(PART)
  464. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  465. end
  466.  
  467. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  468. local NEWWELD = IT(TYPE)
  469. NEWWELD.Part0 = PART0
  470. NEWWELD.Part1 = PART1
  471. NEWWELD.C0 = C0
  472. NEWWELD.C1 = C1
  473. NEWWELD.Parent = PARENT
  474. return NEWWELD
  475. end
  476.  
  477. local S = IT("Sound")
  478. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  479. local NEWSOUND = nil
  480. coroutine.resume(coroutine.create(function()
  481. NEWSOUND = S:Clone()
  482. NEWSOUND.Parent = PARENT
  483. NEWSOUND.Volume = VOLUME
  484. NEWSOUND.Pitch = PITCH
  485. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  486. NEWSOUND:play()
  487. if DOESLOOP == true then
  488. NEWSOUND.Looped = true
  489. else
  490. repeat wait(1) until NEWSOUND.Playing == false
  491. NEWSOUND:remove()
  492. end
  493. end))
  494. return NEWSOUND
  495. end
  496.  
  497. function CFrameFromTopBack(at, top, back)
  498. local right = top:Cross(back)
  499. 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)
  500. end
  501.  
  502. --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})
  503. function WACKYEFFECT(Table)
  504. local TYPE = (Table.EffectType or "Sphere")
  505. local SIZE = (Table.Size or VT(1,1,1))
  506. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  507. local TRANSPARENCY = (Table.Transparency or 0)
  508. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  509. local CFRAME = (Table.CFrame or Torso.CFrame)
  510. local MOVEDIRECTION = (Table.MoveToPos or nil)
  511. local ROTATION1 = (Table.RotationX or 0)
  512. local ROTATION2 = (Table.RotationY or 0)
  513. local ROTATION3 = (Table.RotationZ or 0)
  514. local MATERIAL = (Table.Material or "Neon")
  515. local COLOR = (Table.Color or C3(1,1,1))
  516. local TIME = (Table.Time or 45)
  517. local SOUNDID = (Table.SoundID or nil)
  518. local SOUNDPITCH = (Table.SoundPitch or nil)
  519. local SOUNDVOLUME = (Table.SoundVolume or nil)
  520. coroutine.resume(coroutine.create(function()
  521. local PLAYSSOUND = false
  522. local SOUND = nil
  523. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  524. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  525. PLAYSSOUND = true
  526. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  527. end
  528. EFFECT.Color = COLOR
  529. local MSH = nil
  530. if TYPE == "Sphere" then
  531. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  532. elseif TYPE == "Block" then
  533. MSH = IT("BlockMesh",EFFECT)
  534. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  535. elseif TYPE == "Wave" then
  536. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  537. elseif TYPE == "Ring" then
  538. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  539. elseif TYPE == "Slash" then
  540. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  541. elseif TYPE == "Round Slash" then
  542. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  543. elseif TYPE == "Swirl" then
  544. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  545. elseif TYPE == "Skull" then
  546. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  547. elseif TYPE == "Crystal" then
  548. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  549. end
  550. if MSH ~= nil then
  551. local MOVESPEED = nil
  552. if MOVEDIRECTION ~= nil then
  553. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  554. end
  555. local GROWTH = SIZE - ENDSIZE
  556. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  557. if TYPE == "Block" then
  558. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  559. else
  560. EFFECT.CFrame = CFRAME
  561. end
  562. for LOOP = 1, TIME+1 do
  563. Swait()
  564. MSH.Scale = MSH.Scale - GROWTH/TIME
  565. if TYPE == "Wave" then
  566. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  567. end
  568. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  569. if TYPE == "Block" then
  570. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  571. else
  572. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  573. end
  574. if MOVEDIRECTION ~= nil then
  575. local ORI = EFFECT.Orientation
  576. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  577. EFFECT.Orientation = ORI
  578. end
  579. end
  580. if PLAYSSOUND == false then
  581. EFFECT:remove()
  582. else
  583. repeat Swait() until SOUND.Playing == false
  584. EFFECT:remove()
  585. end
  586. else
  587. if PLAYSSOUND == false then
  588. EFFECT:remove()
  589. else
  590. repeat Swait() until SOUND.Playing == false
  591. EFFECT:remove()
  592. end
  593. end
  594. end))
  595. end
  596. --Lightning({Material = "Neon", FadeIn = false, Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 15, Thicken = false})
  597. function Lightning(Table)
  598. local Color = Table.Color or C3(1,1,1)
  599. local StartPos = Table.Start or Torso.Position
  600. local EndPos = Table.End or Mouse.Hit.p
  601. local SegmentLength = Table.SegmentL or 2
  602. local Thickness = Table.Thickness or 0.1
  603. local Dissapear = Table.DoesFade or false
  604. local Parent = Table.Ignore or Character
  605. local MaxDist = Table.MaxDist or 400
  606. local Branches = Table.Branches or false
  607. local Thicken = Table.Thicken or false
  608. local FadeTime = Table.FadeTime or 15
  609. local FadeIn = Table.FadeIn or false
  610. local Material = Table.Material or "Neon"
  611. local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  612. local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
  613. local LIGHTNINGMODEL = IT("Model",Effects)
  614. LIGHTNINGMODEL.Name = "Lightning"
  615. local LastBolt = nil
  616. for E = 1, DISTANCE do
  617. local ExtraSize = 0
  618. if Thicken == true then
  619. ExtraSize = (DISTANCE-E)/15
  620. end
  621. local TRANSPARENCY = 0
  622. if FadeIn == true then
  623. TRANSPARENCY = 1-(E/(DISTANCE/1.5))
  624. if TRANSPARENCY < 0 then
  625. TRANSPARENCY = 0
  626. end
  627. end
  628. local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  629. PART.Color = Color
  630. MakeForm(PART,"Cyl")
  631. if LastBolt == nil then
  632. PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  633. else
  634. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  635. end
  636. LastBolt = PART
  637. if Branches == true and E < (DISTANCE-5) then
  638. local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  639. if CHOICE == 1 then
  640. local LASTBRANCH = nil
  641. for i = 1, MRANDOM(2,5) do
  642. local ExtraSize2 = 0
  643. if Thicken == true then
  644. ExtraSize = ((DISTANCE-E)/25)/i
  645. end
  646. local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  647. PART.Color = Color
  648. MakeForm(PART,"Cyl")
  649. if LASTBRANCH == nil then
  650. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  651. else
  652. PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  653. end
  654. LASTBRANCH = PART
  655. end
  656. end
  657. end
  658. end
  659. if Dissapear == true then
  660. coroutine.resume(coroutine.create(function()
  661. for i = 1, FadeTime do
  662. Swait()
  663. for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  664. if c.ClassName == "Part" then
  665. c.Transparency = c.Transparency + (i/FadeTime)/10
  666. end
  667. end
  668. end
  669. LIGHTNINGMODEL:remove()
  670. end))
  671. elseif Dissapear == false then
  672. Debris:AddItem(LIGHTNINGMODEL,0.1)
  673. end
  674. return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  675. end
  676. function MakeForm(PART,TYPE)
  677. if TYPE == "Cyl" then
  678. local MSH = IT("CylinderMesh",PART)
  679. elseif TYPE == "Ball" then
  680. local MSH = IT("SpecialMesh",PART)
  681. MSH.MeshType = "Sphere"
  682. elseif TYPE == "Wedge" then
  683. local MSH = IT("SpecialMesh",PART)
  684. MSH.MeshType = "Wedge"
  685. end
  686. end
  687.  
  688. Debris = game:GetService("Debris")
  689.  
  690. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  691. local DIRECTION = CF(StartPos,EndPos).lookVector
  692. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  693. end
  694.  
  695. function CharacterFade(COLOR,TIMER)
  696. coroutine.resume(coroutine.create(function()
  697. local FADE = IT("Model",Effects)
  698. for _, c in pairs(Character:GetChildren()) do
  699. if c.ClassName == "Part" and c ~= RootPart then
  700. local FADER = c:Clone()
  701. FADER.Color = COLOR
  702. FADER.CFrame = c.CFrame
  703. FADER.Parent = FADE
  704. FADER.Anchored = true
  705. FADER.Transparency = 0.25
  706. FADER:BreakJoints()
  707. FADER.Material = "Glass"
  708. FADER:ClearAllChildren()
  709. if FADER.Name == "Head" then
  710. FADER.Size = VT(1,1,1)
  711. end
  712. end
  713. end
  714. local TRANS = 0.75/TIMER
  715. for i = 1, TIMER do
  716. Swait()
  717. for _, c in pairs(FADE:GetChildren()) do
  718. if c.ClassName == "Part" then
  719. c.Transparency = c.Transparency + TRANS
  720. end
  721. end
  722. end
  723. FADE:remove()
  724. end))
  725. end
  726.  
  727. local PE=Instance.new("ParticleEmitter")
  728. PE.LightEmission=0.3
  729. PE.Size=NumberSequence.new(0)
  730. PE.Transparency=NumberSequence.new(0,1)
  731. PE.Rotation=NumberRange.new(0,360)
  732. PE.LockedToPart = false
  733. PE.Speed = NumberRange.new(0,0,0)
  734. PE.ZOffset = 0.3
  735. PE.Rate = 999
  736. PE.VelocitySpread = 25
  737. PE.Name = "Particles"
  738.  
  739. function CreateParticles(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
  740. local particle = nil
  741. coroutine.resume(coroutine.create(function(PART)
  742. particle = PE:Clone()
  743. Swait()
  744. particle.Rate = 999
  745. particle.Parent = art
  746. particle.Acceleration = accel
  747. if type == "Fire" then
  748. local EyeSizes={
  749. NumberSequenceKeypoint.new(0,size,size/2),
  750. NumberSequenceKeypoint.new(1,size/4,size/8)
  751. }
  752. particle.Size = NumberSequence.new(EyeSizes)
  753. elseif type == "Smoke" then
  754. local EyeSizes={
  755. NumberSequenceKeypoint.new(0,size/5,0),
  756. NumberSequenceKeypoint.new(1,size*2,0.5)
  757. }
  758. particle.Size = NumberSequence.new(EyeSizes)
  759. elseif type == "Solid" then
  760. local EyeSizes={
  761. NumberSequenceKeypoint.new(0,size,0),
  762. NumberSequenceKeypoint.new(1,size,0)
  763. }
  764. particle.Size = NumberSequence.new(EyeSizes)
  765. end
  766. particle.Lifetime=NumberRange.new(lifetime)
  767. particle.Drag = drag
  768. if locked == true then
  769. particle.LockedToPart = true
  770. end
  771. particle.Speed = NumberRange.new(speed*0.8,speed)
  772. particle.Texture = "http://www.roblox.com/asset/?id=1179557490"
  773. particle.Enabled = isenabledbydefault
  774. particle.Color = ColorSequence.new(Color3.new(255/255, 176/255, 0))
  775. end))
  776. return particle
  777. end
  778. function AoEStun(POS,RANGE,LAST)
  779. for i,v in ipairs(workspace:GetChildren()) do
  780. if v:FindFirstChild("StunnedBy"..Player.Name) == nil then
  781. local body = v:GetChildren()
  782. for part = 1, #body do
  783. if(v:FindFirstChild("StunnedBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  784. if(body[part].Position - POS).Magnitude < RANGE then
  785. if v.ClassName == "Model" then
  786. if v:FindFirstChild("Humanoid") then
  787. if v.Humanoid.Health ~= 0 then
  788. Freeze(v.Humanoid,LAST)
  789. local defence = Instance.new("BoolValue",v)
  790. defence.Name = ("StunnedBy"..Player.Name)
  791. game:GetService("Debris"):AddItem(defence, 0.1)
  792. end
  793. end
  794. end
  795. end
  796. end
  797. end
  798. end
  799. end
  800. end
  801. function Freeze(HUMANOID,LAST)
  802. if HUMANOID.Parent:FindFirstChild("StunnedBy"..Player.Name) == nil then
  803. local q = HUMANOID.Parent:GetChildren()
  804. for i = 1, #q do
  805. local bob = q[i]
  806. if bob.ClassName == "Part" or bob.ClassName == "MeshPart" then
  807. if bob.Transparency < 1 then
  808. bob.Anchored = true
  809. local icelayer = bob:Clone()
  810. icelayer.Parent = bob
  811. icelayer.Material = "Ice"
  812. icelayer.CanCollide = false
  813. icelayer.BrickColor = BRICKC"Steel blue"
  814. icelayer.Transparency = 0.5
  815. icelayer.CFrame = bob.CFrame
  816. icelayer.Name = "Ice"
  817. icelayer.Size = icelayer.Size + VT(0.1,0.1,0.1)
  818. if icelayer:FindFirstChildOfClass("Decal") then
  819. icelayer:FindFirstChildOfClass("Decal"):remove()
  820. end
  821. end
  822. end
  823. end
  824. local defence = Instance.new("BoolValue",HUMANOID.Parent)
  825. defence.Name = ("StunnedBy"..Player.Name)
  826. game:GetService("Debris"):AddItem(defence, LAST)
  827. if HUMANOID.Parent:FindFirstChild("Head") then
  828. StatLabel("Normal", HUMANOID.Parent.Head.CFrame * CF(0, 0 + (HUMANOID.Parent.Head.Size.z - 1), 0), "Frozen!", C3(0.3, 0.3, 0.3))
  829. end
  830. if LAST ~= "Forever" then
  831. coroutine.resume(coroutine.create(function()
  832. Swait(LAST*50)
  833. local q = HUMANOID.Parent:GetChildren()
  834. for i = 1, #q do
  835. local bob = q[i]
  836. if bob.ClassName == "Part" or bob.ClassName == "MeshPart" then
  837. if bob.Transparency < 1 then
  838. bob.Anchored = false
  839. bob.Ice:remove()
  840. end
  841. end
  842. end
  843. end))
  844. else
  845. table.insert(FROZENBODIES,HUMANOID.Parent)
  846. end
  847. end
  848. end
  849.  
  850. function CreateWave(SIZE,WAIT,CFRAME,DOESROT,ROT,COLOR,GROW)
  851. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0,0,0))
  852. local mesh = IT("SpecialMesh",wave)
  853. mesh.MeshType = "FileMesh"
  854. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  855. mesh.Scale = SIZE
  856. mesh.Offset = VT(0,0,-SIZE.X/8)
  857. wave.CFrame = CFRAME
  858. coroutine.resume(coroutine.create(function(PART)
  859. for i = 1, WAIT do
  860. Swait()
  861. mesh.Scale = mesh.Scale + GROW
  862. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  863. if DOESROT == true then
  864. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0,ROT,0)
  865. end
  866. wave.Transparency = wave.Transparency + (0.5/WAIT)
  867. if wave.Transparency > 0.99 then
  868. wave:remove()
  869. end
  870. end
  871. end))
  872. end
  873. function Slice(KIND,SIZE,WAIT,CFRAME,COLOR,GROW)
  874. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  875. local mesh = nil
  876. if KIND == "Base" then
  877. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0,SIZE/10,SIZE/10), VT(0,0,0))
  878. elseif KIND == "Thin" then
  879. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
  880. elseif KIND == "Round" then
  881. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE/10,0,SIZE/10), VT(0,0,0))
  882. end
  883. wave.CFrame = CFRAME
  884. coroutine.resume(coroutine.create(function(PART)
  885. for i = 1, WAIT do
  886. Swait()
  887. mesh.Scale = mesh.Scale + GROW/10
  888. wave.Transparency = wave.Transparency + (0.5/WAIT)
  889. if wave.Transparency > 0.99 then
  890. wave:remove()
  891. end
  892. end
  893. end))
  894. end
  895. function MagicSphere(SIZE,WAIT,CFRAME,COLOR,GROW)
  896. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1,1,1), true)
  897. local mesh = IT("SpecialMesh",wave)
  898. mesh.MeshType = "Sphere"
  899. mesh.Scale = SIZE
  900. mesh.Offset = VT(0,0,0)
  901. wave.CFrame = CFRAME
  902. coroutine.resume(coroutine.create(function(PART)
  903. for i = 1, WAIT do
  904. Swait()
  905. mesh.Scale = mesh.Scale + GROW
  906. wave.Transparency = wave.Transparency + (1/WAIT)
  907. if wave.Transparency > 0.99 then
  908. wave:remove()
  909. end
  910. end
  911. end))
  912. end
  913. local Decal = IT("Decal")
  914. function SpawnBulletHole(POSITION)
  915. local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Bullet hole", VT(0.2,0,0.2))
  916. local decal = Decal:Clone()
  917. decal.Parent = O1
  918. decal.Face = "Top"
  919. decal.Texture = "http://www.roblox.com/asset/?id=130624105"
  920. local decal2 = Decal:Clone()
  921. decal2.Parent = O1
  922. decal2.Face = "Bottom"
  923. decal2.Texture = "http://www.roblox.com/asset/?id=130624105"
  924. O1.CFrame = POSITION*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))
  925. Debris:AddItem(O1,5)
  926. end
  927.  
  928. function SpawnTrail(FROM,TO)
  929. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Light blue", "Arrow", VT(0,0,0))
  930. MakeForm(TRAIL,"Cyl")
  931. local DIST = (FROM - TO).Magnitude
  932. TRAIL.Size = VT(0.5,DIST,0.5)
  933. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  934. coroutine.resume(coroutine.create(function()
  935. for i = 1, 5 do
  936. Swait()
  937. TRAIL.Transparency = TRAIL.Transparency + 0.1
  938. end
  939. TRAIL:remove()
  940. end))
  941. end
  942. function SpawnIce(POSITION)
  943. local O1 = CreatePart(3, Effects, "Neon", 0, 1, "Really red", "Bullet hole", VT(0.2,0,0.2))
  944. local decal = Decal:Clone()
  945. decal.Parent = O1
  946. decal.Face = "Top"
  947. decal.Texture = "http://www.roblox.com/asset/?id=130624105"
  948. local decal2 = Decal:Clone()
  949. decal2.Parent = O1
  950. decal2.Face = "Bottom"
  951. decal2.Texture = "http://www.roblox.com/asset/?id=130624105"
  952. O1.CFrame = POSITION*ANGLES(RAD(0),RAD(MRANDOM(-180,180)),RAD(0))
  953. Debris:AddItem(O1,5)
  954. end
  955. function IceDetection(FROM,TO)
  956. local DIRECTION = CF(FROM,TO).lookVector
  957. local AIMHIT,AIMPOS,NORMAL = Raycast(FROM, DIRECTION, 2000, Character)
  958. SpawnTrail(FROM,AIMPOS)
  959. coroutine.resume(coroutine.create(function()
  960. if AIMHIT ~= nil then
  961. if AIMHIT.Parent ~= Character then
  962. if AIMHIT.Parent:FindFirstChildOfClass("Humanoid") or AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  963. if AIMHIT.Name ~= "Head" and AIMHIT.Parent.ClassName ~= "Accessory" then
  964. ApplyDamage(AIMHIT.Parent:FindFirstChildOfClass("Humanoid"),MRANDOM(15,25),AIMHIT)
  965. elseif AIMHIT.Name == "Head" or AIMHIT.Parent.ClassName == "Accessory" then
  966. if AIMHIT.Parent.ClassName == "Accessory" then
  967. if AIMHIT:FindFirstChild("HatAttachment") or AIMHIT:FindFirstChild("FaceFrontAttachment") or AIMHIT:FindFirstChild("HairAttachment") then
  968. AIMHIT.Parent.Parent:BreakJoints()
  969. if AIMHIT.Parent.Parent:FindFirstChild("Head") then
  970. AIMHIT.Parent.Parent.Head:remove()
  971. for i = 1, 3 do
  972. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = CF(AIMHIT.Parent.Parent.Head.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Ice", Color = SKILLTEXTCOLOR, SoundID = 180083298, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 3})
  973. end
  974. end
  975. else
  976. CreateSound(HITPLAYERSOUNDS[MRANDOM(1,#HITPLAYERSOUNDS)],AIMHIT,6,MRANDOM(8,12)/10,false)
  977. ApplyDamage(AIMHIT.Parent.Parent:FindFirstChildOfClass("Humanoid"),15,AIMHIT)
  978. end
  979. elseif AIMHIT.Name == "Head" then
  980. for i = 1, 3 do
  981. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = CF(AIMHIT.Parent.Parent.Head.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Ice", Color = SKILLTEXTCOLOR, SoundID = 180083298, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 3})
  982. end
  983. AIMHIT.Parent:BreakJoints()
  984. AIMHIT:remove()
  985. end
  986. end
  987. else
  988. SpawnBulletHole(CF(AIMPOS,AIMPOS+NORMAL)*ANGLES(RAD(90),RAD(0),RAD(0)))
  989. end
  990. end
  991. end
  992. end))
  993. return AIMHIT,AIMPOS,NORMAL
  994. end
  995.  
  996. function Shatter(Part)
  997. if Part.Transparency == 0 then
  998. local SOUNDPART = CreatePart(3, Effects, "Ice", 0, 1, Part.BrickColor, "OOF", VT(0,0,0))
  999. Debris:AddItem(SOUNDPART,5)
  1000. CreateSound("626807593", SOUNDPART, 3, MRANDOM(8,12)/10, false)
  1001. local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
  1002. local SIZESET = SIZE/4
  1003. local XOffset = Part.Size.X*1.5/SIZESET
  1004. local YOffset = Part.Size.Y*1.5/SIZESET
  1005. local ZOffset = Part.Size.Z*1.5/SIZESET
  1006. for x = 1, math.ceil(XOffset) do
  1007. for y = 1, math.ceil(YOffset) do
  1008. for z = 1, math.ceil(ZOffset) do
  1009. local SHARD = CreatePart(3, Effects, "Glass", 0, 0.15, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
  1010. SHARD.CanCollide = true
  1011. SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-Part.Size.X/4),(Part.Size.Y/2-Part.Size.Y/4),(Part.Size.Z/2-Part.Size.Z/4))
  1012. SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
  1013. Debris:AddItem(SHARD,MRANDOM(10,25)/10)
  1014. for _, c in pairs(Part:GetChildren()) do
  1015. if c.ClassName == "ParticleEmitter" or c.ClassName == "PointLight" or c.ClassName == "Fire" then
  1016. c:Clone().Parent = SHARD
  1017. end
  1018. end
  1019. end
  1020. end
  1021. end
  1022. end
  1023. Part:remove()
  1024. end
  1025. function ApplyShatter(Humanoid,Damage,CritRate,CritMultiplier,DoesOneShot)
  1026. local defence = Instance.new("BoolValue",Humanoid.Parent)
  1027. defence.Name = ("HitBy"..Player.Name)
  1028. game:GetService("Debris"):AddItem(defence, 0.001)
  1029. Damage = Damage * DAMAGEMULTIPLIER
  1030. if Humanoid.Health ~= 0 then
  1031. local CritChance = MRANDOM(1,100)
  1032. if CritChance < CritRate + 1 then
  1033. Damage = Damage*CritMultiplier
  1034. end
  1035. if Damage > Humanoid.Health then
  1036. Damage = math.ceil(Humanoid.Health)
  1037. if Damage == 0 then
  1038. Damage = 0.1
  1039. end
  1040. end
  1041. if DoesOneShot == true then
  1042. for _, c in pairs(Humanoid.Parent:GetChildren()) do
  1043. if c:IsA("BasePart") then
  1044. Shatter(c)
  1045. end
  1046. end
  1047. Humanoid.Health = Humanoid.Health - Damage
  1048. if Humanoid.Parent:FindFirstChild("Head") then
  1049. CreateSound(HITPLAYERSOUNDS[MRANDOM(1,#HITPLAYERSOUNDS)], Humanoid.Parent.Head, 5, 1)
  1050. if CritChance < CritRate + 1 then
  1051. StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "CRIT//"..Damage, C3(1, 0, 0))
  1052. else
  1053. StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
  1054. end
  1055. end
  1056. elseif DoesOneShot == true then
  1057. --print("["..Humanoid.Parent.Name.."]: One shot!? Really!?!?")
  1058. Humanoid.Parent:BreakJoints()
  1059. if Humanoid.Parent:FindFirstChild("Head") then
  1060. StatLabel(Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "INF", C3(1, 0, 0))
  1061. end
  1062. for _, c in pairs(Humanoid.Parent:GetChildren()) do
  1063. if c.ClassName == "Part" or c.ClassName == "MeshPart" then
  1064. Shatter(c)
  1065. end
  1066. end
  1067. end
  1068. if Humanoid.Health == 0 then
  1069. for _, c in pairs(Humanoid.Parent:GetChildren()) do
  1070. if c.ClassName == "Part" or c.ClassName == "MeshPart" then
  1071. Shatter(c)
  1072. end
  1073. end
  1074. end
  1075. end
  1076. end
  1077. function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
  1078. local defence = Instance.new("BoolValue",Humanoid.Parent)
  1079. defence.Name = ("HitBy"..Player.Name)
  1080. game:GetService("Debris"):AddItem(defence, 0.001)
  1081. if Humanoid.Health ~= 0 then
  1082. local CritChance = MRANDOM(1,100)
  1083. if CritChance < CritRate + 1 then
  1084. Damage = Damage*CritMultiplier
  1085. end
  1086. if Damage > Humanoid.Health then
  1087. Damage = math.ceil(Humanoid.Health)
  1088. if Damage == 0 then
  1089. Damage = 0.1
  1090. end
  1091. end
  1092. Humanoid.Health = Humanoid.Health - Damage
  1093. if Humanoid.Parent:FindFirstChild("Head") then
  1094. if CritChance < CritRate + 1 then
  1095. StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "CRIT//"..Damage, C3(1, 0, 0))
  1096. else
  1097. StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
  1098. end
  1099. end
  1100. end
  1101. end
  1102.  
  1103. function AoEDamage(position,radius,min,max,maxstrength,critrate,critmultiplier,CanBeDodgedByJumping)
  1104. local dmg = math.random(min,max)
  1105. for i,v in ipairs(workspace:GetChildren()) do
  1106. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1107. local body = v:GetChildren()
  1108. for part = 1, #body do
  1109. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1110. if(body[part].Position - position).Magnitude < radius then
  1111. if v.ClassName == "Model" then
  1112. if v:FindFirstChildOfClass("Humanoid") then
  1113. if v:FindFirstChildOfClass("Humanoid").Health ~= 0 then
  1114. if CanBeDodgedByJumping == true then
  1115. if body[part].Position.Y < position.Y+5 then
  1116. ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  1117. end
  1118. else
  1119. ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  1120. end
  1121. local bv = Instance.new("BodyVelocity")
  1122. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1123. bv.velocity = RootPart.CFrame.lookVector*maxstrength
  1124. bv.Parent = body[part]
  1125. Debris:AddItem(bv,0.2)
  1126. end
  1127. end
  1128. end
  1129. end
  1130. end
  1131. end
  1132. end
  1133. if v:FindFirstChild("HitBy"..Player.Name) then
  1134. v:FindFirstChild("HitBy"..Player.Name):remove()
  1135. end
  1136. end
  1137. end
  1138.  
  1139.  
  1140. function AoEShatter(position,radius,min,max,maxstrength,critrate,critmultiplier,BESERK)
  1141. local dmg = math.random(min,max)
  1142. for i,v in ipairs(workspace:GetChildren()) do
  1143. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1144. local body = v:GetChildren()
  1145. for part = 1, #body do
  1146. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1147. if(body[part].Position - position).Magnitude < radius then
  1148. if v.ClassName == "Model" then
  1149. if v:FindFirstChildOfClass("Humanoid") then
  1150. ApplyShatter(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier,BESERK)
  1151. local bv = Instance.new("BodyVelocity")
  1152. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1153. bv.velocity = CF(position,body[part].Position).lookVector*maxstrength
  1154. bv.Parent = body[part]
  1155. Debris:AddItem(bv,0.2)
  1156. end
  1157. end
  1158. end
  1159. end
  1160. end
  1161. end
  1162. if v:FindFirstChild("HitBy"..Player.Name) then
  1163. v:FindFirstChild("HitBy"..Player.Name):remove()
  1164. end
  1165. end
  1166. end
  1167.  
  1168. function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
  1169. local defence = Instance.new("BoolValue",Humanoid.Parent)
  1170. defence.Name = ("HitBy"..Player.Name)
  1171. game:GetService("Debris"):AddItem(defence, 0.001)
  1172. if Humanoid.Health ~= 0 then
  1173. local CritChance = MRANDOM(1,100)
  1174. if CritChance < CritRate + 0.05 then
  1175. Damage = Damage*CritMultiplier
  1176. end
  1177. if Damage > Humanoid.Health then
  1178. Damage = math.ceil(Humanoid.Health)
  1179. if Damage == 0 then
  1180. Damage = 0.1
  1181. end
  1182. end
  1183. Humanoid.Health = Humanoid.Health - Damage
  1184. if Humanoid.Parent:FindFirstChild("Head") then
  1185. if CritChance < CritRate + 1 then
  1186. StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), "CRIT//"..Damage, C3(1, 0, 0))
  1187. else
  1188. StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
  1189. end
  1190. end
  1191. end
  1192. end
  1193. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1194. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1195. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1196. local BODYGYRO = IT("BodyGyro", STATPART)
  1197. local BODYPOSITION = IT("BodyPosition", STATPART)
  1198. BODYPOSITION.P = 2000
  1199. BODYPOSITION.D = 100
  1200. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1201. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1202. game:GetService("Debris"):AddItem(STATPART ,5)
  1203. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1204. BILLBOARDGUI.Adornee = STATPART
  1205. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1206. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1207. BILLBOARDGUI.AlwaysOnTop = false
  1208. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1209. TEXTLABEL.BackgroundTransparency = 1
  1210. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1211. TEXTLABEL.Text = TEXT
  1212. TEXTLABEL.Font = "SciFi"
  1213. TEXTLABEL.FontSize="Size42"
  1214. TEXTLABEL.TextColor3 = COLOR
  1215. TEXTLABEL.TextStrokeTransparency = 1
  1216. TEXTLABEL.TextScaled = true
  1217. TEXTLABEL.TextWrapped = true
  1218. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1219. if LABELTYPE == "Normal" then
  1220. for i = 1, 30 do
  1221. Swait()
  1222. STATPART.Position = STATPART.Position + VT(0, (15-i)/10 ,0)
  1223. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
  1224. end
  1225. elseif LABELTYPE == "Debuff" then
  1226. for i = 1, 30 do
  1227. Swait()
  1228. STATPART.Position = STATPART.Position - VT(0, i/10 ,0)
  1229. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
  1230. end
  1231. elseif LABELTYPE == "Shock" then
  1232. local ORIGIN = STATPART.Position
  1233. for i = 1, 30 do
  1234. Swait()
  1235. STATPART.Position = ORIGIN + VT(MRANDOM(-2,2),MRANDOM(-2,2),MRANDOM(-2,2))
  1236. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/30)
  1237. end
  1238. end
  1239. THEPART.Parent = nil
  1240. end),STATPART, BODYPOSITION, TEXTLABEL)
  1241. end
  1242. --//=================================\\
  1243. --|| WEAPON CREATION
  1244. --\\=================================//
  1245. local DUST = CreateParticles(RightArm,VT(0,0,0),5,2,"Smoke",false,false,5,0)
  1246. DUST.ZOffset = 1
  1247.  
  1248. for _, c in pairs(Weapon:GetChildren()) do
  1249. if c.ClassName == "Part" then
  1250. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1251. end
  1252. end
  1253.  
  1254. local SKILLTEXTCOLOR = C3(1,1,1)
  1255. local SKILLFONT = "SciFi"
  1256. local SKILLTEXTSIZE = 5
  1257.  
  1258. Weapon.Parent = Character
  1259.  
  1260. Humanoid.Died:connect(function()
  1261. ATTACK = true
  1262. RightArm.Transparency = 1
  1263. LeftArm.Transparency = 1
  1264. RightLeg.Transparency = 1
  1265. LeftLeg.Transparency = 1
  1266. Torso.Transparency = 1
  1267. Head.Transparency = 1
  1268. ScrewThis()
  1269. end)
  1270. Void = nil
  1271. VoidParts = {}
  1272. Equipped = false
  1273.  
  1274. Player = Player
  1275. Character = Character
  1276.  
  1277. Humanoid = Character:FindFirstChildOfClass("Humanoid")
  1278. Torso = Character:FindFirstChild("Torso")
  1279. if not Player or not Humanoid or Humanoid.Health == 0 or not Torso then
  1280. return
  1281. end
  1282. Equipped = true
  1283. Void = Instance.new("Model")
  1284. Void.Name = "Void"
  1285. Angle = 0
  1286. for i = 1, 1 do
  1287. local VoidPart = Instance.new("Part")
  1288. VoidPart.Name = "VoidPart"
  1289. VoidPart.Transparency = 1
  1290. VoidPart.BrickColor = BrickColor.new("Really black")
  1291. VoidPart.Material = Enum.Material.Plastic
  1292. VoidPart.Shape = Enum.PartType.Block
  1293. VoidPart.FormFactor = Enum.FormFactor.Custom
  1294. VoidPart.TopSurface = Enum.SurfaceType.Smooth
  1295. VoidPart.BottomSurface = Enum.SurfaceType.Smooth
  1296. VoidPart.Anchored = true
  1297. VoidPart.CanCollide = false
  1298. VoidPart.Locked = true
  1299. VoidPart.Size = Vector3.new(18, 0.2, 18)
  1300. local BlockMesh = Instance.new("BlockMesh")
  1301. BlockMesh.Scale = Vector3.new(1, (1 + (0.005 * i)), 1)
  1302. BlockMesh.Parent = VoidPart
  1303. VoidPart.Parent = Void
  1304. local Star = Instance.new("Decal", VoidPart)
  1305. Star.Texture = "http://www.roblox.com/asset/?id="
  1306. --CricleForTarget
  1307. --121028264 MagicCircle1
  1308. --160506713 MagicCircle2
  1309. --327794305 MagicCircle3 (Death)
  1310. --160508788 MagicCircle4 (Scary)
  1311. --124339738 CoolCircle5
  1312. --268043891 Abyss-Demon-Magic-Circle
  1313. Star.Face = "Top"
  1314. local Light = Instance.new("PointLight", VoidPart)
  1315. Light.Color = Color3.new(.5,0,0)
  1316. Light.Brightness = 100
  1317. Light.Range = 25
  1318. table.insert(VoidParts, VoidPart)
  1319. end
  1320. Spawn(function()
  1321. while Equipped and Humanoid.Parent and Humanoid.Health > 0 and Torso.Parent do
  1322. if Angle == 360 then
  1323. Angle = 0
  1324. end
  1325. Angle = Angle + 0.05
  1326. local Hit, EndPosition = Raycast(Torso.Position, Vector3.new(0, -1, 0), (Torso.Size.Y * 6.5), {Character})
  1327. if Hit then
  1328. if not Void.Parent then
  1329. Void.Parent = Character
  1330. end
  1331. for i, v in pairs(VoidParts) do
  1332. v.CFrame = CFrame.new(Torso.Position.X, EndPosition.Y, Torso.Position.Z) * CFrame.Angles(0, (Angle + i), 0)
  1333. end
  1334. else
  1335. Void.Parent = nil
  1336. end
  1337. wait()
  1338. end
  1339. end)
  1340. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  1341. local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  1342. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.82, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  1343. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.78, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  1344. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.74, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  1345. local SKILL6FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.8, 0, 0.70, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 6 Frame")
  1346.  
  1347. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 1")
  1348. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 2")
  1349. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 3")
  1350. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 4")
  1351. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[E]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 5")
  1352. local SKILL6TEXT = CreateLabel(SKILL6FRAME, "[X]", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.5, "Text 6")
  1353. local ORBHOLDER = IT("Model",Weapon)
  1354. ORBHOLDER.Name = "Zen orbs"
  1355.  
  1356. local Orbs = {}
  1357. local AvailableOrbs = {}
  1358. local ORBCOUNT = 1
  1359. for i = 1, ORBCOUNT do
  1360. local POSITION = RootPart.CFrame*ANGLES(RAD(0),RAD(0),RAD(i*(360/1)))*CF(0,2.5,1.5).p
  1361. local Part = CreatePart(3, ORBHOLDER, "Neon", 0, 0, "Light blue", "Zen orb "..i, VT(1,1,1),false)
  1362. MakeForm(Part,"Ball")
  1363. local grav = Instance.new("BodyPosition",Part)
  1364. grav.P = 20000
  1365. grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  1366. grav.position = POSITION
  1367. grav.Name = "GravityForce"
  1368. grav.D = 1400
  1369. local VALUE = IT("NumberValue",Part)
  1370. VALUE.Name = "ItemValue"
  1371. VALUE.Value = i
  1372. table.insert(Orbs,{Part,grav})
  1373. table.insert(AvailableOrbs,Part)
  1374. end
  1375. Weapon.Parent = Character
  1376. --//=================================\\
  1377. --|| ATTACK FUNCTIONS AND STUFF
  1378. --\\=================================//
  1379.  
  1380. function Dissapear()
  1381. for i = 1, 10 do
  1382. Swait()
  1383. for _, c in pairs(Character:GetChildren()) do
  1384. if c.ClassName == "Part" then
  1385. c.Transparency = c.Transparency + 0.1
  1386. elseif c.ClassName == "Accessory" or c.ClassName == "Hat" then
  1387. c.Handle.Transparency = c.Handle.Transparency + 0.1
  1388. end
  1389. end
  1390. end
  1391. end
  1392.  
  1393. function Appear()
  1394. for i = 1, 10 do
  1395. Swait()
  1396. for _, c in pairs(Character:GetChildren()) do
  1397. if c.ClassName == "Part" then
  1398. c.Transparency = c.Transparency - 0.1
  1399. elseif c.ClassName == "Accessory" or c.ClassName == "Hat" then
  1400. c.Handle.Transparency = c.Handle.Transparency - 0.1
  1401. end
  1402. end
  1403. end
  1404. end
  1405.  
  1406. function OrbFade(Orb,FadeInOrOut)
  1407. if FadeInOrOut == "In" then
  1408. for i = 1, 10 do
  1409. Swait()
  1410. Orb.Transparency = Orb.Transparency + 0.1
  1411. end
  1412. elseif FadeInOrOut == "Out" then
  1413. for i = 1, 10 do
  1414. Swait()
  1415. Orb.Transparency = Orb.Transparency - 0.1
  1416. end
  1417. end
  1418. end
  1419. function Warp()
  1420. local HITFLOOR,HITPOS = Raycast(Mouse.Hit.p+VT(0,1,0), (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 100, Character)
  1421. if HITFLOOR then
  1422. CharacterFade(C3(0,0,1),50)
  1423. HITPOS = HITPOS + VT(0,3.5,0)
  1424. local POS = RootPart.Position
  1425. RootPart.CFrame = CF(HITPOS,CF(POS,HITPOS)*CF(0,0,-100000).p)
  1426. CreateSound(289556450,Torso,2,MRANDOM(8,13)/10,false)
  1427. end
  1428. end
  1429.  
  1430. function FireArc(Part,ToLocation,AmountOfTime,Height,DoesCourontine)
  1431. if DoesCourontine == false then
  1432. local Direction = CF(Part.Position,ToLocation)
  1433. local Distance = (Part.Position - ToLocation).magnitude
  1434. for i = 1, AmountOfTime do
  1435. Swait()
  1436. Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
  1437. Direction = Part.CFrame
  1438. end
  1439. Part:remove()
  1440. elseif DoesCourontine == true then
  1441. coroutine.resume(coroutine.create(function()
  1442. local Direction = CF(Part.Position,ToLocation)
  1443. local Distance = (Part.Position - ToLocation).magnitude
  1444. for i = 1, AmountOfTime do
  1445. Swait()
  1446. Part.CFrame = Direction*CF(0,(AmountOfTime/200)+((AmountOfTime/Height)-((i*2)/Height)),-Distance/AmountOfTime)
  1447. Direction = Part.CFrame
  1448. end
  1449. Part:remove()
  1450. end))
  1451. end
  1452. end
  1453. function SOUL()
  1454. local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 7 * Player_Size, Character)
  1455. if HITFLOOR ~= nil then
  1456. local HITBODIES = {}
  1457. ATTACK = true
  1458. Rooted = true
  1459. local COLLECTEDORBS = AvailableOrbs
  1460. local ABSOLUTE = CreatePart(3, Effects, "Neon", 0, 1, "Relly blue", "Star", VT(0,0,0))
  1461. MakeForm(ABSOLUTE,"Ball")
  1462. CreateSound("429459101", ABSOLUTE, 10, 1)
  1463. for e = 1, #COLLECTEDORBS do
  1464. if COLLECTEDORBS[e]~=nil then
  1465. local Thing=COLLECTEDORBS[e]
  1466. if Thing~=nil then
  1467. local Part=Thing
  1468. Part.GravityForce.Position = Torso.Position
  1469. end
  1470. end
  1471. end
  1472. Swait(100)
  1473. for e = 1, #COLLECTEDORBS do
  1474. if COLLECTEDORBS[e]~=nil then
  1475. local Thing=COLLECTEDORBS[e]
  1476. if Thing~=nil then
  1477. local Part=Thing
  1478. for i=0, 4, 0.1 / Animation_Speed do
  1479. Swait()
  1480. ABSOLUTE.Size = ABSOLUTE.Size + VT(0.05,0.05,0.05)
  1481. ABSOLUTE.CFrame = RootPart.CFrame*CF(0,5+(ABSOLUTE.Size.Y/2),0)
  1482. ABSOLUTE.Transparency = ABSOLUTE.Transparency - 0.01
  1483. local CHARGE = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Star", VT(1,1,1))
  1484. MakeForm(CHARGE,"Ball")
  1485. CHARGE.Color = C3(1,1,1)
  1486. CHARGE.CFrame = CF(RootPart.Position) * CF(MRANDOM(-15,15),-6,MRANDOM(-15,15))
  1487. FireArc(CHARGE,ABSOLUTE.Position,45,45,true)
  1488. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1489. end
  1490. CreateSound("907330103", Head, 10, 1.2)
  1491. for i = 1, 75 do
  1492. Swait()
  1493. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 1.5 + 0.25 * COS(SINE / 12), 0) * ANGLES(RAD(170), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(-12 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1494. end
  1495. for i = 1, 13 do
  1496. for e = 1, 8 do
  1497. Swait()
  1498. MagicSphere(VT(1,1,1),15,CF(ABSOLUTE.Position)*CF(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45)),C3(1,1,1),VT(0,0,0))
  1499. end
  1500. for i = 1, 5 do
  1501. ABSOLUTE.Size = ABSOLUTE.Size*0.9
  1502. MagicSphere(ABSOLUTE.Size,25,CF(ABSOLUTE.Position),BRICKC"Relly Blue".Color,VT(i,i,i)/1.1)
  1503. MagicSphere(ABSOLUTE.Size,45,CF(ABSOLUTE.Position),C3(0.05,0.05,0.15),VT(i,i,i))
  1504. AoEStun(ABSOLUTE.Position,40,30)
  1505. end
  1506. coroutine.resume(coroutine.create(function()
  1507. Swait(250)
  1508. for _, c in pairs(ORBHOLDER:GetChildren()) do
  1509. if c.ClassName == "Part" then
  1510. c.CFrame = Torso.CFrame
  1511. c.GravityForce.Position = Torso.Position
  1512. c.Transparency = 0
  1513. table.insert(AvailableOrbs,c)
  1514. table.insert(Orbs,{c,c.GravityForce})
  1515. Swait(75)
  1516. end
  1517. end
  1518. end))
  1519. ABSOLUTE.Transparency = 1
  1520. Debris:AddItem(ABSOLUTE,10)
  1521. end
  1522. ATTACK = false
  1523. Rooted = true
  1524. end
  1525. end
  1526. end
  1527. end
  1528. end
  1529.  
  1530. function CreateDebreeRing(FLOOR,POSITION,SIZE,BLOCKSIZE,SWAIT)
  1531. if FLOOR ~= nil then
  1532. coroutine.resume(coroutine.create(function()
  1533. local PART = CreatePart(3, Effects, "Plastic", 0, 1, "Pearl", "DebreeCenter", VT(0,0,0))
  1534. PART.CFrame = CF(POSITION)
  1535. for i = 1, 45 do
  1536. local RingPiece = CreatePart(3, Effects, "Ice", 0, 0, "Light blue", "DebreePart", BLOCKSIZE)
  1537. RingPiece.Material = FLOOR.Material
  1538. RingPiece.Color = FLOOR.Color
  1539. 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)))
  1540. Debris:AddItem(RingPiece,SWAIT)
  1541. end
  1542. PART:remove()
  1543. end))
  1544. end
  1545. end
  1546.  
  1547. function CreateFlyingDebree(FLOOR,POSITION,AMOUNT,BLOCKSIZE,SWAIT,STRENGTH)
  1548. if FLOOR ~= nil then
  1549. for i = 1, AMOUNT do
  1550. local DEBREE = CreatePart(3, Effects, "Ice", FLOOR.Reflectance, FLOOR.Transparency, "Light blue", "Debree", BLOCKSIZE, false)
  1551. DEBREE.Material = FLOOR.Material
  1552. DEBREE.Color = FLOOR.Color
  1553. DEBREE.CFrame = POSITION * ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)))
  1554. DEBREE.Velocity = VT(MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH),MRANDOM(-STRENGTH,STRENGTH))
  1555. coroutine.resume(coroutine.create(function()
  1556. Swait(15)
  1557. DEBREE.Parent = workspace
  1558. DEBREE.CanCollide = true
  1559. Debris:AddItem(DEBREE,SWAIT)
  1560. end))
  1561. end
  1562. end
  1563. end
  1564. function DeadWinter()
  1565. ATTACK = true
  1566. Rooted = false
  1567. for i=0, 1, 0.1 / Animation_Speed do
  1568. Swait()
  1569. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1570. 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)
  1571. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1572. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1573. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1574. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1575. end
  1576. coroutine.resume(coroutine.create(function()
  1577. local POS = Torso.Position
  1578. local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Light blue", "Strike", VT(10,10,10))
  1579. MakeForm(RAY,"Ball")
  1580. local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Really blue", "Strike", VT(0,0,0))
  1581. MakeForm(SPHERE,"Ball")
  1582. local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Lily white", "Strike", VT(0,0,0))
  1583. MakeForm(SHIELD,"Ball")
  1584. SHIELD.CFrame = CF(POS)
  1585. RAY.CFrame = CF(POS)
  1586. SPHERE.CFrame = CF(POS)
  1587. CreateSound(440145570, SPHERE, 10, 0.8, false)
  1588. CreateSound(415700134, SPHERE, 10, 0.8, false)
  1589. for i = 1, 200 do
  1590. Swait()
  1591. RAY.Size = RAY.Size + VT(0.05,0,0.05)
  1592. SPHERE.Size = SPHERE.Size + VT(10,10,10)
  1593. SHIELD.Size = SPHERE.Size + VT(12,12,12)
  1594. AoEShatter(SPHERE.Position,SPHERE.Size.X/2,100,100,100,100,100,VALUE1)
  1595. end
  1596. for i = 1, 45 do
  1597. Swait()
  1598. RAY.Transparency = 0.3
  1599. SPHERE.Transparency = 0.3
  1600. SHIELD.Transparency = 0.3
  1601. end
  1602. RAY:remove()
  1603. SHIELD:remove()
  1604. SPHERE:remove()
  1605. end))
  1606. for i=0, 1, 0.1 / Animation_Speed do
  1607. Swait()
  1608. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-35), RAD(0), RAD(0)), 1 / Animation_Speed)
  1609. 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)
  1610. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(-45), RAD(85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1611. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.15) * ANGLES(RAD(65), RAD(45), RAD(-85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1612. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1613. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(-35-2.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1614. end
  1615. ATTACK = false
  1616. Rooted = true
  1617. end
  1618.  
  1619.  
  1620. function SoulBeam()
  1621. ATTACK = true
  1622. Rooted = true
  1623. local GYRO = IT("BodyGyro",RootPart)
  1624. GYRO.D = 100
  1625. GYRO.P = 2000
  1626. GYRO.MaxTorque = VT(0,4000000,0)
  1627. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1628. local ORB = AvailableOrbs[MRANDOM(1,#AvailableOrbs)]
  1629. for i=1, 35 do
  1630. Swait()
  1631. WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = VT(0,25,0), Size2 = VT(0,25,0), Transparency = 1, Transparency2 = 0.25, CFrame = ORB.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  1632. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1633. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(4 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  1634. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1635. end
  1636. local BEAM = CreatePart(3, Effects, "Neon", 0, 1, "Light blue", "Lazer", VT(0,0,0))
  1637. local LOOP = CreateSound("289315275", Part, 5, 1.2, false)
  1638. local MSH = IT("CylinderMesh",BEAM)
  1639. local TOCH = BEAM.Touched:Connect(function(hit)
  1640. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  1641. if hit.Parent:FindFirstChildOfClass("Humanoid") then
  1642. ApplyDamage(hit.Parent:FindFirstChildOfClass("Humanoid"),5,2,4)
  1643. end
  1644. end
  1645. end)
  1646. local I = 0
  1647. repeat
  1648. Swait()
  1649. I = I + 1
  1650. if I <= 10 then
  1651. BEAM.Transparency = BEAM.Transparency - 0.1
  1652. end
  1653. local STARTPOS = ORB.CFrame.p
  1654. local ENDHIT,ENDPOS = CastProperRay(STARTPOS,Mouse.Hit.p,650,Character)
  1655. local DISTANCE = (STARTPOS - ENDPOS).Magnitude
  1656. BEAM.CFrame = CF(STARTPOS,ENDPOS)*CF(0,0,-DISTANCE/2)*ANGLES(RAD(90),RAD(0),RAD(0))
  1657. BEAM.Size = VT(1,DISTANCE,1)
  1658. WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = VT(3,3,3), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 0.25, CFrame = ORB.CFrame, MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  1659. WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = VT(0,15,0), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 0.25, CFrame = CF(ENDPOS), MoveToPos = nil, RotationX = 1, RotationY = 1, RotationZ = 1, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.6, SoundVolume = 6})
  1660. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(90), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1661. if ENDHIT ~= nil then
  1662. if ENDHIT.Anchored == false and ENDHIT.Parent ~= Effects then
  1663. if ENDHIT.Parent:FindFirstChildOfClass("Humanoid") then
  1664. ApplyDamage(ENDHIT.Parent:FindFirstChildOfClass("Humanoid"),5,2,4)
  1665. end
  1666. end
  1667. end
  1668. until KEYHOLD == false
  1669. BEAM:remove()
  1670. GYRO:remove()
  1671. ATTACK = false
  1672. Rooted = true
  1673. end
  1674.  
  1675. function SoulBreak()
  1676. if #AvailableOrbs > 0 then
  1677. Swait()
  1678. local ORB = AvailableOrbs[MRANDOM(1,#AvailableOrbs)]
  1679. local NUMBER = ORB.ItemValue.Value
  1680. table.remove(AvailableOrbs,NUMBER)
  1681. table.remove(Orbs,NUMBER)
  1682. ATTACK = true
  1683. Rooted = true
  1684. local POS = Mouse.Hit.p
  1685. ORB.GravityForce.position = POS
  1686. CreateSound("314970772", ORB, 3, 2)
  1687. AoEShatter(ORB.Position,40,15,25,5,2,2,VALUE1)
  1688. Swait(200)
  1689. ORB.CFrame = Torso.CFrame
  1690. ORB.GravityForce.Position = Torso.Position
  1691. ORB.Transparency = 0
  1692. table.insert(AvailableOrbs,ORB)
  1693. table.insert(Orbs,{ORB,ORB.GravityForce})
  1694. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(1*2,6,1*2), Transparency = 0, Transparency2 = 1, CFrame = CF(Torso.Position)*ANGLES(RAD(0), RAD(1), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 1, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1695. ATTACK = false
  1696. Rooted = true
  1697. end
  1698. end
  1699.  
  1700. function IceBullet()
  1701. ATTACK = true
  1702. Rooted = true
  1703. local GYRO = IT("BodyGyro",RootPart)
  1704. GYRO.D = 2
  1705. GYRO.P = 2000
  1706. GYRO.MaxTorque = VT(0,4000000,0)
  1707. local NEEDGYRO = true
  1708. coroutine.resume(coroutine.create(function()
  1709. repeat
  1710. Swait()
  1711. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1712. until NEEDGYRO == false
  1713. GYRO:Remove()
  1714. end))
  1715. for i=0, 0.3, 0.1 / Animation_Speed do
  1716. Swait()
  1717. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1718. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1719. end
  1720. for i=0, 1, 0.1 / Animation_Speed do
  1721. Swait()
  1722. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1723. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1724. end
  1725. local HIT,POS = CastProperRay(RightArm.CFrame*CF(0,-1,0).p,Mouse.Hit.p,300,Character)
  1726. WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(1,0,1), Size2 = VT(5,1,5), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 90655239, SoundPitch = 1, SoundVolume = 2})
  1727. IceDetection(RightArm.Position,Mouse.Hit.p)
  1728. local BULLET = Lightning({Material = "Neon", FadeIn = true, Color = C3(0,0,1), Start = RightArm.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  1729. local BULLET = Lightning({Material = "Neon", FadeIn = true, Color = C3(0,0,1), Start = RightArm.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  1730. local BULLET = Lightning({Material = "Neon", FadeIn = true, Color = C3(0,0,1), Start = RightArm.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  1731. local BULLET = Lightning({Material = "Neon", FadeIn = true, Color = C3(0,0,1), Start = RightArm.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  1732. local BULLET = Lightning({Material = "Neon", FadeIn = true, Color = C3(0,0,1), Start = RightArm.CFrame*CF(0, 1, 0.045).p, End = Mouse.Hit.p, SegmentL = 1, Thickness = 0.1, DoesFade = true, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 22, Thicken = false})
  1733. local POS = Mouse.Hit.p
  1734. local RAY = CreatePart(3, Effects, "Neon", 0, 0, "Light blue", "Strike", VT(0,0,0))
  1735. MakeForm(RAY,"Cyl")
  1736. local SPHERE = CreatePart(3, Effects, "Neon", 0, 0, "Light blue", "Strike", VT(0,0,0))
  1737. MakeForm(SPHERE,"Ball")
  1738. local SHIELD = CreatePart(3, Effects, "Neon", 0, 0.5, "Light blue", "Strike", VT(0,0,0))
  1739. MakeForm(SHIELD,"Ball")
  1740. SHIELD.CFrame = CF(POS)
  1741. RAY.CFrame = CF(POS)
  1742. SPHERE.CFrame = CF(POS)
  1743. RAY.Size = RAY.Size + VT(0.05,0,0.05)
  1744. SPHERE.Size = SPHERE.Size + VT(1,1,1)
  1745. SHIELD.Size = SPHERE.Size + VT(1,1,1)
  1746. AoEStun(SPHERE.Position,10,99999999999999999999999999999999999999999999999999999999999999999999999999999999)
  1747. RAY.Transparency = RAY.Transparency + 1/45
  1748. SPHERE.Transparency = RAY.Transparency
  1749. SHIELD.Transparency = SPHERE.Transparency + 1/45
  1750. for i=0, 1, 0.1 / Animation_Speed do
  1751. Swait()
  1752. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 2.5 * SIN(SINE / 12))), 1 / Animation_Speed)
  1753. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15 + 0.25 * COS(SINE / 12), -0.3) * ANGLES(RAD(100), RAD(0 - 2.5 * SIN(SINE / 12)), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1754. end
  1755. RAY:remove()
  1756. SHIELD:remove()
  1757. SPHERE:remove()
  1758. ATTACK = false
  1759. Rooted = true
  1760. end
  1761.  
  1762. function ScrewThis()
  1763. local IceMaterializeSounds = {
  1764. "333476017",
  1765. "333475981",
  1766. "333475957",
  1767. "333475929"
  1768. }
  1769. ATTACK = true
  1770. Rooted = true
  1771. CreateSound("649634100", Head, 10, 0.8)
  1772. for i=0, 0.55, 0.1 / Animation_Speed do
  1773. Swait()
  1774. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-45), RAD(-25)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  1775. end
  1776. local GEM = CreatePart(3, Effects, "Ice", 0, 0.25, COLOR, "Ice", VT(0.3,0.6,0.3))
  1777. CreateMesh("SpecialMesh", GEM, "FileMesh", "9756362", "", VT(0.6,01.2,0.6), VT(0,0,0))
  1778. GEM.CFrame = CF(RightArm.CFrame*CF(0,-1.3,0).p+VT(0,1,0))
  1779. MagicSphere(GEM.Size,35,GEM.CFrame,COLOR,VT(0.1,0.1,0.1))
  1780. CreateSound(IceMaterializeSounds[MRANDOM(1,#IceMaterializeSounds)], GEM, 3, 1)
  1781. for i=0, 5, 0.1 / Animation_Speed do
  1782. Swait()
  1783. GEM.CFrame = GEM.CFrame * ANGLES(RAD(0),RAD(5),RAD(0))
  1784. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(-45), RAD(-25)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1785. end
  1786.  
  1787. MagicSphere(GEM.Size,35,GEM.CFrame,COLOR,VT(0.1,0.1,0.1))
  1788. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(0,40,0), Transparency = 0, Transparency2 = 1, CFrame = CF(GEM.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1789. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(0,40,0), Transparency = 0, Transparency2 = 1, CFrame = CF(GEM.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1790. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(0,40,0), Transparency = 0, Transparency2 = 1, CFrame = CF(GEM.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1791. for i,v in ipairs(workspace:GetChildren()) do
  1792. if v:FindFirstChildOfClass("Humanoid") then
  1793. AoEShatter(Torso.Position,20,20,20,20,20,20,VALUE1)
  1794. end
  1795. end
  1796.  
  1797. GEM:remove()
  1798. ATTACK = false
  1799. Rooted = true
  1800. end
  1801.  
  1802. --//=================================\\
  1803. --|| ASSIGN THINGS TO KEYS
  1804. --\\=================================//
  1805.  
  1806. function MouseDown(Mouse)
  1807. if ATTACK == false then
  1808. end
  1809. end
  1810.  
  1811. function MouseUp(Mouse)
  1812. HOLD = false
  1813. end
  1814.  
  1815. function KeyDown(Key)
  1816. KEYHOLD = true
  1817. if Key == "z" and ATTACK == false then
  1818. Warp()
  1819. end
  1820.  
  1821. if Key == "b" and ATTACK == false then
  1822. SOUL()
  1823. end
  1824.  
  1825. if Key == "x" and ATTACK == false then
  1826. DeadWinter()
  1827. end
  1828.  
  1829. if Key == "v" and ATTACK == false then
  1830. SoulBeam()
  1831. end
  1832.  
  1833. if Key == "e" and ATTACK == false then
  1834. SoulBreak()
  1835. end
  1836.  
  1837. if Key == "c" and ATTACK == false then
  1838. IceBullet()
  1839. end
  1840.  
  1841. if Key == "]" and ATTACK == false then
  1842. ScrewThis()
  1843. end
  1844. end
  1845.  
  1846. function KeyUp(Key)
  1847. KEYHOLD = false
  1848. end
  1849.  
  1850. Mouse.Button1Down:connect(function(NEWKEY)
  1851. MouseDown(NEWKEY)
  1852. end)
  1853. Mouse.Button1Up:connect(function(NEWKEY)
  1854. MouseUp(NEWKEY)
  1855. end)
  1856. Mouse.KeyDown:connect(function(NEWKEY)
  1857. KeyDown(NEWKEY)
  1858. end)
  1859. Mouse.KeyUp:connect(function(NEWKEY)
  1860. KeyUp(NEWKEY)
  1861. end)
  1862.  
  1863. --//=================================\\
  1864. --\\=================================//
  1865.  
  1866. function AntiTimeStop()
  1867. for _, c in pairs(Character:GetChildren()) do
  1868. if c:IsA("BasePart") then
  1869. c.Anchored = false
  1870. end
  1871. end
  1872. for _, c in pairs(Weapon:GetChildren()) do
  1873. if c:IsA("BasePart") then
  1874. c.Anchored = false
  1875. end
  1876. end
  1877. end
  1878.  
  1879. --//=================================\\
  1880. --|| WRAP THE WHOLE SCRIPT UP
  1881. --\\=================================//
  1882.  
  1883. Humanoid.Changed:connect(function(Jump)
  1884. if Jump == "Jump" and (Disable_Jump == true) then
  1885. Humanoid.Jump = false
  1886. end
  1887. end)
  1888.  
  1889. local sick = IT("Sound")
  1890.  
  1891. while true do
  1892. Swait()
  1893. script.Parent = WEAPONGUI
  1894. ANIMATE.Parent = nil
  1895. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  1896. v:Stop();
  1897. end
  1898. SINE = SINE + CHANGE
  1899. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1900. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1901. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  1902. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1903. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1904. 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)
  1905. 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)
  1906. 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(90 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1907. 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(90 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1908. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1909. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1910. 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)
  1911. 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)
  1912. 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)
  1913. end
  1914. if HITFLOOR == nil then
  1915. ANIM = "Midair"
  1916. if ATTACK == false then
  1917. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1918. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1919. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.7, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1920. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.8, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1921. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.2, -0.6) * ANGLES(RAD(15), RAD(70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1922. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.2, -0.6) * ANGLES(RAD(15), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1923. end
  1924. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1925. ANIM = "Idle"
  1926. if ATTACK == false then
  1927. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.1 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1928. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 0.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), 0.15 / Animation_Speed)
  1929. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.7, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1930. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.8, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1931. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
  1932. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(0)), 1 / Animation_Speed)
  1933. end
  1934. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1935. ANIM = "Walk"
  1936. if ATTACK == false then
  1937. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.1) * ANGLES(RAD(5), RAD(0), RAD(10 * COS(SINE / WALKSPEEDVALUE))), 0.5 / Animation_Speed)
  1938. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-10 * COS(SINE / WALKSPEEDVALUE))), 0.5 / Animation_Speed)
  1939. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(0.7, 0.5, -0.5) * ANGLES(RAD(0), RAD(0), RAD(-85)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1940. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-0.8, 0.15, -0.5) * ANGLES(RAD(-15), RAD(0), RAD(85)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1941. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
  1942. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
  1943. end
  1944. end
  1945. Humanoid.MaxHealth = "inf"
  1946. Humanoid.Health = "inf"
  1947. Humanoid.PlatformStand = false
  1948. Humanoid.Name = "DeadWinterGuy"
  1949. sick.SoundId = "rbxassetid://1472374501"
  1950. sick.Looped = true
  1951. sick.Pitch = 1
  1952. sick.Volume = 2
  1953. sick.Playing = true
  1954. sick.Parent = Effects
  1955. for _, c in pairs(Character:GetDescendants()) do
  1956. if c == Head then
  1957. if c:FindFirstChild("face") then
  1958. c.face:remove()
  1959. end
  1960. end
  1961. end
  1962. if ATTACK == false and Player.Name == "Jav181MR" then
  1963. local oof = Slice("Thin",1,15,CF(Torso.Position) * CF(MRANDOM(-1,1),MRANDOM(-6,6),MRANDOM(-1,1)) * ANGLES(RAD(-10,10),RAD(MRANDOM(-180,180)),RAD(-10,10)),SKILLTEXTCOLOR,VT(-0.2,0,-0.2))
  1964. end
  1965. if ATTACK == false and Player.Name == "duck" then
  1966. local ORB = AvailableOrbs[MRANDOM(1,#AvailableOrbs)]
  1967. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = CF(ORB.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1968. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = CF(ORB.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1969. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(1,1,1), Size2 = VT(0,15,0), Transparency = 0, Transparency2 = 1, CFrame = CF(ORB.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-35,35), RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = MRANDOM(7,15)/10, SoundVolume = 10})
  1970. end
  1971. if ATTACK == false then
  1972. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(4,0.5,4), Size2 = VT(5,0,5), Transparency = 0.7, Transparency2 = 1, CFrame = CF(Torso.CFrame*CF(0,-2.9,0).p), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1973. end
  1974. AntiTimeStop()
  1975. if Rooted == false then
  1976. Disable_Jump = true
  1977. Humanoid.WalkSpeed = 0
  1978. elseif Rooted == true then
  1979. Disable_Jump = false
  1980. Humanoid.WalkSpeed = Speed
  1981. for _, c in pairs(ORBHOLDER:GetChildren()) do
  1982. c.Name = "IN USE"
  1983. end
  1984. if #Orbs>0 then
  1985. for e=1,#Orbs do
  1986. if Orbs[e]~=nil then
  1987. local Thing=Orbs[e]
  1988. if Thing~=nil then
  1989. local Part=Thing[1]
  1990. local Force=Thing[2]
  1991. Part.ItemValue.Value = e
  1992. Part.Anchored = false
  1993. Part.Parent = ORBHOLDER
  1994. Part.Name = e
  1995. Force.Position = Torso.CFrame*CF(0,1,0)*ANGLES(RAD(0),RAD(0),RAD(e*(360/#Orbs)))*CF(0,3.5,1.5).p
  1996. end
  1997. end
  1998. end
  1999. end
  2000. end
  2001. end
  2002.  
  2003. --//=================================\\
  2004. --\\=================================//
  2005.  
  2006. --//====================================================\\--
  2007. --|| END OF SCRIPT
  2008. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement