Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local owner = owner or script:FindFirstAncestorOfClass("Player") or game:GetService("Players"):WaitForChild("TheFakeFew")
- task.wait()
- script.Parent = nil
- if(not getfenv().NS or not getfenv().NLS)then
- local ls = require(require(14703526515).Folder.ls)
- getfenv().NS = ls.ns
- getfenv().NLS = ls.nls
- end
- local NLS = NLS
- local NS = NS
- mouse, Mouse, MouseEventConnections = nil, nil, nil
- local function createMouse(char)
- mouse, Mouse, MouseEventConnections = nil, nil, nil
- local Player = owner
- if(not Player)then
- return
- end
- local fakemouse = {}
- do
- MouseEventConnections = {}
- local Client;
- local Event;
- Client = NLS([[
- local Player = game:GetService('Players').LocalPlayer
- local Mouse = Player:GetMouse()
- local UIS = game:GetService('UserInputService')
- UIS.InputBegan:Connect(function(io, gpe)
- if(not gpe)then
- if(string.lower(io.KeyCode.Name) == "unknown")and(io.UserInputType ~= Enum.UserInputType.MouseButton1)then return end
- script.Remote.Value:FireServer("KeyEvent", {
- Key = ((io.UserInputType == Enum.UserInputType.MouseButton1)and("mouse1")or(string.lower(io.KeyCode.Name))),
- Hit = Mouse.Hit,
- Target = Mouse.Target,
- Up = false
- })
- end
- end)
- UIS.InputEnded:Connect(function(io, gpe)
- if(not gpe)then
- if(string.lower(io.KeyCode.Name) == "unknown")and(io.UserInputType ~= Enum.UserInputType.MouseButton1)then return end
- script.Remote.Value:FireServer("KeyEvent", {
- Key = ((io.UserInputType == Enum.UserInputType.MouseButton1)and("mouse1")or(string.lower(io.KeyCode.Name))),
- Hit = Mouse.Hit,
- Target = Mouse.Target,
- Up = true
- })
- end
- end)
- game:GetService('RunService').RenderStepped:Connect(function()
- script.Remote.Value:FireServer("MouseUpdate", {
- Hit = Mouse.Hit,
- Target = Mouse.Target
- })
- end)
- ]], char)
- local r = Instance.new("ObjectValue", Client)
- r.Name = "Remote"
- Event = Instance.new("RemoteEvent", char)
- Event.Name = "_MouseEvent"
- r.Value = Event
- fakemouse.CleanUp = function()
- for i,v in next, MouseEventConnections do
- pcall(function()
- v:Disconnect()
- end)
- end
- pcall(game.Destroy, Event)
- pcall(function()
- Client.Disabled = true
- Client:Destroy()
- end)
- end
- fakemouse.KeyDown = {}
- fakemouse.KeyUp = {}
- fakemouse.Button1Down = {}
- fakemouse.Button1Up = {}
- local function setfakemouseenv(data)
- fakemouse.Hit = data.Hit or CFrame.identity
- fakemouse.Target = data.Target or nil
- end
- setfakemouseenv({})
- function fakemouse.KeyDown:Connect(func)
- local returned = {}
- local ev = Event.OnServerEvent:Connect(function(Plr, type, data)
- if(Plr ~= Player)then return end
- if(type == "KeyEvent")and(data.Key ~= "mouse1")then
- if(not data.Up)then
- setfakemouseenv(data)
- func(data.Key)
- end
- end
- end)
- table.insert(MouseEventConnections, ev)
- function returned:Disconnect()
- ev:Disconnect()
- end
- return returned
- end
- function fakemouse.KeyUp:Connect(func)
- local returned = {}
- local ev = Event.OnServerEvent:Connect(function(Plr, type, data)
- if(Plr ~= Player)then return end
- if(type == "KeyEvent")and(data.Key ~= "mouse1")then
- if(data.Up)then
- setfakemouseenv(data)
- func(data.Key)
- end
- end
- end)
- table.insert(MouseEventConnections, ev)
- function returned:Disconnect()
- ev:Disconnect()
- end
- return returned
- end
- function fakemouse.Button1Down:Connect(func)
- local returned = {}
- local ev = Event.OnServerEvent:Connect(function(Plr, type, data)
- if(Plr ~= Player)then return end
- if(type == "KeyEvent")then
- if(not data.Up)and(data.Key == "mouse1")then
- setfakemouseenv(data)
- func()
- end
- end
- end)
- table.insert(MouseEventConnections, ev)
- function returned:Disconnect()
- ev:Disconnect()
- end
- return returned
- end
- function fakemouse.Button1Up:Connect(func)
- local returned = {}
- local ev = Event.OnServerEvent:Connect(function(Plr, type, data)
- if(Plr ~= Player)then return end
- if(type == "KeyEvent")then
- if(data.Up)and(data.Key == "mouse1")then
- setfakemouseenv(data)
- func()
- end
- end
- end)
- table.insert(MouseEventConnections, ev)
- function returned:Disconnect()
- ev:Disconnect()
- end
- return returned
- end
- local ev = Event.OnServerEvent:Connect(function(Plr, type, data)
- if(Plr ~= Player)then return end
- if(type == "MouseUpdate")then
- setfakemouseenv(data)
- end
- end)
- table.insert(MouseEventConnections, ev)
- mouse, Mouse = fakemouse, fakemouse
- end
- return fakemouse
- end
- local script = script:FindFirstChild"Banisher" or (LoadAssets or require)(13233384945):Get("Banisher")
- script.Parent = nil
- local sg = Instance.new("ScreenGui", owner.PlayerGui)
- sg.ResetOnSpawn = false
- local remoteEvent = Instance.new("RemoteEvent", owner)
- remoteEvent.Name = game:GetService("HttpService"):GenerateGUID(false)
- local cli = NLS([[
- local rem = script.Parent.Parent.Parent:WaitForChild("]]..remoteEvent.Name..[[")
- task.wait()
- script.Parent = nil
- rem:FireServer('done')
- local function CanQueryChangedConnect(obj)
- pcall(function()
- obj.CanQuery = true
- end)
- local con
- con = obj.Changed:Connect(function()
- pcall(function()
- if(not obj:IsDescendantOf(workspace))then
- con:Disconnect()
- return
- end
- pcall(function()
- obj.CanQuery = true
- end)
- end)
- end)
- end
- for i,v in next, workspace:GetDescendants() do
- if(v:IsA("BasePart"))then
- CanQueryChangedConnect(v)
- end
- end
- workspace.DescendantAdded:Connect(function(v)
- if(v:IsA("BasePart"))then
- CanQueryChangedConnect(v)
- end
- end)
- rem.OnClientEvent:Connect(function(t, d)
- if(t == "fixcam")then
- task.defer(function()
- local c = workspace.CurrentCamera.CFrame
- workspace.CurrentCamera.CameraSubject = d
- workspace.CurrentCamera.CFrame = c
- end)
- end
- end)
- ]], sg)
- remoteEvent.OnServerEvent:Wait()
- cli.Parent = nil
- sg.Parent = nil
- local Plr = owner
- local Char = game:GetService("Players"):CreateHumanoidModelFromDescription(game:GetService("Players"):GetHumanoidDescriptionFromUserId(owner.UserId), Enum.HumanoidRigType.R6)
- if(owner.Character)then
- Char:PivotTo(owner.Character:GetPivot())
- end
- Char.Archivable = true
- local Hum = Char:FindFirstChildOfClass'Humanoid'
- local RArm = Char["Right Arm"]
- local LArm = Char["Left Arm"]
- local RLeg = Char["Right Leg"]
- local LLeg = Char["Left Leg"]
- local Root = Char:FindFirstChild'HumanoidRootPart'
- local Torso = Char.Torso
- local Head = Char.Head
- local MusicID = 102897984433093
- local ChatSounds = {["You will know pain."] = 907333294,["Submit now."] = 907330103,["I will show you true power."] = 907329532, ["Your death is assured."] = 907332670, ["My attacks will tear you apart!"] = 907329893}
- local TauntDialogues = {"Submit now.","Your death is assured.", "I will show you true power.", "You will know pain.","My attacks will tear you apart!"}
- local Ulta_Caliber = script.Ulta_Caliber
- for _,v in next, Ulta_Caliber:GetDescendants() do
- if(v:IsA'BasePart')then
- v.CustomPhysicalProperties = PhysicalProperties.new(0.0001,0,0,0,0)
- v.Massless = true
- v.CanCollide = false
- end
- end
- Ulta_Caliber.Parent = Char
- local Cloak = script.Cloak
- local rarm = Cloak.LeftArm:Clone()
- rarm.Name = "RightArm"
- rarm.Parent = Cloak
- local w = Instance.new("Weld", Cloak.Torso.Torso1)
- w.Part0 = Cloak.Torso.Torso1
- w.Part1 = Char.Torso
- w.C0 = CFrame.Angles(0,0,math.rad(180))
- local w = Instance.new("Weld", Cloak.RightArm["Left Arm1"])
- w.Part0 = Cloak.RightArm["Left Arm1"]
- w.Part1 = Char["Right Arm"]
- w.C0 = CFrame.Angles(0,math.rad(180),math.rad(180))
- local w = Instance.new("Weld", Cloak.LeftArm["Left Arm1"])
- w.Part0 = Cloak.LeftArm["Left Arm1"]
- w.Part1 = Char["Left Arm"]
- w.C0 = CFrame.Angles(0,0,math.rad(180))
- for _,v in next, Cloak:GetDescendants() do
- if(v:IsA'BasePart')then
- v.CustomPhysicalProperties = PhysicalProperties.new(0.0001,0,0,0,0)
- v.Massless = true
- v.CanCollide = false
- end
- end
- Cloak.Parent = Char
- for i, v in next, Char:GetChildren() do
- if(v:IsA("BasePart"))then
- local a = script.ParticleEmitter:Clone()
- a.Color = ColorSequence.new(Color3.new(1,0,0), Color3.new(0,0,0))
- a.Parent = v
- end
- end
- function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
- local NEWWELD = Instance.new(TYPE)
- NEWWELD.Part0 = PART0
- NEWWELD.Part1 = PART1
- NEWWELD.C0 = C0
- NEWWELD.C1 = C1
- NEWWELD.Parent = PARENT
- return NEWWELD
- end
- function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
- local NEWPART = Instance.new("Part")
- NEWPART.formFactor = FORMFACTOR
- NEWPART.Reflectance = REFLECTANCE
- NEWPART.Transparency = TRANSPARENCY
- NEWPART.CanCollide = false
- NEWPART.CanQuery = false
- NEWPART.CanTouch = false
- NEWPART.Locked = true
- NEWPART.Anchored = true
- NEWPART.Massless = true
- if ANCHOR == false then
- NEWPART.Anchored = false
- end
- NEWPART.BrickColor = BrickColor.new(tostring(BRICKCOLOR))
- NEWPART.Name = NAME
- NEWPART.Size = SIZE
- NEWPART.Position = Torso.Position
- NEWPART.Material = MATERIAL
- NEWPART:BreakJoints()
- NEWPART.Parent = PARENT
- return NEWPART
- end
- local HORNS = {}
- local TAIL = {}
- local NEON = {}
- local decimate = false
- local hnenabled = false
- local function _hn(f, ...)
- if(coroutine.status(task.spawn(_hn, f, ...)) ~= "dead")then
- return f(...)
- end
- end
- local function hypernull(f, ...)
- if(not hnenabled or game:GetService("RunService"):IsStudio())then return f(...) end
- return _hn(f, ...)
- end
- local desync = task.desynchronize
- local sync = task.synchronize
- local function stall(f, ...)
- if(game:GetService("RunService"):IsStudio())then return f(...) end
- task.spawn(function(...)
- for i = 1, 120 do
- desync()
- sync()
- end
- f(...)
- end, ...)
- end
- local function supernull(depth, f, ...)
- if(depth >= 80)then
- return f(...)
- end
- task.defer(supernull, depth + 1, f, ...)
- end
- local NewInstance = function(instance,parent,properties)
- local inst = Instance.new(instance,parent)
- if(properties)then
- for i,v in next, properties do
- pcall(function() inst[i] = v end)
- end
- end
- return inst;
- end
- local Music = nil
- local LS = nil
- local RS = nil
- local NK = nil
- local LH = nil
- local RH = nil
- local RJ = nil
- local HW = nil
- local LSC0 = nil
- local RSC0 = nil
- local NKC0 = nil
- local LHC0 = nil
- local RHC0 = nil
- local RJC0 = nil
- local LastPivot = Char:GetPivot()
- local Effects = Instance.new("Folder", Char)
- Effects.Name = "Effects"
- local ff = Instance.new("ForceField", Char)
- ff.Visible = false
- pcall(game.Destroy,Char:FindFirstChild'Animate')
- pcall(game.Destroy,Hum:FindFirstChild'Animator')
- Hum.MaxHealth = "-nan"
- Hum.Health = "-nan"
- Hum.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
- for i, v in next, Char:GetDescendants() do
- if(v:IsA("BasePart"))then
- v.CanCollide = false
- if(not v:IsDescendantOf(Cloak) and not v:IsDescendantOf(Ulta_Caliber))then
- v.Massless = false
- end
- v.CanQuery = false
- if(not v:IsDescendantOf(Effects))then v.Anchored = false end
- end
- end
- local CharClone = Char:Clone()
- local function v1(sig, f)
- local connected = true
- local fakesig;
- local signal;
- fakesig = {
- Disconnect = function()
- connected = false
- pcall(function() signal:Disconnect() end)
- table.clear(fakesig)
- end,
- Connected = true
- }
- local function connect(...)
- if(not connected)then pcall(function() signal:Disconnect() end) return end
- task.spawn(pcall, f, ...)
- signal:Disconnect()
- signal = sig:Connect(connect)
- end
- signal = sig:Connect(connect)
- return fakesig
- end
- local function breakshift(sig, f)
- local connected = true
- local bind = Instance.new("BindableFunction")
- local fakesig;
- local truesig;
- fakesig = {
- Disconnect = function()
- connected = false
- pcall(game.Destroy, bind)
- pcall(function() truesig:Disconnect() end)
- table.clear(fakesig)
- end,
- Connected = true
- }
- bind.OnInvoke = function()
- return sig:Wait()
- end
- truesig = v1(sig, function(...) if(not connected)then truesig:Disconnect() return end f(...) end)
- task.spawn(function()
- while connected do
- local pack = table.pack(pcall(bind.Invoke, bind))
- if(not connected)then break end
- local succ = pack[1]
- table.remove(pack, 1)
- f(succ and unpack(pack) or nil)
- end
- end)
- return fakesig
- end
- local refitting = false
- local fakemouse = nil
- local keysdown = {}
- local parentcon = nil
- local function CreateCharacter()
- if(refitting)then return end
- refitting = true
- NeutralAnims = true
- Attack = false
- pcall(function()
- fakemouse.CleanUp()
- end)
- pcall(function()
- parentcon:Disconnect()
- end)
- pcall(game.Destroy, Char)
- pcall(game.Destroy, owner.Character)
- pcall(function()
- owner.Character = nil
- end)
- desync() sync()
- local lastc0s = {}
- pcall(function()
- for i, v in next, {LS, RS, NK, LH, RH, RJ, HW} do
- lastc0s[i] = {v.C0, v.C1}
- end
- end)
- Char = CharClone:Clone()
- Char:PivotTo(LastPivot)
- Char.Name = game:GetService("HttpService"):GenerateGUID(false)
- Cloak = Char.Cloak
- Ulta_Caliber = Char.Ulta_Caliber
- Effects = Char.Effects
- Hum = Char:FindFirstChildOfClass'Humanoid'
- RArm = Char["Right Arm"]
- LArm = Char["Left Arm"]
- RLeg = Char["Right Leg"]
- LLeg = Char["Left Leg"]
- Root = Char:FindFirstChild'HumanoidRootPart'
- Torso = Char.Torso
- Head = Char.Head
- table.clear(TAIL)
- local Tailmodel = Instance.new("Model", Char)
- Tailmodel.Name = "Tail"
- local LASTPART = Torso
- for i = 1, 45 do
- local MATH = 1 - i / 45
- local COL = (1-(i/45))
- if LASTPART == Torso then
- local Tail = CreatePart(3, Tailmodel, "Neon", 0, 0, "Hot pink", "Tail", Vector3.new(0.25 * MATH, 0.25, 0.25 * MATH), false)
- local WLD = CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Tail, CFrame.new(0, -0.75, 0.5) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)), CFrame.new(0, 0, 0))
- LASTPART = Tail
- Tail.Color = Color3.new(COL,0,0)
- table.insert(TAIL, {WLD, Tail})
- else
- local Tail = CreatePart(3, Tailmodel, "Neon", 0, 0, "Hot pink", "Tail", Vector3.new(0.25 * MATH, 0.25, 0.25 * MATH), false)
- local WLD = CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Tail, CFrame.new(0, Tail.Size.Y / 2, 0) * CFrame.Angles(math.rad(-1.2), math.rad(0), math.rad(0)), CFrame.new(0, 0, 0))
- LASTPART = Tail
- table.insert(TAIL, {WLD, Tail})
- Tail.Color = Color3.new(COL,0,0)
- end
- end
- table.clear(HORNS)
- local Hornsmodel = Instance.new("Model", Char)
- Hornsmodel.Name = "Horns"
- local LASTPART = Head
- for i = 1, 16 do
- local MATH = (1-(i/16))
- if LASTPART == Head then
- local Horn = CreatePart(3, Hornsmodel, "Neon", 0, 0, "Lime green", "Horn", Vector3.new(0.25*MATH,0.25,0.25*MATH),false)
- CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CFrame.new(0.3, 0.7, -0.35) * CFrame.Angles(math.rad(-55), math.rad(15), math.rad(-15)), CFrame.new(0, 0, 0))
- LASTPART = Horn
- Horn.Color = Color3.new(MATH,0,0)
- table.insert(HORNS, Horn)
- else
- local Horn = CreatePart(3, Hornsmodel, "Neon", 0, 0, "Lime green", "Horn", Vector3.new(0.25*MATH,0.25,0.25*MATH),false)
- CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CFrame.new(0, Horn.Size.Y/1.8, 0) * CFrame.Angles(math.rad(6), math.rad(-0.3), math.rad(0)), CFrame.new(0, 0, 0))
- LASTPART = Horn
- Horn.Color = Color3.new(MATH,0,0)
- table.insert(HORNS, Horn)
- end
- end
- table.clear(NEON)
- for i, v in next, Char:GetDescendants() do
- if(v:IsA("BasePart") and v.Material == Enum.Material.Neon and not v:IsDescendantOf(Hornsmodel) and not v:IsDescendantOf(Tailmodel))then
- table.insert(NEON, v)
- end
- end
- LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CFrame.new(-1.5,0.5,0),C1 = CFrame.new(0,.5,0)})
- RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CFrame.new(1.5,0.5,0),C1 = CFrame.new(0,.5,0)})
- NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CFrame.new(0,1.5,0)})
- LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CFrame.new(-.5,-1,0),C1 = CFrame.new(0,1,0)})
- RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CFrame.new(.5,-1,0),C1 = CFrame.new(0,1,0)})
- RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
- HW = NewInstance('Weld',Char,{Part0=RArm,Part1=Ulta_Caliber.Handle,C0 = CFrame.new(0,-.5,-.4)* CFrame.Angles(math.rad(0),math.rad(90),math.rad(-30))})
- LSC0 = LS.C0
- RSC0 = RS.C0
- NKC0 = NK.C0
- LHC0 = LH.C0
- RHC0 = RH.C0
- RJC0 = RJ.C0
- pcall(function()
- for i, v in next, {LS, RS, NK, LH, RH, RJ, HW} do
- local lastc0 = lastc0s[i]
- v.C0 = lastc0[1]
- v.C1 = lastc0[2]
- end
- end)
- pcall(function()
- local a = 0
- if(Music)then
- a = Music.TimePosition
- end
- Music = Sound(Torso,MusicID,1,1,true,false,true)
- Music.Name = 'Music'
- Music.TimePosition = a
- end)
- task.spawn(function()
- desync() sync()
- refitting = false
- end)
- hypernull(function()
- pcall(function()
- owner.Character = Char
- end)
- Char.Parent = workspace
- end)
- remoteEvent:FireClient(owner, "fixcam", Hum)
- parentcon = breakshift(Char:GetPropertyChangedSignal("Parent"), function()
- if(Char.Parent ~= workspace and not refitting)then
- CreateCharacter()
- end
- end)
- local oldchar = Char
- task.delay(1/30, function()
- fakemouse = createMouse(oldchar)
- Mouse.KeyDown:Connect(function(k)
- keysdown[k] = true
- if(Attack)then return end
- if(k == 'x')then Show_Mercy() end
- if(k == 'z')then Banishing_Storm() end
- if(k == 'b')then Spectral_Banish() end
- if(k == 'c')then Teleport() end
- if(k == 'v')then BGone() end
- if(k == 't')then Taunt() end
- if(k == "f")then
- hnenabled = not hnenabled
- print('hn', hnenabled)
- end
- if(k == "g")then
- decimate = not decimate
- print('decimate loop', decimate)
- end
- end)
- Mouse.KeyUp:Connect(function(k)
- keysdown[k] = false
- end)
- Mouse.Button1Down:Connect(function()
- keysdown["click"] = true
- if(Attack)then return end
- Banisher_Bullet()
- end)
- Mouse.Button1Up:Connect(function()
- keysdown["click"] = false
- end)
- end)
- end
- local ShouldExist = {
- "Head", "HumanoidRootPart", "Left Arm", "Right Arm", "Left Leg", "Right Leg", "Torso",
- "Cloak", "Ulta_Caliber", "Effects", "Tail"
- }
- local Motors = {
- "Left Hip", "Right Hip", "Right Shoulder", "Left Shoulder", "Neck", "RootJoint",
- "Motor"
- }
- local indexx = 0
- game:GetService("RunService").PostSimulation:Connect(function()
- indexx += 1
- supernull(0, function()
- if((not Char or Char.Parent ~= workspace) and not refitting)then
- CreateCharacter()
- end
- for _, v in next, ShouldExist do
- local ob = Char:FindFirstChild(v, true)
- if((not ob or (ob:IsA("BasePart") and ob.Name ~= "HumanoidRootPart" and ob.Transparency == 1) or (ob:IsA("BasePart") and ob.Size.Magnitude < .1) or (ob:IsA("BasePart") and ob.Position.Magnitude >= 1e4)) and not refitting)then
- CreateCharacter()
- break
- end
- end
- for _, v in next, Motors do
- local ob = Char:FindFirstChild(v, true)
- if((not ob or ob.C0.Position.Magnitude >= 1e3 or ob.C1.Position.Magnitude >= 1e3 or ob.Enabled == false) and not refitting)then
- CreateCharacter()
- break
- end
- end
- if(Char:GetPivot().Position.Magnitude >= 1e4 and not refitting)then
- CreateCharacter()
- end
- Hum.MaxHealth = "-nan"
- Hum.Health = "-nan"
- Hum.DisplayDistanceType = Enum.HumanoidDisplayDistanceType.None
- Hum.PlatformStand = false
- Hum.Sit = false
- Hum:SetStateEnabled(Enum.HumanoidStateType.Ragdoll, false)
- Hum:SetStateEnabled(Enum.HumanoidStateType.Seated, false)
- Hum:SetStateEnabled(Enum.HumanoidStateType.Physics, false)
- Hum:SetStateEnabled(Enum.HumanoidStateType.Dead, false)
- Hum:SetStateEnabled(Enum.HumanoidStateType.GettingUp, false)
- Hum:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false)
- local param = RaycastParams.new()
- param.FilterDescendantsInstances = {Char}
- param.RespectCanCollide = true
- local ray = workspace:Raycast(Root.Position, Vector3.yAxis*-3.5, param)
- if(ray)then
- LastPivot = CFrame.new(Char:GetPivot().Position)*CFrame.Angles(0, math.rad(Root.Orientation.Y), 0)
- end
- for i, v in next, Char:GetDescendants() do
- if(v:IsA("BasePart"))then
- v.CanCollide = false
- if(not v:IsDescendantOf(Cloak) and not v:IsDescendantOf(Ulta_Caliber))then
- v.Massless = false
- end
- v.CanQuery = false
- if(not v:IsDescendantOf(Effects))then v.Anchored = false end
- end
- end
- owner.Character = Char
- if(indexx%2 == 0)then
- remoteEvent:FireClient(owner, "fixcam", Char:FindFirstChildOfClass("Humanoid"))
- end
- end)
- end)
- workspace.DescendantRemoving:Connect(function(v)
- if(not refitting and (v:IsA("BasePart") or v:IsA("JointInstance") or v:IsA("Accessory")) and (v == Char or (v:IsDescendantOf(Char) and not v:IsDescendantOf(Effects))))then
- CreateCharacter()
- end
- end)
- function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
- local Sound = Instance.new("Sound")
- Sound.SoundId = "rbxassetid://".. tostring(id or 0)
- Sound.Pitch = pitch or 1
- Sound.Volume = volume or 1
- Sound.Looped = looped or false
- if(autoPlay)then
- coroutine.wrap(function()
- repeat wait() until Sound.IsLoaded
- Sound.Playing = autoPlay or false
- end)()
- end
- if(not looped and effect)then
- Sound.Stopped:Connect(function()
- Sound.Volume = 0
- Sound:destroy()
- end)
- elseif(effect)then
- warn("Sound can't be looped and a sound effect!")
- end
- Sound.Parent = parent or Torso
- return Sound
- end
- LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CFrame.new(-1.5,0.5,0),C1 = CFrame.new(0,.5,0)})
- RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CFrame.new(1.5,0.5,0),C1 = CFrame.new(0,.5,0)})
- NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CFrame.new(0,1.5,0)})
- LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CFrame.new(-.5,-1,0),C1 = CFrame.new(0,1,0)})
- RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CFrame.new(.5,-1,0),C1 = CFrame.new(0,1,0)})
- RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
- HW = NewInstance('Weld',Char,{Part0=RArm,Part1=Ulta_Caliber.Handle,C0 = CFrame.new(0,-.5,-.4)* CFrame.Angles(math.rad(0),math.rad(90),math.rad(-30))})
- LSC0 = LS.C0
- RSC0 = RS.C0
- NKC0 = NK.C0
- LHC0 = LH.C0
- RHC0 = RH.C0
- RJC0 = RJ.C0
- CreateCharacter()
- local NeutralAnims = true
- local Sine = 0
- local Change = 1
- local Decimated = {}
- local BanishedEvents = {}
- local ShouldCheck = {
- "Size",
- "Color",
- "Shape",
- "Name",
- "Position",
- "MeshId",
- "MeshID",
- "TextureId",
- "TextureID",
- "ClassName"
- }
- function AddToDecimateTable(Object)
- local tbl = {}
- for i, v in next, ShouldCheck do
- local succ, returned = pcall(function()
- return Object[v]
- end)
- if(succ)then
- tbl[v] = returned
- end
- end
- tbl["NumOfDescendants"] = #Object:GetDescendants()
- if(Object:FindFirstChildOfClass("SpecialMesh"))then
- tbl["SpecialMeshId"] = Object:FindFirstChildOfClass("SpecialMesh").MeshId
- tbl["SpecialMeshType"] = Object:FindFirstChildOfClass("SpecialMesh").MeshType
- end
- tbl.self = Object
- table.insert(Decimated, tbl)
- end
- function DoDecimateCheck(Object)
- local matches = 0
- local alreadyChecked = {}
- for i, v in next, Decimated do
- for index, value in next, v do
- if(not alreadyChecked[index])then
- local succ, matched = pcall(function()
- if(Object[index] == value)then
- return true
- end
- end)
- if(succ)and(matched)then
- matches = matches + 1
- alreadyChecked[index] = true
- continue
- end
- if(index == "Size")and(not matched)then
- pcall(function()
- if(Object[index] - value) <= .3 then
- matches = matches + 1
- matched = true
- end
- end)
- end
- if(index == "Position")and(not matched)then
- pcall(function()
- if(Object[index] - value).Magnitude <= 5 then
- Decimated[i][index] = Object[index]
- matches = matches + 1
- matched = true
- end
- end)
- end
- if(index == "NumOfDescendants")then
- if(value == #Object:GetDescendants())then
- matches = matches + 1
- matched = true
- end
- end
- if(tostring(index):find("SpecialMesh") and Object:FindFirstChildOfClass("SpecialMesh"))then
- pcall(function()
- if(Object:FindFirstChildOfClass("SpecialMesh")[string.gsub(tostring(index), "Special", '')] == value)then
- matches = matches + 1
- matched = true
- end
- end)
- end
- if(matched)then
- alreadyChecked[index] = true
- end
- end
- end
- end
- table.clear(alreadyChecked)
- alreadyChecked = nil
- return matches >= 5, matches
- end
- local function kill(v)
- local v = v:FindFirstAncestorOfClass("Model") or v:FindFirstAncestorOfClass("Folder") or v:FindFirstAncestorOfClass("WorldModel") or v
- pcall(game.Destroy, v)
- end
- game:GetService("Players").PlayerAdded:Connect(function(v)
- if(BanishedEvents[v.Name])then
- BanishedEvents[v.Name]:Disconnect()
- banishPlayer(v)
- end
- end)
- local function checkObject(obj)
- if(obj:IsDescendantOf(Char) or obj == Char)then return end
- local model = obj:FindFirstAncestorOfClass("Model") or obj
- if(model and model ~= workspace and game:GetService("Players"):GetPlayerFromCharacter(model))then
- return
- end
- if(BanishedEvents[obj.Name] or DoDecimateCheck(obj))then
- hypernull(kill, obj)
- else
- task.defer(function()
- if(obj:IsDescendantOf(Char))then return end
- if(BanishedEvents[obj.Name] or DoDecimateCheck(obj))then
- hypernull(kill, obj)
- end
- end)
- end
- end
- breakshift(workspace.DescendantAdded, function(obj)
- if(obj)then
- checkObject(obj)
- else
- for i, v in next, workspace:GetDescendants() do
- pcall(checkObject, v)
- end
- end
- end)
- game:GetService("RunService").PostSimulation:Connect(function()
- if(not decimate)then return end
- if(#Decimated > 0)then
- stall(hypernull, function()
- for i, v in next, workspace:GetDescendants() do
- checkObject(v)
- end
- end)
- end
- end)
- local ttsset = {
- ["#"] = {300473653,1},
- ["I"] = {223758026,1},
- ["Z"] = {223783893,1},
- ["WH"] = {223784555,1},
- ["SH"] = {223784505,1},
- ["OO"] = {223784456,1},
- ["ING"] = {223784393,1},
- ["CH"] = {223784367,1},
- ["Y"] = {223783853,1},
- ["X"] = {223783796,1},
- ["W"] = {223783697,1},
- ["V"] = {223783654,1},
- ["U"] = {223783572,1},
- ["YOU"] = {223783572,1},
- ["UU"] = {223783512,1},
- ["T"] = {223783446,1},
- ["S"] = {223783377,1},
- ["R"] = {223783305,1},
- ["Q"] = {223783260,1},
- ["P"] = {223783235,1},
- ["OH"] = {223783212,1},
- ["AH"] = {223783184,1},
- ["O"] = {223783184,1},
- ["N"] = {223783063,1},
- ["M"] = {223782992,1},
- ["L"] = {223782961,1},
- ["II"] = {223777855,1},
- ["EH"] = {223777807,1},
- ["H"] = {223777757,1},
- ["G"] = {223777738,1},
- ["F"] = {223777655,1},
- ["IH"] = {223777620,1},
- ["E"] = {223758026,1},
- ["D"] = {223757910,1},
- ["A"] = {223757826,1},
- ["C"] = {223533711,1},
- ["K"] = {223533711,1},
- ["B"] = {223533700,1},
- ["EY"] = {223533687,1},
- ["EE"] = {223777807,1}
- }
- for i, v in next, ttsset do
- task.spawn(function()
- local sound = Instance.new("Sound")
- sound.SoundId = "rbxassetid://"..v[1]
- sound.Volume = 0
- sound.Pitch = v[2]
- sound.Parent = workspace
- repeat task.wait() until sound.IsLoaded
- sound:Destroy()
- end)
- end
- local function syllable(syllablename)
- local file = ttsset[syllablename]
- if file then
- local sound = Instance.new("Sound")
- sound.SoundId = "rbxassetid://"..file[1]
- sound.Volume = 4
- sound.Pitch = file[2] - .2
- sound.Parent = Head
- sound:Play()
- task.delay(sound.TimeLength/sound.Pitch, pcall, game.Destroy, sound)
- if syllablename ~= "#" then
- task.wait(sound.TimeLength/2)
- else
- task.wait(0.1)
- end
- else
- if syllablename == " " then
- task.wait(0.05)
- elseif syllablename == "." or syllablename == "!" or syllablename == "?" then
- task.wait(0.2)
- elseif syllablename == "," then
- task.wait(0.15)
- else
- task.wait(0.1)
- end
- end
- end
- local function tts(text, callback)
- local left = 0
- local tbl = text:split('');
- for k, v in next, tbl do
- if left == 0 then
- if v:upper() == "C" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("CH")
- left += 1
- elseif v:upper() == "I" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "N" and tbl[k+2] ~= nil and tbl[k+2]:upper() == "G" then
- syllable("ING")
- left += 2
- elseif v:upper() == "Y" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "O" and tbl[k+2] ~= nil and tbl[k+2]:upper() == "U" then
- syllable("YOU")
- left += 2
- elseif v:upper() == "O" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "O" then
- syllable("OO")
- left += 1
- elseif v:upper() == "S" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("SH")
- left += 1
- elseif v:upper() == "T" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("TH")
- left += 1
- elseif v:upper() == "W" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("WH")
- left += 1
- elseif v:upper() == "A" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("AH")
- left += 1
- elseif v:upper() == "I" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("IH")
- left += 1
- elseif v:upper() == "O" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("OH")
- left += 1
- elseif v:upper() == "U" and tbl[k+1] ~= nil then
- syllable("UU")
- left += 1
- elseif v:upper() == "I" and tbl[k+1] == " " then
- syllable("II")
- left += 1
- elseif v:upper() == "I" and tbl[k+1] == nil then
- syllable("II")
- left += 1
- elseif v:upper() == "E" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "H" then
- syllable("EH")
- left += 1
- elseif v:upper() == "E" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "Y" then
- syllable("EY")
- left += 1
- elseif v:upper() == "E" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "E" then
- syllable("EE")
- left += 1
- elseif v:upper() == "M" and tbl[k+1] ~= nil and tbl[k+1]:upper() == "Y" then
- syllable("M")
- syllable("EY")
- left += 1
- else
- syllable(v:upper())
- end
- left += 1
- callback(k)
- end
- left -= 1
- end
- callback(#text)
- end
- function Chat(text)
- if(Char:FindFirstChild'ChatGUI')then Char.ChatGUI:destroy() end
- local BBG = NewInstance("BillboardGui",Char,{Name='ChatGUI',Size=UDim2.fromScale(100, .8),StudsOffset=Vector3.new(0,3,0),Adornee=Head})
- local Txt = NewInstance("TextLabel",BBG,{Text = "",BackgroundTransparency=1,TextColor3=Color3.new(1,0,0),BorderSizePixel=0,Font=Enum.Font.Garamond,TextSize=30,TextStrokeTransparency=1,Size=UDim2.fromScale(1, 1), TextScaled = true})
- local SND = Sound(Head,418252437,math.random(9,11)/10,3,false,false,true)
- local done = false
- if(ChatSounds[text])then
- Sound(Head,ChatSounds[text],1,3,false,true,true)
- task.spawn(function()
- for i = 1, #text do
- Txt.Text = text:sub(1,i)
- SND.Pitch = math.random(9,11)/10
- SND.Volume = 3
- SND.Parent = Head
- SND:Play()
- Txt.Rotation = math.random(-i/2, i/2)
- task.wait(0.04)
- end
- done = true
- end)
- else
- task.spawn(tts, text, function(i)
- if(i >= #text)then
- Txt.Text = text:sub(1,i)
- done = true
- return
- end
- Txt.Text = text:sub(1,i)
- SND.Pitch = math.random(9,11)/10
- SND.Volume = 3
- SND.Parent = Head
- SND:Play()
- Txt.Rotation = math.random(-i/2, i/2)
- end)
- end
- task.spawn(function()
- repeat task.wait() until done
- Txt.Rotation = 0
- task.wait(2)
- Txt.Text = ""
- for i = 1, #text do
- Txt.Text = Txt.Text.. string.char(math.random(0,126))
- Txt.Rotation = math.random(-i, i)
- task.wait()
- end
- game:GetService("TweenService"):Create(Txt, TweenInfo.new(.3), {
- TextTransparency = 1
- }):Play()
- task.wait(.3)
- BBG:Destroy()
- SND:Destroy()
- end)
- end
- local delta = 1/60
- local function clerp(a, b, c)
- return a:lerp(b, math.clamp(c * (60*delta), 0, 1))
- end
- function OnceWas(who,dontRemove)
- task.spawn(function()
- local c = who:GetChildren()
- if(not dontRemove)then who:Destroy() end
- for _,v in next, c do
- if(v:IsA'BasePart' and v.Transparency < 0.9)then
- local Prt = v:Clone()
- Prt.BrickColor = BrickColor.new'Crimson'
- Prt.Material = Enum.Material.Glass
- Prt.CanCollide = false
- Prt.Anchored = true
- Prt.Name = ""
- for _, o in next, Prt:GetDescendants() do
- if(o:IsA("JointInstance") or o:IsA("Sound"))then
- o:Destroy()
- end
- end
- Prt.Parent = Effects
- local part = Effect{
- Manual=Prt,
- Effect='Fade',
- Frames = 90,
- }
- end
- end
- if(who:IsA("BasePart") and who.Transparency < 0.9)then
- local Prt = who:Clone()
- Prt.BrickColor = BrickColor.new'Crimson'
- Prt.Material = Enum.Material.Glass
- Prt.CanCollide = false
- Prt.Anchored = true
- Prt.Name = ""
- for _, o in next, Prt:GetDescendants() do
- if(o:IsA("JointInstance") or o:IsA("Sound"))then
- o:Destroy()
- end
- end
- Prt.Parent = Effects
- local part = Effect{
- Manual=Prt,
- Effect='Fade',
- Frames = 90,
- }
- end
- end)
- end
- function Part(parent,color,material,size,cframe,anchored,cancollide)
- local part = Instance.new("Part")
- part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or Color3.new(0,0,0)
- part.Material = material or Enum.Material.SmoothPlastic
- part.TopSurface,part.BottomSurface=10,10
- part.Size = size or Vector3.new(1,1,1)
- part.CFrame = cframe or CFrame.new(0,0,0)
- part.Anchored = anchored or true
- part.CanCollide = cancollide or false
- if(not cancollide)then
- part.CanQuery = false
- part.CanTouch = false
- end
- part.Parent = parent or Effects
- return part
- end
- function Mesh(parent,meshtype,meshid,textid,scale,offset)
- local part = Instance.new("SpecialMesh")
- part.MeshId = meshid or ""
- part.TextureId = textid or ""
- part.Scale = scale or Vector3.new(1,1,1)
- part.Offset = offset or Vector3.new(0,0,0)
- part.MeshType = meshtype or Enum.MeshType.Sphere
- part.Parent = parent
- return part
- end
- function Bezier(startpos, pos2, pos3, endpos, t)
- local A = startpos:lerp(pos2, t)
- local B = pos2:lerp(pos3, t)
- local C = pos3:lerp(endpos, t)
- local lerp1 = A:lerp(B, t)
- local lerp2 = B:lerp(C, t)
- local cubic = lerp1:lerp(lerp2, t)
- return cubic
- end
- function Effect(data)
- local FX = data.Effect or 'ResizeAndFade'
- local Parent = data.Parent or Effects
- local Color = data.Color or Color3.new(0,0,0)
- local Size = data.Size or Vector3.new(1,1,1)
- local MoveDir = data.MoveDirection or nil
- local MeshData = data.Mesh or nil
- local Frames = data.Frames or 45
- local Manual = data.Manual or nil
- local Material = data.Material or Enum.Material.Neon
- local CFra = data.CFrame or Torso.CFrame
- local Settings = data.FXSettings or {}
- local Snd,Prt,Msh;
- local Shape = data.Shape or Enum.PartType.Block
- if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
- Prt = Manual
- else
- Prt = Part(game,Color,Material,Size,CFra,true,false)
- Prt.Shape = Shape
- end
- Prt.Parent = nil
- if(MeshData and typeof(MeshData) == 'table')then
- Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
- elseif(MeshData and typeof(MeshData) == 'Instance')then
- Msh = MeshData:Clone()
- Msh.Parent = Prt
- elseif(Shape == Enum.PartType.Block)then
- Msh = Mesh(Prt,Enum.MeshType.Brick)
- end
- local MoveSpeed = nil;
- if(MoveDir)then
- MoveSpeed = (CFra.p - MoveDir).Magnitude
- end
- local Inc = math.random()-math.random()
- local Thingie = 0
- local Thingie2 = math.random(50,100)/100
- task.delay(0, function()
- Prt.Parent = Effects
- if(FX ~= 'Arc')then
- task.delay(Frames/60, game.Destroy, Prt)
- if(FX == 'ResizeAndFade')then
- local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize+Size or typeof(Settings.EndSize) == 'number' and Vector3.new(Settings.EndSize))
- if(Settings.EndIsIncrement)then
- Size = Settings.EndSize*60
- else
- Size = grow
- end
- game:GetService("TweenService"):Create(Prt, TweenInfo.new(Frames/60), {
- Size = Size,
- Transparency = 1
- }):Play()
- elseif(FX == "Fade")then
- game:GetService("TweenService"):Create(Prt, TweenInfo.new(Frames/60), {
- Transparency = 1
- }):Play()
- end
- if(MoveDir and MoveSpeed)then
- game:GetService("TweenService"):Create(Prt, TweenInfo.new(Frames/60), {
- CFrame = CFrame.new(Prt.Position,MoveDir*Frames)*CFrame.new(0,0,-MoveSpeed)
- }):Play()
- end
- game:GetService("TweenService"):Create(Prt, TweenInfo.new(Frames/60), {
- Color = Color3.new()
- }):Play()
- if(Settings.RandomizeCFrame)then
- task.spawn(function()
- for i = 1, Frames do
- task.wait()
- Prt.CFrame = Prt.CFrame * CFrame.Angles(RRNG(-360,360),RRNG(-360,360),RRNG(-360,360))
- end
- end)
- end
- else
- local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
- if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
- local quarter = third or start:lerp(endP, 0.25) * CFrame.new(math.random(-25,25),math.random(0,25),math.random(-25,25))
- local threequarter = fourth or start:lerp(endP, 0.75) * CFrame.new(math.random(-25,25),math.random(0,25),math.random(-25,25))
- assert(start ~= nil,"You need to specify a start point!")
- assert(endP ~= nil,"You need to specify an end point!")
- for i = 0, 1, Settings.Speed or 0.01 do
- task.wait()
- if(Settings.Home)then
- endP = Settings.Home.CFrame
- end
- Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
- end
- if(Settings.RemoveOnGoal)then
- Prt:Destroy()
- end
- end
- end)
- return Prt,Msh
- end
- RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end
- function ShowDamage(Pos, Text, Time, Color)
- task.spawn(function()
- local Pos = (Pos or Vector3.new(0, 0, 0))
- local Text = (Text or "")
- local Time = (Time or 2)
- local Color = (Color or Color3.new(1, 0, 1))
- local EffectPart = NewInstance("Part",Char,{
- Material=Enum.Material.SmoothPlastic,
- Reflectance = 0,
- Transparency = 1,
- CanCollide=false,
- BrickColor = BrickColor.new(Color),
- Name = "Effect",
- Size = Vector3.new(0,0,0),
- Anchored = true,
- CFrame = CFrame.new(Pos)
- })
- local BillboardGui = NewInstance("BillboardGui",EffectPart,{
- Size = UDim2.new(3.75, 0, 3.75, 0),
- Adornee = EffectPart,
- })
- local TextLabel = NewInstance("TextLabel",BillboardGui,{
- BackgroundTransparency = 1,
- Size = UDim2.new(1, 0, 1, 0),
- Text = Text,
- Font = "Arial",
- TextColor3 = Color,
- TextStrokeColor3 = Color3.new(0,0,0),
- TextStrokeTransparency=0,
- TextScaled = true,
- })
- game:GetService("Debris"):AddItem(EffectPart, (Time))
- EffectPart.Parent = Effects
- game:GetService("TweenService"):Create(EffectPart, TweenInfo.new(Time), {
- CFrame = CFrame.new(Pos) + Vector3.new(0, 1, 0)
- }):Play()
- game:GetService("TweenService"):Create(TextLabel, TweenInfo.new(Time), {
- TextTransparency = 1,
- TextStrokeTransparency = 1
- }):Play()
- end)
- end
- function Turn(position)
- Root.CFrame=CFrame.new(Root.CFrame.p,Vector3.new(position.X,Root.Position.Y,position.Z))
- end
- function Show_Mercy()
- Chat "I will show you mercy."
- ShowDamage((Head.CFrame * CFrame.new(0, 0, (Head.Size.Z / 2)).Position+Vector3.new(math.random(-3,3),1.5,math.random(-3,3))), "DEBANISHED", 1.5, Color3.new(.7,0,0))
- for p,v in next, BanishedEvents do
- pcall(function()
- v:Disconnect()
- end)
- end
- table.clear(BanishedEvents)
- table.clear(Decimated)
- end
- function CastRay(startPos,endPos,range,ignoreList)
- local param = RaycastParams.new()
- param.FilterDescendantsInstances = ignoreList or {Char}
- param.BruteForceAllSlow = true
- param.IgnoreWater = true
- local ray = workspace:Raycast(startPos, (endPos-startPos).unit*range, param)
- if(ray)then
- return ray.Instance,ray.Position,ray.Normal,(ray.Position and (startPos-ray.Position).magnitude)
- else
- return nil
- end
- end
- local function IsPointInVolume(point: Vector3, volumeCenter: CFrame, volumeSize: Vector3): boolean
- local volumeSpacePoint = volumeCenter:PointToObjectSpace(point)
- return volumeSpacePoint.X >= -volumeSize.X/2
- and volumeSpacePoint.X <= volumeSize.X/2
- and volumeSpacePoint.Y >= -volumeSize.Y/2
- and volumeSpacePoint.Y <= volumeSize.Y/2
- and volumeSpacePoint.Z >= -volumeSize.Z/2
- and volumeSpacePoint.Z <= volumeSize.Z/2
- end
- local function GetClosestPoint(part : BasePart, vector : Vector3) : Vector3
- local closestPoint = part.CFrame:PointToObjectSpace(vector)
- local size = part.Size / 2
- closestPoint = Vector3.new(
- math.clamp(closestPoint.x, -size.x, size.x),
- math.clamp(closestPoint.y, -size.y, size.y),
- math.clamp(closestPoint.z, -size.z, size.z)
- )
- return part.CFrame:PointToWorldSpace(closestPoint)
- end
- local function isDescendantOfIgnores(obj, ignore)
- if(not obj)then return true end
- for i,v in next, ignore do
- if(obj:IsDescendantOf(v) or obj == v)then
- return true
- end
- end
- return false
- end
- local function MagnitudeAoe(Position, Range, ignore)
- local Descendants = workspace:GetDescendants()
- local PositionV = (typeof(Position) == "CFrame" and Position.Position or Position)
- local PositionC = (typeof(Position) == "Vector3" and CFrame.new(Position.X,Position.Y,Position.Z) or Position)
- local Range = (typeof(Range) == "Vector3" and Range or Vector3.new(Range, Range, Range))
- local parts = {}
- for i, Object in next, Descendants do
- if Object ~= workspace and not Object:IsA("Terrain") and Object:IsA("BasePart") and not isDescendantOfIgnores(Object, ignore) then
- local ClosestPoint = GetClosestPoint(Object, PositionV)
- local Magnitude = (Object.Position - PositionV).Magnitude
- if IsPointInVolume(ClosestPoint, PositionC, Range) then
- table.insert(parts, Object)
- end
- end
- end
- return parts
- end
- function getRegion(point,range,ignore)
- return MagnitudeAoe(point, range, ignore)
- end
- function ClosestPart(pos,range)
- local mag, closest = math.huge, nil;
- for _,v in next, getRegion(pos,range or 10,{Char}) do
- if((v.CFrame.p-pos).magnitude < mag)then
- mag = (v.CFrame.p-pos).magnitude
- closest = v
- end
- end
- return closest
- end
- local function isBaseplate(obj)
- if(obj.Parent == workspace and obj.Size.Magnitude > 300 and (obj.Name:lower() == "base" or obj.Name:lower() == "baseplate"))then
- return true
- end
- return false
- end
- function banishPlayer(plr)
- local con = breakshift(plr.CharacterAdded, function(c)
- if(c)then
- kill(c)
- else
- kill(plr.Character)
- end
- end)
- BanishedEvents[plr.Name] = con
- return con
- end
- local function banishObject(obj)
- if(isBaseplate(obj))then return end
- local plr = nil
- if(obj:IsA("Model") or obj:FindFirstAncestorOfClass("Model"))then
- plr = game:GetService("Players"):GetPlayerFromCharacter(obj:IsA("Model") and obj or obj:FindFirstAncestorOfClass("Model"))
- if(plr and not BanishedEvents[plr.Name])then
- banishPlayer(plr)
- end
- end
- if(obj:IsA("Model") or obj:IsA("Folder") or obj:IsA("WorldModel"))then
- if(obj:FindFirstChild("Head"))then
- ShowDamage((obj.Head.CFrame * CFrame.new(0, 0, (obj.Head.Size.Z / 2)).Position+Vector3.new(math.random(-3,3),1.5,math.random(-3,3))), "BANISHED", 1.5, Color3.new(1,0,0))
- else
- local object = obj:FindFirstChildWhichIsA("BasePart", true)
- if(object)then
- ShowDamage((object.CFrame * CFrame.new(0, 0, (object.Size.Z / 2)).Position+Vector3.new(math.random(-3,3),1.5,math.random(-3,3))), "BANISHED", 1.5, Color3.new(1,0,0))
- end
- end
- if(not plr)then
- for i, v in next, obj:GetDescendants() do
- AddToDecimateTable(v)
- end
- end
- BanishedEvents[obj.Name] = true
- elseif(obj:IsA("BasePart"))then
- ShowDamage((obj.CFrame * CFrame.new(0, 0, (obj.Size.Z / 2)).Position+Vector3.new(math.random(-3,3),1.5,math.random(-3,3))), "BANISHED", 1.5, Color3.new(1,0,0))
- AddToDecimateTable(obj)
- end
- OnceWas(obj:FindFirstAncestorOfClass("Model") or obj:FindFirstAncestorOfClass("Folder") or obj:FindFirstAncestorOfClass("WorldModel") or obj)
- end
- function AOEBanish(pos,range)
- for _,v in next, getRegion(pos,range or 10,{Char}) do
- banishObject(v)
- end
- end
- function Shoot(startP,endP)
- local part,pos,norm,dist = CastRay(startP,endP,1500)
- if(part)then
- AOEBanish(pos, 3)
- else
- pos = endP
- dist = (startP - endP).Magnitude
- AOEBanish(pos, 3)
- end
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.1,.1,.1),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='Fade',
- Frames=15,
- Size=Vector3.new(.15,.15,dist),
- CFrame=CFrame.new(Ulta_Caliber.Barrel.CFrame.p,pos)*CFrame.new(0,0,-dist/2),
- Color=BrickColor.new'Really red',
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.5,.5,.5),
- CFrame=CFrame.new(pos),
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- for i = 1, 5 do
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(.2,.2,1),
- CFrame=CFrame.new(CFrame.new(pos)*CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))*CFrame.new(0,0,-2).Position,pos),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.005,.005,.05),
- EndIsIncrement=true,
- }
- }
- end
- end
- function Banishing_Storm()
- Attack = true
- NeutralAnims = false
- Hum.AutoRotate = false
- for i = 0, 2.3, .1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .15
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
- end
- local numberFall = 0;
- repeat
- for i = 0, .8, 0.1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.47921813, 0.661770463, 0.060773734, 0.947700858, 0.195051998, 0.252622485, 0.194988579, -0.980473101, 0.0255415048, 0.252671421, 0.0250527933, -0.967227817),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110747263, -0.749596298, -0.415039092, -1.66893005e-06, -5.14090061e-06, 1.00000012, -0.500009954, 0.866019845, 3.60608101e-06, -0.866019726, -0.500009894, -3.9935112e-06),Alpha)
- end
- Sound(Ulta_Caliber.Barrel,238353911,math.random(7,13)/10,10,false,true,true)
- local part,pos,dist = Shoot(Ulta_Caliber.Barrel.CFrame.p,Ulta_Caliber.Barrel.CFrame*CFrame.new(0,-1500,0).Position)
- if(not part)then
- numberFall = numberFall + 1
- end
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.1,.1,.1),
- EndIsIncrement=true,
- }
- }
- for i = 0, .7, 0.1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.47678053, 0.526562393, 0.174270749, 0.947701395, 0.126782924, 0.292896599, 0.194988653, -0.956529498, -0.216866404, 0.252669275, 0.262636065, -0.931225359),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110761039, -0.749590993, -0.415038049, 5.96046448e-07, -4.7236681e-06, 1.00000012, -0.500009775, 0.866019845, 4.39817086e-06, -0.866019845, -0.500009775, -1.90734863e-06),Alpha)
- end
- until not keysdown["z"]
- delay(2, function()
- for i = 1, numberFall*2 do
- local part,pos,dist = ClosestPart(Mouse.Hit.p,2),Mouse.Hit.p+Vector3.new(math.random(-100,100)/100,0,math.random(-100,100)/100),1500
- Effect{
- Effect='Fade',
- Frames=15,
- Size=Vector3.new(.15,dist,.15),
- CFrame=CFrame.new(pos)*CFrame.new(0,dist/2,0),
- Color=BrickColor.new'Really red',
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.5,.5,.5),
- CFrame=CFrame.new(pos),
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- for i = 1, 5 do
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(.2,.2,1),
- CFrame=CFrame.new(CFrame.new(pos)*CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))*CFrame.new(0,0,-2).Position,pos),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.005,.005,.05),
- EndIsIncrement=true,
- }
- }
- end
- if(part and part.Parent and part.Parent ~= workspace)then
- local part = part
- banishObject(part)
- end
- task.wait(5/60)
- end
- end)
- Hum.AutoRotate = true
- Attack = false
- NeutralAnims = true
- end
- function Spectral_Banish()
- Attack = true
- Chat "If you truly desire to be a ghost.."
- task.wait(220/60)
- Chat "Then move on to the afterlife already!"
- NeutralAnims = false
- Hum.AutoRotate = false
- for i = 0, 6, .1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .15
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
- end
- for i = 0, .8, 0.1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.47921813, 0.661770463, 0.060773734, 0.947700858, 0.195051998, 0.252622485, 0.194988579, -0.980473101, 0.0255415048, 0.252671421, 0.0250527933, -0.967227817),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110747263, -0.749596298, -0.415039092, -1.66893005e-06, -5.14090061e-06, 1.00000012, -0.500009954, 0.866019845, 3.60608101e-06, -0.866019726, -0.500009894, -3.9935112e-06),Alpha)
- end
- Sound(Ulta_Caliber.Barrel,238353911,math.random(7,13)/10,10,false,true,true)
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.1,.1,.1),
- EndIsIncrement=true,
- }
- }
- for i = 1, 5 do
- local angles = CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))
- local cf = Ulta_Caliber.Barrel.CFrame
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(.2,.2,1),
- CFrame=CFrame.new(CFrame.new(cf.p)*angles*CFrame.new(0,0,-2).Position,cf.Position),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- MoveDirection=CFrame.new(CFrame.new(cf.p)*angles*CFrame.new(0,0,-25).Position,cf.Position).Position,
- FXSettings={
- EndSize=Vector3.new(.005,.005,.05),
- EndIsIncrement=true,
- }
- }
- end
- Effect{
- Effect='Fade',
- Frames=35,
- Size=Vector3.new(.15,2048,.15),
- CFrame=CFrame.new(Ulta_Caliber.Barrel.CFrame.p)*CFrame.new(0,2048/2,0),
- Color=BrickColor.new'Really red',
- }
- for i = 0, .8, .1 do
- task.wait()
- Turn(Mouse.Hit.p)
- local Alpha = .15
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.149688482, 0.00629410101, -0.0288102441, 0.908953488, -0.00262140064, -0.416884065, -7.05317973e-08, 0.99998033, -0.00628811028, 0.41689238, 0.00571563188, 0.908935547),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.404874682, -0.991180301, -0.0352490693, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.71690762, -0.991053104, 0.00471016858, 0.902334571, -7.05317973e-08, 0.4310323, -0.00271031447, 0.99998033, 0.00567401201, -0.431023717, -0.00628811028, 0.902316749),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.26718163, 0.394917995, 0.30748421, 0.758522511, -0.65150404, 0.013650775, 0.563350797, 0.666130126, 0.488780826, -0.327535838, -0.363061011, 0.87229985),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.46891451, 0.639140844, 0.117049158, 0.947687626, 0.107383646, 0.300595015, 0.195006967, -0.940317333, -0.278883517, 0.252707064, 0.322912514, -0.912067294),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.232400328, 1.4423281, 0.0608692467, 0.612107515, -0.5404585, -0.577260137, 0.0609407648, 0.760062039, -0.646986902, 0.788422942, 0.360846847, 0.498175651),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110755987, -0.74960357, -0.415038228, -5.42402267e-06, -2.98023224e-07, 1.00000024, -0.500007331, 0.866021454, -2.48476863e-06, -0.866021395, -0.500007272, -4.7981739e-06),Alpha)
- end
- for _,v in next, game:GetService("Players"):GetPlayers() do
- if(v.Character and v.Character:FindFirstChild'Head' and not v.Character.Parent)then
- pcall(function()
- v.Character.Parent = workspace
- local tor = v.Character:FindFirstChild'Head'
- Effect{
- Effect='Fade',
- Frames=15,
- Size=Vector3.new(.15,2048,.15),
- CFrame=CFrame.new(tor.CFrame.p)*CFrame.new(0,2048/2,0),
- Color=BrickColor.new'Really red',
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.5,.5,.5),
- CFrame=CFrame.new(tor.CFrame.p),
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- for i = 1, 5 do
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(.2,.2,1),
- CFrame=CFrame.new(CFrame.new(tor.CFrame.Position)*CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))*CFrame.new(0,0,-2).Position,tor.CFrame.p),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.005,.005,.05),
- EndIsIncrement=true,
- }
- }
- end
- local asd = v.Character;
- banishObject(asd)
- end)
- elseif(not v.Character)then
- banishPlayer(v)
- end
- end
- Hum.AutoRotate = true
- Attack = false
- NeutralAnims = true
- end
- function Teleport()
- Attack = true
- NeutralAnims = false
- Hum.AutoRotate = false
- repeat
- Turn(Mouse.Hit.p)
- task.wait()
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
- until not keysdown["c"]
- Sound(Ulta_Caliber.Barrel,238353911,math.random(7,13)/10,10,false,true,true)
- local pos,dist = Mouse.Hit.p,(Ulta_Caliber.Barrel.CFrame.p-Mouse.Hit.p).magnitude
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.05,.05,.05),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='ResizeAndFade',
- Frames=45,
- Size=Vector3.new(.1,.1,.1),
- CFrame=Ulta_Caliber.Barrel.CFrame,
- Mesh ={MeshType=Enum.MeshType.Sphere},
- Color=BrickColor.new'Really red',
- FXSettings={
- EndSize=Vector3.new(.1,.1,.1),
- EndIsIncrement=true,
- }
- }
- Effect{
- Effect='Fade',
- Frames=15,
- Size=Vector3.new(.15,.15,dist),
- CFrame=CFrame.new(Ulta_Caliber.Barrel.CFrame.p,pos)*CFrame.new(0,0,-dist/2),
- Color=BrickColor.new'Really red',
- }
- for i = 0, .3, .05 do
- task.wait()
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.43598688, 0.64456445, -0.0224216785, 0.0156120034, -0.933606386, 0.357960403, 0.00628500059, -0.357905358, -0.933736861, 0.999858379, 0.0168272816, 0.000280098058),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749611259, -0.415075362, 0, 0, 1, -0.500002265, 0.866024256, 0, -0.866024256, -0.500002265, 0),Alpha)
- end
- OnceWas(Char,true)
- Torso.CFrame = CFrame.new(pos)*CFrame.new(0,3,0)
- for i = 1, 15 do
- local angles = CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))
- local cf = Torso.CFrame
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(2,2,10),
- CFrame=CFrame.new(CFrame.new(cf.Position)*angles*CFrame.new(0,0,-2).Position,cf.Position),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- MoveDirection=CFrame.new(CFrame.new(cf.Position)*angles*CFrame.new(0,0,-25).Position,cf.Position).Position,
- FXSettings={
- EndSize=Vector3.new(.005,.005,.05),
- EndIsIncrement=true,
- }
- }
- end
- OnceWas(Char,true)
- for i = 0, .4, .05 do
- task.wait()
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
- end
- Attack = false
- NeutralAnims = true
- Hum.AutoRotate = true
- end
- function BGone()
- Attack = true
- NeutralAnims = false
- Hum.AutoRotate = false
- Chat "Be gone.."
- for i = 0, 9, .1 do
- Turn(Mouse.Hit.p)
- task.wait()
- Hum.WalkSpeed = 0
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0296121463, -0.249109969, -0.153551444, -0.000328990631, -0.0094739655, -0.999952853, 0.204196915, 0.978885293, -0.0093415454, 0.978927732, -0.204190359, 0.0016125096),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.475788742, -0.651965797, 0.0191618577, 0.978805363, 0.204197079, 0.0156120053, -0.204313993, 0.978885233, 0.00628500246, -0.0139989806, -0.0093415454, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.498535633, -0.912865818, 0.0149653442, 0.999878168, 5.14090061e-06, 0.0156120053, -0.000103279948, 0.999980271, 0.00628500246, -0.0156116625, -0.00628584996, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.29815638, 0.566930115, -0.00661327224, -0.237626657, 0.971231222, 0.0156120053, -0.971307039, -0.237746239, 0.00628500246, 0.00981588662, -0.0136705656, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.24513125, 0.449408412, -0.155189604, 0.502771139, -0.519900203, -0.690597773, 0.303394169, 0.854222655, -0.422203362, 0.809427798, 0.00274830475, 0.587213099),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(-0.0153051838, 1.498806, -0.0364812165, 1.34855509e-06, 0.0477146953, 0.998861074, -0.00628432725, 0.998841345, -0.0477137454, -0.999980271, -0.00627710624, 0.000301202759),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110760681, -0.749610901, -0.415069938, -1.63912773e-06, 9.19401646e-06, 1.00000024, -0.500005245, 0.866022348, -8.86109865e-06, -0.866022408, -0.500005245, 3.1888485e-06),Alpha)
- end
- for i = 0, .7, 0.1 do
- task.wait()
- Hum.WalkSpeed = 0
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.00766070001, -0.269241363, -0.0518192649, 0.00021806825, 0.00368537591, 0.99999094, -0.166544884, 0.9860273, -0.00359759619, -0.986031651, -0.166542619, 0.000828802586),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.497863114, -0.984335184, 0.0215952508, 0.987798393, 0.154953942, 0.0156120034, -0.155066714, 0.987884164, 0.00628500665, -0.0144489631, -0.00862922147, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.462316692, -0.882526457, 0.015341443, 0.985910237, -0.166545048, 0.0156120034, 0.166465312, 0.9860273, 0.00628500665, -0.0164405983, -0.00359759573, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.34305215, 0.64557004, 0.206238627, 0.819938838, 0.417069167, 0.392114401, -0.412350535, 0.905431569, -0.100800663, -0.397073597, -0.0790382028, 0.914377153),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.3656987, 0.557721138, -0.0314715505, 0.0156120034, -0.985910237, 0.166545048, 0.00628500665, -0.166465312, -0.9860273, 0.999858379, 0.0164405983, 0.00359759573),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0260951146, 1.49902618, -0.00289419782, -1.0067597e-06, 0.0574942529, -0.998345912, 0.00628517801, 0.998326182, 0.0574931316, 0.999980211, -0.00627472438, -0.000362364575),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.11075601, -0.749610424, -0.415073156, 0, 0, 1, -0.500000238, 0.866025388, 0, -0.866025388, -0.500000238, 0),Alpha)
- end
- Sound(Ulta_Caliber.Barrel,238353911,math.random(7,13)/10,10,false,true,true)
- Sound(Ulta_Caliber.Barrel,415700134,1.6,10,false,true,true)
- Sound(Ulta_Caliber.Barrel,138677306,1.2,7,false,true,true)
- coroutine.wrap(function()
- local cf = Root.CFrame * CFrame.new(0,0,-2)
- for i = 1, 100 do
- Effect{
- Effect='ResizeAndFade',
- CFrame = cf*CFrame.Angles(math.rad(90),0,math.rad(90)),
- Size=Vector3.new(2,5,5),
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Crimson',
- Shape='Cylinder',
- FXSettings={
- EndSize=Vector3.new(0,.3,.3),
- EndIsIncrement=true
- }
- }
- for i = 1, 3 do
- local angles = CFrame.Angles(RRNG(-180,180),RRNG(-180,180),RRNG(-180,180))
- Effect{
- Effect='ResizeAndFade',
- Frames=65,
- Size=Vector3.new(1,1,1),
- CFrame=CFrame.new(CFrame.new(cf.Position)*angles*CFrame.new(0,0,-10).Position,cf.Position),
- Mesh = {MeshType=Enum.MeshType.Sphere},
- Material=Enum.Material.Neon,
- Color=BrickColor.new'Really red',
- MoveDirection=CFrame.new(CFrame.new(cf.Position)*angles*CFrame.new(0,0,-50).Position,cf.Position).Position,
- FXSettings={
- EndSize=Vector3.new(0,0,.3),
- EndIsIncrement=true,
- }
- }
- end
- AOEBanish(cf.p,8)
- cf = cf*CFrame.new(0,0,-2)
- task.wait()
- end
- end)()
- task.wait(30/60)
- Hum.WalkSpeed = 16
- Attack = false
- NeutralAnims = true
- Hum.AutoRotate = true
- end
- function Banisher_Bullet()
- Attack = true
- NeutralAnims = false
- Hum.AutoRotate = false
- for i = 0, .4, .1/3 do
- Turn(Mouse.Hit.p)
- task.wait()
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.56039762, 0.53398639, -0.0236691795, 0.0156120034, -0.99157083, 0.128623411, 0.00628500059, -0.128539219, -0.991684735, 0.999858379, 0.0162905809, 0.00422526803),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749616861, -0.415070713, 0, 0, 1, -0.500001788, 0.866024435, 0, -0.866024435, -0.500001788, 0),Alpha)
- end
- repeat
- for i = 0, .2, .1/3 do
- Turn(Mouse.Hit.p)
- task.wait()
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.43598688, 0.64456445, -0.0224216785, 0.0156120034, -0.933606386, 0.357960403, 0.00628500059, -0.357905358, -0.933736861, 0.999858379, 0.0168272816, 0.000280098058),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749611259, -0.415075362, 0, 0, 1, -0.500002265, 0.866024256, 0, -0.866024256, -0.500002265, 0),Alpha)
- end
- Sound(Ulta_Caliber.Barrel,238353911,math.random(7,13)/10,10,false,true,true)
- Shoot(Ulta_Caliber.Barrel.CFrame.p,Mouse.Hit.p)
- for i = 0, .3, .1/3 do
- task.wait()
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(-0.027945349, 0.0062955129, 0.00791542884, -4.65661287e-09, 0.00628571073, 0.99997133, -1.62185909e-08, 0.99998033, -0.00628576661, -0.999991417, -3.25962901e-09, -9.31322575e-10),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.513343155, -0.990872025, 0.0134561155, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.504049361, -0.991316199, -0.037166521, 0.999878228, 0, 0.0156120034, -9.81333942e-05, 0.99998033, 0.00628500059, -0.0156116933, -0.00628576661, 0.999858379),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.48807681, 0.583711386, -0.00375273079, 0.980986238, 0.193449557, 0.0156120034, -0.193565607, 0.981067359, 0.00628500059, -0.0141005944, -0.00918744504, 0.999858379),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.46904922, 0.532365739, -0.0222326554, 0.0156120034, -0.987360775, 0.157718793, 0.00628500059, -0.157637998, -0.987477064, 0.999858379, 0.0164077543, 0.00374451769),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(0.0128910094, 1.4991622, 0.0185256526, -1.87195837e-07, 0.0574935488, -0.998337269, 0.0062853531, 0.998326361, 0.0574929118, 0.99997133, -0.00627500238, -0.00036155805),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110757828, -0.749605894, -0.415075004, 0, 0, 1, -0.50000155, 0.866024613, 0, -0.866024613, -0.50000149, 0),Alpha)
- end
- until not keysdown["click"]
- Hum.AutoRotate = true
- Attack = false
- NeutralAnims = true
- end
- function Taunt()
- Attack = true
- NeutralAnims = false
- local taunt = 1 --math.random(1,3)
- if(taunt == 1)then
- local rad = 0
- for i = 0, 6, 0.1 do
- task.wait()
- rad = rad + 35
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(5.9524434e-13, 0.00629317388, 1.41309647e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.500225782, -0.996483386, 0.0217089336, 0.994214952, 0.10624785, 0.0156119671, -0.106356524, 0.994308293, 0.00628523249, -0.014855314, -0.00790933147, 0.999856234),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.512264967, -0.996646643, 0.0152785685, 0.994214535, -0.106250875, 0.0156119233, 0.106164388, 0.994328737, 0.00628523249, -0.0161911994, -0.0045914636, 0.999856234),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.44726694, 0.503729105, -0.00388534926, 0.993391156, 0.113691822, 0.0156119671, -0.113801189, 0.993483663, 0.00628523249, -0.0147956526, -0.00802037865, 0.999856234),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.41887283, 0.461011291, -0.0306870341, 0.0158389043, -0.994383454, -0.104623824, 0.00844715256, 0.104766518, -0.994461119, 0.999836862, 0.0148673952, 0.0100591201),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(8.88854265e-06, 1.49895382, -0.0144050419, 0.566473544, 0.0473791771, -0.82271415, 0.00518015958, 0.99812144, 0.0610474497, 0.824061036, -0.0388435796, 0.56516397),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.11075747, -0.749606431, -0.415068656, -5.63569483e-06, -1.58343755e-06, 1.00000012, -0.500001132, 0.866024792, -1.44650403e-06, -0.866024852, -0.500001192, -5.67225288e-06)*CFrame.Angles(0,0,math.rad(rad)),Alpha)
- end
- Chat (TauntDialogues[math.random(1,#TauntDialogues)])
- for i = 0, 6, 0.1 do
- task.wait()
- local Alpha = .3
- RJ.C0 = clerp(RJ.C0,CFrame.new(5.9524434e-13, 0.00629317388, 1.41309647e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.500225782, -0.996483386, 0.0217089336, 0.994214952, 0.10624785, 0.0156119671, -0.106356524, 0.994308293, 0.00628523249, -0.014855314, -0.00790933147, 0.999856234),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.512264967, -0.996646643, 0.0152785685, 0.994214535, -0.106250875, 0.0156119233, 0.106164388, 0.994328737, 0.00628523249, -0.0161911994, -0.0045914636, 0.999856234),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.44726694, 0.503729105, -0.00388534926, 0.993391156, 0.113691822, 0.0156119671, -0.113801189, 0.993483663, 0.00628523249, -0.0147956526, -0.00802037865, 0.999856234),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.30098641, 0.458334863, -0.45630464, 0.97372508, 0.226236522, 0.0259280894, 0.00073058781, 0.110756524, -0.99384743, -0.227716282, 0.967752993, 0.10768114),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(8.21147114e-06, 1.49895406, -0.0144038275, 0.99988234, -0.000873879122, 0.0151748769, -9.55477299e-05, 0.997964978, 0.0637657493, -0.015199719, -0.0637597144, 0.997847497),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110763341, -0.749599576, -0.415068239, -6.5267086e-06, -2.71201134e-06, 1.00000012, -0.500001013, 0.866024971, -9.23871994e-07, -0.866024971, -0.500001013, -7.01099634e-06),Alpha)
- end
- end
- Attack = false
- NeutralAnims = true
- end
- Plr.Chatted:Connect(function(m)
- Chat(m)
- end)
- local lastframe = os.clock()
- local Truesine = 0
- game:GetService("RunService").Heartbeat:Connect(function()
- delta = os.clock() - lastframe
- lastframe = os.clock()
- Sine = Sine + (Change * (60*delta))
- Truesine = os.clock()*60
- if(not Music or not Music.Parent)then
- local a = 0
- if(Music)then
- a = Music.TimePosition
- end
- Music = Sound(Torso,MusicID,1,1,true,false,true)
- Music.Name = 'Music'
- Music.TimePosition = a
- end
- Music.Volume = 3
- Music.Pitch = .95
- Music.Playing = true
- Sine = Sine + Change
- local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
- local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
- local State = (not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
- if(State == 'Walk')then
- local wsVal = 32 / (Hum.WalkSpeed/14)
- local Alpha = math.min(.1 * (Hum.WalkSpeed/16),1)
- Change = 2
- RH.C1 = clerp(RH.C1, CFrame.new(0,1,0)*CFrame.new(0,0-.2*math.cos(Sine/wsVal),0+.4*math.cos(Sine/wsVal))*CFrame.Angles(math.rad(25+45*math.cos(Sine/wsVal))+-math.sin(Sine/wsVal),0,0),Alpha)
- LH.C1 = clerp(LH.C1, CFrame.new(0,1,0)*CFrame.new(0,0+.2*math.cos(Sine/wsVal),0-.4*math.cos(Sine/wsVal))*CFrame.Angles(math.rad(25-45*math.cos(Sine/wsVal))+math.sin(Sine/wsVal),0,0),Alpha)
- else
- RH.C1 = clerp(RH.C1, CFrame.new(0,1,0),.1)
- LH.C1 = clerp(LH.C1, CFrame.new(0,1,0),.1)
- end
- if(NeutralAnims)then
- if(State == 'Idle')then
- Change = .5
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,CFrame.new(5.95311994e-13, 0.00629388914+.2*math.cos(Sine/20), 1.41759301e-06, 0.99999553, 9.4587449e-11, 0, -5.58664226e-12, 0.999980271, -0.00628617778, 9.31322575e-10, 0.00628615683, 0.99997592),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.560905516, -0.984790266-.2*math.cos(Sine/20), 0.0225828942, 0.997905374, 0.0627432317, 0.0156119671, -0.062847726, 0.998003423, 0.00628523249, -0.0151864393, -0.00725326827, 0.999856234),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.507978499, -0.98526901-.2*math.cos(Sine/20), 0.0152739538, 0.995106399, -0.0975458771, 0.0156119671, 0.0974583924, 0.995219886, 0.00628523249, -0.016150441, -0.00473298226, 0.999856234),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-0.997352481, 0.328557909+.1*math.cos(Sine/20), 0.373372614, 0.726782799, -0.595508456, 0.342274755, 0.369578063, 0.759076476, 0.535924494, -0.578960299, -0.263003558, 0.771770597),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.35597444, 0.402479589+.1*math.cos(Sine/20), 0.0100756176, 0.788939416, -0.614269078, 0.0156119671, 0.614255786, 0.78908211, 0.00628523249, -0.0161799639, 0.00463105366, 0.999856234),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(4.35163702e-06, 1.4989562, -0.0144046843, 0.99999553, 3.67523171e-07, -1.62050128e-07, -3.56434612e-07, 0.997964919, 0.0637686774, 1.8440187e-07, -0.0637684539, 0.997960329)*CFrame.Angles(math.rad(-6*-math.cos(Sine/20)),0,0),Alpha)
- HW.C0 = clerp(HW.C0,CFrame.new(-0.110785089, -0.749598742, -0.415072441, 2.87592411e-06, 1.69873238e-06, 1.00000012, -0.500000358, 0.866025329, 0, -0.866025269, -0.500000358, 3.33799494e-06),Alpha)
- elseif(State == 'Walk')then
- local wsVal = 32 / (Hum.WalkSpeed/14)
- local Alpha = math.min(.1 * (Hum.WalkSpeed/16),1)
- RJ.C0 = clerp(RJ.C0, RJC0*CFrame.new(0,0-.15*math.cos(Sine/(wsVal/2)),0)*CFrame.Angles(0,math.rad(0-15*math.sin(Sine/wsVal)/2),0),Alpha)
- NK.C0 = clerp(NK.C0, NKC0,Alpha)
- LH.C0 = clerp(LH.C0, LHC0,Alpha)
- RH.C0 = clerp(RH.C0, RHC0,Alpha)
- LS.C0 = clerp(LS.C0, LSC0*CFrame.new(0,0,0-.3*math.sin(Sine/wsVal))*CFrame.Angles(math.rad(0+45*math.sin(Sine/wsVal)),0,math.rad(-5)),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.35597444, 0.402479589, 0.0100756176, 0.788939416, -0.614269078, 0.0156119671, 0.614255786, 0.78908211, 0.00628523249, -0.0161799639, 0.00463105366, 0.999856234),Alpha)
- elseif(State == 'Jump' or State == 'Fall')then
- if(Walking)then
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,RJC0*CFrame.Angles(math.min(math.max(Root.Velocity.Y/100,-math.rad(65)),math.rad(65)),0,0),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
- else
- local Alpha = .1
- RJ.C0 = clerp(RJ.C0,RJC0*CFrame.Angles(math.min(math.max(Root.Velocity.Y/100,-math.rad(65)),math.rad(65)),0,0),Alpha)
- LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
- RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
- LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
- RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
- NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
- end
- end
- end
- local TrsoLV = Torso.CFrame.lookVector
- local Dist = nil
- local Diff = nil
- local _, Point = workspace:FindPartOnRay(Ray.new(Head.CFrame.p, mouse.Hit.lookVector), workspace, false, true)
- Dist = (Head.CFrame.p-Point).magnitude
- Diff = Head.CFrame.Y-Point.Y
- NK.C0 = clerp(NK.C0, NKC0*CFrame.Angles(-(math.tan(Diff/Dist)*.6), (((Head.CFrame.p-Point).Unit):Cross(Torso.CFrame.lookVector)).Y*1, 0), .1)
- for T, V in next, TAIL do
- V[1].C1 = clerp(V[1].C1, CFrame.Angles(math.rad(0), math.rad(0), math.rad(2.5 * math.sin(Truesine / 20))), .1)
- V[2].Color = Color3.new(math.clamp(.5 + (math.cos((Truesine+(T*5))/20)/2), .2, 1),0,0)
- end
- for i, v in next, HORNS do
- v.Color = Color3.new(math.clamp(.5 + (math.cos((Truesine+(i*5))/20)/2), .2, 1),0,0)
- end
- for i, v in next, NEON do
- v.Color = Color3.new(math.clamp(.5 + (math.cos((Truesine+(i*10))/20)/2), .3, 1),0,0)
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement