Advertisement
PR0J3CT11

Untitled

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