SHARE
TWEET

He

Basykung7845 Apr 17th, 2019 80 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  2. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  3. do
  4.     print("FE Compatibility code by Basykung7845")
  5.     script.Parent = Player.Character
  6.  
  7.     --RemoteEvent for communicating
  8.     local Event = Instance.new("RemoteEvent")
  9.     Event.Name = "UserInput_Event"
  10.  
  11.     --Fake event to make stuff like Mouse.KeyDown work
  12.     local function fakeEvent()
  13.         local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  14.         t.connect = t.Connect
  15.         return t
  16.     end
  17.  
  18.     --Creating fake input objects with fake variables
  19.     local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  20.     local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  21.     local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  22.         CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  23.     end}
  24.     --Merged 2 functions into one by checking amount of arguments
  25.     CAS.UnbindAction = CAS.BindAction
  26.  
  27.     --This function will trigger the events that have been :Connect()'ed
  28.     local function te(self,ev,...)
  29.         local t = m[ev]
  30.         if t and t._fakeEvent and t.Function then
  31.             t.Function(...)
  32.         end
  33.     end
  34.     m.TrigEvent = te
  35.     UIS.TrigEvent = te
  36.  
  37.     Event.OnServerEvent:Connect(function(plr,io)
  38.         if plr~=Player then return end
  39.         if io.isMouse then
  40.             m.Target = io.Target
  41.             m.Hit = io.Hit
  42.         else
  43.             local b = io.UserInputState == Enum.UserInputState.Begin
  44.             if io.UserInputType == Enum.UserInputType.MouseButton1 then
  45.                 return m:TrigEvent(b and "Button1Down" or "Button1Up")
  46.             end
  47.             for _,t in pairs(CAS.Actions) do
  48.                 for _,k in pairs(t.Keys) do
  49.                     if k==io.KeyCode then
  50.                         t.Function(t.Name,io.UserInputState,io)
  51.                     end
  52.                 end
  53.             end
  54.             m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  55.             UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  56.         end
  57.     end)
  58.     Event.Parent = NLS([==[
  59.     local Player = game:GetService("Players").LocalPlayer
  60.     local Event = script:WaitForChild("UserInput_Event")
  61.  
  62.     local UIS = game:GetService("UserInputService")
  63.     local input = function(io,a)
  64.         if a then return end
  65.         --Since InputObject is a client-side instance, we create and pass table instead
  66.         Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  67.     end
  68.     UIS.InputBegan:Connect(input)
  69.     UIS.InputEnded:Connect(input)
  70.  
  71.     local Mouse = Player:GetMouse()
  72.     local h,t
  73.     --Give the server mouse data 30 times every second, but only if the values changed
  74.     --If player is not moving their mouse, client won't fire events
  75.     while wait(1/30) do
  76.         if h~=Mouse.Hit or t~=Mouse.Target then
  77.             h,t=Mouse.Hit,Mouse.Target
  78.             Event:FireServer({isMouse=true,Target=t,Hit=h})
  79.         end
  80.     end]==],Player.Character)
  81.     Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  82. end
  83.  
  84. script.Name = "Banisher Gun V3 / 1"
  85. --//====================================================\\--
  86. --||    CREATED BY SHACKLUSTER Edit By NameClan
  87. --\\====================================================//--
  88.  
  89. script:ClearAllChildren()
  90. wait(0.2)
  91.  
  92. local LIGHTHITSOUNDS = {"1177780949","1177781153","1177784554"}
  93. local FireSound = "904051531"
  94. local LAUGHS = {834001699,834001752,834001797,834001828}
  95. Player = owner
  96. PlayerGui = Player.PlayerGui
  97. Cam = workspace.CurrentCamera
  98. Backpack = Player.Backpack
  99. Character = Player.Character
  100. Humanoid = Character.Humanoid
  101. RootPart = Character["HumanoidRootPart"]
  102. Torso = Character["Torso"]
  103. Head = Character["Head"]
  104. RightArm = Character["Right Arm"]
  105. LeftArm = Character["Left Arm"]
  106. RightLeg = Character["Right Leg"]
  107. LeftLeg = Character["Left Leg"]
  108. local sick = Instance.new("Sound",Character)
  109. q = Character:GetChildren()
  110. for u = 1, #q do
  111. if q[u].ClassName == "Accessory" then
  112. q[u]:Destroy()
  113. elseif q[u].ClassName == "CharacterMesh" then
  114. q[u]:Destroy()
  115. end
  116. end
  117. Head.face:Destroy()
  118. Head.Mesh:Destroy()
  119. newmesh = Instance.new("SpecialMesh")
  120. newmesh.Scale = Vector3.new(1.1,1.1,1.1)
  121. newmesh.MeshId = "http://www.roblox.com/asset/?id=0"
  122. newmesh.TextureId = "http://www.roblox.com/asset/?id=0"
  123. newmesh.Parent = Head
  124.  
  125.     local function weldBetween(a, b)
  126.         local weldd = Instance.new("ManualWeld")
  127.         weldd.Part0 = a
  128.         weldd.Part1 = b
  129.         weldd.C0 = CFrame.new()
  130.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  131.         weldd.Parent = a
  132.         return weldd
  133.     end
  134. RootJoint = RootPart["RootJoint"]
  135. Neck = Torso["Neck"]
  136. RightShoulder = Torso["Right Shoulder"]
  137. LeftShoulder = Torso["Left Shoulder"]
  138. RightHip = Torso["Right Hip"]
  139. LeftHip = Torso["Left Hip"]
  140. local TIME = 0
  141. local sick = Instance.new("Sound",Torso)
  142.  
  143. IT = Instance.new
  144. CF = CFrame.new
  145. VT = Vector3.new
  146. RAD = math.rad
  147. C3 = Color3.new
  148. UD2 = UDim2.new
  149. BRICKC = BrickColor.new
  150. ANGLES = CFrame.Angles
  151. EULER = CFrame.fromEulerAnglesXYZ
  152. COS = math.cos
  153. ACOS = math.acos
  154. SIN = math.sin
  155. ASIN = math.asin
  156. ABS = math.abs
  157. MRANDOM = math.random
  158. FLOOR = math.floor
  159.  
  160.  
  161. it = Instance.new
  162.  
  163.     function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
  164.         local fp=it("Part")
  165.         fp.formFactor=formfactor
  166.         fp.Parent=parent
  167.         fp.Reflectance=reflectance
  168.         fp.Transparency=transparency
  169.         fp.CanCollide=false
  170.         fp.Locked=true
  171.         fp.BrickColor=BrickColor.new(tostring(brickcolor))
  172.         fp.Name=name
  173.         fp.Size=size
  174.         fp.Position=Character.Torso.Position
  175.         fp.Material=material
  176.         fp:BreakJoints()
  177.         return fp
  178.     end
  179.    
  180.     function mesh(Mesh,part,meshtype,meshid,offset,scale)
  181.         local mesh=it(Mesh)
  182.         mesh.Parent=part
  183.         if Mesh=="SpecialMesh" then
  184.             mesh.MeshType=meshtype
  185.             mesh.MeshId=meshid
  186.         end
  187.         mesh.Offset=offset
  188.         mesh.Scale=scale
  189.         return mesh
  190.     end
  191.    
  192.     function weld(parent,part0,part1,c0,c1)
  193.         local weld=it("Weld")
  194.         weld.Parent=parent
  195.         weld.Part0=part0
  196.         weld.Part1=part1
  197.         weld.C0=c0
  198.         weld.C1=c1
  199.         return weld
  200.     end
  201.  
  202. q = "Really black"
  203. Claw1=part(Enum.FormFactor.Custom,Character,Enum.Material.SmoothPlastic,0,0,q,"Claw",Vector3.new(0.400000006, 0.400000036, 0.400000006))
  204. Claw1weld=weld(Character,RightArm,Claw1,CFrame.new(0.25, -2.3, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00980377197, -0.0303750038, 0.719708443, -5, 3.10001451e-005, 3.09999632e-005, 3.10008145e-005, 0, 0, 0, -4, -1))
  205. mesh("SpecialMesh",Claw1,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=10681506",Vector3.new(0, 0, 0),Vector3.new(-1,-1.8,-1))
  206. Claw2=part(Enum.FormFactor.Custom,Character,Enum.Material.SmoothPlastic,0,0,q,"Claw",Vector3.new(0.400000006, 0.400000036, 0.400000006))
  207. Claw2weld=weld(Character,LeftArm,Claw2,CFrame.new(-0.25, -2.3, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00980377197, -0.0303750038, 0.719708443, 5, 3.10001451e-005, 3.09999632e-005, 3.10008145e-005, 0, 0, 0, -4, -1))
  208. mesh("SpecialMesh",Claw2,Enum.MeshType.FileMesh,"http://www.roblox.com/asset/?id=10681506",Vector3.new(0, 0, 0),Vector3.new(-1,-1.8,-1))
  209.  
  210. --//=================================\\
  211. --||          USEFUL VALUES
  212. --\\=================================//
  213.  
  214. Animation_Speed = 3
  215. local FORCERESET = false
  216. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  217. local Speed = 16
  218. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  219. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  220. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  221. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  222. local DAMAGEMULTIPLIER = 1
  223. local ANIM = "Idle"
  224. local ATTACK = false
  225. local EQUIPPED = false
  226. local HOLD = false
  227. local COMBO = 1
  228. local COMBO2 = 1
  229. local Rooted = false
  230. local SINE = 0
  231. local STAGGERHITANIM = false
  232. local STAGGERANIM = false
  233. local KEYHOLD = false
  234. local CHANGE = 2 / Animation_Speed
  235. local WALKINGANIM = false
  236. local VALUE1 = false
  237. local NOWALK = false
  238. local VALUE2 = false
  239. local INTRO = false
  240. local TRANSFORMED = false
  241. local ROBLOXIDLEANIMATION = IT("Animation")
  242. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  243. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  244. --ROBLOXIDLEANIMATION.Parent = Humanoid
  245. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  246. WEAPONGUI.Name = "BanishV3Gui"
  247. local Weapon = IT("Model")
  248. Weapon.Name = "Adds"
  249. local Effects = IT("Folder", Weapon)
  250. Effects.Name = "Effects"
  251. local ANIMATOR = Humanoid.Animator
  252. local ANIMATE = Character:FindFirstChild("Animate")
  253. local UNANCHOR = true
  254. local TOBANISH = {}
  255. local HITPLAYERSOUNDS = {--[["199149137", "199149186", "199149221", "199149235", "199149269", "199149297"--]]"263032172", "263032182", "263032200", "263032221", "263032252", "263033191"}
  256. local HITARMORSOUNDS = {"199149321", "199149338", "199149367", "199149409", "199149452"}
  257. local HITWEAPONSOUNDS = {"199148971", "199149025", "199149072", "199149109", "199149119"}
  258. local HITBLOCKSOUNDS = {"199148933", "199148947"}
  259. script.Parent = PlayerGui
  260.  
  261. --//=================================\\
  262. --\\=================================//
  263.  
  264.  
  265. --//=================================\\
  266. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  267. --\\=================================//
  268.  
  269.  
  270. Class_Name = "Beserker"
  271. Weapon_Name = "Claws"
  272.  
  273. Custom_Colors = {
  274.     Custom_Color_1 = BRICKC("Institutional white"); --1st color for the weapon.
  275.     Custom_Color_2 = BRICKC("Institutional white"); --2nd color for the weapon.
  276.  
  277.     Custom_Color_3 = BRICKC("Institutional white"); --Color for the abilities.
  278.     Custom_Color_4 = BRICKC("Institutional white"); --Color for the secondary bar.
  279.     Custom_Color_5 = BRICKC("Institutional white"); --Color for the mana bar.
  280.     Custom_Color_6 = BRICKC("Institutional white"); --Color for the health bar.
  281.     Custom_Color_7 = BRICKC("Institutional white"); --Color for the stun bar.
  282.  
  283.     Custom_Color_8 = BRICKC("Institutional white"); --Background for the mana bar.
  284.     Custom_Color_9 = BRICKC("Institutional white"); --Background for the secondary mana bar.
  285.     Custom_Color_10 = BRICKC("Institutional white"); --Background for the stun bar.
  286.     Custom_Color_11 = BRICKC("Institutional white"); --Background for the health bar.
  287.     Custom_Color_12 = BRICKC("Institutional white"); --Background for the abilities.
  288. }
  289.  
  290. Mana_Bar_Background_Transparency = 0 --Transparency for the background of the mana bar.
  291. Secondary_Mana_Bar_Background_Transparency = 0 --Transparency for the background of the secondary mana bar.
  292. Health_Bar_Background_Transparency = 0 --Transparency for the background of the health bar.
  293. Stun_Bar_Background_Transparency = 0 --Transparency for the background of the stun bar.
  294. Ability_Background_Transparency = 0  --Transparency for the background of the abilities.
  295. Stat_Background_Transparency = 0 --Transparency for the background of the stats.
  296.  
  297. Player_Size = 1 --Size of the player.
  298. Animation_Speed = 2
  299. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  300.  
  301. Enable_Gui = false --Enables or disables the Weapon Gui. Also functions as hiding or showing the Gui.
  302. Enable_Stats = false --Enables or disables stats.
  303. Put_Stats_In_Character = false --Places stats in Character.
  304. Enable_Stagger_Hit = false --Enables or disables staggering when hitting a hitbox of some sort.
  305. Play_Hitbox_Hit_Sound = true --Plays a hit sound when hitting a hitbox of some sort.
  306. Enable_Stagger = false --Enables or disables staggering.
  307. Enable_Stun = false --Enables or disables the stun mechanic.
  308. Enable_Abilities = false --Enables abilites with cooldowns and mana costs.
  309. Enable_Secondary_Bar = false --Enables the secondary mana bar, if true.
  310.  
  311. Start_Equipped = false --Starts the player equipped with their weapon.
  312. Start_Equipped_With_Equipped_Animation = false --Used in conjunction with the above option. Starts your equip animation.
  313. Can_Equip_Or_Unequip = true --Enables or disables the ability to unequip or equip your weapon.
  314. Disable_Animator = true --Disables the Animator in the humanoid.
  315. Disable_Animate = true --Disables the Animate script in the character.
  316. Disable_Moving_Arms = false --Keeps the arms from moving around.
  317. Use_Motors_Instead_Of_Welds = false --Uses motors instead of welds to disable moving arms.
  318. Walkspeed_Depends_On_Movement_Value = false --Walkspeed depends on movement value. Self-explanatory.
  319. Disable_Jump = false --Disables jumping.
  320. Use_HopperBin = true --Uses a hopperbin to do things.
  321.  
  322. Player_Size = 1 --Size of the player.
  323. Animation_Speed = 2
  324. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  325.  
  326. Cooldown_1 = 0 --Cooldowns for abilites.
  327. Cooldown_2 = 0
  328. Cooldown_3 = 0
  329. Cooldown_4 = 0
  330. Skill_1_Mana_Cost = 0 --How much mana is required to use the skill.
  331. Skill_2_Mana_Cost = 0
  332. Skill_3_Mana_Cost = 0
  333. Skill_4_Mana_Cost = 0
  334. Max_Mana = 0 --Maximum amount of mana you can have.
  335. Max_Secondary_Mana = 0 --Maximum amount of secondary mana you can have.
  336. Mana_Name = "Mana" --Name for the mana bar.
  337. Secondary_Mana_Name = "Block" --Name for the secondary mana bar.
  338. Max_Stun = 1 --Maximum amount of stun you can have.
  339. Recover_Mana = 0 --How much mana you gain.
  340. Mana_Regen_Mode = "1" --Basically switches from one mana regen system to another.
  341. Secondary_Mana_Regen_Mode = "1" --Basically switches from one secondary mana regen system to another.
  342. Stun_Lose_Mode = "1" --Basically switches from one secondary stun loss system to another.
  343. Recover_Secondary_Mana = 0 --How much secondary mana you gain.
  344. Lose_Stun = 0 --How much stun you lose.
  345. Stun_Wait = 0 --Delay between losing stun.
  346. Mana_Wait = 0 --Delay between gaining mana.
  347. Secondary_Mana_Wait = 0 --Delay between gaining secondary mana.
  348. Menu_Update_Speed = 0 --How fast the Weapon Gui will update.
  349. Constant_Update = false --Removes the delay between updating the Weapon GUI.
  350. Show_Stats = false --Hides or shows stats.
  351. Stat_Offset = 0.74 --For cosmetic purposes. {0.74, 0.78}
  352.  
  353. ArtificialHB = Instance.new("BindableEvent", script)
  354. ArtificialHB.Name = "ArtificialHB"
  355.  
  356. script:WaitForChild("ArtificialHB")
  357.  
  358. frame = Frame_Speed
  359. tf = 0
  360. allowframeloss = false
  361. tossremainder = false
  362. lastframe = tick()
  363. script.ArtificialHB:Fire()
  364.  
  365. game:GetService("RunService").Heartbeat:connect(function(s, p)
  366.     tf = tf + s
  367.     if tf >= frame then
  368.         if allowframeloss then
  369.             script.ArtificialHB:Fire()
  370.             lastframe = tick()
  371.         else
  372.             for i = 1, math.floor(tf / frame) do
  373.                 script.ArtificialHB:Fire()
  374.             end
  375.         lastframe = tick()
  376.         end
  377.         if tossremainder then
  378.             tf = 0
  379.         else
  380.             tf = tf - frame * math.floor(tf / frame)
  381.         end
  382.     end
  383. end)
  384.  
  385. --//=================================\\
  386. --\\=================================//
  387.  
  388. --//=================================\\
  389. --||          SOME FUNCTIONS
  390. --\\=================================//
  391.  
  392. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  393.     return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  394. end
  395.  
  396. function PositiveAngle(NUMBER)
  397.     if NUMBER >= 0 then
  398.         NUMBER = 0
  399.     end
  400.     return NUMBER
  401. end
  402.  
  403. function NegativeAngle(NUMBER)
  404.     if NUMBER <= 0 then
  405.         NUMBER = 0
  406.     end
  407.     return NUMBER
  408. end
  409.  
  410. function Swait(NUMBER)
  411.     if NUMBER == 0 or NUMBER == nil then
  412.         ArtificialHB.Event:wait()
  413.     else
  414.         for i = 1, NUMBER do
  415.             ArtificialHB.Event:wait()
  416.         end
  417.     end
  418. end
  419.  
  420. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  421.     local NEWMESH = IT(MESH)
  422.     if MESH == "SpecialMesh" then
  423.         NEWMESH.MeshType = MESHTYPE
  424.         if MESHID ~= "nil" and MESHID ~= "" then
  425.             NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  426.         end
  427.         if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  428.             NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  429.         end
  430.     end
  431.     NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  432.     NEWMESH.Scale = SCALE
  433.     NEWMESH.Parent = PARENT
  434.     return NEWMESH
  435. end
  436.  
  437. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  438.     local NEWPART = IT("Part")
  439.     NEWPART.formFactor = FORMFACTOR
  440.     NEWPART.Reflectance = REFLECTANCE
  441.     NEWPART.Transparency = TRANSPARENCY
  442.     NEWPART.CanCollide = false
  443.     NEWPART.Locked = true
  444.     NEWPART.Anchored = true
  445.     if ANCHOR == false then
  446.         NEWPART.Anchored = false
  447.     end
  448.     NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  449.     NEWPART.Name = NAME
  450.     NEWPART.Size = SIZE
  451.     NEWPART.Position = Torso.Position
  452.     NEWPART.Material = MATERIAL
  453.     NEWPART:BreakJoints()
  454.     NEWPART.Parent = PARENT
  455.     return NEWPART
  456. end
  457.  
  458.     local function weldBetween(a, b)
  459.         local weldd = Instance.new("ManualWeld")
  460.         weldd.Part0 = a
  461.         weldd.Part1 = b
  462.         weldd.C0 = CFrame.new()
  463.         weldd.C1 = b.CFrame:inverse() * a.CFrame
  464.         weldd.Parent = a
  465.         return weldd
  466.     end
  467.  
  468.  
  469. function QuaternionFromCFrame(cf)
  470.     local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  471.     local trace = m00 + m11 + m22
  472.     if trace > 0 then
  473.         local s = math.sqrt(1 + trace)
  474.         local recip = 0.5 / s
  475.         return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  476.     else
  477.         local i = 0
  478.         if m11 > m00 then
  479.             i = 1
  480.         end
  481.         if m22 > (i == 0 and m00 or m11) then
  482.             i = 2
  483.         end
  484.         if i == 0 then
  485.             local s = math.sqrt(m00 - m11 - m22 + 1)
  486.             local recip = 0.5 / s
  487.             return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  488.         elseif i == 1 then
  489.             local s = math.sqrt(m11 - m22 - m00 + 1)
  490.             local recip = 0.5 / s
  491.             return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  492.         elseif i == 2 then
  493.             local s = math.sqrt(m22 - m00 - m11 + 1)
  494.             local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  495.         end
  496.     end
  497. end
  498.  
  499. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  500.     local xs, ys, zs = x + x, y + y, z + z
  501.     local wx, wy, wz = w * xs, w * ys, w * zs
  502.     local xx = x * xs
  503.     local xy = x * ys
  504.     local xz = x * zs
  505.     local yy = y * ys
  506.     local yz = y * zs
  507.     local zz = z * zs
  508.     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))
  509. end
  510.  
  511. function QuaternionSlerp(a, b, t)
  512.     local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  513.     local startInterp, finishInterp;
  514.     if cosTheta >= 0.0001 then
  515.         if (1 - cosTheta) > 0.0001 then
  516.             local theta = ACOS(cosTheta)
  517.             local invSinTheta = 1 / SIN(theta)
  518.             startInterp = SIN((1 - t) * theta) * invSinTheta
  519.             finishInterp = SIN(t * theta) * invSinTheta
  520.         else
  521.             startInterp = 1 - t
  522.             finishInterp = t
  523.         end
  524.     else
  525.         if (1 + cosTheta) > 0.0001 then
  526.             local theta = ACOS(-cosTheta)
  527.             local invSinTheta = 1 / SIN(theta)
  528.             startInterp = SIN((t - 1) * theta) * invSinTheta
  529.             finishInterp = SIN(t * theta) * invSinTheta
  530.         else
  531.             startInterp = t - 1
  532.             finishInterp = t
  533.         end
  534.     end
  535.     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
  536. end
  537.  
  538. function Clerp(a, b, t)
  539.     local qa = {QuaternionFromCFrame(a)}
  540.     local qb = {QuaternionFromCFrame(b)}
  541.     local ax, ay, az = a.x, a.y, a.z
  542.     local bx, by, bz = b.x, b.y, b.z
  543.     local _t = 1 - t
  544.     return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  545. end
  546.  
  547. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  548.     local frame = IT("Frame")
  549.     frame.BackgroundTransparency = TRANSPARENCY
  550.     frame.BorderSizePixel = BORDERSIZEPIXEL
  551.     frame.Position = POSITION
  552.     frame.Size = SIZE
  553.     frame.BackgroundColor3 = COLOR
  554.     frame.BorderColor3 = BORDERCOLOR
  555.     frame.Name = NAME
  556.     frame.Parent = PARENT
  557.     return frame
  558. end
  559.  
  560.  
  561. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  562.     local label = IT("TextLabel")
  563.     label.BackgroundTransparency = 1
  564.     label.Size = UD2(1, 0, 1, 0)
  565.     label.Position = UD2(0, 0, 0, 0)
  566.     label.TextColor3 = TEXTCOLOR
  567.     label.TextStrokeTransparency = STROKETRANSPARENCY
  568.     label.TextTransparency = TRANSPARENCY
  569.     label.FontSize = TEXTFONTSIZE
  570.     label.Font = TEXTFONT
  571.     label.BorderSizePixel = BORDERSIZEPIXEL
  572.     label.TextScaled = false
  573.     label.Text = TEXT
  574.     label.Name = NAME
  575.     label.Parent = PARENT
  576.     return label
  577. end
  578.  
  579. function NoOutlines(PART)
  580.     PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  581. end
  582.  
  583. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  584.     local NEWWELD = IT(TYPE)
  585.     NEWWELD.Part0 = PART0
  586.     NEWWELD.Part1 = PART1
  587.     NEWWELD.C0 = C0
  588.     NEWWELD.C1 = C1
  589.     NEWWELD.Parent = PARENT
  590.     return NEWWELD
  591. end
  592.  
  593. local S = IT("Sound")
  594. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  595.     local NEWSOUND = nil
  596.     coroutine.resume(coroutine.create(function()
  597.         NEWSOUND = S:Clone()
  598.         NEWSOUND.Parent = PARENT
  599.         NEWSOUND.Volume = VOLUME
  600.         NEWSOUND.Pitch = PITCH
  601.         NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  602.         NEWSOUND:play()
  603.         if DOESLOOP == true then
  604.             NEWSOUND.Looped = true
  605.         else
  606.             repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  607.             NEWSOUND:remove()
  608.         end
  609.     end))
  610.     return NEWSOUND
  611. end
  612.  
  613. function CFrameFromTopBack(at, top, back)
  614.     local right = top:Cross(back)
  615.     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)
  616. end
  617.  
  618. --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})
  619. function WACKYEFFECT(Table)
  620.     local TYPE = (Table.EffectType or "Sphere")
  621.     local SIZE = (Table.Size or VT(1,1,1))
  622.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  623.     local TRANSPARENCY = (Table.Transparency or 0)
  624.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  625.     local CFRAME = (Table.CFrame or Torso.CFrame)
  626.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  627.     local ROTATION1 = (Table.RotationX or 0)
  628.     local ROTATION2 = (Table.RotationY or 0)
  629.     local ROTATION3 = (Table.RotationZ or 0)
  630.     local MATERIAL = (Table.Material or "Neon")
  631.     local COLOR = (Table.Color or C3(1,1,1))
  632.     local TIME = (Table.Time or 45)
  633.     local SOUNDID = (Table.SoundID or nil)
  634.     local SOUNDPITCH = (Table.SoundPitch or nil)
  635.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  636.     coroutine.resume(coroutine.create(function()
  637.         local PLAYSSOUND = false
  638.         local SOUND = nil
  639.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  640.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  641.             PLAYSSOUND = true
  642.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  643.         end
  644.         EFFECT.Color = COLOR
  645.         local MSH = nil
  646.         if TYPE == "Sphere" then
  647.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  648.         elseif TYPE == "Block" then
  649.             MSH = IT("BlockMesh",EFFECT)
  650.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  651.         elseif TYPE == "Wave" then
  652.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  653.         elseif TYPE == "Ring" then
  654.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  655.         elseif TYPE == "Slash" then
  656.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  657.         elseif TYPE == "Round Slash" then
  658.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  659.         elseif TYPE == "Swirl" then
  660.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  661.         elseif TYPE == "Skull" then
  662.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  663.         elseif TYPE == "Crystal" then
  664.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  665.         end
  666.         if MSH ~= nil then
  667.             local MOVESPEED = nil
  668.             if MOVEDIRECTION ~= nil then
  669.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  670.             end
  671.             local GROWTH = SIZE - ENDSIZE
  672.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  673.             if TYPE == "Block" then
  674.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  675.             else
  676.                 EFFECT.CFrame = CFRAME
  677.             end
  678.             for LOOP = 1, TIME+1 do
  679.                 Swait()
  680.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  681.                 if TYPE == "Wave" then
  682.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  683.                 end
  684.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  685.                 if TYPE == "Block" then
  686.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  687.                 else
  688.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  689.                 end
  690.                 if MOVEDIRECTION ~= nil then
  691.                     local ORI = EFFECT.Orientation
  692.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  693.                     EFFECT.Orientation = ORI
  694.                 end
  695.             end
  696.             if PLAYSSOUND == false then
  697.                 EFFECT:remove()
  698.             else
  699.                 SOUND.Stopped:Connect(function()
  700.                     EFFECT:remove()
  701.                 end)
  702.             end
  703.         else
  704.             if PLAYSSOUND == false then
  705.                 EFFECT:remove()
  706.             else
  707.                 repeat Swait() until SOUND.Playing == false
  708.                 EFFECT:remove()
  709.             end
  710.         end
  711.     end))
  712. end
  713.  
  714. function MakeForm(PART,TYPE)
  715.     if TYPE == "Cyl" then
  716.         local MSH = IT("CylinderMesh",PART)
  717.     elseif TYPE == "Ball" then
  718.         local MSH = IT("SpecialMesh",PART)
  719.         MSH.MeshType = "Sphere"
  720.     elseif TYPE == "Wedge" then
  721.         local MSH = IT("SpecialMesh",PART)
  722.         MSH.MeshType = "Wedge"
  723.     end
  724. end
  725.  
  726. local asd = Instance.new("ParticleEmitter")
  727. asd.Color = ColorSequence.new(Color3.new(0.5, 0, 0), Color3.new(.3, 0, 0))
  728. asd.LightEmission = .1
  729. asd.Texture = "http://www.roblox.com/asset/?ID=291880914"
  730. aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, 0.6),NumberSequenceKeypoint.new(1, 2)})
  731. bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, 1),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)})
  732. asd.Transparency = bbb
  733. asd.Size = aaa
  734. asd.ZOffset = .9
  735. asd.Acceleration = Vector3.new(0, -15, 0)
  736. asd.LockedToPart = false
  737. asd.EmissionDirection = "Back"
  738. asd.Lifetime = NumberRange.new(1, 2)
  739. asd.Rotation = NumberRange.new(-100, 100)
  740. asd.RotSpeed = NumberRange.new(-100, 100)
  741. asd.Speed = NumberRange.new(10)
  742. asd.Enabled = false
  743. asd.VelocitySpread = 999
  744.  
  745. function getbloody(victim,amount)
  746.     local PART = CreatePart(3, Effects, "Metal", 0, 1, "Mid gray", "Blood", victim.Size)
  747.     PART.CFrame = victim.CFrame
  748.     local HITPLAYERSOUNDS = {"356551938","264486467"}
  749.     Debris:AddItem(PART,5)
  750.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  751.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  752.     CreateSound(HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], PART, 1, (math.random(8,12)/10))
  753.     local prtcl = asd:Clone()
  754.     prtcl.Parent = PART
  755.     prtcl:Emit(amount*10)
  756. end
  757.  
  758. local Particle = IT("ParticleEmitter",nil)
  759. Particle.Enabled = false
  760. Particle.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.3,0.95),NumberSequenceKeypoint.new(1,1)})
  761. Particle.LightEmission = 0.5
  762. Particle.Rate = 150
  763. Particle.ZOffset = 1
  764. Particle.Rotation = NumberRange.new(-180, 180)
  765. Particle.RotSpeed = NumberRange.new(-180, 180)
  766. Particle.Texture = "http://www.roblox.com/asset/?id=304437537"
  767. Particle.Color = ColorSequence.new(C3(1,0,0),C3(0.4,0,0))
  768.  
  769. --ParticleEmitter({Speed = 5, Drag = 0, Size1 = 1, Size2 = 5, Lifetime1 = 1, Lifetime2 = 1.5, Parent = Torso, Emit = 100, Offset = 360, Enabled = false})
  770. function ParticleEmitter(Table)
  771.     local PRTCL = Particle:Clone()
  772.     local Speed = Table.Speed or 5
  773.     local Drag = Table.Drag or 0
  774.     local Size1 = Table.Size1 or 1
  775.     local Size2 = Table.Size2 or 5
  776.     local Lifetime1 = Table.Lifetime1 or 1
  777.     local Lifetime2 = Table.Lifetime2 or 1.5
  778.     local Parent = Table.Parent or Torso
  779.     local Emit = Table.Emit or 100
  780.     local Offset = Table.Offset or 360
  781.     local Acel = Table.Acel or VT(0,0,0)
  782.     local Enabled = Table.Enabled or false
  783.     PRTCL.Parent = Parent
  784.     PRTCL.Size = NumberSequence.new(Size1,Size2)
  785.     PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  786.     PRTCL.Speed = NumberRange.new(Speed)
  787.     PRTCL.VelocitySpread = Offset
  788.     PRTCL.Drag = Drag
  789.     PRTCL.Acceleration = Acel
  790.     if Enabled == false then
  791.         PRTCL:Emit(Emit)
  792.         Debris:AddItem(PRTCL,Lifetime2)
  793.     else
  794.         PRTCL.Enabled = true
  795.     end
  796.     return PRTCL
  797. end
  798.  
  799. function SpawnTrail(FROM,TO,BIG)
  800.     local TRAIL = CreatePart(3, Effects, "Neon", 0, 0.5, "Really red", "Trail", VT(0,0,0))
  801.     MakeForm(TRAIL,"Cyl")
  802.     local DIST = (FROM - TO).Magnitude
  803.     if BIG == true then
  804.         TRAIL.Size = VT(0.5,DIST,0.5)
  805.     else
  806.         TRAIL.Size = VT(0.25,DIST,0.25)
  807.     end
  808.     TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  809.     coroutine.resume(coroutine.create(function()
  810.         for i = 1, 5 do
  811.             Swait()
  812.             TRAIL.Transparency = TRAIL.Transparency + 0.1
  813.         end
  814.         TRAIL:remove()
  815.     end))
  816. end
  817.  
  818. Debris = game:GetService("Debris")
  819.  
  820. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  821.     local DIRECTION = CF(StartPos,EndPos).lookVector
  822.     return Raycast(StartPos, DIRECTION, Distance, Ignore)
  823. end
  824.  
  825. function turnto(position)
  826.     RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  827. end
  828.  
  829. --//=================================\\
  830. --||          RESIZE PLAYER
  831. --\\=================================//
  832.  
  833. if Player_Size ~= 1 then
  834. RootPart.Size = RootPart.Size * Player_Size
  835. Torso.Size = Torso.Size * Player_Size
  836. Head.Size = Head.Size * Player_Size
  837. RightArm.Size = RightArm.Size * Player_Size
  838. LeftArm.Size = LeftArm.Size * Player_Size
  839. RightLeg.Size = RightLeg.Size * Player_Size
  840. LeftLeg.Size = LeftLeg.Size * Player_Size
  841. RootJoint.Parent = RootPart
  842. Neck.Parent = Torso
  843. RightShoulder.Parent = Torso
  844. LeftShoulder.Parent = Torso
  845. RightHip.Parent = Torso
  846. LeftHip.Parent = Torso
  847.    
  848. RootJoint.C0 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  849.     RootJoint.C1 = ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0))
  850.     Neck.C0 = NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  851.     Neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-90), RAD(0), RAD(180))
  852.     RightShoulder.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0
  853.     LeftShoulder.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0
  854.     if Disable_Moving_Arms == false then
  855.         RightShoulder.C1 = ANGLES(0, RAD(90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  856.         LeftShoulder.C1 = ANGLES(0, RAD(-90), 0) * CF(0 * Player_Size, 0.5 * Player_Size, -0.5)
  857.     else
  858.         RightShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  859.         LeftShoulder.C1 = CF(0 * Player_Size, 0.5 * Player_Size, 0 * Player_Size)
  860.     end
  861.     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))
  862.     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))
  863.     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))
  864.     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))
  865. end
  866.  
  867.  
  868. --//=================================\\
  869. --\\=================================//
  870.  
  871. --//=================================\\
  872. --||         WEAPON CREATION
  873. --\\=================================//
  874.  
  875. local PRT = CreatePart(3, char, "Fabric", 0, 0, "", "The Mask", VT(1,1,1),false)
  876. PRT.Color = C3(0,0,0)
  877. local MaskWeld = CreateWeldOrSnapOrMotor("Weld", hed, hed, PRT, CF(0,0.2,0), CF(0, 0.15, 0))
  878. CreateMesh("SpecialMesh", PRT, "FileMesh", "62146989", "145633085", VT(1.1,1.1,1.1)*1.05, VT(0,0,0))
  879.  
  880. function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
  881.     local TORSO = Torso
  882.     local HUM = Humanoid
  883.     if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
  884.         coroutine.wrap(function()
  885.             VT = Vector3.new
  886.             MRANDOM = math.random
  887.             local A = TIME
  888.             local B = INTENSITY
  889.             local C = true
  890.             local HUMANOID = Humanoid
  891.             local TIMER = A or 35
  892.             local SHAKE = B or 5
  893.             local FADE = C or true
  894.             if HUMANOID then
  895.                 local FADER = SHAKE / TIMER
  896.                 for i = 1, TIMER do
  897.                     wait()
  898.                     HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
  899.                 end
  900.                 HUMANOID.CameraOffset = VT(0, 0, 0)
  901.             end
  902.  
  903.         end)()
  904.     end
  905. end
  906.  
  907.  
  908. local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Hood", VT(1,1,1),false)
  909. PRT.Color = C3(0,0,0)
  910. local HoodWeld = CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.2,0), CF(0, 0, 0))
  911. CreateMesh("SpecialMesh", PRT, "FileMesh", "76062497", "", VT(1,1,1)*1.05, VT(0,0,0))
  912. local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Scarf", VT(1,1,1),false)
  913. PRT.Color = C3(0,0,0)
  914.  
  915. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
  916. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
  917. MakeForm(Part,"Wedge")
  918.  
  919. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
  920. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  921. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  922. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
  923. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  924. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
  925. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
  926. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  927. local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
  928. CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  929.  
  930. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
  931. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
  932. MakeForm(Part,"Wedge")
  933.  
  934. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
  935. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  936. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  937. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
  938. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  939. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
  940. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
  941. CreateWeldOrSnapOrMotor("Weld", LeftArm, LeftArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  942. local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
  943. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  944.  
  945. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1.1,1,0.525),false)
  946. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(-0.75, 0.51, 0) * ANGLES(RAD(180), RAD(-90), RAD(0)), CF(0, 0, 0))
  947. MakeForm(Part,"Wedge")
  948.  
  949. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(1,1,1.2),false)
  950. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  951. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  952. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(45)), CF(0, 0, 0))
  953. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Stone grey", "Metal", VT(0.3,1.7,1.15),false)
  954. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-45)), CF(0, 0, 0))
  955. local Part = CreatePart(3, Weapon, "DiamondPlate", 0, 0, "Dark stone grey", "Metal", VT(0.8,0.8,1.225),false)
  956. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Part, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  957. local Eon = CreatePart(3, Weapon, "Neon", 0, 0, "Really red", "Eon", VT(0.5,0.5,1.25),false)
  958. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, Eon, CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  959.  
  960. --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})
  961. function WACKYEFFECT(Table)
  962.     local TYPE = (Table.EffectType or "Sphere")
  963.     local SIZE = (Table.Size or VT(1,1,1))
  964.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  965.     local TRANSPARENCY = (Table.Transparency or 0)
  966.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  967.     local CFRAME = (Table.CFrame or Torso.CFrame)
  968.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  969.     local ROTATION1 = (Table.RotationX or 0)
  970.     local ROTATION2 = (Table.RotationY or 0)
  971.     local ROTATION3 = (Table.RotationZ or 0)
  972.     local MATERIAL = (Table.Material or "Neon")
  973.     local COLOR = (Table.Color or C3(1,1,1))
  974.     local TIME = (Table.Time or 45)
  975.     local SOUNDID = (Table.SoundID or nil)
  976.     local SOUNDPITCH = (Table.SoundPitch or nil)
  977.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  978.     coroutine.resume(coroutine.create(function()
  979.         local PLAYSSOUND = false
  980.         local SOUND = nil
  981.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Really red"), "Effect", VT(1,1,1), true)
  982.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  983.             PLAYSSOUND = true
  984.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  985.         end
  986.         EFFECT.Color = COLOR
  987.         local MSH = nil
  988.         if TYPE == "Sphere" then
  989.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  990.         elseif TYPE == "Block" then
  991.             MSH = IT("BlockMesh",EFFECT)
  992.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  993.         elseif TYPE == "Wave" then
  994.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  995.         elseif TYPE == "Ring" then
  996.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  997.         elseif TYPE == "Slash" then
  998.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  999.         elseif TYPE == "Round Slash" then
  1000.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1001.         elseif TYPE == "Swirl" then
  1002.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1003.         elseif TYPE == "Skull" then
  1004.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1005.         elseif TYPE == "Crystal" then
  1006.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1007.         end
  1008.         if MSH ~= nil then
  1009.             local MOVESPEED = nil
  1010.             if MOVEDIRECTION ~= nil then
  1011.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1012.             end
  1013.             local GROWTH = SIZE - ENDSIZE
  1014.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1015.             if TYPE == "Block" then
  1016.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1017.             else
  1018.                 EFFECT.CFrame = CFRAME
  1019.             end
  1020.             for LOOP = 1, TIME+1 do
  1021.                 Swait()
  1022.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  1023.                 if TYPE == "Wave" then
  1024.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1025.                 end
  1026.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1027.                 if TYPE == "Block" then
  1028.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1029.                 else
  1030.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1031.                 end
  1032.                 if MOVEDIRECTION ~= nil then
  1033.                     local ORI = EFFECT.Orientation
  1034.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1035.                     EFFECT.Orientation = ORI
  1036.                 end
  1037.             end
  1038.             if PLAYSSOUND == false then
  1039.                 EFFECT:remove()
  1040.             else
  1041.                 SOUND.Stopped:Connect(function()
  1042.                     EFFECT:remove()
  1043.                 end)
  1044.             end
  1045.         else
  1046.             if PLAYSSOUND == false then
  1047.                 EFFECT:remove()
  1048.             else
  1049.                 repeat Swait() until SOUND.Playing == false
  1050.                 EFFECT:remove()
  1051.             end
  1052.         end
  1053.     end))
  1054. end
  1055.  
  1056.  
  1057. function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
  1058.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
  1059.     local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "559831844", "", SIZE, VT(0, 0, 0))
  1060.     wave.CFrame = CFRAME
  1061.     coroutine.resume(coroutine.create(function(PART)
  1062.         for i = 1, WAIT do
  1063.             Swait()
  1064.             mesh.Scale = mesh.Scale + GROW
  1065.             if DOESROT == true then
  1066.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
  1067.             end
  1068.             wave.Transparency = wave.Transparency + 0.5 / WAIT
  1069.             if wave.Transparency > 0.99 then
  1070.                 wave:remove()
  1071.             end
  1072.         end
  1073.     end))
  1074. end
  1075.  
  1076. function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
  1077.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
  1078.     local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
  1079.     wave.CFrame = CFRAME
  1080.     coroutine.resume(coroutine.create(function(PART)
  1081.         for i = 1, WAIT do
  1082.             Swait()
  1083.             mesh.Scale = mesh.Scale + GROW
  1084.             mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
  1085.             if DOESROT == true then
  1086.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
  1087.             end
  1088.             wave.Transparency = wave.Transparency + 0.5 / WAIT
  1089.             if wave.Transparency > 0.99 then
  1090.                 wave:remove()
  1091.             end
  1092.         end
  1093.     end))
  1094. end
  1095.  
  1096. --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})
  1097. function WACKYEFFECT(Table)
  1098.     local TYPE = (Table.EffectType or "Sphere")
  1099.     local SIZE = (Table.Size or VT(1,1,1))
  1100.     local ENDSIZE = (Table.Size2 or VT(0,0,0))
  1101.     local TRANSPARENCY = (Table.Transparency or 0)
  1102.     local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1103.     local CFRAME = (Table.CFrame or Torso.CFrame)
  1104.     local MOVEDIRECTION = (Table.MoveToPos or nil)
  1105.     local ROTATION1 = (Table.RotationX or 0)
  1106.     local ROTATION2 = (Table.RotationY or 0)
  1107.     local ROTATION3 = (Table.RotationZ or 0)
  1108.     local MATERIAL = (Table.Material or "Neon")
  1109.     local COLOR = (Table.Color or C3(1,1,1))
  1110.     local TIME = (Table.Time or 45)
  1111.     local SOUNDID = (Table.SoundID or nil)
  1112.     local SOUNDPITCH = (Table.SoundPitch or nil)
  1113.     local SOUNDVOLUME = (Table.SoundVolume or nil)
  1114.     coroutine.resume(coroutine.create(function()
  1115.         local PLAYSSOUND = false
  1116.         local SOUND = nil
  1117.         local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1118.         if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1119.             PLAYSSOUND = true
  1120.             SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1121.         end
  1122.         EFFECT.Color = COLOR
  1123.         local MSH = nil
  1124.         if TYPE == "Sphere" then
  1125.             MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1126.         elseif TYPE == "Block" then
  1127.             MSH = IT("BlockMesh",EFFECT)
  1128.             MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1129.         elseif TYPE == "Wave" then
  1130.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1131.         elseif TYPE == "Ring" then
  1132.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1133.         elseif TYPE == "Slash" then
  1134.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1135.         elseif TYPE == "Round Slash" then
  1136.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1137.         elseif TYPE == "Swirl" then
  1138.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1139.         elseif TYPE == "Skull" then
  1140.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1141.         elseif TYPE == "Crystal" then
  1142.             MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1143.         end
  1144.         if MSH ~= nil then
  1145.             local MOVESPEED = nil
  1146.             if MOVEDIRECTION ~= nil then
  1147.                 MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1148.             end
  1149.             local GROWTH = SIZE - ENDSIZE
  1150.             local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1151.             if TYPE == "Block" then
  1152.                 EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1153.             else
  1154.                 EFFECT.CFrame = CFRAME
  1155.             end
  1156.             for LOOP = 1, TIME+1 do
  1157.                 Swait()
  1158.                 MSH.Scale = MSH.Scale - GROWTH/TIME
  1159.                 if TYPE == "Wave" then
  1160.                     MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1161.                 end
  1162.                 EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1163.                 if TYPE == "Block" then
  1164.                     EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1165.                 else
  1166.                     EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1167.                 end
  1168.                 if MOVEDIRECTION ~= nil then
  1169.                     local ORI = EFFECT.Orientation
  1170.                     EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1171.                     EFFECT.Orientation = ORI
  1172.                 end
  1173.             end
  1174.             if PLAYSSOUND == false then
  1175.                 EFFECT:remove()
  1176.             else
  1177.                 SOUND.Stopped:Connect(function()
  1178.                     EFFECT:remove()
  1179.                 end)
  1180.             end
  1181.         else
  1182.             if PLAYSSOUND == false then
  1183.                 EFFECT:remove()
  1184.             else
  1185.                 repeat Swait() until SOUND.Playing == false
  1186.                 EFFECT:remove()
  1187.             end
  1188.         end
  1189.     end))
  1190. end
  1191.  
  1192. function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
  1193.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
  1194.     local mesh
  1195.     if KIND == "Base" then
  1196.         mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
  1197.     elseif KIND == "Thin" then
  1198.         mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
  1199.     elseif KIND == "Round" then
  1200.         mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
  1201.     end
  1202.     wave.CFrame = CFRAME
  1203.     coroutine.resume(coroutine.create(function(PART)
  1204.         for i = 1, WAIT do
  1205.             Swait()
  1206.             mesh.Scale = mesh.Scale + GROW / 10
  1207.             wave.Transparency = wave.Transparency + 0.5 / WAIT
  1208.             if wave.Transparency > 0.99 then
  1209.                 wave:remove()
  1210.             end
  1211.         end
  1212.     end))
  1213. end
  1214.  
  1215. function CreateRing(SIZE, DOESROT, ROT, WAIT, CFRAME, COLOR, GROW)
  1216.     local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
  1217.     local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "559831844", "", SIZE, VT(0, 0, 0))
  1218.     wave.CFrame = CFRAME
  1219.     coroutine.resume(coroutine.create(function(PART)
  1220.         for i = 1, WAIT do
  1221.             Swait()
  1222.             mesh.Scale = mesh.Scale + GROW
  1223.             if DOESROT == true then
  1224.                 wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
  1225.             end
  1226.             wave.Transparency = wave.Transparency + 0.5 / WAIT
  1227.             if wave.Transparency > 0.99 then
  1228.                 wave:remove()
  1229.             end
  1230.         end
  1231.     end))
  1232. end
  1233. function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
  1234.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
  1235.     local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
  1236.     wave.CFrame = CFRAME
  1237.     coroutine.resume(coroutine.create(function(PART)
  1238.         for i = 1, WAIT do
  1239.             Swait()
  1240.             mesh.Scale = mesh.Scale + GROW
  1241.             wave.Transparency = wave.Transparency + 1 / WAIT
  1242.             if wave.Transparency > 0.99 then
  1243.                 wave:remove()
  1244.             end
  1245.         end
  1246.     end))
  1247. end
  1248.  
  1249. function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
  1250.     local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
  1251.     local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
  1252.     wave.CFrame = CFRAME
  1253.     coroutine.resume(coroutine.create(function(PART)
  1254.         for i = 1, WAIT do
  1255.             Swait()
  1256.             mesh.Scale = mesh.Scale + GROW
  1257.             wave.Transparency = wave.Transparency + 1 / WAIT
  1258.             if wave.Transparency > 0.99 then
  1259.                 wave:remove()
  1260.             end
  1261.         end
  1262.     end))
  1263. end
  1264.  
  1265.  
  1266. local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
  1267. local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, RightArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
  1268. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  1269. MakeForm(Part,"Wedge")
  1270. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
  1271. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
  1272. MakeForm(Part,"Wedge")
  1273. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
  1274. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
  1275. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1276. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
  1277. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1278. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
  1279. MakeForm(Part,"Cyl")
  1280. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1281. for i = 1, 8 do
  1282.     local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
  1283.     CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
  1284. end
  1285. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
  1286. MakeForm(Part,"Cyl")
  1287. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1288. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
  1289. MakeForm(Part,"Ball")
  1290. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1291. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
  1292. MakeForm(Part,"Wedge")
  1293. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
  1294. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
  1295. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1296. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
  1297. MakeForm(Part,"Cyl")
  1298. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1299. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
  1300. MakeForm(Part,"Cyl")
  1301. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1302. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
  1303. MakeForm(Part,"Cyl")
  1304. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1305. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  1306. MakeForm(Part,"Wedge")
  1307. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
  1308. local LASTPART = Handle
  1309. for i = 1, 10 do
  1310.     if LASTPART == Handle then
  1311.         local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
  1312.         LASTPART = Part
  1313.         CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1314.     else
  1315.         local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
  1316.         CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
  1317.         LASTPART = Part
  1318.     end
  1319. end
  1320.  
  1321. local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
  1322. MakeForm(Barrel,"Cyl")
  1323. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1324. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
  1325. MakeForm(Part,"Cyl")
  1326. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
  1327. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
  1328. MakeForm(Part,"Wedge")
  1329. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  1330. local Hole2 = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
  1331. MakeForm(Hole2,"Cyl")
  1332. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole2, CF(0, 0.98, 0), CF(0, 0, 0))
  1333. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
  1334. local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  1335. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
  1336. local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
  1337. local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  1338. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
  1339. coroutine.resume(coroutine.create(function()
  1340.     while wait() do
  1341.         GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
  1342.         GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
  1343.     end
  1344. end))
  1345.  
  1346. ParticleEmitter({Speed = 0.2, Drag = 0, Size1 = 0.1, Size2 = 0, Lifetime1 = 0.3, Lifetime2 = 0.5, Parent = Hole2, Emit = 100, Offset = 360, Enabled = true, Acel = VT(0,5,0)})
  1347. --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)})
  1348.  
  1349. for _, c in pairs(Weapon:GetDescendants()) do
  1350.     if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  1351.         c.Material = "Glass"
  1352.         c.Color = C3(0,0,0)
  1353.     elseif c.ClassName == "Part" and c.Name == "Eye" then
  1354.         c.Color = C3(1,0,0)
  1355.         c.Material = "Neon"
  1356.     end
  1357. end
  1358.  
  1359. Weapon.Parent = Character
  1360. for _, c in pairs(Weapon:GetChildren()) do
  1361.     if c.ClassName == "Part" then
  1362.         c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1363.     end
  1364. end
  1365.  
  1366. function ParticleEmitter(Table)
  1367.     local PRTCL = Particle:Clone()
  1368.     local Speed = Table.Speed or 5
  1369.     local Drag = Table.Drag or 0
  1370.     local Size1 = Table.Size1 or 1
  1371.     local Size2 = Table.Size2 or 5
  1372.     local Lifetime1 = Table.Lifetime1 or 1
  1373.     local Lifetime2 = Table.Lifetime2 or 1.5
  1374.     local Parent = Table.Parent or Torso
  1375.     local Emit = Table.Emit or 100
  1376.     local Offset = Table.Offset or 360
  1377.     local Acel = Table.Acel or VT(0,0,0)
  1378.     local Enabled = Table.Enabled or false
  1379.     PRTCL.Parent = Parent
  1380.     PRTCL.Size = NumberSequence.new(Size1,Size2)
  1381.     PRTCL.Lifetime = NumberRange.new(Lifetime1,Lifetime2)
  1382.     PRTCL.Speed = NumberRange.new(Speed)
  1383.     PRTCL.VelocitySpread = Offset
  1384.     PRTCL.Drag = Drag
  1385.     PRTCL.Acceleration = Acel
  1386.     if Enabled == false then
  1387.         PRTCL:Emit(Emit)
  1388.         Debris:AddItem(PRTCL,Lifetime2)
  1389.     else
  1390.         PRTCL.Enabled = true
  1391.     end
  1392.     return PRTCL
  1393. end
  1394.  
  1395. local Handle = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.6,0.2),false)
  1396. local RightArmGrasp = CreateWeldOrSnapOrMotor("Weld", Handle, LeftArm, Handle, CF(0,-1, 0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0.21, 0))
  1397. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  1398. MakeForm(Part,"Wedge")
  1399. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.3, 0.2) * ANGLES(RAD(0), RAD(180), RAD(0)), CF(0, 0, 0))
  1400. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.3,0.2),false)
  1401. MakeForm(Part,"Wedge")
  1402. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.4, 0) * ANGLES(RAD(0), RAD(0), RAD(180)), CF(0, 0, 0))
  1403. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.3,0.3),false)
  1404. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.5, 0.2) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1405. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.5,0.5),false)
  1406. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1407. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.4,0.4,0.4),false)
  1408. MakeForm(Part,"Cyl")
  1409. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1410. for i = 1, 8 do
  1411.     local Piece = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0,0.35,0.41),false)
  1412.     CreateWeldOrSnapOrMotor("Weld", Handle, Part, Piece, CF(0, 0, 0) * ANGLES(RAD(0), RAD((360/8)*i), RAD(0)), CF(0, 0, 0))
  1413. end
  1414. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.38,0.41,0.38),false)
  1415. MakeForm(Part,"Cyl")
  1416. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1417. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.37,0.5,0.37),false)
  1418. MakeForm(Part,"Ball")
  1419. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.3) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1420. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.7,0.4),false)
  1421. MakeForm(Part,"Wedge")
  1422. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.7, 0.5) * ANGLES(RAD(90), RAD(180), RAD(180)), CF(0, 0, 0))
  1423. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.3,0.4,0.2),false)
  1424. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  1425. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.35,0.35,0.35),false)
  1426. MakeForm(Part,"Cyl")
  1427. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1428. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.5),false)
  1429. MakeForm(Part,"Cyl")
  1430. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1431. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.5,0.1,0.45),false)
  1432. MakeForm(Part,"Cyl")
  1433. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 1.1) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1434. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.2,0.5,0.2),false)
  1435. MakeForm(Part,"Wedge")
  1436. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.55, 0.2) * ANGLES(RAD(-135), RAD(0), RAD(0)), CF(0, -0.3, 0))
  1437. local LASTPART = Handle
  1438. for i = 1, 10 do
  1439.     if LASTPART == Handle then
  1440.         local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.2,0),false)
  1441.         LASTPART = Part
  1442.         CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.1, 0.2) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1443.     else
  1444.         local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.1,0.05,0),false)
  1445.         CreateWeldOrSnapOrMotor("Weld", Handle, LASTPART, Part, CF(0, 0.025, 0) * ANGLES(RAD(8), RAD(0), RAD(0)), CF(0, -0.025, 0))
  1446.         LASTPART = Part
  1447.     end
  1448. end
  1449.  
  1450. local Barrel = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.15,2,0.15),false)
  1451. MakeForm(Barrel,"Cyl")
  1452. CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Barrel, CF(0, -0.6, 1.8) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, 0, 0))
  1453. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0.25,1,0.25),false)
  1454. MakeForm(Part,"Cyl")
  1455. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, -0.6, 0), CF(0, 0, 0))
  1456. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0.1,0.2),false)
  1457. MakeForm(Part,"Wedge")
  1458. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Part, CF(0, 0.945, 0.1) * ANGLES(RAD(180), RAD(0), RAD(0)), CF(0, 0, 0))
  1459. local Hole = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Eye", VT(0.125,0,0.125),false)
  1460. MakeForm(Hole,"Cyl")
  1461. CreateWeldOrSnapOrMotor("Weld", Handle, Barrel, Hole, CF(0, 0.98, 0), CF(0, 0, 0))
  1462. local Part = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Part", VT(0,0,0),false)
  1463. local GEARWELD = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  1464. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.8,0.8,1.5), VT(0,0,0.2))
  1465. local Part = CreatePart(3, Weapon, "Metal", 0, 0.5, "Mid gray", "Eye", VT(0,0,0),false)
  1466. local GEARWELD2 = CreateWeldOrSnapOrMotor("Weld", Handle, Handle, Part, CF(0, -0.6, 0.7), CF(0, 0, 0))
  1467. CreateMesh("SpecialMesh", Part, "FileMesh", 156292343, "", VT(0.9,0.9,0.3), VT(0,0,0.2))
  1468. coroutine.resume(coroutine.create(function()
  1469.     while wait() do
  1470.         GEARWELD.C0 = GEARWELD.C0 * ANGLES(RAD(0), RAD(0), RAD(5))
  1471.         GEARWELD2.C0 = GEARWELD2.C0 * ANGLES(RAD(0), RAD(0), RAD(-5))
  1472.     end
  1473. end))
  1474.  
  1475. 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)})
  1476. --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)})
  1477.  
  1478. for _, c in pairs(Weapon:GetDescendants()) do
  1479.     if c.ClassName == "Part" and c.Name ~= "Eye" and c.Parent ~= Effects and c.Parent.Parent ~= Effects then
  1480.         c.Material = "Glass"
  1481.         c.Color = C3(0,0,0)
  1482.     elseif c.ClassName == "Part" and c.Name == "Eye" then
  1483.         c.Color = C3(1,0,0)
  1484.         c.Material = "Neon"
  1485.     end
  1486. end
  1487.  
  1488. Weapon.Parent = Character
  1489. for _, c in pairs(Weapon:GetChildren()) do
  1490.     if c.ClassName == "Part" then
  1491.         c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  1492.     end
  1493. end
  1494.  
  1495. local SKILLTEXTCOLOR = C3(1,0,0)
  1496. local SKILLFONT = "Antique"
  1497. local SKILLTEXTSIZE = 7
  1498.  
  1499. Humanoid.Died:connect(function()
  1500.     ATTACK = true
  1501. end)
  1502.  
  1503. 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")
  1504. --[[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")
  1505. 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")
  1506. 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")
  1507. 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")
  1508. ]]
  1509. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Banisher Bullet", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 1")
  1510. --[[local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Ability 2", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 2")
  1511. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Ability 3", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 3")
  1512. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Ability 4", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 4")
  1513. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Mercy", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0.7, "Text 5")
  1514. ]]
  1515. function printbye(Name)
  1516.     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, "}
  1517.     warn(MESSAGES[MRANDOM(1,#MESSAGES)]..Name..".")
  1518. end
  1519.  
  1520. workspace.ChildAdded:connect(function(instance)
  1521.     for BANISH = 1, #TOBANISH do
  1522.         if TOBANISH[BANISH] ~= nil then
  1523.             if instance.Name == TOBANISH[BANISH] then
  1524.                 coroutine.resume(coroutine.create(function()
  1525.                     printbye(instance.Name)
  1526.                     instance:ClearAllChildren()
  1527.                     Debris:AddItem(instance,0.0005)
  1528.                 end))
  1529.             end
  1530.         end
  1531.     end
  1532. end)
  1533.  
  1534. --//=================================\\
  1535. --||            DAMAGING
  1536. --\\=================================//
  1537.  
  1538. function Banish(Foe)
  1539.     if Foe then
  1540.         coroutine.resume(coroutine.create(function()
  1541.             --if game.Players:FindFirstChild(Foe.Name) then
  1542.                 table.insert(TOBANISH,Foe.Name)
  1543.                 printbye(Foe.Name)
  1544.             --end
  1545.             Foe.Archivable = true
  1546.             local CLONE = Foe:Clone()
  1547.             Foe:Destroy()
  1548.             CLONE.Parent = Effects
  1549.             CLONE:BreakJoints()
  1550.             local MATERIALS = {"Glass","Neon"}
  1551.             for _, c in pairs(CLONE:GetDescendants()) do
  1552.                 if c:IsA("BasePart") then
  1553.                     if c.Name == "Torso" or c.Name == "UpperTorso" or c == CLONE.PrimaryPart then
  1554.                         CreateSound(340722848, c, 10, 1, false)
  1555.                     end
  1556.                     c.Anchored = true
  1557.                     c.Transparency = c.Transparency + 0.2
  1558.                     c.Material = MATERIALS[MRANDOM(1,2)]
  1559.                     c.Color = C3(1,0,0)
  1560.                     if c.ClassName == "MeshPart" then
  1561.                         c.TextureID = ""
  1562.                     end
  1563.                     if c:FindFirstChildOfClass("SpecialMesh") then
  1564.                         c:FindFirstChildOfClass("SpecialMesh").TextureId = ""
  1565.                     end
  1566.                     if c:FindFirstChildOfClass("Decal") then
  1567.                         c:FindFirstChildOfClass("Decal"):remove()
  1568.                     end
  1569.                     c.Name = "Banished"
  1570.                     c.CanCollide = false
  1571.                 else
  1572.                     c:remove()
  1573.                 end
  1574.             end
  1575.             local A = false
  1576.             for i = 1, 35 do
  1577.                 if A == false then
  1578.                     A = true
  1579.                 elseif A == true then
  1580.                     A = false
  1581.                 end
  1582.                 for _, c in pairs(CLONE:GetDescendants()) do
  1583.                     if c:IsA("BasePart") then
  1584.                         c.Anchored = true
  1585.                         c.Material = MATERIALS[MRANDOM(1,2)]
  1586.                         c.Transparency = c.Transparency + 0.8/35
  1587.                         if A == false then
  1588.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)
  1589.                         elseif A == true then
  1590.                             c.CFrame = c.CFrame*CF(MRANDOM(-45,45)/45,MRANDOM(-45,45)/45,MRANDOM(-45,45)/45)                       
  1591.                         end
  1592.                     end
  1593.                 end
  1594.                 Swait()
  1595.             end
  1596.             CLONE:remove()
  1597.         end))
  1598.     end
  1599. end
  1600.  
  1601. function ApplyAoE(POSITION,RANGE,ISBANISH)
  1602.     local CHILDREN = workspace:GetDescendants()
  1603.     for index, CHILD in pairs(CHILDREN) do
  1604.         if CHILD.ClassName == "Model" and CHILD ~= Character then
  1605.             local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  1606.             if HUM then
  1607.                 local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  1608.                 if TORSO then
  1609.                     if (TORSO.Position - POSITION).Magnitude <= RANGE then
  1610.                         if ISBANISH == true then
  1611.                             Banish(CHILD)
  1612.                         else
  1613.                             if ISBANISH == "Gravity" then
  1614.                                 HUM.PlatformStand = true
  1615.                                 if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  1616.                                     local grav = Instance.new("BodyPosition",TORSO)
  1617.                                     grav.D = 15
  1618.                                     grav.P = 20000
  1619.                                     grav.maxForce = Vector3.new(math.huge,math.huge,math.huge)
  1620.                                     grav.position = TORSO.Position
  1621.                                     grav.Name = "V3BanishForce"..Player.Name
  1622.                                 else
  1623.                                     TORSO:FindFirstChild("V3BanishForce"..Player.Name).position = TORSO.Position+VT(0,0.3,0)
  1624.                                     TORSO.RotVelocity = VT(MRANDOM(-25,25),MRANDOM(-25,25),MRANDOM(-25,25))
  1625.                                 end
  1626.                             else
  1627.                                 HUM.PlatformStand = false
  1628.                             end
  1629.                         end
  1630.                     elseif ISBANISH == "Gravity" then
  1631.                         if TORSO:FindFirstChild("V3BanishForce"..Player.Name) then
  1632.                             TORSO:FindFirstChild("V3BanishForce"..Player.Name):remove()
  1633.                             HUM.PlatformStand = false
  1634.                         end
  1635.                     end
  1636.                 end
  1637.             end
  1638.         end
  1639.     end
  1640. end
  1641.  
  1642. function StatLabel(LABELTYPE, CFRAME, TEXT, COLOR)
  1643.     local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1644.     STATPART.CFrame = CF(CFRAME.p + VT(0, 1.5, 0))
  1645.     local BODYGYRO = IT("BodyGyro", STATPART)
  1646.     local BODYPOSITION = IT("BodyPosition", STATPART)
  1647.     BODYPOSITION.P = 2000
  1648.     BODYPOSITION.D = 100
  1649.     BODYPOSITION.maxForce = VT(math.huge, math.huge, math.huge)
  1650.     if LABELTYPE == "Normal" then
  1651.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 6, MRANDOM(-2, 2))
  1652.     elseif LABELTYPE == "Debuff" then
  1653.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2, 2), 8, MRANDOM(-2, 2))
  1654.     elseif LABELTYPE == "Interruption" then
  1655.         BODYPOSITION.position = STATPART.Position + VT(MRANDOM(-2,2), 8, MRANDOM(-2, 2))
  1656.     end
  1657.     game:GetService("Debris"):AddItem(STATPART ,5)
  1658.     local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  1659.     BILLBOARDGUI.Adornee = STATPART
  1660.     BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  1661.     BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  1662.     BILLBOARDGUI.AlwaysOnTop = false
  1663.     local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  1664.     TEXTLABEL.BackgroundTransparency = 1
  1665.     TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  1666.     TEXTLABEL.Text = TEXT
  1667.     TEXTLABEL.Font = "SourceSans"
  1668.     TEXTLABEL.FontSize="Size42"
  1669.     TEXTLABEL.TextColor3 = COLOR
  1670.     TEXTLABEL.TextStrokeTransparency = 0
  1671.     TEXTLABEL.TextScaled = true
  1672.     TEXTLABEL.TextWrapped = true
  1673.     coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  1674.         wait(0.2)
  1675.         for i=1, 5 do
  1676.             wait()
  1677.             THEBODYPOSITION.Position = THEPART.Position - VT(0, 0.5 ,0)
  1678.         end
  1679.         wait(1.2)
  1680.         for i=1, 5 do
  1681.             wait()
  1682.             THETEXTLABEL.TextTransparency = THETEXTLABEL.TextTransparency + 0.2
  1683.             THETEXTLABEL.TextStrokeTransparency = THETEXTLABEL.TextStrokeTransparency + 0.2
  1684.             THEBODYPOSITION.position = THEPART.Position + VT(0, 0.5, 0)
  1685.         end
  1686.         THEPART.Parent = nil
  1687.     end),STATPART, BODYPOSITION, TEXTLABEL)
  1688. end
  1689.  
  1690. function IncreaseOrDecreaseStat(LOCATION, STAT, AMOUNT, DURATION, SHOWTHESTAT)
  1691.     if LOCATION:FindFirstChild("Stats") ~= nil then
  1692.         if LOCATION.Stats:FindFirstChild("Block") ~= nil then
  1693.             if LOCATION.Stats:FindFirstChild("Block").Value == true then
  1694.                 return
  1695.             end
  1696.         end
  1697.         if LOCATION.Stats:FindFirstChild("ChangeStat") ~= nil and LOCATION.Stats:FindFirstChild("Block").Value == false then
  1698.             local NewStatChange = IT("NumberValue")
  1699.             NewStatChange.Value = AMOUNT
  1700.             if STAT == "Defense" then
  1701.                 NewStatChange.Name = "ChangeDefense"
  1702.             elseif STAT == "Damage" then
  1703.                 NewStatChange.Name = "ChangeDamage"
  1704.             elseif STAT == "Movement" then
  1705.                 NewStatChange.Name = "ChangeMovement"
  1706.             end
  1707.             if SHOWTHESTAT == true then
  1708.                 if AMOUNT < 0 then
  1709.                     StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "-"..STAT, C3(1, 1, 1))
  1710.                 elseif AMOUNT > 0 then
  1711.                     StatLabel("Debuff", LOCATION.Head.CFrame * CF(0, 0 + (LOCATION.Head.Size.z - 1), 0), "+"..STAT, C3(1, 1, 1))
  1712.                 end
  1713.             end
  1714.             if DURATION ~= nil and DURATION ~= 0 then
  1715.                 local StatDuration = IT("NumberValue")
  1716.                 StatDuration.Name = "Duration"
  1717.                 StatDuration.Value = DURATION
  1718.                 StatDuration.Parent = NewStatChange
  1719.             end
  1720.             NewStatChange.Parent = LOCATION.Stats:FindFirstChild("ChangeStat")
  1721.         end
  1722.     end
  1723. end
  1724.  
  1725. --Usage: DamageFunction(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, hit, false, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  1726. function DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HIT, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
  1727.     if HIT.Parent == nil then
  1728.         return
  1729.     end
  1730.     local HITHUMANOID = HIT.Parent:FindFirstChild("Humanoid")
  1731.     for _, v in pairs(HIT.Parent:GetChildren()) do
  1732.         if v:IsA("Humanoid") then
  1733.             HITHUMANOID = v
  1734.         end
  1735.     end
  1736.     if HIT.Name == "Hitbox" and RANGED ~= true and HIT.Parent ~= Weapon and Enable_Stagger_Hit == true then
  1737.         StaggerHit.Value = true
  1738.         if Play_Hitbox_Hit_Sound == true then
  1739.             if HITWEAPONSOUND ~= "" and HITWEAPONSOUND ~= "nil" then
  1740.                 CreateSound(HITWEAPONSOUND, HIT, 1, HITWEAPONSOUNDPITCH)
  1741.             end
  1742.         end
  1743.         return
  1744.     end
  1745.     if HIT.Parent.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent.Parent:FindFirstChild("UpperTorso") ~= nil then
  1746.         HITHUMANOID = HIT.Parent.Parent:FindFirstChild("Humanoid")
  1747.     end
  1748.     if HIT.Parent.ClassName == "Hat" or HIT.ClassName == "Accessory" then
  1749.         HIT = HIT.Parent.Parent:FindFirstChild("Head")
  1750.     end
  1751.     if HITHUMANOID ~= nil and HIT.Parent.Name ~= Character.Name and (HIT.Parent:FindFirstChild("Torso") ~= nil or HIT.Parent:FindFirstChild("UpperTorso") ~= nil) then
  1752.         if HIT.Parent:FindFirstChild("DebounceHit") ~= nil then
  1753.             if HIT.Parent.DebounceHit.Value == true then
  1754.                 return
  1755.             end
  1756.         end
  1757.         if AntiTeamKill.Value == true then
  1758.             if Player.Neutral == false and game.Players:GetPlayerFromCharacter(HIT.Parent) ~= nil then
  1759.                 if game.Players:GetPlayerFromCharacter(HIT.Parent).TeamColor == Player.TeamColor then
  1760.                     return
  1761.                 end
  1762.             end
  1763.         end
  1764.         if HITEVENWHENDEAD == false then
  1765.             if HIT.Parent:FindFirstChild("Humanoid") ~= nil then
  1766.                 if HIT.Parent:FindFirstChild("Humanoid").Health <= 0 then
  1767.                     return
  1768.                 end
  1769.             end
  1770.         end
  1771.         if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1772.             if HIT.Parent.Stats:FindFirstChild("StunValue") ~= nil then
  1773.                 HIT.Parent.Stats:FindFirstChild("StunValue").Value = HIT.Parent.Stats:FindFirstChild("StunValue").Value + INCREASESTUN
  1774.             end
  1775.         end
  1776.         if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1777.             if HIT.Parent.Stats:FindFirstChild("Stagger") ~= nil then
  1778.                 if STAGGER == true and Enable_Stagger == true then
  1779.                     HIT.Parent.Stats:FindFirstChild("Stagger").Value = true
  1780.                 end
  1781.             end
  1782.         end
  1783.         if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1784.             if HIT.Parent.Stats:FindFirstChild("Block") ~= nil then
  1785.                 if HIT.Parent.Stats:FindFirstChild("Block").Value == true then
  1786.                     HASBEENBLOCKED = true
  1787.                     if HIT.Parent.Stats:FindFirstChild("Block"):FindFirstChild("BlockDebounce") == nil then
  1788.                         StatLabel("Interruption", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Blocked!", C3(0, 100 / 255, 255 / 255))
  1789.                         if RANGED ~= true then
  1790.                             if HITBLOCKSOUND ~= "" and HITBLOCKSOUND ~= "nil" then
  1791.                                 CreateSound(HITBLOCKSOUND, HIT, 1, HITBLOCKSOUNDPITCH)
  1792.                             end
  1793.                         end
  1794.                         local BlockDebounce = IT("BoolValue", HIT.Parent.Stats:FindFirstChild("Block"))
  1795.                         BlockDebounce.Name = "BlockDebounce"
  1796.                         BlockDebounce.Value = true
  1797.                         if RANGED ~= true then
  1798.                             game:GetService("Debris"):AddItem(BlockDebounce, 0.5)
  1799.                         else
  1800.                             game:GetService("Debris"):AddItem(BlockDebounce, 0.1)
  1801.                         end
  1802.                     end
  1803.                     if RANGED ~= true and Enable_Stagger == true then
  1804.                         HIT.Parent.Stats:FindFirstChild("Block").Value = false
  1805.                         Stagger.Value = true
  1806.                     end
  1807.                     return
  1808.                 end
  1809.             end
  1810.         end
  1811.         if DECREASETHESTAT ~= nil then
  1812.             if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1813.                 IncreaseOrDecreaseStat(HIT.Parent, DECREASETHESTAT, DECREASEAMOUNT, DECREASEDURATION, SHOWDECREASEDSTAT)
  1814.             end
  1815.         end
  1816.         local DAMAGE = MRANDOM(MINIMUMDAMAGE,MAXIMUMDAMAGE) * Damage.Value
  1817.         if HIT.Parent:FindFirstChild("Stats") ~= nil then
  1818.             if HIT.Parent.Stats:FindFirstChild("Defense") ~= nil then
  1819.                 if CanPenetrateArmor.Value == true then
  1820.                     DAMAGE = DAMAGE
  1821.                 else
  1822.                     DAMAGE = DAMAGE / HIT.Parent.Stats:FindFirstChild("Defense").Value
  1823.                 end
  1824.             elseif HIT.Parent.Stats:FindFirstChild("Defense") == nil then
  1825.                 DAMAGE = DAMAGE
  1826.             end
  1827.         end
  1828.         if CanCrit.Value == true then
  1829.             CRITCHANCENUMBER = MRANDOM(1, CritChance.Value)
  1830.             if CRITCHANCENUMBER == 1 then
  1831.                 DAMAGE = DAMAGE * 2
  1832.             end
  1833.         end
  1834.         DAMAGE = math.floor(DAMAGE)
  1835.         if HASBEENBLOCKED == false then
  1836.             HITHUMANOID.Health = HITHUMANOID.Health - DAMAGE
  1837.         end
  1838.         if DAMAGE <= 3 and HASBEENBLOCKED == false then
  1839.             if STAGGERHIT == true and Enable_Stagger_Hit == true and RANGED ~= true then
  1840.                 StaggerHit.Value = true
  1841.             end
  1842.             if HITARMORSOUND ~= "" and HITARMORSOUND ~= "nil" then
  1843.                 CreateSound(HITARMORSOUND, HIT, 1, HITARMORSOUNDPITCH)
  1844.             end
  1845.         elseif DAMAGE > 3 and HASBEENBLOCKED == false then
  1846.             if HITPLAYERSOUND ~= "" and HITPLAYERSOUND ~= "nil" then
  1847.                 CreateSound(HITPLAYERSOUND, HIT, 1, HITPLAYERSOUNDPITCH)
  1848.             end
  1849.         end
  1850.         if DAMAGE > 3 and DAMAGE < 20 and HASBEENBLOCKED == false then
  1851.             if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1852.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1853.                 CreateSound("296102734", HIT, 1, 1)
  1854.             else
  1855.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 220/255, 0))
  1856.             end
  1857.         elseif DAMAGE >= 20 and HASBEENBLOCKED == false then
  1858.             if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1859.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1860.                 CreateSound("296102734", HIT, 1, 1)
  1861.             else
  1862.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(255/255, 0, 0))
  1863.             end
  1864.         elseif DAMAGE <= 3 and HASBEENBLOCKED == false then
  1865.             if CanCrit.Value == true and CRITCHANCENUMBER == 1 then
  1866.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), "Crit! \n"..DAMAGE, C3(200/255, 0, 0))
  1867.                 CreateSound("296102734", HIT, 1, 1)
  1868.             else
  1869.                 StatLabel("Normal", HIT.Parent.Head.CFrame * CF(0, 0 + (HIT.Parent.Head.Size.z - 1), 0), DAMAGE, C3(225/255, 225/255, 225/255))
  1870.             end
  1871.         end
  1872.         if TYPE == "Normal" then
  1873.             local vp = IT("BodyVelocity")
  1874.             vp.P=500
  1875.             vp.maxForce = VT(math.huge, 0, math.huge)
  1876.             if KNOCKBACKTYPE == 1 then
  1877.                 vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK + PROPERTY.Velocity / 1.05
  1878.             elseif KNOCKBACKTYPE == 2 then
  1879.                 vp.Velocity = PROPERTY.CFrame.lookVector * KNOCKBACK
  1880.             end
  1881.             if KNOCKBACK > 0 and HASBEENBLOCKED == false then
  1882.                 vp.Parent = HIT--.Parent.Torso
  1883.             end
  1884.             game:GetService("Debris"):AddItem(vp, 0.5)
  1885.         end
  1886.         HASBEENBLOCKED = false
  1887.         RecentEnemy.Value = HIT.Parent
  1888.         local DebounceHit = IT("BoolValue", HIT.Parent)
  1889.         DebounceHit.Name = "DebounceHit"
  1890.         DebounceHit.Value = true
  1891.         game:GetService("Debris"):AddItem(DebounceHit, DELAY)
  1892.     end
  1893. end
  1894.  
  1895. --Usage: MagnitudeDamage(HITWEAPONSOUNDS[MRANDOM(1, #HITWEAPONSOUNDS)], HITARMORSOUNDS[MRANDOM(1, #HITARMORSOUNDS)], HITBLOCKSOUNDS[MRANDOM(1, #HITBLOCKSOUNDS)], HITPLAYERSOUNDS[MRANDOM(1, #HITPLAYERSOUNDS)], 1, 1, 1, 1, Part, 5, true, 5, 10, MRANDOM(5, 10), "Normal", Part, 0.5, false, true, 1, MRANDOM(5, 10), nil, true, false, nil, 0, 0, false)
  1896. function MagnitudeDamage(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, PART, MAGNITUDE, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
  1897.     for _, c in pairs(workspace:GetChildren()) do
  1898.         local HUMANOID = c:FindFirstChild("Humanoid")
  1899.         local HEAD = nil
  1900.         if HUMANOID ~= nil then
  1901.             for _, d in pairs(c:GetChildren()) do
  1902.                 if d.ClassName == "Model" and RANGED ~= true then
  1903.                     HEAD = d:FindFirstChild("Hitbox")
  1904.                     if HEAD ~= nil then
  1905.                         local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1906.                         if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1907.                             if Play_Hitbox_Hit_Sound == true then
  1908.                                 local HitRefpart = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  1909.                                 HitRefpart.Anchored = true
  1910.                                 HitRefpart.CFrame = CF(HEAD.Position)
  1911.                                 CreateSound(HITWEAPONSOUND, HitRefpart, 1, HITWEAPONSOUNDPITCH)
  1912.                             end
  1913.                             if Enable_Stagger_Hit == true then
  1914.                                 StaggerHit.Value = true
  1915.                             end
  1916.                         end
  1917.                     end
  1918.                 elseif d:IsA"BasePart" then
  1919.                     HEAD = d
  1920.                     if HEAD ~= nil then
  1921.                         local THEMAGNITUDE = (HEAD.Position - PART.Position).magnitude
  1922.                         if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1923.                             DamageFunction(HITWEAPONSOUND, HITARMORSOUND, HITBLOCKSOUND, HITPLAYERSOUND, HITWEAPONSOUNDPITCH, HITARMORSOUNDPITCH, HITBLOCKSOUNDPITCH, HITPLAYERSOUNDPITCH, HEAD, HITEVENWHENDEAD, MINIMUMDAMAGE, MAXIMUMDAMAGE, KNOCKBACK, TYPE, PROPERTY, DELAY, KNOCKBACKTYPE, INCREASESTUN, STAGGER, STAGGERHIT, RANGED, MAGNITUDEDECREASETHESTAT, MAGNITUDEDECREASEAMOUNT, MAGNITUDEDECREASEDURATION, MAGNITUDESHOWDECREASEDSTAT)
  1924.                         end
  1925.                     end
  1926.                 end
  1927.             end
  1928.         end
  1929.     end
  1930. end
  1931.  
  1932. --Usage: MagnitudeBuffOrDebuff(Part, 5, "Defense", -0.1, 3, true, true)
  1933. function MagnitudeBuffOrDebuff(PART, MAGNITUDE, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF, APPLYTOOTHERSINSTEAD)
  1934.     if Player.Neutral == true then
  1935.         IncreaseOrDecreaseStat(Character, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1936.     end
  1937.     for _, c in pairs(workspace:GetChildren()) do
  1938.         local HUMANOID = c:FindFirstChild("Humanoid")
  1939.         local THEHEAD = nil
  1940.         if HUMANOID ~= nil then
  1941.             if c:FindFirstChild("Torso") ~= nil then
  1942.                 THEHEAD = c:FindFirstChild("Torso")
  1943.             elseif c:FindFirstChild("UpperTorso") ~= nil then
  1944.                 THEHEAD = c:FindFirstChild("UpperTorso")
  1945.             end
  1946.             if THEHEAD ~= nil then
  1947.                 local THEMAGNITUDE = (THEHEAD.Position - PART.Position).magnitude
  1948.                 print("yes 1")
  1949.                 if APPLYTOOTHERSINSTEAD == true then
  1950.                     if THEMAGNITUDE <= (MAGNITUDE * Player_Size) and c.Name ~= Player.Name then
  1951.                         if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1952.                             if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1953.                                 IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1954.                             end
  1955.                         end
  1956.                     end
  1957.                 elseif APPLYTOOTHERSINSTEAD == false then
  1958.                     if THEMAGNITUDE <= (MAGNITUDE * Player_Size) then
  1959.                         if Player.Neutral == false and game.Players:GetPlayerFromCharacter(THEHEAD.Parent) ~= nil then
  1960.                             if game.Players:GetPlayerFromCharacter(THEHEAD.Parent).TeamColor == Player.TeamColor then
  1961.                                 IncreaseOrDecreaseStat(THEHEAD.Parent, STAT, AMOUNT, DURATION, SHOWBUFFORDEBUFF)
  1962.                             end
  1963.                         end
  1964.                     end
  1965.                 end
  1966.             end
  1967.         end
  1968.     end
  1969. end
  1970.  
  1971.  
  1972.  
  1973. function AoEDamage(position,radius,min,max,maxstrength,critrate,critmultiplier,CanBeDodgedByJumping)
  1974.     local dmg = math.random(min,max)
  1975.     for i,v in ipairs(workspace:GetChildren()) do
  1976.     if v:FindFirstChild("HitBy"..Player.Name) == nil then
  1977.         local body = v:GetChildren()
  1978.             for part = 1, #body do
  1979.                 if(v:FindFirstChild("HitBy"..Player.Name) == nil and (body[part].ClassName == "Part" or body[part].ClassName == "MeshPart") and v ~= Character) then
  1980.                     if(body[part].Position - position).Magnitude < radius then
  1981.                         if v.ClassName == "Model" then
  1982.                             if v:FindFirstChildOfClass("Humanoid") then
  1983.                                 if CanBeDodgedByJumping == true then
  1984.                                     if body[part].Position.Y < position.Y+5 then
  1985.                                         ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  1986.                                     end
  1987.                                 else
  1988.                                     ApplyDamage(v:FindFirstChildOfClass("Humanoid"),dmg,critrate,critmultiplier)
  1989.                                 end
  1990.                                 local bv = Instance.new("BodyVelocity")
  1991.                                 bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  1992.                                 bv.velocity = RootPart.CFrame.lookVector*maxstrength
  1993.                                 bv.Parent = body[part]
  1994.                                 Debris:AddItem(bv,0.2)
  1995.                             end
  1996.                         end
  1997.                     end
  1998.                 end
  1999.             end
  2000.         end
  2001.         if v:FindFirstChild("HitBy"..Player.Name) then
  2002.             v:FindFirstChild("HitBy"..Player.Name):remove()
  2003.         end
  2004.     end
  2005. end
  2006.  
  2007. function ApplyDamage(Humanoid,Damage,CritRate,CritMultiplier)
  2008.     local defence = Instance.new("BoolValue",Humanoid.Parent)
  2009.     defence.Name = ("HitBy"..Player.Name)
  2010.     game:GetService("Debris"):AddItem(defence, 0.5)
  2011.         Humanoid.Health = Humanoid.Health - Damage
  2012.         if Humanoid.Parent:FindFirstChild("Head") then
  2013.                 StatLabel("Normal", Humanoid.Parent.Head.CFrame * CF(0, 0 + (Humanoid.Parent.Head.Size.z - 1), 0), Damage, C3(0, 0, 0))
  2014.             end
  2015.         end
  2016.    
  2017.  
  2018. --//=================================\\
  2019. --||    ATTACK FUNCTIONS AND STUFF
  2020. --\\=================================//
  2021.  
  2022. function Oblivion()
  2023.     ATTACK = true
  2024.     Rooted = true
  2025.     for i=0, 2, 0.1 / Animation_Speed do
  2026.         Swait()
  2027.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2028.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(25 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2029.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(-65)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2030.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25, 0.75, -0.5) * ANGLES(RAD(35), RAD(0), RAD(65)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2031.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2032.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2033.     end
  2034.     for i=0, 0.5, 0.1 / Animation_Speed do
  2035.         Swait()
  2036.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0.2, 0) * ANGLES(RAD(-15), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2037.         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.5 / Animation_Speed)
  2038.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.75,0) * ANGLES(RAD(0), RAD(0), RAD(85)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2039.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.75, 0) * ANGLES(RAD(0), RAD(0), RAD(-85)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2040.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.01) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(-15)), 0.5 / Animation_Speed)
  2041.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.01) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-15), RAD(0), RAD(15)), 0.5 / Animation_Speed)
  2042.     end
  2043.     for i = 1, 75 do
  2044.         Swait()
  2045.         MagicSphere(VT(0.5,0.5,5),50,CF(Torso.CFrame*CF(MRANDOM(-5,5),MRANDOM(-5,5),MRANDOM(-5,5)).p,Torso.Position),"Really red",VT(-0.005,-0.005,0.03),0)
  2046.     end
  2047.     CreateSound(LIGHTHITSOUNDS[MRANDOM(1,#LIGHTHITSOUNDS)], Torso, 10, 0.5)
  2048.     CreateSound(LIGHTHITSOUNDS[MRANDOM(1,#LIGHTHITSOUNDS)], Torso, 10, 0.5)
  2049.     AoEDamage(Torso.Position,45,45,58,0,false,2,2,false,true)
  2050.     MagicSphere(VT(0,0,0),25,Torso.CFrame,"Really red",VT(5,5,5))
  2051.     MagicSphere(VT(0,0,0),50,Torso.CFrame,"Lime green",VT(2.5,2.5,2.5))
  2052.     MagicSphere(VT(0,0.2,0),30,Torso.CFrame*ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360))),"Really black",VT(6,0,6))
  2053.     MagicSphere(VT(0,0.2,0),30,Torso.CFrame*ANGLES(RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360)),RAD(MRANDOM(-360,360))),"Pearl",VT(6,0,6))
  2054.     ATTACK = false
  2055.     Rooted = false
  2056. end
  2057.  
  2058. function kiss()
  2059.     ATTACK = true
  2060.     Rooted = false
  2061.     local HASGRABBED = false
  2062.     local GRABTARGET = nil
  2063.     local TORS = nil
  2064.     local WELD = nil
  2065.     for i=0, 1, 0.1 / Animation_Speed do
  2066.         Swait()
  2067.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2068.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2069.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(120), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2070.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(120), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2071.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2072.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2073.     end
  2074.     local GRAB1 = RightArm.Touched:Connect(function(hit)
  2075.         if hit.Parent:FindFirstChild("Humanoid") then
  2076.             if hit.Parent.Humanoid.Health ~= 0 then
  2077.                 UNANCHOR = false
  2078.                 RootPart.Anchored = true
  2079.                 TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
  2080.                 TORS.CFrame = RootPart.CFrame * CF(0,0,-1.8) * ANGLES(RAD(0),RAD(180),RAD(0))
  2081.                 WELD = weldBetween(RootPart,TORS)
  2082.                 HASGRABBED = true
  2083.                 Rooted = true
  2084.             end
  2085.         end
  2086.     end)
  2087.     local GRAB2 = LeftArm.Touched:Connect(function(hit)
  2088.         if hit.Parent:FindFirstChild("Humanoid") then
  2089.             if hit.Parent.Humanoid.Health ~= 0 then
  2090.                 UNANCHOR = false
  2091.                 RootPart.Anchored = true
  2092.                 TORS = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
  2093.                 TORS.CFrame = RootPart.CFrame * CF(0,0,-1.8) * ANGLES(RAD(0),RAD(180),RAD(0))
  2094.                 WELD = weldBetween(RootPart,TORS)
  2095.                 HASGRABBED = true
  2096.                 Rooted = true
  2097.             end
  2098.         end
  2099.     end)
  2100.     for i=0, 1, 0.1 / Animation_Speed do
  2101.         Swait()
  2102.         if HASGRABBED == true then
  2103.             break
  2104.         end
  2105.         RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2106.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2107.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(-35)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2108.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(35)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2109.         RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2110.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2111.     end
  2112.     GRAB1:disconnect()
  2113.     GRAB2:disconnect()
  2114.     if HASGRABBED == true then
  2115.         TORS.Anchored = false
  2116.         GRABTARGET = TORS.Parent
  2117.                 HED = GRABTARGET:FindFirstChild("Head")
  2118.         for i=0, 2, 0.1 / Animation_Speed do
  2119.             Swait()
  2120.             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)
  2121.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-35 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2122.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2123.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2124.             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)
  2125.             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)
  2126.         end
  2127.                         local heart = CreatePart(1, HED, "SmoothPlastic", 0, 0, "Really red", "Heart", VT(1,1,1), false)
  2128.                                                 local msh = CreateMesh("SpecialMesh", heart, "FileMesh", "431221914", "", VT(0.3, 0.3, 0.3), VT(0,0,0))
  2129.                                                 CreateWeldOrSnapOrMotor("Weld", HED, heart, HED,CF(0, -2, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  2130.         local ECH = 0
  2131.  
  2132.         for i=0, 8, 0.1 / Animation_Speed do
  2133.             Swait()
  2134.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, -0.25, -0.25 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(22.5), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2135.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-17.5 - 2.5 * SIN(SINE / 12)), RAD(25 * SIN(SINE / 3)), RAD(0)), 0.5 / Animation_Speed)
  2136.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(35)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2137.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0.5, -1) * ANGLES(RAD(110), RAD(0), RAD(-35)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2138.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2139.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(22.5), RAD(-90), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2140.         end
  2141.         WELD:remove()
  2142.     end
  2143.     UNANCHOR = true
  2144.     ATTACK = false
  2145.     Rooted = false
  2146. end
  2147.  
  2148. function Kick()
  2149.     ATTACK = true
  2150.     Rooted = false
  2151.     VALUE1 = true
  2152.     NOWALK = true
  2153.     if COMBO2 == 1 then
  2154.         COMBO2 = 2
  2155.         CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
  2156.         for i=0, 0.5, 0.1 / Animation_Speed do
  2157.             Swait()
  2158.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(45)), 2 / Animation_Speed)
  2159.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-45)), 2 / Animation_Speed)
  2160.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2161.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2162.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
  2163.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2164.         end
  2165.     elseif COMBO2 == 2 then
  2166.         COMBO2 = 1
  2167.         CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
  2168.         for i=0, 0.5, 0.1 / Animation_Speed do
  2169.             Swait()
  2170.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-45)), 2 / Animation_Speed)
  2171.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(45)), 2 / Animation_Speed)
  2172.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2173.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2174.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2175.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(-90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
  2176.         end
  2177.     end
  2178.     NOWALK = false
  2179.     VALUE1 = false
  2180.     ATTACK = false
  2181.     Rooted = false
  2182. end
  2183.  
  2184. function StaggerHitAnimation()
  2185.     ATTACK = true
  2186.     if Weapon:FindFirstChild("Hitbox") ~= nil then
  2187.         for i = 1, MRANDOM(2, 4) do
  2188.             ClangEffect("Bright yellow", "Neon", CF(Weapon:FindFirstChild("Hitbox").Position) * ANGLES(RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50)), RAD(MRANDOM(-50, 50))), 20, 5, 0.2, MRANDOM(5, 15) / 10, 0, -0.02, 0, -0.02, 0.1)
  2189.         end
  2190.     end
  2191.     for i = 0, 1, 0.1 / Animation_Speed do
  2192.         Swait()
  2193.         RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-10), RAD(0), RAD(-30)), 0.3 / Animation_Speed)
  2194.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * ANGLES(RAD(0), RAD(0), RAD(30)) * ANGLES(RAD(5), RAD(0), RAD(0)), 0.3 / Animation_Speed)
  2195.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-30), RAD(0), RAD(60)) * ANGLES(RAD(0), RAD(-30), RAD(0)) * RIGHTSHOULDERC0, 0.3 / Animation_Speed)
  2196.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * ANGLES(RAD(-20), RAD(0), RAD(-20)) * ANGLES(RAD(0), RAD(20), RAD(0)) * LEFTSHOULDERC0, 0.3 / Animation_Speed)
  2197.         RightHip.C0 = Clerp(RightHip.C0, CF(1 * Player_Size, -0.9 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-10), RAD(0), RAD(-20)), 0.3 / Animation_Speed)
  2198.         LeftHip.C0 = Clerp(LeftHip.C0, CF(-1 * Player_Size, -1.1 * Player_Size, 0 * Player_Size) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(10)), 0.3 / Animation_Speed)
  2199.         if Stagger.Value == true or Stun.Value == true then
  2200.             break
  2201.         end
  2202.     end
  2203.     ATTACK = false
  2204. end
  2205.  
  2206. function Shot()
  2207.     ATTACK = true
  2208.     Rooted = false
  2209.     for i=0, 0.5, 0.1 / Animation_Speed do
  2210.         Swait()
  2211.         turnto(Mouse.Hit.p)
  2212.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2213.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
  2214.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2215.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2216.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2217.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2218.     end
  2219.     repeat
  2220.         for i=0, 0.5, 0.1 / Animation_Speed do
  2221.             Swait()
  2222.             turnto(Mouse.Hit.p)
  2223.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2224.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
  2225.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(83), RAD(30), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2226.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0.5) * ANGLES(RAD(83), RAD(-30), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2227.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2228.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2229.         end
  2230.         local HIT,POS = CastProperRay(Hole2.Position, Mouse.Hit.p, 1000, Character)
  2231.         SpawnTrail(Hole2.Position,POS)
  2232.         if HIT ~= nil then
  2233.             if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  2234.                 Banish(HIT.Parent)
  2235.             end
  2236.         end
  2237.             local HIT,POS = CastProperRay(Hole.Position, Mouse.Hit.p, 1000, Character)
  2238.         SpawnTrail(Hole.Position,POS)
  2239.         if HIT ~= nil then
  2240.             if HIT.Parent ~= workspace and HIT.Parent.ClassName ~= "Folder" then
  2241.                 Banish(HIT.Parent)
  2242.             end
  2243.         end
  2244.         WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(1,1.5,1), Transparency = 0, Transparency2 = 1, CFrame = Hole2.CFrame, MoveToPos = Hole2.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})
  2245.         WACKYEFFECT({Time = 25, EffectType = "Wave", Size = VT(0.3,0,0.3), Size2 = VT(2,0.5,2), Transparency = 0, Transparency2 = 1, CFrame = Hole2.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})
  2246.         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,Hole2.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})
  2247.         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,Hole2.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})
  2248.     CreateSound("159882477", Head, 6, 1)
  2249.         for i=0, 0.5, 0.1 / Animation_Speed do
  2250.             Swait()
  2251.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 22)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2252.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0) * ANGLES(RAD(15 - 2.5 * SIN(SINE / 22)), RAD(15), RAD(0)), 0.5 / Animation_Speed)
  2253.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0.5) * ANGLES(RAD(90), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / Animation_Speed)
  2254.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.6, 0) * ANGLES(RAD(90), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / Animation_Speed)
  2255.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(75), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2256.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-50), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.5 / Animation_Speed)
  2257.         end
  2258.                 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})
  2259.         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})
  2260.         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})
  2261.         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})
  2262.     until KEYHOLD == false
  2263.     ATTACK = false
  2264.     Rooted = false
  2265. end
  2266.  
  2267. function Punch()
  2268.     ATTACK = true
  2269.     Rooted = false
  2270.     for i=0, 0.2, 0.1 / Animation_Speed do
  2271.         Swait()
  2272.         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)
  2273.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2274.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2275.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2276.         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)), 1 / Animation_Speed)
  2277.         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)), 1 / Animation_Speed)
  2278.     end
  2279.     VALUE1 = true
  2280.     if COMBO == 1 then
  2281.         COMBO = 2
  2282.         CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
  2283.         for i=0, 0.3, 0.1 / Animation_Speed do
  2284.             Swait()
  2285.             RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.1)
  2286.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(-75)), 2 / Animation_Speed)
  2287.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(65)), 2 / Animation_Speed)
  2288.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2289.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1, 0.5, -0.5) * ANGLES(RAD(90), RAD(0), RAD(25)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2290.             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)), 2 / Animation_Speed)
  2291.             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)), 2 / Animation_Speed)
  2292.         end
  2293.     elseif COMBO == 2 then
  2294.         COMBO = 1
  2295.         CreateSound("199150686", Torso, 1, MRANDOM(11,13)/10)
  2296.         for i=0, 0.3, 0.1 / Animation_Speed do
  2297.             Swait()
  2298.             RootPart.CFrame = RootPart.CFrame*CF(0,0,-0.1)
  2299.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(85)), 2 / Animation_Speed)
  2300.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-80)), 2 / Animation_Speed)
  2301.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -1) * ANGLES(RAD(90), RAD(0), RAD(-50)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2302.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2303.             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)), 2 / Animation_Speed)
  2304.             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)), 2 / Animation_Speed)
  2305.         end
  2306.     end
  2307.     VALUE1 = false
  2308.     ATTACK = false
  2309.     Rooted = false
  2310. end
  2311.  
  2312. function AttackTemplate()
  2313.     ATTACK = true
  2314.     Rooted = false
  2315.     for i=0, 1, 0.1 / Animation_Speed do
  2316.         Swait()
  2317.         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)
  2318.         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)
  2319.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2320.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2321.         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)
  2322.         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)
  2323.     end
  2324.     ATTACK = false
  2325.     Rooted = false
  2326. end
  2327.  
  2328. function Nuke()
  2329.     ATTACK = true
  2330.     Rooted = true
  2331.     local CHARGE = false
  2332.     local BLASTS = {468991944, 468991990}
  2333.     coroutine.resume(coroutine.create(function()
  2334.         repeat
  2335.             Swait()
  2336.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(-45)), 2 / Animation_Speed)
  2337.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(45)), 2 / Animation_Speed)
  2338.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2339.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-12)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2340.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2341.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(-90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
  2342.         until CHARGE == true
  2343.         for i = 0, 0.4, 0.1 / Animation_Speed do
  2344.             Swait()
  2345.             WACKYEFFECT({
  2346.                 Time = 15,
  2347.                 EffectType = "Sphere",
  2348.                 Size = VT(60, 60, 60),
  2349.                 Size2 = VT(0, 0, 0),
  2350.                 Transparency = 1,
  2351.                 Transparency2 = 0.7,
  2352.                 CFrame = CF(RootPart.Position),
  2353.                 MoveToPos = nil,
  2354.                 RotationX = 0,
  2355.                 RotationY = 0,
  2356.                 RotationZ = 0,
  2357.                 Material = "Neon",
  2358.                 Color = C3(0, 0, 0),
  2359.                 SoundID = nil,
  2360.                 SoundPitch = nil,
  2361.                 SoundVolume = nil
  2362.             })
  2363.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(SINE / 12)) * ANGLES(RAD(-25), RAD(0), RAD(45)), 2 / Animation_Speed)
  2364.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(-45)), 2 / Animation_Speed)
  2365.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(12)) * RIGHTSHOULDERC0, 2 / Animation_Speed)
  2366.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, -0.5) * ANGLES(RAD(25), RAD(0), RAD(45)) * LEFTSHOULDERC0, 2 / Animation_Speed)
  2367.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.8 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(45), RAD(90), RAD(0)) * ANGLES(RAD(-38), RAD(0), RAD(0)), 2 / Animation_Speed)
  2368.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2369.         end
  2370.         coroutine.resume(coroutine.create(function()
  2371.             local POS = RootPart.Position
  2372.             wait(0.2)
  2373.             for i = 1, 5 do
  2374.                 WACKYEFFECT({
  2375.                     Time = 65,
  2376.                     EffectType = "Sphere",
  2377.                     Size = VT(2, 2, 2),
  2378.                     Size2 = VT(0, 0, 500),
  2379.                     Transparency = 1,
  2380.                     Transparency2 = 0,
  2381.                     CFrame = CF(POS),
  2382.                     MoveToPos = nil,
  2383.                     RotationX = MRANDOM(-2, 2),
  2384.                     RotationY = MRANDOM(-12, 12),
  2385.                     RotationZ = MRANDOM(-2, 2),
  2386.                     Material = "Neon",
  2387.                     Color = C3(1, 0, 0),
  2388.                     SoundID = nil,
  2389.                     SoundPitch = nil,
  2390.                     SoundVolume = nil
  2391.                 })
  2392.             end
  2393.             wait(1)
  2394.             SHAKECAM(POS, 9999999999, 25, 25)
  2395.             ApplyAoE(POS, 450, true)
  2396.             WACKYEFFECT({
  2397.                 Time = 85,
  2398.                 EffectType = "Sphere",
  2399.                 Size = VT(120, 120, 120),
  2400.                 Size2 = VT(350, 350, 350),
  2401.                 Transparency = 0,
  2402.                 Transparency2 = 1,
  2403.                 CFrame = CF(POS),
  2404.                 MoveToPos = nil,
  2405.                 RotationX = 0,
  2406.                 RotationY = 0,
  2407.                 RotationZ = 0,
  2408.                 Material = "Neon",
  2409.                 Color = C3(1, 1, 1),
  2410.                 SoundID = nil,
  2411.                 SoundPitch = 1,
  2412.                 SoundVolume = 10
  2413.             })
  2414.             for i = 1, 20 do
  2415.                 WACKYEFFECT({
  2416.                     Time = 85,
  2417.                     EffectType = "Sphere",
  2418.                     Size = VT(120, 120, 120),
  2419.                     Size2 = VT(120, 120, 144) + VT(i * 3, i * 3, i * 3),
  2420.                     Transparency = 0.8,
  2421.                     Transparency2 = 1,
  2422.                     CFrame = CF(POS),
  2423.                     MoveToPos = nil,
  2424.                     RotationX = 0,
  2425.                     RotationY = 0,
  2426.                     RotationZ = 0,
  2427.                     Material = "Neon",
  2428.                     Color = C3(0, 1, 0),
  2429.                     SoundID = nil,
  2430.                     SoundPitch = 1,
  2431.                     SoundVolume = 10
  2432.                 })
  2433.                 WACKYEFFECT({
  2434.                     Time = 100,
  2435.                     EffectType = "Wave",
  2436.                     Size = VT(25, 2, 25),
  2437.                     Size2 = VT(400, 0, 400) * 1.2,
  2438.                     Transparency = 0,
  2439.                     Transparency2 = 1,
  2440.                     CFrame = CF(POS) * ANGLES(RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360)), RAD(MRANDOM(0, 360))),
  2441.                     MoveToPos = nil,
  2442.                     RotationX = 0,
  2443.                     RotationY = 0,
  2444.                     RotationZ = 0,
  2445.                     Material = "Neon",
  2446.                     Color = C3(0, 0, 0),
  2447.                     SoundID = nil,
  2448.                     SoundPitch = nil,
  2449.                     SoundVolume = nil
  2450.                 })
  2451.             end
  2452.             local HITFLOOR, HITPOS = Raycast(POS, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
  2453.             for i = 1, 5 do
  2454.                 CreateSound(438666077, Effects, 15, 1 - i / 15, false)
  2455.                 WACKYEFFECT({
  2456.                     Time = 120,
  2457.                     EffectType = "Wave",
  2458.                     Size = VT(150, 2, 150),
  2459.                     Size2 = VT(300 + i * 170, 0, 300 + i * 170) * 1.2,
  2460.                     Transparency = 0,
  2461.                     Transparency2 = 1,
  2462.                     CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)),
  2463.                     MoveToPos = nil,
  2464.                     RotationX = 0,
  2465.                     RotationY = 0,
  2466.                     RotationZ = 0,
  2467.                     Material = "Neon",
  2468.                     Color = C3(1, 0, 0),
  2469.                     SoundID = nil,
  2470.                     SoundPitch = nil,
  2471.                     SoundVolume = nil
  2472.                 })
  2473.             end
  2474.         end))
  2475.         for i = 0, 1, 0.1 / Animation_Speed do
  2476.             Swait()
  2477.         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)
  2478.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2479.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2480.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2481.         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)), 1 / Animation_Speed)
  2482.         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)), 1 / Animation_Speed)
  2483.         end
  2484.         ATTACK = false
  2485.         Rooted = false
  2486.     end))
  2487.     for i = 1, 30 do
  2488.         wait(0.01)
  2489.         local POS = CF(RootPart.Position) * ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * CF(0, 0, MRANDOM(10, 150))
  2490.         local HITFLOOR, HITPOS = Raycast(POS.p, CF(RootPart.Position, RootPart.Position + VT(0, -1, 0)).lookVector, 150, Character)
  2491.         if HITFLOOR then
  2492.             ApplyAoE(HITPOS, 65, true)
  2493.             local TURN = ANGLES(RAD(0), RAD(MRANDOM(0, 360)), RAD(0)) * ANGLES(RAD(MRANDOM(0, 25)), RAD(0), RAD(0))
  2494.             WACKYEFFECT({
  2495.                 Time = 25,
  2496.                 EffectType = "Sphere",
  2497.                 Size = VT(22, 22, 22),
  2498.                 Size2 = VT(85, 85, 85),
  2499.                 Transparency = 0,
  2500.                 Transparency2 = 1,
  2501.                 CFrame = CF(HITPOS),
  2502.                 MoveToPos = nil,
  2503.                 RotationX = 0,
  2504.                 RotationY = 0,
  2505.                 RotationZ = 0,
  2506.                 Material = "Neon",
  2507.                 Color = C3(0, 0, 0),
  2508.                 SoundID = BLASTS[MRANDOM(1, #BLASTS)],
  2509.                 SoundPitch = MRANDOM(9, 12) / 10,
  2510.                 SoundVolume = 10
  2511.             })
  2512.             for e = 1, 3 do
  2513.                 WACKYEFFECT({
  2514.                     EffectType = "Wave",
  2515.                     Size = VT(25, 0, 25),
  2516.                     Size2 = VT(40, 0, 40) + VT(e * 6, e / 5, e * 6),
  2517.                     Transparency = 0,
  2518.                     Transparency2 = 1,
  2519.                     CFrame = CF(HITPOS) * ANGLES(RAD(0), RAD(72 * i), RAD(0)),
  2520.                     MoveToPos = nil,
  2521.                     RotationX = 0,
  2522.                     RotationY = 3,
  2523.                     RotationZ = 0,
  2524.                     Material = "Neon",
  2525.                     Color = C3(0, 1, 0),
  2526.                     SoundID = nil,
  2527.                     SoundPitch = nil,
  2528.                     SoundVolume = nil
  2529.                 })
  2530.                 WACKYEFFECT({
  2531.                     Time = 35,
  2532.                     EffectType = "Sphere",
  2533.                     Size = VT(22, 45, 22),
  2534.                     Size2 = VT(25, 45 + e * 75, 25),
  2535.                     Transparency = 0,
  2536.                     Transparency2 = 1,
  2537.                     CFrame = CF(HITPOS) * TURN,
  2538.                     MoveToPos = nil,
  2539.                     RotationX = 0,
  2540.                     RotationY = 0,
  2541.                     RotationZ = 0,
  2542.                     Material = "Neon",
  2543.                     Color = C3(1, 1, 1),
  2544.                     SoundID = nil,
  2545.                     SoundPitch = MRANDOM(9, 12) / 10,
  2546.                     SoundVolume = 10
  2547.                 })
  2548.             end
  2549.         end
  2550.     end
  2551.     CHARGE = true
  2552. end
  2553.  
  2554. function Taunt()
  2555.     CreateSound(LAUGHS[MRANDOM(1,#LAUGHS)], Torso, 10, 1, false)
  2556.     ATTACK = true
  2557.     Rooted = true
  2558.     for i=0, 0.3, 0.1 / Animation_Speed do
  2559.         Swait()
  2560.         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)
  2561.         Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2562.         RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2563.         LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2564.         if HITFLOOR then
  2565.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2566.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2567.         elseif HITFLOOR == nil then
  2568.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
  2569.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
  2570.         end
  2571.     end
  2572.     for i = 1, 8 do
  2573.         for i=0, 0.2, 0.1 / Animation_Speed do
  2574.             Swait()
  2575.             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)
  2576.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2577.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.15, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  2578.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 0.7 / Animation_Speed)
  2579.             if HITFLOOR then
  2580.                 RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2581.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2582.             elseif HITFLOOR == nil then
  2583.                 RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
  2584.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
  2585.             end
  2586.         end
  2587.         CreateSound(FireSound, Gun1, 5, 1, false)
  2588.         for i=0, 0.2, 0.1 / Animation_Speed do
  2589.             Swait()
  2590.             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)
  2591.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  2592.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(45), RAD(0)) * RIGHTSHOULDERC0, 0.7 / Animation_Speed)
  2593.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.15, 0) * ANGLES(RAD(0), RAD(0), RAD(-180)) * ANGLES(RAD(0), RAD(-45), RAD(0)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  2594.             if HITFLOOR then
  2595.                 RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2596.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 2 / Animation_Speed)
  2597.             elseif HITFLOOR == nil then
  2598.                 RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.5, -0.5) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 2 / Animation_Speed)
  2599.                 LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 2 / Animation_Speed)
  2600.             end
  2601.         end
  2602.         CreateSound(FireSound, Gun2, 5, 1, false)
  2603.     end
  2604.     ATTACK = false
  2605.     Rooted = false
  2606. end
  2607. --//=================================\\
  2608. --||      ASSIGN THINGS TO KEYS
  2609. --\\=================================//
  2610.  
  2611. function MouseDown(Mouse)
  2612.     if ATTACK == false then
  2613.     end
  2614. end
  2615.  
  2616. function MouseUp(Mouse)
  2617. HOLD = falseW
  2618. end
  2619.  
  2620. function KeyDown(Key)
  2621.     KEYHOLD = true
  2622.     if Key == "z" and ATTACK == false then
  2623.         Shot()
  2624.     end
  2625.  
  2626.     if Key == "b" and ATTACK == false then
  2627.                 Kick()
  2628.     end
  2629.  
  2630.     if Key == "n" and ATTACK == false then
  2631.                 Punch()
  2632.     end
  2633.  
  2634.     if Key == "t" and ATTACK == false then
  2635.                 Taunt()
  2636.     end
  2637.  
  2638.     if Key == "c" and ATTACK == false then
  2639.                  kiss()
  2640.     end
  2641.  
  2642.     if Key == "v" and ATTACK == false then
  2643.                  Oblivion()
  2644.     end
  2645.  
  2646.     if Key == "x" and ATTACK == false then
  2647.                  Nuke()
  2648.     end
  2649. end
  2650.  
  2651. function KeyUp(Key)
  2652.     KEYHOLD = false
  2653. end
  2654.  
  2655.     Mouse.Button1Down:connect(function(NEWKEY)
  2656.         MouseDown(NEWKEY)
  2657.     end)
  2658.     Mouse.Button1Up:connect(function(NEWKEY)
  2659.         MouseUp(NEWKEY)
  2660.     end)
  2661.     Mouse.KeyDown:connect(function(NEWKEY)
  2662.         KeyDown(NEWKEY)
  2663.     end)
  2664.     Mouse.KeyUp:connect(function(NEWKEY)
  2665.         KeyUp(NEWKEY)
  2666.     end)
  2667.  
  2668. --//=================================\\
  2669. --\\=================================//
  2670.  
  2671.  
  2672. function unanchor()
  2673.     if UNANCHOR == true then
  2674.         g = Character:GetChildren()
  2675.         for i = 1, #g do
  2676.             if g[i].ClassName == "Part" then
  2677.                 g[i].Anchored = false
  2678.             end
  2679.         end
  2680.     end
  2681. end
  2682.  
  2683.  
  2684. --//=================================\\
  2685. --||    WRAP THE WHOLE SCRIPT UP
  2686. --\\=================================//
  2687.  
  2688. Humanoid.Changed:connect(function(Jump)
  2689.     if Jump == "Jump" and (Disable_Jump == true) then
  2690.         Humanoid.Jump = false
  2691.     end
  2692. end)
  2693.  
  2694. local CONNECT = nil
  2695.  
  2696. while true do
  2697.     Swait()
  2698.     ANIMATE.Parent = nil
  2699.     if Character:FindFirstChildOfClass("Humanoid") == nil then
  2700.         Humanoid = IT("Humanoid",Character)
  2701.     end
  2702.     for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  2703.         v:Stop();
  2704.     end
  2705.     SINE = SINE + CHANGE
  2706.     local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  2707.     local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  2708.     local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  2709.     local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  2710.     if ANIM == "Walk" and TORSOVELOCITY > 1 and NOWALK == false then
  2711.         RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2)) * Player_Size) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2712.         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)
  2713.         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(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2714.         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(76 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  2715.     elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) or NOWALK == true then
  2716.         RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2717.         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)
  2718.         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)
  2719.         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)
  2720.     end
  2721.     if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  2722.         ANIM = "Jump"
  2723.         if ATTACK == false then
  2724.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2725.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2726.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2727.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  2728.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, -0.3) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 0.2 / Animation_Speed)
  2729.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, -0.3) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  2730.         end
  2731.     elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  2732.         ANIM = "Fall"
  2733.         if ATTACK == false then
  2734.             RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2735.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  2736.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(45), RAD(0), RAD(25))* RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2737.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 0.2 / Animation_Speed)
  2738.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 0.2 / Animation_Speed)
  2739.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 0.2 / Animation_Speed)
  2740.         end
  2741.     elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  2742.         ANIM = "Idle"
  2743.         if ATTACK == false then
  2744.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(0), RAD(0), RAD(45)), 0.15 / Animation_Speed)
  2745.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-45)), 0.15 / Animation_Speed)
  2746.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2747.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2748.             RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(45), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2749.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / 12), -0.01) * ANGLES(RAD(0), RAD(-76), RAD(0)) * ANGLES(RAD(-8), RAD(0), RAD(0)), 0.15 / Animation_Speed)
  2750.         end
  2751.     elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  2752.         ANIM = "Walk"
  2753.         if ATTACK == false then
  2754.             RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.15 * COS(SINE / 12)) * ANGLES(RAD(5), RAD(0), RAD(25)), 0.15 / Animation_Speed)
  2755.             Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0), RAD(-25)), 0.15 / Animation_Speed)
  2756.             RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.35, 0+ 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(150), RAD(35), RAD(-5)) * RIGHTSHOULDERC0, 0.15 / Animation_Speed)
  2757.             LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.35, 0 + 0.15 * COS(SINE / 12), -0.2) * ANGLES(RAD(130), RAD(0), RAD(5)) * LEFTSHOULDERC0, 0.15 / Animation_Speed)
  2758.             RightHip.C0 = Clerp(RightHip.C0, CF(1 , -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.2+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(65), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-15)), 2 / Animation_Speed)
  2759.             LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.15 * COS(SINE / WALKSPEEDVALUE*2), -0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-115), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(15)), 2 / Animation_Speed)
  2760.         end
  2761.     end
  2762.     unanchor()
  2763.     Humanoid.MaxHealth = "inf"
  2764.     Humanoid.Health = "inf"
  2765.     if Rooted == false then
  2766.         Disable_Jump = false
  2767.         Humanoid.WalkSpeed = Speed
  2768.     elseif Rooted == true then
  2769.         Disable_Jump = true
  2770.         Humanoid.WalkSpeed = 0
  2771. end
  2772.  
  2773.     sick.Parent = Torso
  2774.     sick:resume()
  2775.     sick.Volume = 1
  2776.     sick.Pitch = 1
  2777.     sick.SoundId = "rbxassetid://24183557"
  2778.     sick.Name = "Un sen"
  2779. end
  2780. --//=================================\\
  2781. --\\=================================//
  2782.  
  2783.  
  2784. --//====================================================\\--
  2785. --||                     END OF SCRIPT
  2786. --\\====================================================//--
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top