SHARE
TWEET

Untitled

carlosname Aug 23rd, 2019 74 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
  2. print("FE Compatibility: by WaverlyCole & Mokiros")
  3. InternalData = {}
  4. do
  5.     script.Parent = owner.Character
  6.     local Event = Instance.new("RemoteEvent")
  7.     Event.Name = "UserInput"
  8.     local function NewFakeEvent()
  9.         local Fake = {fakeEvent=true,Connect=function(self,Func)self.Function=Func end}Fake.connect = Fake.Connect
  10.         return Fake
  11.     end
  12.     local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
  13.     local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
  14.     local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  15.         self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  16.     end};ContextActionService.UnBindAction = ContextActionService.BindAction
  17.     local function TriggerEvent(self,Event,...)
  18.         local Trigger = Mouse[Event]
  19.         if Trigger and Trigger.fakeEvent and Trigger.Function then
  20.             Trigger.Function(...)
  21.         end
  22.     end
  23.     Mouse.TrigEvent = TriggerEvent
  24.     UserInputService.TrigEvent = TriggerEvent
  25.     Event.OnServerEvent:Connect(function(FiredBy,Input)
  26.         if FiredBy.Name ~= owner.Name then end
  27.         if Input.MouseEvent then
  28.             Mouse.Target = Input.Target
  29.             Mouse.Hit = Input.Hit
  30.         else
  31.             local Begin = Input.UserInputState == Enum.UserInputState.Begin
  32.             if Input.UserInputType == Enum.UserInputType.MouseButton1 then
  33.                 return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up")
  34.             end
  35.             for _,Action in pairs(ContextActionService.Actions) do
  36.                 for _,Key in pairs(Action.Keys) do
  37.                     if Key==Input.KeyCode then
  38.                         Action.Function(Action.Name,Input.UserInputState,Input)
  39.                     end
  40.                 end
  41.             end
  42.             Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
  43.             UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  44.         end
  45.     end)
  46.     InternalData["Mouse"] = Mouse
  47.     InternalData["ContextActionService"] = ContextActionService
  48.     InternalData["UserInputService"] = UserInputService
  49.     Event.Parent = NLS([[
  50.         local Player = owner
  51.         local Event = script:WaitForChild("UserInput")
  52.         local UserInputService = game:GetService("UserInputService")
  53.         local Mouse = Player:GetMouse()
  54.         local Input = function(Input,gameProcessedEvent)
  55.             if gameProcessedEvent then return end
  56.             Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  57.         end
  58.         UserInputService.InputBegan:Connect(Input)
  59.         UserInputService.InputEnded:Connect(Input)
  60.         local Hit,Target
  61.         while wait(1/30) do
  62.             if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  63.                 Hit,Target = Mouse.Hit,Mouse.Target
  64.                 Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  65.             end
  66.         end
  67.     ]],owner.Character)
  68. end
  69. RealGame = game;game = setmetatable({},{
  70.     __index = function (self,Index)
  71.         local Sandbox = function (Thing)
  72.             if Thing:IsA("Player") then
  73.                 local RealPlayer = Thing
  74.                 return setmetatable({},{
  75.                     __index = function (self,Index)
  76.                         local Type = type(RealPlayer[Index])
  77.                         if Type == "function" then
  78.                             if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  79.                                 return function (self)
  80.                                     return InternalData["Mouse"]
  81.                                 end
  82.                             end
  83.                             return function (self,...)
  84.                                 return RealPlayer[Index](RealPlayer,...)
  85.                             end
  86.                         else
  87.                             return RealPlayer[Index]
  88.                         end
  89.                     end;
  90.                     __tostring = function(self)
  91.                         return RealPlayer.Name
  92.                     end
  93.                 })
  94.             end
  95.         end
  96.         if RealGame[Index] then
  97.             local Type = type(RealGame[Index])
  98.             if Type == "function" then
  99.                 if Index:lower() == "getservice" or Index:lower() == "service" then
  100.                     return function (self,Service)
  101.                         if Service:lower() == "players" then
  102.                             return setmetatable({},{
  103.                                 __index = function (self2,Index2)
  104.                                     local RealService = RealGame:GetService(Service)
  105.                                     local Type2 = type(Index2)
  106.                                     if Type2 == "function" then
  107.                                         return function (self,...)
  108.                                             return RealService[Index2](RealService,...)
  109.                                         end
  110.                                     else
  111.                                         if Index2:lower() == "localplayer" then
  112.                                             return Sandbox(owner)
  113.                                         end
  114.                                         return RealService[Index2]
  115.                                     end
  116.                                 end;
  117.                                 __tostring = function(self)
  118.                                     return RealGame:GetService(Service).Name
  119.                                 end
  120.                             })
  121.                         elseif Service:lower() == "contextactionservice" then
  122.                             return InternalData["ContextActionService"]
  123.                         elseif Service:lower() == "contextactionservice" then
  124.                             return InternalData["UserInputService"]
  125.                         elseif Service:lower() == "runservice" then
  126.                             return setmetatable({},{
  127.                                 __index = function(self2,Index2)
  128.                                     local RealService = RealGame:GetService(Service)
  129.                                     local Type2 = type(Index2)
  130.                                     if Type2 == "function" then
  131.                                         return function (self,...)
  132.                                             return RealService[Index2](RealService,...)
  133.                                         end
  134.                                     else
  135.                                         if Index2:lower() == "bindtorenderstep" then
  136.                                             return function (self,Name,Priority,Function)
  137.                                                 return RealGame:GetService("RunService").Stepped:Connect(Function)
  138.                                             end
  139.                                         end
  140.                                         if Index2:lower() == "renderstepped" then
  141.                                             return RealService["Stepped"]
  142.                                         end
  143.                                         return RealService[Index2]
  144.                                     end
  145.                                 end
  146.                             })
  147.                         else
  148.                             return RealGame:GetService(Service)
  149.                         end
  150.                     end
  151.                 end
  152.                 return function (self,...)
  153.                     return RealGame[Index](RealGame,...)
  154.                 end
  155.             else
  156.                 if game:GetService(Index) then
  157.                     return game:GetService(Index)
  158.                 end
  159.                 return RealGame[Index]
  160.             end
  161.         else
  162.             return nil
  163.         end
  164.     end
  165. });Game = game;owner = game:GetService("Players").LocalPlayer
  166. print("Complete! Running...")
  167.  
  168. print("edited by 3677272ALT")
  169.  wait(0.016666666666666666)
  170. plr = owner
  171. sound = Instance.new("Sound", game.Workspace)
  172. sound.SoundId = "https://www.roblox.com/asset/?id=840567549"
  173. canworld = true
  174. mse.KeyDown:connect(function(key)
  175.     key = key:lower()
  176.     if key == "g" then
  177.         if canworld == false then return end
  178.         if canworld then
  179.         canworld = false
  180.         sound:Play()
  181.         local function spawnpart()
  182.         sphere = Instance.new("Part")
  183.         --game.Debris:AddItem(sphere,3)
  184.         local sm = Instance.new("SpecialMesh", sphere)
  185.         sm.MeshType = "Sphere"
  186.         sphere.Transparency = 0.5
  187.         sphere.Anchored = true
  188.         sphere.CanCollide = false
  189.         sphere.Material = "SmoothPlastic"
  190.         sphere.BrickColor = BrickColor.new("Lapis")
  191.         end
  192.        
  193.         local function weld(lol)
  194.             local weld = Instance.new("Weld", plr.Character.Torso)
  195.             weld.Part0 = plr.Character.Torso
  196.             weld.Part1 = lol
  197.             weld.C0 = plr.Character.Torso.CFrame:inverse()
  198.             weld.C1 = lol.CFrame:inverse()
  199.         end
  200.         wait(1.4)
  201.         spawnpart()
  202.             for i, v in pairs(game.Players:GetChildren()) do
  203.             t = v.Character:FindFirstChild("Torso")
  204.             if t then
  205.                 t.Anchored = true
  206.                 plr.Character:FindFirstChild("Torso").Anchored = false
  207.             end
  208.             RA = v.Character:FindFirstChild("Right Arm")
  209.             if RA then
  210.                 RA.Anchored = true
  211.                 plr.Character:FindFirstChild("Right Arm").Anchored = false
  212.             end
  213.             LA = v.Character:FindFirstChild("Left Arm")
  214.             if LA then
  215.                 LA.Anchored = true
  216.                 plr.Character:FindFirstChild("Left Arm").Anchored = false
  217.             end
  218.             RL = v.Character:FindFirstChild("Right Leg")
  219.             if RL then
  220.                 RL.Anchored = true
  221.                 plr.Character:FindFirstChild("Right Leg").Anchored = false
  222.             end
  223.             LL = v.Character:FindFirstChild("Left Leg")
  224.             if LL then
  225.                 LL.Anchored = true
  226.                 plr.Character:FindFirstChild("Left Leg").Anchored = false
  227.             end
  228.         end
  229.         weld(sphere)
  230.         cce = Instance.new("ColorCorrectionEffect", game.Lighting)
  231.         cce.Saturation = -2
  232.         --game.Debris:AddItem(cce, 5)
  233.         sphere.Parent = game.Workspace
  234.         for i = 1,10 do
  235.             sphere.Size = sphere.Size + Vector3.new(50,50,50)
  236.             wait()
  237.             end
  238.         --wait(5)
  239.        
  240.         end
  241.     end
  242. end
  243. )
  244.  
  245. mse.KeyDown:connect(function(key)
  246.     key = key:lower()
  247.     if key == "h" then
  248. canworld = true
  249.         for i, v in pairs(game.Players:GetChildren()) do
  250.         t = v.Character:FindFirstChild("Torso")
  251.             if t then
  252.                 t.Anchored = false
  253.             end
  254.             RA = v.Character:FindFirstChild("Right Arm")
  255.             if RA then
  256.                 RA.Anchored = false
  257.             end
  258.             LA = v.Character:FindFirstChild("Left Arm")
  259.             if LA then
  260.                 LA.Anchored = false
  261.             end
  262.             RL = v.Character:FindFirstChild("Right Leg")
  263.             if RL then
  264.                 RL.Anchored = false
  265.             end
  266.             LL = v.Character:FindFirstChild("Left Leg")
  267.             if LL then
  268.                 LL.Anchored = false
  269.             end
  270.         end
  271.         cce.Saturation = 0
  272. sphere:Destroy()
  273. end
  274. end)
  275.  
  276.   Effects = {}
  277.   local Player = owner
  278.   local Character = Player.Character
  279.   Character.Archivable = true
  280.   AdvancingFortress = Character:Clone()
  281.   AdvancingFortress.Parent = Character
  282.   torso = AdvancingFortress.Torso
  283.   hum = AdvancingFortress.Humanoid
  284.   AdvancingFortress.Name = "Advancing Fortress"
  285.   pl = AdvancingFortress
  286.   for i, v in pairs(AdvancingFortress:GetChildren()) do
  287.     if v:IsA("BasePart") then
  288.       v.Transparency = 1
  289.     end
  290.   end
  291.   local Humanoid = AdvancingFortress.Humanoid
  292.   local LeftArm = AdvancingFortress["Left Arm"]
  293.   local RightArm = AdvancingFortress["Right Arm"]
  294.   local LeftLeg = AdvancingFortress["Left Leg"]
  295.   local RightLeg = AdvancingFortress["Right Leg"]
  296.   local Head = AdvancingFortress.Head
  297.   local Torso = AdvancingFortress.Torso
  298.   local Camera = game.Workspace.CurrentCamera
  299.   local RootPart = AdvancingFortress.HumanoidRootPart
  300.   local RootJoint = RootPart.RootJoint
  301.   local attack = false
  302.   local Anim = "Idle"
  303.   local attacktype = 1
  304.   local Torsovelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  305.   local velocity = RootPart.Velocity.y
  306.   local sine = 0
  307.   local change = 1
  308.   local Create = LoadLibrary("RbxUtility").Create
  309.   local TimeStop = false
  310.   local m = Create("Model")({
  311.     Parent = AdvancingFortress,
  312.     Name = "WeaponModel"
  313.   })
  314.   Head.face:remove()
  315.   AdvancingFortress.Head.Name = "FHead"
  316.   AdvancingFortress.Torso.Name = "FTorso"
  317.   AdvancingFortress.HumanoidRootPart.Name = "FHumanoidRootPart"
  318.   Humanoid.Animator.Parent = nil
  319.   AdvancingFortress.Animate.Parent = nil
  320.   local function newMotor(part0, part1, c0, c1)
  321.     local w = Create("Weld")({
  322.       Parent = part0,
  323.       Part0 = part0,
  324.       Part1 = part1,
  325.       C0 = c0,
  326.       C1 = c1
  327.     })
  328.     return w
  329.   end
  330.   function clerp(a, b, t)
  331.     return a:lerp(b, t)
  332.   end
  333.   RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
  334.   NeckCF = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  335.   local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0))
  336.   local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0))
  337.   local RH = newMotor(Torso, RightLeg, CFrame.new(0.5, -2, 0), CFrame.new(0, 0, 0))
  338.   local LH = newMotor(Torso, LeftLeg, CFrame.new(-0.5, -2, 0), CFrame.new(0, 0, 0))
  339.   RootJoint.C1 = CFrame.new(0, 0, 0)
  340.   RootJoint.C0 = CFrame.new(0, 0, 0)
  341.   Torso.Neck.C1 = CFrame.new(0, 0, 0)
  342.   Torso.Neck.C0 = CFrame.new(0, 1.5, 0)
  343.   local rarmc1 = RW.C1
  344.   local larmc1 = LW.C1
  345.   local rlegc1 = RH.C1
  346.   local llegc1 = LH.C1
  347.   local resetc1 = false
  348.   function PlayAnimationFromTable(table, speed, bool)
  349.     RootJoint.C0 = clerp(RootJoint.C0, table[1], speed)
  350.     Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed)
  351.     RW.C0 = clerp(RW.C0, table[3], speed)
  352.     LW.C0 = clerp(LW.C0, table[4], speed)
  353.     RH.C0 = clerp(RH.C0, table[5], speed)
  354.     LH.C0 = clerp(LH.C0, table[6], speed)
  355.     if bool == true and resetc1 == false then
  356.       resetc1 = true
  357.       RootJoint.C1 = RootJoint.C1
  358.       Torso.Neck.C1 = Torso.Neck.C1
  359.       RW.C1 = rarmc1
  360.       LW.C1 = larmc1
  361.       RH.C1 = rlegc1
  362.       LH.C1 = llegc1
  363.     end
  364.   end
  365.   ArtificialHB = Create("BindableEvent", script)({Parent = script, Name = "Heartbeat"})
  366.   script:WaitForChild("Heartbeat")
  367.   frame = 0.03333333333333333
  368.   tf = 0
  369.   allowframeloss = false
  370.   tossremainder = false
  371.   lastframe = tick()
  372.   script.Heartbeat:Fire()
  373.   game:GetService("RunService").Heartbeat:connect(function(s, p)
  374.     tf = tf + s
  375.     if tf >= frame then
  376.       if allowframeloss then
  377.         script.Heartbeat:Fire()
  378.         lastframe = tick()
  379.       else
  380.         for i = 1, math.floor(tf / frame) do
  381.           script.Heartbeat:Fire()
  382.         end
  383.         lastframe = tick()
  384.       end
  385.       if tossremainder then
  386.         tf = 0
  387.       else
  388.         tf = tf - frame * math.floor(tf / frame)
  389.       end
  390.     end
  391.   end)
  392.   function swait(num)
  393.     if num == 0 or num == nil then
  394.       ArtificialHB.Event:wait()
  395.     else
  396.       for i = 0, num do
  397.         ArtificialHB.Event:wait()
  398.       end
  399.     end
  400.   end
  401.   function RemoveOutlines(part)
  402.     part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
  403.   end
  404.   CFuncs = {
  405.     Part = {
  406.       Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  407.         local Part = Create("Part")({
  408.           Parent = Parent,
  409.           Reflectance = Reflectance,
  410.           Transparency = Transparency,
  411.           CanCollide = false,
  412.           Locked = true,
  413.           BrickColor = BrickColor.new(tostring(BColor)),
  414.           Name = Name,
  415.           Size = Size,
  416.           Material = Material
  417.         })
  418.         RemoveOutlines(Part)
  419.         return Part
  420.       end
  421.     },
  422.     Mesh = {
  423.       Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  424.         local Msh = Create(Mesh)({
  425.           Parent = Part,
  426.           Offset = OffSet,
  427.           Scale = Scale
  428.         })
  429.         if Mesh == "SpecialMesh" then
  430.           Msh.MeshType = MeshType
  431.           Msh.MeshId = MeshId
  432.         end
  433.         return Msh
  434.       end
  435.     },
  436.     Weld = {
  437.       Create = function(Parent, Part0, Part1, C0, C1)
  438.         local Weld = Create("Weld")({
  439.           Parent = Parent,
  440.           Part0 = Part0,
  441.           Part1 = Part1,
  442.           C0 = C0,
  443.           C1 = C1
  444.         })
  445.         return Weld
  446.       end
  447.     },
  448.     Sound = {
  449.       Create = function(id, par, vol, pit)
  450.         local Sound = Create("Sound")({
  451.           Volume = vol,
  452.           Pitch = pit or 1,
  453.           SoundId = "rbxassetid://" .. id,
  454.           Parent = par or workspace
  455.         })
  456.         Sound:play()
  457.         game:GetService("Debris"):AddItem(Sound, 130)
  458.         return Sound
  459.       end
  460.     },
  461.     Decal = {
  462.       Create = function(Color, Texture, Transparency, Name, Parent)
  463.         local Decal = Create("Decal")({
  464.           Color3 = Color,
  465.           Texture = "rbxassetid://" .. Texture,
  466.           Transparency = Transparency,
  467.           Name = Name,
  468.           Parent = Parent
  469.         })
  470.         return Decal
  471.       end
  472.     },
  473.     BillboardGui = {
  474.       Create = function(Parent, Image, Position, Size)
  475.         local BillPar = CFuncs.Part.Create(Parent, "SmoothPlastic", 0, 1, BrickColor.new("Black"), "BillboardGuiPart", Vector3.new(1, 1, 1))
  476.         BillPar.CFrame = CFrame.new(Position)
  477.         local Bill = Create("BillboardGui")({
  478.           Parent = BillPar,
  479.           Adornee = BillPar,
  480.           Size = UDim2.new(1, 0, 1, 0),
  481.           SizeOffset = Vector2.new(Size, Size)
  482.         })
  483.         local d = Create("ImageLabel", Bill)({
  484.           Parent = Bill,
  485.           BackgroundTransparency = 1,
  486.           Size = UDim2.new(1, 0, 1, 0),
  487.           Image = "rbxassetid://" .. Image
  488.         })
  489.         return BillPar
  490.       end
  491.     },
  492.     ParticleEmitter = {
  493.       Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
  494.         local Particle = Create("ParticleEmitter")({
  495.           Parent = Parent,
  496.           Color = ColorSequence.new(Color1, Color2),
  497.           LightEmission = LightEmission,
  498.           Size = Size,
  499.           Texture = Texture,
  500.           Transparency = Transparency,
  501.           ZOffset = ZOffset,
  502.           Acceleration = Accel,
  503.           Drag = Drag,
  504.           LockedToPart = LockedToPart,
  505.           VelocityInheritance = VelocityInheritance,
  506.           EmissionDirection = EmissionDirection,
  507.           Enabled = Enabled,
  508.           Lifetime = LifeTime,
  509.           Rate = Rate,
  510.           Rotation = Rotation,
  511.           RotSpeed = RotSpeed,
  512.           Speed = Speed,
  513.           VelocitySpread = VelocitySpread
  514.         })
  515.         return Particle
  516.       end
  517.     },
  518.     CreateTemplate = {}
  519.   }
  520.   function rayCast(Position, Direction, Range, Ignore)
  521.     return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
  522.   end
  523.   function FindNearestTorso(pos)
  524.     local list = game.Workspace:children()
  525.     local torso
  526.     local dist = 1000
  527.     local temp, human, temp2
  528.     for x = 1, #list do
  529.       temp2 = list[x]
  530.       if temp2.className == "Model" and temp2.Name ~= Character.Name then
  531.         temp = temp2:findFirstChild("Torso")
  532.         human = temp2:findFirstChild("Humanoid")
  533.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
  534.           local dohit = true
  535.           if dohit == true then
  536.             torso = temp
  537.             dist = (temp.Position - pos).magnitude
  538.           end
  539.         end
  540.       end
  541.     end
  542.     return torso, dist
  543.   end
  544.   function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  545.     if hit.Parent == nil then
  546.       return
  547.     end
  548.     local h = hit.Parent:FindFirstChild("Humanoid")
  549.     for _, v in pairs(hit.Parent:children()) do
  550.       if v:IsA("Humanoid") then
  551.         h = v
  552.       end
  553.     end
  554.     if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
  555.       if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  556.         return
  557.       end
  558.       local c = Create("ObjectValue")(
  559.         Name = "creator",
  560.         Value = owner
  561.         Parent = h
  562.  
  563.       game:GetService("Debris"):AddItem(c, 0.5)
  564.       CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
  565.       local Damage = math.random(minim, maxim)
  566.       local blocked = false
  567.       local block = hit.Parent:findFirstChild("Block")
  568.       if block ~= nil and block.className == "IntValue" and block.Value > 0 then
  569.         blocked = true
  570.         block.Value = block.Value - 1
  571.         print(block.Value)
  572.       end
  573.       if TimeStop == false then
  574.         h.Health = h.Health - Damage
  575.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Royal purple").Color)
  576.       elseif TimeStop == true then
  577.         repeat
  578.           wait()
  579.         until TimeStop == false
  580.         h.Health = h.Health - Damage / 2
  581.         ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, BrickColor.new("Royal purple").Color)
  582.       end
  583.       if Type == "Knockdown" then
  584.         local hum = hit.Parent.Humanoid
  585.         hum.PlatformStand = true
  586.         coroutine.resume(coroutine.create(function(HHumanoid)
  587.           swait(1)
  588.           HHumanoid.PlatformStand = false
  589.         end), hum)
  590.         local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  591.         local bodvol = Create("BodyVelocity")({
  592.           velocity = angle * knockback,
  593.           P = 5000,
  594.           maxForce = Vector3.new(8000, 8000, 8000),
  595.           Parent = hit
  596.         })
  597.         local rl = Create("BodyAngularVelocity")({
  598.           P = 3000,
  599.           maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  600.           angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  601.           Parent = hit
  602.         })
  603.         game:GetService("Debris"):AddItem(bodvol, 0.5)
  604.         game:GetService("Debris"):AddItem(rl, 0.5)
  605.       elseif Type == "Normal" then
  606.         local vp = Create("BodyVelocity")({
  607.           P = 500,
  608.           maxForce = Vector3.new(math.huge, 0, math.huge),
  609.           velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  610.         })
  611.         if knockback > 0 then
  612.           vp.Parent = hit.Parent.Torso
  613.         end
  614.         game:GetService("Debris"):AddItem(vp, 0.5)
  615.       elseif Type == "Up" then
  616.         local bodyVelocity = Create("BodyVelocity")({
  617.           velocity = Vector3.new(0, 20, 0),
  618.           P = 5000,
  619.           maxForce = Vector3.new(8000, 8000, 8000),
  620.           Parent = hit
  621.         })
  622.         game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  623.       elseif Type == "DarkUp" then
  624.         coroutine.resume(coroutine.create(function()
  625.           for i = 0, 1, 0.1 do
  626.             swait()
  627.             Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1)
  628.           end
  629.         end))
  630.         local bodyVelocity = Create("BodyVelocity")({
  631.           velocity = Vector3.new(0, 20, 0),
  632.           P = 5000,
  633.           maxForce = Vector3.new(8000, 8000, 8000),
  634.           Parent = hit
  635.         })
  636.         game:GetService("Debris"):AddItem(bodyVelocity, 1)
  637.       elseif Type == "Snare" then
  638.         local bp = Create("BodyPosition")({
  639.           P = 2000,
  640.           D = 100,
  641.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  642.           position = hit.Parent.Torso.Position,
  643.           Parent = hit.Parent.Torso
  644.         })
  645.         game:GetService("Debris"):AddItem(bp, 1)
  646.       elseif Type == "Freeze" then
  647.         local BodPos = Create("BodyPosition")({
  648.           P = 50000,
  649.           D = 1000,
  650.           maxForce = Vector3.new(math.huge, math.huge, math.huge),
  651.           position = hit.Parent.Torso.Position,
  652.           Parent = hit.Parent.Torso
  653.         })
  654.         local BodGy = Create("BodyGyro")({
  655.           maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
  656.           P = 20000,
  657.           Parent = hit.Parent.Torso,
  658.           cframe = hit.Parent.Torso.CFrame
  659.         })
  660.         hit.Parent.Torso.Anchored = true
  661.         coroutine.resume(coroutine.create(function(Part)
  662.           swait(1.5)
  663.           Part.Anchored = false
  664.         end), hit.Parent.Torso)
  665.         game:GetService("Debris"):AddItem(BodPos, 3)
  666.         game:GetService("Debris"):AddItem(BodGy, 3)
  667.       end
  668.       local debounce = Create("BoolValue")({
  669.         Name = "DebounceHit",
  670.         Parent = hit.Parent,
  671.         Value = true
  672.       })
  673.       game:GetService("Debris"):AddItem(debounce, Delay)
  674.       c = Create("ObjectValue")({
  675.         Name = "creator",
  676.         Value = Player,
  677.         Parent = h
  678.       })
  679.       game:GetService("Debris"):AddItem(c, 0.5)
  680.     end
  681.   end
  682.   function ShowDamage(Pos, Text, Time, Color)
  683.     local Rate = 0.03333333333333333
  684.     local Pos = Pos or Vector3.new(0, 0, 0)
  685.     local Text = Text or ""
  686.     local Time = Time or 2
  687.     local Color = Color or Color3.new(1, 0, 1)
  688.     local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
  689.     EffectPart.Anchored = true
  690.     local BillboardGui = Create("BillboardGui")({
  691.       Size = UDim2.new(3, 0, 3, 0),
  692.       Adornee = EffectPart,
  693.       Parent = EffectPart
  694.     })
  695.     local TextLabel = Create("TextLabel")({
  696.       BackgroundTransparency = 1,
  697.       Size = UDim2.new(1, 0, 1, 0),
  698.       Text = Text,
  699.       Font = "SciFi",
  700.       TextColor3 = Color,
  701.       TextScaled = true,
  702.       Parent = BillboardGui
  703.     })
  704.     game.Debris:AddItem(EffectPart, Time)
  705.     EffectPart.Parent = game:GetService("Workspace")
  706.     delay(0, function()
  707.       local Frames = Time / Rate
  708.       for Frame = 1, Frames do
  709.         wait(Rate)
  710.         local Percent = Frame / Frames
  711.         EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
  712.         TextLabel.TextTransparency = Percent
  713.       end
  714.       if EffectPart and EffectPart.Parent then
  715.         EffectPart:Destroy()
  716.       end
  717.     end)
  718.   end
  719.   local STDamage = false
  720.   function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch)
  721.     for _, c in pairs(workspace:children()) do
  722.       local hum = c:findFirstChild("Humanoid")
  723.       if hum ~= nil then
  724.         local head = c:findFirstChild("Torso")
  725.         if head ~= nil then
  726.           local targ = head.Position - Part.Position
  727.           local mag = targ.magnitude
  728.           if Magnitude >= mag and c.Name ~= Player.Name then
  729.             Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, 0.1, HitSound, HitPitch)
  730.             if STDamage == true then
  731.               for i = 1, 3 do
  732.                 Effects.Block.Create(BrickColor.new("Royal purple"), head.CFrame, 1, 1, 1, 4, 4, 4, 0.07, 1)
  733.               end
  734.               for i = 1, 10 do
  735.                 CamShake(1, 70000)
  736.                 Effects.Break.Create(BrickColor.new("Royal purple"), head.CFrame, 1, 1, 1)
  737.               end
  738.             elseif STDamage == false then
  739.               CamShake(1, 90000)
  740.               Effects.Block.Create(BrickColor.new("Royal purple"), head.CFrame, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.07, 1)
  741.               for i = 1, 2 do
  742.                 Effects.Break.Create(BrickColor.new("Royal purple"), head.CFrame, 0.4, 0.4, 0.4)
  743.               end
  744.             end
  745.           end
  746.         end
  747.       end
  748.     end
  749.   end
  750.   HHandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HHandle", Vector3.new(1.09999979, 0.299999923, 1.0999999))
  751.   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))
  752.   Eye1 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "cool yellow", "Eye1", Vector3.new(0.400000006, 0.200000003, 0.200000003))
  753.   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))
  754.   CFuncs.Mesh.Create("SpecialMesh", Eye1, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  755.   Eye2 = CFuncs.Part.Create(m, Enum.Material.Neon, 0, 1, "Cool yellow", "Eye2", Vector3.new(0.400000006, 0.200000003, 0.200000003))
  756.   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))
  757.   CFuncs.Mesh.Create("SpecialMesh", Eye2, Enum.MeshType.Sphere, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  758.   THandle = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Medium stone grey", "THandle", Vector3.new(1, 0.799999893, 1))
  759.   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))
  760.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.80000019, 0.300000012, 1.80000007))
  761.   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))
  762.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  763.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 1.10000002, 0.300000012))
  764.   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))
  765.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  766.   AHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "AHandleR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
  767.   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))
  768.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
  769.   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))
  770.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  771.   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))
  772.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  773.   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))
  774.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
  775.   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))
  776.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
  777.   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))
  778.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
  779.   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))
  780.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
  781.   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))
  782.   HitboxR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HitboxR", Vector3.new(0.799999952, 0.800000012, 1.22000003))
  783.   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))
  784.   AHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "AHandleL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
  785.   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))
  786.   HitboxL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "HitboxL", Vector3.new(0.800000072, 0.800000012, 1.22000003))
  787.   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))
  788.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  789.   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))
  790.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999928, 0.520000041))
  791.   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))
  792.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  793.   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))
  794.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.20000005, 0.800000012, 1.20000005))
  795.   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))
  796.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.899999976, 1.01999998))
  797.   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))
  798.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.200000003, 0.699999988, 1.01999998))
  799.   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))
  800.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.300000012, 0.699999988, 1.01999998))
  801.   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))
  802.   LHandleR = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "LHandleR", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  803.   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))
  804.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000012, 0.800000012, 0.200000003))
  805.   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))
  806.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  807.   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))
  808.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
  809.   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))
  810.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.400000006, 1.20000005, 0.200000003))
  811.   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))
  812.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
  813.   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))
  814.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  815.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  816.   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))
  817.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  818.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  819.   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))
  820.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  821.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  822.   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))
  823.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  824.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.200000003, 0.200000003, 0.200000003))
  825.   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))
  826.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  827.   LHandleL = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "LHandleL", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  828.   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))
  829.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 1.00999999, 1.19000006))
  830.   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))
  831.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.400000006, 1.20000005, 0.300000012))
  832.   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))
  833.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(1.02999997, 0.699999928, 1.19000006))
  834.   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))
  835.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000131, 1.20000005, 0.800000012))
  836.   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))
  837.   CFuncs.Mesh.Create("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  838.   Part = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Part", Vector3.new(0.800000012, 0.800000012, 0.300000012))
  839.   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))
  840.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  841.   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))
  842.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  843.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  844.   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))
  845.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  846.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  847.   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))
  848.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  849.   Wedge = CFuncs.Part.Create(m, Enum.Material.SmoothPlastic, 0, 1, "Cyan", "Wedge", Vector3.new(0.300000012, 0.200000003, 0.200000003))
  850.   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))
  851.   CFuncs.Mesh.Create("SpecialMesh", Wedge, Enum.MeshType.Wedge, "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1))
  852.   Shield = CFuncs.Part.Create(m, "Neon", 0, 0.5, "Royal purple", "Part", Vector3.new(9.1, 8.5, 0.2))
  853.   CFuncs.Mesh.Create("SpecialMesh", Shield, "FileMesh", "rbxassetid://708292865", Vector3.new(0, 0, 0), Vector3.new(0.04, 0.04, 0.04))
  854.   Shield.Parent = nil
  855.   EffectModel = Create("Model")({Parent = Character, Name = "Effects"})
  856.   Effects = {
  857.     Block = {
  858.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
  859.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  860.         prt.Anchored = true
  861.         prt.CFrame = cframe
  862.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  863.         game:GetService("Debris"):AddItem(prt, 10)
  864.         if Type == 1 or Type == nil then
  865.           table.insert(Effects, {
  866.             prt,
  867.             "Block1",
  868.             delay,
  869.             x3,
  870.             y3,
  871.             z3,
  872.             msh
  873.           })
  874.         elseif Type == 2 then
  875.           table.insert(Effects, {
  876.             prt,
  877.             "Block2",
  878.             delay,
  879.             x3,
  880.             y3,
  881.             z3,
  882.             msh
  883.           })
  884.         end
  885.       end
  886.     },
  887.     Cylinder = {
  888.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  889.         local prt = CFuncs.Part .. Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.2, 0.2, 0.2))
  890.         prt.Anchored = true
  891.         prt.CFrame = cframe
  892.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  893.         game:GetService("Debris"):AddItem(prt, 2)
  894.         Effects[#Effects + 1] = {
  895.           prt,
  896.           "Cylinder",
  897.           delay,
  898.           x3,
  899.           y3,
  900.           z3
  901.         }
  902.       end
  903.     },
  904.     Head = {
  905.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  906.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  907.         prt.Anchored = true
  908.         prt.CFrame = cframe
  909.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "nil", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  910.         game:GetService("Debris"):AddItem(prt, 10)
  911.         table.insert(Effects, {
  912.           prt,
  913.           "Cylinder",
  914.           delay,
  915.           x3,
  916.           y3,
  917.           z3,
  918.           msh
  919.         })
  920.       end
  921.     },
  922.     Sphere = {
  923.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  924.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  925.         prt.Anchored = true
  926.         prt.CFrame = cframe
  927.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  928.         game:GetService("Debris"):AddItem(prt, 10)
  929.         table.insert(Effects, {
  930.           prt,
  931.           "Cylinder",
  932.           delay,
  933.           x3,
  934.           y3,
  935.           z3,
  936.           msh
  937.         })
  938.       end
  939.     },
  940.     Sphere2 = {
  941.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  942.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  943.         prt.Anchored = true
  944.         prt.CFrame = cframe
  945.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  946.         game:GetService("Debris"):AddItem(prt, 10)
  947.         table.insert(Effects, {
  948.           prt,
  949.           "Cylinder",
  950.           delay,
  951.           x3,
  952.           y3,
  953.           z3,
  954.           msh
  955.         })
  956.       end
  957.     },
  958.     Elec = {
  959.       Create = function(cff, x, y, z)
  960.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, BrickColor.new("Royal purple"), "Part", Vector3.new(1, 1, 1))
  961.         prt.Anchored = true
  962.         prt.CFrame = cff * CFrame.new(math.random(-x, x), math.random(-y, y), math.random(-z, z))
  963.         prt.CFrame = CFrame.new(prt.Position)
  964.         game:GetService("Debris"):AddItem(prt, 2)
  965.         local xval = math.random() / 2
  966.         local yval = math.random() / 2
  967.         local zval = math.random() / 2
  968.         local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval))
  969.         table.insert(Effects, {
  970.           prt,
  971.           "Elec",
  972.           0.1,
  973.           x,
  974.           y,
  975.           z,
  976.           xval,
  977.           yval,
  978.           zval
  979.         })
  980.       end
  981.     },
  982.     Ring = {
  983.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  984.         local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
  985.         prt.Anchored = true
  986.         prt.CFrame = cframe
  987.         local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  988.         game:GetService("Debris"):AddItem(prt, 10)
  989.         table.insert(Effects, {
  990.           prt,
  991.           "Cylinder",
  992.           delay,
  993.           x3,
  994.           y3,
  995.           z3,
  996.           msh
  997.         })
  998.       end
  999.     },
  1000.     Wave = {
  1001.       Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
  1002.         local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
  1003.         prt.Anchored = true
  1004.         prt.CFrame = cframe
  1005.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1006.         game:GetService("Debris"):AddItem(prt, 10)
  1007.         table.insert(Effects, {
  1008.           prt,
  1009.           "Cylinder",
  1010.           delay,
  1011.           x3,
  1012.           y3,
  1013.           z3,
  1014.           msh
  1015.         })
  1016.       end
  1017.     },
  1018.     Break = {
  1019.       Create = function(brickcolor, cframe, x1, y1, z1)
  1020.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
  1021.         prt.Anchored = true
  1022.         prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  1023.         local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1024.         local num = math.random(10, 50) / 1000
  1025.         game:GetService("Debris"):AddItem(prt, 10)
  1026.         table.insert(Effects, {
  1027.           prt,
  1028.           "Shatter",
  1029.           num,
  1030.           prt.CFrame,
  1031.           math.random() - math.random(),
  1032.           0,
  1033.           math.random(50, 100) / 100
  1034.         })
  1035.       end
  1036.     },
  1037.     Fire = {
  1038.       Create = function(brickcolor, cframe, x1, y1, z1, delay)
  1039.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
  1040.         prt.Anchored = true
  1041.         prt.CFrame = cframe
  1042.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1043.         game:GetService("Debris"):AddItem(prt, 10)
  1044.         table.insert(Effects, {
  1045.           prt,
  1046.           "Fire",
  1047.           delay,
  1048.           1,
  1049.           1,
  1050.           1,
  1051.           msh
  1052.         })
  1053.       end
  1054.     },
  1055.     FireWave = {
  1056.       Create = function(brickcolor, cframe, x1, y1, z1)
  1057.         local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 1, brickcolor, "Effect", Vector3.new())
  1058.         prt.Anchored = true
  1059.         prt.CFrame = cframe
  1060.         msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
  1061.         local d = Create("Decal")({
  1062.           Parent = prt,
  1063.           Texture = "rbxassetid://26356434",
  1064.           Face = "Top"
  1065.         })
  1066.         local d = Create("Decal")({
  1067.           Parent = prt,
  1068.           Texture = "rbxassetid://26356434",
  1069.           Face = "Bottom"
  1070.         })
  1071.         game:GetService("Debris"):AddItem(prt, 10)
  1072.         table.insert(Effects, {
  1073.           prt,
  1074.           "FireWave",
  1075.           1,
  1076.           30,
  1077.           math.random(400, 600) / 100,
  1078.           msh
  1079.         })
  1080.       end
  1081.     },
  1082.     Lightning = {
  1083.       Create = function(p0, p1, tym, ofs, col, th, tra, last)
  1084.         local magz = (p0 - p1).magnitude
  1085.         local curpos = p0
  1086.         local trz = {
  1087.           -ofs,
  1088.           ofs
  1089.         }
  1090.         for i = 1, tym do
  1091.           local li = CFuncs.Part.Create(EffectModel, "Neon", 0, tra or 0.4, col, "Ref", Vector3.new(th, th, magz / tym))
  1092.           local ofz = Vector3.new(trz[math.random(1, 2)], trz[math.random(1, 2)], trz[math.random(1, 2)])
  1093.           local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
  1094.           li.Material = "Neon"
  1095.           if tym == i then
  1096.             local magz2 = (curpos - p1).magnitude
  1097.             li.Size = Vector3.new(th, th, magz2)
  1098.             li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
  1099.             table.insert(Effects, {
  1100.               li,
  1101.               "Disappear",
  1102.               last
  1103.             })
  1104.           else
  1105.             li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
  1106.             curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
  1107.             game.Debris:AddItem(li, 10)
  1108.             table.insert(Effects, {
  1109.               li,
  1110.               "Disappear",
  1111.               last
  1112.             })
  1113.           end
  1114.         end
  1115.       end
  1116.     },
  1117.     EffectTemplate = {}
  1118.   }
  1119.   local Invisible = true
  1120.   function Reappear()
  1121.     for _, i in pairs(AdvancingFortress:children()) do
  1122.       if i:IsA("BasePart") then
  1123.         coroutine.resume(coroutine.create(function(Part)
  1124.           for i = 0, 1, 0.3 do
  1125.             swait()
  1126.             Part.Transparency = -i
  1127.           end
  1128.           Part.Transparency = 0
  1129.         end), i)
  1130.       end
  1131.     end
  1132.     for _, i in pairs(m:children()) do
  1133.       if i:IsA("BasePart") then
  1134.         coroutine.resume(coroutine.create(function(Part)
  1135.           for i = 0, 1, 0.3 do
  1136.             swait()
  1137.             Part.Transparency = i
  1138.           end
  1139.           Part.Transparency = 0
  1140.         end), i)
  1141.       end
  1142.     end
  1143.   end
  1144.   function ReappearArmorOnly()
  1145.     for _, i in pairs(m:children()) do
  1146.       if i:IsA("BasePart") then
  1147.         coroutine.resume(coroutine.create(function(Part)
  1148.           for i = 0, 1, 0.3 do
  1149.             swait()
  1150.             Part.Transparency = i
  1151.           end
  1152.           Part.Transparency = 0
  1153.         end), i)
  1154.       end
  1155.     end
  1156.   end
  1157.   function Disappear()
  1158.     for _, i in pairs(AdvancingFortress:children()) do
  1159.       if i:IsA("BasePart") then
  1160.         coroutine.resume(coroutine.create(function(Part)
  1161.           for i = 0, 1, 0.3 do
  1162.             swait()
  1163.             Part.Transparency = i
  1164.           end
  1165.           Part.Transparency = 1
  1166.         end), i)
  1167.       end
  1168.     end
  1169.     for _, i in pairs(m:children()) do
  1170.       if i:IsA("BasePart") then
  1171.         coroutine.resume(coroutine.create(function(Part)
  1172.           for i = 0, 1, 0.3 do
  1173.             swait()
  1174.             Part.Transparency = i
  1175.           end
  1176.           Part.Transparency = 1
  1177.         end), i)
  1178.       end
  1179.     end
  1180.   end
  1181.   function DisappearArmorOnly()
  1182.     for _, i in pairs(m:children()) do
  1183.       if i:IsA("BasePart") then
  1184.         coroutine.resume(coroutine.create(function(Part)
  1185.           for i = 0, 1, 0.3 do
  1186.             swait()
  1187.             Part.Transparency = i
  1188.           end
  1189.           Part.Transparency = 1
  1190.         end), i)
  1191.       end
  1192.     end
  1193.   end
  1194.   function CamShake(time, freq)
  1195.     coroutine.resume(coroutine.create(function()
  1196.       local cam = game:GetService("Workspace").CurrentCamera
  1197.       local time = 10
  1198.       local seed = Vector3.new(math.random(100, 200) / freq, math.random(100, 200) / freq, 0)
  1199.       if math.random(1, 2) == 1 then
  1200.         seed = Vector3.new(-seed.x, seed.y, 0)
  1201.       end
  1202.       if math.random(1, 2) == 1 then
  1203.         seed = Vector3.new(seed.x, -seed.y, 0)
  1204.       end
  1205.       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)
  1206.       for i = 1, time do
  1207.         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)
  1208.         wait()
  1209.       end
  1210.     end))
  1211.   end
  1212.   local ora = false
  1213.   function ORA()
  1214.     attack = true
  1215.     local S = CFuncs.Sound.Create("161823027", Torso, 1, 1)
  1216.     S.Looped = true
  1217.     if ora == true then
  1218.       while ora == true do
  1219.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1220.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1221.         for i = 0, 1, 0.8 do
  1222.           swait()
  1223.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1224.           PlayAnimationFromTable({
  1225.             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),
  1226.             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),
  1227.             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),
  1228.             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),
  1229.             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),
  1230.             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)
  1231.           }, 0.8, false)
  1232.         end
  1233.         CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
  1234.         MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
  1235.         for i = 0, 1, 0.8 do
  1236.           swait()
  1237.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1238.           PlayAnimationFromTable({
  1239.             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),
  1240.             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),
  1241.             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),
  1242.             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),
  1243.             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),
  1244.             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)
  1245.           }, 0.8, false)
  1246.         end
  1247.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1248.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1249.         for i = 0, 1, 0.8 do
  1250.           swait()
  1251.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1252.           PlayAnimationFromTable({
  1253.             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),
  1254.             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),
  1255.             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),
  1256.             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),
  1257.             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),
  1258.             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)
  1259.           }, 0.8, false)
  1260.         end
  1261.         CFuncs.Sound.Create("200632136", HitboxR, 0.3, math.random(1, 1.2))
  1262.         MagnitudeDamage(HitboxR, 5, 4, 10, 0, "Normal", "260430117", 1)
  1263.         for i = 0, 1, 0.8 do
  1264.           swait()
  1265.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -4), 0.5)
  1266.           PlayAnimationFromTable({
  1267.             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),
  1268.             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),
  1269.             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),
  1270.             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),
  1271.             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),
  1272.             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)
  1273.           }, 0.8, false)
  1274.         end
  1275.         CFuncs.Sound.Create("200632136", HitboxL, 0.3, math.random(1, 1.2))
  1276.         MagnitudeDamage(HitboxL, 5, 4, 10, 0, "Normal", "260430117", 1)
  1277.       end
  1278.     end
  1279.     S:Stop()
  1280.     local S2 = CFuncs.Sound.Create("402454350", Torso, 1.5, 1)
  1281.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1282.     for i = 0, 1, 0.13 do
  1283.       swait()
  1284.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -3), 0.5)
  1285.       PlayAnimationFromTable({
  1286.         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),
  1287.         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),
  1288.         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),
  1289.         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),
  1290.         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),
  1291.         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)
  1292.       }, 0.2, false)
  1293.     end
  1294.     CFuncs.Sound.Create("471881954", HitboxR, 1, 1)
  1295.     MagnitudeDamage(HitboxR, 7, 10, 15, 50, "Normal", "610359590", 1)
  1296.     for i = 0, 1, 0.1 do
  1297.       swait()
  1298.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
  1299.       PlayAnimationFromTable({
  1300.         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),
  1301.         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),
  1302.         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),
  1303.         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),
  1304.         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),
  1305.         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)
  1306.       }, 0.6, false)
  1307.     end
  1308.     attack = false
  1309.   end
  1310.   function CastleCrusherFist()
  1311.     attack = true
  1312.     STDamage = true
  1313.     local S2 = CFuncs.Sound.Create("402454350", Torso, 1, 1)
  1314.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1315.     for i = 0, 1, 0.1 do
  1316.       swait()
  1317.       Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1318.       Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1319.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.2)
  1320.       PlayAnimationFromTable({
  1321.         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),
  1322.         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),
  1323.         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),
  1324.         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),
  1325.         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),
  1326.         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)
  1327.       }, 0.2, false)
  1328.     end
  1329.     MagnitudeDamage(HitboxR, 10, 50, 80, 100, "Normal", "610359515", 1)
  1330.     Effects.Wave.Create(BrickColor.new("Royal purple"), 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)
  1331.     CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
  1332.     CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
  1333.     for i = 0, 1, 0.08 do
  1334.       swait()
  1335.       Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1336.       Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1337.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 0.3)
  1338.       PlayAnimationFromTable({
  1339.         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),
  1340.         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),
  1341.         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),
  1342.         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),
  1343.         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),
  1344.         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)
  1345.       }, 0.6, false)
  1346.     end
  1347.     STDamage = false
  1348.     attack = false
  1349.   end
  1350.   function CastleCrusherFist()
  1351.     attack = true
  1352.     STDamage = true
  1353.     local S2 = CFuncs.Sound.Create("402454350", Torso, 1, 1)
  1354.     Instance.new("DistortionSoundEffect", S2).Level = 0.8
  1355.     for i = 0, 1, 0.1 do
  1356.       swait()
  1357.       Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1358.       Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1359.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.5)
  1360.       PlayAnimationFromTable({
  1361.         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),
  1362.         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),
  1363.         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),
  1364.         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),
  1365.         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),
  1366.         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)
  1367.       }, 0.2, false)
  1368.     end
  1369.     Effects.Wave.Create(BrickColor.new("Royal purple"), 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)
  1370.     Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 140
  1371.     CFuncs.Sound.Create("471881980", HitboxR, 1, 0.9)
  1372.     CFuncs.Sound.Create("471881954", HitboxR, 1, 0.8)
  1373.     for i = 0, 1, 0.08 do
  1374.       swait()
  1375.       MagnitudeDamage(HitboxR, 5, 50, 80, 100, "Normal", "610359515", 1)
  1376.       Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 4, 4, 4, 0.3, 1)
  1377.       Effects.Break.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 0.5, 0.5, 0.5)
  1378.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -5), 1)
  1379.       PlayAnimationFromTable({
  1380.         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),
  1381.         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),
  1382.         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),
  1383.         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),
  1384.         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),
  1385.         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)
  1386.       }, 0.6, false)
  1387.     end
  1388.     STDamage = false
  1389.     attack = false
  1390.   end
  1391.   function weld5(part0, part1, c0, c1)
  1392.     local weeld = Instance.new("Weld", part0)
  1393.     weeld.Part0 = part0
  1394.     weeld.Part1 = part1
  1395.     weeld.C0 = c0
  1396.     weeld.C1 = c1
  1397.     return weeld
  1398.   end
  1399.   local Grab = false
  1400.   function GRABEMBOIGRABEM()
  1401.     attack = true
  1402.     gp = nil
  1403.     con1 = HitboxR.Touched:connect(function(hit)
  1404.       local ht = hit.Parent
  1405.       local hum1 = ht:FindFirstChild("Humanoid")
  1406.       if Grab == false then
  1407.         if hum1 ~= nil and hit.Parent ~= Character then
  1408.           hum1.PlatformStand = true
  1409.           gp = ht
  1410.           Grab = true
  1411.           local asd = weld5(RightArm, ht:FindFirstChild("Torso"), CFrame.new(0, -1.5, 0), CFrame.new(0, 0, 0))
  1412.           asd.Parent = RightArm
  1413.           asd.Name = "asd"
  1414.           asd.C0 = asd.C0 * CFrame.Angles(math.rad(-90), 0, 0)
  1415.           CFuncs.Sound.Create("200632821", Torso, 1, 1)
  1416.         elseif hum1 == nil then
  1417.           con1:disconnect()
  1418.           wait()
  1419.           return
  1420.         end
  1421.       end
  1422.     end)
  1423.     for i = 0, 1, 0.2 do
  1424.       swait()
  1425.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -2), 0.3)
  1426.       PlayAnimationFromTable({
  1427.         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),
  1428.         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),
  1429.         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),
  1430.         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),
  1431.         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),
  1432.         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)
  1433.       }, 0.3, false)
  1434.     end
  1435.     for i = 0, 1, 0.1 do
  1436.       swait()
  1437.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
  1438.       PlayAnimationFromTable({
  1439.         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),
  1440.         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),
  1441.         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),
  1442.         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),
  1443.         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),
  1444.         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)
  1445.       }, 0.3, false)
  1446.     end
  1447.     if Grab == true then
  1448.       for i = 1, 5 do
  1449.         for i = 0, 1, 0.35 do
  1450.           swait()
  1451.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 13, -6), 0.3)
  1452.           PlayAnimationFromTable({
  1453.             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),
  1454.             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),
  1455.             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),
  1456.             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),
  1457.             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),
  1458.             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)
  1459.           }, 0.4, false)
  1460.         end
  1461.         for i = 0, 1, 0.3 do
  1462.           swait()
  1463.           RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1, -6), 0.3)
  1464.           PlayAnimationFromTable({
  1465.             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),
  1466.             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),
  1467.             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),
  1468.             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),
  1469.             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),
  1470.             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)
  1471.           }, 0.7, false)
  1472.         end
  1473.         local hit, pos = rayCast(HitboxR.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 100, Character)
  1474.         if hit ~= nil then
  1475.           MagnitudeDamage(HitboxR, 5, 10, 30, 0, "Normal", "610359515", 1.3)
  1476.           Effects.Block.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09, 1)
  1477.           Effects.Wave.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 1, 1, 1, 0.7, 0.7, 0.7, 0.09)
  1478.           Effects.Sphere.Create(BrickColor.new("Royal purple"), CFrame.new(pos), 3, 3, 3, 5, 5, 5, 0.09)
  1479.         end
  1480.       end
  1481.     end
  1482.     for i, v in pairs(RightArm:GetChildren()) do
  1483.       if v.Name == "asd" and v:IsA("Weld") then
  1484.         v:Remove()
  1485.       end
  1486.     end
  1487.     Grab = false
  1488.     con1:disconnect()
  1489.     attack = false
  1490.   end
  1491.   local IsWearingArmor = false
  1492.   function Armor(Mode)
  1493.     attack = true
  1494.     if IsWearingArmor == false and Mode == "On" then
  1495.       IsWearingArmor = true
  1496.       Disappear()
  1497.       swait(10)
  1498.       ReappearArmorOnly()
  1499.       Character.Humanoid.MaxHealth = 500
  1500.       Character.Humanoid.Health = 500
  1501.       HHandleWeld.Part0 = Character.Head
  1502.       THandleWeld.Part0 = Character.Torso
  1503.       AHandleRWeld.Part0 = Character["Right Arm"]
  1504.       AHandleLWeld.Part0 = Character["Left Arm"]
  1505.       LHandleRWeld.Part0 = Character["Right Leg"]
  1506.       LHandleLWeld.Part0 = Character["Left Leg"]
  1507.       for i, v in pairs(AdvancingFortress:GetChildren()) do
  1508.         if v:IsA("BasePart") then
  1509.           v.Transparency = 1
  1510.         end
  1511.       end
  1512.       for i, v in pairs(Character:GetChildren()) do
  1513.         if v:IsA("Accessory") then
  1514.           v.Handle.Transparency = 1
  1515.         end
  1516.       end
  1517.     elseif IsWearingArmor == true and Mode == "Off" then
  1518.       IsWearingArmor = false
  1519.       DisappearArmorOnly()
  1520.       for i, v in pairs(Character:GetChildren()) do
  1521.         if v:IsA("Accessory") then
  1522.           v.Handle.Transparency = 0
  1523.         end
  1524.       end
  1525.       swait(10)
  1526.       Reappear()
  1527.       Character.Humanoid.MaxHealth = 100
  1528.       Character.Humanoid.Health = 100
  1529.       HHandleWeld.Part0 = Head
  1530.       THandleWeld.Part0 = Torso
  1531.       AHandleRWeld.Part0 = RightArm
  1532.       AHandleLWeld.Part0 = LeftArm
  1533.       LHandleRWeld.Part0 = RightLeg
  1534.       LHandleLWeld.Part0 = LeftLeg
  1535.       for i, v in pairs(AdvancingFortress:GetChildren()) do
  1536.         if v:IsA("BasePart") then
  1537.           v.Transparency = 0
  1538.         end
  1539.       end
  1540.     end
  1541.     attack = false
  1542.   end
  1543.   local ShieldMode = false
  1544.   local ShieldCharge = false
  1545.   function HoloHexShield()
  1546.     attack = true
  1547.     Shield.Parent = m
  1548.     Shield.CanCollide = true
  1549.     if ShieldMode == true then
  1550.       while ShieldMode == true do
  1551.         swait()
  1552.         Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
  1553.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1554.         PlayAnimationFromTable({
  1555.           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),
  1556.           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),
  1557.           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),
  1558.           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),
  1559.           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),
  1560.           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)
  1561.         }, 0.3, false)
  1562.       end
  1563.     end
  1564.     Shield.CanCollide = false
  1565.     CFuncs.Sound.Create("200632211", HitboxR, 1, 0.8)
  1566.     CFuncs.Sound.Create("200632875", HitboxR, 1, 0.9)
  1567.     Character.HumanoidRootPart.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 160
  1568.     Effects.Wave.Create(BrickColor.new("Royal purple"), 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)
  1569.     for i = 0, 1, 0.05 do
  1570.       swait()
  1571.       MagnitudeDamage(Shield, 5, 10, 15, 20, "Normal", "610359515", 1.3)
  1572.       Effects.Elec.Create(Shield.CFrame, 6, 6, 6)
  1573.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -3), 1)
  1574.       PlayAnimationFromTable({
  1575.         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),
  1576.         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),
  1577.         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),
  1578.         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),
  1579.         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),
  1580.         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)
  1581.       }, 0.5, false)
  1582.     end
  1583.     Shield.Parent = nil
  1584.     attack = false
  1585.   end
  1586.   Mouse.Button1Down:connect(function()
  1587.     if attack == false and attacktype == 1 then
  1588.       attacktype = 2
  1589.       attackone()
  1590.     elseif attack == false and attacktype == 2 then
  1591.       attacktype = 1
  1592.       attacktwo()
  1593.     end
  1594.   end)
  1595.   game.Lighting.Outlines = false
  1596.   function attackone()
  1597.     attack = true
  1598.     for i = 0, 1, 0.12 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(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),
  1603.         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),
  1604.         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),
  1605.         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),
  1606.         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),
  1607.         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)
  1608.       }, 0.3, false)
  1609.     end
  1610.     MagnitudeDamage(HitboxR, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1)
  1611.     CFuncs.Sound.Create("200632136", HitboxR, 1, 1)
  1612.     RootPart.Velocity = RootPart.CFrame.lookVector * 40
  1613.     for i = 0, 1, 0.11 do
  1614.       swait()
  1615.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1616.       PlayAnimationFromTable({
  1617.         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),
  1618.         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),
  1619.         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),
  1620.         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),
  1621.         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),
  1622.         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)
  1623.       }, 0.45, false)
  1624.     end
  1625.     attack = false
  1626.   end
  1627.   function attacktwo()
  1628.     attack = true
  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.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),
  1634.         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),
  1635.         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),
  1636.         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),
  1637.         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),
  1638.         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)
  1639.       }, 0.34, false)
  1640.     end
  1641.     MagnitudeDamage(HitboxL, 7, 10, 15, math.random(1, 3), "Normal", "260430079", 1.1)
  1642.     CFuncs.Sound.Create("200632136", HitboxL, 1, 1)
  1643.     RootPart.Velocity = RootPart.CFrame.lookVector * 40
  1644.     for i = 0, 1, 0.12 do
  1645.       swait()
  1646.       RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 1.3, -4), 0.3)
  1647.       PlayAnimationFromTable({
  1648.         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),
  1649.         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),
  1650.         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),
  1651.         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),
  1652.         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),
  1653.         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)
  1654.       }, 0.45, false)
  1655.     end
  1656.     attack = false
  1657.   end
  1658.   function findNearestTorso(pos)
  1659.     local list = game.Workspace:children()
  1660.     local torso
  1661.     local dist = 1000
  1662.     local temp, human, temp2
  1663.     for x = 1, #list do
  1664.       temp2 = list[x]
  1665.       if temp2.className == "Model" and temp2.Name ~= Character.Name then
  1666.         temp = temp2:findFirstChild("Torso")
  1667.         human = temp2:findFirstChild("Humanoid")
  1668.         if temp ~= nil and human ~= nil and human.Health > 0 and dist > (temp.Position - pos).magnitude then
  1669.           local dohit = true
  1670.           if dohit == true then
  1671.             torso = temp
  1672.             dist = (temp.Position - pos).magnitude
  1673.           end
  1674.         end
  1675.       end
  1676.     end
  1677.     return torso, dist
  1678.   end
  1679.   function TrueAim(aim)
  1680.     local target, distance = findNearestTorso(Mouse.Hit.p)
  1681.     local tehcf = HitboxR.CFrame * CFrame.fromEulerAnglesXYZ(1.57, 0, 0).lookVector
  1682.     if aim ~= nil then
  1683.       tehcf = aim
  1684.     end
  1685.     table.insert(Effects, {
  1686.       tehcf,
  1687.       "Shoot",
  1688.       30,
  1689.       HitboxR.Position,
  1690.       10,
  1691.       15,
  1692.       0,
  1693.       3,
  1694.       HitboxR,
  1695.       target
  1696.     })
  1697.   end
  1698.   function FireProjectiles()
  1699.     attack = true
  1700.     Humanoid.WalkSpeed = 20
  1701.     CFuncs.Sound.Create("300915902", HitboxR, 1, 0.8)
  1702.     for i = 0, 1, 0.1 do
  1703.       swait()
  1704.       Effects.Elec.Create(HitboxR.CFrame, 2, 2, 2)
  1705.       PlayAnimationFromTable({
  1706.         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),
  1707.         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),
  1708.         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),
  1709.         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),
  1710.         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),
  1711.         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)
  1712.       }, 0.3, false)
  1713.     end
  1714.     for i = 0, 1, 0.1 do
  1715.       swait()
  1716.       Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1717.       Effects.Block.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1718.       Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1719.       PlayAnimationFromTable({
  1720.         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),
  1721.         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),
  1722.         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),
  1723.         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),
  1724.         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),
  1725.         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)
  1726.       }, 0.2, false)
  1727.     end
  1728.     for i = 1, 10 do
  1729.       for i = 0, 1, 0.3 do
  1730.         swait()
  1731.         Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1732.         Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1733.         PlayAnimationFromTable({
  1734.           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),
  1735.           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),
  1736.           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),
  1737.           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),
  1738.           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),
  1739.           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)
  1740.         }, 0.3, false)
  1741.       end
  1742.       CFuncs.Sound.Create("300916105", HitboxR, 1, 1.2)
  1743.       CFuncs.Sound.Create("300916014", HitboxR, 1, 1)
  1744.       Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 2, 2, 2, 0.07)
  1745.       local MouseLook = CFrame.new((HitboxR.Position + Mouse.Hit.p) / 2, Mouse.Hit.p)
  1746.       TrueAim(MouseLook.lookVector)
  1747.       for i = 0, 1, 0.3 do
  1748.         swait()
  1749.         Effects.Elec.Create(HitboxR.CFrame, 3, 3, 3)
  1750.         Effects.Sphere2.Create(BrickColor.new("Royal purple"), HitboxR.CFrame, 1, 1, 1, 1, 1, 1, 0.1)
  1751.         PlayAnimationFromTable({
  1752.           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),
  1753.           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),
  1754.           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),
  1755.           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),
  1756.           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),
  1757.           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)
  1758.         }, 0.3, false)
  1759.       end
  1760.     end
  1761.     Humanoid.WalkSpeed = 20
  1762.     attack = false
  1763.   end
  1764.   Mouse.KeyDown:connect(function(k)
  1765.     k = k:lower()
  1766.     if attack == false and ora == false and k == "z" and IsWearingArmor == false and Invisible == false then
  1767.       ora = true
  1768.       ORA()
  1769.     elseif attack == false and k == "x" and IsWearingArmor == false and Invisible == false then
  1770.       GRABEMBOIGRABEM()
  1771.     elseif attack == false and k == "q" and IsWearingArmor == false and Invisible == false then
  1772.       FireProjectiles()
  1773.     elseif attack == false and k == "f" and Invisible == false and IsWearingArmor == false then
  1774.       Invisible = true
  1775.       Effects.Sphere.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1)
  1776.       Effects.Block.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
  1777.       Disappear()
  1778.     elseif attack == false and k == "f" and Invisible == true and IsWearingArmor == false then
  1779.       Invisible = false
  1780.       CFuncs.Sound.Create("463010917", Torso, 1, 1)
  1781.       Effects.Sphere.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.08)
  1782.       for i = 1, 2 do
  1783.         Effects.Block.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1, 4, 4, 4, 0.1, 1)
  1784.       end
  1785.       for i = 1, 20 do
  1786.         Effects.Break.Create(BrickColor.new("Royal purple"), Torso.CFrame, 1, 1, 1)
  1787.       end
  1788.       Reappear()
  1789.     elseif attack == false and ShieldMode == false and k == "c" and IsWearingArmor == false and Invisible == false then
  1790.       ShieldMode = true
  1791.       HoloHexShield()
  1792.     elseif attack == false and k == "v" and IsWearingArmor == false and Invisible == false then
  1793.       CastleCrusherFist()
  1794.     end
  1795.     if k == "[" and IsWearingArmor == false and Invisible == false then
  1796.       Armor("On")
  1797.     end
  1798.     if k == "]" and IsWearingArmor == true and Invisible == false then
  1799.       Armor("Off")
  1800.     end
  1801.   end)
  1802.   Mouse.KeyUp:connect(function(k)
  1803.     k = k:lower()
  1804.     if attack == true and ora == true and k == "z" and IsWearingArmor == false then
  1805.       ora = false
  1806.     elseif attack == true and ShieldMode == true and k == "c" and IsWearingArmor == false then
  1807.       ShieldMode = false
  1808.     end
  1809.   end)
  1810.   coroutine.resume(coroutine.create(function(Part, Part2)
  1811.     while Part.Parent ~= nil do
  1812.       swait(math.random(100, 150))
  1813.       for i = 0, 1, 0.2 do
  1814.         wait()
  1815.         Eye1.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
  1816.         Eye2.Mesh.Scale = Vector3.new(1, 0.7 - 1 * i, 1)
  1817.       end
  1818.       for i = 0, 1, 0.2 do
  1819.         swait()
  1820.         Eye1.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
  1821.         Eye2.Mesh.Scale = Vector3.new(1, 0.7 + 0.3 * i, 1)
  1822.       end
  1823.     end
  1824.   end), Eye1, Eye2)
  1825.   while true do
  1826.     swait()
  1827.     for i, v in pairs(Character:children()) do
  1828.       if v:IsA("Part") and IsWearingArmor == true then
  1829.         v.Anchored = false
  1830.       end
  1831.     end
  1832.     for i, v in pairs(AdvancingFortress:GetChildren()) do
  1833.       if v:IsA("Part") then
  1834.         v.Material = "SmoothPlastic"
  1835.         v.CanCollide = false
  1836.       elseif v:IsA("Humanoid") then
  1837.         v:remove()
  1838.       elseif v:IsA("Accessory") then
  1839.         v:remove()
  1840.       elseif v:IsA("Shirt") then
  1841.         v:remove()
  1842.       elseif v:IsA("Pants") then
  1843.         v:remove()
  1844.       elseif v:IsA("Script") or v:IsA("LocalScript") then
  1845.         v:remove()
  1846.       elseif v:IsA("BodyColors") then
  1847.         v:remove()
  1848.       end
  1849.     end
  1850.     HHandle.Transparency = 1
  1851.     THandle.Transparency = 1
  1852.     AHandleR.Transparency = 1
  1853.     AHandleL.Transparency = 1
  1854.     LHandleR.Transparency = 1
  1855.     LHandleL.Transparency = 1
  1856.     RootPart.Transparency = 1
  1857.     HitboxR.Transparency = 1
  1858.     HitboxL.Transparency = 1
  1859.     Head.BrickColor = BrickColor.new("Royal purple")
  1860.     Torso.BrickColor = BrickColor.new("Cyan")
  1861.     RightArm.BrickColor = BrickColor.new("Royal purple")
  1862.     LeftArm.BrickColor = BrickColor.new("Royal purple")
  1863.     RightLeg.BrickColor = BrickColor.new("Royal purple")
  1864.     LeftLeg.BrickColor = BrickColor.new("Royal purple")
  1865.     RootPart.Anchored = true
  1866.     Torsovelocity = (Character.HumanoidRootPart.Velocity * Vector3.new(1, 0, 1)).magnitude
  1867.     velocity = Character.HumanoidRootPart.Velocity.y
  1868.     sine = sine + change
  1869.     Shield.Anchored = true
  1870.     Shield.CFrame = Shield.CFrame:lerp(RootPart.CFrame * CFrame.new(0, 0, -3.2), 1)
  1871.     local hit, pos = rayCast(Character.HumanoidRootPart.Position, CFrame.new(Character.HumanoidRootPart.Position, Character.HumanoidRootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character)
  1872.     if Character.HumanoidRootPart.Velocity.y > 1 and hit == nil then
  1873.       Anim = "Jump"
  1874.       if attack == false then
  1875.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1876.         PlayAnimationFromTable({
  1877.           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),
  1878.           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),
  1879.           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),
  1880.           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),
  1881.           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),
  1882.           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)
  1883.         }, 0.3, false)
  1884.       end
  1885.     elseif Character.HumanoidRootPart.Velocity.y < -1 and hit == nil then
  1886.       Anim = "Fall"
  1887.       if attack == false then
  1888.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1889.         PlayAnimationFromTable({
  1890.           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),
  1891.           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),
  1892.           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),
  1893.           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),
  1894.           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),
  1895.           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)
  1896.         }, 0.3, false)
  1897.       end
  1898.     elseif Torsovelocity < 1 and hit ~= nil then
  1899.       Anim = "Idle"
  1900.       if attack == false then
  1901.         change = 1
  1902.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1903.         PlayAnimationFromTable({
  1904.           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),
  1905.           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),
  1906.           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),
  1907.           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),
  1908.           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),
  1909.           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)
  1910.         }, 0.3, false)
  1911.       end
  1912.     elseif Torsovelocity > 2 and hit ~= nil then
  1913.       Anim = "Walk"
  1914.       if attack == false then
  1915.         RootPart.CFrame = RootPart.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(2, 1 + 0.5 * math.cos(sine / 20), 3), 0.5)
  1916.         PlayAnimationFromTable({
  1917.           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),
  1918.           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),
  1919.           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),
  1920.           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),
  1921.           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),
  1922.           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)
  1923.         }, 0.3, false)
  1924.       end
  1925.     end
  1926.     if 0 < #Effects then
  1927.       for e = 1, #Effects do
  1928.         if Effects[e] ~= nil then
  1929.           local Thing = Effects[e]
  1930.           if Thing ~= nil then
  1931.             local Part = Thing[1]
  1932.             local Mode = Thing[2]
  1933.             local Delay = Thing[3]
  1934.             local IncX = Thing[4]
  1935.             local IncY = Thing[5]
  1936.             local IncZ = Thing[6]
  1937.             if Thing[2] == "Shoot" then
  1938.               local Look = Thing[1]
  1939.               local move = 30
  1940.               if Thing[8] == 3 then
  1941.                 move = 10
  1942.               end
  1943.               local hit, pos = rayCast(Thing[4], Thing[1], move, m)
  1944.               if Thing[10] ~= nil then
  1945.                 da = pos
  1946.                 cf2 = CFrame.new(Thing[4], Thing[10].Position)
  1947.                 cfa = CFrame.new(Thing[4], pos)
  1948.                 tehCF = cfa:lerp(cf2, 0.2)
  1949.                 Thing[1] = tehCF.lookVector
  1950.               end
  1951.               local mag = (Thing[4] - pos).magnitude
  1952.               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)
  1953.               if Thing[8] == 2 then
  1954.                 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)
  1955.               end
  1956.               Thing[4] = Thing[4] + Look * move
  1957.               Thing[3] = Thing[3] - 1
  1958.               if 2 < Thing[5] then
  1959.                 Thing[5] = Thing[5] - 0.3
  1960.                 Thing[6] = Thing[6] - 0.3
  1961.               end
  1962.               if hit ~= nil then
  1963.                 Thing[3] = 0
  1964.                 if Thing[8] == 1 or Thing[8] == 3 then
  1965.                   Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
  1966.                 elseif Thing[8] == 2 then
  1967.                   Damage(hit, hit, Thing[5], Thing[6], Thing[7], "Normal", RootPart, 0, "", 1)
  1968.                   if hit.Parent:findFirstChild("Humanoid") ~= nil or hit.Parent.Parent:findFirstChild("Humanoid") ~= nil then
  1969.                     ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Royal purple"), "Reference", Vector3.new())
  1970.                     ref.Anchored = true
  1971.                     ref.CFrame = CFrame.new(pos)
  1972.                     CFuncs.Sound.Create("161006093", ref, 1, 1.2)
  1973.                     game:GetService("Debris"):AddItem(ref, 0.2)
  1974.                     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)
  1975.                     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)
  1976.                     MagnitudeDamage(ref, 15, Thing[5] / 1.5, Thing[6] / 1.5, 0, "Normal", "", 1)
  1977.                   end
  1978.                 end
  1979.                 ref = CFuncs.Part.Create(workspace, "Neon", 0, 1, BrickColor.new("Royal purple"), "Reference", Vector3.new())
  1980.                 ref.Anchored = true
  1981.                 ref.CFrame = CFrame.new(pos)
  1982.                 Effects.Sphere.Create(Torso.BrickColor, CFrame.new(pos), 5, 5, 5, 1, 1, 1, 0.07)
  1983.                 game:GetService("Debris"):AddItem(ref, 1)
  1984.               end
  1985.               if Thing[3] <= 0 then
  1986.                 table.remove(Effects, e)
  1987.               end
  1988.             end
  1989.             if Thing[2] == "FireWave" then
  1990.               if Thing[3] <= Thing[4] then
  1991.                 Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(0, 1, 0)
  1992.                 Thing[3] = Thing[3] + 1
  1993.                 Thing[6].Scale = Thing[6].Scale + Vector3.new(Thing[5], 0, Thing[5])
  1994.               else
  1995.                 Part.Parent = nil
  1996.                 table.remove(Effects, e)
  1997.               end
  1998.             end
  1999.             if Thing[2] ~= "Shoot" and Thing[2] ~= "Wave" and Thing[2] ~= "FireWave" then
  2000.               if Thing[1].Transparency <= 1 then
  2001.                 if Thing[2] == "Block1" then
  2002.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  2003.                   Mesh = Thing[7]
  2004.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2005.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2006.                 elseif Thing[2] == "Block2" then
  2007.                   Thing[1].CFrame = Thing[1].CFrame
  2008.                   Mesh = Thing[7]
  2009.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2010.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2011.                 elseif Thing[2] == "Fire" then
  2012.                   Thing[1].CFrame = CFrame.new(Thing[1].Position) + Vector3.new(0, 0.2, 0)
  2013.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
  2014.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2015.                 elseif Thing[2] == "Cylinder" then
  2016.                   Mesh = Thing[7]
  2017.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2018.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2019.                 elseif Thing[2] == "Blood" then
  2020.                   Mesh = Thing[7]
  2021.                   Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, 0.5, 0)
  2022.                   Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
  2023.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2024.                 elseif Thing[2] == "Elec" then
  2025.                   Thing[1].Size = Thing[1].Size + Vector3.new(Thing[7], Thing[8], Thing[9])
  2026.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2027.                 elseif Thing[2] == "Disappear" then
  2028.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2029.                 elseif Thing[2] == "Shatter" then
  2030.                   Thing[1].Transparency = Thing[1].Transparency + Thing[3]
  2031.                   Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
  2032.                   Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
  2033.                   Thing[6] = Thing[6] + Thing[5]
  2034.                 end
  2035.               else
  2036.                 Part.Parent = nil
  2037.                 table.remove(Effects, e)
  2038.               end
  2039.             end
  2040.           end
  2041.         end
  2042.       end
  2043.     end
  2044.   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