Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,game,owner = owner,game
  3. local RealPlayer = Player
  4. do
  5. print("FE Compatibility code V2 by Mokiros")
  6. local RealPlayer = RealPlayer
  7. script.Parent = RealPlayer.Character
  8.  
  9. --Fake event to make stuff like Mouse.KeyDown work
  10. local Disconnect_Function = function(this)
  11. this[1].Functions[this[2]] = nil
  12. end
  13. local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  14. local FakeEvent_Metatable = {__index={
  15. Connect = function(this,f)
  16. local i = tostring(math.random(0,10000))
  17. while this.Functions[i] do
  18. i = tostring(math.random(0,10000))
  19. end
  20. this.Functions[i] = f
  21. return setmetatable({this,i},Disconnect_Metatable)
  22. end
  23. }}
  24. FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  25. local function fakeEvent()
  26. return setmetatable({Functions={}},FakeEvent_Metatable)
  27. end
  28.  
  29. --Creating fake input objects with fake variables
  30. local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  31. FakeMouse.keyUp = FakeMouse.KeyUp
  32. FakeMouse.keyDown = FakeMouse.KeyDown
  33. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  34. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  35. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  36. end}
  37. --Merged 2 functions into one by checking amount of arguments
  38. CAS.UnbindAction = CAS.BindAction
  39.  
  40. --This function will trigger the events that have been :Connect()'ed
  41. local function TriggerEvent(self,ev,...)
  42. for _,f in pairs(self[ev].Functions) do
  43. f(...)
  44. end
  45. end
  46. FakeMouse.TriggerEvent = TriggerEvent
  47. UIS.TriggerEvent = TriggerEvent
  48.  
  49. --Client communication
  50. local Event = Instance.new("RemoteEvent")
  51. Event.Name = "UserInput_Event"
  52. Event.OnServerEvent:Connect(function(plr,io)
  53. if plr~=RealPlayer then return end
  54. FakeMouse.Target = io.Target
  55. FakeMouse.Hit = io.Hit
  56. if not io.isMouse then
  57. local b = io.UserInputState == Enum.UserInputState.Begin
  58. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  59. return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  60. end
  61. if io.UserInputType == Enum.UserInputType.MouseButton2 then
  62. return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  63. end
  64. for _,t in pairs(CAS.Actions) do
  65. for _,k in pairs(t.Keys) do
  66. if k==io.KeyCode then
  67. t.Function(t.Name,io.UserInputState,io)
  68. end
  69. end
  70. end
  71. FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  72. UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  73. end
  74. end)
  75. Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  76. local Mouse = owner:GetMouse()
  77. local UIS = game:GetService("UserInputService")
  78. local input = function(io,RobloxHandled)
  79. if RobloxHandled then return end
  80. --Since InputObject is a client-side instance, we create and pass table instead
  81. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  82. end
  83. UIS.InputBegan:Connect(input)
  84. UIS.InputEnded:Connect(input)
  85. local h,t
  86. --Give the server mouse data every second frame, but only if the values changed
  87. --If player is not moving their mouse, client won't fire events
  88. local HB = game:GetService("RunService").Heartbeat
  89. while true do
  90. if h~=Mouse.Hit or t~=Mouse.Target then
  91. h,t=Mouse.Hit,Mouse.Target
  92. Event:FireServer({isMouse=true,Target=t,Hit=h})
  93. end
  94. --Wait 2 frames
  95. for i=1,2 do
  96. HB:Wait()
  97. end
  98. end]==],script)
  99.  
  100. ----Sandboxed game object that allows the usage of client-side methods and services
  101. --Real game object
  102. local RealGame = game
  103.  
  104. --Metatable for fake service
  105. local FakeService_Metatable = {
  106. __index = function(self,k)
  107. local s = rawget(self,"_RealService")
  108. if s then
  109. return typeof(s[k])=="function"
  110. and function(_,...)return s[k](s,...)end or s[k]
  111. end
  112. end,
  113. __newindex = function(self,k,v)
  114. local s = rawget(self,"_RealService")
  115. if s then s[k]=v end
  116. end
  117. }
  118. local function FakeService(t,RealService)
  119. t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  120. return setmetatable(t,FakeService_Metatable)
  121. end
  122.  
  123. --Fake game object
  124. local FakeGame = {
  125. GetService = function(self,s)
  126. return rawget(self,s) or RealGame:GetService(s)
  127. end,
  128. Players = FakeService({
  129. LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  130. },"Players"),
  131. UserInputService = FakeService(UIS,"UserInputService"),
  132. ContextActionService = FakeService(CAS,"ContextActionService"),
  133. RunService = FakeService({
  134. _btrs = {},
  135. RenderStepped = RealGame:GetService("RunService").Heartbeat,
  136. BindToRenderStep = function(self,name,_,fun)
  137. self._btrs[name] = self.Heartbeat:Connect(fun)
  138. end,
  139. UnbindFromRenderStep = function(self,name)
  140. self._btrs[name]:Disconnect()
  141. end,
  142. },"RunService")
  143. }
  144. rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  145. FakeGame.service = FakeGame.GetService
  146. FakeService(FakeGame,game)
  147. --Changing owner to fake player object to support owner:GetMouse()
  148. game,owner = FakeGame,FakeGame.Players.LocalPlayer
  149. end
  150.  
  151. wait(0.2)
  152.  
  153. Player = game:GetService("Players").LocalPlayer
  154. PlayerGui = Player.PlayerGui
  155. Cam = workspace.CurrentCamera
  156. Backpack = Player.Backpack
  157. Character = Player.Character
  158. Humanoid = Character.Humanoid
  159. Mouse = Player:GetMouse()
  160. RootPart = Character["HumanoidRootPart"]
  161. Torso = Character["Torso"]
  162. Head = Character["Head"]
  163. RightArm = Character["Right Arm"]
  164. LeftArm = Character["Left Arm"]
  165. RightLeg = Character["Right Leg"]
  166. LeftLeg = Character["Left Leg"]
  167. RootJoint = RootPart["RootJoint"]
  168. Neck = Torso["Neck"]
  169. RightShoulder = Torso["Right Shoulder"]
  170. LeftShoulder = Torso["Left Shoulder"]
  171. RightHip = Torso["Right Hip"]
  172. LeftHip = Torso["Left Hip"]
  173.  
  174. IT = Instance.new
  175. CF = CFrame.new
  176. VT = Vector3.new
  177. RAD = math.rad
  178. C3 = Color3.new
  179. UD2 = UDim2.new
  180. BRICKC = BrickColor.new
  181. ANGLES = CFrame.Angles
  182. EULER = CFrame.fromEulerAnglesXYZ
  183. COS = math.cos
  184. ACOS = math.acos
  185. SIN = math.sin
  186. ASIN = math.asin
  187. ABS = math.abs
  188. MRANDOM = math.random
  189. FLOOR = math.floor
  190.  
  191. --//=================================\\
  192. --|| USEFUL VALUES
  193. --\\=================================//
  194.  
  195. Animation_Speed = 3
  196. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  197. local Speed = 16
  198. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  199. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  200. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  201. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  202. local DAMAGEMULTIPLIER = 1
  203. local ANIM = "Idle"
  204. local ATTACK = false
  205. local EQUIPPED = false
  206. local HOLD = false
  207. local COMBO = 1
  208. local Rooted = false
  209. local SINE = 0
  210. local KEYHOLD = false
  211. local CHANGE = 2 / Animation_Speed
  212. local WALKINGANIM = false
  213. local VALUE1 = false
  214. local VALUE2 = false
  215. local ROBLOXIDLEANIMATION = IT("Animation")
  216. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  217. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  218. --ROBLOXIDLEANIMATION.Parent = Humanoid
  219. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  220. WEAPONGUI.Name = "Weapon GUI"
  221. local Effects = IT("Folder", Character)
  222. Effects.Name = "Effects"
  223. local ANIMATOR = Humanoid.Animator
  224. local ANIMATE = Character.Animate
  225. local UNANCHOR = true
  226. local SC = false
  227.  
  228. --//=================================\\
  229. --\\=================================//
  230.  
  231.  
  232. --//=================================\\
  233. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  234. --\\=================================//
  235.  
  236. ArtificialHB = Instance.new("BindableEvent", script)
  237. ArtificialHB.Name = "ArtificialHB"
  238.  
  239. script:WaitForChild("ArtificialHB")
  240.  
  241. frame = Frame_Speed
  242. tf = 0
  243. allowframeloss = false
  244. tossremainder = false
  245. lastframe = tick()
  246. script.ArtificialHB:Fire()
  247.  
  248. game:GetService("RunService").Heartbeat:connect(function(s, p)
  249. tf = tf + s
  250. if tf >= frame then
  251. if allowframeloss then
  252. ArtificialHB:Fire()
  253. lastframe = tick()
  254. else
  255. for i = 1, math.floor(tf / frame) do
  256. ArtificialHB:Fire()
  257. end
  258. lastframe = tick()
  259. end
  260. if tossremainder then
  261. tf = 0
  262. else
  263. tf = tf - frame * math.floor(tf / frame)
  264. end
  265. end
  266. end)
  267.  
  268. --//=================================\\
  269. --\\=================================//
  270.  
  271. --//=================================\\
  272. --|| SOME FUNCTIONS
  273. --\\=================================//
  274.  
  275. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  276. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  277. end
  278.  
  279. function PositiveAngle(NUMBER)
  280. if NUMBER >= 0 then
  281. NUMBER = 0
  282. end
  283. return NUMBER
  284. end
  285.  
  286. function NegativeAngle(NUMBER)
  287. if NUMBER <= 0 then
  288. NUMBER = 0
  289. end
  290. return NUMBER
  291. end
  292.  
  293. function wait(NUMBER)
  294. if NUMBER == 0 or NUMBER == nil then
  295. ArtificialHB.Event:wait()
  296. else
  297. for i = 1, NUMBER do
  298. ArtificialHB.Event:wait()
  299. end
  300. end
  301. end
  302.  
  303. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  304. local NEWMESH = IT(MESH)
  305. if MESH == "SpecialMesh" then
  306. NEWMESH.MeshType = MESHTYPE
  307. if MESHID ~= "nil" and MESHID ~= "" then
  308. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  309. end
  310. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  311. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  312. end
  313. end
  314. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  315. NEWMESH.Scale = SCALE
  316. NEWMESH.Parent = PARENT
  317. return NEWMESH
  318. end
  319.  
  320. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  321. local NEWPART = IT("Part")
  322. NEWPART.formFactor = FORMFACTOR
  323. NEWPART.Reflectance = REFLECTANCE
  324. NEWPART.Transparency = TRANSPARENCY
  325. NEWPART.CanCollide = false
  326. NEWPART.Locked = true
  327. NEWPART.Anchored = true
  328. if ANCHOR == false then
  329. NEWPART.Anchored = false
  330. end
  331. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  332. NEWPART.Name = NAME
  333. NEWPART.Size = SIZE
  334. NEWPART.Position = Torso.Position
  335. NEWPART.Material = MATERIAL
  336. NEWPART:BreakJoints()
  337. NEWPART.Parent = PARENT
  338. return NEWPART
  339. end
  340.  
  341. local function weldBetween(a, b)
  342. local weldd = Instance.new("ManualWeld")
  343. weldd.Part0 = a
  344. weldd.Part1 = b
  345. weldd.C0 = CFrame.new()
  346. weldd.C1 = b.CFrame:inverse() * a.CFrame
  347. weldd.Parent = a
  348. return weldd
  349. end
  350.  
  351.  
  352. function QuaternionFromCFrame(cf)
  353. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  354. local trace = m00 + m11 + m22
  355. if trace > 0 then
  356. local s = math.sqrt(1 + trace)
  357. local recip = 0.5 / s
  358. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  359. else
  360. local i = 0
  361. if m11 > m00 then
  362. i = 1
  363. end
  364. if m22 > (i == 0 and m00 or m11) then
  365. i = 2
  366. end
  367. if i == 0 then
  368. local s = math.sqrt(m00 - m11 - m22 + 1)
  369. local recip = 0.5 / s
  370. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  371. elseif i == 1 then
  372. local s = math.sqrt(m11 - m22 - m00 + 1)
  373. local recip = 0.5 / s
  374. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  375. elseif i == 2 then
  376. local s = math.sqrt(m22 - m00 - m11 + 1)
  377. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  378. end
  379. end
  380. end
  381.  
  382. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  383. local xs, ys, zs = x + x, y + y, z + z
  384. local wx, wy, wz = w * xs, w * ys, w * zs
  385. local xx = x * xs
  386. local xy = x * ys
  387. local xz = x * zs
  388. local yy = y * ys
  389. local yz = y * zs
  390. local zz = z * zs
  391. 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))
  392. end
  393.  
  394. function QuaternionSlerp(a, b, t)
  395. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  396. local startInterp, finishInterp;
  397. if cosTheta >= 0.0001 then
  398. if (1 - cosTheta) > 0.0001 then
  399. local theta = ACOS(cosTheta)
  400. local invSinTheta = 1 / SIN(theta)
  401. startInterp = SIN((1 - t) * theta) * invSinTheta
  402. finishInterp = SIN(t * theta) * invSinTheta
  403. else
  404. startInterp = 1 - t
  405. finishInterp = t
  406. end
  407. else
  408. if (1 + cosTheta) > 0.0001 then
  409. local theta = ACOS(-cosTheta)
  410. local invSinTheta = 1 / SIN(theta)
  411. startInterp = SIN((t - 1) * theta) * invSinTheta
  412. finishInterp = SIN(t * theta) * invSinTheta
  413. else
  414. startInterp = t - 1
  415. finishInterp = t
  416. end
  417. end
  418. 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
  419. end
  420.  
  421. function Clerp(a, b, t)
  422. local qa = {QuaternionFromCFrame(a)}
  423. local qb = {QuaternionFromCFrame(b)}
  424. local ax, ay, az = a.x, a.y, a.z
  425. local bx, by, bz = b.x, b.y, b.z
  426. local _t = 1 - t
  427. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  428. end
  429.  
  430. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  431. local frame = IT("Frame")
  432. frame.BackgroundTransparency = TRANSPARENCY
  433. frame.BorderSizePixel = BORDERSIZEPIXEL
  434. frame.Position = POSITION
  435. frame.Size = SIZE
  436. frame.BackgroundColor3 = COLOR
  437. frame.BorderColor3 = BORDERCOLOR
  438. frame.Name = NAME
  439. frame.Parent = PARENT
  440. return frame
  441. end
  442.  
  443. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  444. local label = IT("TextLabel")
  445. label.BackgroundTransparency = 1
  446. label.Size = UD2(1, 0, 1, 0)
  447. label.Position = UD2(0, 0, 0, 0)
  448. label.TextColor3 = TEXTCOLOR
  449. label.TextStrokeTransparency = STROKETRANSPARENCY
  450. label.TextTransparency = TRANSPARENCY
  451. label.FontSize = TEXTFONTSIZE
  452. label.Font = TEXTFONT
  453. label.BorderSizePixel = BORDERSIZEPIXEL
  454. label.TextScaled = false
  455. label.Text = TEXT
  456. label.Name = NAME
  457. label.Parent = PARENT
  458. return label
  459. end
  460.  
  461. function NoOutlines(PART)
  462. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  463. end
  464.  
  465. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  466. local NEWWELD = IT(TYPE)
  467. NEWWELD.Part0 = PART0
  468. NEWWELD.Part1 = PART1
  469. NEWWELD.C0 = C0
  470. NEWWELD.C1 = C1
  471. NEWWELD.Parent = PARENT
  472. return NEWWELD
  473. end
  474.  
  475. local S = IT("Sound")
  476. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  477. local NEWSOUND = nil
  478. coroutine.resume(coroutine.create(function()
  479. NEWSOUND = S:Clone()
  480. NEWSOUND.Parent = PARENT
  481. NEWSOUND.Volume = VOLUME
  482. NEWSOUND.Pitch = PITCH
  483. NEWSOUND.SoundId = "rbxassetid://"..ID
  484. NEWSOUND:play()
  485. if DOESLOOP == true then
  486. NEWSOUND.Looped = true
  487. else
  488. repeat wait(1) until NEWSOUND.Playing == false
  489. NEWSOUND:remove()
  490. end
  491. end))
  492. return NEWSOUND
  493. end
  494.  
  495. function CFrameFromTopBack(at, top, back)
  496. local right = top:Cross(back)
  497. 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)
  498. end
  499.  
  500. --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, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
  501. function WACKYEFFECT(Table)
  502. local TYPE = (Table.EffectType or "Sphere")
  503. local SIZE = (Table.Size or VT(1,1,1))
  504. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  505. local TRANSPARENCY = (Table.Transparency or 0)
  506. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  507. local CFRAME = (Table.CFrame or Torso.CFrame)
  508. local MOVEDIRECTION = (Table.MoveToPos or nil)
  509. local ROTATION1 = (Table.RotationX or 0)
  510. local ROTATION2 = (Table.RotationY or 0)
  511. local ROTATION3 = (Table.RotationZ or 0)
  512. local MATERIAL = (Table.Material or "Neon")
  513. local COLOR = (Table.Color or C3(1,1,1))
  514. local TIME = (Table.Time or 45)
  515. local SOUNDID = (Table.SoundID or nil)
  516. local SOUNDPITCH = (Table.SoundPitch or nil)
  517. local SOUNDVOLUME = (Table.SoundVolume or nil)
  518. local USEBOOMERANGMATH = (Table.UseBoomerangMath or false)
  519. local BOOMERANG = (Table.Boomerang or 0)
  520. local SIZEBOOMERANG = (Table.SizeBoomerang or 0)
  521. coroutine.resume(coroutine.create(function()
  522. local PLAYSSOUND = false
  523. local SOUND = nil
  524. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  525. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  526. PLAYSSOUND = true
  527. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  528. end
  529. EFFECT.Color = COLOR
  530. local MSH = nil
  531. if TYPE == "Sphere" then
  532. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  533. elseif TYPE == "Block" or TYPE == "Box" then
  534. MSH = IT("BlockMesh",EFFECT)
  535. MSH.Scale = SIZE
  536. elseif TYPE == "Wave" then
  537. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  538. elseif TYPE == "Ring" then
  539. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  540. elseif TYPE == "Slash" then
  541. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  542. elseif TYPE == "Round Slash" then
  543. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  544. elseif TYPE == "Swirl" then
  545. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "168892432", "", SIZE, VT(0,0,0))
  546. elseif TYPE == "Skull" then
  547. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  548. elseif TYPE == "Crystal" then
  549. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  550. end
  551. if MSH ~= nil then
  552. local BOOMR1 = 1+BOOMERANG/50
  553. local BOOMR2 = 1+SIZEBOOMERANG/50
  554. local MOVESPEED = nil
  555. if MOVEDIRECTION ~= nil then
  556. if USEBOOMERANGMATH == true then
  557. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)*BOOMR1
  558. else
  559. MOVESPEED = ((CFRAME.p - MOVEDIRECTION).Magnitude/TIME)
  560. end
  561. end
  562. local GROWTH = nil
  563. if USEBOOMERANGMATH == true then
  564. GROWTH = (SIZE - ENDSIZE)*(BOOMR2+1)
  565. else
  566. GROWTH = (SIZE - ENDSIZE)
  567. end
  568. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  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 = CFRAME
  573. end
  574. if USEBOOMERANGMATH == true then
  575. for LOOP = 1, TIME+1 do
  576. wait()
  577. MSH.Scale = MSH.Scale - (VT((GROWTH.X)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Y)*((1 - (LOOP/TIME)*BOOMR2)),(GROWTH.Z)*((1 - (LOOP/TIME)*BOOMR2)))*BOOMR2)/TIME
  578. if TYPE == "Wave" then
  579. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  580. end
  581. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  582. if TYPE == "Block" then
  583. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  584. else
  585. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  586. end
  587. if MOVEDIRECTION ~= nil then
  588. local ORI = EFFECT.Orientation
  589. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-(MOVESPEED)*((1 - (LOOP/TIME)*BOOMR1)))
  590. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  591. end
  592. end
  593. else
  594. for LOOP = 1, TIME+1 do
  595. wait()
  596. MSH.Scale = MSH.Scale - GROWTH/TIME
  597. if TYPE == "Wave" then
  598. MSH.Offset = VT(0,0,-MSH.Scale.Z/8)
  599. end
  600. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  601. if TYPE == "Block" then
  602. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  603. else
  604. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  605. end
  606. if MOVEDIRECTION ~= nil then
  607. local ORI = EFFECT.Orientation
  608. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  609. EFFECT.CFrame = CF(EFFECT.Position)*ANGLES(RAD(ORI.X),RAD(ORI.Y),RAD(ORI.Z))
  610. end
  611. end
  612. end
  613. EFFECT.Transparency = 1
  614. if PLAYSSOUND == false then
  615. EFFECT:remove()
  616. else
  617. repeat wait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  618. EFFECT:remove()
  619. end
  620. else
  621. if PLAYSSOUND == false then
  622. EFFECT:remove()
  623. else
  624. repeat wait() until EFFECT:FindFirstChildOfClass("Sound") == nil
  625. EFFECT:remove()
  626. end
  627. end
  628. end))
  629. end
  630.  
  631. function MakeForm(PART,TYPE)
  632. if TYPE == "Cyl" then
  633. local MSH = IT("CylinderMesh",PART)
  634. elseif TYPE == "Ball" then
  635. local MSH = IT("SpecialMesh",PART)
  636. MSH.MeshType = "Sphere"
  637. elseif TYPE == "Wedge" then
  638. local MSH = IT("SpecialMesh",PART)
  639. MSH.MeshType = "Wedge"
  640. end
  641. end
  642.  
  643. Debris = game:GetService("Debris")
  644.  
  645. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  646. local DIRECTION = CF(StartPos,EndPos).lookVector
  647. local Ignore = ((type(Ignore) == "table" and Ignore) or {Ignore})
  648. return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(StartPos, DIRECTION * Distance), Ignore)
  649. end
  650.  
  651. --Debree({Delay = 1.5,Variant = "",Location = Torso.Position,Color = C3(1,1,1),Size = 1,Distance = 1,Material = "Slate",Scatter = 1,Amount = 1,DebreeCount = 1})
  652. function Debree(Table)
  653. local KindOf = (Table.Variant or "Ring")
  654. local Position = (Table.Location or Torso.Position)
  655. local Coloration = (Table.Color or C3(1,1,1))
  656. local Texture = (Table.Material or "Slate")
  657. local Fling = (Table.Scatter or 1)
  658. local Number = (Table.Amount or 1)
  659. local Rocks = (Table.DebreeCount or 1)
  660. local Range = (Table.Distance or 1)
  661. local Scale = (Table.Size or 1)
  662. local Timer = (Table.Delay or 1.5)
  663. coroutine.resume(coroutine.create(function()
  664. local ScaleVector = VT(Scale,Scale,Scale)
  665. local Boulders = {}
  666. Position = CF(Position)
  667. if KindOf == "Ring" or KindOf == "Both" then
  668. for RockValue = 1, Number do
  669. local LOCATION = Position * ANGLES(RAD(0), RAD((360/Number)*RockValue), RAD(0))*CF(0,MRANDOM(-math.ceil(Scale/4),math.ceil(Scale/4)),Range)
  670. local BOULDER = CreatePart(3, workspace, Texture, 0, 0, BRICKC("Pearl"), "Debree", ScaleVector, true)
  671. BOULDER.CanCollide = true
  672. BOULDER.CFrame = LOCATION*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  673. BOULDER.Color = Coloration
  674. table.insert(Boulders,BOULDER)
  675. end
  676. end
  677. if KindOf == "Loose" or KindOf == "Both" then
  678. for RockValue = 1, Rocks do
  679. local LOCATION = Position * ANGLES(RAD(0), RAD((360/Number)*RockValue), RAD(0))*CF(0,MRANDOM(-math.ceil(Scale-(Scale/2)),math.ceil(Scale-(Scale/2))),0.7)
  680. local BOULDER = CreatePart(3, workspace, Texture, 0, 0, BRICKC("Pearl"), "Debree", ScaleVector, false)
  681. BOULDER.CanCollide = true
  682. BOULDER.CFrame = LOCATION*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  683. BOULDER.Velocity = CF(BOULDER.Position-VT(0,4,0),BOULDER.CFrame*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,5,0).p).lookVector*MRANDOM(Fling-(Fling/1.5),Fling+(Fling/1.5))
  684. BOULDER.Color = Coloration
  685. table.insert(Boulders,BOULDER)
  686. end
  687. end
  688. if KindOf == "Random" then
  689. for RockValue = 1, Number do
  690. local LOCATION = Position * ANGLES(RAD(0), RAD((360/Number)*RockValue), RAD(0))*CF(0,MRANDOM(-math.ceil(Scale/4),math.ceil(Scale/4)),MRANDOM(0,Range))
  691. local BOULDER = CreatePart(3, workspace, Texture, 0, 0, BRICKC("Pearl"), "Debree", ScaleVector, true)
  692. BOULDER.CanCollide = true
  693. BOULDER.CFrame = LOCATION*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  694. BOULDER.Color = Coloration
  695. table.insert(Boulders,BOULDER)
  696. end
  697. end
  698. wait(Timer)
  699. for E = 1, 45 do
  700. wait()
  701. for A = 1, #Boulders do
  702. Boulders[A].Transparency = Boulders[A].Transparency + 1/45
  703. end
  704. end
  705. for A = 1, #Boulders do
  706. Boulders[A]:Destroy()
  707. end
  708. end))
  709. end
  710.  
  711. --//=================================\\
  712. --|| MUSIC AND COLORS
  713. --\\=================================//
  714.  
  715. local BASECOLOR = C3(0,0,0)
  716. local BMUSIC = IT("Sound",RootPart)
  717. local VOLUME = 1
  718. local PITCH = 1
  719. local SONGID = 1442022177
  720. local PLAYING = false
  721. local INTRO = false
  722. local SCREENS = {}
  723. local SCREENWELDS = {}
  724. local GUISTEXT = {}
  725.  
  726. --//=================================\\
  727. --|| DAMAGING
  728. --\\=================================//
  729.  
  730. function ApplyDamage(Humanoid,Damage)
  731. if Damage > 0 then
  732. Damage = Damage * DAMAGEMULTIPLIER
  733. if Humanoid.Health < 2000 then
  734. if Humanoid.Health - Damage > 0 then
  735. Humanoid.Health = Humanoid.Health - Damage
  736. else
  737. Humanoid.Parent:BreakJoints()
  738. end
  739. else
  740. Humanoid.Parent:BreakJoints()
  741. end
  742. end
  743. end
  744.  
  745. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  746. for index, CHILD in pairs(workspace:GetDescendants()) do
  747. if CHILD.ClassName == "Model" and CHILD ~= Character then
  748. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  749. if HUM then
  750. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  751. if TORSO then
  752. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  753. if INSTAKILL == true then
  754. CHILD:BreakJoints()
  755. else
  756. local DMG = MRANDOM(MINDMG,MAXDMG)
  757. ApplyDamage(HUM,DMG)
  758. end
  759. if FLING > 0 then
  760. for _, c in pairs(CHILD:GetChildren()) do
  761. if c:IsA("BasePart") then
  762. local bv = Instance.new("BodyVelocity")
  763. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  764. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  765. bv.Parent = c
  766. Debris:AddItem(bv,0.05)
  767. end
  768. end
  769. end
  770. end
  771. end
  772. end
  773. end
  774. end
  775. end
  776.  
  777. --//=================================\\
  778. --|| ATTACK FUNCTIONS AND STUFF
  779. --\\=================================//
  780.  
  781. local GLASSESWLD = nil
  782. function IntroThing()
  783. ATTACK = true
  784. Rooted = true
  785. RootJoint.C0 = CF(0,250,0)
  786. CONNECT = Mouse.KeyDown:connect(function(NEWKEY)
  787. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  788. if HITFLOOR then
  789. CONNECT:Disconnect()
  790. local SOUND = CreateSound(606241996, Effects, 5, 1)
  791. coroutine.resume(coroutine.create(function()
  792. repeat wait() SOUND.Parent = Effects until SOUND.Playing == false
  793. PLAYING = true
  794. end))
  795. for i=0, 0.4, 0.1 / Animation_Speed do
  796. wait()
  797. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.31, -0.65 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(60), RAD(0), RAD(0)), 1 / Animation_Speed)
  798. 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)
  799. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1.4) * ANGLES(RAD(65), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  800. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  801. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(20), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  802. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.1 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(60), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  803. end
  804. for i = 1, 3 do
  805. WACKYEFFECT({EffectType = "Wave", Size = VT(0,5,0), Size2 = VT(i*12,5,i*12), Transparency = 0.6, Transparency2 = 1, CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(MRANDOM(-5,5))), MoveToPos = nil, RotationX = 0.1, RotationY = 1, RotationZ = -0.1, Material = "Neon", Color = C3(1,1,1), SoundID = 765590102, SoundPitch = MRANDOM(5,15)/10, SoundVolume = 5, UseBoomerangMath = false, Boomerang = 0, SizeBoomerang = 0})
  806. end
  807. Debree({Delay = 4,Variant = "Ring",Location = HITPOS,Color = HITFLOOR.Color,Size = 3,Distance = 15,Material = HITFLOOR.Material,Scatter = 1,Amount = 30,DebreeCount = 8})
  808. for i=0, 0.85, 0.1 / Animation_Speed do
  809. wait()
  810. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.31, -0.65 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(60), RAD(0), RAD(0)), 1 / Animation_Speed)
  811. 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)
  812. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1.4) * ANGLES(RAD(65), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  813. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  814. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(20), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  815. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.1 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(60), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  816. end
  817. for i=0, 1, 0.1 / Animation_Speed do
  818. wait()
  819. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.31, -0.65 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(60), RAD(0), RAD(0)), 1 / Animation_Speed)
  820. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-50 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  821. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1.4) * ANGLES(RAD(65), RAD(0), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  822. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(-35)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  823. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(20), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  824. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.1 - 0.05 * COS(SINE / 12), -0.4) * ANGLES(RAD(60), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / Animation_Speed)
  825. end
  826. for i=0, 1, 0.1 / Animation_Speed do
  827. wait()
  828. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  829. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(-45)), 1 / Animation_Speed)
  830. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5, 0.7) * ANGLES(RAD(-45), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  831. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  832. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  833. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  834. end
  835. local GLASSES = CreatePart(3, Character, "Fabric", 0, 0, BRICKC("Pearl"), "Glasses", VT(0,0,0), false)
  836. CreateMesh("SpecialMesh", GLASSES, "FileMesh", "1577360", "1577349", VT(1, 1.3, 1), VT(0,0,0))
  837. local HELDWELD = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, GLASSES, CF(0,-1.4,0) * ANGLES(RAD(90), RAD(0), RAD(180)), CF(0,0,0))
  838. CreateSound(147722227, GLASSES, 2, 1.3, false)
  839. for i=0, 0.25, 0.1 / Animation_Speed do
  840. wait()
  841. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  842. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(-35)), 1 / Animation_Speed)
  843. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.45, -0.1) * ANGLES(RAD(30), RAD(-5), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  844. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  845. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  846. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  847. end
  848. for i=0, 0.3, 0.1 / Animation_Speed do
  849. wait()
  850. HELDWELD.C1 = Clerp(HELDWELD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(-35)), 0.1)
  851. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  852. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  853. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.2, -0.8) * ANGLES(RAD(160), RAD(-5), RAD(-46)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  854. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.15, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  855. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  856. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  857. end
  858. HELDWELD.Part0 = Head
  859. HELDWELD.Parent = Head
  860. HELDWELD.C0 = CF(0,0.1,-0.15)
  861. HELDWELD.C1 = CF(0,0,0)
  862. for i = 1, 3 do
  863. for i=0, 0.4, 0.1 / Animation_Speed do
  864. wait()
  865. HELDWELD.C1 = Clerp(HELDWELD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(-5)), 0.25)
  866. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  867. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  868. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.2, -0.3) * ANGLES(RAD(160), RAD(-5), RAD(-12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  869. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.1, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  870. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  871. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  872. end
  873. for i=0, 0.4, 0.1 / Animation_Speed do
  874. wait()
  875. HELDWELD.C1 = Clerp(HELDWELD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(5)), 0.25)
  876. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  877. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  878. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.1, -0.3) * ANGLES(RAD(160), RAD(-5), RAD(-12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  879. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.2, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  880. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  881. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  882. end
  883. end
  884. for i = 1, 4 do
  885. wait()
  886. local SCREEN = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Cyan"), "SCREEN", VT(2.5,0.8,0)*2, false)
  887. local SCREENWELD = CreateWeldOrSnapOrMotor("Weld", RootPart, RootPart, SCREEN, CF(0,0,0) * ANGLES(RAD(0),RAD((360/6)*i),RAD(0)) * CF(0,0,3+(i/1.5)), CF(0,0,0))
  888. table.insert(SCREENS,SCREEN)
  889. table.insert(SCREENWELDS,SCREENWELD)
  890. local GUI = IT("SurfaceGui",SCREEN)
  891. for i = 1, 5 do
  892. local SCREENFRAME = CreateFrame(GUI, 1, 2, UD2(0, 0, ((1/5)*i)-1/5, 0), UD2(1, 0, 1/5, 0), C3(0,0,0), C3(0,0,0), "TESTING.exe")
  893. local TEXT = CreateLabel(SCREENFRAME, "[BOOTING UP...]", C3(1,1,1), Enum.FontSize.Size48, "Code", 0.5, 1, 1, "RunningTests")
  894. TEXT.TextXAlignment = "Left"
  895. TEXT.TextWrapped = true
  896. table.insert(GUISTEXT,TEXT)
  897. end
  898. end
  899. for i=0, 1, 0.1 / Animation_Speed do
  900. wait()
  901. HELDWELD.C1 = Clerp(HELDWELD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 0.4)
  902. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  903. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  904. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.15, -0.25) * ANGLES(RAD(160), RAD(-5), RAD(12)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  905. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.15, -0.25) * ANGLES(RAD(160), RAD(5), RAD(-12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  906. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  907. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  908. end
  909. for i=0, 0.1, 0.1 / Animation_Speed do
  910. wait()
  911. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  912. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  913. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-5), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  914. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  915. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  916. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  917. end
  918. GLASSESWLD = HELDWELD
  919. ATTACK = false
  920. Rooted = false
  921. end
  922. end)
  923. end
  924. function Screening(Text,FinishesMoveEnd,WaitTillFinished)
  925. local SCREEN = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Cyan"), "SCREEN", VT(2.5,0.8,0)*1.5, false)
  926. local SCREENWELD = CreateWeldOrSnapOrMotor("Weld", RootPart, RootPart, SCREEN, CF(0,0,0) * ANGLES(RAD(-12),RAD(180),RAD(0)) * CF(0,0,1.5), CF(0,0,0))
  927. local GUI = IT("SurfaceGui",SCREEN)
  928. local SCREENFRAME = CreateFrame(GUI, 1, 2, UD2(0, 0, 0, 0), UD2(1, 0, 1, 0), C3(0,0,0), C3(0,0,0), "TESTING.exe")
  929. local TEXT = CreateLabel(SCREENFRAME, Text, C3(1,1,1), Enum.FontSize.Size48, "Code", 0.5, 1, 1, "RunningTests")
  930. TEXT.TextScaled = true
  931. coroutine.resume(coroutine.create(function()
  932. coroutine.resume(coroutine.create(function()
  933. for i = 1, 5 do
  934. wait()
  935. SCREEN.Transparency = SCREEN.Transparency - 0.1/5
  936. end
  937. end))
  938. if WaitTillFinished == false then
  939. for i=0, 1.7, 0.1 / Animation_Speed do
  940. wait()
  941. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  942. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 7 * COS(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  943. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.3, 0.45 + 0.1 * COS(SINE / 12), -0.2) * ANGLES(RAD(45), RAD(0), RAD(-15)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  944. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-44 - 1.5 * COS(SINE / 12)), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  945. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  946. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  947. end
  948. elseif WaitTillFinished == true then
  949. repeat
  950. wait()
  951. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  952. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 7 * COS(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  953. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.3, 0.45 + 0.1 * COS(SINE / 12), -0.2) * ANGLES(RAD(45), RAD(0), RAD(-15)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  954. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-44 - 1.5 * COS(SINE / 12)), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  955. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  956. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  957. until ATTACK == false
  958. end
  959. coroutine.resume(coroutine.create(function()
  960. SCREENWELD:Remove()
  961. SCREEN.Anchored = true
  962. for i = 1, 5 do
  963. wait()
  964. SCREEN.Transparency = SCREEN.Transparency + 0.1/5
  965. end
  966. SCREEN:Remove()
  967. end))
  968. if FinishesMoveEnd == true then
  969. ATTACK = false
  970. Rooted = false
  971. end
  972. end))
  973. return SCREEN,TEXT
  974. end
  975. local Fling = function()
  976. ATTACK = true
  977. Rooted = false
  978. Screening(";Fling",true,false)
  979. wait(0.25)
  980. RightShoulder.C0 = RightShoulder.C0 * CF(0,-0.12,0)
  981. CreateSound(138204323, RightArm, 2, 1.3, false)
  982. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  983. if HITFLOOR then
  984. Debree({Delay = 4,Variant = "Ring",Location = HITPOS,Color = HITFLOOR.Color,Size = 4,Distance = 75,Material = HITFLOOR.Material,Scatter = 1,Amount = MRANDOM(75,85),DebreeCount = 8})
  985. end
  986. ApplyAoE(RootPart.Position-VT(0,4,0),75,5,12,550,false)
  987. WACKYEFFECT({Time = 35, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(150,150,150), Transparency = 0.75, Transparency2 = 1, CFrame = CF(RootPart.Position), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = 610359590, SoundPitch = 1, SoundVolume = 6, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 5})
  988. end
  989. local TpTo = function()
  990. ATTACK = true
  991. Rooted = true
  992. local SCR, TEXT = Screening("",false,true)
  993. for i = 1, 35 do
  994. wait()
  995. local TPSPOT = "TPTO: ["..math.ceil(Mouse.Hit.p.X).."."..math.ceil(Mouse.Hit.p.Y+3.15).."."..math.ceil(Mouse.Hit.p.Z).."]"
  996. TEXT.Text = TPSPOT
  997. end
  998. RightShoulder.C0 = RightShoulder.C0 * CF(0,-0.12,0)
  999. CreateSound(138204323, RightArm, 2, 1.3, false)
  1000. CreateSound(1127492102, Torso, 2, 1, false)
  1001. RootPart.CFrame = CF(Mouse.Hit.p+VT(0,3.15,0)) * ANGLES(RAD(0), RAD(RootPart.Orientation.Y), RAD(0))
  1002. wait(0.1)
  1003. ATTACK = false
  1004. Rooted = false
  1005. end
  1006. local Hurl = function()
  1007. ATTACK = true
  1008. Rooted = false
  1009. local SCREEN = CreatePart(3, Effects, "Neon", 0, 1, BRICKC("Cyan"), "SCREEN", VT(2.5,0.8,0)*1.5, false)
  1010. local SCREENWELD = CreateWeldOrSnapOrMotor("Weld", RootPart, RootPart, SCREEN, CF(0,0,0) * ANGLES(RAD(-12),RAD(180),RAD(0)) * CF(0,0,1.5), CF(0,0,0))
  1011. local GUI = IT("SurfaceGui",SCREEN)
  1012. local SCREENFRAME = CreateFrame(GUI, 1, 2, UD2(0, 0, 0, 0), UD2(1, 0, 1, 0), C3(0,0,0), C3(0,0,0), "TESTING.exe")
  1013. local TEXT = CreateLabel(SCREENFRAME, "[COLLECTING DEBREE]", C3(1,1,1), Enum.FontSize.Size48, "Code", 0.5, 1, 1, "RunningTests")
  1014. local ROCKS = {}
  1015. coroutine.resume(coroutine.create(function()
  1016. for i = 1, 5 do
  1017. wait()
  1018. SCREEN.Transparency = SCREEN.Transparency - 0.1/5
  1019. end
  1020. end))
  1021. for i = 1, 12 do
  1022. local SPOT = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0)) * CF(0,0,MRANDOM(4,15))
  1023. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  1024. if HITFLOOR then
  1025. coroutine.resume(coroutine.create(function()
  1026. local BOULDER = CreatePart(3, Effects, HITFLOOR.Material, 0, 0, BRICKC("Cyan"), "Debree", VT(1,1,1)*(MRANDOM(5,25)/10), true)
  1027. BOULDER.Color = HITFLOOR.Color
  1028. BOULDER.CFrame = CF(HITPOS-VT(0,5,0)) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
  1029. local CFRAME = SPOT*CF(0,MRANDOM(7,12),0)
  1030. table.insert(ROCKS,BOULDER)
  1031. for i = 1, 35 do
  1032. wait()
  1033. BOULDER.CFrame = Clerp(BOULDER.CFrame,CFRAME,0.1)
  1034. end
  1035. end))
  1036. end
  1037. end
  1038. for i=0, 1.7, 0.1 / Animation_Speed do
  1039. wait()
  1040. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1041. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 7 * COS(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1042. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.3, 0.75 + 0.1 * COS(SINE / 12), -0.1) * ANGLES(RAD(145), RAD(0), RAD(-15)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1043. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-44 - 1.5 * COS(SINE / 12)), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1044. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1045. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1046. end
  1047. if #ROCKS > 0 then
  1048. TEXT.Text = "[HURLING DEBREE]"
  1049. local GYRO = IT("BodyGyro",RootPart)
  1050. GYRO.D = 2
  1051. GYRO.P = 20000
  1052. GYRO.MaxTorque = VT(0,4000000,0)
  1053. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1054. coroutine.resume(coroutine.create(function()
  1055. repeat
  1056. wait()
  1057. GYRO.CFrame = CF(RootPart.Position,Mouse.Hit.p)
  1058. until ATTACK == false
  1059. GYRO:Remove()
  1060. end))
  1061. local THROWING = true
  1062. coroutine.resume(coroutine.create(function()
  1063. repeat
  1064. wait()
  1065. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(25)), 1 / Animation_Speed)
  1066. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 - 7 * COS(SINE / 12)), RAD(0), RAD(-25)), 1 / Animation_Speed)
  1067. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.3, 0.45 + 0.1 * COS(SINE / 12), -0.2) * ANGLES(RAD(90), RAD(0), RAD(25)) * ANGLES(RAD(0), RAD(15), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1068. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.3, 0.45 + 0.1 * COS(SINE / 12), -0.2) * ANGLES(RAD(44 - 1.5 * COS(SINE / 12)), RAD(0), RAD(25)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1069. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(50), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1070. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-100), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1071. until THROWING == false
  1072. end))
  1073. for E = 1, #ROCKS do
  1074. wait(0.05)
  1075. local ROCK = ROCKS[E]
  1076. coroutine.resume(coroutine.create(function()
  1077. ROCK.CFrame = CF(ROCK.Position,Mouse.Hit.p)
  1078. CreateSound(147722227, ROCK, 2, 1.3, false)
  1079. local KILL = false
  1080. for i = 1, 70 do
  1081. wait()
  1082. for i = 1, 4 do
  1083. ROCK.CFrame = ROCK.CFrame * CF(0,0,-ROCK.Size.Z/2)
  1084. local HIT,POS,NORMAL = Raycast(ROCK.Position,ROCK.CFrame.lookVector,ROCK.Size.Z/1.5,Character)
  1085. if HIT then
  1086. KILL = true
  1087. CreateSound(174580476, ROCK, 2, 1.6, false)
  1088. ApplyAoE(ROCK.Position,6*ROCK.Size.Z,25,35,12,false)
  1089. for E = 1, 2 do
  1090. for i = 1, 4 do
  1091. WACKYEFFECT({Time = 50, EffectType = "Round Slash", Size = VT(0,0,0), Size2 = (VT(E,0,E)/15)*ROCK.Size.Z, Transparency = 0.8, Transparency2 = 1, CFrame = CF(ROCK.Position) * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 10})
  1092. end
  1093. end
  1094. Debree({Delay = 0.8,Variant = "Loose",Location = ROCK.Position,Color = ROCK.Color,Size = ROCK.Size.Z/3,Distance = 75,Material = ROCK.Material,Scatter = 35,Amount = MRANDOM(75,85),DebreeCount = 8})
  1095. break
  1096. else
  1097. WACKYEFFECT({Time = 6, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(3,1,3)*ROCK.Size.Z, Transparency = 0.97, Transparency2 = 1, CFrame = ROCK.CFrame*CF(0,0,-ROCK.Size.Z/2) * ANGLES(RAD(90), RAD(MRANDOM(0,360)), RAD(MRANDOM(-5,5))), MoveToPos = nil, RotationX = MRANDOM(-1,1), RotationY = MRANDOM(-1,1), RotationZ = MRANDOM(-1,1), Material = "Neon", Color = BRICKC"Cyan".Color, SoundID = nil, SoundPitch = MRANDOM(5,15)/10, SoundVolume = 5, UseBoomerangMath = true, Boomerang = 0, SizeBoomerang = 25})
  1098. end
  1099. end
  1100. if KILL == true then
  1101. break
  1102. end
  1103. end
  1104. ROCK.Transparency = 1
  1105. Debris:AddItem(ROCK,5)
  1106. end))
  1107. wait(0.05)
  1108. end
  1109. THROWING = false
  1110. end
  1111. coroutine.resume(coroutine.create(function()
  1112. SCREENWELD:Remove()
  1113. SCREEN.Anchored = true
  1114. for i = 1, 5 do
  1115. wait()
  1116. SCREEN.Transparency = SCREEN.Transparency + 0.1/5
  1117. end
  1118. SCREEN:Remove()
  1119. end))
  1120. ATTACK = false
  1121. Rooted = false
  1122. end
  1123. local Kill = function()
  1124. local TARGET = Mouse.Target
  1125. if TARGET ~= nil then
  1126. if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
  1127. local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
  1128. local ROOT = HUM.Parent:FindFirstChild("HumanoidRootPart") or HUM.Parent:FindFirstChild("Torso")
  1129. if ROOT and HUM.Health > 0 then
  1130. local FOE = ROOT.Parent
  1131. ATTACK = true
  1132. Rooted = false
  1133. Screening(";Kill",true,false)
  1134. wait(0.25)
  1135. RightShoulder.C0 = RightShoulder.C0 * CF(0,-0.12,0)
  1136. CreateSound(138204323, RightArm, 2, 1.3, false)
  1137. for index, CHILD in pairs(FOE:GetChildren()) do
  1138. if CHILD:IsA("BasePart") then
  1139. if CHILD.Name == "Head" then
  1140. WACKYEFFECT({Time = MRANDOM(10,30), EffectType = "Box", Size = VT(CHILD.Size.Z,CHILD.Size.Y,CHILD.Size.Z), Size2 = VT(CHILD.Size.Z,CHILD.Size.Y,CHILD.Size.Z)*2, Transparency = CHILD.Transparency, Transparency2 = 1, CFrame = CHILD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, SizeBoomerang = 0, Boomerang = 50})
  1141. elseif CHILD.Name ~= "HumanoidRootPart" then
  1142. WACKYEFFECT({Time = MRANDOM(10,30), EffectType = "Box", Size = CHILD.Size, Size2 = CHILD.Size*2, Transparency = CHILD.Transparency, Transparency2 = 1, CFrame = CHILD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil, UseBoomerangMath = true, SizeBoomerang = 0, Boomerang = 35})
  1143. end
  1144. end
  1145. end
  1146. FOE:BreakJoints()
  1147. end
  1148. end
  1149. end
  1150. end
  1151. local ATTAC = function()
  1152. ATTACK = true
  1153. Rooted = false
  1154. for i=0, 1, 0.1 / Animation_Speed do
  1155. wait()
  1156. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1157. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1158. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(-5), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1159. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(5), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1160. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1161. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1162. end
  1163. ATTACK = false
  1164. Rooted = false
  1165. end
  1166. local LITTLEIDLE = false
  1167. function UniqueIdleAnimation()
  1168. coroutine.resume(coroutine.create(function()
  1169. for i=0, 0.1, 0.1 / Animation_Speed do
  1170. wait()
  1171. if ATTACK == true or ANIM ~= "Idle" then
  1172. break
  1173. end
  1174. GLASSESWLD.C1 = Clerp(GLASSESWLD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 0.25)
  1175. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1176. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1177. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1178. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.1, -0.3) * ANGLES(RAD(80), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1179. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1180. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1181. end
  1182. for i=0, 0.4, 0.1 / Animation_Speed do
  1183. wait()
  1184. if ATTACK == true or ANIM ~= "Idle" then
  1185. break
  1186. end
  1187. GLASSESWLD.C1 = Clerp(GLASSESWLD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 0.25)
  1188. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1189. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1190. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1191. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.1, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1192. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1193. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1194. end
  1195. for i=0, 1.3, 0.1 / Animation_Speed do
  1196. wait()
  1197. if ATTACK == true or ANIM ~= "Idle" then
  1198. break
  1199. end
  1200. GLASSESWLD.C1 = Clerp(GLASSESWLD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(5)), 0.2 / Animation_Speed)
  1201. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1202. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1203. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1204. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.15, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1205. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1206. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1207. end
  1208. for i=0, 0.3, 0.1 / Animation_Speed do
  1209. wait()
  1210. if ATTACK == true or ANIM ~= "Idle" then
  1211. break
  1212. end
  1213. GLASSESWLD.C1 = Clerp(GLASSESWLD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 1 / Animation_Speed)
  1214. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1215. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1216. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1217. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.05, -0.3) * ANGLES(RAD(160), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1218. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1219. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1220. end
  1221. for i=0, 0.1, 0.1 / Animation_Speed do
  1222. wait()
  1223. if ATTACK == true or ANIM ~= "Idle" then
  1224. break
  1225. end
  1226. GLASSESWLD.C1 = Clerp(GLASSESWLD.C1, CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 0.25)
  1227. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1228. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1229. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1230. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.1, -0.3) * ANGLES(RAD(80), RAD(5), RAD(12)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1231. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1232. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1233. end
  1234. LITTLEIDLE = false
  1235. end))
  1236. end
  1237.  
  1238. --//=================================\\
  1239. --|| GUIS AND KEYS
  1240. --\\=================================//
  1241.  
  1242. local COLOR = C3(1,1,1)
  1243. local SKILLFONT = "Legacy"
  1244. local SIZE = 2.5
  1245. local MOUSE = 2097542191
  1246. local MELEE = 2097543015
  1247. local BODY = 2097543382
  1248. local PROJECTILE = 2097544084
  1249. local AOE = 2097544884
  1250. local ULTIMATE = 2097545381
  1251.  
  1252. local ATTACKS = {{"Switch ScreenBehaviour","m"},{";Fling","z",AOE,Fling},{";TpTo","x",BODY,TpTo},{";Hurl","c",PROJECTILE,Hurl},{";Kill","v",MOUSE,Kill}}
  1253. local GUIS = {}
  1254.  
  1255. for i = 1, #ATTACKS do
  1256. local SKILLFRAME = CreateFrame(WEAPONGUI, 0.8, 2, UD2(1-(0.3*(SIZE/5)), 0, 1-((0.08*(SIZE/5))*i), 0), UD2(0.3*(SIZE/5), 0, 0.06*(SIZE/4), 0), C3(0,0,0), COLOR, "Skill Frame")
  1257. local SKILLTEXT = CreateLabel(SKILLFRAME, "["..ATTACKS[i][1].."]", COLOR, SIZE, SKILLFONT, 0, 2, 0, "Skill text")
  1258. SKILLTEXT.TextXAlignment = "Right"
  1259. local BUTTONDISPLAY = CreateLabel(SKILLFRAME, "["..string.upper(ATTACKS[i][2]).."]", COLOR, SIZE-1, SKILLFONT, 0, 2, 0, "Skill text")
  1260. BUTTONDISPLAY.TextXAlignment = "Left"
  1261. if ATTACKS[i][3] then
  1262. local IMAGETODISPLAY = IT("ImageLabel",SKILLFRAME)
  1263. IMAGETODISPLAY.Image = "rbxassetid://"..ATTACKS[i][3]
  1264. IMAGETODISPLAY.Size = UD2(0.2,0,1,0)
  1265. IMAGETODISPLAY.Position = UD2(0.065,0,0,0)
  1266. IMAGETODISPLAY.BackgroundTransparency = 1
  1267. IMAGETODISPLAY.ZIndex = 0
  1268. end
  1269. table.insert(GUIS,SKILLTEXT)
  1270. end
  1271.  
  1272. Mouse.Button1Down:connect(function(NEWKEY)
  1273.  
  1274. end)
  1275. Mouse.Button1Up:connect(function(NEWKEY)
  1276.  
  1277. end)
  1278. Mouse.KeyDown:connect(function(NEWKEY)
  1279. KEYHOLD = true
  1280. if NEWKEY == "m" then
  1281. if SC == false then
  1282. SC = true
  1283. else
  1284. SC = false
  1285. end
  1286. end
  1287. if ATTACK == false then
  1288. for E = 1, #ATTACKS do
  1289. if ATTACKS[E][4] ~= nil then
  1290. if NEWKEY == ATTACKS[E][2] then
  1291. ATTACKS[E][4]()
  1292. end
  1293. end
  1294. end
  1295. end
  1296. end)
  1297. Mouse.KeyUp:connect(function(NEWKEY)
  1298. KEYHOLD = false
  1299. end)
  1300.  
  1301. --//=================================\\
  1302. --\\=================================//
  1303.  
  1304. function unanchor()
  1305. for _, c in pairs(Character:GetChildren()) do
  1306. if c:IsA("BasePart") and c ~= RootPart then
  1307. c.Anchored = false
  1308. end
  1309. end
  1310. if UNANCHOR == true then
  1311. RootPart.Anchored = false
  1312. else
  1313. RootPart.Anchored = true
  1314. end
  1315. end
  1316.  
  1317. --//=================================\\
  1318. --|| WRAP THE WHOLE SCRIPT UP
  1319. --\\=================================//
  1320.  
  1321. Humanoid.Changed:connect(function(Jump)
  1322. if Jump == "Jump" and (Disable_Jump == true) then
  1323. Humanoid.Jump = false
  1324. end
  1325. end)
  1326.  
  1327. local MOVINGSCREENS = false
  1328. local TIMESTAMP = 0
  1329. while true do
  1330. wait()
  1331. script.Parent = WEAPONGUI
  1332. ANIMATE.Parent = nil
  1333. ANIMATOR.Parent = nil
  1334. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  1335. v:Stop();
  1336. end
  1337. SINE = SINE + CHANGE
  1338. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1339. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1340. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  1341. local WALKSPEEDVALUE = 8 / (Humanoid.WalkSpeed / 16)
  1342. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1343. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0.1 * COS(SINE / (WALKSPEEDVALUE/2))) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1344. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1345. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0.25 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10+50 * COS(SINE / WALKSPEEDVALUE))), 0.6 / Animation_Speed)
  1346. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(SINE / WALKSPEEDVALUE) - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.25 * SIN(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-10+50 * COS(SINE / WALKSPEEDVALUE))), 0.6 / Animation_Speed)
  1347. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1348. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1349. 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)
  1350. 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.7 / Animation_Speed)
  1351. 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.7 / Animation_Speed)
  1352. end
  1353. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1354. ANIM = "Jump"
  1355. if ATTACK == false then
  1356. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1357. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / Animation_Speed)
  1358. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(25 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1359. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-25 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1360. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1361. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1362. end
  1363. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1364. ANIM = "Fall"
  1365. if ATTACK == false then
  1366. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1367. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / Animation_Speed)
  1368. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(45 + 10 * COS(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1369. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(35 - 4 * COS(SINE / 6)), RAD(0), RAD(-45 - 10 * COS(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1370. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(SINE / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1371. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(SINE / 6)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1372. end
  1373. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1374. ANIM = "Idle"
  1375. if ATTACK == false then
  1376. if MRANDOM(1,650) == 1 and LITTLEIDLE == false then
  1377. LITTLEIDLE = true
  1378. UniqueIdleAnimation()
  1379. end
  1380. if LITTLEIDLE == false then
  1381. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * COS(SINE / 24), 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0 - 2.5 * COS(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1382. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(3 - 7 * COS(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1383. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-45 - 1.5 * COS(SINE / 12)), RAD(0), RAD(-45)) * ANGLES(RAD(0), RAD(25), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1384. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.35 + 0.1 * COS(SINE / 12), 0.2) * ANGLES(RAD(-44 - 1.5 * COS(SINE / 12)), RAD(0), RAD(45)) * ANGLES(RAD(0), RAD(-25), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1385. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 + 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-2 - 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1386. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.035 * COS(SINE / 24) - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-2 + 2.5 * COS(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1387. end
  1388. end
  1389. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1390. ANIM = "Walk"
  1391. if ATTACK == false then
  1392. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, -0.05) * ANGLES(RAD(5), RAD(0), RAD(-7 * COS(SINE / (WALKSPEEDVALUE)))), 1 / Animation_Speed)
  1393. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(7 * COS(SINE / (WALKSPEEDVALUE)))), 1 / Animation_Speed)
  1394. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(-5), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1395. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(5), RAD(-5)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1396. RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1, 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1397. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1398. end
  1399. end
  1400. for _, c in pairs(Character:GetChildren()) do
  1401. if c:IsA("Accessory") then
  1402. if c.Name == "Nerd Glasses" then
  1403. c:Destroy()
  1404. end
  1405. end
  1406. end
  1407. unanchor()
  1408. Humanoid.MaxHealth = 1e3
  1409. Humanoid.Health = 1e3
  1410. if Rooted == false then
  1411. Disable_Jump = false
  1412. Humanoid.WalkSpeed = Speed
  1413. elseif Rooted == true then
  1414. Disable_Jump = true
  1415. Humanoid.WalkSpeed = 0
  1416. end
  1417. BMUSIC.SoundId = "rbxassetid://"..SONGID
  1418. BMUSIC.Looped = true
  1419. BMUSIC.Pitch = PITCH
  1420. BMUSIC.Volume = VOLUME
  1421. BMUSIC.Playing = PLAYING
  1422. BMUSIC.EmitterSize = 50
  1423. if BMUSIC.Parent ~= RootPart then
  1424. print("Fixing music")
  1425. BMUSIC = IT("Sound",RootPart)
  1426. BMUSIC.SoundId = "rbxassetid://"..SONGID
  1427. BMUSIC.Looped = true
  1428. BMUSIC.Pitch = PITCH
  1429. BMUSIC.Volume = VOLUME
  1430. BMUSIC.Playing = true
  1431. BMUSIC.EmitterSize = 50
  1432. BMUSIC.TimePosition = TIMESTAMP
  1433. FIXING = true
  1434. else
  1435. if FIXING == false then
  1436. TIMESTAMP = BMUSIC.TimePosition
  1437. else
  1438. FIXING = false
  1439. end
  1440. end
  1441. if Head:FindFirstChild("face") then
  1442. Head.face.Texture = "rbxassetid://62682458"
  1443. end
  1444. Humanoid.Name = "ADMIN"
  1445. if INTRO == false and ATTACK == false then
  1446. INTRO = true
  1447. coroutine.resume(coroutine.create(function()
  1448. IntroThing()
  1449. end))
  1450. end
  1451. if #SCREENS > 0 then
  1452. for E = 1, #SCREENS do
  1453. SCREENS[E].Transparency = MRANDOM(90,99)/100
  1454. end
  1455. end
  1456. if #SCREENWELDS > 0 then
  1457. if SC == true then
  1458. if MRANDOM(1,75) == 1 and MOVINGSCREENS == false then
  1459. MOVINGSCREENS = true
  1460. coroutine.resume(coroutine.create(function()
  1461. wait(1)
  1462. MOVINGSCREENS = false
  1463. end))
  1464. for E = 1, #SCREENWELDS do
  1465. coroutine.resume(coroutine.create(function()
  1466. local MATH1 = MRANDOM(-25,25)/10+1
  1467. local MATH2 = MRANDOM(-45,45)
  1468. for i = 1, 55 do
  1469. wait()
  1470. SCREENWELDS[E].C0 = Clerp(SCREENWELDS[E].C0, CF(0,MATH1,0) * ANGLES(RAD(0), RAD(MATH2+180), RAD(0)) * CF(0,0,3+(E/1.5)),0.1)
  1471. end
  1472. end))
  1473. end
  1474. end
  1475. elseif SC == false then
  1476. for E = 1, #SCREENWELDS do
  1477. if E == 1 then
  1478. SCREENWELDS[E].C0 = Clerp(SCREENWELDS[E].C0, CF(0,-1 + 0.05 * COS(SINE / 12),0) * ANGLES(RAD(0), RAD(-40+180), RAD(0)) * CF(0,0,3.4),0.1)
  1479. elseif E == 2 then
  1480. SCREENWELDS[E].C0 = Clerp(SCREENWELDS[E].C0, CF(0,-1 + 0.05 * SIN(SINE / 12),0) * ANGLES(RAD(0), RAD(40+180), RAD(0)) * CF(0,0,3.4),0.1)
  1481. elseif E == 3 then
  1482. SCREENWELDS[E].C0 = Clerp(SCREENWELDS[E].C0, CF(0,1.3 + 0.05 * SIN(SINE / 12),0) * ANGLES(RAD(0), RAD(-38+180), RAD(0)) * CF(0,0,3.4),0.1)
  1483. elseif E == 4 then
  1484. SCREENWELDS[E].C0 = Clerp(SCREENWELDS[E].C0, CF(0,1.3 + 0.05 * COS(SINE / 12),0) * ANGLES(RAD(0), RAD(38+180), RAD(0)) * CF(0,0,3.4),0.1)
  1485. end
  1486. end
  1487. end
  1488. end
  1489. local SECONDS = math.floor(workspace.DistributedGameTime)
  1490. local MINUTES = math.floor(workspace.DistributedGameTime/60)
  1491. local HOURS = math.floor(workspace.DistributedGameTime/60/60)
  1492. local SECONDS = SECONDS - (MINUTES * 60)
  1493. local MINUTES = MINUTES - (HOURS * 60)
  1494. if #GUISTEXT > 0 then
  1495. for E = 1, #GUISTEXT do
  1496. local TXT = GUISTEXT[E]
  1497. if E == 1 then
  1498. TXT.Text = "SERVER STATS;"
  1499. elseif E == 2 then
  1500. TXT.Text = "SERVER TIME = ["..SECONDS..":"..MINUTES..":"..HOURS.."]"
  1501. elseif E == 3 then
  1502. TXT.Text = "WORKSPACE GRAVITY = ["..workspace.Gravity.."]"
  1503. elseif E == 4 then
  1504. TXT.Text = "SERVER JOBID = ["..game.JobId.."]"
  1505. elseif E == 5 then
  1506. TXT.Text = "SERVER VERSION = ["..game.PlaceVersion.."]"
  1507. end
  1508. end
  1509. end
  1510. local SPACEJECTS = {}
  1511. for index, CHILD in pairs(workspace:GetChildren()) do
  1512. table.insert(SPACEJECTS,CHILD)
  1513. end
  1514. table.insert(SPACEJECTS,game.Lighting)
  1515. table.insert(SPACEJECTS,game.Workspace)
  1516. local MALWARE = {"BlurEffect","BloomEffect","Fire","ParticleEmitter","Smoke"}
  1517. if #GUISTEXT > 0 then
  1518. if MRANDOM(1,125) == 1 then
  1519. for E = 1, #GUISTEXT do
  1520. local TXT = GUISTEXT[E]
  1521. local TEXT = ""
  1522. local DOINGS = {"MONITORING","CHECKING"}
  1523. local OLDTEXT = string.sub(TXT.Text,3)
  1524. if E > 5 then
  1525. if E <= 15 then
  1526. if MRANDOM(1,3) == 1 then
  1527. repeat
  1528. local MONITORME = SPACEJECTS[MRANDOM(1,#SPACEJECTS)]
  1529. if MRANDOM(1,2) == 1 then
  1530. TEXT = DOINGS[MRANDOM(1,#DOINGS)].."; ["..MONITORME.Name.."]..."
  1531. for Z = 1, #MALWARE do
  1532. if MONITORME:FindFirstChildOfClass(MALWARE[Z]) then
  1533. TEXT = "!FOUND MALICIOUS CONTENT IN ["..MONITORME.Name.."]; FOUND: ["..MALWARE[Z].."]"
  1534. if TEXT ~= OLDTEXT then
  1535. CreateSound(136075117, TXT.Parent.Parent, 0.6, MRANDOM(8,12)/10)
  1536. end
  1537. TXT.TextColor3 = C3(1,0,0)
  1538. break
  1539. else
  1540. TXT.TextColor3 = C3(1,1,1)
  1541. end
  1542. end
  1543. break
  1544. end
  1545. if MRANDOM(1,6) == 1 and TXT.TextColor3 == C3(1,1,1) then
  1546. local ES = {"SUCCES.","!FAILURE!"}
  1547. TEXT = "TESTING FILE #"..MRANDOM(100,999).." ["..ES[MRANDOM(1,#ES)].."]"
  1548. end
  1549. until TEXT ~= ""
  1550. local DESIREDTEXT = ">>"..TEXT
  1551. TXT.Text = DESIREDTEXT
  1552. end
  1553. elseif E > 15 then
  1554. local N = E-15
  1555. local POP = 0
  1556. repeat
  1557. for index, CHILD in pairs(game:GetService("Players"):GetChildren()) do
  1558. POP = POP + 1
  1559. if POP == N then
  1560. TEXT = "MONITORING USER; ".."["..CHILD.Name.."]..."
  1561. break
  1562. else
  1563. TEXT = "NOP"
  1564. end
  1565. end
  1566. until TEXT ~= ""
  1567. if TEXT ~= "NOP" then
  1568. local DESIREDTEXT = ">>"..TEXT
  1569. TXT.Text = DESIREDTEXT
  1570. else
  1571. TXT.Text = ""
  1572. end
  1573. end
  1574. end
  1575. end
  1576. end
  1577. end
  1578. end
  1579.  
  1580. --//=================================\\
  1581. --\\=================================//
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587. --//====================================================\\--
  1588. --|| END OF SCRIPT
  1589. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement