SHARE
TWEET

Stando

MESCRIPT Nov 19th, 2019 79 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --https://github.com/Mokiros/roblox-FE-compatibility
  2. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  3. local Player,game,owner = owner,game
  4. local RealPlayer = Player
  5. do
  6.     print("FE Compatibility code V2 by Mokiros")
  7.     local RealPlayer = RealPlayer
  8.     script.Parent = RealPlayer.Character
  9.  
  10.     --Fake event to make stuff like Mouse.KeyDown work
  11.     local Disconnect_Function = function(this)
  12.         this[1].Functions[this[2]] = nil
  13.     end
  14.     local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}}
  15.     local FakeEvent_Metatable = {__index={
  16.         Connect = function(this,f)
  17.             local i = tostring(math.random(0,10000))
  18.             while this.Functions[i] do
  19.                 i = tostring(math.random(0,10000))
  20.             end
  21.             this.Functions[i] = f
  22.             return setmetatable({this,i},Disconnect_Metatable)
  23.         end
  24.     }}
  25.     FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect
  26.     local function fakeEvent()
  27.         return setmetatable({Functions={}},FakeEvent_Metatable)
  28.     end
  29.  
  30.     --Creating fake input objects with fake variables
  31.     local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
  32.     FakeMouse.keyUp = FakeMouse.KeyUp
  33.     FakeMouse.keyDown = FakeMouse.KeyDown
  34.     local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  35.     local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  36.         CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  37.     end}
  38.     --Merged 2 functions into one by checking amount of arguments
  39.     CAS.UnbindAction = CAS.BindAction
  40.  
  41.     --This function will trigger the events that have been :Connect()'ed
  42.     local function TriggerEvent(self,ev,...)
  43.         for _,f in pairs(self[ev].Functions) do
  44.             f(...)
  45.         end
  46.     end
  47.     FakeMouse.TriggerEvent = TriggerEvent
  48.     UIS.TriggerEvent = TriggerEvent
  49.  
  50.     --Client communication
  51.     local Event = Instance.new("RemoteEvent")
  52.     Event.Name = "UserInput_Event"
  53.     Event.OnServerEvent:Connect(function(plr,io)
  54.         if plr~=RealPlayer then return end
  55.         FakeMouse.Target = io.Target
  56.         FakeMouse.Hit = io.Hit
  57.         if not io.isMouse then
  58.             local b = io.UserInputState == Enum.UserInputState.Begin
  59.             if io.UserInputType == Enum.UserInputType.MouseButton1 then
  60.                 return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up")
  61.             end
  62.             if io.UserInputType == Enum.UserInputType.MouseButton2 then
  63.                 return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up")
  64.             end
  65.             for _,t in pairs(CAS.Actions) do
  66.                 for _,k in pairs(t.Keys) do
  67.                     if k==io.KeyCode then
  68.                         t.Function(t.Name,io.UserInputState,io)
  69.                     end
  70.                 end
  71.             end
  72.             FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  73.             UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false)
  74.         end
  75.     end)
  76.     Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event")
  77.     local Mouse = owner:GetMouse()
  78.     local UIS = game:GetService("UserInputService")
  79.     local input = function(io,RobloxHandled)
  80.         if RobloxHandled then return end
  81.         --Since InputObject is a client-side instance, we create and pass table instead
  82.         Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  83.     end
  84.     UIS.InputBegan:Connect(input)
  85.     UIS.InputEnded:Connect(input)
  86.     local h,t
  87.     --Give the server mouse data every second frame, but only if the values changed
  88.     --If player is not moving their mouse, client won't fire events
  89.     local HB = game:GetService("RunService").Heartbeat
  90.     while true do
  91.         if h~=Mouse.Hit or t~=Mouse.Target then
  92.             h,t=Mouse.Hit,Mouse.Target
  93.             Event:FireServer({isMouse=true,Target=t,Hit=h})
  94.         end
  95.         --Wait 2 frames
  96.         for i=1,2 do
  97.             HB:Wait()
  98.         end
  99.     end]==],script)
  100.  
  101.     ----Sandboxed game object that allows the usage of client-side methods and services
  102.     --Real game object
  103.     local RealGame = game
  104.  
  105.     --Metatable for fake service
  106.     local FakeService_Metatable = {
  107.         __index = function(self,k)
  108.             local s = rawget(self,"_RealService")
  109.             if s then
  110.                 return typeof(s[k])=="function"
  111.                 and function(_,...)return s[k](s,...)end or s[k]
  112.             end
  113.         end,
  114.         __newindex = function(self,k,v)
  115.             local s = rawget(self,"_RealService")
  116.             if s then s[k]=v end
  117.         end
  118.     }
  119.     local function FakeService(t,RealService)
  120.         t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService
  121.         return setmetatable(t,FakeService_Metatable)
  122.     end
  123.  
  124.     --Fake game object
  125.     local FakeGame = {
  126.         GetService = function(self,s)
  127.             return rawget(self,s) or RealGame:GetService(s)
  128.         end,
  129.         Players = FakeService({
  130.             LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player)
  131.         },"Players"),
  132.         UserInputService = FakeService(UIS,"UserInputService"),
  133.         ContextActionService = FakeService(CAS,"ContextActionService"),
  134.         RunService = FakeService({
  135.             _btrs = {},
  136.             RenderStepped = RealGame:GetService("RunService").Heartbeat,
  137.             BindToRenderStep = function(self,name,_,fun)
  138.                 self._btrs[name] = self.Heartbeat:Connect(fun)
  139.             end,
  140.             UnbindFromRenderStep = function(self,name)
  141.                 self._btrs[name]:Disconnect()
  142.             end,
  143.         },"RunService")
  144.     }
  145.     rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer)
  146.     FakeGame.service = FakeGame.GetService
  147.     FakeService(FakeGame,game)
  148.     --Changing owner to fake player object to support owner:GetMouse()
  149.     game,owner = FakeGame,FakeGame.Players.LocalPlayer
  150. end
  151. wait(0.016666666666666666)
  152. plr = game.Players.LocalPlayer
  153. mse = plr:GetMouse()
  154. sound = Instance.new("Sound", game.Workspace)
  155. sound.SoundId = "https://www.roblox.com/asset/?id=274698941"
  156. sound.Volume = 10
  157. canworld = true
  158. mse.KeyDown:connect(function(key)
  159.     key = key:lower()
  160.     if key == "g" then
  161.         if canworld == false then return end
  162.         if canworld then
  163.         canworld = false
  164.         sound:Play()
  165.         local function spawnpart()
  166.         sphere = Instance.new("Part")
  167.         --game.Debris:AddItem(sphere,3)
  168.         local sm = Instance.new("SpecialMesh", sphere)
  169.         sm.MeshType = "Sphere"
  170.         sphere.Transparency = 0.5
  171.         sphere.Anchored = true
  172.         sphere.CanCollide = false
  173.         sphere.Material = "SmoothPlastic"
  174.         sphere.BrickColor = BrickColor.new("Lapis")
  175.         end
  176.        
  177.         local function weld(lol)
  178.             local weld = Instance.new("Weld", plr.Character.Torso)
  179.             weld.Part0 = plr.Character.Torso
  180.             weld.Part1 = lol
  181.             weld.C0 = plr.Character.Torso.CFrame:inverse()
  182.             weld.C1 = lol.CFrame:inverse()
  183.         end
  184.         wait(1.4)
  185.         spawnpart()
  186.             for i, v in pairs(game.Players:GetChildren()) do
  187.             t = v.Character:FindFirstChild("Torso")
  188.             if t then
  189.                 t.Anchored = true
  190.                 plr.Character:FindFirstChild("Torso").Anchored = false
  191.             end
  192.             RA = v.Character:FindFirstChild("Right Arm")
  193.             if RA then
  194.                 RA.Anchored = true
  195.                 plr.Character:FindFirstChild("Right Arm").Anchored = false
  196.             end
  197.             LA = v.Character:FindFirstChild("Left Arm")
  198.             if LA then
  199.                 LA.Anchored = true
  200.                 plr.Character:FindFirstChild("Left Arm").Anchored = false
  201.             end
  202.             RL = v.Character:FindFirstChild("Right Leg")
  203.             if RL then
  204.                 RL.Anchored = true
  205.                 plr.Character:FindFirstChild("Right Leg").Anchored = false
  206.             end
  207.             LL = v.Character:FindFirstChild("Left Leg")
  208.             if LL then
  209.                 LL.Anchored = true
  210.                 plr.Character:FindFirstChild("Left Leg").Anchored = false
  211.             end
  212.         end
  213.         weld(sphere)
  214.         cce = Instance.new("ColorCorrectionEffect", game.Lighting)
  215.         cce.Saturation = -2
  216.         --game.Debris:AddItem(cce, 5)
  217.         sphere.Parent = game.Workspace
  218.         for i = 1,10 do
  219.             sphere.Size = sphere.Size + Vector3.new(50,50,50)
  220.             wait()
  221.             end
  222.         --wait(5)
  223.        
  224.         end
  225.     end
  226. end
  227. )
  228.  
  229. mse.KeyDown:connect(function(key)
  230.     key = key:lower()
  231.     if key == "h" then
  232. canworld = true
  233.         for i, v in pairs(game.Players:GetChildren()) do
  234.         t = v.Character:FindFirstChild("Torso")
  235.             if t then
  236.                 t.Anchored = false
  237.             end
  238.             RA = v.Character:FindFirstChild("Right Arm")
  239.             if RA then
  240.                 RA.Anchored = false
  241.             end
  242.             LA = v.Character:FindFirstChild("Left Arm")
  243.             if LA then
  244.                 LA.Anchored = false
  245.             end
  246.             RL = v.Character:FindFirstChild("Right Leg")
  247.             if RL then
  248.                 RL.Anchored = false
  249.             end
  250.             LL = v.Character:FindFirstChild("Left Leg")
  251.             if LL then
  252.                 LL.Anchored = false
  253.             end
  254.         end
  255.         cce.Saturation = 0
  256. sphere:Destroy()
  257. end
  258. end)
  259.  
  260.   Effects = {}
  261.   local Player = game.Players.localPlayer
  262.   local Character = Player.Character
  263.   Character.Archivable = true
  264.   AdvancingFortress = Character:Clone()
  265.   AdvancingFortress.Parent = Character
  266.   torso = AdvancingFortress.Torso
  267.   hum = AdvancingFortress.Humanoid
  268.   AdvancingFortress.Name = "Advancing Fortress"
  269.   pl = AdvancingFortress
  270.   for i, v in pairs(AdvancingFortress:GetChildren()) do
  271.     if v:IsA("BasePart") then
  272.       v.Transparency = 1
  273.     end
  274.   end
  275.   local Humanoid = AdvancingFortress.Humanoid
  276.   local Mouse = Player:GetMouse()
  277.   local LeftArm = AdvancingFortress["Left Arm"]
  278.   local RightArm = AdvancingFortress["Right Arm"]
  279.   local LeftLeg = AdvancingFortress["Left Leg"]
  280.   local RightLeg = AdvancingFortress["Right Leg"]
  281.   local Head = AdvancingFortress.Head
  282.   local Torso = AdvancingFortress.Torso
  283.   local Camera = game.Workspace.CurrentCamera
  284.   local RootPart = AdvancingFortress.HumanoidRootPart
  285.   local RootJoint = RootPart.RootJoint
  286.   local attack = false
  287.   local Anim = "Idle"
  288.   local attacktype = 1
  289.   local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  290.   local velocity = RootPart.Velocity.y
  291.   local sine = 0
  292.   local change = 1
  293.   local Create = LoadLibrary("RbxUtility").Create
  294.   local TimeStop = false
  295.   local m = Create("Model")({
  296.     Parent = AdvancingFortress,
  297.     Name = "WeaponModel"
  298.   })
  299.   Head.face:remove()
  300.   AdvancingFortress.Head.Name = "FHead"
  301.   AdvancingFortress.Torso.Name = "FTorso"
  302.   AdvancingFortress.HumanoidRootPart.Name = "FHumanoidRootPart"
  303.   Humanoid.Animator.Parent = nil
  304.   AdvancingFortress.Animate.Parent = nil
  305.   local function newMotor(part0, part1, c0, c1)
  306.     local w = Create("Weld")({
  307.       Parent = part0,
  308.       Part0 = part0,
  309.       Part1 = part1,
  310.       C0 = c0,
  311.       C1 = c1
  312.     })
  313.     return w
  314.   end
  315.   function clerp(a, b, t)
  316.     return a:lerp(b, t)
  317.   end
  318.   RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
  319.   NeckCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  320.   local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
  321.   local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
  322.   local RH = newMotor(Torso, RightLeg, CFrame.new(0.5, -2, 0), CFrame.new(0, 0, 0))
  323.   local LH = newMotor(Torso, LeftLeg, CFrame.new(-0.5, -2, 0), CFrame.new(0, 0, 0))
  324.   RootJoint.C1 = CFrame.new(0, 0, 0)
  325.   RootJoint.C0 = CFrame.new(0, 0, 0)
  326.   Torso.Neck.C1 = CFrame.new(0, 0, 0)
  327.   Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
  328.   local rarmc1 = RW.C1
  329.   local larmc1 = LW.C1
  330.   local rlegc1 = RH.C1
  331.   local llegc1 = LH.C1
  332.   local resetc1 = false
  333.   function PlayAnimationFromTable(table, speed, bool)
  334.     RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
  335.     Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
  336.     RW.C0 = clerp(RW.C0, table[3], speed)
  337.     LW.C0 = clerp(LW.C0, table[4], speed)
  338.     RH.C0 = clerp(RH.C0, table[5], speed)
  339.     LH.C0 = clerp(LH.C0, table[6], speed)
  340.     if bool == true and resetc1 == false then
  341.       resetc1 = true
  342.       RootJoint.C1 = RootJoint.C1
  343.       Torso.Neck.C1 = Torso.Neck.C1
  344.       RW.C1 = rarmc1
  345.       LW.C1 = larmc1
  346.       RH.C1 = rlegc1
  347.       LH.C1 = llegc1
  348.     end
  349.   end
  350.   ArtificialHB = Create("BindableEvent", script)({Parent = script, Name = "Heartbeat"})
  351.   script:WaitForChild("Heartbeat")
  352.   frame = 0.03333333333333333
  353.   tf = 0
  354.   allowframeloss = false
  355.   tossremainder = false
  356.   lastframe = tick()
  357.   script.Heartbeat:Fire()
  358.   game:GetService("RunService").Heartbeat:connect(function(s, p)
  359.     tf = tf + s
  360.     if tf >= frame then
  361.       if allowframeloss then
  362.         script.Heartbeat:Fire()
  363.         lastframe = tick()
  364.       else
  365.         for i = 1, math.floor(tf / frame) do
  366.           script.Heartbeat:Fire()
  367.         end
  368.         lastframe = tick()
  369.       end
  370.       if tossremainder then
  371.         tf = 0
  372.       else
  373.         tf = tf - frame * math.floor(tf / frame)
  374.       end
  375.     end
  376.   end)
  377.   function swait(num)
  378.     if num == 0 or num == nil then
  379.       ArtificialHB.Event:wait()
  380.     else
  381.       for i = 0, num do
  382.         ArtificialHB.Event:wait()
  383.       end
  384.     end
  385.   end
  386.   function RemoveOutlines(part)
  387.     part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  388.   end
  389.   CFuncs = {
  390.     Part = {
  391.       Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  392.         local Part = Create("Part")({
  393.           Parent = Parent,
  394.           Reflectance = Reflectance,
  395.           Transparency = Transparency,
  396.           CanCollide = false,
  397.           Locked = true,
  398.           BrickColor = BrickColor.new(tostring(BColor)),
  399.           Name = Name,
  400.           Size = Size,
  401.           Material = Material
  402.         })
  403.         RemoveOutlines(Part)
  404.         return Part
  405.       end
  406.     },
  407.     Mesh = {
  408.       Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  409.         local Msh = Create(Mesh)({
  410.           Parent = Part,
  411.           Offset = OffSet,
  412.           Scale = Scale
  413.         })
  414.         if Mesh == "SpecialMesh" then
  415.           Msh.MeshType = MeshType
  416.           Msh.MeshId = MeshId
  417.         end
  418.         return Msh
  419.       end
  420.     },
  421.     Weld = {
  422.       Create = function(Parent, Part0, Part1, C0, C1)
  423.         local Weld = Create("Weld")({
  424.           Parent = Parent,
  425.           Part0 = Part0,
  426.           Part1 = Part1,
  427.           C0 = C0,
  428.           C1 = C1
  429.         })
  430.         return Weld
  431.       end
  432.     },
  433.     Sound = {
  434.       Create = function(id, par, vol, pit)
  435.         local Sound = Create("Sound")({
  436.           Volume = vol,
  437.           Pitch = pit or 1,
  438.           SoundId = "rbxassetid://" .. id,
  439.           Parent = par or workspace
  440.         })
  441.         Sound:play()
  442.         game:GetService("Debris"):AddItem(Sound, 130)
  443.         return Sound
  444.       end
  445.     },
  446.     Decal = {
  447.       Create = function(Color, Texture, Transparency, Name, Parent)
  448.         local Decal = Create("Decal")({
  449.           Color3 = Color,
  450.           Texture = "rbxassetid://" .. Texture,
  451.           Transparency = Transparency,
  452.           Name = Name,
  453.           Parent = Parent
  454.         })
  455.         return Decal
  456.       end
  457.     },
  458.     BillboardGui = {
  459.       Create = function(Parent, Image, Position, Size)
  460.         local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
  461.         BillPar.CFrame = CFrame.new(Position)
  462.         local Bill = Create("BillboardGui")({
  463.           Parent = BillPar,
  464.           Adornee = BillPar,
  465.           Size = UDim2.new(1, 0, 1, 0),
  466.           SizeOffset = Vector2.new(Size, Size)
  467.         })
  468.         local d = Create("ImageLabel", Bill)({
  469.           Parent = Bill,
  470.           BackgroundTransparency = 1,
  471.           Size = UDim2.new(1, 0, 1, 0),
  472.           Image = "rbxassetid://" .. Image
  473.         })
  474.         return BillPar
  475.       end
  476.     },
  477.     ParticleEmitter = {
  478.       Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
  479.         local Particle = Create("ParticleEmitter")({
  480.           Parent = Parent,
  481.           Color = ColorSequence.new(Color1, Color2),
  482.           LightEmission = LightEmission,
  483.           Size = Size,
  484.           Texture = Texture,
  485.           Transparency = Transparency,
  486.           ZOffset = ZOffset,
  487.           Acceleration = Accel,
  488.           Drag = Drag,
  489.           LockedToPart = LockedToPart,
  490.           VelocityInheritance = VelocityInheritance,
  491.           EmissionDirection = EmissionDirection,
  492.           Enabled = Enabled,
  493.           Lifetime = LifeTime,
  494.           Rate = Rate,
  495.           Rotation = Rotation,
  496.           RotSpeed = RotSpeed,
  497.           Speed = Speed,
  498.           VelocitySpread = VelocitySpread
  499.         })
  500.         return Particle
  501.       end
  502.     },
  503.     CreateTemplate = {}
  504.   }
  505.   function rayCast(Position, Direction, Range, Ignore)
  506.     return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
  507.   end
  508.   function FindNearestTorso(pos)
  509.     local list = game.Workspace:children()
  510.     local torso
  511.     local dist = 1000
  512.     local temp, human, temp2
  513.     for x = 1, #list do
  514.       temp2 = list[x]
  515.       if temp2.className == "Model" and temp2.Name ~= Character.Name then
  516.         temp = temp2:findFirstChild("Torso")
  517.         human = temp2:findFirstChild("Humanoid")
  518.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
  519.           local dohit = true
  520.           if dohit == true then
  521.             torso = temp
  522.             dist = (temp.Position - pos).magnitude
  523.           end
  524.         end
  525.       end
  526.     end
  527.     return torso, dist
  528.   end
  529.   function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  530.     if hit.Parent == nil then
  531.       return
  532.     end
  533.     local h = hit.Parent:FindFirstChild("Humanoid")
  534.     for _, v in pairs(hit.Parent:children()) do
  535.       if v:IsA("Humanoid") then
  536.         h = v
  537.       end
  538.     end
  539.     if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  540.       if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  541.         return
  542.       end
  543.       local c = Create("ObjectValue")({
  544.         Name = "creator",
  545.         Value = game:service("Players").LocalPlayer,
  546.         Parent = h
  547.       })
  548.       game:GetService("Debris"):AddItem(c, 0.5)
  549.       CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
  550.       local Damage = math.random(minim, maxim)
  551.       local blocked = false
  552.       local block = hit.Parent:findFirstChild("Block")
  553.       if block ~= nil and block.className == "IntValue" and block.Value > 0 then
  554.         blocked = true
  555.         block.Value = block.Value - 1
  556.         print(block.Value)
  557.       end
  558.       if TimeStop == false then
  559.         h.Health = h.Health - Damage
  560.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Cool yellow").Color)
  561.       elseif TimeStop == true then
  562.         repeat
  563.           wait()
  564.         until TimeStop == false
  565.         h.Health = h.Health - Damage / 2
  566.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Cool yellow").Color)
  567.       end
  568.       if Type == "Knockdown" then
  569.         local hum = hit.Parent.Humanoid
  570.         hum.PlatformStand = true
  571.         coroutine.resume(coroutine.create(function(HHumanoid)
  572.           swait(1)
  573.           HHumanoid.PlatformStand = false
  574.         end), hum)
  575.         local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  576.         local bodvol = Create("BodyVelocity")({
  577.           velocity = angle * knockback,
  578.           P = 5000,
  579.           maxForce = Vector3.new(8000, 8000, 8000),
  580.           Parent = hit
  581.         })
  582.         local rl = Create("BodyAngularVelocity")({
  583.           P = 3000,
  584.           maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  585.           angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  586.           Parent = hit
  587.         })
  588.         game:GetService("Debris"):AddItem(bodvol, 0.5)
  589.         game:GetService("Debris"):AddItem(rl, 0.5)
  590.       elseif Type == "Normal" then
  591.         local vp = Create("BodyVelocity")({
  592.           P = 500,
  593.           maxForce = Vector3.new(math.huge, 0, math.huge),
  594.           velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  595.         })
  596.         if knockback > 0 then
  597.           vp.Parent = hit.Parent.Torso
  598.         end
  599.         game:GetService("Debris"):AddItem(vp, 0.5)
  600.       elseif Type == "Up" then
  601.         local bodyVelocity = Create("BodyVelocity")({
  602.           velocity = Vector3.new(0, 20, 0),
  603.           P = 5000,
  604.           maxForce = Vector3.new(8000, 8000, 8000),
  605.           Parent = hit
  606.         })
  607.         game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  608.       elseif Type == "DarkUp" then
  609.         coroutine.resume(coroutine.create(function()
  610.           for i = 0, 1, 0.1 do
  611.             swait()
  612.             Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
  613.           end
  614.         end))
  615.         local bodyVelocity = Create("BodyVelocity")({
  616.           velocity = Vector3.new(0, 20, 0),
  617.           P = 5000,
  618.           maxForce = Vector3.new(8000, 8000, 8000),
  619.           Parent = hit
  620.         })
  621.         game:GetService("Debris"):AddItem(bodyVelocity, 1)
  622.       elseif Type == "Snare" then
  623.         local bp = Create("BodyPosition")({
  624.           P = 2000,
  625.           D = 100,
  626.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  627.           position = hit.Parent.Torso.Position,
  628.           Parent = hit.Parent.Torso
  629.         })
  630.         game:GetService("Debris"):AddItem(bp, 1)
  631.       elseif Type == "Freeze" then
  632.         local BodPos = Create("BodyPosition")({
  633.           P = 50000,
  634.           D = 1000,
  635.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  636.           position = hit.Parent.Torso.Position,
  637.           Parent = hit.Parent.Torso
  638.         })
  639.         local BodGy = Create("BodyGyro")({
  640.           maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
  641.           P = 20000,
  642.           Parent = hit.Parent.Torso,
  643.           cframe = hit.Parent.Torso.CFrame
  644.         })
  645.         hit.Parent.Torso.Anchored = true
  646.         coroutine.resume(coroutine.create(function(Part)
  647.           swait(1.5)
  648.           Part.Anchored = false
  649.         end), hit.Parent.Torso)
  650.         game:GetService("Debris"):AddItem(BodPos, 3)
  651.         game:GetService("Debris"):AddItem(BodGy, 3)
  652.       end
  653.       local debounce = Create("BoolValue")({
  654.         Name = "DebounceHit",
  655.         Parent = hit.Parent,
  656.         Value = true
  657.       })
  658.       game:GetService("Debris"):AddItem(debounce, Delay)
  659.       c = Create("ObjectValue")({
  660.         Name = "creator",
  661.         Value = Player,
  662.         Parent = h
  663.       })
  664.       game:GetService("Debris"):AddItem(c, 0.5)
  665.     end
  666.   end
  667.   function ShowDamage(Pos, Text, Time, Color)
  668.     local Rate = 0.03333333333333333
  669.     local Pos = Pos or Vector3.new(0, 0, 0)
  670.     local Text = Text or ""
  671.     local Time = Time or 2
  672.     local Color = Color or Color3.new(1, 0, 1)
  673.     local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
  674.     EffectPart.Anchored = true
  675.     local BillboardGui = Create("BillboardGui")({
  676.       Size = UDim2.new(3, 0, 3, 0),
  677.       Adornee = EffectPart,
  678.       Parent = EffectPart
  679.     })
  680.     local TextLabel = Create("TextLabel")({
  681.       BackgroundTransparency = 1,
  682.       Size = UDim2.new(1, 0, 1, 0),
  683.       Text = Text,
  684.       Font = "SciFi",
  685.       TextColor3 = Color,
  686.       TextScaled = true,
  687.       Parent = BillboardGui
  688.     })
  689.     game.Debris:AddItem(EffectPart, Time)
  690.     EffectPart.Parent = game:GetService("Workspace")
  691.     delay(0, function()
  692.       local Frames = Time / Rate
  693.       for Frame = 1, Frames do
  694.         wait(Rate)
  695.         local Percent = Frame / Frames
  696.         EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  697.         TextLabel.TextTransparency = Percent
  698.       end
  699.       if EffectPart and EffectPart.Parent then
  700.         EffectPart:Destroy()
  701.       end
  702.     end)
  703.   end
  704.   local STDamage = false
  705.   function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
  706.     for _, c in pairs(workspace:children()) do
  707.       local hum = c:findFirstChild("Humanoid")
  708.       if hum ~= nil then
  709.         local head = c:findFirstChild("Torso")
  710.         if head ~= nil then
  711.           local targ = head.Position - Part.Position
  712.           local mag = targ.magnitude
  713.           if Magnitude >= mag and c.Name ~= Player.Name then
  714.             Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0.1, HitSound, HitPitch)
  715.             if STDamage == true then
  716.               for i = 1, 3 do
  717.                 Effects.Block.Create(BrickColor.new("Cool yellow"), head.CFrame, 1, 1, 1, 4, 4, 4, 0.07, 1)
  718.               end
  719.               for i = 1, 10 do
  720.                 CamShake(1, 70000)
  721.                 Effects.Break.Create(BrickColor.new("Cool yellow"), head.CFrame, 1, 1, 1)
  722.               end
  723.             elseif STDamage == false then
  724.               CamShake(1, 90000)
  725.               Effects.Block.Create(BrickColor.new("Cool yellow"), head.CFrame, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.07, 1)
  726.               for i = 1, 2 do
  727.                 Effects.Break.Create(BrickColor.new("Cool yellow"), head.CFrame, 0.4, 0.4, 0.4)
  728.               end
  729.             end
  730.           end
  731.         end
  732.       end
  733.     end
  734.   end
  735.   HHandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "HHandle", Vector3.new(1.09999979, 0.299999923, 1.0999999))
  736.   HHandleWeld = CFuncs.Weld.Create(m, Head, HHandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0646438599, -0.0500068665, -0.0646400452, -0.707107365, -3.21031663E-8, 0.707106411, -8.19564079E-8, 1.00000119, -1.41561088E-7, -0.707106352, 1.38630043E-7, -0.707107484))
  737.   Eye1 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Deep orange", "Eye1", Vector3.new(0.400000006, 0.200000003, 0.200000003))
  738.   PartWeld = CFuncs.Weld.Create(m, HHandle, Eye1, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0381011963, -0.0574798584, 0.471725464, -2.89082527E-6, 0.173647985, -0.984807968, -6.2584877E-7, 0.984808922, 0.173648104, 1.00000012, 1.02902288E-6, -2.77161598E-6))
  739.   CFuncs.Mesh.Create("SpecialMesh", Eye1, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  740.   Eye2 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Really black", "Eye2", Vector3.new(0.400000006, 0.200000003, 0.200000003))
  741.   PartWeld = CFuncs.Weld.Create(m, HHandle, Eye2, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0115432739, -0.0487277508, 0.482452393, -0.981060266, -0.173648134, -0.0858327746, -0.172987267, 0.984808922, -0.0151339322, 0.0871568322, 3.96735317E-7, -0.996194839))
  742.   CFuncs.Mesh.Create("SpecialMesh", Eye2, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  743.   THandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "THandle", Vector3.new(1, 0.799999893, 1))
  744.   THandleWeld = CFuncs.Weld.Create(m, Torso, THandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  745.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.80000019, 0.300000012, 1.80000007))
  746.   PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-6.10351563E-5, -1.04342794, -0.404396057, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
  747.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  748.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 1.10000002, 0.300000012))
  749.   PartWeld = CFuncs.Weld.Create(m, THandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-5.34057617E-5, -0.943422318, -1.35441589, 1, -8.19564079E-8, 5.96046519E-8, -1.01078633E-7, 0.939694166, -0.342019171, 1.52638329E-8, 0.34201926, 0.939693213))
  750.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  751.   AHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "AHandleR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
  752.   AHandleRWeld = CFuncs.Weld.Create(m, RightArm, AHandleR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.209915161, 0.00999641418, -3.81469727E-6, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  753.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
  754.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0999984741, 0.550004005, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  755.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  756.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.150001526, 0.200003624, -0.359994888, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  757.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  758.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.20000267, 0.359992981, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  759.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
  760.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.209899902, -0.809997559, 5.7220459E-6, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
  761.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
  762.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.300003052, 0.650004387, 1.71661377E-5, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  763.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
  764.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.650003433, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  765.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
  766.   PartWeld = CFuncs.Weld.Create(m, AHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199996948, -0.049996376, -3.81469727E-6, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  767.   HitboxR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "HitboxR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
  768.   HitboxRWeld = CFuncs.Weld.Create(m, AHandleR, HitboxR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.700003624, 0, 1, -8.19564079E-8, 5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, 5.96046519E-8, -1.41561088E-7, 1.00000024))
  769.   AHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "AHandleL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
  770.   AHandleLWeld = CFuncs.Weld.Create(m, LeftArm, AHandleL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.210014343, 0.00999736786, 1.14440918E-5, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
  771.   HitboxL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "HitboxL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
  772.   HitboxLWeld = CFuncs.Weld.Create(m, AHandleL, HitboxL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.700003624, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  773.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  774.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149986267, 0.200001717, -0.360012054, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  775.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
  776.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.199989319, -0.0499982834, -9.53674316E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  777.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  778.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149986267, 0.200001717, 0.359992981, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  779.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
  780.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.21005249, -0.81000042, 2.28881836E-5, -1, -8.19564079E-8, -5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, -5.96046519E-8, -1.41561088E-7, -1.00000024))
  781.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
  782.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0999984741, 0.550003052, -5.7220459E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  783.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
  784.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.299995422, 0.650003433, -3.81469727E-6, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  785.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
  786.   PartWeld = CFuncs.Weld.Create(m, AHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.149993896, 0.65000248, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  787.   LHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "LHandleR", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  788.   LHandleRWeld = CFuncs.Weld.Create(m, RightLeg, LHandleR, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00498962402, -0.0950021744, 0.00499534607, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
  789.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.800000012, 0.800000012, 0.200000003))
  790.   PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00498962402, -0.00499916077, -0.604999542, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  791.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  792.   PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.600002289, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  793.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
  794.   PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -0.454998016, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  795.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.400000006, 1.20000005, 0.200000003))
  796.   PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00499725342, -0.00499916077, -0.604999542, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  797.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
  798.   PartWeld = CFuncs.Weld.Create(m, LHandleR, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00499725342, 0.0149993896, 0.00500297546, 2.28095047E-7, 1.00000775, 2.99581131E-7, -1.00000417, 5.63755016E-8, -4.06898749E-7, -2.98379774E-7, 2.07959161E-8, 1.0000037))
  799.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  800.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  801.   WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.604999542, -0.504998207, 0.29499054, -2.98023224E-8, -6.70552254E-8, -1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
  802.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  803.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  804.   WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.60499382, -0.495001793, 0.305000305, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
  805.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  806.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  807.   WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.604999542, -0.495001793, 0.29499054, 2.98023224E-8, 6.70552254E-8, 1.00000012, -3.7252903E-8, -1.0000006, -7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
  808.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  809.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  810.   WedgeWeld = CFuncs.Weld.Create(m, LHandleR, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.604999542, -0.504998207, 0.305000305, 2.98023224E-8, 6.70552254E-8, 1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, -1, -4.47034836E-8, -2.98023224E-8))
  811.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  812.   LHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "LHandleL", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  813.   LHandleLWeld = CFuncs.Weld.Create(m, LeftLeg, LHandleL, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00498199463, -0.095000267, 0.00502204895, -1, 8.19564079E-8, -5.96046519E-8, -8.19564079E-8, 1.00000119, -1.41561088E-7, -5.96046519E-8, 1.41561088E-7, -1.00000024))
  814.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  815.   PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0.600001335, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  816.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.400000006, 1.20000005, 0.300000012))
  817.   PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00499725342, -0.00500106812, -0.554998398, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  818.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
  819.   PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, -0.454999924, 0, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  820.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
  821.   PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.00499534607, 0.0149993896, 0.00500297546, 2.28095047E-7, 1.00000775, 2.99581131E-7, -1.00000417, 5.63755016E-8, -4.06898749E-7, -2.98379774E-7, 2.07959161E-8, 1.0000037))
  822.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  823.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Part", Vector3.new(0.800000012, 0.800000012, 0.300000012))
  824.   PartWeld = CFuncs.Weld.Create(m, LHandleL, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00498962402, -0.00500106812, -0.554998398, 1, 8.19564079E-8, 5.96046519E-8, 8.19564079E-8, 1.00000119, 1.41561088E-7, 5.96046519E-8, 1.41561088E-7, 1.00000024))
  825.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  826.   WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.554998398, -0.505000114, 0.305000305, 2.98023224E-8, 6.70552254E-8, 1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, -1, -4.47034836E-8, -2.98023224E-8))
  827.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  828.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  829.   WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.554998398, -0.505000114, 0.29499054, -2.98023224E-8, -6.70552254E-8, -1.00000012, 3.7252903E-8, 1.0000006, 7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
  830.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  831.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  832.   WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.554998398, -0.494999886, 0.29499054, 2.98023224E-8, 6.70552254E-8, 1.00000012, -3.7252903E-8, -1.0000006, -7.4505806E-8, 1, 4.47034836E-8, 2.98023224E-8))
  833.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  834.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Camo", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  835.   WedgeWeld = CFuncs.Weld.Create(m, LHandleL, Wedge, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.554998398, -0.494999886, 0.305000305, -5.96046519E-8, -1.41561088E-7, -1.00000024, -8.19564079E-8, -1.00000119, -1.41561088E-7, -1, -8.19564079E-8, -5.96046519E-8))
  836.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  837.   Shield = CFuncs.Part.Create(m, "Neon", 0, 0.5, "Cool yellow", "Part", Vector3.new(9.1, 8.5, 0.2))
  838.   CFuncs.Mesh.Create("SpecialMesh", Shield, "FileMesh", "rbxassetid://708292865", Vector3.new(0, 0, 0), Vector3.new(0.04, 0.04, 0.04))
  839.   Shield.Parent = nil
  840.   EffectModel = Create("Model")({Parent = Character, Name = "Effects"})
  841.   Effects = {
  842.     Block = {
  843.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
  844.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  845.         prt.Anchored = true
  846.         prt.CFrame = cframe
  847.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  848.         game:GetService("Debris"):AddItem(prt, 10)
  849.         if Type == 1 or Type == nil then
  850.           table.insert(Effects, {
  851.             prt,
  852.             "Block1",
  853.             delay,
  854.             x3,
  855.             y3,
  856.             z3,
  857.             msh
  858.           })
  859.         elseif Type == 2 then
  860.           table.insert(Effects, {
  861.             prt,
  862.             "Block2",
  863.             delay,
  864.             x3,
  865.             y3,
  866.             z3,
  867.             msh
  868.           })
  869.         end
  870.       end
  871.     },
  872.     Cylinder = {
  873.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  874.         local prt = CFuncs.Part .. Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
  875.         prt.Anchored = true
  876.         prt.CFrame = cframe
  877.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  878.         game:GetService("Debris"):AddItem(prt, 2)
  879.         Effects[#Effects + 1] = {
  880.           prt,
  881.           "Cylinder",
  882.           delay,
  883.           x3,
  884.           y3,
  885.           z3
  886.         }
  887.       end
  888.     },
  889.     Head = {
  890.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  891.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  892.         prt.Anchored = true
  893.         prt.CFrame = cframe
  894.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "nil", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  895.         game:GetService("Debris"):AddItem(prt, 10)
  896.         table.insert(Effects, {
  897.           prt,
  898.           "Cylinder",
  899.           delay,
  900.           x3,
  901.           y3,
  902.           z3,
  903.           msh
  904.         })
  905.       end
  906.     },
  907.     Sphere = {
  908.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  909.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  910.         prt.Anchored = true
  911.         prt.CFrame = cframe
  912.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  913.         game:GetService("Debris"):AddItem(prt, 10)
  914.         table.insert(Effects, {
  915.           prt,
  916.           "Cylinder",
  917.           delay,
  918.           x3,
  919.           y3,
  920.           z3,
  921.           msh
  922.         })
  923.       end
  924.     },
  925.     Sphere2 = {
  926.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  927.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  928.         prt.Anchored = true
  929.         prt.CFrame = cframe
  930.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  931.         game:GetService("Debris"):AddItem(prt, 10)
  932.         table.insert(Effects, {
  933.           prt,
  934.           "Cylinder",
  935.           delay,
  936.           x3,
  937.           y3,
  938.           z3,
  939.           msh
  940.         })
  941.       end
  942.     },
  943.     Elec = {
  944.       Create = function(cff, x, y, z)
  945.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("Cool yellow"), "Part", Vector3.new(1, 1, 1))
  946.         prt.Anchored = true
  947.         prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
  948.         prt.CFrame = CFrame.new(prt.Position)
  949.         game:GetService("Debris"):AddItem(prt, 2)
  950.         local xval = math.random() / 2
  951.         local yval = math.random() / 2
  952.         local zval = math.random() / 2
  953.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
  954.         table.insert(Effects, {
  955.           prt,
  956.           "Elec",
  957.           0.1,
  958.           x,
  959.           y,
  960.           z,
  961.           xval,
  962.           yval,
  963.           zval
  964.         })
  965.       end
  966.     },
  967.     Ring = {
  968.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  969.         local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
  970.         prt.Anchored = true
  971.         prt.CFrame = cframe
  972.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  973.         game:GetService("Debris"):AddItem(prt, 10)
  974.         table.insert(Effects, {
  975.           prt,
  976.           "Cylinder",
  977.           delay,
  978.           x3,
  979.           y3,
  980.           z3,
  981.           msh
  982.         })
  983.       end
  984.     },
  985.     Wave = {
  986.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  987.         local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
  988.         prt.Anchored = true
  989.         prt.CFrame = cframe
  990.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  991.         game:GetService("Debris"):AddItem(prt, 10)
  992.         table.insert(Effects, {
  993.           prt,
  994.           "Cylinder",
  995.           delay,
  996.           x3,
  997.           y3,
  998.           z3,
  999.           msh
  1000.         })
  1001.       end
  1002.     },
  1003.     Break = {
  1004.       Create = function(brickcolor, cframe, x1, y1, z1)
  1005.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
  1006.         prt.Anchored = true
  1007.         prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1008.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1009.         local num = math.random(10, 50) / 1000
  1010.         game:GetService("Debris"):AddItem(prt, 10)
  1011.         table.insert(Effects, {
  1012.           prt,
  1013.           "Shatter",
  1014.           num,
  1015.           prt.CFrame,
  1016.           math.random() - math.random(),
  1017.           0,
  1018.           math.random(50, 100) / 100
  1019.         })
  1020.       end
  1021.     },
  1022.     Fire = {
  1023.       Create = function(brickcolor, cframe, x1, y1, z1, delay)
  1024.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  1025.         prt.Anchored = true
  1026.         prt.CFrame = cframe
  1027.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1028.         game:GetService("Debris"):AddItem(prt, 10)
  1029.         table.insert(Effects, {
  1030.           prt,
  1031.           "Fire",
  1032.           delay,
  1033.           1,
  1034.           1,
  1035.           1,
  1036.           msh
  1037.         })
  1038.       end
  1039.     },
  1040.     FireWave = {
  1041.       Create = function(brickcolor, cframe, x1, y1, z1)
  1042.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
  1043.         prt.Anchored = true
  1044.         prt.CFrame = cframe
  1045.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1046.         local d = Create("Decal")({
  1047.           Parent = prt,
  1048.           Texture = "rbxassetid://26356434",
  1049.           Face = "Top"
  1050.         })
  1051.         local d = Create("Decal")({
  1052.           Parent = prt,
  1053.           Texture = "rbxassetid://26356434",
  1054.           Face = "Bottom"
  1055.         })
  1056.         game:GetService("Debris"):AddItem(prt, 10)
  1057.         table.insert(Effects, {
  1058.           prt,
  1059.           "FireWave",
  1060.           1,
  1061.           30,
  1062.           math.random(400, 600) / 100,
  1063.           msh
  1064.         })
  1065.       end
  1066.     },
  1067.     Lightning = {
  1068.       Create = function(p0, p1, tym, ofs, col, th, tra, last)
  1069.         local magz = (p0 - p1).magnitude
  1070.         local curpos = p0
  1071.         local trz = {
  1072.           -ofs,
  1073.           ofs
  1074.         }
  1075.         for i = 1, tym do
  1076.           local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
  1077.           local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
  1078.           local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
  1079.           li.Material = "Neon"
  1080.           if tym == i then
  1081.             local magz2 = (curpos - p1).magnitude
  1082.             li.Size = Vector3.new(th, th, magz2)
  1083.             li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
  1084.             table.insert(Effects, {
  1085.               li,
  1086.               "Disappear",
  1087.               last
  1088.             })
  1089.           else
  1090.             li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
  1091.             curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
  1092.             game.Debris:AddItem(li, 10)
  1093.             table.insert(Effects, {
  1094.               li,
  1095.               "Disappear",
  1096.               last
  1097.             })
  1098.           end
  1099.         end
  1100.       end
  1101.     },
  1102.     EffectTemplate = {}
  1103.   }
  1104.   local Invisible = true
  1105.   function Reappear()
  1106.     for _, i in pairs(AdvancingFortress:children()) do
  1107.       if i:IsA("BasePart") then
  1108.         coroutine.resume(coroutine.create(function(Part)
  1109.           for i = 0, 1, 0.3 do
  1110.             swait()
  1111.             Part.Transparency = -i
  1112.           end
  1113.           Part.Transparency = 0
  1114.         end), i)
  1115.       end
  1116.     end
  1117.     for _, i in pairs(m:children()) do
  1118.       if i:IsA("BasePart") then
  1119.         coroutine.resume(coroutine.create(function(Part)
  1120.           for i = 0, 1, 0.3 do
  1121.             swait()
  1122.             Part.Transparency = i
  1123.           end
  1124.           Part.Transparency = 0
  1125.         end), i)
  1126.       end
  1127.     end
  1128.   end
  1129.   function ReappearArmorOnly()
  1130.     for _, i in pairs(m:children()) do
  1131.       if i:IsA("BasePart") then
  1132.         coroutine.resume(coroutine.create(function(Part)
  1133.           for i = 0, 1, 0.3 do
  1134.             swait()
  1135.             Part.Transparency = i
  1136.           end
  1137.           Part.Transparency = 0
  1138.         end), i)
  1139.       end
  1140.     end
  1141.   end
  1142.   function Disappear()
  1143.     for _, i in pairs(AdvancingFortress:children()) do
  1144.       if i:IsA("BasePart") then
  1145.         coroutine.resume(coroutine.create(function(Part)
  1146.           for i = 0, 1, 0.3 do
  1147.             swait()
  1148.             Part.Transparency = i
  1149.           end
  1150.           Part.Transparency = 1
  1151.         end), i)
  1152.       end
  1153.     end
  1154.     for _, i in pairs(m:children()) do
  1155.       if i:IsA("BasePart") then
  1156.         coroutine.resume(coroutine.create(function(Part)
  1157.           for i = 0, 1, 0.3 do
  1158.             swait()
  1159.             Part.Transparency = i
  1160.           end
  1161.           Part.Transparency = 1
  1162.         end), i)
  1163.       end
  1164.     end
  1165.   end
  1166.   function DisappearArmorOnly()
  1167.     for _, i in pairs(m:children()) do
  1168.       if i:IsA("BasePart") then
  1169.         coroutine.resume(coroutine.create(function(Part)
  1170.           for i = 0, 1, 0.3 do
  1171.             swait()
  1172.             Part.Transparency = i
  1173.           end
  1174.           Part.Transparency = 1
  1175.         end), i)
  1176.       end
  1177.     end
  1178.   end
  1179.   function CamShake(time, freq)
  1180.     coroutine.resume(coroutine.create(function()
  1181.       local cam = game:GetService("Workspace").CurrentCamera
  1182.       local time = 10
  1183.       local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0)
  1184.       if math.random(1, 2) == 1 then
  1185.         seed = Vector3.new(-seed.x, seed.y, 0)
  1186.       end
  1187.       if math.random(1, 2) == 1 then
  1188.         seed = Vector3.new(seed.x, -seed.y, 0)
  1189.       end
  1190.       cam.CoordinateFrame = CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(seed.x * time, seed.y * time, 0) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
  1191.       for i = 1, time do
  1192.         cam.CoordinateFrame = CFrame.new(cam.Focus.p) * (cam.CoordinateFrame - cam.CoordinateFrame.p) * CFrame.fromEulerAnglesXYZ(-seed.x, -seed.y, 0) * CFrame.new(0, 0, (cam.CoordinateFrame.p - cam.Focus.p).magnitude)
  1193.         wait()
  1194.       end
  1195.     end))
  1196.   end
  1197.   local ora = false
  1198.   function ORA()
  1199.     attack = true
  1200.     local S = CFuncs.Sound.Create("616593932", Torso, 1, 1)
  1201.     S.Looped = true
  1202.     if ora == true then
  1203.       while ora == true do
  1204.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1205.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1206.         for i = 0, 1, 0.8 do
  1207.           swait()
  1208.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1209.           PlayAnimationFromTable({
  1210.             CFrame.new(-0.561874092, -0.346845925, -0.435822666, 0.64278698, -0.323744029, 0.694272816, 0, 0.906308115, 0.422617555, -0.766044974, -0.271653026, 0.582563102) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1211.             CFrame.new(8.9481473E-6, 1.49999249, 5.2684918E-6, 0.704669476, 0.0560214818, -0.707321048, -0.0868221819, 0.996195257, -0.0075956285, 0.704204142, 0.0667634308, 0.706852198) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1212.             CFrame.new(1.97048378, 0.808467984, -0.254994273, -0.457079947, -0.7819345, 0.423859, 0.842444837, -0.227779076, 0.488266319, -0.285246044, 0.580254436, 0.762849629) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1213.             CFrame.new(-1.18535733, 0.530705392, -0.713678956, 0.778861284, -0.400152355, 0.482962847, 0.492400557, -0.0868335962, -0.866026342, 0.388479888, 0.912325621, 0.129403993) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1214.             CFrame.new(0.708622813, -1.45549953, -0.199998885, 0.984808087, -0.167729571, -0.0449446738, 0.173646823, 0.951251328, 0.254887581, 1.4603138E-6, -0.258819878, 0.965925694) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1215.             CFrame.new(-0.604502141, -1.943735, 5.15520573E-4, 0.982544005, 0.00845471025, 0.185841322, -0.0717865527, 0.938827574, 0.336824685, -0.17162481, -0.34428525, 0.923045695) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1216.           }, 0.8, false)
  1217.         end
  1218.         CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
  1219.         MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
  1220.         for i = 0, 1, 0.8 do
  1221.           swait()
  1222.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1223.           PlayAnimationFromTable({
  1224.             CFrame.new(1.1920929E-6, -0.0170394331, -0.52941519, 0.70710516, -2.21270369E-7, -0.707108498, 0.18301405, 0.965925574, 0.183012888, 0.683014154, -0.258820117, 0.683010995) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1225.             CFrame.new(-1.22189522E-6, 1.49999356, 1.04308128E-6, 0.707110465, 0.122788236, 0.696360528, -1.4748274E-6, 0.98480773, -0.173648238, -0.707103193, 0.122787461, 0.696368098) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1226.             CFrame.new(1.44562268, 0.333473027, -0.475224167, 0.907739162, 0.217196256, 0.358959734, 0.40125221, -0.199453548, -0.893991232, -0.122576535, 0.955528319, -0.268199235) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1227.             CFrame.new(-1.884794, 0.881342709, -0.770847201, 0.0912726, 0.688403964, -0.719562054, -0.91795665, -0.221949756, -0.328776807, -0.386037856, 0.690535009, 0.611666858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1228.             CFrame.new(0.789779902, -1.8586235, 0.161380947, 0.965926766, -0.258817255, -8.10623169E-6, 0.243211254, 0.907672405, 0.342022836, -0.0885141194, -0.330371499, 0.939691722) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1229.             CFrame.new(-0.73783946, -1.45406294, -0.215006173, 0.882573366, -0.0180292428, 0.469829261, -0.163172901, 0.925412893, 0.342031717, -0.440952569, -0.378531486, 0.813802838) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1230.           }, 0.8, false)
  1231.         end
  1232.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1233.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1234.         for i = 0, 1, 0.8 do
  1235.           swait()
  1236.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1237.           PlayAnimationFromTable({
  1238.             CFrame.new(0.215482175, -0.0393944569, -0.126133978, 0.259671897, -0.351393819, 0.8994959, -0.075478971, 0.921212733, 0.381667405, -0.962742627, -0.167001322, 0.212690249) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1239.             CFrame.new(-1.26510859E-5, 1.49999118, -2.16066837E-7, 0.420251548, -0.0215960592, -0.90715003, -0.100918382, 0.992402375, -0.0703775883, 0.901778162, 0.12112467, 0.414879382) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1240.             CFrame.new(1.81840861, 0.705381036, -0.347923756, -0.236346364, -0.883376777, 0.404705286, 0.945798516, -0.113677993, 0.304209948, -0.222726092, 0.454668403, 0.862362981) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1241.             CFrame.new(-1.21960759, 0.420275182, -0.728423595, -0.57802856, -0.255150676, 0.775100708, 0.665436089, -0.697164714, 0.266751111, 0.472311139, 0.669969678, 0.572767615) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1242.             CFrame.new(0.620917439, -1.53014767, -0.12091887, 0.707106113, 0.241845652, -0.66446346, -1.2293458E-6, 0.939692676, 0.342019886, 0.707107484, -0.241843566, 0.664462805) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1243.             CFrame.new(-0.873213649, -1.89646459, -0.100004375, 0.933012128, 0.353242815, -0.0686147735, -0.258823931, 0.791241407, 0.554028153, 0.249997303, -0.499155849, 0.829665601) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1244.           }, 0.8, false)
  1245.         end
  1246.         CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
  1247.         MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
  1248.         for i = 0, 1, 0.8 do
  1249.           swait()
  1250.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1251.           PlayAnimationFromTable({
  1252.             CFrame.new(0.299998224, -0.0468490347, -0.211314023, 0.642786682, -2.87348001E-7, -0.766045272, 0.323744863, 0.906307757, 0.271653205, 0.694272637, -0.42261824, 0.582562685) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1253.             CFrame.new(2.71201134E-6, 1.4999969, 8.94069672E-7, 0.642777503, 0.133020476, 0.754416466, 4.31999706E-6, 0.984809279, -0.173647597, -0.766052961, 0.111620098, 0.633012772) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1254.             CFrame.new(1.27057993, 0.327670783, -0.599993467, 0.638493001, 0.280156553, -0.716825664, -0.769049883, 0.196164608, -0.608343422, -0.0298155248, 0.939697862, 0.340704083) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1255.             CFrame.new(-1.86040878, 1.02262986, -0.452570885, 0.386218816, 0.717701018, -0.579433978, -0.403004408, -0.433759809, -0.805879354, -0.829712272, 0.544763446, 0.121709965) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1256.             CFrame.new(0.779964924, -1.75316048, -0.0263362825, 0.826099217, -0.36394459, 0.43023771, 0.181541473, 0.894650102, 0.40822047, -0.533481896, -0.259124577, 0.805140793) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1257.             CFrame.new(-0.724003315, -1.47219872, -0.266945302, 0.766038954, -0.166370958, 0.620890498, 4.09781933E-6, 0.965925932, 0.258819997, -0.642794192, -0.198263675, 0.739937425) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1258.           }, 0.8, false)
  1259.         end
  1260.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1261.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1262.       end
  1263.     end
  1264.     S:Stop()
  1265.     local S2 = CFuncs.Sound.Create("276152532", Torso, 1.5, 1)
  1266.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1267.     for i = 0, 1, 0.13 do
  1268.       swait()
  1269.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -3), 0.5)
  1270.       PlayAnimationFromTable({
  1271.         CFrame.new(2.68220901E-6, -0.0739577487, 0.0232374109, 0.707105994, -3.47710994E-7, -0.707107604, -0.122787997, 0.98480767, -0.122788213, 0.696364999, 0.173648596, 0.696363389) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1272.         CFrame.new(-5.36441803E-7, 1.49999356, -1.28149986E-6, 0.707105994, -0.122788511, 0.696365297, -3.47710994E-7, 0.984808028, 0.173649326, -0.707107604, -0.122788727, 0.696363688) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1273.         CFrame.new(1.13747835, 0.382733107, -0.729447305, 0.579597414, 0.772029877, -0.260839432, -0.351051509, -0.0523141921, -0.934893906, -0.735411942, 0.633429527, 0.240701318) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1274.         CFrame.new(-1.53455412, 0.605712295, -0.542039633, 0.786121905, 0.427828372, -0.446066588, -0.606968522, 0.398195386, -0.687771559, -0.116626531, 0.811420619, 0.572708428) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1275.         CFrame.new(0.903839946, -1.70734286, 0.373858094, 0.863655448, -0.430708885, 0.261895239, 0.187955216, 0.757234871, 0.625514567, -0.46773085, -0.491004646, 0.734943748) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1276.         CFrame.new(-0.596739769, -1.62411702, -0.0967329144, 0.725493789, -0.291957259, 0.623233199, -0.081900157, 0.86250174, 0.499382436, -0.683338165, -0.41334182, 0.601828396) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1277.       }, 0.2, false)
  1278.     end
  1279.     CFuncs.Sound.Create("471881954", HitboxR, 1, 1)
  1280.     MagnitudeDamage(HitboxR, 7, 10, 15, 50, "Normal", "610359590", 1)
  1281.     for i = 0, 1, 0.1 do
  1282.       swait()
  1283.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
  1284.       PlayAnimationFromTable({
  1285.         CFrame.new(-0.338160992, -0.0772590488, -0.484170675, 0.307024002, -0.153706044, 0.939207554, -0.403236002, 0.872901201, 0.274671286, -0.86205399, -0.463052958, 0.206021816) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1286.         CFrame.new(-0.0502282679, 1.50051379, -0.0864891857, 0.502356887, -0.246090144, -0.828901231, -0.00520065427, 0.957766473, -0.287500501, 0.864644766, 0.148738697, 0.479860842) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1287.         CFrame.new(1.81698525, 1.20575511, -0.168038458, 0.0800605565, -0.859217465, 0.505307972, 0.457053572, -0.418860257, -0.784640014, 0.885828495, 0.293771386, 0.359173566) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1288.         CFrame.new(-1.66351938, 0.691055655, 0.203685582, 0.309526145, 0.793331623, -0.524231553, -0.937197804, 0.347743452, -0.0271089375, 0.160791725, 0.499699503, 0.851144433) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1289.         CFrame.new(0.971616864, -1.6145575, 0.096719563, 0.544056833, -0.203144252, -0.814085484, 0.51142931, 0.849463344, 0.129818588, 0.665161908, -0.486975014, 0.566052973) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1290.         CFrame.new(-0.676943898, -1.44413579, 0.206094518, 0.884253025, 0.0570309162, -0.463512957, 0.209485695, 0.838620007, 0.502824426, 0.417387724, -0.541723251, 0.729605079) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1291.       }, 0.6, false)
  1292.     end
  1293.     attack = false
  1294.   end
  1295.   function CastleCrusherFist()
  1296.     attack = true
  1297.     STDamage = true
  1298.     local S2 = CFuncs.Sound.Create("276152532", Torso, 1, 1)
  1299.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1300.     for i = 0, 1, 0.1 do
  1301.       swait()
  1302.       Effects.Block.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1303.       Effects.Break.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1304.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.2)
  1305.       PlayAnimationFromTable({
  1306.         CFrame.new(-5.99771738E-7, -0.00717129931, 0.169464022, 0.422617912, -2.2671E-7, -0.906308055, -0.309975952, 0.939692557, -0.144544229, 0.851650834, 0.342020661, 0.397130787) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1307.         CFrame.new(-0.0102166235, 1.52751005, -0.239579424, 0.456926107, -0.171424359, 0.872835577, -0.167732254, 0.94705075, 0.273807496, -0.87355268, -0.271512181, 0.403976858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1308.         CFrame.new(0.944673777, 0.474064022, -0.539126158, 0.229199454, 0.762564063, 0.604949772, 0.809601307, 0.195682317, -0.553402781, -0.540382624, 0.616607308, -0.572522938) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1309.         CFrame.new(-1.61232829, 0.309644789, -0.24482432, 0.455398798, 0.536860108, -0.710207343, -0.887026072, 0.205374956, -0.413530886, -0.076149486, 0.818293095, 0.569735885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1310.         CFrame.new(1.08113468, -1.48232126, 0.656104684, 0.81421864, -0.517612338, 0.262917578, 0.175395042, 0.651024699, 0.738514543, -0.553430021, -0.555197835, 0.620862961) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1311.         CFrame.new(-0.427128136, -1.50760674, -0.0473105907, 0.804508269, -0.373179317, 0.462065101, -0.173640698, 0.596196175, 0.783836842, -0.567992628, -0.71083647, 0.414845526) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1312.       }, 0.2, false)
  1313.     end
  1314.     MagnitudeDamage(HitboxR, 10, 50, 80, 100, "Normal", "610359515", 1)
  1315.     Effects.Wave.Create(BrickColor.new("Cool yellow"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
  1316.     CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
  1317.     CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
  1318.     for i = 0, 1, 0.08 do
  1319.       swait()
  1320.       Effects.Block.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1321.       Effects.Break.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1322.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
  1323.       PlayAnimationFromTable({
  1324.         CFrame.new(-3.57627869E-7, -0.116980031, -2.22140098, 0.342020035, -6.11579551E-8, 0.939692736, -0.604023039, 0.766044259, 0.219846413, -0.71984607, -0.642787933, 0.262002468) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1325.         CFrame.new(-1.13248825E-6, 1.49999046, 8.94069672E-7, 0.422608167, -0.383014679, -0.82140249, -1.36196613E-5, 0.906310022, -0.422613323, 0.906312764, 0.17861104, 0.383008778) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1326.         CFrame.new(1.72490048, 1.25688744, -0.021425128, -0.678134382, -0.731868863, 0.0670941696, 0.667953849, -0.575675249, 0.47163111, -0.306547582, 0.364645123, 0.879239857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1327.         CFrame.new(-1.70565486, 0.469353855, 0.162862837, 0.82686162, 0.55728358, 0.0757693052, -0.414878726, 0.513436973, 0.751176, 0.379712611, -0.652546048, 0.655748963) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1328.         CFrame.new(0.757160306, -1.48393714, -0.193787217, 0.601814985, 0.305624545, -0.737842917, -2.98023224E-8, 0.923879623, 0.382683486, 0.798635662, -0.230304718, 0.556004763) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1329.         CFrame.new(-0.908789515, -1.60188651, -0.0663503706, 0.696367741, 0.548584938, -0.462741733, -0.173660636, 0.7544052, 0.633021533, 0.696362019, -0.360454619, 0.620610356) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1330.       }, 0.6, false)
  1331.     end
  1332.     STDamage = false
  1333.     attack = false
  1334.   end
  1335.   function CastleCrusherFist()
  1336.     attack = true
  1337.     STDamage = true
  1338.     local S2 = CFuncs.Sound.Create("276152532", Torso, 1, 1)
  1339.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1340.     for i = 0, 1, 0.1 do
  1341.       swait()
  1342.       Effects.Block.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1343.       Effects.Break.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1344.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.5)
  1345.       PlayAnimationFromTable({
  1346.         CFrame.new(-5.99771738E-7, -0.00717129931, 0.169464022, 0.422617912, -2.2671E-7, -0.906308055, -0.309975952, 0.939692557, -0.144544229, 0.851650834, 0.342020661, 0.397130787) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1347.         CFrame.new(-0.0102166235, 1.52751005, -0.239579424, 0.456926107, -0.171424359, 0.872835577, -0.167732254, 0.94705075, 0.273807496, -0.87355268, -0.271512181, 0.403976858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1348.         CFrame.new(0.944673777, 0.474064022, -0.539126158, 0.229199454, 0.762564063, 0.604949772, 0.809601307, 0.195682317, -0.553402781, -0.540382624, 0.616607308, -0.572522938) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1349.         CFrame.new(-1.61232829, 0.309644789, -0.24482432, 0.455398798, 0.536860108, -0.710207343, -0.887026072, 0.205374956, -0.413530886, -0.076149486, 0.818293095, 0.569735885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1350.         CFrame.new(1.08113468, -1.48232126, 0.656104684, 0.81421864, -0.517612338, 0.262917578, 0.175395042, 0.651024699, 0.738514543, -0.553430021, -0.555197835, 0.620862961) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1351.         CFrame.new(-0.427128136, -1.50760674, -0.0473105907, 0.804508269, -0.373179317, 0.462065101, -0.173640698, 0.596196175, 0.783836842, -0.567992628, -0.71083647, 0.414845526) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1352.       }, 0.2, false)
  1353.     end
  1354.     Effects.Wave.Create(BrickColor.new("Cool yellow"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
  1355.     Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 140
  1356.     CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
  1357.     CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
  1358.     for i = 0, 1, 0.08 do
  1359.       swait()
  1360.       MagnitudeDamage(HitboxR, 5, 50, 80, 100, "Normal", "610359515", 1)
  1361.       Effects.Block.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1362.       Effects.Break.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1363.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 1)
  1364.       PlayAnimationFromTable({
  1365.         CFrame.new(-3.57627869E-7, -0.116980031, -2.22140098, 0.342020035, -6.11579551E-8, 0.939692736, -0.604023039, 0.766044259, 0.219846413, -0.71984607, -0.642787933, 0.262002468) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1366.         CFrame.new(-1.13248825E-6, 1.49999046, 8.94069672E-7, 0.422608167, -0.383014679, -0.82140249, -1.36196613E-5, 0.906310022, -0.422613323, 0.906312764, 0.17861104, 0.383008778) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1367.         CFrame.new(1.72490048, 1.25688744, -0.021425128, -0.678134382, -0.731868863, 0.0670941696, 0.667953849, -0.575675249, 0.47163111, -0.306547582, 0.364645123, 0.879239857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1368.         CFrame.new(-1.70565486, 0.469353855, 0.162862837, 0.82686162, 0.55728358, 0.0757693052, -0.414878726, 0.513436973, 0.751176, 0.379712611, -0.652546048, 0.655748963) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1369.         CFrame.new(0.757160306, -1.48393714, -0.193787217, 0.601814985, 0.305624545, -0.737842917, -2.98023224E-8, 0.923879623, 0.382683486, 0.798635662, -0.230304718, 0.556004763) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1370.         CFrame.new(-0.908789515, -1.60188651, -0.0663503706, 0.696367741, 0.548584938, -0.462741733, -0.173660636, 0.7544052, 0.633021533, 0.696362019, -0.360454619, 0.620610356) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1371.       }, 0.6, false)
  1372.     end
  1373.     STDamage = false
  1374.     attack = false
  1375.   end
  1376.   function weld5(part0, part1, c0, c1)
  1377.     local weeld = Instance.new("Weld", part0)
  1378.     weeld.Part0 = part0
  1379.     weeld.Part1 = part1
  1380.     weeld.C0 = c0
  1381.     weeld.C1 = c1
  1382.     return weeld
  1383.   end
  1384.   local Grab = false
  1385.   function GRABEMBOIGRABEM()
  1386.     attack = true
  1387.     gp = nil
  1388.     con1 = HitboxR.Touched:connect(function(hit)
  1389.       local ht = hit.Parent
  1390.       local hum1 = ht:FindFirstChild("Humanoid")
  1391.       if Grab == false then
  1392.         if hum1 ~= nil and hit.Parent ~= Character then
  1393.           hum1.PlatformStand = true
  1394.           gp = ht
  1395.           Grab = true
  1396.           local asd = weld5(RightArm, ht:FindFirstChild("Torso"), CFrame.new(0, -1.5, 0), CFrame.new(0, 0, 0))
  1397.           asd.Parent = RightArm
  1398.           asd.Name = "asd"
  1399.           asd.C0 = asd.C0 * CFrame.Angles(math.rad(-90), 0, 0)
  1400.           CFuncs.Sound.Create("200632821", Torso, 1, 1)
  1401.         elseif hum1 == nil then
  1402.           con1:disconnect()
  1403.           wait()
  1404.           return
  1405.         end
  1406.       end
  1407.     end)
  1408.     for i = 0, 1, 0.2 do
  1409.       swait()
  1410.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.3)
  1411.       PlayAnimationFromTable({
  1412.         CFrame.new(-1.08022243E-4, -0.233785003, -0.0873367637, 0.499999821, -1.78813863E-7, -0.866025507, 0.150383934, 0.984807789, 0.0868239477, 0.852868676, -0.173648283, 0.492403716) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1413.         CFrame.new(-1.2665987E-7, 1.49999368, -1.02072954E-6, 0.573575675, 0.0713936985, 0.816035628, -5.01982868E-7, 0.996194899, -0.0871551931, -0.819152594, 0.049989678, 0.571393132) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1414.         CFrame.new(1.47017705, 0.884583473, 0.0280318335, 0.886720777, -0.205462068, 0.414139926, 0.236241817, -0.568640172, -0.787933052, 0.397386849, 0.796513736, -0.455686152) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1415.         CFrame.new(-1.76647317, 0.409804255, -0.03838256, 0.444113791, 0.836516619, -0.320940912, -0.836516619, 0.258818626, -0.482962757, -0.320940822, 0.482962757, 0.814704895) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1416.         CFrame.new(0.838749349, -1.98392951, 0.15807499, 0.830397308, -0.277826965, 0.48296237, 0.167731524, 0.951251447, 0.258818328, -0.53132534, -0.133914024, 0.836516857) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1417.         CFrame.new(-0.811016142, -1.63281643, -0.179561377, 0.642214835, 0.00870995224, 0.76647532, -0.0151349902, 0.999884725, 0.00131897628, -0.766375303, -0.0124476701, 0.642272472) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1418.       }, 0.3, false)
  1419.     end
  1420.     for i = 0, 1, 0.1 do
  1421.       swait()
  1422.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
  1423.       PlayAnimationFromTable({
  1424.         CFrame.new(0.159273595, -0.292363107, -0.115490548, 0.0844330043, -0.144068986, 0.985959053, -0.357129037, 0.919379771, 0.164923266, -0.930231094, -0.366039604, 0.0261747837) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1425.         CFrame.new(4.81307507E-6, 1.49999106, -3.65450978E-6, 0.171444774, -0.100317284, -0.980072975, -0.0616287738, 0.991762042, -0.11229457, 0.983264267, 0.0796530023, 0.163850009) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1426.         CFrame.new(1.73932612, 1.06159639, 0.141945362, -0.153680667, -0.913934886, 0.375639945, 0.659919798, -0.377877831, -0.649395287, 0.735450923, 0.148092732, 0.661196351) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1427.         CFrame.new(-1.68730593, 0.429691374, -0.418232322, 0.633863091, 0.519853055, -0.57268703, -0.772902489, 0.453472316, -0.443829596, 0.028971523, 0.723958433, 0.689235032) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1428.         CFrame.new(0.51381135, -1.74729896, 0.0663300753, 0.422899842, 0.615153313, -0.665388703, -0.0435856879, 0.747240186, 0.66312325, 0.905127704, -0.251433372, 0.342819571) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1429.         CFrame.new(-0.991570175, -1.5009346, -0.1830419, 0.415304065, 0.586875141, -0.695054054, -0.166150108, 0.800146103, 0.576333642, 0.894380629, -0.123870395, 0.429813296) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1430.       }, 0.3, false)
  1431.     end
  1432.     if Grab == true then
  1433.       for i = 1, 5 do
  1434.         for i = 0, 1, 0.35 do
  1435.           swait()
  1436.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 13, -6), 0.3)
  1437.           PlayAnimationFromTable({
  1438.             CFrame.new(-0.0701122433, -0.336599797, -0.467321932, 0.694850504, -0.140219957, -0.70535183, 0.704946458, 0.326802045, 0.629484713, 0.142244101, -0.934633017, 0.325926095) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1439.             CFrame.new(-3.05473804E-6, 1.49998987, 8.94069672E-7, 0.707109332, 0.122785509, 0.696362555, 1.49011612E-6, 0.984807491, -0.173649877, -0.707104206, 0.122789055, 0.696367502) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1440.             CFrame.new(1.23286271, 0.549701929, -0.640782475, 0.740093768, 0.612683415, 0.277277708, 0.0735714883, 0.336068332, -0.938959956, -0.668469429, 0.715318501, 0.203645304) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1441.             CFrame.new(-1.63418663, 0.202915072, -0.0286649466, 0.865367413, 0.490698665, 0.101754986, -0.445756227, 0.846484005, -0.291146517, -0.228999093, 0.206590697, 0.951251805) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1442.             CFrame.new(0.702593744, -1.71321297, 0.369734973, 0.965928972, -0.148447216, 0.212003857, 1.10641122E-6, 0.819153726, 0.573574424, -0.258809477, -0.554031372, 0.791244447) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1443.             CFrame.new(-0.577289343, -1.34221494, -0.247686923, 0.766049445, -0.219846189, 0.604016602, 1.58697367E-6, 0.939692199, 0.342021465, -0.642781496, -0.262004316, 0.719851196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1444.           }, 0.4, false)
  1445.         end
  1446.         for i = 0, 1, 0.3 do
  1447.           swait()
  1448.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
  1449.           PlayAnimationFromTable({
  1450.             CFrame.new(-0.170705646, -0.774955988, -0.472947001, 0.827218175, 0.130671635, 0.546475112, -0.561879098, 0.194839522, 0.803946257, -0.00142200035, -0.972091854, 0.234596446) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1451.             CFrame.new(-1.76951289E-7, 1.49999058, 2.2649765E-6, 0.80180192, -0.161171481, -0.575445414, 0.176131338, 0.983905077, -0.0301590711, 0.571044207, -0.0771723837, 0.817283988) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1452.             CFrame.new(1.59014189, 0.537312388, -0.263691217, 0.798337102, -0.524361372, 0.296147287, 0.455999702, 0.205153137, -0.866011977, 0.393347621, 0.826412499, 0.402889967) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1453.             CFrame.new(-1.41546631, 0.414666086, 0.337005794, 0.716736436, 0.581529975, 0.384852976, -0.56681174, 0.807305396, -0.164264664, -0.406218559, -0.100404784, 0.908243656) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1454.             CFrame.new(0.793360233, -1.59947133, 0.0620805621, 0.876221955, -0.148448378, -0.458477885, 0.368687749, 0.81915307, 0.439383447, 0.310339272, -0.55403173, 0.772486985) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1455.             CFrame.new(-0.535338402, -1.81867206, 0.817932665, 0.829598367, 0.11430642, -0.546535134, 0.32139504, 0.702652454, 0.634810925, 0.456587166, -0.702291727, 0.546181798) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1456.           }, 0.7, false)
  1457.         end
  1458.         local hit, pos = rayCast(HitboxR.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 100, Character)
  1459.         if hit ~= nil then
  1460.           MagnitudeDamage(HitboxR, 5, 10, 30, 0, "Normal", "610359515", 1.3)
  1461.           Effects.Block.Create(BrickColor.new("Cool yellow"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09, 1)
  1462.           Effects.Wave.Create(BrickColor.new("Cool yellow"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09)
  1463.           Effects.Sphere.Create(BrickColor.new("Cool yellow"), CFrame.new(pos), 3, 3, 3, 5, 5, 5, 0.09)
  1464.         end
  1465.       end
  1466.     end
  1467.     for i, v in pairs(RightArm:GetChildren()) do
  1468.       if v.Name == "asd" and v:IsA("Weld") then
  1469.         v:Remove()
  1470.       end
  1471.     end
  1472.     Grab = false
  1473.     con1:disconnect()
  1474.     attack = false
  1475.   end
  1476.   local IsWearingArmor = false
  1477.   function Armor(Mode)
  1478.     attack = true
  1479.     if IsWearingArmor == false and Mode == "On" then
  1480.       IsWearingArmor = true
  1481.       Disappear()
  1482.       swait(10)
  1483.       ReappearArmorOnly()
  1484.       Character.Humanoid.MaxHealth = 500
  1485.       Character.Humanoid.Health = 500
  1486.       HHandleWeld.Part0 = Character.Head
  1487.       THandleWeld.Part0 = Character.Torso
  1488.       AHandleRWeld.Part0 = Character["Right Arm"]
  1489.       AHandleLWeld.Part0 = Character["Left Arm"]
  1490.       LHandleRWeld.Part0 = Character["Right Leg"]
  1491.       LHandleLWeld.Part0 = Character["Left Leg"]
  1492.       for i, v in pairs(AdvancingFortress:GetChildren()) do
  1493.         if v:IsA("BasePart") then
  1494.           v.Transparency = 1
  1495.         end
  1496.       end
  1497.       for i, v in pairs(Character:GetChildren()) do
  1498.         if v:IsA("Accessory") then
  1499.           v.Handle.Transparency = 1
  1500.         end
  1501.       end
  1502.     elseif IsWearingArmor == true and Mode == "Off" then
  1503.       IsWearingArmor = false
  1504.       DisappearArmorOnly()
  1505.       for i, v in pairs(Character:GetChildren()) do
  1506.         if v:IsA("Accessory") then
  1507.           v.Handle.Transparency = 0
  1508.         end
  1509.       end
  1510.       swait(10)
  1511.       Reappear()
  1512.       Character.Humanoid.MaxHealth = 100
  1513.       Character.Humanoid.Health = 100
  1514.       HHandleWeld.Part0 = Head
  1515.       THandleWeld.Part0 = Torso
  1516.       AHandleRWeld.Part0 = RightArm
  1517.       AHandleLWeld.Part0 = LeftArm
  1518.       LHandleRWeld.Part0 = RightLeg
  1519.       LHandleLWeld.Part0 = LeftLeg
  1520.       for i, v in pairs(AdvancingFortress:GetChildren()) do
  1521.         if v:IsA("BasePart") then
  1522.           v.Transparency = 0
  1523.         end
  1524.       end
  1525.     end
  1526.     attack = false
  1527.   end
  1528.   local ShieldMode = false
  1529.   local ShieldCharge = false
  1530.   function HoloHexShield()
  1531.     attack = true
  1532.     Shield.Parent = m
  1533.     Shield.CanCollide = true
  1534.     if ShieldMode == true then
  1535.       while ShieldMode == true do
  1536.         swait()
  1537.         Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
  1538.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1539.         PlayAnimationFromTable({
  1540.           CFrame.new(-1.35600567E-6, -0.00759640103, -0.0868249983, 0.499999046, -1.78813579E-7, -0.866026044, 0.150384009, 0.984807789, 0.0868238211, 0.852869093, -0.173648283, 0.492402941) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1541.           CFrame.new(1.49011612E-7, 1.4999963, -2.08616257E-7, 0.499999046, 0.0754797831, 0.862731695, -1.78813579E-7, 0.996196151, -0.0871563852, -0.866026044, 0.0435779616, 0.498097092) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1542.           CFrame.new(1.50238657, 0.320674658, 0.252193451, 0.855209947, -0.376432747, -0.356249839, 0.469514668, 0.853786647, 0.224954769, 0.219480619, -0.35964793, 0.906907678) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1543.           CFrame.new(-0.944740474, 0.689363539, -0.718644142, 0.836517215, -0.545084715, 0.0558781698, -0.258834839, -0.482974619, -0.836504936, 0.482953727, 0.685287297, -0.545103252) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1544.           CFrame.new(0.61525929, -1.85127568, 0.120779425, 0.928754449, -0.162676111, 0.333104134, 0.0394990072, 0.93689239, 0.347407103, -0.368597984, -0.309496939, 0.876555264) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1545.           CFrame.new(-0.849455297, -1.60697818, -0.270956695, 0.696359396, -0.136922374, 0.704511464, -0.122786656, 0.944430828, 0.30491665, -0.707112312, -0.298836082, 0.640850842) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1546.         }, 0.3, false)
  1547.       end
  1548.     end
  1549.     Shield.CanCollide = false
  1550.     CFuncs.Sound.Create("200632211", HitboxR, 1, 0.8)
  1551.     CFuncs.Sound.Create("200632875", HitboxR, 1, 0.9)
  1552.     Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 160
  1553.     Effects.Wave.Create(BrickColor.new("Cool yellow"), RootPart.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.06)
  1554.     for i = 0, 1, 0.05 do
  1555.       swait()
  1556.       MagnitudeDamage(Shield, 5, 10, 15, 20, "Normal", "610359515", 1.3)
  1557.       Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
  1558.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -3), 1)
  1559.       PlayAnimationFromTable({
  1560.         CFrame.new(8.64267349E-7, -0.183445007, -0.748600185, 0.499999046, -1.19209105E-7, -0.866026044, 0.496732056, 0.819152176, 0.28678751, 0.709407032, -0.573576331, 0.409575343) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1561.         CFrame.new(-7.15255737E-7, 1.50001967, -6.2584877E-7, 0.499999046, 0.36600244, 0.784893453, -1.19209105E-7, 0.90631634, -0.42262283, -0.866026044, 0.211310923, 0.453157306) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1562.         CFrame.new(1.76569033, 0.610707581, 0.171269983, 0.658267856, -0.680293143, -0.322312057, 0.725086272, 0.457917482, 0.514355659, -0.202320263, -0.572288036, 0.794703186) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1563.         CFrame.new(-1.07552779, 1.01543474, -0.975205183, 0.645357251, -0.653341353, -0.39580214, -0.64124006, -0.181770697, -0.745500326, 0.4151209, 0.734918237, -0.536255598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1564.         CFrame.new(0.630614281, -1.76328135, 0.440194428, 0.866077662, -0.24334389, 0.436684549, -0.0614839792, 0.815044224, 0.57612747, -0.496114343, -0.525820255, 0.69092983) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1565.         CFrame.new(-0.857700765, -1.25810766, -0.239681423, 0.499215126, -0.257185757, 0.827429712, -0.238765404, 0.877132356, 0.416689515, -0.832931936, -0.405579239, 0.376470625) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1566.       }, 0.5, false)
  1567.     end
  1568.     Shield.Parent = nil
  1569.     attack = false
  1570.   end
  1571.   Mouse.Button1Down:connect(function()
  1572.     if attack == false and attacktype == 1 then
  1573.       attacktype = 2
  1574.       attackone()
  1575.     elseif attack == false and attacktype == 2 then
  1576.       attacktype = 1
  1577.       attacktwo()
  1578.     end
  1579.   end)
  1580.   game.Lighting.Outlines = false
  1581.   function attackone()
  1582.     attack = true
  1583.     for i = 0, 1, 0.12 do
  1584.       swait()
  1585.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1586.       PlayAnimationFromTable({
  1587.         CFrame.new(1.51857734E-4, -0.310488015, -0.087417841, 0.707106054, 5.26835073E-8, -0.707107484, 0.122787014, 0.984807968, 0.122786865, 0.696365058, -0.173646957, 0.696363688) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1588.         CFrame.new(0.101928703, 1.50244772, -0.0383823365, 0.76589334, 0.0762532279, 0.638430059, -0.0196644422, 0.995256186, -0.095281601, -0.642666996, 0.0604211651, 0.763759375) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1589.         CFrame.new(1.01774633, 0.557527065, -0.776187301, 0.541353703, 0.741649806, 0.396095604, 0.711713314, -0.153383806, -0.685520053, -0.447661191, 0.653015316, -0.610876858) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1590.         CFrame.new(-1.07208586, 0.264054269, -0.716768324, 0.529938459, -0.260122895, -0.807156265, -0.752277017, 0.295165181, -0.589030504, 0.39146477, 0.919355154, -0.039265126) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1591.         CFrame.new(0.81415844, -1.89738977, 0.144144416, 0.866025925, -0.171008825, 0.469845951, -1.40815973E-6, 0.939692497, 0.342020512, -0.499999285, -0.296199232, 0.813797772) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1592.         CFrame.new(-0.818738878, -1.59999573, -0.397991776, 0.642786622, 0.0667650178, 0.763130188, 4.3399632E-7, 0.99619472, -0.0871558338, -0.766045213, 0.0560229495, 0.640340626) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1593.       }, 0.3, false)
  1594.     end
  1595.     MagnitudeDamage(HitboxR, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1)
  1596.     CFuncs.Sound.Create("200632136", HitboxR, 1, 1)
  1597.     RootPart.Velocity = RootPart.CFrame.lookVector * 40
  1598.     for i = 0, 1, 0.11 do
  1599.       swait()
  1600.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1601.       PlayAnimationFromTable({
  1602.         CFrame.new(0.31380862, -0.320521832, 0.0252371654, 0.249517962, -0.150383011, 0.956622124, -0.0458769947, 0.984923244, 0.166798219, -0.967282891, -0.0855060965, 0.238856897) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1603.         CFrame.new(0.101926193, 1.50244832, -0.0383800864, 0.337979913, 0.0762555003, -0.938059092, -0.0828148723, 0.995255768, 0.051067099, 0.937502801, 0.0604255944, 0.342691481) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1604.         CFrame.new(1.96121001, 0.774859428, -0.462411612, 0.340120375, -0.92077136, 0.191045195, 0.466549307, -0.0111669078, -0.884424806, 0.816486418, 0.389942825, 0.42578721) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1605.         CFrame.new(-1.36170578, 0.526111126, -0.597925961, 0.81348151, -0.212761745, -0.541276693, -0.539894938, 0.0697831511, -0.838834763, 0.216243982, 0.974609077, -0.0581016839) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1606.         CFrame.new(0.970680714, -1.68610644, -0.0975568295, 0.579166114, -0.127570763, -0.805166125, 0.110368893, 0.990856647, -0.0776019096, 0.807703912, -0.0439208932, 0.587950349) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1607.         CFrame.new(-0.827146292, -1.8113209, -0.0556658059, 0.816036701, 0.217413262, -0.535551846, -0.0871567726, 0.962250471, 0.257832885, 0.571391284, -0.163724124, 0.804180741) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1608.       }, 0.45, false)
  1609.     end
  1610.     attack = false
  1611.   end
  1612.   function attacktwo()
  1613.     attack = true
  1614.     for i = 0, 1, 0.12 do
  1615.       swait()
  1616.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1617.       PlayAnimationFromTable({
  1618.         CFrame.new(-0.0382043272, -0.447743475, -0.209081307, 0.653245032, -0.0733856931, 0.753581822, -0.271655023, 0.906307638, 0.323743671, -0.706735075, -0.416198224, 0.572105408) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1619.         CFrame.new(-2.74181366E-6, 1.49999321, -3.4570694E-6, 0.707105815, -0.183012873, -0.683013678, -8.7171793E-7, 0.965925694, -0.258819759, 0.707107782, 0.183013588, 0.683011472) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1620.         CFrame.new(1.65075588, 0.743636727, -0.356577665, 0.542998552, -0.115416825, 0.831764221, 0.839699984, 0.0834951103, -0.536593378, -0.00751632452, 0.989801884, 0.142253295) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1621.         CFrame.new(-1.08620656, -0.00580590963, -0.864283919, 0.656464815, -0.698875248, 0.283949524, 0.478162557, 0.0943745971, -0.873186052, 0.583450615, 0.708990037, 0.396129608) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1622.         CFrame.new(0.856426239, -1.40340364, -0.356423855, 0.707105279, -0.122788861, -0.696365654, 9.42498446E-7, 0.98480767, -0.173648372, 0.707108438, 0.122787014, 0.696362913) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1623.         CFrame.new(-0.695387185, -1.90375674, -0.304245114, 0.92541647, 0.246137589, -0.288133472, -0.173648298, 0.951251149, 0.254887551, 0.336824656, -0.185843274, 0.923044682) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1624.       }, 0.34, false)
  1625.     end
  1626.     MagnitudeDamage(HitboxL, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1.1)
  1627.     CFuncs.Sound.Create("200632136", HitboxL, 1, 1)
  1628.     RootPart.Velocity = RootPart.CFrame.lookVector * 40
  1629.     for i = 0, 1, 0.12 do
  1630.       swait()
  1631.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1632.       PlayAnimationFromTable({
  1633.         CFrame.new(-0.479634404, -0.393727064, -0.220339894, 0.248309121, 0.219825819, -0.94340837, 0.019257009, 0.972597659, 0.231695861, 0.968489468, -0.0756994039, 0.237271711) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1634.         CFrame.new(-4.01586294E-6, 1.4999907, -1.59628689E-6, 0.237956509, -0.0991817266, 0.966198623, 0.22414881, 0.973527908, 0.0447304621, -0.945057809, 0.205928385, 0.253888786) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1635.         CFrame.new(1.08192515, 0.657660127, -1.1749661, 0.228772208, 0.493058115, 0.839379132, 0.874719322, 0.27430138, -0.399530977, -0.427234828, 0.825622678, -0.368534833) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1636.         CFrame.new(-1.23054802, 1.29996836, -0.754827142, 0.94838953, -0.316170156, 0.0243683457, -0.269034386, -0.84291333, -0.465958893, 0.167862713, 0.43535465, -0.88447094) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1637.         CFrame.new(0.839919031, -1.81287205, 0.0102108568, 0.808574855, -0.267538428, 0.524051666, 0.171010748, 0.95905602, 0.22575888, -0.562994003, -0.0929245204, 0.821220458) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1638.         CFrame.new(-0.846072078, -1.7213496, -0.247524291, 0.693717241, 0.0689389557, 0.716940701, -0.0478171073, 0.997620881, -0.0496601462, -0.718658566, 1.68083934E-4, 0.695363283) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1639.       }, 0.45, false)
  1640.     end
  1641.     attack = false
  1642.   end
  1643.   function findNearestTorso(pos)
  1644.     local list = game.Workspace:children()
  1645.     local torso
  1646.     local dist = 1000
  1647.     local temp, human, temp2
  1648.     for x = 1, #list do
  1649.       temp2 = list[x]
  1650.       if temp2.className == "Model" and temp2.Name ~= Character.Name then
  1651.         temp = temp2:findFirstChild("Torso")
  1652.         human = temp2:findFirstChild("Humanoid")
  1653.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
  1654.           local dohit = true
  1655.           if dohit == true then
  1656.             torso = temp
  1657.             dist = (temp.Position - pos).magnitude
  1658.           end
  1659.         end
  1660.       end
  1661.     end
  1662.     return torso, dist
  1663.   end
  1664.   function TrueAim(aim)
  1665.     local target, distance = findNearestTorso(Mouse.Hit.p)
  1666.     local tehcf = HitboxR.CFrame * CFrame.fromEulerAnglesXYZ(1.57, 0, 0).lookVector
  1667.     if aim ~= nil then
  1668.       tehcf = aim
  1669.     end
  1670.     table.insert(Effects, {
  1671.       tehcf,
  1672.       "Shoot",
  1673.       30,
  1674.       HitboxR.Position,
  1675.       10,
  1676.       15,
  1677.       0,
  1678.       3,
  1679.       HitboxR,
  1680.       target
  1681.     })
  1682.   end
  1683.   function FireProjectiles()
  1684.     attack = true
  1685.     Humanoid.WalkSpeed = 20
  1686.     CFuncs.Sound.Create("300915902", HitboxR, 1, 0.8)
  1687.     for i = 0, 1, 0.1 do
  1688.       swait()
  1689.       Effects.Elec.Create(HitboxR.CFrame, 2, 2, 2)
  1690.       PlayAnimationFromTable({
  1691.         CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1692.         CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1693.         CFrame.new(0.874554753, 1.14087927, -1.06730831, -0.166365892, 0.198266983, 0.965925813, 0.797995508, -0.548363924, 0.250000268, 0.579245627, 0.812396049, -0.0669871047) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1694.         CFrame.new(-0.257126778, 1.24225974, -0.962940335, 0.692363203, -0.593008757, -0.411064416, -0.708803177, -0.665577948, -0.233675212, -0.135024026, 0.453151852, -0.88114804) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1695.         CFrame.new(0.604643881, -1.9909004, 0.0280392915, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1696.         CFrame.new(-0.604644895, -1.99090064, 0.0280393362, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1697.       }, 0.3, false)
  1698.     end
  1699.     for i = 0, 1, 0.1 do
  1700.       swait()
  1701.       Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1702.       Effects.Block.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1703.       Effects.Sphere2.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1704.       PlayAnimationFromTable({
  1705.         CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1706.         CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1707.         CFrame.new(0.661153734, 0.568759024, -0.827975571, -0.166752055, 0.025078943, 0.985679924, 0.98324734, -0.0704026297, 0.168131784, 0.0736110285, 0.99720335, -0.012919019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1708.         CFrame.new(-0.390097797, 0.861622274, -0.554995477, 0.351840883, -0.837056041, -0.418981194, -0.935129642, -0.294365793, -0.197183579, 0.0417199843, 0.461178988, -0.886325777) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1709.         CFrame.new(0.604644954, -1.9909004, 0.0280390829, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1710.         CFrame.new(-0.604644775, -1.99090064, 0.0280380547, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1711.       }, 0.2, false)
  1712.     end
  1713.     for i = 1, 10 do
  1714.       for i = 0, 1, 0.3 do
  1715.         swait()
  1716.         Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1717.         Effects.Sphere2.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1718.         PlayAnimationFromTable({
  1719.           CFrame.new(0, -0.100000001, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1720.           CFrame.new(0, 1.49999201, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1721.           CFrame.new(0.661153734, 0.568759024, -0.827975571, -0.166752055, 0.025078943, 0.985679924, 0.98324734, -0.0704026297, 0.168131784, 0.0736110285, 0.99720335, -0.012919019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1722.           CFrame.new(-0.390097797, 0.861622274, -0.554995477, 0.351840883, -0.837056041, -0.418981194, -0.935129642, -0.294365793, -0.197183579, 0.0417199843, 0.461178988, -0.886325777) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1723.           CFrame.new(0.604644954, -1.9909004, 0.0280390829, 0.962250233, -0.0841861367, -0.258818984, 0.0871560201, 0.996194661, 4.23252061E-7, 0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1724.           CFrame.new(-0.604644775, -1.99090064, 0.0280380547, 0.962250233, 0.0841861367, 0.258818984, -0.0871560201, 0.996194661, 4.23252061E-7, -0.257834047, -0.0225580372, 0.965925872) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1725.         }, 0.3, false)
  1726.       end
  1727.       CFuncs.Sound.Create("300916105", HitboxR, 1, 1.2)
  1728.       CFuncs.Sound.Create("300916014", HitboxR, 1, 1)
  1729.       Effects.Sphere2.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 2, 2, 2, 0.07)
  1730.       local MouseLook = CFrame.new((HitboxR.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
  1731.       TrueAim(MouseLook.lookVector)
  1732.       for i = 0, 1, 0.3 do
  1733.         swait()
  1734.         Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1735.         Effects.Sphere2.Create(BrickColor.new("Cool yellow"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1736.         PlayAnimationFromTable({
  1737.           CFrame.new(1.90734863E-6, -0.25291419, 0.238341585, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1738.           CFrame.new(0, 1.49999189, -1.1920929E-6, 1, 0, 0, 0, 0.98480767, 0.173648626, 0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1739.           CFrame.new(0.689965963, 0.767623663, -0.856841147, -0.544456005, 0.160545677, 0.823281765, 0.798456132, -0.201499581, 0.567332089, 0.256973624, 0.966241658, -0.0184810348) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1740.           CFrame.new(-0.392649293, 0.920519292, -0.977094412, 0.403439909, -0.887421727, -0.222977459, -0.91384387, -0.378501445, -0.147058249, 0.0461054072, 0.263095737, -0.963667512) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1741.           CFrame.new(0.598512471, -1.89166105, 0.0173719227, 0.962250233, -0.061308533, -0.265171409, 0.0871564373, 0.992403805, 0.0868248865, 0.257834017, -0.106658652, 0.960284173) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1742.           CFrame.new(-0.598512232, -1.89166129, 0.0173728764, 0.962250233, 0.061308533, 0.265171409, -0.0871564373, 0.992403805, 0.0868248865, -0.257834017, -0.106658652, 0.960284173) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1743.         }, 0.3, false)
  1744.       end
  1745.     end
  1746.     Humanoid.WalkSpeed = 20
  1747.     attack = false
  1748.   end
  1749.   Mouse.KeyDown:connect(function(k)
  1750.     k = k:lower()
  1751.     if attack == false and ora == false and k == "z" and IsWearingArmor == false and Invisible == false then
  1752.       ora = true
  1753.       ORA()
  1754.     elseif attack == false and k == "x" and IsWearingArmor == false and Invisible == false then
  1755.       GRABEMBOIGRABEM()
  1756.     elseif attack == false and k == "q" and IsWearingArmor == false and Invisible == false then
  1757.       FireProjectiles()
  1758.     elseif attack == false and k == "f" and Invisible == false and IsWearingArmor == false then
  1759.       Invisible = true
  1760.       Effects.Sphere.Create(BrickColor.new("Cool yellow"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1)
  1761.       Effects.Block.Create(BrickColor.new("Cool yellow"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
  1762.       Disappear()
  1763.     elseif attack == false and k == "f" and Invisible == true and IsWearingArmor == false then
  1764.       Invisible = false
  1765.       CFuncs.Sound.Create("463010917", Torso, 1, 1)
  1766.       Effects.Sphere.Create(BrickColor.new("Cool yellow"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.08)
  1767.       for i = 1, 2 do
  1768.         Effects.Block.Create(BrickColor.new("Cool yellow"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
  1769.       end
  1770.       for i = 1, 20 do
  1771.         Effects.Break.Create(BrickColor.new("Cool yellow"), Torso.CFrame, 1, 1, 1)
  1772.       end
  1773.       Reappear()
  1774.     elseif attack == false and ShieldMode == false and k == "c" and IsWearingArmor == false and Invisible == false then
  1775.       ShieldMode = true
  1776.       HoloHexShield()
  1777.     elseif attack == false and k == "v" and IsWearingArmor == false and Invisible == false then
  1778.       CastleCrusherFist()
  1779.     end
  1780.     if k == "[" and IsWearingArmor == false and Invisible == false then
  1781.       Armor("On")
  1782.     end
  1783.     if k == "]" and IsWearingArmor == true and Invisible == false then
  1784.       Armor("Off")
  1785.     end
  1786.   end)
  1787.   Mouse.KeyUp:connect(function(k)
  1788.     k = k:lower()
  1789.     if attack == true and ora == true and k == "z" and IsWearingArmor == false then
  1790.       ora = false
  1791.     elseif attack == true and ShieldMode == true and k == "c" and IsWearingArmor == false then
  1792.       ShieldMode = false
  1793.     end
  1794.   end)
  1795.   coroutine.resume(coroutine.create(function(Part, Part2)
  1796.     while Part.Parent ~= nil do
  1797.       swait(math.random(100, 150))
  1798.       for i = 0, 1, 0.2 do
  1799.         wait()
  1800.         Eye1.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
  1801.         Eye2.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
  1802.       end
  1803.       for i = 0, 1, 0.2 do
  1804.         swait()
  1805.         Eye1.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
  1806.         Eye2.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
  1807.       end
  1808.     end
  1809.   end), Eye1, Eye2)
  1810.   while true do
  1811.     swait()
  1812.     for i, v in pairs(Character:children()) do
  1813.       if v:IsA("Part") and IsWearingArmor == true then
  1814.         v.Anchored = false
  1815.       end
  1816.     end
  1817.     for i, v in pairs(AdvancingFortress:GetChildren()) do
  1818.       if v:IsA("Part") then
  1819.         v.Material = "SmoothPlastic"
  1820.         v.CanCollide = false
  1821.       elseif v:IsA("Humanoid") then
  1822.         v:remove()
  1823.       elseif v:IsA("Accessory") then
  1824.         v:remove()
  1825.       elseif v:IsA("Shirt") then
  1826.         v:remove()
  1827.       elseif v:IsA("Pants") then
  1828.         v:remove()
  1829.       elseif v:IsA("Script") or v:IsA("LocalScript") then
  1830.         v:remove()
  1831.       elseif v:IsA("BodyColors") then
  1832.         v:remove()
  1833.       end
  1834.     end
  1835.     HHandle.Transparency = 1
  1836.     THandle.Transparency = 1
  1837.     AHandleR.Transparency = 1
  1838.     AHandleL.Transparency = 1
  1839.     LHandleR.Transparency = 1
  1840.     LHandleL.Transparency = 1
  1841.     RootPart.Transparency = 1
  1842.     HitboxR.Transparency = 1
  1843.     HitboxL.Transparency = 1
  1844.     Head.BrickColor = BrickColor.new("Cool yellow")
  1845.     Torso.BrickColor = BrickColor.new("Camo")
  1846.     RightArm.BrickColor = BrickColor.new("Cool yellow")
  1847.     LeftArm.BrickColor = BrickColor.new("Cool yellow")
  1848.     RightLeg.BrickColor = BrickColor.new("Cool yellow")
  1849.     LeftLeg.BrickColor = BrickColor.new("Cool yellow")
  1850.     RootPart.Anchored = true
  1851.     Torsovelocity = (Character.HumanoidRootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  1852.     velocity = Character.HumanoidRootPart.Velocity.y
  1853.     sine = sine + change
  1854.     Shield.Anchored = true
  1855.     Shield.CFrame = Shield.CFrame:lerp(RootPart.CFrame * CFrame.new(0, 0, -3.2), 1)
  1856.     local hit, pos = rayCast(Character.HumanoidRootPart.Position, CFrame.new(Character.HumanoidRootPart.Position, Character.HumanoidRootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
  1857.     if Character.HumanoidRootPart.Velocity.y > 1 and hit == nil then
  1858.       Anim = "Jump"
  1859.       if attack == false then
  1860.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1861.         PlayAnimationFromTable({
  1862.           CFrame.new(0, 0.00872418843, 0.0292903651, 1, 0, 0, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1863.           CFrame.new(0, 1.49999177, -1.49011612E-7, 1, 0, 0, 0, 0.98480767, 0.173648626, 0, -0.173648626, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1864.           CFrame.new(1.64140427, 0.273908556, 0.192029893, 0.946035206, -0.31541416, 0.0743736848, 0.284469575, 0.91821146, 0.275617331, -0.155224368, -0.239586651, 0.958386064) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1865.           CFrame.new(-1.59350562, 0.239538491, 0.192243189, 0.935008764, 0.347148597, -0.0724328309, -0.312019885, 0.902400434, 0.297181845, 0.168529674, -0.255267143, 0.952069581) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1866.           CFrame.new(0.602718651, -1.95556056, 0.410092652, 0.978475571, 0.0150757888, -0.205834776, 0.0853612274, 0.878464639, 0.470120817, 0.187906027, -0.477568805, 0.85826844) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1867.           CFrame.new(-0.41903314, -1.41877925, -0.229210436, 0.962251842, -0.0299757104, 0.270510197, -0.084186092, 0.912393093, 0.400567293, -0.258819073, -0.408219665, 0.875425339) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1868.         }, 0.3, false)
  1869.       end
  1870.     elseif Character.HumanoidRootPart.Velocity.y < -1 and hit == nil then
  1871.       Anim = "Fall"
  1872.       if attack == false then
  1873.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1874.         PlayAnimationFromTable({
  1875.           CFrame.new(0, -0.0366669223, -0.0478199311, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1876.           CFrame.new(0, 1.58110774, -0.115850762, 1, 0, 0, 0, 0.98480767, 0.173647821, 0, -0.173647821, 0.98480767) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1877.           CFrame.new(1.72150326, 0.610064566, 0.0891361833, 0.724097908, -0.685675204, 0.0743751749, 0.645872176, 0.711960018, 0.275611937, -0.241932437, -0.151533186, 0.958387375) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1878.           CFrame.new(-1.69228244, 0.568353653, 0.082095027, 0.759895504, 0.646005511, -0.0724337399, -0.601845145, 0.741260946, 0.297183931, 0.24567467, -0.182231784, 0.952074111) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1879.           CFrame.new(0.60271728, -1.95556188, 0.410093039, 0.978470623, -0.00292155147, -0.206365243, 0.0853614658, 0.916095972, 0.391767859, 0.187905625, -0.400949359, 0.896622121) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1880.           CFrame.new(-0.453899324, -1.81726217, -0.229221463, 0.962255239, -0.00628663599, 0.272094905, -0.0841865242, 0.943832874, 0.319526881, -0.258820891, -0.33037129, 0.90767473) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1881.         }, 0.3, false)
  1882.       end
  1883.     elseif Torsovelocity < 1 and hit ~= nil then
  1884.       Anim = "Idle"
  1885.       if attack == false then
  1886.         change = 1
  1887.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1888.         PlayAnimationFromTable({
  1889.           CFrame.new(0, -0.00190299738, -0.0435779989, 1, 0, 0, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1890.           CFrame.new(0, 1.49999213, 3.27825546E-7, 1, 0, 0, 0, 0.99619478, 0.0871553123, 0, -0.0871553123, 0.99619478) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1891.           CFrame.new(1.64141297, 0.173907071, -0.107973814, 0.946035922, -0.270955235, 0.177766502, 0.284470022, 0.957103431, -0.055051513, -0.155224428, 0.102649838, 0.982532144) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1892.           CFrame.new(-1.59350157, 0.139536366, -0.107754946, 0.935009062, 0.284010828, -0.212358981, -0.312018842, 0.943447471, -0.11203292, 0.168530986, 0.171011835, 0.970748305) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1893.           CFrame.new(0.602711678, -1.89952374, -0.0967197716, 0.978471398, -0.0562333167, -0.198576227, 0.0853610933, 0.986278713, 0.141314447, 0.187904745, -0.155223012, 0.969844699) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1894.           CFrame.new(-0.619029164, -1.90815639, -0.0860156417, 0.962250412, 0.0410595387, 0.269051194, -0.0841863081, 0.984977186, 0.150772721, -0.258818805, -0.167731494, 0.951251626) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1895.         }, 0.3, false)
  1896.       end
  1897.     elseif Torsovelocity > 2 and hit ~= nil then
  1898.       Anim = "Walk"
  1899.       if attack == false then
  1900.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1901.         PlayAnimationFromTable({
  1902.           CFrame.new(0, -0.0234659836, -0.171147972, 1, 0, 0, 0, 0.939692736, 0.342019886, 0, -0.342019916, 0.939692736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1903.           CFrame.new(0, 1.49999166, 1.1920929E-7, 1, 0, 0, 0, 0.98480773, -0.173648983, 0, 0.173648953, 0.98480773) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1904.           CFrame.new(1.60905385, 0.122740321, 0.227665678, 0.946036339, -0.320693314, 0.0465966538, 0.284468234, 0.89069742, 0.354595304, -0.155219615, -0.322205007, 0.93385905) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1905.           CFrame.new(-1.55878484, 0.127169654, 0.148623466, 0.93500936, 0.339513272, -0.102411598, -0.312018752, 0.924868107, 0.217401206, 0.168527737, -0.171317667, 0.970695019) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1906.           CFrame.new(0.585851789, -1.60362172, -0.143285036, 0.978476226, 0.0150748575, -0.205834031, 0.0853618756, 0.878461003, 0.470117748, 0.187905103, -0.477570593, 0.858265638) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0),
  1907.           CFrame.new(-0.563320339, -1.90456724, 0.225245774, 0.982039452, -0.00800410938, 0.188514173, -0.0707257539, 0.910641074, 0.407099873, -0.174927384, -0.413120717, 0.893718541) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0)
  1908.         }, 0.3, false)
  1909.       end
  1910.     end
  1911.     if 0 < #Effects then
  1912.       for e = 1, #Effects do
  1913.         if Effects[e] ~= nil then
  1914.           local Thing = Effects[e]
  1915.           if Thing ~= nil then
  1916.             local Part = Thing[1]
  1917.             local Mode = Thing[2]
  1918.             local Delay = Thing[3]
  1919.             local IncX = Thing[4]
  1920.             local IncY = Thing[5]
  1921.             local IncZ = Thing[6]
  1922.             if Thing[2] == "Shoot" then
  1923.               local Look = Thing[1]
  1924.               local move = 30
  1925.               if Thing[8] == 3 then
  1926.                 move = 10
  1927.               end
  1928.               local hit, pos = rayCast(Thing[4], Thing[1], move, m)
  1929.               if Thing[10] ~= nil then
  1930.                 da = pos
  1931.                 cf2 = CFrame.new(Thing[4], Thing[10].Position)
  1932.                 cfa = CFrame.new(Thing[4], pos)
  1933.                 tehCF = cfa:lerp(cf2, 0.2)
  1934.                 Thing[1] = tehCF.lookVector
  1935.               end
  1936.               local mag = (Thing[4] - pos).magnitude
  1937.               Effects.Head.Create(Torso.BrickColor, CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0), 1, mag * 5, 1, 0.5, 0, 0.5, 0.2)
  1938.               if Thing[8] == 2 then
  1939.                 Effects.Ring.Create(Torso.BrickColor, CFrame.new((Thing[4] + pos) / 2, pos) * CFrame.Angles(1.57, 0, 0) * CFrame.fromEulerAnglesXYZ(1.57, 0, 0), 1, 1, 0.1, 0.5, 0.5, 0.1, 0.1, 1)
  1940.               end
  1941.               Thing[4] = Thing[4] + Look * move
  1942.               Thing[3] = Thing[3] - 1
  1943.               if 2 < Thing[5] then
  1944.                 Thing[5] = Thing[5] - 0.3
  1945.                 Thing[6] = Thing[6] - 0.3
  1946.               end
  1947.               if hit ~= nil then
  1948.                 Thing[3] = 0
  1949.                 if Thing[8] == 1 or Thing[8] == 3 then
  1950.                   Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
  1951.                 elseif Thing[8] == 2 then
  1952.                   Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
  1953.                   if hit.Parent:findFirstChild("Humanoid") ~= nil or hit.Parent.Parent:findFirstChild("Humanoid") ~= nil then
  1954.                     ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Cool yellow"), "Reference", Vector3.new())
  1955.                     ref.Anchored = true
  1956.                     ref.CFrame = CFrame.new(pos)
  1957.                     CFuncs.Sound.Create("161006093", ref, 1, 1.2)
  1958.                     game:GetService("Debris"):AddItem(ref, 0.2)
  1959.                     Effects.Block.Create(Torso.BrickColor, CFrame.new(ref.Position) * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 1, 1, 10, 10, 10, 0.1, 2)
  1960.                     Effects.Ring.Create(BrickColor.new("Bright yellow"), CFrame.new(ref.Position) * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 1, 0.1, 4, 4, 0.1, 0.1)
  1961.                     MagnitudeDamage(ref, 15, Thing[5] / 1.5, Thing[6] / 1.5, 0, "Normal", "", 1)
  1962.                   end
  1963.                 end
  1964.                 ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Cool yellow"), "Reference", Vector3.new())
  1965.                 ref.Anchored = true
  1966.                 ref.CFrame = CFrame.new(pos)
  1967.                 Effects.Sphere.Create(Torso.BrickColor, CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
  1968.                 game:GetService("Debris"):AddItem(ref, 1)
  1969.               end
  1970.               if Thing[3] <= 0 then
  1971.                 table.remove(Effects, e)
  1972.               end
  1973.             end
  1974.             if Thing[2] == "FireWave" then
  1975.               if Thing[3] <= Thing[4] then
  1976.                 Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
  1977.                 Thing[3] = Thing[3] + 1
  1978.                 Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
  1979.               else
  1980.                 Part.Parent = nil
  1981.                 table.remove(Effects, e)
  1982.               end
  1983.             end
  1984.             if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
  1985.               if Thing[1].Transparency <= 1 then
  1986.                 if Thing[2] == "Block1" then
  1987.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1988.                   Mesh = Thing[7]
  1989.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1990.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1991.                 elseif Thing[2] == "Block2" then
  1992.                   Thing[1].CFrame = Thing[1].CFrame
  1993.                   Mesh = Thing[7]
  1994.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  1995.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  1996.                 elseif Thing[2] == "Fire" then
  1997.                   Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
  1998.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1999.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2000.                 elseif Thing[2] == "Cylinder" then
  2001.                   Mesh = Thing[7]
  2002.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2003.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2004.                 elseif Thing[2] == "Blood" then
  2005.                   Mesh = Thing[7]
  2006.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
  2007.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2008.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2009.                 elseif Thing[2] == "Elec" then
  2010.                   Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
  2011.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2012.                 elseif Thing[2] == "Disappear" then
  2013.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2014.                 elseif Thing[2] == "Shatter" then
  2015.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2016.                   Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
  2017.                   Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
  2018.                   Thing[6] = Thing[6] + Thing[5]
  2019.                 end
  2020.               else
  2021.                 Part.Parent = nil
  2022.                 table.remove(Effects, e)
  2023.               end
  2024.             end
  2025.           end
  2026.         end
  2027.       end
  2028.     end
  2029.   end
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