feigum777

Post Man Pat

Jun 6th, 2019
212
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --//====================================================\\--
  2. --||
  3. --|| CREATED BY SHACKLUSTER
  4. --||
  5. --|| EDITED BY POKEMONLOVER666W
  6. --||
  7. --\\====================================================//--
  8.  
  9. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  10. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  11. do
  12. print("FE Compatibility code by Mokiros")
  13. script.Parent = Player.Character
  14.  
  15. --RemoteEvent for communicating
  16. local Event = Instance.new("RemoteEvent")
  17. Event.Name = "UserInput_Event"
  18.  
  19. --Fake event to make stuff like Mouse.KeyDown work
  20. local function fakeEvent()
  21. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  22. t.connect = t.Connect
  23. return t
  24. end
  25.  
  26. --Creating fake input objects with fake variables
  27. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  28. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  29. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  30. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  31. end}
  32. --Merged 2 functions into one by checking amount of arguments
  33. CAS.UnbindAction = CAS.BindAction
  34.  
  35. --This function will trigger the events that have been :Connect()'ed
  36. local function te(self,ev,...)
  37. local t = m[ev]
  38. if t and t._fakeEvent and t.Function then
  39. t.Function(...)
  40. end
  41. end
  42. m.TrigEvent = te
  43. UIS.TrigEvent = te
  44.  
  45. Event.OnServerEvent:Connect(function(plr,io)
  46. if plr~=Player then return end
  47. if io.isMouse then
  48. m.Target = io.Target
  49. m.Hit = io.Hit
  50. else
  51. local b = io.UserInputState == Enum.UserInputState.Begin
  52. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  53. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  54. end
  55. for _,t in pairs(CAS.Actions) do
  56. for _,k in pairs(t.Keys) do
  57. if k==io.KeyCode then
  58. t.Function(t.Name,io.UserInputState,io)
  59. end
  60. end
  61. end
  62. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  63. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  64. end
  65. end)
  66. Event.Parent = NLS([==[
  67. local Player = game:GetService("Players").LocalPlayer
  68. local Event = script:WaitForChild("UserInput_Event")
  69.  
  70. local UIS = game:GetService("UserInputService")
  71. local input = function(io,a)
  72. if a then return end
  73. --Since InputObject is a client-side instance, we create and pass table instead
  74. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  75. end
  76. UIS.InputBegan:Connect(input)
  77. UIS.InputEnded:Connect(input)
  78.  
  79. local Mouse = Player:GetMouse()
  80. local h,t
  81. --Give the server mouse data 30 times every second, but only if the values changed
  82. --If player is not moving their mouse, client won't fire events
  83. while wait(1/30) do
  84. if h~=Mouse.Hit or t~=Mouse.Target then
  85. h,t=Mouse.Hit,Mouse.Target
  86. Event:FireServer({isMouse=true,Target=t,Hit=h})
  87. end
  88. end]==],Player.Character)
  89. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  90. end
  91.  
  92. wait(0.2)
  93.  
  94.  
  95.  
  96. Player = owner
  97. PlayerGui = Player.PlayerGui
  98. Cam = workspace.CurrentCamera
  99. Backpack = Player.Backpack
  100. Character = Player.Character
  101. Humanoid = Character.Humanoid
  102. RootPart = Character["HumanoidRootPart"]
  103. Torso = Character["Torso"]
  104. Head = Character["Head"]
  105. RightArm = Character["Right Arm"]
  106. LeftArm = Character["Left Arm"]
  107. RightLeg = Character["Right Leg"]
  108. LeftLeg = Character["Left Leg"]
  109. RootJoint = RootPart["RootJoint"]
  110. Neck = Torso["Neck"]
  111. RightShoulder = Torso["Right Shoulder"]
  112. LeftShoulder = Torso["Left Shoulder"]
  113. RightHip = Torso["Right Hip"]
  114. LeftHip = Torso["Left Hip"]
  115.  
  116. IT = Instance.new
  117. CF = CFrame.new
  118. VT = Vector3.new
  119. RAD = math.rad
  120. C3 = Color3.new
  121. UD2 = UDim2.new
  122. BRICKC = BrickColor.new
  123. ANGLES = CFrame.Angles
  124. EULER = CFrame.fromEulerAnglesXYZ
  125. COS = math.cos
  126. ACOS = math.acos
  127. SIN = math.sin
  128. ASIN = math.asin
  129. ABS = math.abs
  130. MRANDOM = math.random
  131. FLOOR = math.floor
  132.  
  133. local sick = Instance.new("Sound",Character)
  134. sick.SoundId = "rbxassetid://425521107"
  135. sick.Looped = true
  136. sick.Pitch = 1
  137. sick.Volume = 1
  138. sick:Play()
  139.  
  140. local top = Instance.new("Shirt")
  141. top.ShirtTemplate = "rbxassetid://676428254"
  142. top.Parent = Character
  143. top.Name = "Cloth"
  144. local bottom = Instance.new("Pants")
  145. bottom.PantsTemplate = "rbxassetid://676428351"
  146. bottom.Parent = Character
  147. bottom.Name = "Cloth"
  148.  
  149. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  150. local NEWMESH = IT(MESH)
  151. if MESH == "SpecialMesh" then
  152. NEWMESH.MeshType = MESHTYPE
  153. if MESHID ~= "nil" and MESHID ~= "" then
  154. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  155. end
  156. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  157. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  158. end
  159. end
  160. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  161. NEWMESH.Scale = SCALE
  162. NEWMESH.Parent = PARENT
  163. return NEWMESH
  164. end
  165.  
  166. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  167. local NEWPART = IT("Part")
  168. NEWPART.formFactor = FORMFACTOR
  169. NEWPART.Reflectance = REFLECTANCE
  170. NEWPART.Transparency = TRANSPARENCY
  171. NEWPART.CanCollide = false
  172. NEWPART.Locked = true
  173. if ANCHOR == true then
  174. NEWPART.Anchored = true
  175. end
  176. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  177. NEWPART.Name = NAME
  178. NEWPART.Size = SIZE
  179. NEWPART.Position = Torso.Position
  180. NEWPART.Material = MATERIAL
  181. NEWPART:BreakJoints()
  182. NEWPART.Parent = PARENT
  183. return NEWPART
  184. end
  185.  
  186.  
  187. --//=================================\\
  188. --|| CUSTOMIZATION
  189. --\\=================================//
  190.  
  191. Class_Name = "FireFist.exe"
  192. Weapon_Name = "Add-ons"
  193.  
  194. Custom_Colors = {
  195. Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  196. Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  197.  
  198. Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  199. Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  200. Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  201. Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  202. Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  203.  
  204. Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  205. Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  206. Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  207. Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  208. Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  209. }
  210.  
  211.  
  212. Player_Size = 1 --Size of the player.
  213. Animation_Speed = 3
  214. Animation_Speed2 = 0.7
  215. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  216.  
  217. local Speed = 25
  218. local Effects2 = {}
  219.  
  220. --//=================================\\
  221. --|| END OF CUSTOMIZATION
  222. --\\=================================//
  223.  
  224. local function weldBetween(a, b)
  225. local weldd = Instance.new("ManualWeld")
  226. weldd.Part0 = a
  227. weldd.Part1 = b
  228. weldd.C0 = CFrame.new()
  229. weldd.C1 = b.CFrame:inverse() * a.CFrame
  230. weldd.Parent = a
  231. return weldd
  232. end
  233.  
  234. function createaccessory(attachmentpart,mesh,texture,scale,offset,color)
  235. local acs = Instance.new("Part")
  236. acs.CanCollide = false
  237. acs.Anchored = false
  238. acs.Size = Vector3.new(0,0,0)
  239. acs.CFrame = attachmentpart.CFrame
  240. acs.Parent = Character
  241. acs.BrickColor = color
  242. local meshs = Instance.new("SpecialMesh")
  243. meshs.MeshId = mesh
  244. meshs.TextureId = texture
  245. meshs.Parent = acs
  246. meshs.Scale = scale
  247. meshs.Offset = offset
  248. weldBetween(attachmentpart,acs)
  249. end
  250.  
  251. function createbodypart(TYPE,COLOR,PART,OFFSET,SIZE)
  252. if TYPE == "Gem" then
  253. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  254. acs.Anchored = false
  255. acs.CanCollide = false
  256. acs.CFrame = PART.CFrame
  257. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "9756362", "", SIZE, OFFSET)
  258. weldBetween(PART,acs)
  259. elseif TYPE == "Skull" then
  260. local acs = CreatePart(3, Character, "Plastic", 0, 0, COLOR, "Part", VT(0,0,0))
  261. acs.Anchored = false
  262. acs.CanCollide = false
  263. acs.CFrame = PART.CFrame
  264. local acs2 = CreateMesh("SpecialMesh", acs, "FileMesh", "4770583", "", SIZE, OFFSET)
  265. weldBetween(PART,acs)
  266. elseif TYPE == "Eye" then
  267. local acs = CreatePart(3, Character, "Neon", 0, 0, COLOR, "Part", VT(0,0,0))
  268. acs.Anchored = false
  269. acs.CanCollide = false
  270. acs.CFrame = PART.CFrame
  271. local acs2 = CreateMesh("SpecialMesh", acs, "Sphere", "", "", SIZE, OFFSET)
  272. weldBetween(PART,acs)
  273. end
  274. end
  275.  
  276. --//=================================\\
  277. --|| USEFUL VALUES
  278. --\\=================================//
  279.  
  280. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  281. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  282. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  283. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  284. local CO1 = 0
  285. local CO2 = 0
  286. local CO3 = 0
  287. local CO4 = 0
  288. local CHANGEDEFENSE = 0
  289. local CHANGEDAMAGE = 0
  290. local CHANGEMOVEMENT = 0
  291. local ANIM = "Idle"
  292. local ATTACK = false
  293. local EQUIPPED = false
  294. local HOLD = false
  295. local COMBO = 1
  296. local LASTPOINT = nil
  297. local BLCF = nil
  298. local SCFR = nil
  299. local STAGGERHITANIM = false
  300. local STAGGERANIM = false
  301. local STUNANIM = false
  302. local CRITCHANCENUMBER = 0
  303. local IDLENUMBER = 0
  304. local DONUMBER = 0
  305. local HANDIDLE = false
  306. local Rooted = false
  307. local MANA = 1000
  308. local MAXMANA = MANA
  309. local SINE = 0
  310. local CHANGE = 2 / Animation_Speed
  311. local WALKINGANIM = false
  312. local WALK = 0
  313. local DISABLEJUMPING = false
  314. local ROBLOXIDLEANIMATION = IT("Animation")
  315. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  316. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  317. --ROBLOXIDLEANIMATION.Parent = Humanoid
  318. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  319. WEAPONGUI.Name = "Weapon GUI"
  320. local Weapon = IT("Model")
  321. Weapon.Name = Weapon_Name
  322. local Effects = IT("Folder", Weapon)
  323. Effects.Name = "Effects"
  324. local ANIMATOR = Humanoid.Animator
  325. local ANIMATE = Character.Animate
  326. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  327. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  328. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  329. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  330. local UNANCHOR = true
  331. local MAGICPARTICLE = "655109389"
  332.  
  333. local SKILLTEXTCOLOR = C3(1,0.3,0)
  334.  
  335. --//=================================\\
  336. --\\=================================//
  337.  
  338.  
  339. --//=================================\\
  340. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  341. --\\=================================//
  342.  
  343. ArtificialHB = Instance.new("BindableEvent", script)
  344. ArtificialHB.Name = "ArtificialHB"
  345.  
  346. script:WaitForChild("ArtificialHB")
  347.  
  348. frame = Frame_Speed
  349. tf = 0
  350. allowframeloss = false
  351. tossremainder = false
  352. lastframe = tick()
  353. script.ArtificialHB:Fire()
  354.  
  355. game:GetService("RunService").Heartbeat:connect(function(s, p)
  356. tf = tf + s
  357. if tf >= frame then
  358. if allowframeloss then
  359. script.ArtificialHB:Fire()
  360. lastframe = tick()
  361. else
  362. for i = 1, math.floor(tf / frame) do
  363. script.ArtificialHB:Fire()
  364. end
  365. lastframe = tick()
  366. end
  367. if tossremainder then
  368. tf = 0
  369. else
  370. tf = tf - frame * math.floor(tf / frame)
  371. end
  372. end
  373. end)
  374.  
  375. --//=================================\\
  376. --\\=================================//
  377.  
  378.  
  379.  
  380.  
  381.  
  382. --//=================================\\
  383. --|| SOME FUNCTIONS
  384. --\\=================================//
  385.  
  386. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  387. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  388. end
  389.  
  390. function PositiveAngle(NUMBER)
  391. if NUMBER >= 0 then
  392. NUMBER = 0
  393. end
  394. return NUMBER
  395. end
  396.  
  397. function NegativeAngle(NUMBER)
  398. if NUMBER <= 0 then
  399. NUMBER = 0
  400. end
  401. return NUMBER
  402. end
  403.  
  404. function Swait(NUMBER)
  405. if NUMBER == 0 or NUMBER == nil then
  406. ArtificialHB.Event:wait()
  407. else
  408. for i = 1, NUMBER do
  409. ArtificialHB.Event:wait()
  410. end
  411. end
  412. end
  413.  
  414. function QuaternionFromCFrame(cf)
  415. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  416. local trace = m00 + m11 + m22
  417. if trace > 0 then
  418. local s = math.sqrt(1 + trace)
  419. local recip = 0.5 / s
  420. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  421. else
  422. local i = 0
  423. if m11 > m00 then
  424. i = 1
  425. end
  426. if m22 > (i == 0 and m00 or m11) then
  427. i = 2
  428. end
  429. if i == 0 then
  430. local s = math.sqrt(m00 - m11 - m22 + 1)
  431. local recip = 0.5 / s
  432. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  433. elseif i == 1 then
  434. local s = math.sqrt(m11 - m22 - m00 + 1)
  435. local recip = 0.5 / s
  436. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  437. elseif i == 2 then
  438. local s = math.sqrt(m22 - m00 - m11 + 1)
  439. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  440. end
  441. end
  442. end
  443.  
  444. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  445. local xs, ys, zs = x + x, y + y, z + z
  446. local wx, wy, wz = w * xs, w * ys, w * zs
  447. local xx = x * xs
  448. local xy = x * ys
  449. local xz = x * zs
  450. local yy = y * ys
  451. local yz = y * zs
  452. local zz = z * zs
  453. 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))
  454. end
  455.  
  456. function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
  457. local fp=IT("Part")
  458. fp.formFactor=formfactor
  459. fp.Parent=parent
  460. fp.Reflectance=reflectance
  461. fp.Transparency=transparency
  462. fp.CanCollide=false
  463. fp.Locked=true
  464. fp.BrickColor=BrickColor.new(tostring(brickcolor))
  465. fp.Name=name
  466. fp.Size=size
  467. fp.Position=Character.Torso.Position
  468. NoOutlines(fp)
  469. fp.Material=material
  470. fp:BreakJoints()
  471. return fp
  472. end
  473.  
  474. function mesh(Mesh,part,meshtype,meshid,offset,scale)
  475. local mesh=IT(Mesh)
  476. mesh.Parent=part
  477. if Mesh=="SpecialMesh" then
  478. mesh.MeshType=meshtype
  479. mesh.MeshId=meshid
  480. end
  481. mesh.Offset=offset
  482. mesh.Scale=scale
  483. return mesh
  484. end
  485.  
  486. function QuaternionSlerp(a, b, t)
  487. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  488. local startInterp, finishInterp;
  489. if cosTheta >= 0.0001 then
  490. if (1 - cosTheta) > 0.0001 then
  491. local theta = ACOS(cosTheta)
  492. local invSinTheta = 1 / SIN(theta)
  493. startInterp = SIN((1 - t) * theta) * invSinTheta
  494. finishInterp = SIN(t * theta) * invSinTheta
  495. else
  496. startInterp = 1 - t
  497. finishInterp = t
  498. end
  499. else
  500. if (1 + cosTheta) > 0.0001 then
  501. local theta = ACOS(-cosTheta)
  502. local invSinTheta = 1 / SIN(theta)
  503. startInterp = SIN((t - 1) * theta) * invSinTheta
  504. finishInterp = SIN(t * theta) * invSinTheta
  505. else
  506. startInterp = t - 1
  507. finishInterp = t
  508. end
  509. end
  510. 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
  511. end
  512.  
  513. function Clerp(a, b, t)
  514. local qa = {QuaternionFromCFrame(a)}
  515. local qb = {QuaternionFromCFrame(b)}
  516. local ax, ay, az = a.x, a.y, a.z
  517. local bx, by, bz = b.x, b.y, b.z
  518. local _t = 1 - t
  519. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  520. end
  521.  
  522. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  523. local frame = IT("Frame")
  524. frame.BackgroundTransparency = TRANSPARENCY
  525. frame.BorderSizePixel = BORDERSIZEPIXEL
  526. frame.Position = POSITION
  527. frame.Size = SIZE
  528. frame.BackgroundColor3 = COLOR
  529. frame.BorderColor3 = BORDERCOLOR
  530. frame.Name = NAME
  531. frame.Parent = PARENT
  532. return frame
  533. end
  534.  
  535. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  536. local label = IT("TextLabel")
  537. label.BackgroundTransparency = 1
  538. label.Size = UD2(1, 0, 1, 0)
  539. label.Position = UD2(0, 0, 0, 0)
  540. label.TextColor3 = TEXTCOLOR
  541. label.TextStrokeTransparency = STROKETRANSPARENCY
  542. label.TextTransparency = TRANSPARENCY
  543. label.FontSize = TEXTFONTSIZE
  544. label.Font = TEXTFONT
  545. label.BorderSizePixel = BORDERSIZEPIXEL
  546. label.TextScaled = false
  547. label.Text = TEXT
  548. label.Name = NAME
  549. label.Parent = PARENT
  550. return label
  551. end
  552.  
  553. function NoOutlines(PART)
  554. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  555. end
  556.  
  557.  
  558. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  559. local NEWWELD = IT(TYPE)
  560. NEWWELD.Part0 = PART0
  561. NEWWELD.Part1 = PART1
  562. NEWWELD.C0 = C0
  563. NEWWELD.C1 = C1
  564. NEWWELD.Parent = PARENT
  565. return NEWWELD
  566. end
  567.  
  568. function CreateSound(ID, PARENT, VOLUME, PITCH)
  569. local NEWSOUND = nil
  570. coroutine.resume(coroutine.create(function()
  571. NEWSOUND = IT("Sound", PARENT)
  572. NEWSOUND.Volume = VOLUME
  573. NEWSOUND.Pitch = PITCH
  574. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  575. Swait()
  576. NEWSOUND:play()
  577. game:GetService("Debris"):AddItem(NEWSOUND, 10)
  578. end))
  579. return NEWSOUND
  580. end
  581.  
  582. function CFrameFromTopBack(at, top, back)
  583. local right = top:Cross(back)
  584. 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)
  585. end
  586.  
  587. function CreateWave(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
  588. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true)
  589. local mesh = IT("SpecialMesh",wave)
  590. mesh.MeshType = "FileMesh"
  591. mesh.MeshId = "http://www.roblox.com/asset/?id=20329976"
  592. mesh.Scale = VT(size,size,size)
  593. mesh.Offset = VT(0,0,-size/8)
  594. wave.CFrame = cframe
  595. coroutine.resume(coroutine.create(function(PART)
  596. for i = 1, waitt do
  597. Swait()
  598. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  599. mesh.Offset = VT(0,0,-(mesh.Scale.X/8))
  600. if doesrotate == true then
  601. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  602. end
  603. wave.Transparency = wave.Transparency + (0.5/waitt)
  604. if wave.Transparency > 0.99 then
  605. wave:remove()
  606. end
  607. end
  608. end))
  609. end
  610.  
  611. function CreateSwirl(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
  612. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true)
  613. local mesh = IT("SpecialMesh",wave)
  614. mesh.MeshType = "FileMesh"
  615. mesh.MeshId = "http://www.roblox.com/asset/?id=1051557"
  616. mesh.Scale = VT(size,size,size)
  617. wave.CFrame = cframe
  618. coroutine.resume(coroutine.create(function(PART)
  619. for i = 1, waitt do
  620. Swait()
  621. mesh.Scale = mesh.Scale + VT(size/5,size/10,size/5)
  622. if doesrotate == true then
  623. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  624. end
  625. wave.Transparency = wave.Transparency + (0.5/waitt)
  626. if wave.Transparency > 0.99 then
  627. wave:remove()
  628. end
  629. end
  630. end))
  631. end
  632.  
  633. function CreateTornado(inair,size,doesrotate,rotatedirection,waitt,cframe,color)
  634. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true)
  635. local mesh = IT("SpecialMesh",wave)
  636. mesh.MeshType = "FileMesh"
  637. mesh.MeshId = "http://www.roblox.com/asset/?id=102638417"
  638. mesh.Scale = VT(size,size,size)
  639. wave.CFrame = cframe
  640. coroutine.resume(coroutine.create(function(PART)
  641. for i = 1, waitt do
  642. Swait()
  643. mesh.Scale = mesh.Scale + VT(size/5,0,size/5)
  644. if doesrotate == true then
  645. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, rotatedirection, 0)
  646. end
  647. wave.Transparency = wave.Transparency + (0.5/waitt)
  648. if wave.Transparency > 0.99 then
  649. wave:remove()
  650. end
  651. end
  652. end))
  653. end
  654.  
  655. function CreateRing(inair,size,doesrotate,rotatedirection,waitt,cframe,spin1,spin2,color)
  656. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(color), "Effect", VT(0,0,0), true)
  657. local mesh = IT("SpecialMesh",wave)
  658. mesh.MeshType = "FileMesh"
  659. mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  660. mesh.Scale = VT(size,size,size)
  661. mesh.Offset = VT(0,0,0)
  662. wave.CFrame = cframe
  663. coroutine.resume(coroutine.create(function(PART)
  664. for i = 1, waitt do
  665. Swait()
  666. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  667. if doesrotate == true then
  668. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(spin2, rotatedirection, spin1)
  669. end
  670. wave.Transparency = wave.Transparency + (0.5/waitt)
  671. if wave.Transparency > 0.99 then
  672. wave:remove()
  673. end
  674. end
  675. end))
  676. end
  677.  
  678. function MagicSphere(size,waitt,cframe,color)
  679. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(1,1,1), true)
  680. local mesh = IT("SpecialMesh",wave)
  681. mesh.MeshType = "Sphere"
  682. mesh.Scale = VT(size,size,size)
  683. mesh.Offset = VT(0,0,0)
  684. wave.CFrame = cframe
  685. coroutine.resume(coroutine.create(function(PART)
  686. for i = 1, waitt do
  687. Swait()
  688. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  689. wave.Transparency = wave.Transparency + (1/waitt)
  690. if wave.Transparency > 0.99 then
  691. wave:remove()
  692. end
  693. end
  694. end))
  695. end
  696.  
  697. function MagicSphere2(size,waitt,cframe,color)
  698. local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(1,1,1), true)
  699. local mesh = IT("SpecialMesh",wave)
  700. mesh.MeshType = "Sphere"
  701. mesh.Scale = VT(size,size,size)
  702. mesh.Offset = VT(0,0,0)
  703. wave.CFrame = cframe
  704. coroutine.resume(coroutine.create(function(PART)
  705. for i = 1, waitt do
  706. Swait()
  707. mesh.Scale = mesh.Scale - VT(size/waitt,size/waitt,size/waitt)
  708. wave.Transparency = wave.Transparency - (1/waitt)
  709. end
  710. wave:remove()
  711. end))
  712. end
  713.  
  714. function BreakEffect(brickcolor,cframe,x1,y1,z1,material)
  715. local prt=part("Custom",workspace,material,0,0,brickcolor,"Effect",VT(0.5,0.5,0.5))
  716. prt.Anchored=true
  717. prt.CFrame=cframe*EULER(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  718. local msh=mesh("SpecialMesh",prt,"Sphere","",VT(0,0,0),VT(x1,y1,z1))
  719. coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb)
  720. CF=Part.CFrame
  721. Numbb=0
  722. randnumb=math.random()-math.random()
  723. for i=0,1,0.05 do
  724. wait()
  725. CF=CF*CF(0,1,0)
  726. --Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
  727. Part.CFrame=CF*EULER(Numbb,0,0)
  728. Part.Transparency=i
  729. Numbb=Numbb+randnumb
  730. end
  731. Part.Parent=nil
  732. end),prt)
  733. end
  734.  
  735. function MagicBlock(size,waitt,cframe,color)
  736. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(color), "Effect", VT(size,size,size), true)
  737. local mesh = IT("BlockMesh",wave)
  738. wave.CFrame = cframe
  739. coroutine.resume(coroutine.create(function(PART)
  740. for i = 1, waitt do
  741. Swait()
  742. mesh.Scale = mesh.Scale + VT(size/5,size/5,size/5)
  743. wave.CFrame = cframe * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  744. wave.Transparency = wave.Transparency + (1/waitt)
  745. if wave.Transparency > 0.99 then
  746. wave:remove()
  747. end
  748. end
  749. end))
  750. end
  751.  
  752. function MagicBlock2(size,waitt,cframe,color)
  753. local wave = CreatePart(3, Effects, "Neon", 0, 1, BRICKC(color), "Effect", VT(size,size,size), true)
  754. local mesh = IT("BlockMesh",wave)
  755. wave.CFrame = cframe
  756. coroutine.resume(coroutine.create(function(PART)
  757. for i = 1, waitt do
  758. Swait()
  759. mesh.Scale = mesh.Scale - VT(1/waitt,1/waitt,1/waitt)
  760. wave.CFrame = cframe * ANGLES(RAD(math.random(-360,360)),RAD(math.random(-360,360)),RAD(math.random(-360,360)))
  761. wave.Transparency = wave.Transparency - (1/waitt)
  762. end
  763. wave:Destroy()
  764. end))
  765. end
  766.  
  767. local EyeSizes={
  768. NumberSequenceKeypoint.new(0,1,0),
  769. NumberSequenceKeypoint.new(1,0.2,0)
  770. }
  771. local EyeTrans={
  772. NumberSequenceKeypoint.new(0,0.8,0),
  773. NumberSequenceKeypoint.new(1,1,0)
  774. }
  775. local PE=Instance.new("ParticleEmitter")
  776. PE.LightEmission=0.7
  777. PE.Size=NumberSequence.new(EyeSizes)
  778. PE.Transparency=NumberSequence.new(EyeTrans)
  779. PE.Lifetime=NumberRange.new(0.35,0.35,0.35)
  780. PE.Rotation=NumberRange.new(0,360)
  781. PE.Rate=15
  782. PE.Acceleration = Vector3.new(0,75,0)
  783. PE.Drag = 5
  784. PE.Enabled = false
  785. PE.VelocitySpread = 999
  786. PE.Speed = NumberRange.new(0,0,0)
  787. PE.Texture="http://www.roblox.com/asset/?id=1179557490"
  788. PE.ZOffset = 0
  789. PE.Name = "Particles"
  790. function CreateParticles(art,accel,drag,lifetime,type,isenabledbydefault,locked,size,speed)
  791. local particle = nil
  792. coroutine.resume(coroutine.create(function(PART)
  793. particle = PE:Clone()
  794. Swait()
  795. particle.Rate = 999
  796. particle.Parent = art
  797. particle.Acceleration = accel
  798. if type == "Fire" then
  799. local EyeSizes={
  800. NumberSequenceKeypoint.new(0,size,size/2),
  801. NumberSequenceKeypoint.new(1,size/4,size/8)
  802. }
  803. particle.Size = NumberSequence.new(EyeSizes)
  804. elseif type == "Smoke" then
  805. local EyeSizes={
  806. NumberSequenceKeypoint.new(0,0.5,0),
  807. NumberSequenceKeypoint.new(1,5,0.5)
  808. }
  809. particle.Size = NumberSequence.new(EyeSizes)
  810. elseif type == "Solid" then
  811. local EyeSizes={
  812. NumberSequenceKeypoint.new(0,0.5,0),
  813. NumberSequenceKeypoint.new(1,0.5,0)
  814. }
  815. particle.Size = NumberSequence.new(EyeSizes)
  816. end
  817. particle.Lifetime=NumberRange.new(lifetime)
  818. particle.Drag = drag
  819. if locked == true then
  820. particle.LockedToPart = true
  821. end
  822. particle.Speed = NumberRange.new(speed,speed,speed)
  823. particle.Texture = "http://www.roblox.com/asset/?id=296874871"
  824. particle.Enabled = isenabledbydefault
  825. particle.Color = ColorSequence.new(Color3.new(255/255, 75/255, 0))
  826. end))
  827. return particle
  828. end
  829.  
  830. --//=================================\\
  831. --\\=================================//
  832.  
  833.  
  834. --//=================================\\
  835. --|| WEAPON CREATION
  836. --\\=================================//
  837. local A = IT("Attachment",Torso)
  838. A.Position = VT(1,1.3,0)
  839. A.Orientation = VT(-0.098, -89.999, 0.227)
  840. local B = IT("Attachment",Torso)
  841. B.Position = VT(-1.3,-0.6,0)
  842. B.Orientation = VT(-88.911, -68.808, 158.782)
  843. local ChainLink = IT("Beam",Torso)
  844. ChainLink.Texture = "rbxassetid://73042633"
  845. ChainLink.Color = ColorSequence.new(C3(1,0,0))
  846. ChainLink.TextureSpeed = 1
  847. ChainLink.FaceCamera = true
  848. ChainLink.Width0 = 1
  849. ChainLink.Width1 = 1
  850. ChainLink.TextureLength = 3
  851. ChainLink.Attachment0 = A
  852. ChainLink.Attachment1 = B
  853. ChainLink.CurveSize0 = 1.6
  854. ChainLink.CurveSize1 = 1.6
  855. ChainLink.FaceCamera = true
  856. ChainLink.Transparency = NumberSequence.new(0)
  857. local ChainLink = IT("Beam",Torso)
  858. ChainLink.Texture = "rbxassetid://73042633"
  859. ChainLink.Color = ColorSequence.new(C3(1,0,0))
  860. ChainLink.TextureSpeed = 1
  861. ChainLink.FaceCamera = true
  862. ChainLink.Width0 = 1
  863. ChainLink.Width1 = 1
  864. ChainLink.TextureLength = 3
  865. ChainLink.Attachment0 = B
  866. ChainLink.Attachment1 = A
  867. ChainLink.CurveSize0 = 1.6
  868. ChainLink.CurveSize1 = 1.6
  869. ChainLink.FaceCamera = true
  870. ChainLink.Transparency = NumberSequence.new(0)
  871. local A = IT("Attachment",Torso)
  872. A.Position = VT(1.3,-0.85,0)
  873. A.Orientation = VT(-0.098, -89.999, 0.227)
  874. local B = IT("Attachment",Torso)
  875. B.Position = VT(-1,2,0)
  876. B.Orientation = VT(-88.911, -68.808, 158.782)
  877. local ChainLink = IT("Beam",Torso)
  878. ChainLink.Texture = "rbxassetid://73042633"
  879. ChainLink.Color = ColorSequence.new(C3(1,0,0))
  880. ChainLink.TextureSpeed = 1
  881. ChainLink.FaceCamera = true
  882. ChainLink.Width0 = 1
  883. ChainLink.Width1 = 1
  884. ChainLink.TextureLength = 3
  885. ChainLink.Attachment0 = A
  886. ChainLink.Attachment1 = B
  887. ChainLink.CurveSize0 = 1.3
  888. ChainLink.CurveSize1 = 1.3
  889. ChainLink.FaceCamera = true
  890. ChainLink.Transparency = NumberSequence.new(0)
  891. local ChainLink = IT("Beam",Torso)
  892. ChainLink.Texture = "rbxassetid://73042633"
  893. ChainLink.Color = ColorSequence.new(C3(1,0,0))
  894. ChainLink.TextureSpeed = 1
  895. ChainLink.FaceCamera = true
  896. ChainLink.Width0 = 1
  897. ChainLink.Width1 = 1
  898. ChainLink.TextureLength = 3
  899. ChainLink.Attachment0 = B
  900. ChainLink.Attachment1 = A
  901. ChainLink.CurveSize0 = 1.3
  902. ChainLink.CurveSize1 = 1.3
  903. ChainLink.FaceCamera = true
  904. ChainLink.Transparency = NumberSequence.new(0)
  905.  
  906. local A = IT("Attachment",RightBarrel)
  907. A.Position = VT(0,-2.5,0)
  908. local B = IT("Attachment",RightBarrel)
  909. B.Position = VT(0,2.5,0)
  910. local Trail = IT("Trail",RightBarrel)
  911. Trail.Attachment0 = A
  912. Trail.Attachment1 = B
  913. Trail.Lifetime = 0.2
  914. Trail.Color = ColorSequence.new(BRICKC"White".Color)
  915. Trail.Transparency = NumberSequence.new(0, 1)
  916. Trail.Enabled = false
  917.  
  918. Character.Head.face.Texture = "rbxassetid://398671601"
  919. for i = 1, 15 do
  920. local FACE = CreatePart(3, Character, "Fabric", 0, 0+(i-1)/15.2, "Dark stone grey", "FaceGradient", VT(1.01,0.58,1.01),false)
  921. FACE.Color = C3(0,0,0)
  922. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  923. CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/35,0), CF(0, 0, 0))
  924. end
  925. local HAT1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Detail", VT(2,0.2,2),false)
  926. HATWELD = CreateWeldOrSnapOrMotor("Weld", Head, Head, HAT1, CF(0,0.35,0), CF(0, 0, 0))
  927. local BELT = CreatePart(3, Character, "Neon", 0, 0, "White", "Part", VT(1.35,0.4,1.35),false)
  928. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, BELT, CF(0,0.25,0), CF(0, 0, 0))
  929. local HAT2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Detail", VT(1.3,2.2,1.3),false)
  930. CreateWeldOrSnapOrMotor("Weld", HAT1, HAT1, HAT2, CF(0,1.1,0), CF(0, 0, 0))
  931.  
  932. local TIE1 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Detail", VT(0.5,0.5,0),false)
  933. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, TIE1, CF(0,0.8,-0.5), CF(0, 0, 0))
  934. local TIE2 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Detail", VT(0.2,0.5,0),false)
  935. CreateWeldOrSnapOrMotor("Weld", TIE1, TIE1, TIE2, CF(0,-0.5,0), CF(0, 0, 0))
  936. local TIE3 = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Really black", "Detail", VT(0.5,1,0),false)
  937. CreateWeldOrSnapOrMotor("Weld", TIE2, TIE2, TIE3, CF(0,-0.75,0), CF(0, 0, 0))
  938.  
  939. local naeeym2 = IT("BillboardGui",Character)
  940. naeeym2.AlwaysOnTop = true
  941. naeeym2.Size = UDim2.new(5,35,2,15)
  942. naeeym2.StudsOffset = Vector3.new(0,3,0)
  943. naeeym2.MaxDistance = 75
  944. naeeym2.Adornee = Character.Head
  945. naeeym2.Name = "Name"
  946. local tecks2 = IT("TextLabel",naeeym2)
  947. tecks2.BackgroundTransparency = 1
  948. tecks2.TextScaled = true
  949. tecks2.BorderSizePixel = 0
  950. tecks2.Text = "Post Man Pat"
  951. tecks2.Font = "Bodoni"
  952. tecks2.TextSize = 30
  953. tecks2.TextStrokeTransparency = 0.5
  954. tecks2.TextColor3 = C3(0,0,0)
  955. tecks2.TextStrokeColor3 = BRICKC"White".Color
  956. tecks2.Size = UDim2.new(1,0,0.5,0)
  957. tecks2.Parent = naeeym2
  958.  
  959. --create mailbox
  960.  
  961. local HandlePart = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Really black", "Handle", VT(0.25*Player_Size,0.25*Player_Size,1.5*Player_Size))
  962. local HandleWeld = CreateWeldOrSnapOrMotor("Weld", HandlePart, RightArm, HandlePart, CF(0 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  963. local axeccessory = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Bright orange", "Handle", VT(0.1*Player_Size,0.1*Player_Size,5*Player_Size))
  964. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, axeccessory, HandlePart, CF(0 * Player_Size, 0 * Player_Size, 0.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  965. local Box = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Grey", "Handle", VT(1*Player_Size,2*Player_Size,0.5*Player_Size))
  966. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, Box, HandlePart, CF(0 * Player_Size, 0 * Player_Size, 3 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  967. local axeccessory = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Grey", "Handle", VT(2*Player_Size,1*Player_Size,1*Player_Size))
  968. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, axeccessory, HandlePart, CF(0 * Player_Size, 0 * Player_Size, 3.25 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), CF(0, 0, 0))
  969. local mmesh = Instance.new("SpecialMesh",axeccessory)
  970. mmesh.MeshType = "Cylinder"
  971. local MailMeme = CreatePart(3, Weapon, "SmoothPlastic", 1, 1, "Dark green", "Handle", VT(0.2*Player_Size,0.2*Player_Size,0.2*Player_Size))
  972. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, MailMeme, HandlePart, CF(0 * Player_Size, 1.2 * Player_Size, 3 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  973. local axeccessory = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Maroon", "Handle", VT(0.05*Player_Size,0.2*Player_Size,0.6*Player_Size))
  974. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, axeccessory, HandlePart, CF(-0.5 * Player_Size, 0 * Player_Size, 3.4 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  975. local axeccessory = CreatePart(3, Weapon, "SmoothPlastic", 0, 0, "Maroon", "Handle", VT(0.05*Player_Size,0.6*Player_Size,0.2*Player_Size))
  976. local axeweld = CreateWeldOrSnapOrMotor("Weld", HandlePart, axeccessory, HandlePart, CF(-0.5 * Player_Size, 0.4 * Player_Size, 3.6 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  977.  
  978. -----
  979.  
  980. if Player_Size ~= 1 then
  981. for _, v in pairs (Weapon:GetChildren()) do
  982. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  983. local p1 = v.Part1
  984. v.Part1 = nil
  985. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  986. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  987. v.Part1 = p1
  988. elseif v.ClassName == "Part" then
  989. for _, b in pairs (v:GetChildren()) do
  990. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  991. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  992. end
  993. end
  994. end
  995. end
  996. end
  997.  
  998. for _, c in pairs(Weapon:GetChildren()) do
  999. if c.ClassName == "Part" then
  1000. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1001. end
  1002. end
  1003.  
  1004. Weapon.Parent = Character
  1005.  
  1006. Humanoid.Died:connect(function()
  1007. ATTACK = true
  1008. end)
  1009. if Player_Size ~= 1 then
  1010. for _, v in pairs (Weapon:GetChildren()) do
  1011. if v.ClassName == "Motor" or v.ClassName == "Weld" or v.ClassName == "Snap" then
  1012. local p1 = v.Part1
  1013. v.Part1 = nil
  1014. local cf1, cf2, cf3, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12 = v.C1:components()
  1015. v.C1 = CF(cf1 * Player_Size, cf2 * Player_Size, cf3 * Player_Size, cf4, cf5, cf6, cf7, cf8, cf9, cf10, cf11, cf12)
  1016. v.Part1 = p1
  1017. elseif v.ClassName == "Part" then
  1018. for _, b in pairs (v:GetChildren()) do
  1019. if b.ClassName == "SpecialMesh" or b.ClassName == "BlockMesh" then
  1020. b.Scale = VT(b.Scale.x * Player_Size, b.Scale.y * Player_Size, b.Scale.z * Player_Size)
  1021. end
  1022. end
  1023. end
  1024. end
  1025. end
  1026.  
  1027. function MakeForm(PART,TYPE)
  1028. if TYPE == "Cyl" then
  1029. local MSH = IT("CylinderMesh",PART)
  1030. elseif TYPE == "Ball" then
  1031. local MSH = IT("SpecialMesh",PART)
  1032. MSH.MeshType = "Sphere"
  1033. elseif TYPE == "Wedge" then
  1034. local MSH = IT("SpecialMesh",PART)
  1035. MSH.MeshType = "Wedge"
  1036. end
  1037. end
  1038.  
  1039. function createaddon(position,size)
  1040. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(0.25*Player_Size, size*0.8*Player_Size,size*0.8*Player_Size),false)
  1041. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.45 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0))
  1042. local part = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(0.25*Player_Size,size*Player_Size,size*Player_Size),false)
  1043. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.425 * Player_Size, position * Player_Size, 0 * Player_Size) * ANGLES(RAD(45), RAD(0), RAD(0)), CF(0, 0, 0))
  1044. end
  1045.  
  1046. local FIST = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(1.025*Player_Size,2.025*Player_Size,1.025*Player_Size),false)
  1047. local weld = CreateWeldOrSnapOrMotor("Weld", FIST, RightArm, FIST, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1048. FIST.CanCollide = true
  1049. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,1.05*Player_Size,1.05*Player_Size),false)
  1050. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1051. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.06*Player_Size,0.2*Player_Size,1.06*Player_Size),false)
  1052. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1053. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.55*Player_Size,1.05*Player_Size),false)
  1054. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.75 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1055. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.25*Player_Size,1.05*Player_Size),false)
  1056. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.15 * Player_Size, 0 * Player_Size) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
  1057. MakeForm(part,"Wedge")
  1058. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.05*Player_Size,0.25*Player_Size,1.05*Player_Size),false)
  1059. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1060. MakeForm(part,"Wedge")
  1061. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.035*Player_Size,0.3*Player_Size,1.035*Player_Size),false)
  1062. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1063. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.035*Player_Size,0.3*Player_Size,1.035*Player_Size),false)
  1064. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1065. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(1.1*Player_Size,1.1*Player_Size,1.1*Player_Size),false)
  1066. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1067. MakeForm(part,"Wedge")
  1068. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "Gauntlet Part", VT(1.15*Player_Size,1.15*Player_Size,1.15*Player_Size),false)
  1069. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.05 * Player_Size, -0.505 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1070. MakeForm(part,"Wedge")
  1071. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false)
  1072. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1073. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false)
  1074. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1075. local part = CreatePart(3, Weapon, "Granite", 0, 0, "Deep orange", "Gauntlet Part", VT(0.2*Player_Size,0.7*Player_Size,0.7*Player_Size),false)
  1076. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0.28 * Player_Size, -0.77 * Player_Size, 0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)), CF(0, 0, 0))
  1077. createaddon(0.4,0.4)
  1078. createaddon(0.5,0.3)
  1079. createaddon(0.6,0.2)
  1080. local part = CreatePart(3, Weapon, "Neon", 0, 0, "CGA brown", "Neon Gauntlet Part", VT(0.3*Player_Size,1.1*Player_Size,0.3*Player_Size),false)
  1081. local weld = CreateWeldOrSnapOrMotor("Weld", part, RightArm, part, CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1082.  
  1083. for _, c in pairs(Weapon:GetChildren()) do
  1084. if c.ClassName == "Part" then
  1085. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1086. end
  1087. end
  1088.  
  1089. Weapon.Parent = Character
  1090.  
  1091. Humanoid.Died:connect(function()
  1092. ATTACK = true
  1093. end)
  1094.  
  1095. print(Class_Name.." loaded.")
  1096.  
  1097. local SKILL1FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  1098. local SKILL2FRAME = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  1099.  
  1100. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Black And White Cat", SKILLTEXTCOLOR, 8, "SciFi", 0, 2, 1, "Text 3")
  1101.  
  1102. local MANABAR = CreateFrame(WEAPONGUI, 0.5, 2, UD2(0.365, 0, 0.82, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0),"Mana Bar")
  1103. local MANACOVER = CreateFrame(MANABAR, 0, 2, UD2(0, 0, 0, 0), UD2(0, 0, 1, 0), C3(0,0,0), C3(0, 0, 0),"Mana Cover")
  1104. local MANATEXT = CreateLabel(MANABAR, "ENERGY ["..FLOOR(MANA).."]", C3(1, 1, 1), "Size32", "SciFi", 1, 2, 1, "Mana Text")
  1105.  
  1106. --//=================================\\
  1107. --|| DAMAGE FUNCTIONS
  1108. --\\=================================//
  1109.  
  1110. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1111. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1112. STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1113. local BODYGYRO = IT("BodyGyro", STATPART)
  1114. local BODYPOSITION = IT("BodyPosition", STATPART)
  1115. BODYPOSITION.P = 2000
  1116. BODYPOSITION.D = 100
  1117. BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1118. if LABELTYPE == "Normal" then
  1119. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1120. elseif LABELTYPE == "Debuff" then
  1121. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  1122. elseif LABELTYPE == "Interruption" then
  1123. BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  1124. end
  1125. game:GetService("Debris"):AddItem(STATPART ,5)
  1126. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1127. BILLBOARDGUI.Adornee = STATPART
  1128. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1129. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1130. BILLBOARDGUI.AlwaysOnTop = false
  1131. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1132. TEXTLABEL.BackgroundTransparency = 1
  1133. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1134. TEXTLABEL.Text = TEXT
  1135. TEXTLABEL.Font = "SciFi"
  1136. TEXTLABEL.FontSize="Size42"
  1137. TEXTLABEL.TextColor3 = COLOR
  1138. TEXTLABEL.TextStrokeTransparency = 1
  1139. TEXTLABEL.TextScaled = true
  1140. TEXTLABEL.TextWrapped = true
  1141. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1142. wait(0.2)
  1143. for i=1, 5 do
  1144. wait()
  1145. THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  1146. end
  1147. wait(1.2)
  1148. for i=1, 5 do
  1149. wait()
  1150. THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1151. THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1152. THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1153. end
  1154. THEPART.Parent = nil
  1155. end),STATPART, BODYPOSITION, TEXTLABEL)
  1156. end
  1157.  
  1158.  
  1159. --//=================================\\
  1160. --|| DAMAGING
  1161. --\\=================================//
  1162.  
  1163. function dealdamage(hit,min,max,maxstrength,beserk,critrate,critmultiplier)
  1164. if hit.Parent:FindFirstChildOfClass("Humanoid") and hit.Parent:FindFirstChild("HitBy"..Player.Name) == nil then
  1165. local humanoid = hit.Parent:FindFirstChildOfClass("Humanoid")
  1166. local dmg = math.huge
  1167. if humanoid.Health > 0 then
  1168. if beserk == true then
  1169. humanoid.Health = 0
  1170. else
  1171. CreateSound("260430060", hit, 1.2, MRANDOM(7, 12) / 10)
  1172. hit.Velocity = CFrame.new(Torso.Position,hit.Position).lookVector*5*maxstrength
  1173. if math.random(1,100) < critrate+1 then
  1174. humanoid.Health = humanoid.Health - dmg*critmultiplier
  1175. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1176. else
  1177. humanoid.Health = humanoid.Health - dmg
  1178. StatLabel("Normal", hit.CFrame * CF(0, 0 + (hit.Size.z - 1), 0), dmg, C3(0, 0, 0))
  1179. end
  1180. local defence = Instance.new("BoolValue",hit.Parent)
  1181. defence.Name = ("HitBy"..Player.Name)
  1182. game:GetService("Debris"):AddItem(defence, 0.25)
  1183. end
  1184. end
  1185. end
  1186. end
  1187.  
  1188. function AoEDamage(position,radius,min,max,maxstrength,beserk,critrate,critmultiplier,CanBeDodgedByJumping)
  1189. local dmg = math.huge
  1190. for i,v in ipairs(workspace:GetChildren()) do
  1191. if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1192. local body = v:GetChildren()
  1193. for part = 1, #body do
  1194. if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1195. if(body[part].Position - position).Magnitude < radius then
  1196. if v.ClassName == "Model" then
  1197. if v:FindFirstChild("Humanoid") then
  1198. if v.Humanoid.Health ~= 0 then
  1199. if CanBeDodgedByJumping == true then
  1200. if body[part].Position.Y < position.Y+5 then
  1201. if math.random(1,100) < critrate+1 then
  1202. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1203. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1204. else
  1205. v.Humanoid.Health = v.Humanoid.Health - dmg
  1206. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1207. end
  1208. local defence = Instance.new("BoolValue",v)
  1209. defence.Name = ("HitBy"..Player.Name)
  1210. game:GetService("Debris"):AddItem(defence, 0.25)
  1211. end
  1212. else
  1213. if beserk == true then
  1214. v.Humanoid.Health = 0
  1215. end
  1216. if math.random(1,100) < critrate+1 then
  1217. v.Humanoid.Health = v.Humanoid.Health - dmg*critmultiplier
  1218. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), "CRIT/"..dmg*critmultiplier, C3(255/255, 0, 0))
  1219. else
  1220. v.Humanoid.Health = v.Humanoid.Health - dmg
  1221. StatLabel("Normal", body[part].CFrame * CF(0, 0 + (body[part].Size.z - 1), 0), dmg, C3(0, 0, 0))
  1222. end
  1223. local defence = Instance.new("BoolValue",v)
  1224. defence.Name = ("HitBy"..Player.Name)
  1225. game:GetService("Debris"):AddItem(defence, 0.25)
  1226. end
  1227. end
  1228. end
  1229. end
  1230. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1231. end
  1232. end
  1233. end
  1234. if v.ClassName == "Part" then
  1235. if v.Anchored == false and (v.Position - position).Magnitude < radius then
  1236. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1237. end
  1238. end
  1239. end
  1240. end
  1241. end
  1242.  
  1243. function killnearest(position,range,maxstrength)
  1244. for i,v in ipairs(workspace:GetChildren()) do
  1245. local body = v:GetChildren()
  1246. for part = 1, #body do
  1247. if((body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1248. if(body[part].Position - position).Magnitude < range then
  1249. if v.ClassName == "Model" then
  1250. v:BreakJoints()
  1251. end
  1252. --table.insert(Effects2,{body[part],"Disappear",0.02,2,2,2,2})
  1253. body[part].Velocity = CFrame.new(position,body[part].Position).lookVector*5*maxstrength
  1254. end
  1255. end
  1256. end
  1257. if v.ClassName == "Part" then
  1258. if v.Anchored == false and (v.Position - position).Magnitude < range then
  1259. --table.insert(Effects2,{v,"Disappear",0.02,2,2,2,2})
  1260. v.Velocity = CFrame.new(position,v.Position).lookVector*5*maxstrength
  1261. end
  1262. end
  1263. end
  1264. end
  1265.  
  1266. --//=================================\\
  1267. --|| ATTACK FUNCTIONS AND STUFF
  1268. --\\=================================//
  1269.  
  1270. function createfireball(size,explosionsize,pos,velocity)
  1271. local FIREBALLCOLORS = {"Grey", "Really black", "Grey"}
  1272. local FIREBALLHITSOUNDS = {"522282998", "527535379", "304448425"}
  1273. local FIREBALL = IT("Part",Effects)
  1274. FIREBALL.Shape = "Ball"
  1275. FIREBALL.Size = VT(size,size,size)
  1276. FIREBALL.Material = "Neon"
  1277. FIREBALL.CFrame = CF(pos)
  1278. FIREBALL.Transparency = 1
  1279. local bv = Instance.new("BodyVelocity")
  1280. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1281. bv.velocity = velocity
  1282. bv.Parent = FIREBALL
  1283. bv.Name = "MOVE"
  1284. local HIT = false
  1285. local harm = FIREBALL.Touched:Connect(function(hit)
  1286. if HIT == false and hit.Parent.ClassName ~= "Accessory" and hit.Parent ~= Character and hit.Parent ~= Weapon and hit.Parent ~= FIREBALL.Parent then
  1287. HIT = true
  1288. coroutine.resume(coroutine.create(function()
  1289. FIREBALL.Anchored = true
  1290. FIREBALL.CanCollide = false
  1291. CreateSound(FIREBALLHITSOUNDS[MRANDOM(1, #FIREBALLHITSOUNDS)], FIREBALL, 3, 1)
  1292. AoEDamage(FIREBALL.Position,explosionsize*2,35,45,25,false,3,2,false,true)
  1293. for i = 1, 2 do
  1294. MagicBlock(explosionsize/3/i,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1295. MagicSphere(explosionsize/2/i,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1296. end
  1297. Swait(250)
  1298. FIREBALL:remove()
  1299. end))
  1300. end
  1301. end)
  1302. coroutine.resume(coroutine.create(function()
  1303. repeat
  1304. Swait()
  1305. MagicBlock2(size,25,FIREBALL.CFrame,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1306. until HIT == true
  1307. end))
  1308. return FIREBALL
  1309. end
  1310.  
  1311. function Erupt(cframe,size)
  1312. coroutine.resume(coroutine.create(function()
  1313. local FIREBALLCOLORS = {"White", "Bright orange", "Bright yellow"}
  1314. local FIREPILLARHITSOUNDS = {"171378971", "646619365", "472579737", "144140670"}
  1315. for i = 1, 5 do
  1316. CreateSwirl(0,i,true,-0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1317. Swait(15)
  1318. end
  1319. AoEDamage(cframe.p,size,35,45,25,false,3,2,false,true)
  1320. local brick = IT("Part",Effects)
  1321. brick.CanCollide = false
  1322. brick.Anchored = true
  1323. brick.Size = VT(0,0,0)
  1324. brick.Transparency = 1
  1325. brick.Name = "POS"
  1326. brick.CFrame = cframe
  1327. game:GetService("Debris"):AddItem(brick, 5)
  1328. AoEDamage(brick.Position,size*2,35,45,25,false,3,2,false,true)
  1329. CreateSound(FIREPILLARHITSOUNDS[MRANDOM(1, #FIREPILLARHITSOUNDS)], brick, 3, 1)
  1330. MagicSphere(size,25,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1331. MagicSphere(size/2,35,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1332. MagicSphere(size/3,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1333. MagicSphere2(size*5,25,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1334. CreateSwirl(0,size,true,0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1335. CreateSwirl(0,size,true,0.35,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1336. CreateSwirl(0,size,true,0.1,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1337. CreateSwirl(0,size,true,-0.5,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1338. CreateSwirl(0,size,true,-0.35,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1339. CreateSwirl(0,size,true,-0.1,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1340. MagicBlock(size/6,45,cframe,FIREBALLCOLORS[MRANDOM(1, #FIREBALLCOLORS)])
  1341. end))
  1342. end
  1343.  
  1344. function Attack1()
  1345. ATTACK = true
  1346. for i=0, 1, 0.1 / Animation_Speed2 do
  1347. Swait()
  1348. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.4 / Animation_Speed2)
  1349. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(75)), 0.15 / Animation_Speed2)
  1350. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1351. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1352. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1353. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1354. end
  1355. local harm = FIST.Touched:Connect(function(hit)
  1356. dealdamage(hit,15,18,0,false,0,0)
  1357. end)
  1358. CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10)
  1359. for i=0, 1.5, 0.1 / Animation_Speed2 do
  1360. Swait()
  1361. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(65)), 0.4 / Animation_Speed2)
  1362. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2)
  1363. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1364. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1365. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1366. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1367. end
  1368. harm:disconnect()
  1369. ATTACK = false
  1370. end
  1371.  
  1372. function Attack2()
  1373. ATTACK = true
  1374. for i=0, 1.5, 0.1 / Animation_Speed2 do
  1375. Swait()
  1376. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2)
  1377. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2)
  1378. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1379. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1380. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1381. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1382. end
  1383. local harm = FIST.Touched:Connect(function(hit)
  1384. dealdamage(hit,15,18,0,false,0,0)
  1385. end)
  1386. CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10)
  1387. for i=0, 1.5, 0.1 / Animation_Speed2 do
  1388. Swait()
  1389. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.4 / Animation_Speed2)
  1390. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.2 / Animation_Speed2)
  1391. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1392. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1393. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1394. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1395. end
  1396. harm:disconnect()
  1397. ATTACK = false
  1398. end
  1399.  
  1400. function Attack3()
  1401. ATTACK = true
  1402. for i=0, 1, 0.1 / Animation_Speed2 do
  1403. Swait()
  1404. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-90)), 0.4 / Animation_Speed2)
  1405. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(75)), 0.15 / Animation_Speed2)
  1406. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(100)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1407. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1408. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1409. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1410. end
  1411. local harm = FIST.Touched:Connect(function(hit)
  1412. dealdamage(hit,25,28,0,false,0,0)
  1413. end)
  1414. CreateSound("596439421", RightArm, 1, MRANDOM(7, 12) / 10)
  1415. for i=0, 1.5, 0.1 / Animation_Speed2 do
  1416. Swait()
  1417. MagicSphere2(2,15,RightArm.CFrame * CF(0,1.2,0),"CGA brown")
  1418. RootPart.CFrame = RootPart.CFrame * CF(0,0,-0.3)
  1419. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2)
  1420. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2)
  1421. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1422. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1423. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1424. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1425. end
  1426. harm:disconnect()
  1427. ATTACK = false
  1428. end
  1429.  
  1430. function turnto(pos)
  1431. RootPart.CFrame = CF(RootPart.Position,VT(pos.X,RootPart.Position.Y,pos.Z))
  1432. end
  1433.  
  1434. function Fireball()
  1435. ATTACK = true
  1436. Rooted = true
  1437. CreateSound("169445572", RightArm, 2, 1.6)
  1438. for i=0, 5, 0.1 / Animation_Speed2 do
  1439. Swait()
  1440. turnto(Mouse.Hit.p)
  1441. MagicSphere(0.8,15,RightArm.CFrame * CF(0,-1.5,0),"CGA brown")
  1442. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(90)), 0.4 / Animation_Speed2)
  1443. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(-75)), 0.2 / Animation_Speed2)
  1444. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(140)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1445. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1446. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1447. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1448. end
  1449. local aimpos = Mouse.Hit.p
  1450. createfireball(4,8,RightArm.CFrame * CF(0,-5,0).p,CF(RightArm.CFrame * CF(0,-5,0).p,aimpos).lookVector*100)
  1451. for i=0, 1.5, 0.1 / Animation_Speed2 do
  1452. Swait()
  1453. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-15)), 0.4 / Animation_Speed2)
  1454. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.2 / Animation_Speed2)
  1455. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed2)
  1456. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(25), RAD(-25)) * LEFTSHOULDERC0, 0.15 / Animation_Speed2)
  1457. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1458. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed2)
  1459. end
  1460. ATTACK = false
  1461. Rooted = false
  1462. end
  1463.  
  1464. function InfernalDrive()
  1465. ATTACK = true
  1466. Rooted = true
  1467. for i=0, 1.5, 0.1 / Animation_Speed*3 do
  1468. Swait()
  1469. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  1470. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(15)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1471. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1472. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(50)) * ANGLES(RAD(80), RAD(-20), RAD(-30)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1473. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1474. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1475. end
  1476. CreateSound("217767125", LeftArm, 10, 1)
  1477. Erupt(CF(Mouse.Hit.p),15)
  1478. for i=0, 1.5, 0.1 / Animation_Speed do
  1479. Swait()
  1480. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-40)), 0.4 / Animation_Speed)
  1481. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)) * ANGLES(RAD(2.5), RAD(0), RAD(0)), 0.4 / Animation_Speed)
  1482. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.35 * Player_Size, 0 * Player_Size) * ANGLES(RAD(10), RAD(0), RAD(45)) * RIGHTSHOULDERC0, 0.4 / Animation_Speed)
  1483. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.75 * Player_Size, -0.5 * Player_Size) * ANGLES(RAD(90), RAD(0), RAD(30)) * ANGLES(RAD(80), RAD(-10), RAD(-20)) * LEFTSHOULDERC0, 0.4 / Animation_Speed)
  1484. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1485. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1486. end
  1487. ATTACK = false
  1488. Rooted = false
  1489. end
  1490.  
  1491. function Taunt()
  1492. ATTACK = true
  1493. Rooted = true
  1494. local TAUNT = CreateSound(431839999, Torso, 7, 1, false)
  1495. repeat
  1496. Swait()
  1497. TAUNT.Parent = Torso
  1498. TAUNT.Playing = true
  1499. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1500. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(-0.02, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(25), RAD(0)), 1 / Animation_Speed)
  1501. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1502. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1503. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1504. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1505. until TAUNT.TimePosition >= 1.25
  1506. for i=0, 1.6, 0.1 / Animation_Speed do
  1507. Swait()
  1508. TAUNT.Parent = Torso
  1509. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(5)), 1 / Animation_Speed)
  1510. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(25)), 1 / Animation_Speed)
  1511. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.1, 0.5, -0.45) * ANGLES(RAD(110), RAD(0), RAD(-80)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1512. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.1, 0.15, -0.45) * ANGLES(RAD(80), RAD(0), RAD(80)) * ANGLES(RAD(0), RAD(45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1513. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1514. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1515. end
  1516. ATTACK = false
  1517. Rooted = false
  1518. end
  1519. --//=================================\\
  1520. --|| ASSIGN THINGS TO KEYS
  1521. --\\=================================//
  1522.  
  1523. Humanoid.Changed:connect(function(Jump)
  1524. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1525. Humanoid.Jump = false
  1526. end
  1527. end)
  1528.  
  1529. function MouseDown(Mouse)
  1530. if ATTACK == false then
  1531. if COMBO == 1 then
  1532. COMBO = "HALT"
  1533. Attack1()
  1534. COMBO = 2
  1535. elseif COMBO == 2 then
  1536. COMBO = "HALT"
  1537. Attack2()
  1538. COMBO = 3
  1539. elseif COMBO == 3 then
  1540. COMBO = "HALT"
  1541. Attack3()
  1542. COMBO = 1
  1543. end
  1544. end
  1545. end
  1546.  
  1547. function MouseUp(Mouse)
  1548. HOLD = false
  1549. end
  1550.  
  1551. function KeyDown(Key)
  1552. if Key == "z" and MANA >= 250 and ATTACK == false then
  1553. MANA = MANA - 250
  1554. Fireball()
  1555. end
  1556.  
  1557. if Key == "b" and MANA >= 100 and ATTACK == false then
  1558. MANA = MANA - 100
  1559. InfernalDrive()
  1560. end
  1561.  
  1562. if Key == "t" and ATTACK == false then
  1563. Taunt()
  1564. end
  1565.  
  1566. end
  1567.  
  1568. function KeyUp(Key)
  1569. end
  1570.  
  1571. Mouse.Button1Down:connect(function(NEWKEY)
  1572. MouseDown(NEWKEY)
  1573. end)
  1574. Mouse.Button1Up:connect(function(NEWKEY)
  1575. MouseUp(NEWKEY)
  1576. end)
  1577. Mouse.KeyDown:connect(function(NEWKEY)
  1578. KeyDown(NEWKEY)
  1579. end)
  1580. Mouse.KeyUp:connect(function(NEWKEY)
  1581. KeyUp(NEWKEY)
  1582. end)
  1583.  
  1584. --//=================================\\
  1585. --\\=================================//
  1586.  
  1587.  
  1588. function unanchor()
  1589. if UNANCHOR == true then
  1590. g = Character:GetChildren()
  1591. for i = 1, #g do
  1592. if g[i].ClassName == "Part" then
  1593. g[i].Anchored = false
  1594. end
  1595. end
  1596. end
  1597. end
  1598.  
  1599.  
  1600. --//=================================\\
  1601. --|| WRAP THE WHOLE SCRIPT UP
  1602. --\\=================================//
  1603.  
  1604. Humanoid.Changed:connect(function(Jump)
  1605. if Jump == "Jump" and (Disable_Jump == true or DISABLEJUMPING == true) then
  1606. Humanoid.Jump = false
  1607. end
  1608. end)
  1609.  
  1610. ANIMATE.Parent = nil
  1611. local IDLEANIMATION = Humanoid:LoadAnimation(ROBLOXIDLEANIMATION)
  1612. IDLEANIMATION:Play()
  1613.  
  1614. while true do
  1615. Swait()
  1616. SINE = SINE + CHANGE
  1617. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1618. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1619. local LV = Torso.CFrame:pointToObjectSpace(Torso.Velocity - Torso.Position)
  1620. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4 * Player_Size, Character)
  1621. local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
  1622. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1623. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.1 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1624. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1625. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1626. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1627. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1628. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1629. Neck.C1 = Clerp(Neck.C1, CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1630. RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1631. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1632. end
  1633. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1634. ANIM = "Jump"
  1635. if ATTACK == false then
  1636. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1637. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1638. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1639. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1640. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  1641. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0.3 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1642. end
  1643. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1644. ANIM = "Fall"
  1645. if ATTACK == false then
  1646. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1647. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1648. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 0.2 / Animation_Speed)
  1649. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  1650. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  1651. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  1652. end
  1653. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1654. ANIM = "Idle"
  1655. if ATTACK == false then
  1656. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(25)), 0.15 / Animation_Speed)
  1657. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.15 / Animation_Speed)
  1658. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1659. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1660. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1661. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -0.8 * Player_Size - 0.05 * COS(SINE / 12) * Player_Size, -0.01 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1662. end
  1663. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1664. ANIM = "Walk"
  1665. WALK = WALK + 1 / Animation_Speed
  1666. if WALK >= 15 - (5 * (Humanoid.WalkSpeed / 16 / Player_Size)) then
  1667. WALK = 0
  1668. if WALKINGANIM == true then
  1669. WALKINGANIM = false
  1670. elseif WALKINGANIM == false then
  1671. WALKINGANIM = true
  1672. end
  1673. end
  1674. --RightHip.C1 = Clerp(RightHip.C1, CF(0.5 * Player_Size, 0.875 * Player_Size - 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, -0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1675. --LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5 * Player_Size, 0.875 * Player_Size + 0.125 * SIN(SINE / WALKSPEEDVALUE) * Player_Size, 0.125 * COS(SINE / WALKSPEEDVALUE) * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(60 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1676. if ATTACK == false then
  1677. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, -0.2 * Player_Size + 0.05 * COS(SINE / 12) * Player_Size) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1678. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(-15 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1679. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  1680. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-60 * COS(SINE / WALKSPEEDVALUE)), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  1681. RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1682. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1 * Player_Size, -0 * Player_Size) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  1683. end
  1684. end
  1685. if #Effects2>0 then
  1686. for e=1,#Effects2 do
  1687. if Effects2[e]~=nil then
  1688. local Thing=Effects2[e]
  1689. if Thing~=nil then
  1690. local Part=Thing[1]
  1691. local Mode=Thing[2]
  1692. local Delay=Thing[3]
  1693. local IncX=Thing[4]
  1694. local IncY=Thing[5]
  1695. local IncZ=Thing[6]
  1696. local Part2=Thing[8]
  1697. if Thing[1].Transparency<=1 then
  1698. if Thing[2]=="Block1" then
  1699. Thing[1].CFrame=Thing[1].CFrame
  1700. Mesh=Thing[1].Mesh
  1701. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1702. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1703. elseif Thing[2]=="Cylinder" then
  1704. Mesh=Thing[1].Mesh
  1705. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1706. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1707. elseif Thing[2]=="Blood" then
  1708. Mesh=Thing[7]
  1709. Thing[1].CFrame=Thing[1].CFrame*CF(0,.5,0)
  1710. Mesh.Scale=Mesh.Scale+VT(Thing[4],Thing[5],Thing[6])
  1711. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1712. elseif Thing[2]=="Elec" then
  1713. Mesh=Thing[1].Mesh
  1714. Mesh.Scale=Mesh.Scale+VT(Thing[7],Thing[8],Thing[9])
  1715. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1716. elseif Thing[2]=="Disappear" then
  1717. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  1718. end
  1719. else
  1720. Part.Parent=nil
  1721. table.remove(Effects2,e)
  1722. end
  1723. end
  1724. end
  1725. end
  1726. end
  1727. unanchor()
  1728. Humanoid.MaxHealth = "inf"
  1729. Humanoid.Health = "inf"
  1730. if Rooted == false then
  1731. Disable_Jump = false
  1732. Humanoid.WalkSpeed = Speed
  1733. elseif Rooted == true then
  1734. Disable_Jump = true
  1735. Humanoid.WalkSpeed = 0
  1736. end
  1737. if MANA ~= MAXMANA then
  1738. MANA = MANA + 1
  1739. end
  1740. MANACOVER:TweenSize(UD2(1 * (MANA / MAXMANA), 0, 1, 0), "Out", "Quad", 0.1, 0.1)
  1741. MANATEXT.Text = "ENERGY ["..FLOOR(MANA).."]"
  1742. end
  1743.  
  1744. --//=================================\\
  1745. --\\=================================//
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751. --//====================================================\\--
  1752. --|| END OF SCRIPT
  1753. --\\====================================================//--
RAW Paste Data