Hugo1234cool

Untitled

Jan 31st, 2019
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 171.88 KB | None | 0 0
  1. local Player =owner
  2. local Character = Player.Character
  3. local Humanoid = Character.Humanoid
  4. local Mouse = Player:GetMouse()
  5. local LeftArm = Character["Left Arm"]
  6. local RightArm = Character["Right Arm"]
  7. local LeftLeg = Character["Left Leg"]
  8. local RightLeg = Character["Right Leg"]
  9. local Head = Character.Head
  10. local Torso = Character.Torso
  11. local Camera = game.Workspace.CurrentCamera
  12. local RootPart = Character.HumanoidRootPart
  13. local RootJoint = RootPart.RootJoint
  14. local attack = false
  15. local Anim = 'Idle'
  16. local Lighty = game:GetService"Lighting"
  17. local attacktype = 1
  18. local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  19. local velocity = RootPart.Velocity.y
  20. local sine = 0
  21. local change = 1
  22. local Create = LoadLibrary("RbxUtility").Create
  23. --https://github.com/Mokiros/roblox-FE-compatibility
  24. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  25. local Player,game,owner = owner,game
  26. local RealPlayer = Player
  27. do print("FE Compatibility code V2 by Mokiros")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end
  28. warn("Credit goes to ExplosiveDaniel or Sammylad298 for the banisher gun")
  29.  
  30. local chara = Character
  31. local m = Create("Model"){
  32. Parent = Character,
  33. Name = "WeaponModel",
  34. }
  35. function chat(...)
  36. local txxt = {...}
  37. local ch = coroutine.wrap(function()
  38. if chara:FindFirstChild("Chatt")~= nil then
  39. Character:FindFirstChild("Chatt"):destroy()
  40. end
  41. local txt = Instance.new("BillboardGui", chara)
  42. txt.Adornee = chara.Head
  43. txt.Name = "Chatt"
  44. txt.Size = UDim2.new(2, 0, 1.2, 0)
  45. txt.StudsOffset = Vector3.new(-9, 7, 0)
  46. local text = Instance.new("TextLabel", txt)
  47. text.Size = UDim2.new(10, 0, 7, 0)
  48. text.TextSize = 32
  49. text.Font = Enum.Font.SciFi
  50. text.TextScaled = false
  51. text.BackgroundTransparency = 1
  52. text.TextColor3 = Color3.new(6,5,0)
  53. text.TextStrokeTransparency = 0
  54. text.TextStrokeColor3 = Color3.new(66/255, 0/255, 127/255)
  55. text.Text = ""
  56. txxt = table.concat(txxt,"\t")
  57. for i = 1, #txxt do
  58. text.Text = txxt:sub(1,i)
  59.  
  60. end
  61. wait(2)
  62. for trans = 0,1,00.1 do
  63. text.TextTransparency = trans
  64. text.TextStrokeTransparency = trans
  65. wait()
  66. end
  67. wait()
  68. txt:destroy()
  69. end)
  70.  
  71. ch(...)
  72. end
  73. Player.Chatted:connect(chat)
  74.  
  75. wait(0.2)
  76.  
  77. Player = game:GetService("Players").LocalPlayer
  78. PlayerGui = Player.PlayerGui
  79. Cam = workspace.CurrentCamera
  80. Backpack = Player.Backpack
  81. Character = Player.Character
  82. Humanoid = Character.Humanoid
  83. Mouse = Player:GetMouse()
  84. RootPart = Character["HumanoidRootPart"]
  85. Torso = Character["Torso"]
  86. Head = Character["Head"]
  87. RightArm = Character["Right Arm"]
  88. LeftArm = Character["Left Arm"]
  89. RightLeg = Character["Right Leg"]
  90. LeftLeg = Character["Left Leg"]
  91. RootJoint = RootPart["RootJoint"]
  92. Neck = Torso["Neck"]
  93. RightShoulder = Torso["Right Shoulder"]
  94. LeftShoulder = Torso["Left Shoulder"]
  95. RightHip = Torso["Right Hip"]
  96. LeftHip = Torso["Left Hip"]
  97. Character.Archivable = true
  98. Player:ClearCharacterAppearance()
  99.  
  100. IT = Instance.new
  101. CF = CFrame.new
  102. VT = Vector3.new
  103. RAD = math.rad
  104. C3 = Color3.new
  105. UD2 = UDim2.new
  106. BRICKC = BrickColor.new
  107. ANGLES = CFrame.Angles
  108. EULER = CFrame.fromEulerAnglesXYZ
  109. COS = math.cos
  110. ACOS = math.acos
  111. SIN = math.sin
  112. ASIN = math.asin
  113. ABS = math.abs
  114. MRANDOM = math.random
  115. FLOOR = math.floor
  116.  
  117. --//=================================\\
  118. --|| USEFUL VALUES
  119. --\\=================================//
  120.  
  121. Animation_Speed = 3
  122. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  123. local Speed = 30
  124. local SIZE = 1.4
  125. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  126. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  127. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  128. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  129. local DAMAGEMULTIPLIER = 5
  130. local ANIM = "Idle"
  131. local ATTACK = false
  132. local EQUIPPED = false
  133. local HOLD = false
  134. local COMBO = 1
  135. local Rooted = false
  136. local SINE = 0
  137. local KEYHOLD = false
  138. local CHANGE = 2 / Animation_Speed
  139. local WALKINGANIM = false
  140. local VALUE1 = false
  141. local VALUE2 = false
  142. local ROBLOXIDLEANIMATION = IT("Animation")
  143. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  144. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  145. local ATANIM = IT("Animation")
  146. ATANIM.Name = "Attack Animation"
  147. ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
  148. --ROBLOXIDLEANIMATION.Parent = Humanoid
  149. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  150. WEAPONGUI.Name = "Weapon GUI"
  151. local Weapon = IT("Model")
  152. Weapon.Name = "Adds"
  153. local Effects = IT("Folder", Weapon)
  154. Effects.Name = "Effects"
  155. local ANIMATOR = Humanoid.Animator
  156. local ANIMATE = Character.Animate
  157. local UNANCHOR = true
  158. local CLOCKLOOP = 0
  159. local SONG = 1836012327
  160. local CLOCKTARGET = nil
  161. local CLOCKSPEED = 0
  162. script.Parent = WEAPONGUI
  163. local CLONE = Character:Clone()
  164. CLONE.Parent = nil
  165. Character.Archivable = false
  166. local sick = Instance.new("Sound",Torso)
  167. sick.Volume = 50
  168.  
  169. --//=================================\\
  170. --\\=================================//
  171.  
  172.  
  173. --//=================================\\
  174. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  175. --\\=================================//
  176.  
  177. ArtificialHB = Instance.new("BindableEvent", script)
  178. ArtificialHB.Name = "ArtificialHB"
  179.  
  180. script:WaitForChild("ArtificialHB")
  181.  
  182. frame = Frame_Speed
  183. tf = 0
  184. allowframeloss = false
  185. tossremainder = false
  186. lastframe = tick()
  187. script.ArtificialHB:Fire()
  188.  
  189. game:GetService("RunService").Heartbeat:connect(function(s, p)
  190. tf = tf + s
  191. if tf >= frame then
  192. if allowframeloss then
  193. script.ArtificialHB:Fire()
  194. lastframe = tick()
  195. else
  196. for i = 1, math.floor(tf / frame) do
  197. script.ArtificialHB:Fire()
  198. end
  199. lastframe = tick()
  200. end
  201. if tossremainder then
  202. tf = 0
  203. else
  204. tf = tf - frame * math.floor(tf / frame)
  205. end
  206. end
  207. end)
  208.  
  209. --//=================================\\
  210. --\\=================================//
  211.  
  212. --//=================================\\
  213. --|| SOME FUNCTIONS
  214. --\\=================================//
  215.  
  216. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  217. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  218. end
  219.  
  220. function PositiveAngle(NUMBER)
  221. if NUMBER >= 0 then
  222. NUMBER = 0
  223. end
  224. return NUMBER
  225. end
  226.  
  227. function NegativeAngle(NUMBER)
  228. if NUMBER <= 0 then
  229. NUMBER = 0
  230. end
  231. return NUMBER
  232. end
  233.  
  234. function Swait(NUMBER)
  235. if NUMBER == 0 or NUMBER == nil then
  236. ArtificialHB.Event:wait()
  237. else
  238. for i = 1, NUMBER do
  239. ArtificialHB.Event:wait()
  240. end
  241. end
  242. end
  243.  
  244. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  245. local NEWMESH = IT(MESH)
  246. if MESH == "SpecialMesh" then
  247. NEWMESH.MeshType = MESHTYPE
  248. if MESHID ~= "nil" and MESHID ~= "" then
  249. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  250. end
  251. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  252. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  253. end
  254. end
  255. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  256. NEWMESH.Scale = SCALE
  257. NEWMESH.Parent = PARENT
  258. return NEWMESH
  259. end
  260.  
  261. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  262. local NEWPART = IT("Part")
  263. NEWPART.formFactor = FORMFACTOR
  264. NEWPART.Reflectance = REFLECTANCE
  265. NEWPART.Transparency = TRANSPARENCY
  266. NEWPART.CanCollide = false
  267. NEWPART.Locked = true
  268. NEWPART.Anchored = true
  269. if ANCHOR == false then
  270. NEWPART.Anchored = false
  271. end
  272. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  273. NEWPART.Name = NAME
  274. NEWPART.Size = SIZE
  275. NEWPART.Position = Torso.Position
  276. NEWPART.Material = MATERIAL
  277. NEWPART:BreakJoints()
  278. NEWPART.Parent = PARENT
  279. return NEWPART
  280. end
  281.  
  282. local function weldBetween(a, b)
  283. local weldd = Instance.new("ManualWeld")
  284. weldd.Part0 = a
  285. weldd.Part1 = b
  286. weldd.C0 = CFrame.new()
  287. weldd.C1 = b.CFrame:inverse() * a.CFrame
  288. weldd.Parent = a
  289. return weldd
  290. end
  291.  
  292.  
  293. function QuaternionFromCFrame(cf)
  294. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  295. local trace = m00 + m11 + m22
  296. if trace > 0 then
  297. local s = math.sqrt(1 + trace)
  298. local recip = 0.5 / s
  299. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  300. else
  301. local i = 0
  302. if m11 > m00 then
  303. i = 1
  304. end
  305. if m22 > (i == 0 and m00 or m11) then
  306. i = 2
  307. end
  308. if i == 0 then
  309. local s = math.sqrt(m00 - m11 - m22 + 1)
  310. local recip = 0.5 / s
  311. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  312. elseif i == 1 then
  313. local s = math.sqrt(m11 - m22 - m00 + 1)
  314. local recip = 0.5 / s
  315. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  316. elseif i == 2 then
  317. local s = math.sqrt(m22 - m00 - m11 + 1)
  318. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  319. end
  320. end
  321. end
  322.  
  323. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  324. local xs, ys, zs = x + x, y + y, z + z
  325. local wx, wy, wz = w * xs, w * ys, w * zs
  326. local xx = x * xs
  327. local xy = x * ys
  328. local xz = x * zs
  329. local yy = y * ys
  330. local yz = y * zs
  331. local zz = z * zs
  332. 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))
  333. end
  334.  
  335. function QuaternionSlerp(a, b, t)
  336. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  337. local startInterp, finishInterp;
  338. if cosTheta >= 0.0001 then
  339. if (1 - cosTheta) > 0.0001 then
  340. local theta = ACOS(cosTheta)
  341. local invSinTheta = 1 / SIN(theta)
  342. startInterp = SIN((1 - t) * theta) * invSinTheta
  343. finishInterp = SIN(t * theta) * invSinTheta
  344. else
  345. startInterp = 1 - t
  346. finishInterp = t
  347. end
  348. else
  349. if (1 + cosTheta) > 0.0001 then
  350. local theta = ACOS(-cosTheta)
  351. local invSinTheta = 1 / SIN(theta)
  352. startInterp = SIN((t - 1) * theta) * invSinTheta
  353. finishInterp = SIN(t * theta) * invSinTheta
  354. else
  355. startInterp = t - 1
  356. finishInterp = t
  357. end
  358. end
  359. 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
  360. end
  361.  
  362. function Clerp(a, b, t)
  363. local qa = {QuaternionFromCFrame(a)}
  364. local qb = {QuaternionFromCFrame(b)}
  365. local ax, ay, az = a.x, a.y, a.z
  366. local bx, by, bz = b.x, b.y, b.z
  367. local _t = 1 - t
  368. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  369. end
  370.  
  371. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  372. local frame = IT("Frame")
  373. frame.BackgroundTransparency = TRANSPARENCY
  374. frame.BorderSizePixel = BORDERSIZEPIXEL
  375. frame.Position = POSITION
  376. frame.Size = SIZE
  377. frame.BackgroundColor3 = COLOR
  378. frame.BorderColor3 = BORDERCOLOR
  379. frame.Name = NAME
  380. frame.Parent = PARENT
  381. return frame
  382. end
  383.  
  384. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  385. local label = IT("TextLabel")
  386. label.BackgroundTransparency = 1
  387. label.Size = UD2(1, 0, 1, 0)
  388. label.Position = UD2(0, 0, 0, 0)
  389. label.TextColor3 = TEXTCOLOR
  390. label.TextStrokeColor3 = BRICKC"Earth green".Color
  391. label.TextStrokeTransparency = STROKETRANSPARENCY
  392. label.TextTransparency = TRANSPARENCY
  393. label.FontSize = TEXTFONTSIZE
  394. label.Font = TEXTFONT
  395. label.BorderSizePixel = BORDERSIZEPIXEL
  396. label.TextScaled = false
  397. label.Text = TEXT
  398. label.Name = NAME
  399. label.Parent = PARENT
  400. return label
  401. end
  402.  
  403. function NoOutlines(PART)
  404. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  405. end
  406.  
  407. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  408. local NEWWELD = IT(TYPE)
  409. NEWWELD.Part0 = PART0
  410. NEWWELD.Part1 = PART1
  411. NEWWELD.C0 = C0
  412. NEWWELD.C1 = C1
  413. NEWWELD.Parent = PARENT
  414. return NEWWELD
  415. end
  416.  
  417. local S = IT("Sound")
  418. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  419. local NEWSOUND = nil
  420. coroutine.resume(coroutine.create(function()
  421. NEWSOUND = S:Clone()
  422. NEWSOUND.Parent = PARENT
  423. NEWSOUND.Volume = VOLUME
  424. NEWSOUND.Pitch = PITCH
  425. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  426. NEWSOUND:play()
  427. NEWSOUND.Name = "Audio"
  428. if DOESLOOP == true then
  429. NEWSOUND.Looped = true
  430. else
  431. repeat Swait() until NEWSOUND.Playing == false
  432. NEWSOUND:remove()
  433. end
  434. end))
  435. return NEWSOUND
  436. end
  437.  
  438. function CFrameFromTopBack(at, top, back)
  439. local right = top:Cross(back)
  440. 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)
  441. end
  442.  
  443. --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})
  444. function WACKYEFFECT(Table)
  445. local TYPE = (Table.EffectType or "Sphere")
  446. local SIZE = (Table.Size or VT(1,1,1))
  447. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  448. local TRANSPARENCY = (Table.Transparency or 0)
  449. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  450. local CFRAME = (Table.CFrame or Torso.CFrame)
  451. local MOVEDIRECTION = (Table.MoveToPos or nil)
  452. local ROTATION1 = (Table.RotationX or 0)
  453. local ROTATION2 = (Table.RotationY or 0)
  454. local ROTATION3 = (Table.RotationZ or 0)
  455. local MATERIAL = (Table.Material or "Neon")
  456. local COLOR = (Table.Color or C3(1,1,1))
  457. local TIME = (Table.Time or 45)
  458. local SOUNDID = (Table.SoundID or nil)
  459. local SOUNDPITCH = (Table.SoundPitch or nil)
  460. local SOUNDVOLUME = (Table.SoundVolume or nil)
  461. coroutine.resume(coroutine.create(function()
  462. local PLAYSSOUND = false
  463. local SOUND = nil
  464. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  465. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  466. PLAYSSOUND = true
  467. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  468. end
  469. EFFECT.Color = COLOR
  470. local MSH = nil
  471. if TYPE == "Sphere" then
  472. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  473. elseif TYPE == "Block" then
  474. MSH = IT("BlockMesh",EFFECT)
  475. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  476. elseif TYPE == "Box" then
  477. MSH = IT("BlockMesh",EFFECT)
  478. MSH.Scale = SIZE
  479. elseif TYPE == "Wave" then
  480. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  481. elseif TYPE == "Ring" then
  482. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  483. elseif TYPE == "Slash" then
  484. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  485. elseif TYPE == "Round Slash" then
  486. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  487. elseif TYPE == "Swirl" then
  488. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  489. elseif TYPE == "Skull" then
  490. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  491. elseif TYPE == "Crystal" then
  492. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  493. end
  494. if MSH ~= nil then
  495. local MOVESPEED = nil
  496. if MOVEDIRECTION ~= nil then
  497. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  498. end
  499. local GROWTH = SIZE - ENDSIZE
  500. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  501. if TYPE == "Block" then
  502. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  503. else
  504. EFFECT.CFrame = CFRAME
  505. end
  506. for LOOP = 1, TIME do
  507. Swait()
  508. MSH.Scale = MSH.Scale - GROWTH/TIME
  509. if TYPE == "Wave" then
  510. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  511. end
  512. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  513. if TYPE == "Block" then
  514. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  515. else
  516. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  517. end
  518. if MOVEDIRECTION ~= nil then
  519. local ORI = EFFECT.Orientation
  520. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  521. EFFECT.Orientation = ORI
  522. end
  523. end
  524. if PLAYSSOUND == false then
  525. EFFECT:remove()
  526. else
  527. repeat Swait() until SOUND.Playing == false
  528. EFFECT:remove()
  529. end
  530. else
  531. if PLAYSSOUND == false then
  532. EFFECT:remove()
  533. else
  534. repeat Swait() until SOUND.Playing == false
  535. EFFECT:remove()
  536. end
  537. end
  538. end))
  539. end
  540.  
  541. function Shatter(Part)
  542. if Part.Transparency == 0 then
  543. local SOUNDPART = CreatePart(3, Effects, "Neon", 0, 1, Part.BrickColor, "OOF", VT(0,0,0))
  544. Debris:AddItem(SOUNDPART,5)
  545. CreateSound("84005018", SOUNDPART, 3, MRANDOM(8,12)/10, false)
  546. local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z
  547. local SIZESET = SIZE/4
  548. local XOffset = Part.Size.X*1.5/SIZESET
  549. local YOffset = Part.Size.Y*1.5/SIZESET
  550. local ZOffset = Part.Size.Z*1.5/SIZESET
  551. for x = 1, math.ceil(XOffset) do
  552. for y = 1, math.ceil(YOffset) do
  553. for z = 1, math.ceil(ZOffset) do
  554. local SHARD = CreatePart(3, Effects, "Neon", 0, 0, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false)
  555. SHARD.CanCollide = true
  556. SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-x/4),(Part.Size.Y/2-y/4),(Part.Size.Z/2-z/4))
  557. SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3
  558. Debris:AddItem(SHARD,MRANDOM(10,25)/3)
  559. end
  560. end
  561. end
  562. end
  563. Part:remove()
  564. end
  565.  
  566. function MakeForm(PART,TYPE)
  567. if TYPE == "Cyl" then
  568. local MSH = IT("CylinderMesh",PART)
  569. elseif TYPE == "Ball" then
  570. local MSH = IT("SpecialMesh",PART)
  571. MSH.MeshType = "Sphere"
  572. elseif TYPE == "Wedge" then
  573. local MSH = IT("SpecialMesh",PART)
  574. MSH.MeshType = "Wedge"
  575. end
  576. end
  577.  
  578. Debris = game:GetService("Debris")
  579.  
  580. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  581. local DIRECTION = CF(StartPos,EndPos).lookVector
  582. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  583. end
  584.  
  585. function turnto(position)
  586. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  587. end
  588.  
  589. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  590. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  591. end
  592.  
  593. function PositiveAngle(NUMBER)
  594. if NUMBER >= 0 then
  595. NUMBER = 0
  596. end
  597. return NUMBER
  598. end
  599.  
  600. function NegativeAngle(NUMBER)
  601. if NUMBER <= 0 then
  602. NUMBER = 0
  603. end
  604. return NUMBER
  605. end
  606.  
  607. function Swait(NUMBER)
  608. if NUMBER == 0 or NUMBER == nil then
  609. ArtificialHB.Event:wait()
  610. else
  611. for i = 1, NUMBER do
  612. ArtificialHB.Event:wait()
  613. end
  614. end
  615. end
  616.  
  617. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  618. local NEWMESH = IT(MESH)
  619. if MESH == "SpecialMesh" then
  620. NEWMESH.MeshType = MESHTYPE
  621. if MESHID ~= "nil" and MESHID ~= "" then
  622. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  623. end
  624. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  625. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  626. end
  627. end
  628. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  629. NEWMESH.Scale = SCALE
  630. NEWMESH.Parent = PARENT
  631. return NEWMESH
  632. end
  633.  
  634. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  635. local NEWPART = IT("Part")
  636. NEWPART.formFactor = FORMFACTOR
  637. NEWPART.Reflectance = REFLECTANCE
  638. NEWPART.Transparency = TRANSPARENCY
  639. NEWPART.CanCollide = false
  640. NEWPART.Locked = true
  641. NEWPART.Anchored = true
  642. if ANCHOR == false then
  643. NEWPART.Anchored = false
  644. end
  645. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  646. NEWPART.Name = NAME
  647. NEWPART.Size = SIZE
  648. NEWPART.Position = Torso.Position
  649. NEWPART.Material = MATERIAL
  650. NEWPART:BreakJoints()
  651. NEWPART.Parent = PARENT
  652. return NEWPART
  653. end
  654.  
  655. local function weldBetween(a, b)
  656. local weldd = Instance.new("ManualWeld")
  657. weldd.Part0 = a
  658. weldd.Part1 = b
  659. weldd.C0 = CFrame.new()
  660. weldd.C1 = b.CFrame:inverse() * a.CFrame
  661. weldd.Parent = a
  662. return weldd
  663. end
  664.  
  665.  
  666. function QuaternionFromCFrame(cf)
  667. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  668. local trace = m00 + m11 + m22
  669. if trace > 0 then
  670. local s = math.sqrt(1 + trace)
  671. local recip = 0.5 / s
  672. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  673. else
  674. local i = 0
  675. if m11 > m00 then
  676. i = 1
  677. end
  678. if m22 > (i == 0 and m00 or m11) then
  679. i = 2
  680. end
  681. if i == 0 then
  682. local s = math.sqrt(m00 - m11 - m22 + 1)
  683. local recip = 0.5 / s
  684. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  685. elseif i == 1 then
  686. local s = math.sqrt(m11 - m22 - m00 + 1)
  687. local recip = 0.5 / s
  688. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  689. elseif i == 2 then
  690. local s = math.sqrt(m22 - m00 - m11 + 1)
  691. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  692. end
  693. end
  694. end
  695.  
  696. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  697. local xs, ys, zs = x + x, y + y, z + z
  698. local wx, wy, wz = w * xs, w * ys, w * zs
  699. local xx = x * xs
  700. local xy = x * ys
  701. local xz = x * zs
  702. local yy = y * ys
  703. local yz = y * zs
  704. local zz = z * zs
  705. 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))
  706. end
  707.  
  708. function QuaternionSlerp(a, b, t)
  709. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  710. local startInterp, finishInterp;
  711. if cosTheta >= 0.0001 then
  712. if (1 - cosTheta) > 0.0001 then
  713. local theta = ACOS(cosTheta)
  714. local invSinTheta = 1 / SIN(theta)
  715. startInterp = SIN((1 - t) * theta) * invSinTheta
  716. finishInterp = SIN(t * theta) * invSinTheta
  717. else
  718. startInterp = 1 - t
  719. finishInterp = t
  720. end
  721. else
  722. if (1 + cosTheta) > 0.0001 then
  723. local theta = ACOS(-cosTheta)
  724. local invSinTheta = 1 / SIN(theta)
  725. startInterp = SIN((t - 1) * theta) * invSinTheta
  726. finishInterp = SIN(t * theta) * invSinTheta
  727. else
  728. startInterp = t - 1
  729. finishInterp = t
  730. end
  731. end
  732. 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
  733. end
  734.  
  735. function Clerp(a, b, t)
  736. local qa = {QuaternionFromCFrame(a)}
  737. local qb = {QuaternionFromCFrame(b)}
  738. local ax, ay, az = a.x, a.y, a.z
  739. local bx, by, bz = b.x, b.y, b.z
  740. local _t = 1 - t
  741. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  742. end
  743.  
  744. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  745. local frame = IT("Frame")
  746. frame.BackgroundTransparency = TRANSPARENCY
  747. frame.BorderSizePixel = BORDERSIZEPIXEL
  748. frame.Position = POSITION
  749. frame.Size = SIZE
  750. frame.BackgroundColor3 = COLOR
  751. frame.BorderColor3 = BORDERCOLOR
  752. frame.Name = NAME
  753. frame.Parent = PARENT
  754. return frame
  755. end
  756.  
  757. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  758. local label = IT("TextLabel")
  759. label.BackgroundTransparency = 1
  760. label.Size = UD2(1, 0, 1, 0)
  761. label.Position = UD2(0, 0, 0, 0)
  762. label.TextColor3 = TEXTCOLOR
  763. label.TextStrokeTransparency = STROKETRANSPARENCY
  764. label.TextTransparency = TRANSPARENCY
  765. label.FontSize = TEXTFONTSIZE
  766. label.Font = TEXTFONT
  767. label.BorderSizePixel = BORDERSIZEPIXEL
  768. label.TextStrokeColor3 = C3(1,1,1)
  769. label.TextScaled = false
  770. label.Text = TEXT
  771. label.Name = NAME
  772. label.Parent = PARENT
  773. return label
  774. end
  775.  
  776. function NoOutlines(PART)
  777. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  778. end
  779.  
  780. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  781. local NEWWELD = IT(TYPE)
  782. NEWWELD.Part0 = PART0
  783. NEWWELD.Part1 = PART1
  784. NEWWELD.C0 = C0
  785. NEWWELD.C1 = C1
  786. NEWWELD.Parent = PARENT
  787. return NEWWELD
  788. end
  789.  
  790. local S = IT("Sound")
  791. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  792. local NEWSOUND = nil
  793. coroutine.resume(coroutine.create(function()
  794. NEWSOUND = S:Clone()
  795. NEWSOUND.Parent = PARENT
  796. NEWSOUND.Volume = VOLUME
  797. NEWSOUND.Pitch = PITCH
  798. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  799. NEWSOUND:play()
  800. if DOESLOOP == true then
  801. NEWSOUND.Looped = true
  802. else
  803. repeat wait(1) until NEWSOUND.Playing == false
  804. NEWSOUND:remove()
  805. end
  806. end))
  807. return NEWSOUND
  808. end
  809.  
  810. function CFrameFromTopBack(at, top, back)
  811. local right = top:Cross(back)
  812. 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)
  813. end
  814.  
  815. --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(5,6,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  816. function WACKYEFFECT(Table)
  817. local TYPE = (Table.EffectType or "Sphere")
  818. local SIZE = (Table.Size or VT(1,1,1))
  819. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  820. local TRANSPARENCY = (Table.Transparency or 0)
  821. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  822. local CFRAME = (Table.CFrame or Torso.CFrame)
  823. local MOVEDIRECTION = (Table.MoveToPos or nil)
  824. local ROTATION1 = (Table.RotationX or 0)
  825. local ROTATION2 = (Table.RotationY or 0)
  826. local ROTATION3 = (Table.RotationZ or 0)
  827. local MATERIAL = (Table.Material or "Neon")
  828. local COLOR = (Table.Color or C3(5,6,0))
  829. local TIME = (Table.Time or 45)
  830. local SOUNDID = (Table.SoundID or nil)
  831. local SOUNDPITCH = (Table.SoundPitch or nil)
  832. local SOUNDVOLUME = (Table.SoundVolume or nil)
  833. coroutine.resume(coroutine.create(function()
  834. local PLAYSSOUND = false
  835. local SOUND = nil
  836. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(0,0,0), true)
  837. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  838. PLAYSSOUND = true
  839. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  840. end
  841. EFFECT.Color = COLOR
  842. local MSH = nil
  843. if TYPE == "Sphere" then
  844. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  845. elseif TYPE == "Block" then
  846. MSH = IT("BlockMesh",EFFECT)
  847. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  848. elseif TYPE == "Wave" then
  849. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  850. elseif TYPE == "Ring" then
  851. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  852. elseif TYPE == "Slash" then
  853. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  854. elseif TYPE == "Round Slash" then
  855. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  856. elseif TYPE == "Swirl" then
  857. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  858. elseif TYPE == "Skull" then
  859. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  860. elseif TYPE == "Crystal" then
  861. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  862. end
  863. if MSH ~= nil then
  864. local MOVESPEED = nil
  865. if MOVEDIRECTION ~= nil then
  866. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  867. end
  868. local GROWTH = SIZE - ENDSIZE
  869. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  870. if TYPE == "Block" then
  871. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  872. else
  873. EFFECT.CFrame = CFRAME
  874. end
  875. for LOOP = 1, TIME+1 do
  876. Swait()
  877. MSH.Scale = MSH.Scale - GROWTH/TIME
  878. if TYPE == "Wave" then
  879. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  880. end
  881. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  882. if TYPE == "Block" then
  883. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  884. else
  885. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  886. end
  887. if MOVEDIRECTION ~= nil then
  888. local ORI = EFFECT.Orientation
  889. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  890. EFFECT.Orientation = ORI
  891. end
  892. end
  893. if PLAYSSOUND == false then
  894. EFFECT:remove()
  895. else
  896. repeat Swait() until SOUND.Playing == false
  897. EFFECT:remove()
  898. end
  899. else
  900. if PLAYSSOUND == false then
  901. EFFECT:remove()
  902. else
  903. repeat Swait() until SOUND.Playing == false
  904. EFFECT:remove()
  905. end
  906. end
  907. end))
  908. end
  909.  
  910. function MakeForm(PART,TYPE)
  911. if TYPE == "Cyl" then
  912. local MSH = IT("CylinderMesh",PART)
  913. elseif TYPE == "Ball" then
  914. local MSH = IT("SpecialMesh",PART)
  915. MSH.MeshType = "Sphere"
  916. elseif TYPE == "Wedge" then
  917. local MSH = IT("SpecialMesh",PART)
  918. MSH.MeshType = "Wedge"
  919. end
  920. end
  921.  
  922. Debris = game:GetService("Debris")
  923.  
  924. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  925. local DIRECTION = CF(StartPos,EndPos).lookVector
  926. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  927. end
  928.  
  929. function turnto(position)
  930. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  931. end
  932. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  933. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  934. end
  935.  
  936. function PositiveAngle(NUMBER)
  937. if NUMBER >= 0 then
  938. NUMBER = 0
  939. end
  940. return NUMBER
  941. end
  942.  
  943. function NegativeAngle(NUMBER)
  944. if NUMBER <= 0 then
  945. NUMBER = 0
  946. end
  947. return NUMBER
  948. end
  949.  
  950. function Swait(NUMBER)
  951. if NUMBER == 0 or NUMBER == nil then
  952. ArtificialHB.Event:wait()
  953. else
  954. for i = 1, NUMBER do
  955. ArtificialHB.Event:wait()
  956. end
  957. end
  958. end
  959.  
  960. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  961. local NEWMESH = IT(MESH)
  962. if MESH == "SpecialMesh" then
  963. NEWMESH.MeshType = MESHTYPE
  964. if MESHID ~= "nil" and MESHID ~= "" then
  965. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  966. end
  967. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  968. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  969. end
  970. end
  971. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  972. NEWMESH.Scale = SCALE
  973. NEWMESH.Parent = PARENT
  974. return NEWMESH
  975. end
  976.  
  977. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  978. local NEWPART = IT("Part")
  979. NEWPART.formFactor = FORMFACTOR
  980. NEWPART.Reflectance = REFLECTANCE
  981. NEWPART.Transparency = TRANSPARENCY
  982. NEWPART.CanCollide = false
  983. NEWPART.Locked = true
  984. NEWPART.Anchored = true
  985. if ANCHOR == false then
  986. NEWPART.Anchored = false
  987. end
  988. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  989. NEWPART.Name = NAME
  990. NEWPART.Size = SIZE
  991. NEWPART.Position = Torso.Position
  992. NEWPART.Material = MATERIAL
  993. NEWPART:BreakJoints()
  994. NEWPART.Parent = PARENT
  995. return NEWPART
  996. end
  997.  
  998. local function weldBetween(a, b)
  999. local weldd = Instance.new("ManualWeld")
  1000. weldd.Part0 = a
  1001. weldd.Part1 = b
  1002. weldd.C0 = CFrame.new()
  1003. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1004. weldd.Parent = a
  1005. return weldd
  1006. end
  1007.  
  1008.  
  1009. function QuaternionFromCFrame(cf)
  1010. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1011. local trace = m00 + m11 + m22
  1012. if trace > 0 then
  1013. local s = math.sqrt(1 + trace)
  1014. local recip = 0.5 / s
  1015. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1016. else
  1017. local i = 0
  1018. if m11 > m00 then
  1019. i = 1
  1020. end
  1021. if m22 > (i == 0 and m00 or m11) then
  1022. i = 2
  1023. end
  1024. if i == 0 then
  1025. local s = math.sqrt(m00 - m11 - m22 + 1)
  1026. local recip = 0.5 / s
  1027. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1028. elseif i == 1 then
  1029. local s = math.sqrt(m11 - m22 - m00 + 1)
  1030. local recip = 0.5 / s
  1031. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1032. elseif i == 2 then
  1033. local s = math.sqrt(m22 - m00 - m11 + 1)
  1034. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1035. end
  1036. end
  1037. end
  1038.  
  1039. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1040. local xs, ys, zs = x + x, y + y, z + z
  1041. local wx, wy, wz = w * xs, w * ys, w * zs
  1042. local xx = x * xs
  1043. local xy = x * ys
  1044. local xz = x * zs
  1045. local yy = y * ys
  1046. local yz = y * zs
  1047. local zz = z * zs
  1048. 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))
  1049. end
  1050.  
  1051. function QuaternionSlerp(a, b, t)
  1052. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1053. local startInterp, finishInterp;
  1054. if cosTheta >= 0.0001 then
  1055. if (1 - cosTheta) > 0.0001 then
  1056. local theta = ACOS(cosTheta)
  1057. local invSinTheta = 1 / SIN(theta)
  1058. startInterp = SIN((1 - t) * theta) * invSinTheta
  1059. finishInterp = SIN(t * theta) * invSinTheta
  1060. else
  1061. startInterp = 1 - t
  1062. finishInterp = t
  1063. end
  1064. else
  1065. if (1 + cosTheta) > 0.0001 then
  1066. local theta = ACOS(-cosTheta)
  1067. local invSinTheta = 1 / SIN(theta)
  1068. startInterp = SIN((t - 1) * theta) * invSinTheta
  1069. finishInterp = SIN(t * theta) * invSinTheta
  1070. else
  1071. startInterp = t - 1
  1072. finishInterp = t
  1073. end
  1074. end
  1075. 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
  1076. end
  1077.  
  1078. function Clerp(a, b, t)
  1079. local qa = {QuaternionFromCFrame(a)}
  1080. local qb = {QuaternionFromCFrame(b)}
  1081. local ax, ay, az = a.x, a.y, a.z
  1082. local bx, by, bz = b.x, b.y, b.z
  1083. local _t = 1 - t
  1084. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1085. end
  1086.  
  1087. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1088. local frame = IT("Frame")
  1089. frame.BackgroundTransparency = TRANSPARENCY
  1090. frame.BorderSizePixel = BORDERSIZEPIXEL
  1091. frame.Position = POSITION
  1092. frame.Size = SIZE
  1093. frame.BackgroundColor3 = COLOR
  1094. frame.BorderColor3 = BORDERCOLOR
  1095. frame.Name = NAME
  1096. frame.Parent = PARENT
  1097. return frame
  1098. end
  1099.  
  1100. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1101. local label = IT("TextLabel")
  1102. label.BackgroundTransparency = 1
  1103. label.Size = UD2(1, 0, 1, 0)
  1104. label.Position = UD2(0, 0, 0, 0)
  1105. label.TextColor3 = TEXTCOLOR
  1106. label.TextStrokeTransparency = STROKETRANSPARENCY
  1107. label.TextTransparency = TRANSPARENCY
  1108. label.FontSize = TEXTFONTSIZE
  1109. label.Font = TEXTFONT
  1110. label.BorderSizePixel = BORDERSIZEPIXEL
  1111. label.TextScaled = false
  1112. label.Text = TEXT
  1113. label.Name = NAME
  1114. label.Parent = PARENT
  1115. return label
  1116. end
  1117.  
  1118. function NoOutlines(PART)
  1119. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1120. end
  1121.  
  1122. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1123. local NEWWELD = IT(TYPE)
  1124. NEWWELD.Part0 = PART0
  1125. NEWWELD.Part1 = PART1
  1126. NEWWELD.C0 = C0
  1127. NEWWELD.C1 = C1
  1128. NEWWELD.Parent = PARENT
  1129. return NEWWELD
  1130. end
  1131.  
  1132. local S = IT("Sound")
  1133. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1134. local NEWSOUND = nil
  1135. coroutine.resume(coroutine.create(function()
  1136. NEWSOUND = S:Clone()
  1137. NEWSOUND.Parent = PARENT
  1138. NEWSOUND.Volume = VOLUME
  1139. NEWSOUND.Pitch = PITCH
  1140. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1141. NEWSOUND:play()
  1142. if DOESLOOP == true then
  1143. NEWSOUND.Looped = true
  1144. else
  1145. repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  1146. NEWSOUND:remove()
  1147. end
  1148. end))
  1149. return NEWSOUND
  1150. end
  1151.  
  1152. function CFrameFromTopBack(at, top, back)
  1153. local right = top:Cross(back)
  1154. 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)
  1155. end
  1156.  
  1157. --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})
  1158. function WACKYEFFECT(Table)
  1159. local TYPE = (Table.EffectType or "Sphere")
  1160. local SIZE = (Table.Size or VT(1,1,1))
  1161. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1162. local TRANSPARENCY = (Table.Transparency or 0)
  1163. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1164. local CFRAME = (Table.CFrame or Torso.CFrame)
  1165. local MOVEDIRECTION = (Table.MoveToPos or nil)
  1166. local ROTATION1 = (Table.RotationX or 0)
  1167. local ROTATION2 = (Table.RotationY or 0)
  1168. local ROTATION3 = (Table.RotationZ or 0)
  1169. local MATERIAL = (Table.Material or "Neon")
  1170. local COLOR = (Table.Color or C3(1,1,1))
  1171. local TIME = (Table.Time or 45)
  1172. local SOUNDID = (Table.SoundID or nil)
  1173. local SOUNDPITCH = (Table.SoundPitch or nil)
  1174. local SOUNDVOLUME = (Table.SoundVolume or nil)
  1175. coroutine.resume(coroutine.create(function()
  1176. local PLAYSSOUND = false
  1177. local SOUND = nil
  1178. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1179. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1180. PLAYSSOUND = true
  1181. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1182. end
  1183. EFFECT.Color = COLOR
  1184. local MSH = nil
  1185. if TYPE == "Sphere" then
  1186. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1187. elseif TYPE == "Block" then
  1188. MSH = IT("BlockMesh",EFFECT)
  1189. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1190. elseif TYPE == "Wave" then
  1191. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1192. elseif TYPE == "Ring" then
  1193. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1194. elseif TYPE == "Slash" then
  1195. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1196. elseif TYPE == "Round Slash" then
  1197. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1198. elseif TYPE == "Swirl" then
  1199. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1200. elseif TYPE == "Skull" then
  1201. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1202. elseif TYPE == "Crystal" then
  1203. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1204. end
  1205. if MSH ~= nil then
  1206. local MOVESPEED = nil
  1207. if MOVEDIRECTION ~= nil then
  1208. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1209. end
  1210. local GROWTH = SIZE - ENDSIZE
  1211. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1212. if TYPE == "Block" then
  1213. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1214. else
  1215. EFFECT.CFrame = CFRAME
  1216. end
  1217. for LOOP = 1, TIME+1 do
  1218. Swait()
  1219. MSH.Scale = MSH.Scale - GROWTH/TIME
  1220. if TYPE == "Wave" then
  1221. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1222. end
  1223. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1224. if TYPE == "Block" then
  1225. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1226. else
  1227. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1228. end
  1229. if MOVEDIRECTION ~= nil then
  1230. local ORI = EFFECT.Orientation
  1231. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1232. EFFECT.Orientation = ORI
  1233. end
  1234. end
  1235. if PLAYSSOUND == false then
  1236. EFFECT:remove()
  1237. else
  1238. SOUND.Stopped:Connect(function()
  1239. EFFECT:remove()
  1240. end)
  1241. end
  1242. else
  1243. if PLAYSSOUND == false then
  1244. EFFECT:remove()
  1245. else
  1246. repeat Swait() until SOUND.Playing == false
  1247. EFFECT:remove()
  1248. end
  1249. end
  1250. end))
  1251. end
  1252.  
  1253. function MakeForm(PART,TYPE)
  1254. if TYPE == "Cyl" then
  1255. local MSH = IT("CylinderMesh",PART)
  1256. elseif TYPE == "Ball" then
  1257. local MSH = IT("SpecialMesh",PART)
  1258. MSH.MeshType = "Sphere"
  1259. elseif TYPE == "Wedge" then
  1260. local MSH = IT("SpecialMesh",PART)
  1261. MSH.MeshType = "Wedge"
  1262. end
  1263. end
  1264.  
  1265. function SpawnTrail(FROM,TO,BIG)
  1266. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Bright yellow", "Trail", VT(0,0,0))
  1267. MakeForm(TRAIL,"Cyl")
  1268. local DIST = (FROM - TO).Magnitude
  1269. if BIG == true then
  1270. TRAIL.Size = VT(0.5,DIST,0.5)
  1271. else
  1272. TRAIL.Size = VT(0.25,DIST,0.25)
  1273. end
  1274. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1275. coroutine.resume(coroutine.create(function()
  1276. for i = 1, 5 do
  1277. Swait()
  1278. TRAIL.Transparency = TRAIL.Transparency + 0.1
  1279. end
  1280. TRAIL:remove()
  1281. end))
  1282. end
  1283.  
  1284. Debris = game:GetService("Debris")
  1285.  
  1286. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1287. local DIRECTION = CF(StartPos,EndPos).lookVector
  1288. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1289. end
  1290.  
  1291. function turnto(position)
  1292. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1293. end
  1294.  
  1295. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  1296. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  1297. end
  1298.  
  1299. function PositiveAngle(NUMBER)
  1300. if NUMBER >= 0 then
  1301. NUMBER = 0
  1302. end
  1303. return NUMBER
  1304. end
  1305.  
  1306. function NegativeAngle(NUMBER)
  1307. if NUMBER <= 0 then
  1308. NUMBER = 0
  1309. end
  1310. return NUMBER
  1311. end
  1312.  
  1313. function Swait(NUMBER)
  1314. if NUMBER == 0 or NUMBER == nil then
  1315. ArtificialHB.Event:wait()
  1316. else
  1317. for i = 1, NUMBER do
  1318. ArtificialHB.Event:wait()
  1319. end
  1320. end
  1321. end
  1322.  
  1323. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  1324. local NEWMESH = IT(MESH)
  1325. if MESH == "SpecialMesh" then
  1326. NEWMESH.MeshType = MESHTYPE
  1327. if MESHID ~= "nil" and MESHID ~= "" then
  1328. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  1329. end
  1330. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  1331. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  1332. end
  1333. end
  1334. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  1335. NEWMESH.Scale = SCALE
  1336. NEWMESH.Parent = PARENT
  1337. return NEWMESH
  1338. end
  1339.  
  1340. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  1341. local NEWPART = IT("Part")
  1342. NEWPART.formFactor = FORMFACTOR
  1343. NEWPART.Reflectance = REFLECTANCE
  1344. NEWPART.Transparency = TRANSPARENCY
  1345. NEWPART.CanCollide = false
  1346. NEWPART.Locked = true
  1347. NEWPART.Anchored = true
  1348. if ANCHOR == false then
  1349. NEWPART.Anchored = false
  1350. end
  1351. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  1352. NEWPART.Name = NAME
  1353. NEWPART.Size = SIZE
  1354. NEWPART.Position = Torso.Position
  1355. NEWPART.Material = MATERIAL
  1356. NEWPART:BreakJoints()
  1357. NEWPART.Parent = PARENT
  1358. return NEWPART
  1359. end
  1360.  
  1361. local function weldBetween(a, b)
  1362. local weldd = Instance.new("ManualWeld")
  1363. weldd.Part0 = a
  1364. weldd.Part1 = b
  1365. weldd.C0 = CFrame.new()
  1366. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1367. weldd.Parent = a
  1368. return weldd
  1369. end
  1370.  
  1371.  
  1372. function QuaternionFromCFrame(cf)
  1373. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1374. local trace = m00 + m11 + m22
  1375. if trace > 0 then
  1376. local s = math.sqrt(1 + trace)
  1377. local recip = 0.5 / s
  1378. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  1379. else
  1380. local i = 0
  1381. if m11 > m00 then
  1382. i = 1
  1383. end
  1384. if m22 > (i == 0 and m00 or m11) then
  1385. i = 2
  1386. end
  1387. if i == 0 then
  1388. local s = math.sqrt(m00 - m11 - m22 + 1)
  1389. local recip = 0.5 / s
  1390. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  1391. elseif i == 1 then
  1392. local s = math.sqrt(m11 - m22 - m00 + 1)
  1393. local recip = 0.5 / s
  1394. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  1395. elseif i == 2 then
  1396. local s = math.sqrt(m22 - m00 - m11 + 1)
  1397. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  1398. end
  1399. end
  1400. end
  1401.  
  1402. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1403. local xs, ys, zs = x + x, y + y, z + z
  1404. local wx, wy, wz = w * xs, w * ys, w * zs
  1405. local xx = x * xs
  1406. local xy = x * ys
  1407. local xz = x * zs
  1408. local yy = y * ys
  1409. local yz = y * zs
  1410. local zz = z * zs
  1411. 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))
  1412. end
  1413.  
  1414. function QuaternionSlerp(a, b, t)
  1415. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  1416. local startInterp, finishInterp;
  1417. if cosTheta >= 0.0001 then
  1418. if (1 - cosTheta) > 0.0001 then
  1419. local theta = ACOS(cosTheta)
  1420. local invSinTheta = 1 / SIN(theta)
  1421. startInterp = SIN((1 - t) * theta) * invSinTheta
  1422. finishInterp = SIN(t * theta) * invSinTheta
  1423. else
  1424. startInterp = 1 - t
  1425. finishInterp = t
  1426. end
  1427. else
  1428. if (1 + cosTheta) > 0.0001 then
  1429. local theta = ACOS(-cosTheta)
  1430. local invSinTheta = 1 / SIN(theta)
  1431. startInterp = SIN((t - 1) * theta) * invSinTheta
  1432. finishInterp = SIN(t * theta) * invSinTheta
  1433. else
  1434. startInterp = t - 1
  1435. finishInterp = t
  1436. end
  1437. end
  1438. 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
  1439. end
  1440.  
  1441. function Clerp(a, b, t)
  1442. local qa = {QuaternionFromCFrame(a)}
  1443. local qb = {QuaternionFromCFrame(b)}
  1444. local ax, ay, az = a.x, a.y, a.z
  1445. local bx, by, bz = b.x, b.y, b.z
  1446. local _t = 1 - t
  1447. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  1448. end
  1449.  
  1450. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  1451. local frame = IT("Frame")
  1452. frame.BackgroundTransparency = TRANSPARENCY
  1453. frame.BorderSizePixel = BORDERSIZEPIXEL
  1454. frame.Position = POSITION
  1455. frame.Size = SIZE
  1456. frame.BackgroundColor3 = COLOR
  1457. frame.BorderColor3 = BORDERCOLOR
  1458. frame.Name = NAME
  1459. frame.Parent = PARENT
  1460. return frame
  1461. end
  1462.  
  1463. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  1464. local label = IT("TextLabel")
  1465. label.BackgroundTransparency = 1
  1466. label.Size = UD2(1, 0, 1, 0)
  1467. label.Position = UD2(0, 0, 0, 0)
  1468. label.TextColor3 = TEXTCOLOR
  1469. label.TextStrokeTransparency = STROKETRANSPARENCY
  1470. label.TextTransparency = TRANSPARENCY
  1471. label.FontSize = TEXTFONTSIZE
  1472. label.Font = TEXTFONT
  1473. label.BorderSizePixel = BORDERSIZEPIXEL
  1474. label.TextScaled = false
  1475. label.Text = TEXT
  1476. label.Name = NAME
  1477. label.Parent = PARENT
  1478. return label
  1479. end
  1480.  
  1481. function NoOutlines(PART)
  1482. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  1483. end
  1484.  
  1485. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  1486. local NEWWELD = IT(TYPE)
  1487. NEWWELD.Part0 = PART0
  1488. NEWWELD.Part1 = PART1
  1489. NEWWELD.C0 = C0
  1490. NEWWELD.C1 = C1
  1491. NEWWELD.Parent = PARENT
  1492. return NEWWELD
  1493. end
  1494.  
  1495. local S = IT("Sound")
  1496. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  1497. local NEWSOUND = nil
  1498. coroutine.resume(coroutine.create(function()
  1499. NEWSOUND = S:Clone()
  1500. NEWSOUND.Parent = PARENT
  1501. NEWSOUND.Volume = VOLUME
  1502. NEWSOUND.Pitch = PITCH
  1503. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  1504. NEWSOUND:play()
  1505. if DOESLOOP == true then
  1506. NEWSOUND.Looped = true
  1507. else
  1508. repeat wait(1) until NEWSOUND.Playing == false
  1509. NEWSOUND:remove()
  1510. end
  1511. end))
  1512. return NEWSOUND
  1513. end
  1514.  
  1515. local EyeSizes={
  1516. NumberSequenceKeypoint.new(0,2,0),
  1517. NumberSequenceKeypoint.new(1,0,0)
  1518. }
  1519. local EyeTrans={
  1520. NumberSequenceKeypoint.new(0,0.5,0),
  1521. NumberSequenceKeypoint.new(1,1,0)
  1522. }
  1523. local PE=Instance.new("ParticleEmitter",nil)
  1524. PE.LightEmission=.8
  1525. PE.Color = ColorSequence.new(BRICKC("Crimson").Color,BRICKC("Really red").Color)
  1526. PE.Size=NumberSequence.new(EyeSizes)
  1527. PE.Transparency=NumberSequence.new(EyeTrans)
  1528. PE.Lifetime=NumberRange.new(0.35,1)
  1529. PE.Rotation=NumberRange.new(0,360)
  1530. PE.Rate=100
  1531. PE.VelocitySpread = 10000
  1532. PE.Acceleration = Vector3.new(0,85,0)
  1533. PE.Drag = 5
  1534. PE.Speed = NumberRange.new(0.1,5)
  1535. PE.Texture="http://www.roblox.com/asset/?id=1460745664"
  1536. PE.ZOffset = 0.5
  1537. PE.Name = "PE"
  1538. PE.Enabled = false
  1539.  
  1540. function Fire(art)
  1541. local PARTICLES = PE:Clone()
  1542. PARTICLES.Parent = art
  1543. PARTICLES.Enabled = true
  1544. return PARTICLES
  1545. end
  1546.  
  1547. function CFrameFromTopBack(at, top, back)
  1548. local right = top:Cross(back)
  1549. 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)
  1550. end
  1551.  
  1552. --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})
  1553. function WACKYEFFECT(Table)
  1554. local TYPE = (Table.EffectType or "Sphere")
  1555. local SIZE = (Table.Size or VT(1,1,1))
  1556. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1557. local TRANSPARENCY = (Table.Transparency or 0)
  1558. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1559. local CFRAME = (Table.CFrame or Torso.CFrame)
  1560. local MOVEDIRECTION = (Table.MoveToPos or nil)
  1561. local ROTATION1 = (Table.RotationX or 0)
  1562. local ROTATION2 = (Table.RotationY or 0)
  1563. local ROTATION3 = (Table.RotationZ or 0)
  1564. local MATERIAL = (Table.Material or "Neon")
  1565. local COLOR = (Table.Color or C3(1,1,1))
  1566. local TIME = (Table.Time or 45)
  1567. local SOUNDID = (Table.SoundID or nil)
  1568. local SOUNDPITCH = (Table.SoundPitch or nil)
  1569. local SOUNDVOLUME = (Table.SoundVolume or nil)
  1570. coroutine.resume(coroutine.create(function()
  1571. local PLAYSSOUND = false
  1572. local SOUND = nil
  1573. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Crimson"), "Effect", VT(1,1,1), true)
  1574. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1575. PLAYSSOUND = true
  1576. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1577. end
  1578. EFFECT.Color = COLOR
  1579. local MSH = nil
  1580. if TYPE == "Sphere" then
  1581. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1582. elseif TYPE == "Block" or TYPE == "Box" then
  1583. MSH = IT("BlockMesh",EFFECT)
  1584. MSH.Scale = SIZE
  1585. elseif TYPE == "Wave" then
  1586. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1587. elseif TYPE == "Ring" then
  1588. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1589. elseif TYPE == "Slash" then
  1590. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1591. elseif TYPE == "Round Slash" then
  1592. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1593. elseif TYPE == "Swirl" then
  1594. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1595. elseif TYPE == "Skull" then
  1596. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1597. elseif TYPE == "Crystal" then
  1598. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1599. end
  1600. if MSH ~= nil then
  1601. local MOVESPEED = nil
  1602. if MOVEDIRECTION ~= nil then
  1603. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1604. end
  1605. local GROWTH = SIZE - ENDSIZE
  1606. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1607. if TYPE == "Block" then
  1608. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1609. else
  1610. EFFECT.CFrame = CFRAME
  1611. end
  1612. for LOOP = 1, TIME+1 do
  1613. Swait()
  1614. MSH.Scale = MSH.Scale - GROWTH/TIME
  1615. if TYPE == "Wave" then
  1616. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1617. end
  1618. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1619. if TYPE == "Block" then
  1620. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1621. else
  1622. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1623. end
  1624. if MOVEDIRECTION ~= nil then
  1625. local ORI = EFFECT.Orientation
  1626. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1627. EFFECT.Orientation = ORI
  1628. end
  1629. end
  1630. if PLAYSSOUND == false then
  1631. EFFECT:remove()
  1632. else
  1633. repeat wait(1) until SOUND.Playing == false
  1634. EFFECT:remove()
  1635. end
  1636. else
  1637. if PLAYSSOUND == false then
  1638. EFFECT:remove()
  1639. else
  1640. repeat Swait() until SOUND.Playing == false
  1641. EFFECT:remove()
  1642. end
  1643. end
  1644. end))
  1645. end
  1646.  
  1647. function MakeForm(PART,TYPE)
  1648. if TYPE == "Cyl" then
  1649. local MSH = IT("CylinderMesh",PART)
  1650. elseif TYPE == "Ball" then
  1651. local MSH = IT("SpecialMesh",PART)
  1652. MSH.MeshType = "Sphere"
  1653. elseif TYPE == "Wedge" then
  1654. local MSH = IT("SpecialMesh",PART)
  1655. MSH.MeshType = "Wedge"
  1656. end
  1657. end
  1658.  
  1659. Debris = game:GetService("Debris")
  1660.  
  1661. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1662. local DIRECTION = CF(StartPos,EndPos).lookVector
  1663. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1664. end
  1665.  
  1666. local HATWELD = nil
  1667. function Pose(WhichPose,Speed,Time,Magic,Gyro,Tors)
  1668. PLAYMAINANIM = false
  1669. if WhichPose == "Cast1" then
  1670. for i=0, Time, 0.1 / Animation_Speed do
  1671. Swait()
  1672. if Magic == true then
  1673. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1674. end
  1675. if Gyro ~= nil and Gyro ~= false then
  1676. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1677. end
  1678. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(35)), Speed / Animation_Speed)
  1679. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-35)), Speed / Animation_Speed)
  1680. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(125), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1681. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1682. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1683. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1684. end
  1685. elseif WhichPose == "Cast2" then
  1686. for i=0, Time, 0.1 / Animation_Speed do
  1687. Swait()
  1688. if Magic == true then
  1689. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1690. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = LeftArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1691. end
  1692. if Gyro ~= nil and Gyro ~= false then
  1693. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1694. end
  1695. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1696. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-15 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1697. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(15)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1698. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(120), RAD(0), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1699. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1700. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1701. end
  1702. elseif WhichPose == "RightArmUp" then
  1703. for i=0, Time, 0.1 / Animation_Speed do
  1704. Swait()
  1705. if Magic == true then
  1706. WACKYEFFECT({Time = 15, EffectType = "Crystal", Size = VT(1,1,1)*1.5, Size2 = VT(0,4,0), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1,0)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Glass", Color = BRICKC"Really red".Color, SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  1707. end
  1708. if Gyro ~= nil and Gyro ~= false then
  1709. Gyro.cframe = CF(RootPart.Position,Mouse.Hit.p)
  1710. end
  1711. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(15)), Speed / Animation_Speed)
  1712. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1713. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.65 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.2) * ANGLES(RAD(125), RAD(0), RAD(25)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1714. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1715. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1716. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1717. end
  1718. elseif WhichPose == "Taunt" then
  1719. for i=0, Time, 0.1 / Animation_Speed do
  1720. Swait()
  1721. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1722. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1723. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1724. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1725. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1726. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1727. end
  1728. HATWELD.Part0 = RightArm
  1729. HATWELD.C0 = CF(0,-1.1,-0.4) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(-20), RAD(0), RAD(0))
  1730. CreateSound(221057812,Torso,10,1,false)
  1731. for i=0, Time*2, 0.1 / Animation_Speed do
  1732. Swait()
  1733. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1734. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(35 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(0)), Speed / Animation_Speed)
  1735. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(145), RAD(0), RAD(45)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1736. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(5), RAD(25), RAD(-15)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1737. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1738. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1739. end
  1740. for i=0, Time, 0.1 / Animation_Speed do
  1741. Swait()
  1742. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), Speed / Animation_Speed)
  1743. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5), RAD(0), RAD(0)), Speed / Animation_Speed)
  1744. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.65, -0.5) * ANGLES(RAD(175), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1745. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1746. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1747. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1748. HATWELD.C0 = Clerp(HATWELD.C0, CF(-0.5,-1.2,-0.3) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(35), RAD(0), RAD(35)), Speed / Animation_Speed)
  1749. end
  1750. HATWELD.Part0 = Head
  1751. HATWELD.C0 = CF(0,0.35,0)
  1752. elseif WhichPose == "Prepare key" then
  1753. for i=0, Time, 0.1 / Animation_Speed do
  1754. Swait()
  1755. if Gyro ~= nil and Gyro ~= false then
  1756. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  1757. end
  1758. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(65)), Speed / Animation_Speed)
  1759. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-65)), Speed / Animation_Speed)
  1760. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(65)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1761. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1762. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1763. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1764. end
  1765. elseif WhichPose == "Turn key" then
  1766. for i=0, Time, 0.1 / Animation_Speed do
  1767. Swait()
  1768. if Gyro ~= nil and Gyro ~= false then
  1769. Gyro.cframe = CF(RootPart.Position,Tors.Position)
  1770. end
  1771. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(75)), Speed / Animation_Speed)
  1772. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(5 - 6.5 * SIN(SINE / 12)), RAD(0), RAD(-75)), Speed / Animation_Speed)
  1773. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), -0.25) * ANGLES(RAD(90), RAD(0), RAD(75)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * RIGHTSHOULDERC0, Speed / Animation_Speed)
  1774. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.5 + 0.15 * COS(SINE / 12) - 0.05 * COS(SINE / 12), 0.5) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, Speed / Animation_Speed)
  1775. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(-3), RAD(0), RAD(-15)), Speed / Animation_Speed)
  1776. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), Speed / Animation_Speed)
  1777. end
  1778. end
  1779. PLAYMAINANIM = true
  1780. end
  1781.  
  1782. --Lightning({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})
  1783. function Lightning(Table)
  1784. local Color = Table.Color or C3(1,1,1)
  1785. local StartPos = Table.Start or Torso.Position
  1786. local EndPos = Table.End or Mouse.Hit.p
  1787. local SegmentLength = Table.SegmentL or 2
  1788. local Thickness = Table.Thickness or 0.1
  1789. local Dissapear = Table.DoesFade or false
  1790. local Parent = Table.Ignore or Character
  1791. local MaxDist = Table.MaxDist or 400
  1792. local Branches = Table.Branches or false
  1793. local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  1794. local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/SegmentLength)
  1795. local LIGHTNINGMODEL = IT("Model",Effects)
  1796. LIGHTNINGMODEL.Name = "Lightning"
  1797. local LastBolt = nil
  1798. for E = 1, DISTANCE do
  1799. local ExtraSize = (DISTANCE-E)/15
  1800. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  1801. PART.Color = Color
  1802. MakeForm(PART,"Cyl")
  1803. if LastBolt == nil then
  1804. PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1805. else
  1806. 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,SegmentLength/3+(DISTANCE-E)).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1807. end
  1808. LastBolt = PART
  1809. if Branches == true then
  1810. local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  1811. if CHOICE == 1 then
  1812. local LASTBRANCH = nil
  1813. for i = 1, MRANDOM(2,5) do
  1814. local ExtraSize2 = ((DISTANCE-E)/25)/i
  1815. local PART = CreatePart(3, LIGHTNINGMODEL, "Neon", 0, 0, BRICKC("Crimson"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  1816. PART.Color = Color
  1817. MakeForm(PART,"Cyl")
  1818. if LASTBRANCH == nil then
  1819. 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)
  1820. else
  1821. 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)
  1822. end
  1823. LASTBRANCH = PART
  1824. end
  1825. end
  1826. end
  1827. end
  1828. if Dissapear == true then
  1829. coroutine.resume(coroutine.create(function()
  1830. for i = 1, 10 do
  1831. Swait()
  1832. for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  1833. if c.ClassName == "Part" then
  1834. c.Transparency = i/10
  1835. end
  1836. end
  1837. end
  1838. LIGHTNINGMODEL:remove()
  1839. end))
  1840. elseif Dissapear == false then
  1841. Debris:AddItem(LIGHTNINGMODEL,0.1)
  1842. end
  1843. return {End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z/2).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  1844. end
  1845.  
  1846. --//=================================\\
  1847. --|| WEAPON CREATION
  1848. --\\=================================//
  1849. Humanoid.Parent = nil
  1850. RootPart.Size = RootPart.Size*SIZE
  1851. Torso.Size = Torso.Size*SIZE
  1852. RightArm.Size = RightArm.Size*SIZE
  1853. RightLeg.Size = RightLeg.Size*SIZE
  1854. LeftArm.Size = LeftArm.Size*SIZE
  1855. LeftLeg.Size = LeftLeg.Size*SIZE
  1856. RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  1857. RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  1858. Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1859. Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
  1860. RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  1861. LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  1862. RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1863. LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1864. RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1865. LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  1866. Head.Size = Head.Size*SIZE
  1867. RootJoint.Parent = RootPart
  1868. Neck.Parent = Torso
  1869. RightShoulder.Parent = Torso
  1870. LeftShoulder.Parent = Torso
  1871. RightHip.Parent = Torso
  1872. LeftHip.Parent = Torso
  1873.  
  1874. Humanoid.DisplayDistanceType = "None"
  1875. local naeeym2 = IT("BillboardGui",Character)
  1876. naeeym2.AlwaysOnTop = true
  1877. naeeym2.Size = UDim2.new(5,35,2,15)
  1878. naeeym2.StudsOffset = Vector3.new(0,2,0)
  1879. naeeym2.MaxDistance = 75
  1880. naeeym2.Adornee = Character.Head
  1881. naeeym2.Name = "Name"
  1882. local tecks2 = IT("TextLabel",naeeym2)
  1883. tecks2.BackgroundTransparency = 1
  1884. tecks2.TextScaled = true
  1885. tecks2.BorderSizePixel = 0
  1886. tecks2.Text = "The mafia"
  1887. tecks2.Font = "SciFi"
  1888. tecks2.TextSize = 30
  1889. tecks2.TextStrokeTransparency = 0
  1890. tecks2.TextColor3 = C3(5,6,0)
  1891. tecks2.TextStrokeColor3 = C3(66/255, 0/255, 127/255)
  1892. tecks2.Size = UDim2.new(1,0,0.5,0)
  1893. tecks2.Parent = naeeym2
  1894. local top = Instance.new("Shirt")
  1895. top.ShirtTemplate = "rbxassetid://45695443"
  1896. top.Parent = Character
  1897. top.Name = "Cloth"
  1898. local bottom = Instance.new("Pants")
  1899. bottom.PantsTemplate = "rbxassetid://45696190"
  1900. bottom.Parent = Character
  1901. bottom.Name = "Cloth"
  1902. local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Bright red", "Hat", VT(1,1,1),false)
  1903. PRT.Color = C3(0,0,0)
  1904. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
  1905. CreateMesh("SpecialMesh", PRT, "FileMesh", "", "", VT(1,1,1)*SIZE, VT(0,0,0))
  1906. local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Bright red", "Detail", VT(1,1,1),false)
  1907. PRT.Color = C3(1,1,1)
  1908. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  1909. CreateMesh("SpecialMesh", PRT, "FileMesh", "13520257", "", VT(1,1,1)*SIZE, VT(0,0,0))
  1910. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Bright red", "Detail", VT(1,1.2,0.2),false)
  1911. PRT.Color = C3(25/255, 156/255, 280/164)
  1912.  
  1913. MakeForm(PRT,"Ball")
  1914. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  1915. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.4,0.5),false)
  1916. PRT.Color = C3(25/255, 156/255, 280/164)
  1917. MakeForm(PRT,"Ball")
  1918. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
  1919. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  1920. PRT.Color = C3(25/255, 156/255, 280/164)
  1921. MakeForm(PRT,"Ball")
  1922. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  1923. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  1924. PRT.Color = C3(25/255, 156/255, 280/164)
  1925. MakeForm(PRT,"Ball")
  1926. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  1927. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
  1928. PRT.Color = C3(25/255, 156/255, 280/164)
  1929. MakeForm(PRT,"Ball")
  1930. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(15), RAD(0)), CF(0, 0, 0))
  1931. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
  1932. PRT.Color = C3(25/255, 156/255, 280/164)
  1933. MakeForm(PRT,"Ball")
  1934. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(-15), RAD(0)), CF(0, 0, 0))
  1935. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
  1936. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1937. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
  1938. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  1939. MakeForm(PRT,"Cyl")
  1940. local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Bright red", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
  1941. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  1942. MakeForm(PRT,"Cyl")
  1943. PRT.Color = C3(66/255, 0/255, 127/255)
  1944. local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
  1945. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  1946. MakeForm(RING,"Cyl")
  1947. RING.Color = C3(5,6,0)
  1948. for i = 1, 12 do
  1949. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(0,0.15,0)*SIZE,false)
  1950. PRT.Color = C3(5,6,0)
  1951. local MSH = IT("BlockMesh",PRT)
  1952. MSH.Scale = VT(0.6,1,1)
  1953. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD((360/12)*i), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.2*SIZE))
  1954. end
  1955. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(0,0.15,0.15)*SIZE,false)
  1956. PRT.Color = C3(5,6,0)
  1957. local MSH = IT("BlockMesh",PRT)
  1958. MSH.Scale = VT(0.4,1,1)
  1959. local WATCH1 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.075*SIZE))
  1960. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Bright red", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
  1961. PRT.Color = C3(5,6,0)
  1962. local MSH = IT("BlockMesh",PRT)
  1963. MSH.Scale = VT(0.4,1,1)
  1964. local WATCH2 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -(0.075/1.5)*SIZE))
  1965. coroutine.resume(coroutine.create(function()
  1966. while true do
  1967. Swait()
  1968. CLOCKLOOP = CLOCKLOOP - 1*CLOCKSPEED
  1969. WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
  1970. WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
  1971. if CLOCKLOOP <= -150 then
  1972. if VALUE1 == false then
  1973. CLOCKLOOP = 0
  1974. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = RING.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(192,192,192), SoundID = 743521450, SoundPitch = 1.2, SoundVolume = 4})
  1975. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
  1976. ApplyAoE(HITPOS,10,15,45,75,false)
  1977. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(15,2,15), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(192,192,192), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  1978. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(192,192,192), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  1979. if CLOCKTARGET ~= nil then
  1980. CLOCKTARGET.Health = CLOCKTARGET.Health - 20
  1981. if CLOCKTARGET.Torso ~= nil then
  1982. CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
  1983. end
  1984. if CLOCKTARGET.Health == 0 then
  1985. CLOCKTARGET = nil
  1986. end
  1987. end
  1988. end
  1989. end
  1990. end
  1991. end))
  1992. warn("Promlg112 edit DO NOT STEAL IT")
  1993. for _, c in pairs(Weapon:GetChildren()) do
  1994. if c.ClassName == "Part" then
  1995. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1996. end
  1997. end
  1998.  
  1999. Neck.Name = "Weld"
  2000. RootJoint.Name = "Weld"
  2001. RightShoulder.Name = "Weld"
  2002. LeftShoulder.Name = "Weld"
  2003. RightHip.Name = "Weld"
  2004. LeftHip.Name = "Weld"
  2005.  
  2006. local TOBANISH = {}
  2007.  
  2008. local BODY = {}
  2009. for _, c in pairs(Character:GetDescendants()) do
  2010. if c:IsA("BasePart") and c.Name ~= "Handle" then
  2011. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  2012. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2013. end
  2014. table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency})
  2015. elseif c:IsA("JointInstance") then
  2016. table.insert(BODY,{c,c.Parent,nil,nil,nil})
  2017. end
  2018. end
  2019. for e = 1, #BODY do
  2020. if BODY[e] ~= nil then
  2021. local STUFF = BODY[e]
  2022. local PART = STUFF[1]
  2023. local PARENT = STUFF[2]
  2024. local MATERIAL = STUFF[3]
  2025. local COLOR = STUFF[4]
  2026. local TRANSPARENCY = STUFF[5]
  2027. if PART.ClassName == "Part" and PART ~= RootPart then
  2028. PART.Material = MATERIAL
  2029. PART.Color = COLOR
  2030. PART.Transparency = TRANSPARENCY
  2031. end
  2032. PART.AncestryChanged:Connect(function()
  2033. PART.Parent = PARENT
  2034. end)
  2035. end
  2036. end
  2037.  
  2038. function refit()
  2039. Character.Parent = workspace
  2040. for e = 1, #BODY do
  2041. if BODY[e] ~= nil then
  2042. local STUFF = BODY[e]
  2043. local PART = STUFF[1]
  2044. local PARENT = STUFF[2]
  2045. local MATERIAL = STUFF[3]
  2046. local COLOR = STUFF[4]
  2047. local TRANSPARENCY = STUFF[5]
  2048. if PART.ClassName == "Part" and PART ~= RootPart then
  2049. PART.Material = MATERIAL
  2050. PART.Color = COLOR
  2051. PART.Transparency = TRANSPARENCY
  2052. end
  2053. if PART.Parent ~= PARENT then
  2054. Humanoid:remove()
  2055. PART.Parent = PARENT
  2056. Humanoid = IT("Humanoid",Character)
  2057. end
  2058. end
  2059. end
  2060. end
  2061. local SKILLTEXTCOLOR = C3(66/255, 0/255, 127/255)
  2062. local SKILLFONT = "Fantasy"
  2063. local SKILLTEXTSIZE = 7
  2064.  
  2065. Weapon.Parent = Character
  2066. Humanoid.Parent = Character
  2067.  
  2068. Humanoid.Died:connect(function()
  2069. refit()
  2070. end)
  2071.  
  2072. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23-.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  2073. local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50+.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  2074. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  2075. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  2076. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  2077.  
  2078. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Magic Missiles", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
  2079. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Times up", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
  2080. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Chained Punch", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
  2081. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warp Meteor", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
  2082. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Pandora's Box", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
  2083.  
  2084. local Particle = IT("ParticleEmitter",nil)
  2085. Particle.Enabled = false
  2086. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.3),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(1,1)})
  2087. Particle.LightEmission = 0.5
  2088. Particle.Rate = 150
  2089. Particle.ZOffset = 0.2
  2090. Particle.Rotation = NumberRange.new(-180, 180)
  2091. Particle.RotSpeed = NumberRange.new(-180, 180)
  2092. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  2093. Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
  2094.  
  2095. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  2096. function ParticleEmitter(Table)
  2097. local PRTCL = Particle:Clone()
  2098. local Speed = Table.Speed or 5
  2099. local Drag = Table.Drag or 0
  2100. local Size1 = Table.Size1 or 1
  2101. local Size2 = Table.Size2 or 5
  2102. local Lifetime1 = Table.Lifetime1 or 1
  2103. local Lifetime2 = Table.Lifetime2 or 1.5
  2104. local Parent = Table.Parent or Torso
  2105. local Emit = Table.Emit or 100
  2106. local Offset = Table.Offset or 360
  2107. local Acel = Table.Acel or VT(0,0,0)
  2108. local Enabled = Table.Enabled or false
  2109. PRTCL.Parent = Parent
  2110. PRTCL.Size = NumberSequence.new(Size1,Size2)
  2111. PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  2112. PRTCL.Speed = NumberRange.new(Speed)
  2113. PRTCL.VelocitySpread = Offset
  2114. PRTCL.Drag = Drag
  2115. PRTCL.Acceleration = Acel
  2116. if Enabled == false then
  2117. PRTCL:Emit(Emit)
  2118. Debris:AddItem(PRTCL,Lifetime2)
  2119. else
  2120. PRTCL.Enabled = true
  2121. end
  2122. return PRTCL
  2123. end
  2124.  
  2125. local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.6,0.2),false)
  2126. local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
  2127. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.5,0.2),false)
  2128. MakeForm(Part,"Wedge")
  2129. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
  2130. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.3,0.2),false)
  2131. MakeForm(Part,"Wedge")
  2132. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
  2133. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.3,0.3),false)
  2134. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2135. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.5,0.5),false)
  2136. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2137. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.4,0.4,0.4),false)
  2138. MakeForm(Part,"Cyl")
  2139. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2140. for i = 1, 8 do
  2141. local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0,0.35,0.41),false)
  2142. CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
  2143. end
  2144. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0.38,0.41,0.38),false)
  2145. MakeForm(Part,"Cyl")
  2146. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2147. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.37,0.5,0.37),false)
  2148. MakeForm(Part,"Ball")
  2149. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2150. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.7,0.4),false)
  2151. MakeForm(Part,"Wedge")
  2152. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
  2153. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.3,0.4,0.2),false)
  2154. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2155. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.35,0.35,0.35),false)
  2156. MakeForm(Part,"Cyl")
  2157. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2158. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.5,0.1,0.5),false)
  2159. MakeForm(Part,"Cyl")
  2160. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2161. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.5,0.1,0.45),false)
  2162. MakeForm(Part,"Cyl")
  2163. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2164. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.2,0.5,0.2),false)
  2165. MakeForm(Part,"Wedge")
  2166. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
  2167. local LASTPART = Handle
  2168. for i = 1, 10 do
  2169. if LASTPART == Handle then
  2170. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.1,0.2,0),false)
  2171. LASTPART = Part
  2172. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2173. else
  2174. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.1,0.05,0),false)
  2175. CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
  2176. LASTPART = Part
  2177. end
  2178. end
  2179.  
  2180. local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.15,2,0.15),false)
  2181. MakeForm(Barrel,"Cyl")
  2182. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  2183. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0.25,1,0.25),false)
  2184. MakeForm(Part,"Cyl")
  2185. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
  2186. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0,0.1,0.2),false)
  2187. MakeForm(Part,"Wedge")
  2188. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  2189. local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Eye", VT(0.125,0,0.125),false)
  2190. MakeForm(Hole,"Cyl")
  2191. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
  2192. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Brown", "Part", VT(0,0,0),false)
  2193. local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  2194. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
  2195. local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Brown", "Eye", VT(0,0,0),false)
  2196. local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  2197. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
  2198. coroutine.resume(coroutine.create(function()
  2199. while wait() do
  2200. GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
  2201. GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
  2202. end
  2203. end))
  2204.  
  2205. ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  2206. --ParticleEmitter({Speed = 0.5, Drag = 0, Size1 = 0.2, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.7, Parent = Dangle, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  2207.  
  2208. for _, c in pairs(Weapon:GetDescendants()) do
  2209. if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  2210. c.Material = "Glass"
  2211. c.Color = C3(0,0,0)
  2212. elseif c.ClassName == "Part" and c.Name == "Eye" then
  2213. c.Color = C3(1,0,0)
  2214. c.Material = "Neon"
  2215. end
  2216. end
  2217.  
  2218. Weapon.Parent = Character
  2219. for _, c in pairs(Weapon:GetChildren()) do
  2220. if c.ClassName == "Part" then
  2221. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  2222. end
  2223. end
  2224.  
  2225. local SKILLTEXTCOLOR = C3(1,0,0)
  2226. local SKILLFONT = "Antique"
  2227. local SKILLTEXTSIZE = 7
  2228.  
  2229. Humanoid.Died:connect(function()
  2230. ATTACK = true
  2231. end)
  2232.  
  2233. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.1, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  2234. --[[local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.63, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  2235. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.215, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  2236. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.525, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  2237. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  2238. ]]
  2239. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
  2240. --[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
  2241. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
  2242. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
  2243. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
  2244. ]]
  2245. function printbye(Name)
  2246. local MESSAGES = {"You cannot struggle, ","Your existance is an insult, ","Fade, ","Your existance is not desired, ","You are not permitted here, ","You are not to decide your fate, ","Be gone, ","You are already dead, ","Your live is an anomaly, ","Don't dare to return, ","Why are you resisting, ","You cannot exist here, ","Why are you struggling, ","Your fate was already decided, ","Goodbye, ","You cannot ignore my command, ","You cannot resist my command, ","You already died, "}
  2247. warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
  2248. end
  2249.  
  2250. workspace.ChildAdded:connect(function(instance)
  2251. for BANISH = 1, #TOBANISH do
  2252. if TOBANISH[BANISH] ~= nil then
  2253. if instance.Name == TOBANISH[BANISH] then
  2254. coroutine.resume(coroutine.create(function()
  2255. printbye(instance.Name)
  2256. instance:ClearAllChildren()
  2257. Debris:AddItem(instance,0.0005)
  2258. end))
  2259. end
  2260. end
  2261. end
  2262. end)
  2263.  
  2264. --//=================================\\
  2265. --|| DAMAGING
  2266. --\\=================================//
  2267. function killnearest(position,range,EFFECT)
  2268. for i,v in ipairs(workspace:GetChildren()) do
  2269. local body = v:GetChildren()
  2270. for part = 1, #body do
  2271. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  2272. local SIZE = body[part].Size.Magnitude
  2273. if(body[part].Position - position).Magnitude < range + SIZE/2 then
  2274. if v.ClassName == "Model" then
  2275. if v:FindFirstChildOfClass("Humanoid") ~= nil then
  2276. if v:FindFirstChildOfClass("Humanoid").Health > 0 then
  2277. v:BreakJoints()
  2278. if EFFECT == "Glitch" then
  2279. coroutine.resume(coroutine.create(function()
  2280. local ORIGINPOS = body[part].CFrame
  2281. local SIZE = body[part].Size
  2282. for i = 1, 100 do
  2283. Swait()
  2284. local PART = body[part]
  2285. PART.Anchored = true
  2286. PART.Size = SIZE*MRANDOM(5,15)/10
  2287. PART.CFrame = ORIGINPOS*CF(MRANDOM(-15,15)/15,MRANDOM(-15,15)/15,MRANDOM(-15,15)/15)
  2288. end
  2289. body[part]:remove()
  2290. end))
  2291. elseif EFFECT == "Shatter" then
  2292. for _, c in pairs(v:GetChildren()) do
  2293. if c.ClassName == "Part" or c.ClassName == "MeshPart" then
  2294. Shatter(c)
  2295. end
  2296. end
  2297. end
  2298. end
  2299. end
  2300. end
  2301. end
  2302. end
  2303. end
  2304. end
  2305. end
  2306.  
  2307. function ApplyDamage(Humanoid,Damage,TorsoPart)
  2308. local defence = Instance.new("BoolValue",Humanoid.Parent)
  2309. defence.Name = ("HitBy"..Player.Name)
  2310. game:GetService("Debris"):AddItem(defence, 0.001)
  2311. Damage = Damage * DAMAGEMULTIPLIER
  2312. if Humanoid.Health ~= 0 then
  2313. local CritChance = MRANDOM(1,100)
  2314. if Damage > Humanoid.Health then
  2315. Damage = math.ceil(Humanoid.Health)
  2316. if Damage == 0 then
  2317. Damage = 0.1
  2318. end
  2319. end
  2320. Humanoid.Health = Humanoid.Health - Damage
  2321. end
  2322. end
  2323.  
  2324. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  2325. local CHILDREN = workspace:GetDescendants()
  2326. for index, CHILD in pairs(CHILDREN) do
  2327. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  2328. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2329. if HUM then
  2330. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2331. if TORSO then
  2332. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  2333. if INSTAKILL == false then
  2334. CHILD:BreakJoints()
  2335. else
  2336. local DMG = MRANDOM(MINDMG,MAXDMG)
  2337. ApplyDamage(HUM,DMG,TORSO)
  2338. end
  2339. if FLING > 0 then
  2340. for _, c in pairs(CHILD:GetChildren()) do
  2341. if c:IsA("BasePart") then
  2342. local bv = Instance.new("BodyVelocity")
  2343. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2344. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  2345. bv.Parent = c
  2346. Debris:AddItem(bv,0.05)
  2347. end
  2348. end
  2349. end
  2350. end
  2351. end
  2352. end
  2353. end
  2354. end
  2355. end
  2356.  
  2357. function Banish(Foe)
  2358. if Foe then
  2359. coroutine.resume(coroutine.create(function()
  2360. --if game.Players:FindFirstChild(Foe.Name) then
  2361. table.insert(TOBANISH,Foe.Name)
  2362. printbye(Foe.Name)
  2363. --end
  2364. Foe.Archivable = true
  2365. local CLONE = Foe:Clone()
  2366. Foe:Destroy()
  2367. CLONE.Parent = Effects
  2368. CLONE:BreakJoints()
  2369. local MATERIALS = {"Glass","Neon"}
  2370. for _, c in pairs(CLONE:GetDescendants()) do
  2371. if c:IsA("BasePart") then
  2372. if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
  2373. CreateSound(340722848, c, 10, 1, false)
  2374. end
  2375. c.Anchored = true
  2376. c.Transparency = c.Transparency + 0.2
  2377. c.Material = MATERIALS[MRANDOM(1,2)]
  2378. c.Color = C3(1,0,0)
  2379. if c.ClassName == "MeshPart" then
  2380. c.TextureID = ""
  2381. end
  2382. if c:FindFirstChildOfClass("SpecialMesh") then
  2383. c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  2384. end
  2385. if c:FindFirstChildOfClass("Decal") then
  2386. c:FindFirstChildOfClass("Decal"):remove()
  2387. end
  2388. c.Name = "Banished"
  2389. c.CanCollide = false
  2390. else
  2391. c:remove()
  2392. end
  2393. end
  2394. local A = false
  2395. for i = 1, 35 do
  2396. if A == false then
  2397. A = true
  2398. elseif A == true then
  2399. A = false
  2400. end
  2401. for _, c in pairs(CLONE:GetDescendants()) do
  2402. if c:IsA("BasePart") then
  2403. c.Anchored = true
  2404. c.Material = MATERIALS[MRANDOM(1,2)]
  2405. c.Transparency = c.Transparency + 0.8/35
  2406. if A == false then
  2407. c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  2408. elseif A == true then
  2409. c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  2410. end
  2411. end
  2412. end
  2413. Swait()
  2414. end
  2415. CLONE:remove()
  2416. end))
  2417. end
  2418. end
  2419.  
  2420. function ApplyAoE(POSITION,RANGE,FLING,BURN)
  2421. local CHILDREN = workspace:GetDescendants()
  2422. for index, CHILD in pairs(CHILDREN) do
  2423. if CHILD.ClassName == "Model" and CHILD ~= Character then
  2424. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  2425. if HUM then
  2426. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  2427. if TORSO then
  2428. if HUM.Health > 0 and (TORSO.Position - POSITION).Magnitude <= RANGE then
  2429. CHILD:BreakJoints()
  2430. if FLING ~= 0 then
  2431. for _, c in pairs(CHILD:GetChildren()) do
  2432. if c:IsA("BasePart") and c.Transparency == 0 then
  2433. if BURN == true then
  2434. Fire(c)
  2435. end
  2436. local bv = Instance.new("BodyVelocity")
  2437. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  2438. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  2439. bv.Parent = c
  2440. Debris:AddItem(bv,0.05)
  2441. end
  2442. end
  2443. end
  2444. end
  2445. end
  2446. end
  2447. end
  2448. end
  2449. end
  2450.  
  2451. --//=================================\\
  2452. --|| ATTACK FUNCTIONS AND STUFF
  2453. --\\=================================//
  2454. function CyberSmash()
  2455. ATTACK = true
  2456. Rooted = false
  2457. local GYRO = IT("BodyGyro",RootPart)
  2458. GYRO.D = 100
  2459. GYRO.P = 2000
  2460. GYRO.MaxTorque = VT(0,4000000,0)
  2461. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2462. local SMASH = CreatePart(3, Effects, "Neon", 0, 1, "Earth green", "Block", VT(25,25,25))
  2463. SMASH.CanCollide = true
  2464. SMASH.Color = C3(0,0,0)
  2465. local EF = Instance.new("SelectionBox",SMASH)
  2466. EF.Adornee = SMASH
  2467. EF.Color = BrickColor.new("Earth green")
  2468. EF.LineThickness = 0.2
  2469. EF.Transparency = 1
  2470. coroutine.resume(coroutine.create(function()
  2471. for i = 1, 20 do
  2472. Swait()
  2473. SMASH.Transparency = SMASH.Transparency - 0.05
  2474. EF.Transparency = SMASH.Transparency
  2475. end
  2476. end))
  2477. repeat
  2478. SMASH.CFrame = CF(Mouse.Hit.p)*CF(0,35,0)
  2479. Swait()
  2480. GYRO.cframe = CF(RootPart.Position,SMASH.Position)
  2481. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-15 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  2482. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  2483. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(130), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2484. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2485. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2486. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2487. until HOLD == true and SMASH.Transparency < 0.99
  2488. for i = 1, 25 do
  2489. Swait()
  2490. SMASH.CFrame = SMASH.CFrame*CF(0,15/25,0)
  2491. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  2492. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  2493. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(160), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2494. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2495. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2496. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2497. end
  2498. local TOCH = SMASH.Touched:Connect(function(hit)
  2499. if hit.Anchored == false and hit.Parent ~= Head and hit.Parent ~= Character and hit.Parent ~= Effects then
  2500. Shatter(hit)
  2501. end
  2502. end)
  2503. local n0 = nil
  2504. local HITFLOOR,HITPOS = Raycast(SMASH.Position, (CF(SMASH.Position, SMASH.Position + VT(0, -1, 0))).lookVector, 25000, Character)
  2505. if HITFLOOR ~= nil then
  2506. if HITFLOOR.Anchored == false and HITFLOOR.Parent ~= workspace then
  2507. if HITFLOOR.Parent:FindFirstChildOfClass("Humanoid") or HITFLOOR.Parent.Parent:FindFirstChildOfClass("Humanoid") then
  2508. if HITFLOOR.Parent.ClassName == "Model" then
  2509. HITFLOOR.Parent:BreakJoints()
  2510. elseif HITFLOOR.Parent.Parent.ClassName == "Model" then
  2511. HITFLOOR.Parent.Parent:BreakJoints()
  2512. end
  2513. end
  2514. local POS = HITPOS
  2515. n0,HITPOS = Raycast(POS, (CF(POS, POS + VT(0, -1, 0))).lookVector, 25000, HITFLOOR.Parent)
  2516. end
  2517. end
  2518. killnearest(HITPOS,SMASH.Size.X/1.3,"Shatter")
  2519. SMASH.CFrame = CF(HITPOS+VT(0,SMASH.Size.Y/2,0))
  2520. WACKYEFFECT({Time = 25, EffectType = "Box", Size = VT(24,0,24), Size2 = VT(75,2,75), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 130972023, SoundPitch = 1, SoundVolume = 10})
  2521. for i = 1, 25 do
  2522. Swait()
  2523. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.25 * COS(SINE / 12)) * ANGLES(RAD(25 + 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 1 / Animation_Speed)
  2524. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15 + 4.5 * SIN(SINE / 12)), RAD(0), RAD(-45 - 4 * SIN(SINE / 12))), 1 / Animation_Speed)
  2525. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5 + 0.025 * COS(SINE / 12), -0.5) * ANGLES(RAD(30), RAD(0 - 7.5 * SIN(SINE / 12)), RAD(45 + 7.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2526. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5 + 0.025 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(0 + 7.5 * SIN(SINE / 12)), RAD(-12 - 7.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2527. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2528. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(7.5 * SIN(SINE / 12)), RAD(-90), RAD(0)) * ANGLES(RAD(-8 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2529. end
  2530. coroutine.resume(coroutine.create(function()
  2531. wait(0.2)
  2532. TOCH:disconnect()
  2533. wait(1.8)
  2534. for i = 1, 100 do
  2535. Swait()
  2536. SMASH.Transparency = i/100
  2537. end
  2538. for i = 1, 10 do
  2539. Swait()
  2540. EF.Transparency = EF.Transparency + 0.1
  2541. end
  2542. SMASH:remove()
  2543. end))
  2544. GYRO:remove()
  2545. ATTACK = false
  2546. Rooted = false
  2547. end
  2548.  
  2549. function Inferno_Ring()
  2550. ATTACK = true
  2551. Rooted = false
  2552. local GYRO = IT("BodyGyro",RootPart)
  2553. GYRO.D = 750
  2554. GYRO.P = 20000
  2555. GYRO.MaxTorque = VT(0,40000000,0)
  2556. local FIRE = IT("Model",Effects)
  2557. FIRE.Name = "Fire"
  2558. local MAIN = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "Center", VT(0,0,0))
  2559. FIRE.PrimaryPart = MAIN
  2560. local FIRES = {}
  2561. for i = 1, 45 do
  2562. local PRT = CreatePart(3, FIRE, "Neon", 0, 1, "Really red", "RingPart", VT(3,3,3))
  2563. PRT.CFrame = MAIN.CFrame*ANGLES(RAD(0),RAD((360/45)*i),RAD(0))*CF(0,0,20)
  2564. local F = Fire(PRT)
  2565. table.insert(FIRES,F)
  2566. end
  2567. repeat
  2568. FIRE:SetPrimaryPartCFrame(CF(Mouse.Hit.p))
  2569. Pose("Cast1",1.5,0.01,false,GYRO)
  2570. until HOLD == true
  2571. coroutine.resume(coroutine.create(function()
  2572. for i = 1, 4 do
  2573. ApplyAoE(MAIN.Position,21,-15,true)
  2574. CreateSound(463598785,MAIN,3,1,false)
  2575. for E = 1, #FIRES do
  2576. if FIRES[E] ~= nil then
  2577. FIRES[E].Acceleration = VT(0,300,0)
  2578. FIRES[E].Lifetime=NumberRange.new(0.35,1.5)
  2579. end
  2580. end
  2581. wait(0.3)
  2582. end
  2583. for E = 1, #FIRES do
  2584. if FIRES[E] ~= nil then
  2585. FIRES[E].Enabled = false
  2586. end
  2587. end
  2588. Debris:AddItem(FIRE,5)
  2589. end))
  2590. CreateSound(215395388,RightArm,3,2,false)
  2591. Pose("RightArmUp",1.5,0.5,true)
  2592. GYRO:remove()
  2593. ATTACK = false
  2594. Rooted = false
  2595. end
  2596.  
  2597. function Banisher_Bullet()
  2598. ATTACK = true
  2599. Rooted = false
  2600. for i=0, 0.4, 0.1 / Animation_Speed do
  2601. Swait()
  2602. turnto(Mouse.Hit.p)
  2603. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2604. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2605. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2606. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2607. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2608. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2609. end
  2610. repeat
  2611. for i=0, 0.2, 0.1 / Animation_Speed do
  2612. Swait()
  2613. turnto(Mouse.Hit.p)
  2614. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2615. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.5 / Animation_Speed)
  2616. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2617. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2618. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2619. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2620. end
  2621. local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
  2622. SpawnTrail(Hole.Position,POS)
  2623. if HIT ~= nil then
  2624. if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  2625. Banish(HIT.Parent)
  2626. end
  2627. end
  2628. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = Hole.CFrame*CF(0,0.5,0).p, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  2629. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = 904440937, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2630. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2631. WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = CF(POS,Hole.Position) * ANGLES(RAD(-90), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = C3(1,0,0), SoundID = nil, SoundPitch = MRANDOM(8,11)/10, SoundVolume = 8})
  2632. for i=0, 0.3, 0.1 / Animation_Speed do
  2633. Swait()
  2634. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.5 / Animation_Speed)
  2635. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.25 / Animation_Speed)
  2636. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(15), RAD(90)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2637. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(-45), RAD(0), RAD(45)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2638. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2639. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2640. end
  2641. until KEYHOLD == false
  2642. ATTACK = false
  2643. Rooted = false
  2644. end
  2645.  
  2646. function AttackTemplate()
  2647. ATTACK = true
  2648. Rooted = false
  2649. for i=0, 1, 0.1 / Animation_Speed do
  2650. Swait()
  2651. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2652. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2653. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2654. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2655. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2656. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2657. end
  2658. ATTACK = false
  2659. Rooted = false
  2660. end
  2661. function MagicMissiles()
  2662. ATTACK = true
  2663. Rooted = false
  2664. local SELECTING = true
  2665. local SPOTS = {}
  2666. coroutine.resume(coroutine.create(function()
  2667. local LOOP = 0
  2668. repeat
  2669. LOOP = LOOP + 1
  2670. Swait()
  2671. if LOOP >= 15 then
  2672. LOOP = 0
  2673. for i = 1, #SPOTS do
  2674. if SPOTS[i] ~= nil then
  2675. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(192,192,192), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2676. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(192,192,192), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2677. end
  2678. end
  2679. end
  2680. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  2681. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2682. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2683. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2684. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2685. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2686. until SELECTING == false
  2687. Rooted = false
  2688. repeat
  2689. LOOP = LOOP + 1
  2690. Swait()
  2691. if LOOP >= 15 then
  2692. LOOP = 0
  2693. for i = 1, #SPOTS do
  2694. if SPOTS[i] ~= nil then
  2695. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(8,2,8), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2696. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,3,6), Transparency = 0, Transparency2 = 1, CFrame = SPOTS[i], MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2697. end
  2698. end
  2699. end
  2700. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  2701. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
  2702. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2703. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2704. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2705. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2706. until ATTACK == false
  2707. end))
  2708. repeat
  2709. repeat Swait() until HOLD == true
  2710. local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
  2711. if DIST > 9999 then
  2712. DIST = 9999
  2713. end
  2714. local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)
  2715. local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
  2716. if HITFLOOR ~= nil then
  2717. table.insert(SPOTS,CF(HITPOS,HITPOS+NORMAL) * ANGLES(RAD(90), RAD(0), RAD(0)))
  2718. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(6,2,6), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 90655239, SoundPitch = 1, SoundVolume = 6})
  2719. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(4,3,4), Transparency = 0, Transparency2 = 1, CFrame = RightArm.CFrame*CF(0,-1.2,0) * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2720. end
  2721. repeat Swait() until HOLD == false
  2722. until #SPOTS == 5
  2723. SELECTING = false
  2724. for i = 1, #SPOTS do
  2725. if SPOTS[i] ~= nil then
  2726. local POS = SPOTS[i]
  2727. coroutine.resume(coroutine.create(function()
  2728. local MISSILE = IT("Model",Effects)
  2729. MISSILE.Name = "Missile"
  2730. local BASEPART = CreatePart(3, MISSILE, "Neon", 0, 1, "Bright red", "Part", VT(2,2,2))
  2731. MakeForm(BASEPART,"Cyl")
  2732. MISSILE.PrimaryPart = BASEPART
  2733. BASEPART.CFrame = POS*CF(0,-30*3,0)
  2734. local HEAD = CreatePart(3, MISSILE, "Neon", 0, 1, "Bright red", "Part", VT(2,4,2))
  2735. MakeForm(HEAD,"Ball")
  2736. HEAD.CFrame = BASEPART.CFrame*CF(0,1,0)
  2737. local TAIL = CreatePart(3, MISSILE, "Neon", 0, 1, "Bright red", "Part", VT(2.5,0.1,2.5))
  2738. MakeForm(TAIL,"Cyl")
  2739. TAIL.CFrame = BASEPART.CFrame*CF(0,-1,0)
  2740. for i = 1, 15 do
  2741. Swait()
  2742. for _, c in pairs(MISSILE:GetChildren()) do
  2743. if c.ClassName == "Part" then
  2744. c.Transparency = c.Transparency - 1/10
  2745. end
  2746. end
  2747. end
  2748. for i = 1, 15*1.5 do
  2749. Swait()
  2750. MISSILE:SetPrimaryPartCFrame(BASEPART.CFrame*CF(0,1.35*3,0))
  2751. end
  2752. ApplyAoE(BASEPART.CFrame.p,20,35,45,75,false)
  2753. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(75,1,75), Transparency = 0.5, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 1.2, SoundVolume = 4})
  2754. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = BASEPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 165970126, SoundPitch = MRANDOM(13,15)/10, SoundVolume = 4})
  2755. WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(22,2,22), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2756. WACKYEFFECT({Time = 45, EffectType = "Wave", Size = VT(0,0,0)*SIZE, Size2 = VT(20,3,20), Transparency = 0, Transparency2 = 1, CFrame = POS * ANGLES(RAD(180), RAD(0), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2757. MISSILE:remove()
  2758. end))
  2759. end
  2760. end
  2761. wait(0.6)
  2762. ATTACK = false
  2763. Rooted = false
  2764. end
  2765.  
  2766. function TimesUp()
  2767. CLOCKTARGET = nil
  2768. if Mouse.Target.Parent ~= Character and Mouse.Target.Parent.Parent ~= Character and Mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  2769. local HUM = Mouse.Target.Parent:FindFirstChildOfClass("Humanoid")
  2770. local TORSO = HUM.Parent:FindFirstChild("Torso") or HUM.Parent:FindFirstChild("UpperTorso")
  2771. if TORSO then
  2772. ATTACK = true
  2773. Rooted = false
  2774. coroutine.resume(coroutine.create(function()
  2775. repeat
  2776. Swait()
  2777. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  2778. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2779. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.5*SIZE, -0.2*SIZE) * ANGLES(RAD(75), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2780. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2781. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2782. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2783. until ATTACK == false
  2784. end))
  2785. if Effects:FindFirstChild("NeonDoll") then
  2786. repeat Swait() until Effects:FindFirstChild("NeonDoll") == nil
  2787. end
  2788. wait(0.5)
  2789. local FAKECHARACTER = IT("Model",Effects)
  2790. FAKECHARACTER.Name = "NeonDoll"
  2791. local TORS = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.3,0.3,0.15),false)
  2792. CreateWeldOrSnapOrMotor("Weld", RING, RING, TORS, CF(0,0.6,0), CF(0,0,0))
  2793. local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.15,0.3,0.15),false)
  2794. CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0,0.15,0))
  2795. local LEG = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.15,0.3,0.15),false)
  2796. CreateWeldOrSnapOrMotor("Weld", TORS, TORS, LEG, CF(-0.15/2,-0.15,0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0,0.15,0))
  2797. local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.15,0.3,0.15),false)
  2798. CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0,0.15,0))
  2799. local ARM = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.15,0.3,0.15),false)
  2800. CreateWeldOrSnapOrMotor("Weld", TORS, TORS, ARM, CF(-0.15,0.15/2,0) * ANGLES(RAD(0), RAD(0), RAD(-90)), CF(0,0.15,0))
  2801. local HEAD = CreatePart(3, FAKECHARACTER, "Neon", 0, 1, "Mid grey", "Part", VT(0.15,0.15,0.15),false)
  2802. CreateWeldOrSnapOrMotor("Weld", TORS, TORS, HEAD, CF(0,0.225,0), CF(0,0,0))
  2803. CreateSound(201858045, TORS, 5, 0.4, false)
  2804. for i = 1, 50 do
  2805. Swait()
  2806. CLOCKSPEED = 2.5
  2807. for _, c in pairs(FAKECHARACTER:GetChildren()) do
  2808. if c.ClassName == "Part" then
  2809. c.Transparency = c.Transparency - 0.5/150
  2810. end
  2811. end
  2812. end
  2813. CLOCKTARGET = HUM
  2814. coroutine.resume(coroutine.create(function()
  2815. repeat Swait() CLOCKSPEED = 2 until CLOCKTARGET == nil
  2816. for i = 1, 25 do
  2817. Swait()
  2818. for _, c in pairs(FAKECHARACTER:GetChildren()) do
  2819. if c.ClassName == "Part" then
  2820. c.Transparency = c.Transparency + 0.5/25
  2821. end
  2822. end
  2823. end
  2824. CLOCKSPEED = 2.5
  2825. FAKECHARACTER:remove()
  2826. end))
  2827. wait(0.5)
  2828. ATTACK = false
  2829. Rooted = false
  2830. end
  2831. end
  2832. end
  2833.  
  2834. function ChainPunch()
  2835. ATTACK = true
  2836. Rooted = false
  2837. local GYRO = IT("BodyGyro",RootPart)
  2838. GYRO.D = 25
  2839. GYRO.P = 2000
  2840. GYRO.MaxTorque = VT(0,40000,0)
  2841. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2842. repeat
  2843. Swait()
  2844. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  2845. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  2846. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 4 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
  2847. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(5)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2848. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2849. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2850. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2851. until HOLD == true
  2852. local POS = Mouse.Hit.p
  2853. local CHAINS = false
  2854. local CHAINLINKS = {}
  2855. local A = IT("Attachment",RightArm)
  2856. A.Position = VT(1,-1,0)*SIZE
  2857. A.Orientation = VT(-90, -89.982, 0)
  2858. local B = IT("Attachment",RightArm)
  2859. B.Position = VT(-1,-1,0)*SIZE
  2860. B.Orientation = VT(-90, 89.988, 0)
  2861. local C = IT("Attachment",RightArm)
  2862. C.Position = VT(0.5,-1.3,0)*SIZE
  2863. C.Orientation = VT(-90, -89.982, 0)
  2864. local D = IT("Attachment",RightArm)
  2865. D.Position = VT(-0.5,-1.3,0)*SIZE
  2866. D.Orientation = VT(-90, 89.988, 0)
  2867. local LIGHT = IT("Attachment",RightArm)
  2868. LIGHT.Position = VT(0,-1,0)*SIZE
  2869. local LIGHT2 = IT("PointLight",LIGHT)
  2870. LIGHT2.Range = 7
  2871. LIGHT2.Brightness = 5
  2872. LIGHT2.Color = SKILLTEXTCOLOR
  2873. for i = 1, 2 do
  2874. local TWIST = -2
  2875. local START = A
  2876. local END = B
  2877. if i == 1 then
  2878. START = B
  2879. END = A
  2880. end
  2881. local ChainLink = IT("Beam",Torso)
  2882. ChainLink.Texture = "rbxassetid://73042633"
  2883. ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
  2884. ChainLink.TextureSpeed = 1
  2885. ChainLink.Width0 = 1
  2886. ChainLink.Width1 = 1
  2887. ChainLink.TextureLength = 2.5
  2888. ChainLink.Attachment0 = START
  2889. ChainLink.Attachment1 = END
  2890. ChainLink.CurveSize0 = TWIST
  2891. ChainLink.CurveSize1 = TWIST
  2892. --ChainLink.FaceCamera = true
  2893. ChainLink.Segments = 45
  2894. ChainLink.Transparency = NumberSequence.new(1)
  2895. table.insert(CHAINLINKS,ChainLink)
  2896. end
  2897. for i = 1, 2 do
  2898. local TWIST = -1
  2899. local START = C
  2900. local END = D
  2901. if i == 1 then
  2902. START = D
  2903. END = C
  2904. end
  2905. local ChainLink = IT("Beam",Torso)
  2906. ChainLink.Texture = "rbxassetid://73042633"
  2907. ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
  2908. ChainLink.TextureSpeed = 1
  2909. ChainLink.Width0 = 1
  2910. ChainLink.Width1 = 1
  2911. ChainLink.TextureLength = 5
  2912. ChainLink.Attachment0 = START
  2913. ChainLink.Attachment1 = END
  2914. ChainLink.CurveSize0 = TWIST
  2915. ChainLink.CurveSize1 = TWIST
  2916. --ChainLink.FaceCamera = true
  2917. ChainLink.Segments = 25
  2918. ChainLink.LightEmission = 0.5
  2919. ChainLink.Transparency = NumberSequence.new(1)
  2920. table.insert(CHAINLINKS,ChainLink)
  2921. end
  2922. coroutine.resume(coroutine.create(function()
  2923. repeat
  2924. Swait()
  2925. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-45)), 1 / Animation_Speed)
  2926. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(45)), 0.15 / Animation_Speed)
  2927. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0.2*SIZE) * ANGLES(RAD(60), RAD(0), RAD(-25)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2928. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2929. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2930. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2931. until CHAINS == true
  2932. repeat
  2933. Swait()
  2934. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 1 / Animation_Speed)
  2935. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 1 / Animation_Speed)
  2936. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, -0.2*SIZE) * ANGLES(RAD(90), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2937. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2938. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2939. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 1 / Animation_Speed)
  2940. until ATTACK == false
  2941. for e = 1, 15 do
  2942. Swait()
  2943. for i = 1, #CHAINLINKS do
  2944. CHAINLINKS[i].Transparency = NumberSequence.new((e/15))
  2945. end
  2946. end
  2947. A:remove()
  2948. B:remove()
  2949. C:remove()
  2950. D:remove()
  2951. end))
  2952. CreateSound(233856115, RightArm, 5, 1.2, false)
  2953. for e = 1, 15 do
  2954. Swait()
  2955. for i = 1, #CHAINLINKS do
  2956. CHAINLINKS[i].Transparency = NumberSequence.new(1-(e/15))
  2957. end
  2958. end
  2959. CHAINS = true
  2960. Rooted = false
  2961. wait(0.25)
  2962. local FIST = CreatePart(3, Effects, "Neon", 0, 0.5, "Mid grey", "Part", VT(2,2,2))
  2963. FIST.Color = C3(1, 215/255, 1)
  2964. FIST.CFrame = CF(RightArm.CFrame*CF(0,-1.3*SIZE,0).p,POS) * ANGLES(RAD(90), RAD(0), RAD(0))
  2965. local LIGHT3 = IT("PointLight",FIST)
  2966. LIGHT3.Range = 7
  2967. LIGHT3.Brightness = 5
  2968. LIGHT3.Color = SKILLTEXTCOLOR
  2969. CreateMesh("SpecialMesh", FIST, "FileMesh", "90718752", "", VT(10,10,10), VT(0,0,0))
  2970. local FISTA = IT("Attachment",FIST)
  2971. FISTA.Position = VT(0.062, 0.977, 0)
  2972. local ChainLink = IT("Beam",Torso)
  2973. ChainLink.Texture = "rbxassetid://73042633"
  2974. ChainLink.Color = ColorSequence.new(SKILLTEXTCOLOR)
  2975. ChainLink.TextureSpeed = 0
  2976. ChainLink.Width0 = 3
  2977. ChainLink.Width1 = 3
  2978. ChainLink.TextureLength = 12
  2979. ChainLink.Attachment0 = LIGHT
  2980. ChainLink.Attachment1 = FISTA
  2981. ChainLink.FaceCamera = true
  2982. ChainLink.Segments = 45
  2983. ChainLink.LightEmission = 0.5
  2984. ChainLink.Transparency = NumberSequence.new(0.25)
  2985. local FISTSOUND = CreateSound(288641686, FIST, 5, 1.2, false)
  2986. for i = 1, 85 do
  2987. Swait()
  2988. FIST.CFrame = FIST.CFrame*CF(0,-2,0)
  2989. ChainLink.TextureLength = 12+(i*2)
  2990. ApplyAoE(FIST.Position,10,15,25,100,false)
  2991. WACKYEFFECT({Time = 5, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame*CF(0,-1,0) * ANGLES(RAD(0), RAD(i*15), RAD(0)), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  2992. local HITFLOOR = Raycast(FIST.Position, (CF(FIST.Position, FIST.CFrame*CF(0,-1,0).p)).lookVector, 2.1, Character)
  2993. if HITFLOOR ~= nil then
  2994. HITFLOOR:BreakJoints()
  2995. coroutine.resume(coroutine.create(function()
  2996. for i = 1, 15 do
  2997. Swait()
  2998. FISTSOUND.Volume = FISTSOUND.Volume - 0.15
  2999. ApplyAoE(FIST.Position,10+(i*2),5,15,5,false)
  3000. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIST.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  3001. end
  3002. end))
  3003. break
  3004. end
  3005. end
  3006. coroutine.resume(coroutine.create(function()
  3007. for i = 1, 50 do
  3008. Swait()
  3009. FIST.Transparency = FIST.Transparency + 0.5/50
  3010. LIGHT3.Range = LIGHT3.Range - 7/50
  3011. end
  3012. FIST:remove()
  3013. end))
  3014. LIGHT:remove()
  3015. GYRO:remove()
  3016. ATTACK = false
  3017. Rooted = false
  3018. end
  3019.  
  3020. function WarpMeteor()
  3021. local DIST = (RootPart.Position - Mouse.Hit.p).Magnitude
  3022. if DIST > 9999 then
  3023. DIST = 9999
  3024. end
  3025. local RAY,RAYPOS = Raycast(RootPart.Position, (CF(RootPart.Position, Mouse.Hit.p)).lookVector, DIST, workspace)
  3026. local HITFLOOR,HITPOS,NORMAL = Raycast(RAYPOS+VT(0,45,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 75*SIZE, Character)
  3027. if HITFLOOR then
  3028. local POS = HITPOS
  3029. ATTACK = true
  3030. Rooted = false
  3031. local WARPED = false
  3032. local SMASHED = false
  3033. local HITFLOOR,HITPOS,NORMAL = Raycast(RootPart.Position+VT(0,1,0), (CF(RAYPOS, RAYPOS + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
  3034. coroutine.resume(coroutine.create(function()
  3035. repeat
  3036. Swait()
  3037. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3038. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3039. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3040. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3041. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3042. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3043. until WARPED == true
  3044. repeat
  3045. Swait()
  3046. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3047. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3048. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3049. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3050. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -0.5*SIZE + 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.5*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3051. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.1*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3052. until SMASHED == true
  3053. repeat
  3054. Swait()
  3055. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(90), RAD(0), RAD(0)), 1 / Animation_Speed)
  3056. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-40), RAD(0), RAD(0)), 1 / Animation_Speed)
  3057. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(-15), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3058. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(170), RAD(15), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3059. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
  3060. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-75), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / Animation_Speed)
  3061. until ATTACK == false
  3062. end))
  3063. VALUE1 = true
  3064. CreateSound(233856115, Torso, 5, 1.6, false)
  3065. for i = 1, 25 do
  3066. Swait()
  3067. for _, c in pairs(Character:GetChildren()) do
  3068. if c.ClassName == "Part" then
  3069. c.Transparency = c.Transparency + 1/25
  3070. end
  3071. end
  3072. for _, c in pairs(Weapon:GetChildren()) do
  3073. if c.ClassName == "Part" then
  3074. c.Transparency = c.Transparency + 1/25
  3075. end
  3076. end
  3077. end
  3078. UNANCHOR = false
  3079. RootPart.Anchored = true
  3080. RootPart.Velocity = VT(0,0,0)
  3081. local ROOTPOS = RootPart.Position
  3082. RootPart.CFrame = CF(POS+VT(0,300,0),VT(ROOTPOS.X,POS.Y+300,ROOTPOS.Z))
  3083. WARPED = true
  3084. for i = 1, 25 do
  3085. Swait()
  3086. for _, c in pairs(Character:GetChildren()) do
  3087. if c.ClassName == "Part" then
  3088. c.Transparency = c.Transparency - 1/25
  3089. end
  3090. end
  3091. for _, c in pairs(Weapon:GetChildren()) do
  3092. if c.ClassName == "Part" then
  3093. c.Transparency = c.Transparency - 1/25
  3094. end
  3095. end
  3096. end
  3097. local SHELL = CreatePart(3, Effects, "Neon", 0, 1, "Mid grey", "Part", VT(0,0,0))
  3098. SHELL.CFrame = RootPart.CFrame
  3099. MakeForm(SHELL,"Ball")
  3100. CreateSound(402981977, SHELL, 5, 1.6, false)
  3101. for i = 1, 10 do
  3102. Swait()
  3103. SHELL.Transparency = SHELL.Transparency - 1/10
  3104. SHELL.Size = SHELL.Size + VT(0.6,0.6,0.6)*1.8
  3105. end
  3106. for i = 1, math.ceil(75/2) do
  3107. Swait()
  3108. RootPart.CFrame = RootPart.CFrame*CF(0,-3.5*2,0)
  3109. SHELL.CFrame = CF(RootPart.Position)
  3110. WACKYEFFECT({Time = 5, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(5,3,5), Transparency = 0.5, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = SHELL.Position+VT(0,15,0), RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
  3111. end
  3112. RootPart.CFrame = CF(POS+VT(0,1,0),VT(ROOTPOS.X,HITPOS.Y+1,ROOTPOS.Z))
  3113. SHELL.CFrame = CF(RootPart.Position)
  3114. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = SHELL.Size, Size2 = VT(35,35,35)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
  3115. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*3.8, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
  3116. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(SHELL.Size.X,5,SHELL.Size.Z), Size2 = VT(45,3,45)*4, Transparency = 0, Transparency2 = 1, CFrame = SHELL.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = SHELL.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
  3117. for i = 1, 5 do
  3118. WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*4, Transparency = 0.5, Transparency2 = 1, CFrame = RootPart.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  3119. end
  3120. SHELL:remove()
  3121. ApplyAoE(RootPart.Position,75,35,75,175,false)
  3122. SMASHED = true
  3123. wait(1)
  3124. VALUE1 = false
  3125. UNANCHOR = true
  3126. ATTACK = false
  3127. Rooted = false
  3128. end
  3129. end
  3130.  
  3131. function PandorasBox()
  3132. local HITFLOOR,HITPOS = Raycast(RootPart.CFrame*CF(0,0,-6.5).p, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
  3133. if HITFLOOR ~= nil then
  3134. ATTACK = false
  3135. Rooted = false
  3136. local RINGSPIN = true
  3137. local CONSTRUCTING = true
  3138. local RING = CreatePart(3, Effects, "Neon", 0, 1, "Alder", "Ring", VT(0,0,0))
  3139. RING.Color = C3(5,6,0)
  3140. MakeForm(RING,"Cyl")
  3141. RING.CFrame = CF(HITPOS)
  3142. CreateSound(402981977, RING, 5, 1.2, false)
  3143. coroutine.resume(coroutine.create(function()
  3144. repeat
  3145. Swait()
  3146. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3147. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3148. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3149. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35*SIZE, 0.65*SIZE, 0*SIZE) * ANGLES(RAD(115), RAD(45), RAD(35)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3150. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3151. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3152. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3153. until CONSTRUCTING == false
  3154. repeat
  3155. Swait()
  3156. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3157. until RINGSPIN == false
  3158. for i = 1, 25 do
  3159. Swait()
  3160. RING.CFrame = RING.CFrame * ANGLES(RAD(0), RAD(5), RAD(0))
  3161. RING.Size = RING.Size - VT(0.15,0,0.15)
  3162. --DECAL.Transparency = DECAL.Transparency + 1/25
  3163. RING.Transparency = RING.Transparency + 1/25
  3164. end
  3165. RING:remove()
  3166. end))
  3167. for i = 1, 15 do
  3168. Swait()
  3169. RING.Size = RING.Size + VT(0.75,0,0.75)
  3170. RING.Transparency = RING.Transparency - 1/15
  3171. end
  3172. local BOXSPIN = true
  3173. local PANDORASBOX = IT("Model",Effects)
  3174. PANDORASBOX.Name = "Box of wonders"
  3175. local BOX = IT("Model",PANDORASBOX)
  3176. BOX.Name = "Body"
  3177. local LID = IT("Model",PANDORASBOX)
  3178. LID.Name = "Lid"
  3179. --BUILDING THE BOX--
  3180. local BASE = CreatePart(3, BOX, "Neon", 0, 0, "Alder", "Black", VT(2,1.8,2))
  3181. BASE.Color = C3(0,0,0)
  3182. PANDORASBOX.PrimaryPart = BASE
  3183. BASE.CFrame = CF(HITPOS+VT(0,-8,0),VT(RootPart.Position.X,HITPOS.Y-8,RootPart.Position.Z))
  3184. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
  3185. WOOD.CFrame = BASE.CFrame*CF(1,0,1)
  3186. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
  3187. WOOD.CFrame = BASE.CFrame*CF(1,0,-1)
  3188. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
  3189. WOOD.CFrame = BASE.CFrame*CF(-1,0,1)
  3190. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,1.9,0.2))
  3191. WOOD.CFrame = BASE.CFrame*CF(-1,0,-1)
  3192. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3193. WOOD.CFrame = BASE.CFrame*CF(0,0.9,1)
  3194. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3195. WOOD.CFrame = BASE.CFrame*CF(0,0.9,-1)
  3196. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3197. WOOD.CFrame = BASE.CFrame*CF(1,0.9,0)
  3198. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3199. WOOD.CFrame = BASE.CFrame*CF(-1,0.9,0)
  3200. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3201. WOOD.CFrame = BASE.CFrame*CF(0,-0.9,1)
  3202. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3203. WOOD.CFrame = BASE.CFrame*CF(0,-0.9,-1)
  3204. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3205. WOOD.CFrame = BASE.CFrame*CF(1,-0.9,0)
  3206. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3207. WOOD.CFrame = BASE.CFrame*CF(-1,-0.9,0)
  3208. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
  3209. WOOD.CFrame = BASE.CFrame*CF(0,0,1)
  3210. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,1.9,0.1))
  3211. WOOD.CFrame = BASE.CFrame*CF(0,0,-1)
  3212. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
  3213. WOOD.CFrame = BASE.CFrame*CF(1,0,0)
  3214. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(0.1,1.9,2.1))
  3215. WOOD.CFrame = BASE.CFrame*CF(-1,0,0)
  3216. local WOOD = CreatePart(3, BOX, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
  3217. WOOD.CFrame = BASE.CFrame*CF(0,-0.9,0)
  3218. -------------
  3219. local LIDPART = CreatePart(3, LID, "Marble", 0, 0, "Daisy orange", "Marble", VT(2.1,0.1,2.1))
  3220. LIDPART.CFrame = BASE.CFrame*CF(0,1,0)
  3221. LID.PrimaryPart = LIDPART
  3222. local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3223. WOOD.CFrame = LIDPART.CFrame*CF(0,0,-1)
  3224. local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(2.1,0.2,0.2))
  3225. WOOD.CFrame = LIDPART.CFrame*CF(0,0,1)
  3226. local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3227. WOOD.CFrame = LIDPART.CFrame*CF(1,0,0)
  3228. local WOOD = CreatePart(3, LID, "Marble", 0, 0, "Bright yellow", "Marble", VT(0.2,0.2,2.1))
  3229. WOOD.CFrame = LIDPART.CFrame*CF(-1,0,0)
  3230. local DECAL = IT("Decal",LIDPART)
  3231. DECAL.Face = "Top"
  3232. DECAL.Texture = "http://www.roblox.com/asset/?id=1501226061"
  3233. DECAL.Color3 = C3(5,6,0)
  3234. --BUILDING THE BOX--
  3235. coroutine.resume(coroutine.create(function()
  3236. repeat
  3237. Swait()
  3238. PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * ANGLES(RAD(0), RAD(2.45), RAD(0)))
  3239. until BOXSPIN == false
  3240. end))
  3241. for i = 1, 25 do
  3242. Swait()
  3243. PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,1.5-(i/12.5),0))
  3244. end
  3245. wait(0.5)
  3246. BOXSPIN = false
  3247. CONSTRUCTING = false
  3248. coroutine.resume(coroutine.create(function()
  3249. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = LIDPART.Size, Size2 = VT(3,0,3)*4, Transparency = 0, Transparency2 = 1, CFrame = LIDPART.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 168586586, SoundPitch = 1.3, SoundVolume = 6})
  3250. --[[for i = 1, 45 do
  3251. Swait()
  3252. LID:SetPrimaryPartCFrame(LIDPART.CFrame * CF(0,1.5-(i/12.5),0.5) * ANGLES(RAD(0.7), RAD(0), RAD(0)))
  3253. end-
  3254. LID:remove()]]--
  3255. for _, c in pairs(LID:GetChildren()) do
  3256. if c.ClassName == "Part" then
  3257. c.Anchored = false
  3258. c.CanCollide = true
  3259. if c ~= LIDPART then
  3260. weldBetween(LIDPART,c)
  3261. end
  3262. end
  3263. end
  3264. LIDPART.Velocity = CF(LIDPART.Position,LIDPART.CFrame*CF(15,25,0).p).lookVector*65
  3265. Debris:AddItem(LID,15)
  3266. wait(0.5)
  3267. local RANDOMEFFECT = MRANDOM(1,4)
  3268. if RANDOMEFFECT == 1 then
  3269. for i = 1, 45 do
  3270. wait((2-(i/15))/15)
  3271. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(1,1,1), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,MRANDOM(12,15),0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))*CF(0,0,MRANDOM(1,5)), MoveToPos = BASE.Position, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = nil, SoundPitch = 0.8, SoundVolume = 6})
  3272. end
  3273. wait(1)
  3274. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(35,35,35)*12, Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 165970126, SoundPitch = 0.75, SoundVolume = 6})
  3275. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*10, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 469345336, SoundPitch = 0.75, SoundVolume = 6})
  3276. WACKYEFFECT({Time = 55, EffectType = "Wave", Size = VT(0,0,0), Size2 = VT(45,3,45)*9, Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 5, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 0.75, SoundVolume = 6})
  3277. for i = 1, 5 do
  3278. WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35)*12, Transparency = 0.5, Transparency2 = 1, CFrame = BASE.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  3279. end
  3280. ApplyAoE(BASE.Position,50,1,200,375,false)
  3281. ApplyAoE(BASE.Position,250,35,75,175,false)
  3282. elseif RANDOMEFFECT == 2 then
  3283. local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
  3284. FIELD.CFrame = BASE.CFrame
  3285. MakeForm(FIELD,"Ball")
  3286. for i = 1, 50 do
  3287. Swait()
  3288. FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
  3289. FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
  3290. end
  3291. wait(0.2)
  3292. local LOOP = CreateSound(1393698948, FIELD, 0, 1.2, true)
  3293. coroutine.resume(coroutine.create(function()
  3294. for i = 1, 75 do
  3295. Swait()
  3296. LOOP.Volume = LOOP.Volume + 10/75
  3297. LOOP.Parent = FIELD
  3298. local CHILDREN = workspace:GetDescendants()
  3299. for index, CHILD in pairs(CHILDREN) do
  3300. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3301. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3302. if HUM then
  3303. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3304. if TORSO then
  3305. if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
  3306. HUM.Health = HUM.Health - 0.1
  3307. TORSO.Velocity = VT(0,5,0)
  3308. HUM.PlatformStand = true
  3309. if TORSO.RotVelocity.Magnitude < 15 then
  3310. TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
  3311. end
  3312. end
  3313. end
  3314. end
  3315. end
  3316. end
  3317. FIELD.Size = FIELD.Size + VT(3,3,3)
  3318. FIELD.Transparency = FIELD.Transparency + 0.8/75
  3319. end
  3320. for i = 1, 500 do
  3321. Swait()
  3322. LOOP.Parent = FIELD
  3323. local CHILDREN = workspace:GetDescendants()
  3324. for index, CHILD in pairs(CHILDREN) do
  3325. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3326. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3327. if HUM then
  3328. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3329. if TORSO then
  3330. if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/2 then
  3331. TORSO.Velocity = VT(0,5,0)
  3332. HUM.Health = HUM.Health - 0.1
  3333. HUM.PlatformStand = true
  3334. if TORSO.RotVelocity.Magnitude < 15 then
  3335. TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
  3336. end
  3337. end
  3338. end
  3339. end
  3340. end
  3341. end
  3342. end
  3343. for i = 1, 25 do
  3344. Swait()
  3345. LOOP.Volume = LOOP.Volume + 10/25
  3346. LOOP.Parent = FIELD
  3347. local CHILDREN = workspace:GetDescendants()
  3348. for index, CHILD in pairs(CHILDREN) do
  3349. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3350. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3351. if HUM then
  3352. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3353. if TORSO then
  3354. if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X/1.8 then
  3355. TORSO.Velocity = VT(0,5,0)
  3356. HUM.Health = HUM.Health - 0.1
  3357. HUM.PlatformStand = false
  3358. if TORSO.RotVelocity.Magnitude < 15 then
  3359. TORSO.RotVelocity = VT(MRANDOM(-45,45),MRANDOM(-45,45),MRANDOM(-45,45))
  3360. end
  3361. end
  3362. end
  3363. end
  3364. end
  3365. end
  3366. FIELD.Size = FIELD.Size - VT(3,3,3)
  3367. FIELD.Transparency = FIELD.Transparency + 0.2/25
  3368. end
  3369. FIELD:remove()
  3370. end))
  3371. elseif RANDOMEFFECT == 3 then
  3372. for i = 1, 10 do
  3373. wait(0.15)
  3374. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0,0,0), Size2 = VT(3,8,3), Transparency = 0, Transparency2 = 1, CFrame = BASE.CFrame*CF(0,0.3,0), MoveToPos = BASE.Position+VT(0,6,0), RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = 90655239, SoundPitch = 0.8, SoundVolume = 6})
  3375. coroutine.resume(coroutine.create(function()
  3376. local MINION = CLONE:Clone()
  3377. MINION.Parent = Effects
  3378. MINION.Name = "Shadow"
  3379. MINION.HumanoidRootPart.CFrame = BASE.CFrame*CF(0,5,0) * ANGLES(RAD(0), RAD(MRANDOM(0,360)), RAD(0))
  3380. MINION.HumanoidRootPart.Velocity = CF(MINION.HumanoidRootPart.Position,MINION.HumanoidRootPart.CFrame*CF(0,8,-15).p).lookVector*MRANDOM(55,100)
  3381. for _, c in pairs(MINION:GetChildren()) do
  3382. if c.ClassName == "Part" then
  3383. c.Material = "Neon"
  3384. c.Color = C3(0,0,0)
  3385. c.Transparency = 0.25
  3386. if c.Name == "Head" then
  3387. c:ClearAllChildren()
  3388. local MSH = IT("BlockMesh",c)
  3389. MSH.Scale = VT(0.5,1,1)
  3390. end
  3391. end
  3392. end
  3393. local TORSO = MINION.Torso
  3394. local HUMAN = MINION.Humanoid
  3395. HUMAN.WalkSpeed = 100
  3396. HUMAN.MaxHealth = math.huge
  3397. HUMAN.Health = math.huge
  3398. HUMAN.DisplayDistanceType = "None"
  3399. HUMAN.Died:connect(function()
  3400. MINION:remove()
  3401. --CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 3, 0.5, false)
  3402. end)
  3403. wait(1)
  3404. local findNearestTorso = function(POS)
  3405. local list = game.Workspace:GetDescendants()
  3406. local torso = nil
  3407. local dist = 9999
  3408. local temp = nil
  3409. local human = nil
  3410. local temp2 = nil
  3411. for x = 1, #list do
  3412. temp2 = list[x]
  3413. if (temp2.className == "Model") and (temp2 ~= Character) and (temp2.Parent ~= Effects) then
  3414. temp = temp2:findFirstChild("Torso") or temp2:findFirstChild("UpperTorso")
  3415. human = temp2:findFirstChildOfClass("Humanoid")
  3416. if (temp ~= nil) and (human ~= nil) and (human.Health > 0) then
  3417. if (temp.Position - POS).magnitude < dist then
  3418. torso = temp
  3419. dist = (temp.Position - POS).magnitude
  3420. end
  3421. end
  3422. end
  3423. end
  3424. return torso, dist
  3425. end
  3426. for i = 1, 40 do
  3427. if HUMAN.Health == 0 then
  3428. break
  3429. end
  3430. wait(0.3)
  3431. local target,dist= findNearestTorso(TORSO.Position)
  3432. if target then
  3433. HUMAN:MoveTo(target.Position)
  3434. if dist < 999 then
  3435. CreateSound(348663022, TORSO, 10, 1, true)
  3436. wait(0.5)
  3437. --local ANIM = HUMAN:LoadAnimation(ATANIM)
  3438. --ANIM:Play()
  3439. --CreateSound(SHOUTS[MRANDOM(1,3)], TORSO, 1, 1, false)
  3440. ApplyAoE(TORSO.Position,10,0,0,85,false)
  3441. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(5,5,5), Size2 = VT(25,25,25), Transparency = 0, Transparency2 = 1, CFrame = TORSO.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = SKILLTEXTCOLOR, SoundID = 201858087, SoundPitch = 0.8, SoundVolume = 10})
  3442. for i = 1, 5 do
  3443. WACKYEFFECT({Time = 75, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(15,1,15), Transparency = 0.5, Transparency2 = 1, CFrame = TORSO.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = MRANDOM(-15,15)/7.5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  3444. end
  3445. break
  3446. end
  3447. end
  3448. end
  3449. MINION:remove()
  3450. end))
  3451. end
  3452. elseif RANDOMEFFECT == 4 then
  3453. local FIELD = CreatePart(3, Effects, "Neon", 0, 0, "Alder", "Field", VT(0.3,0.3,0.3))
  3454. FIELD.Color = C3(0,0,0)
  3455. FIELD.CFrame = BASE.CFrame
  3456. MakeForm(FIELD,"Ball")
  3457. FIELD.CanCollide = true
  3458. for i = 1, 50 do
  3459. Swait()
  3460. FIELD.Size = FIELD.Size + VT(0.01,0.01,0.01)
  3461. FIELD.CFrame = FIELD.CFrame * CF(0,0.75-(i/45),0)
  3462. end
  3463. wait(0.2)
  3464. local LOOP = CreateSound(487214658, FIELD, 0, 1, true)
  3465. coroutine.resume(coroutine.create(function()
  3466. local E = 0
  3467. for i = 1, 75 do
  3468. E = E + 1
  3469. Swait()
  3470. if E >= 35 then
  3471. E = 0
  3472. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
  3473. end
  3474. LOOP.Volume = LOOP.Volume + 10/75
  3475. LOOP.Parent = FIELD
  3476. local CHILDREN = workspace:GetDescendants()
  3477. for index, CHILD in pairs(CHILDREN) do
  3478. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3479. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3480. if HUM then
  3481. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3482. if TORSO then
  3483. if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
  3484. for _, c in pairs(CHILD:GetChildren()) do
  3485. if c:IsA("BasePart") then
  3486. local bv = Instance.new("BodyVelocity")
  3487. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  3488. bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
  3489. bv.Parent = c
  3490. Debris:AddItem(bv,0.05)
  3491. end
  3492. end
  3493. HUM.Health = HUM.Health - 0.3
  3494. end
  3495. end
  3496. end
  3497. end
  3498. end
  3499. FIELD.Size = FIELD.Size + VT(0.3,0.3,0.3)/5
  3500. end
  3501. for i = 1, 180 do
  3502. E = E + 1
  3503. Swait()
  3504. if E >= 35 then
  3505. E = 0
  3506. WACKYEFFECT({Time = 25, EffectType = "Sphere", Size = FIELD.Size*30, Size2 = FIELD.Size, Transparency = 0.8, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = nil, SoundPitch = 1, SoundVolume = 6})
  3507. end
  3508. LOOP.Parent = FIELD
  3509. local CHILDREN = workspace:GetDescendants()
  3510. for index, CHILD in pairs(CHILDREN) do
  3511. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  3512. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  3513. if HUM then
  3514. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  3515. if TORSO then
  3516. if (TORSO.Position - FIELD.Position).Magnitude <= FIELD.Size.X*30 then
  3517. for _, c in pairs(CHILD:GetChildren()) do
  3518. if c:IsA("BasePart") then
  3519. local bv = Instance.new("BodyVelocity")
  3520. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  3521. bv.velocity = CF(FIELD.Position,c.Position).lookVector*-50
  3522. bv.Parent = c
  3523. Debris:AddItem(bv,0.05)
  3524. end
  3525. end
  3526. HUM.Health = HUM.Health - 0.3
  3527. end
  3528. end
  3529. end
  3530. end
  3531. end
  3532. end
  3533. ApplyAoE(FIELD.Position,40,15,20,375,false)
  3534. WACKYEFFECT({Time = 45, EffectType = "Sphere", Size = FIELD.Size, Size2 = VT(35,35,35), Transparency = 0, Transparency2 = 1, CFrame = FIELD.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = BASE.Color, SoundID = 231917744, SoundPitch = 1, SoundVolume = 6})
  3535. for i = 1, 5 do
  3536. WACKYEFFECT({Time = 35, EffectType = "Wave", Size = VT(5,0,5)*SIZE, Size2 = VT(35,3,35), Transparency = 0.5, Transparency2 = 1, CFrame = FIELD.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360))), MoveToPos = nil, RotationX = 0, RotationY = -5, RotationZ = 0, Material = "Neon", Color = C3(0,0,0), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  3537. end
  3538. FIELD:remove()
  3539. end))
  3540. elseif RANDOMEFFECT == 5 then
  3541. end
  3542. wait(0.5)
  3543. for i = 1, 25 do
  3544. Swait()
  3545. PANDORASBOX:SetPrimaryPartCFrame(BASE.CFrame * CF(0,-0.3,0))
  3546. end
  3547. PANDORASBOX:remove()
  3548. RINGSPIN = false
  3549. end))
  3550. ATTACK = false
  3551. Rooted = false
  3552. end
  3553. end
  3554.  
  3555. function Taunt()
  3556. ATTACK = true
  3557. local LAUGH = nil
  3558. coroutine.resume(coroutine.create(function()
  3559. repeat
  3560. Swait()
  3561. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3562. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
  3563. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE, -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3564. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3565. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3566. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3567. until LAUGH ~= nil
  3568. repeat
  3569. Swait()
  3570. LAUGH.Parent = Head
  3571. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0+(0.1*LAUGH.PlaybackLoudness/75) + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3572. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE+(0.1*LAUGH.PlaybackLoudness/75)) - 1)) * ANGLES(RAD(5), RAD(0), RAD(-45)), 1 / Animation_Speed)
  3573. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.15*SIZE+(0.1*LAUGH.PlaybackLoudness/75), -0.5*SIZE) * ANGLES(RAD(170), RAD(-25), RAD(-15)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3574. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE+(0.1*LAUGH.PlaybackLoudness/75), 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3575. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3576. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE-(0.1*LAUGH.PlaybackLoudness/75) - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3577. until LAUGH.Playing == false
  3578. ATTACK = false
  3579. end))
  3580. wait(0.1)
  3581. sick:Pause()
  3582. LAUGH = CreateSound(137473066, Head, 10, 1, false)
  3583. wait(1.5)
  3584. sick:Resume()
  3585. end
  3586.  
  3587. --//=================================\\
  3588. --|| ASSIGN THINGS TO KEYS
  3589. --\\=================================//
  3590. function MouseDown(Mouse)
  3591. HOLD = true
  3592. if ATTACK == false then
  3593. end
  3594. end
  3595.  
  3596. function MouseUp(Mouse)
  3597. HOLD = false
  3598. end
  3599.  
  3600. function KeyDown(Key)
  3601. KEYHOLD = true
  3602. if Key == "z" and ATTACK == false then
  3603. MagicMissiles()
  3604. end
  3605.  
  3606. if Key == "b" and ATTACK == false then
  3607. TimesUp()
  3608. end
  3609.  
  3610. if Key == "q" and ATTACK == false then
  3611. CyberSmash()
  3612. end
  3613.  
  3614. if Key == "c" and ATTACK == false then
  3615. ChainPunch()
  3616. end
  3617.  
  3618. if Key == "v" and ATTACK == false then
  3619. WarpMeteor()
  3620. end
  3621.  
  3622. if Key == "e" and ATTACK == false then
  3623. Inferno_Ring()
  3624. end
  3625.  
  3626. if Key == "x" and ATTACK == false then
  3627. PandorasBox()
  3628. end
  3629.  
  3630. KEYHOLD = true
  3631. if Key == "f" and ATTACK == false then
  3632. Banisher_Bullet()
  3633. end
  3634.  
  3635. if Key == "t" and ATTACK == false then
  3636. Taunt()
  3637. end
  3638. end
  3639.  
  3640. function KeyUp(Key)
  3641. KEYHOLD = false
  3642. end
  3643.  
  3644. Mouse.Button1Down:connect(function(NEWKEY)
  3645. MouseDown(NEWKEY)
  3646. end)
  3647. Mouse.Button1Up:connect(function(NEWKEY)
  3648. MouseUp(NEWKEY)
  3649. end)
  3650. Mouse.KeyDown:connect(function(NEWKEY)
  3651. KeyDown(NEWKEY)
  3652. end)
  3653. Mouse.KeyUp:connect(function(NEWKEY)
  3654. KeyUp(NEWKEY)
  3655. end)
  3656.  
  3657. --//=================================\\
  3658. --\\=================================//
  3659.  
  3660.  
  3661. function unanchor()
  3662. if UNANCHOR == true then
  3663. RootPart.Anchored = false
  3664. end
  3665. g = Character:GetChildren()
  3666. for i = 1, #g do
  3667. if g[i].ClassName == "Part" and g[i] ~= RootPart then
  3668. g[i].Anchored = false
  3669. end
  3670. end
  3671. g = Weapon:GetChildren()
  3672. for i = 1, #g do
  3673. if g[i].ClassName == "Part" then
  3674. g[i].Anchored = false
  3675. end
  3676. end
  3677. end
  3678.  
  3679.  
  3680. --//=================================\\
  3681. --|| WRAP THE WHOLE SCRIPT UP
  3682. --\\=================================//
  3683.  
  3684. Humanoid.Changed:connect(function(Jump)
  3685. if Jump == "Jump" and (Disable_Jump == true) then
  3686. Humanoid.Jump = false
  3687. end
  3688. end)
  3689.  
  3690. local CONNECT = nil
  3691.  
  3692. while true do
  3693. Swait()
  3694. refit()
  3695. script.Parent = WEAPONGUI
  3696. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  3697. v:Stop();
  3698. end
  3699. ANIMATE.Parent = nil
  3700. SINE = SINE + CHANGE*1.5
  3701. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  3702. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  3703. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
  3704. local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
  3705. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  3706. 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)
  3707. 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)
  3708. RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3709. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(-25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  3710. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  3711. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  3712. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3713. RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3714. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3715. end
  3716. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  3717. ANIM = "Jump"
  3718. if ATTACK == false then
  3719. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3720. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
  3721. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3722. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3723. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
  3724. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
  3725. end
  3726. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  3727. ANIM = "Fall"
  3728. if ATTACK == false then
  3729. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  3730. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  3731. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3732. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3733. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
  3734. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
  3735. end
  3736. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  3737. ANIM = "Idle"
  3738. if ATTACK == false then
  3739. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  3740. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3741. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3742. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3743. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3744. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  3745. end
  3746. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  3747. ANIM = "Walk"
  3748. if ATTACK == false then
  3749. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
  3750. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(15 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 1/ Animation_Speed)
  3751. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  3752. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  3753. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  3754. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  3755. end
  3756. end
  3757. unanchor()
  3758. Humanoid.MaxHealth = "inf"
  3759. Humanoid.Health = "inf"
  3760. if Rooted == false then
  3761. Disable_Jump = false
  3762. Humanoid.WalkSpeed = Speed
  3763. elseif Rooted == true then
  3764. Disable_Jump = true
  3765. Humanoid.WalkSpeed = 0
  3766. end
  3767. for _, c in pairs(Character:GetChildren()) do
  3768. if c.ClassName == "Part" and c.Name ~= "Detail" then
  3769. c.Material = "Fabric"
  3770. if c:FindFirstChildOfClass("ParticleEmitter") then
  3771. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  3772. end
  3773. if c ~= Head then
  3774. c.Color = C3(1,1,1)
  3775. else
  3776. c.Color = C3(1,1,1)
  3777. end
  3778. if c == Head then
  3779. if c:FindFirstChild("face") then
  3780. c.face:remove()
  3781. end
  3782. end
  3783. elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
  3784. c:remove()
  3785. elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
  3786. c:remove()
  3787. end
  3788. end
  3789. sick.SoundId = "rbxassetid://"..SONG
  3790. sick.Looped = true
  3791. sick.Pitch = 1
  3792. sick.Volume = 5
  3793. sick.Parent = Torso
  3794. sick:Resume()
  3795. --sick.Playing = false
  3796. Humanoid.Name = "Corrupted Pandora = "..Player.Name
  3797. end
  3798.  
  3799. --//=================================\\
  3800. --\\=================================//
  3801.  
  3802.  
  3803.  
  3804.  
  3805.  
  3806. --//====================================================\\--
  3807. --|| END OF SCRIPT
  3808. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment