Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
- do
- script.Parent = owner.Character
- local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
- local function NewFakeEvent()
- local Bind = Instance.new("BindableEvent")
- local Fake;Fake = {Connections = {},
- fakeEvent=true;
- Connect=function(self,Func)
- Bind.Event:connect(Func)
- self.Connections[Bind] = true
- return setmetatable({Connected = true},{
- __index = function (self,Index)
- if Index:lower() == "disconnect" then
- return function() Fake.Connections[Bind] = false;self.Connected = false end
- end
- return Fake[Index]
- end;
- __tostring = function() return "Connection" end;
- })
- end}
- Fake.connect = Fake.Connect;return Fake;
- end
- local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
- local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
- local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
- self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
- end};ContextActionService.UnBindAction = ContextActionService.BindAction
- local function TriggerEvent(self,Event,...)
- local Trigger = Mouse[Event]
- if Trigger and Trigger.fakeEvent and Trigger.Connections then
- for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
- end
- end
- Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
- Event.OnServerEvent:Connect(function(FiredBy,Input)
- if FiredBy.Name ~= owner.Name then return end
- if Input.MouseEvent then
- Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
- else
- local Begin = Input.UserInputState == Enum.UserInputState.Begin
- if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
- for _,Action in pairs(ContextActionService.Actions) do
- for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
- end
- Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
- UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
- end
- end)
- InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
- Event.Parent = NLS([[
- local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
- local Input = function(Input,gameProcessedEvent)
- if gameProcessedEvent then return end
- Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
- end
- UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
- local Hit,Target
- while wait(1/30) do
- if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
- Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
- end
- end
- ]],owner.Character)
- end
- RealGame = game;game = setmetatable({},{
- __index = function (self,Index)
- local Sandbox = function (Thing)
- if Thing:IsA("Player") then
- local RealPlayer = Thing
- return setmetatable({},{
- __index = function (self,Index)
- local Type = type(RealPlayer[Index])
- if Type == "function" then
- if Index:lower() == "getmouse" or Index:lower() == "mouse" then
- return function (self)return InternalData["Mouse"] end
- end
- return function (self,...)return RealPlayer[Index](RealPlayer,...) end
- end
- return RealPlayer[Index]
- end;
- __tostring = function(self) return RealPlayer.Name end
- })
- end
- end
- if RealGame[Index] then
- local Type = type(RealGame[Index])
- if Type == "function" then
- if Index:lower() == "getservice" or Index:lower() == "service" then
- return function (self,Service)
- local FakeServices = {
- ["players"] = function()
- return setmetatable({},{
- __index = function (self2,Index2)
- local RealService = RealGame:GetService(Service)
- local Type2 = type(Index2)
- if Type2 == "function" then
- return function (self,...) return RealService[Index2](RealService,...)end
- else
- if Index2:lower() == "localplayer" then return Sandbox(owner) end
- return RealService[Index2]
- end
- end;
- __tostring = function(self) return RealGame:GetService(Service).Name end
- })
- end;
- ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
- ["userinputservice"] = function() return InternalData["UserInputService"] end;
- ["runservice"] = function()
- return setmetatable({},{
- __index = function(self2,Index2)
- local RealService = RealGame:GetService(Service)
- local Type2 = type(Index2)
- if Type2 == "function" then
- return function (self,...) return RealService[Index2](RealService,...) end
- else
- local RunServices = {
- ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
- ["renderstepped"] = function() return RealService["Stepped"] end
- }
- if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
- return RealService[Index2]
- end
- end
- })
- end
- }
- if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
- return RealGame:GetService(Service)
- end
- end
- return function (self,...) return RealGame[Index](RealGame,...) end
- else
- if game:GetService(Index) then return game:GetService(Index) end
- return RealGame[Index]
- end
- end
- return nil
- end
- });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
- --Converted with ttyyuu12345's model to script plugin v4
- function sandbox(var,func)
- local env = getfenv(func)
- local newenv = setmetatable({},{
- __index = function(self,k)
- if k=="script" then
- return var
- else
- return env[k]
- end
- end,
- })
- setfenv(func,newenv)
- return func
- end
- cors = {}
- mas = Instance.new("Model",game:GetService("Lighting"))
- Part0 = Instance.new("Part")
- SpecialMesh1 = Instance.new("SpecialMesh")
- Snap2 = Instance.new("Snap")
- Snap3 = Instance.new("Snap")
- Snap4 = Instance.new("Snap")
- Part5 = Instance.new("Part")
- SpecialMesh6 = Instance.new("SpecialMesh")
- Part7 = Instance.new("Part")
- Trail8 = Instance.new("Trail")
- SpecialMesh9 = Instance.new("SpecialMesh")
- Part10 = Instance.new("Part")
- Weld11 = Instance.new("Weld")
- Model12 = Instance.new("Model")
- Model13 = Instance.new("Model")
- Part14 = Instance.new("Part")
- SpecialMesh15 = Instance.new("SpecialMesh")
- ParticleEmitter16 = Instance.new("ParticleEmitter")
- ParticleEmitter17 = Instance.new("ParticleEmitter")
- Part18 = Instance.new("Part")
- SpecialMesh19 = Instance.new("SpecialMesh")
- Part20 = Instance.new("Part")
- SpecialMesh21 = Instance.new("SpecialMesh")
- Script22 = Instance.new("Script")
- Script23 = Instance.new("Script")
- LocalScript24 = Instance.new("LocalScript")
- NumberValue25 = Instance.new("NumberValue")
- NumberValue26 = Instance.new("NumberValue")
- BoolValue27 = Instance.new("BoolValue")
- Script28 = Instance.new("Script")
- ObjectValue29 = Instance.new("ObjectValue")
- Part0.Name = "bOMb"
- Part0.Parent = mas
- Part0.CFrame = CFrame.new(-141.964828, 0.998498976, -137.590561, -1, 1.58150215e-07, 3.36312951e-07, 1.58150215e-07, 1, -9.24347598e-10, -3.36312951e-07, -9.24294419e-10, -1)
- Part0.Orientation = Vector3.new(0, 180, 0)
- Part0.Position = Vector3.new(-141.964828, 0.998498976, -137.590561)
- Part0.Rotation = Vector3.new(180, 0, -180)
- Part0.Color = Color3.new(0.792157, 0.796079, 0.819608)
- Part0.Transparency = 1
- Part0.Size = Vector3.new(1.75051045, 1.99694169, 1.75900805)
- Part0.Anchored = true
- Part0.BrickColor = BrickColor.new("Ghost grey")
- Part0.Material = Enum.Material.WoodPlanks
- Part0.brickColor = BrickColor.new("Ghost grey")
- SpecialMesh1.Parent = Part0
- SpecialMesh1.MeshId = "http://www.roblox.com/asset/?id=11563093"
- SpecialMesh1.Scale = Vector3.new(1.69952476, 1.69952488, 1.69952476)
- SpecialMesh1.TextureId = "http://www.roblox.com/asset/?id=11563076"
- SpecialMesh1.MeshType = Enum.MeshType.FileMesh
- Snap2.Parent = Part0
- Snap2.C0 = CFrame.new(0, -0.998470843, 0, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Snap2.C1 = CFrame.new(-18.2385082, 10.0000286, -19.5104256, -1, 3.36312951e-07, -1.58150215e-07, 1.58150215e-07, -9.24347598e-10, -1, -3.36312951e-07, -1, 9.24294419e-10)
- Snap2.Part0 = Part0
- Snap3.Parent = Part0
- Snap3.C0 = CFrame.new(0, -0.998470843, 0, 1, 0, 0, 0, 0, -1, 0, 1, 0)
- Snap3.C1 = CFrame.new(-18.2385082, 10.0000286, -19.5104256, -1, 3.36312951e-07, -1.58150215e-07, 1.58150215e-07, -9.24347598e-10, -1, -3.36312951e-07, -1, 9.24294419e-10)
- Snap3.Part0 = Part0
- Snap4.Parent = Part0
- Snap4.C0 = CFrame.new(0, -0.998470843, 0, 1, 0, 0, -0, -0, -1, 0, 1, 0)
- Snap4.C1 = CFrame.new(-141.964828, 10.0000286, -137.590561, -1, 3.36312951e-07, -1.58150215e-07, 1.58150215e-07, -9.24347598e-10, -1, -3.36312951e-07, -1, 9.24294419e-10)
- Snap4.Part0 = Part0
- Snap4.Part1 = nil
- Snap4.part1 = nil
- Part5.Name = "Sod"
- Part5.Parent = mas
- Part5.CFrame = CFrame.new(-129.865036, 2.45002389, -129.515381, -2.99837484e-06, 8.19563866e-08, -1.00000322, -1, 1.26476607e-12, 2.93528183e-06, -4.02967881e-09, 1.00000322, 1.34110451e-07)
- Part5.Orientation = Vector3.new(0, -90, -90)
- Part5.Position = Vector3.new(-129.865036, 2.45002389, -129.515381)
- Part5.Rotation = Vector3.new(90, -90, 0)
- Part5.Color = Color3.new(0.768628, 0.156863, 0.109804)
- Part5.Transparency = 1
- Part5.Size = Vector3.new(2, 2, 2)
- Part5.Anchored = true
- Part5.BottomSurface = Enum.SurfaceType.Smooth
- Part5.BrickColor = BrickColor.new("Bright red")
- Part5.CanCollide = false
- Part5.Material = Enum.Material.SmoothPlastic
- Part5.TopSurface = Enum.SurfaceType.Smooth
- Part5.brickColor = BrickColor.new("Bright red")
- Part5.FormFactor = Enum.FormFactor.Custom
- Part5.formFactor = Enum.FormFactor.Custom
- SpecialMesh6.Parent = Part5
- SpecialMesh6.MeshId = "rbxassetid://1032879482"
- SpecialMesh6.Scale = Vector3.new(0.200000003, 0.200000003, 0.200000003)
- SpecialMesh6.TextureId = "rbxassetid://1032879491"
- SpecialMesh6.MeshType = Enum.MeshType.FileMesh
- Part7.Name = "Sword"
- Part7.Parent = mas
- Part7.CFrame = CFrame.new(-139.065033, 2.45002389, -129.515381, -2.99837484e-06, 8.19563866e-08, -1.00000322, -1, 1.26476607e-12, 2.93528183e-06, -4.02967881e-09, 1.00000322, 1.34110451e-07)
- Part7.Orientation = Vector3.new(0, -90, -90)
- Part7.Position = Vector3.new(-139.065033, 2.45002389, -129.515381)
- Part7.Rotation = Vector3.new(90, -90, 0)
- Part7.Color = Color3.new(0.768628, 0.156863, 0.109804)
- Part7.Transparency = 1
- Part7.Size = Vector3.new(2.61019349, 0.362741441, 10.3400469)
- Part7.Anchored = true
- Part7.BottomSurface = Enum.SurfaceType.Smooth
- Part7.BrickColor = BrickColor.new("Bright red")
- Part7.CanCollide = false
- Part7.Material = Enum.Material.SmoothPlastic
- Part7.Reflectance = 0.40000000596046
- Part7.TopSurface = Enum.SurfaceType.Smooth
- Part7.brickColor = BrickColor.new("Bright red")
- Part7.FormFactor = Enum.FormFactor.Custom
- Part7.formFactor = Enum.FormFactor.Custom
- Trail8.Parent = Part7
- Trail8.Attachment0 = nil
- Trail8.Attachment1 = nil
- Trail8.Enabled = false
- Trail8.LightEmission = 0.40000000596046
- Trail8.LightInfluence = 1
- Trail8.Texture = "rbxassetid://744949545"
- Trail8.TextureLength = 0.10000000149012
- Trail8.Transparency = NumberSequence.new(0,0.34999996423721)
- Trail8.MinLength = 0
- Trail8.Lifetime = 0.10000000149012
- Trail8.WidthScale = NumberSequence.new(1,0)
- SpecialMesh9.Parent = Part7
- SpecialMesh9.MeshId = "rbxasset://fonts/sword.mesh"
- SpecialMesh9.TextureId = "rbxasset://textures/SwordTexture.png"
- SpecialMesh9.MeshType = Enum.MeshType.FileMesh
- Part10.Name = "HitBox"
- Part10.Parent = Part7
- Part10.CFrame = CFrame.new(-139.876343, 2.45000076, -129.530121, 1.00000644, 6.3083462e-08, -5.21542134e-08, 6.3083462e-08, 1, 4.03133704e-09, -5.21542134e-08, 4.03133704e-09, 1.00000644)
- Part10.Position = Vector3.new(-139.876343, 2.45000076, -129.530121)
- Part10.Transparency = 1
- Part10.Size = Vector3.new(3.1600008, 0.320952654, 0.235365614)
- Part10.BottomSurface = Enum.SurfaceType.Smooth
- Part10.TopSurface = Enum.SurfaceType.Smooth
- Weld11.Parent = Part10
- Weld11.C0 = CFrame.new(16.1500111, -2.45000076, 11.4499865, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Weld11.C1 = CFrame.new(2.44997787, 11.4352903, -15.3387671, -2.99837484e-06, -1, -4.02967881e-09, 8.19563866e-08, 1.26476607e-12, 1.00000322, -1.00000322, 2.93528183e-06, 1.34110451e-07)
- Weld11.Part0 = Part10
- Weld11.Part1 = Part7
- Weld11.part1 = Part7
- Model12.Parent = mas
- Model13.Parent = Model12
- Part14.Name = "Bom"
- Part14.Parent = Model13
- Part14.CFrame = CFrame.new(-144.079926, 2.46002889, -137.717957, -7.3270747e-15, 0.999998689, -4.37113563e-08, 1.51742209e-14, 4.3711335e-08, 0.999999166, 0.999999225, 3.55271198e-15, -1.77635616e-14)
- Part14.Orientation = Vector3.new(-89.9300003, -90, 0)
- Part14.Position = Vector3.new(-144.079926, 2.46002889, -137.717957)
- Part14.Rotation = Vector3.new(-90, 0, -90)
- Part14.Size = Vector3.new(0.100000001, 0.100000001, 0.100000001)
- Part14.Anchored = true
- Part14.BottomSurface = Enum.SurfaceType.Smooth
- Part14.TopSurface = Enum.SurfaceType.Smooth
- SpecialMesh15.Parent = Part14
- SpecialMesh15.MeshId = "rbxasset://fonts/timebomb.mesh"
- SpecialMesh15.Scale = Vector3.new(0.800000012, 0.800000012, 0.800000012)
- SpecialMesh15.TextureId = "rbxasset://textures/bombtex.png"
- SpecialMesh15.MeshType = Enum.MeshType.FileMesh
- attachymenty = Instance.new("Attachment",Part14)
- attachymenty.Position = Vector3.new(0, -0.55, 1.32)
- attachymenty.Orientation = Vector3.new(90, 0, 0)
- attachymenty.Axis = Vector3.new(1, -0, -0)
- attachymenty.SecondaryAxis = Vector3.new(0, -0, 1)
- attachymenty.WorldAxis = Vector3.new(-0, -0, 1)
- attachymenty.WorldOrientation = Vector3.new(0, -90, -0)
- attachymenty.WorldPosition = Vector3.new(-144.63, 3.78, -137.718)
- attachymenty.WorldSecondaryAxis = Vector3.new(-0, 1, 0)
- attachymenty.Archivable = true
- ParticleEmitter16.Name = "Fire"
- ParticleEmitter16.Parent = attachymenty
- ParticleEmitter16.Speed = NumberRange.new(1, 1)
- ParticleEmitter16.Rotation = NumberRange.new(-360, 360)
- ParticleEmitter16.Color = ColorSequence.new(Color3.new(1, 1, 0),Color3.new(1, 0, 0))
- ParticleEmitter16.LightEmission = 0.20000000298023
- ParticleEmitter16.LightInfluence = 1
- ParticleEmitter16.Texture = "rbxasset://textures/particles/smoke_main.dds"
- ParticleEmitter16.Transparency = NumberSequence.new(1,0.22499996423721,0.33125001192093,1)
- ParticleEmitter16.Size = NumberSequence.new(0.37499964237213,0)
- ParticleEmitter16.Lifetime = NumberRange.new(1.5, 1.5)
- ParticleEmitter16.Rate = 50
- ParticleEmitter16.RotSpeed = NumberRange.new(-360, 360)
- ParticleEmitter17.Name = "Smoke"
- ParticleEmitter17.Parent = attachymenty
- ParticleEmitter17.Speed = NumberRange.new(1, 1)
- ParticleEmitter17.Rotation = NumberRange.new(-360, 360)
- ParticleEmitter17.Color = ColorSequence.new(Color3.new(0.392157, 0.392157, 0.392157),Color3.new(0.137255, 0.137255, 0.137255))
- ParticleEmitter17.LightInfluence = 1
- ParticleEmitter17.Texture = "rbxasset://textures/particles/smoke_main.dds"
- ParticleEmitter17.Transparency = NumberSequence.new(1,0.26249998807907,0.19999998807907,1)
- ParticleEmitter17.Size = NumberSequence.new(0.3125,0)
- ParticleEmitter17.Lifetime = NumberRange.new(3, 3)
- ParticleEmitter17.Rate = 100
- ParticleEmitter17.RotSpeed = NumberRange.new(-360, 360)
- ParticleEmitter17.SpreadAngle = Vector2.new(20, 20)
- ParticleEmitter17.VelocitySpread = 20
- Part18.Name = "BigOof"
- Part18.Parent = Model13
- Part18.CFrame = CFrame.new(-144.149918, 2.41003489, -137.667953, 1, -1.01838705e-17, 8.85616399e-20, 1.01838705e-17, 1, -1.33938474e-17, -8.85616399e-20, 1.33938474e-17, 1)
- Part18.Position = Vector3.new(-144.149918, 2.41003489, -137.667953)
- Part18.Size = Vector3.new(2, 2, 2)
- Part18.BottomSurface = Enum.SurfaceType.Smooth
- Part18.Locked = true
- Part18.TopSurface = Enum.SurfaceType.Smooth
- SpecialMesh19.Parent = Part18
- SpecialMesh19.MeshId = "http://www.roblox.com/asset/?id=2333750544"
- SpecialMesh19.TextureId = "http://www.roblox.com/asset/?id=2333750544"
- SpecialMesh19.MeshType = Enum.MeshType.FileMesh
- Part20.Name = "Handle"
- Part20.Parent = Model13
- Part20.CFrame = CFrame.new(-144.156036, 2.36002588, -137.781387, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Part20.Position = Vector3.new(-144.156036, 2.36002588, -137.781387)
- Part20.Transparency = 1
- Part20.Size = Vector3.new(2, 1, 1)
- Part20.CanCollide = false
- Part20.TopSurface = Enum.SurfaceType.Smooth
- Part20.FormFactor = Enum.FormFactor.Symmetric
- Part20.formFactor = Enum.FormFactor.Symmetric
- SpecialMesh21.Parent = Part20
- SpecialMesh21.Scale = Vector3.new(1.25, 1.25, 1.25)
- Script22.Name = "qPerfectionWeld"
- Script22.Parent = Model12
- table.insert(cors,sandbox(Script22,function()
- local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
- local function CallOnChildren(Instance, FunctionToCall)
- FunctionToCall(Instance)
- for _, Child in next, Instance:GetChildren() do
- CallOnChildren(Child, FunctionToCall)
- end
- end
- local function GetNearestParent(Instance, ClassName)
- local Ancestor = Instance
- repeat
- Ancestor = Ancestor.Parent
- if Ancestor == nil then
- return nil
- end
- until Ancestor:IsA(ClassName)
- return Ancestor
- end
- local function GetBricks(StartInstance)
- local List = {}
- CallOnChildren(StartInstance, function(Item)
- if Item:IsA("BasePart") then
- List[#List+1] = Item;
- end
- end)
- return List
- end
- local function Modify(Instance, Values)
- assert(type(Values) == "table", "Values is not a table");
- for Index, Value in next, Values do
- if type(Index) == "number" then
- Value.Parent = Instance
- else
- Instance[Index] = Value
- end
- end
- return Instance
- end
- local function Make(ClassType, Properties)
- return Modify(Instance.new(ClassType), Properties)
- end
- local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
- local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
- local function HasWheelJoint(Part)
- for _, SurfaceName in pairs(Surfaces) do
- for _, HingSurfaceName in pairs(HingSurfaces) do
- if Part[SurfaceName].Name == HingSurfaceName then
- return true
- end
- end
- end
- return false
- end
- local function ShouldBreakJoints(Part)
- if NEVER_BREAK_JOINTS then
- return false
- end
- if HasWheelJoint(Part) then
- return false
- end
- local Connected = Part:GetConnectedParts()
- if #Connected == 1 then
- return false
- end
- for _, Item in pairs(Connected) do
- if HasWheelJoint(Item) then
- return false
- elseif not Item:IsDescendantOf(script.Parent) then
- return false
- end
- end
- return true
- end
- local function WeldTogether(Part0, Part1, JointType, WeldParent)
- JointType = JointType or "Weld"
- local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
- local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
- Modify(NewWeld, {
- Name = "qCFrameWeldThingy";
- Part0 = Part0;
- Part1 = Part1;
- C0 = CFrame.new();--Part0.CFrame:inverse();
- C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
- Parent = Part1;
- })
- if not RelativeValue then
- RelativeValue = Make("CFrameValue", {
- Parent = Part1;
- Name = "qRelativeCFrameWeldValue";
- Archivable = true;
- Value = NewWeld.C1;
- })
- end
- return NewWeld
- end
- local function WeldParts(Parts, MainPart, JointType)
- for _, Part in pairs(Parts) do
- if ShouldBreakJoints(Part) then
- Part:BreakJoints()
- end
- end
- for _, Part in pairs(Parts) do
- if Part ~= MainPart then
- WeldTogether(MainPart, Part, JointType, MainPart)
- end
- end
- end
- local function PerfectionWeld()
- local Tool = GetNearestParent(script, "Tool")
- local Parts = GetBricks(script.Parent)
- local PrimaryPart = script.Parent.Model.Handle
- if PrimaryPart then
- WeldParts(Parts, PrimaryPart, "Weld")
- else
- warn("qWeld - Unable to weld part")
- end
- return Tool
- end
- local Tool = PerfectionWeld()
- if Tool and script.ClassName == "Script" then
- script.Parent.AncestryChanged:connect(function()
- PerfectionWeld()
- end)
- end
- end))
- Script23.Name = "R6Ragdoll"
- Script23.Parent = mas
- table.insert(cors,sandbox(Script23,function()
- local head = script.Parent["Head"]
- local leftarm = script.Parent["Left Arm"]
- local leftleg = script.Parent["Left Leg"]
- local rightleg = script.Parent["Right Leg"]
- local rightarm = script.Parent["Right Arm"]
- local torso = script.Parent.Torso
- local root = script.Parent:FindFirstChild("HumanoidRootPart")
- local HeadA = Instance.new("Attachment")
- HeadA.Name = "HeadA"
- HeadA.Parent = head
- HeadA.Position = Vector3.new(0, -0.5, 0)
- HeadA.Rotation = Vector3.new(0, 0, -0)
- HeadA.Axis = Vector3.new(1, -0, -0)
- HeadA.SecondaryAxis = Vector3.new(0, 1, 0)
- local LeftArmA = Instance.new("Attachment")
- LeftArmA.Name = "LeftArmA"
- LeftArmA.Parent = leftarm
- LeftArmA.Position = Vector3.new(0.4, 0.8, 0)
- LeftArmA.Rotation = Vector3.new(-180, 0, 90)
- LeftArmA.Axis = Vector3.new(0, -1, -0)
- LeftArmA.SecondaryAxis = Vector3.new(-1, 0, 0)
- local LeftLegA = Instance.new("Attachment")
- LeftLegA.Name = "LeftLegA"
- LeftLegA.Parent = leftleg
- LeftLegA.Position = Vector3.new(0, 1, 0)
- LeftLegA.Rotation = Vector3.new(90, -90, 0)
- LeftLegA.Axis = Vector3.new(0, -1, -0)
- LeftLegA.SecondaryAxis = Vector3.new(0, -0, 1)
- local RightArmA = Instance.new("Attachment")
- RightArmA.Name = "RightArmA"
- RightArmA.Parent = rightarm
- RightArmA.Position = Vector3.new(0, 1, 0)
- RightArmA.Rotation = Vector3.new(90, -90, 0)
- RightArmA.Axis = Vector3.new(0, -1, -0)
- RightArmA.SecondaryAxis = Vector3.new(0, -0, 1)
- local RightLegA = Instance.new("Attachment")
- RightLegA.Name = "RightLegA"
- RightLegA.Parent = rightleg
- RightLegA.Position = Vector3.new(-0.4, 0.8, 0)
- RightLegA.Rotation = Vector3.new(-180, 0, 90)
- RightLegA.Axis = Vector3.new(0, -1, -0)
- RightLegA.SecondaryAxis = Vector3.new(0, 1, 0)
- local TorsoA = Instance.new("Attachment")
- TorsoA.Name = "TorsoA"
- TorsoA.Parent = torso
- TorsoA.Position = Vector3.new(0.5, -1.1, 0)
- TorsoA.Rotation = Vector3.new(90, -90, 0)
- TorsoA.Axis = Vector3.new(0, -1, -0)
- TorsoA.SecondaryAxis = Vector3.new(0, -0, 1)
- local TorsoA1 = Instance.new("Attachment")
- TorsoA1.Name = "TorsoA1"
- TorsoA1.Parent = torso
- TorsoA1.Position = Vector3.new(-0.5, -1.1, 0)
- TorsoA1.Rotation = Vector3.new(90, -90, 0)
- TorsoA1.Axis = Vector3.new(0, -1, -0)
- TorsoA1.SecondaryAxis = Vector3.new(0, -0, 1)
- local TorsoA2 = Instance.new("Attachment")
- TorsoA2.Name = "TorsoA2"
- TorsoA2.Parent = torso
- TorsoA2.Position = Vector3.new(-1, 0.8, 0)
- TorsoA2.Rotation = Vector3.new(0, 0, -180)
- TorsoA2.Axis = Vector3.new(-1, -0, 0)
- TorsoA2.SecondaryAxis = Vector3.new(0, -1, 0)
- local TorsoA3 = Instance.new("Attachment")
- TorsoA3.Name = "TorsoA3"
- TorsoA3.Parent = torso
- TorsoA3.Position = Vector3.new(1, 0.8, 0)
- TorsoA3.Rotation = Vector3.new(-180, 0, 0)
- TorsoA3.Axis = Vector3.new(1, -0, 0)
- TorsoA3.SecondaryAxis = Vector3.new(-0, -1, -0)
- local TorsoA4 = Instance.new("Attachment")
- TorsoA4.Name = "TorsoA4"
- TorsoA4.Parent = torso
- TorsoA4.Position = Vector3.new(0, 1, 0)
- TorsoA4.Rotation = Vector3.new(0, 0, -0)
- TorsoA4.Axis = Vector3.new(1, -0, 0)
- TorsoA4.SecondaryAxis = Vector3.new(0, 1, 0)
- local TorsoA5 = Instance.new("Attachment")
- TorsoA5.Name = "TorsoA5"
- TorsoA5.Parent = torso
- TorsoA5.Position = Vector3.new(0, 0, 0)
- TorsoA5.Rotation = Vector3.new(0, 90, 0)
- TorsoA5.Axis = Vector3.new(0, 0, -1)
- TorsoA5.SecondaryAxis = Vector3.new(0, 1, 0)
- local rootA = Instance.new("Attachment")
- rootA.Name= "rootA"
- rootA.Parent = root
- rootA.Position = Vector3.new(0, 0, 0)
- rootA.Rotation = Vector3.new(0, 90, 0)
- rootA.Axis = Vector3.new(0, 0, -1)
- rootA.SecondaryAxis = Vector3.new(0, 1, 0)
- local HA = Instance.new("BallSocketConstraint")
- HA.Parent = head
- HA.Attachment0 = HeadA
- HA.Attachment1 = TorsoA4
- HA.Enabled = true
- local LAT = Instance.new("BallSocketConstraint")
- LAT.Parent = leftarm
- LAT.Attachment0 = LeftArmA
- LAT.Attachment1 = TorsoA2
- LAT.Enabled = true
- local RAT = Instance.new("BallSocketConstraint")
- RAT.Parent = rightarm
- RAT.Attachment0 = RightArmA
- RAT.Attachment1 = TorsoA3
- RAT.Enabled = true
- local HA = Instance.new("BallSocketConstraint")
- HA.Parent = head
- HA.Attachment0 = HeadA
- HA.Attachment1 = TorsoA4
- HA.Enabled = true
- local TLL = Instance.new("BallSocketConstraint")
- TLL.Parent = torso
- TLL.Attachment0 = TorsoA1
- TLL.Attachment1 = LeftLegA
- TLL.Enabled = true
- local TRL = Instance.new("BallSocketConstraint")
- TRL.Parent = torso
- TRL.Attachment0 = TorsoA
- TRL.Attachment1 = RightLegA
- TRL.Enabled = true
- local RTA = Instance.new("BallSocketConstraint")
- RTA.Parent = root
- RTA.Attachment0 = rootA
- RTA.Attachment1 = TorsoA5
- RTA.Enabled = true
- end))
- Script23.Disabled = true
- LocalScript24.Name = "CamShake"
- LocalScript24.Parent = mas
- table.insert(cors,sandbox(LocalScript24,function()
- VT = Vector3.new
- MRANDOM = math.random
- local A = nil
- local B = nil
- local C = nil
- local HUMANOID = script.Parent:FindFirstChildOfClass("Humanoid")
- for _, c in pairs(script:GetChildren()) do
- if c.Name == "Timer" then
- A = c.Value
- elseif c.Name == "Shake" then
- B = c.Value*5
- elseif c.Name == "DoesFade" then
- C = c.Value
- end
- end
- local TIMER = A or 35
- local SHAKE = B or 5
- local FADE = C or true
- if HUMANOID and game.Players:FindFirstChild(script.Parent.Name) then
- local FADER = SHAKE/TIMER
- for i = 1, TIMER do
- wait()
- HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE-(FADER*i)),(SHAKE-(FADER*i)))/10,MRANDOM(-(SHAKE-(FADER*i)),(SHAKE-(FADER*i)))/10,MRANDOM(-(SHAKE-(FADER*i)),(SHAKE-(FADER*i)))/10)
- end
- HUMANOID.CameraOffset = VT(0,0,0)
- end
- script:remove()
- end))
- LocalScript24.Disabled = true
- NumberValue25.Name = "Timer"
- NumberValue25.Parent = LocalScript24
- NumberValue25.Value = 35
- NumberValue26.Name = "Shake"
- NumberValue26.Parent = LocalScript24
- NumberValue26.Value = 5
- BoolValue27.Name = "DoesFade"
- BoolValue27.Parent = LocalScript24
- Script28.Name = "R15Ragdoll"
- Script28.Parent = mas
- table.insert(cors,sandbox(Script28,function()
- local character = script.Parent
- function recurse(root,callback,i)
- i= i or 0
- for _,v in pairs(root:GetChildren()) do
- i = i + 1
- callback(i,v)
- if #v:GetChildren() > 0 then
- i = recurse(v,callback,i)
- end
- end
- return i
- end
- function ragdollJoint(part0, part1, attachmentName, className, properties)
- attachmentName = attachmentName.."RigAttachment"
- local constraint = Instance.new(className.."Constraint")
- constraint.Attachment0 = part0:FindFirstChild(attachmentName)
- constraint.Attachment1 = part1:FindFirstChild(attachmentName)
- constraint.Name = "RagdollConstraint"..part1.Name
- for _,propertyData in next,properties or {} do
- constraint[propertyData[1]] = propertyData[2]
- end
- constraint.Parent = character
- end
- function getAttachment0(attachmentName)
- for _,child in next,character:GetChildren() do
- local attachment = child:FindFirstChild(attachmentName)
- if attachment then
- return attachment
- end
- end
- end
- --character:WaitForChild("Humanoid").Died:connect(function()
- local camera = workspace.CurrentCamera
- if camera.CameraSubject == character.Humanoid then--If developer isn't controlling camera
- camera.CameraSubject = character.UpperTorso
- end
- --Make it so ragdoll can't collide with invisible HRP, but don't let HRP fall through map and be destroyed in process
- character.HumanoidRootPart.Anchored = true
- character.HumanoidRootPart.CanCollide = false
- --Helps to fix constraint spasms
- recurse(character, function(_,v)
- if v:IsA("Attachment") then
- v.Axis = Vector3.new(0, 1, 0)
- v.SecondaryAxis = Vector3.new(0, 0, 1)
- v.Rotation = Vector3.new(0, 0, 0)
- end
- end)
- --Re-attach hats
- for _,child in next,character:GetChildren() do
- if child:IsA("Accoutrement") then
- --Loop through all parts instead of only checking for one to be forwards-compatible in the event
- --ROBLOX implements multi-part accessories
- for _,part in next,child:GetChildren() do
- if part:IsA("BasePart") then
- local attachment1 = part:FindFirstChildOfClass("Attachment")
- local attachment0 = getAttachment0(attachment1.Name)
- if attachment0 and attachment1 then
- --Shouldn't use constraints for this, but have to because of a ROBLOX idiosyncrasy where
- --joints connecting a character are perpetually deleted while the character is dead
- local constraint = Instance.new("HingeConstraint")
- constraint.Attachment0 = attachment0
- constraint.Attachment1 = attachment1
- constraint.LimitsEnabled = true
- constraint.UpperAngle = 0 --Simulate weld by making it difficult for constraint to move
- constraint.LowerAngle = 0
- constraint.Parent = character
- end
- end
- end
- end
- end
- ragdollJoint(character.LowerTorso, character.UpperTorso, "Waist", "BallSocket", {
- {"LimitsEnabled",true};
- {"UpperAngle",5};
- })
- --[[ragdollJoint(character.UpperTorso, character.Head, "Neck", "BallSocket", {
- {"LimitsEnabled",true};
- {"UpperAngle",15};
- })]]
- local handProperties = {
- {"LimitsEnabled", true};
- {"UpperAngle",0};
- {"LowerAngle",0};
- }
- ragdollJoint(character.LeftLowerArm, character.LeftHand, "LeftWrist", "Hinge", handProperties)
- ragdollJoint(character.RightLowerArm, character.RightHand, "RightWrist", "Hinge", handProperties)
- local shinProperties = {
- {"LimitsEnabled", true};
- {"UpperAngle", 0};
- {"LowerAngle", -75};
- }
- ragdollJoint(character.LeftUpperLeg, character.LeftLowerLeg, "LeftKnee", "Hinge", shinProperties)
- ragdollJoint(character.RightUpperLeg, character.RightLowerLeg, "RightKnee", "Hinge", shinProperties)
- local footProperties = {
- {"LimitsEnabled", true};
- {"UpperAngle", 15};
- {"LowerAngle", -45};
- }
- ragdollJoint(character.LeftLowerLeg, character.LeftFoot, "LeftAnkle", "Hinge", footProperties)
- ragdollJoint(character.RightLowerLeg, character.RightFoot, "RightAnkle", "Hinge", footProperties)
- --TODO fix ability for socket to turn backwards whenn ConeConstraints are shipped
- ragdollJoint(character.UpperTorso, character.LeftUpperArm, "LeftShoulder", "BallSocket")
- ragdollJoint(character.LeftUpperArm, character.LeftLowerArm, "LeftElbow", "BallSocket")
- ragdollJoint(character.UpperTorso, character.RightUpperArm, "RightShoulder", "BallSocket")
- ragdollJoint(character.RightUpperArm, character.RightLowerArm, "RightElbow", "BallSocket")
- ragdollJoint(character.LowerTorso, character.LeftUpperLeg, "LeftHip", "BallSocket")
- ragdollJoint(character.LowerTorso, character.RightUpperLeg, "RightHip", "BallSocket")
- --end)
- end))
- Script28.Disabled = true
- ObjectValue29.Name = "Owner"
- ObjectValue29.Parent = mas
- for i,v in pairs(mas:GetChildren()) do
- v.Parent = script
- pcall(function() v:MakeJoints() end)
- end
- mas:Destroy()
- for i,v in pairs(cors) do
- spawn(function()
- pcall(v)
- end)
- end
- -----------------------
- --[[ Name : 0 ]]--
- -------------------------------------------------------
- local plr = game:service'Players'.LocalPlayer
- print('Local User is '..plr.Name)
- print('Mr. Ware Loaded')
- print([[
- 0
- ]])
- local char = plr.Character
- local hum = char:FindFirstChildOfClass'Humanoid'
- local hed = char.Head
- local root = char:FindFirstChild'HumanoidRootPart'
- local rootj = root.RootJoint
- local tors = char.Torso
- local ra = char["Right Arm"]
- local la = char["Left Arm"]
- local rl = char["Right Leg"]
- local ll = char["Left Leg"]
- local neck = tors["Neck"]
- local mouse = plr:GetMouse()
- local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
- local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
- local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
- local maincolor = BrickColor.new("Really black")
- local disach = false
- -------------------------------------------------------
- --Start Good Stuff--
- -------------------------------------------------------
- cam = game.Workspace.CurrentCamera
- CF = CFrame.new
- angles = CFrame.Angles
- attack = false
- Euler = CFrame.fromEulerAnglesXYZ
- Rad = math.rad
- IT = Instance.new
- BrickC = BrickColor.new
- Cos = math.cos
- Acos = math.acos
- Sin = math.sin
- Asin = math.asin
- Abs = math.abs
- Mrandom = math.random
- Floor = math.floor
- -------------------------------------------------------
- --End Good Stuff--
- -------------------------------------------------------
- necko = CF(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
- RSH, LSH = nil, nil
- RW = Instance.new("Weld")
- LW = Instance.new("Weld")
- RH = tors["Right Hip"]
- LH = tors["Left Hip"]
- RSH = tors["Right Shoulder"]
- LSH = tors["Left Shoulder"]
- RSH.Parent = nil
- LSH.Parent = nil
- RW.Name = "RW"
- RW.Part0 = tors
- RW.C0 = CF(1.5, 0.5, 0)
- RW.C1 = CF(0, 0.5, 0)
- RW.Part1 = ra
- RW.Parent = tors
- LW.Name = "LW"
- LW.Part0 = tors
- LW.C0 = CF(-1.5, 0.5, 0)
- LW.C1 = CF(0, 0.5, 0)
- LW.Part1 = la
- LW.Parent = tors
- Effects = {}
- newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
- local wld = Instance.new("Weld", wp1)
- wld.Part0 = wp0
- wld.Part1 = wp1
- wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
- end
- newWeld(tors, ll, -0.5, -1, 0)
- ll.Weld.C1 = CFrame.new(0, 1, 0)
- newWeld(tors, rl, 0.5, -1, 0)
- rl.Weld.C1 = CFrame.new(0, 1, 0)
- -------------------------------------------------------
- --Start HeartBeat--
- -------------------------------------------------------
- ArtificialHB = Instance.new("BindableEvent", script)
- ArtificialHB.Name = "Heartbeat"
- script:WaitForChild("Heartbeat")
- frame = 1 / 60
- tf = 0
- allowframeloss = false
- tossremainder = false
- lastframe = tick()
- script.Heartbeat:Fire()
- game:GetService("RunService").Heartbeat:connect(function(s, p)
- tf = tf + s
- if tf >= frame then
- if allowframeloss then
- script.Heartbeat:Fire()
- lastframe = tick()
- else
- for i = 1, math.floor(tf / frame) do
- script.Heartbeat:Fire()
- end
- lastframe = tick()
- end
- if tossremainder then
- tf = 0
- else
- tf = tf - frame * math.floor(tf / frame)
- end
- end
- end)
- -------------------------------------------------------
- --End HeartBeat--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start Important Functions--
- -------------------------------------------------------
- function swait(num)
- if num == 0 or num == nil then
- game:service("RunService").Stepped:wait(0)
- else
- for i = 0, num do
- game:service("RunService").Stepped:wait(0)
- end
- end
- end
- function thread(f)
- coroutine.resume(coroutine.create(f))
- end
- function clerp(a, b, t)
- local qa = {
- QuaternionFromCFrame(a)
- }
- local qb = {
- QuaternionFromCFrame(b)
- }
- local ax, ay, az = a.x, a.y, a.z
- local bx, by, bz = b.x, b.y, b.z
- local _t = 1 - t
- return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
- end
- function QuaternionFromCFrame(cf)
- local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
- local trace = m00 + m11 + m22
- if trace > 0 then
- local s = math.sqrt(1 + trace)
- local recip = 0.5 / s
- return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
- else
- local i = 0
- if m00 < m11 then
- i = 1
- end
- if m22 > (i == 0 and m00 or m11) then
- i = 2
- end
- if i == 0 then
- local s = math.sqrt(m00 - m11 - m22 + 1)
- local recip = 0.5 / s
- return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
- elseif i == 1 then
- local s = math.sqrt(m11 - m22 - m00 + 1)
- local recip = 0.5 / s
- return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
- elseif i == 2 then
- local s = math.sqrt(m22 - m00 - m11 + 1)
- local recip = 0.5 / s
- return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
- end
- end
- end
- function QuaternionToCFrame(px, py, pz, x, y, z, w)
- local xs, ys, zs = x + x, y + y, z + z
- local wx, wy, wz = w * xs, w * ys, w * zs
- local xx = x * xs
- local xy = x * ys
- local xz = x * zs
- local yy = y * ys
- local yz = y * zs
- local zz = z * zs
- return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
- end
- function QuaternionSlerp(a, b, t)
- local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
- local startInterp, finishInterp
- if cosTheta >= 1.0E-4 then
- if 1 - cosTheta > 1.0E-4 then
- local theta = math.acos(cosTheta)
- local invSinTheta = 1 / Sin(theta)
- startInterp = Sin((1 - t) * theta) * invSinTheta
- finishInterp = Sin(t * theta) * invSinTheta
- else
- startInterp = 1 - t
- finishInterp = t
- end
- elseif 1 + cosTheta > 1.0E-4 then
- local theta = math.acos(-cosTheta)
- local invSinTheta = 1 / Sin(theta)
- startInterp = Sin((t - 1) * theta) * invSinTheta
- finishInterp = Sin(t * theta) * invSinTheta
- else
- startInterp = t - 1
- finishInterp = t
- end
- return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
- end
- function rayCast(Position, Direction, Range, Ignore)
- return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
- end
- local RbxUtility = LoadLibrary("RbxUtility")
- local Create = RbxUtility.Create
- -------------------------------------------------------
- --Start Damage Function--
- -------------------------------------------------------
- function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
- if hit.Parent == nil then
- return
- end
- local h = hit.Parent:FindFirstChild("Humanoid")
- for _,v in pairs(hit.Parent:children()) do
- if v:IsA("Humanoid") then
- h = v
- end
- end
- --gg
- --local FoundTorso = hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso")
- coroutine.resume(coroutine.create(function()
- if h.Health >= 9999999 and minim <9999 and Type~= "IgnoreType" and(h.Parent:FindFirstChild("Torso") or h.Parent:FindFirstChild("UpperTorso")) and not h.Parent:FindFirstChild("Fly away")then
- local FATag = Instance.new("Model",h.Parent)
- FATag.Name = "Fly away"
- game:GetService("Debris"):AddItem(FATag, 2.5)
- for _,v in pairs(h.Parent:children()) do
- if v:IsA("BasePart")and v.Parent:FindFirstChildOfClass("Humanoid") then
- v.Anchored=true
- end
- end
- wait(.25)
- if h.Parent:FindFirstChildOfClass("Body Colors")then
- h.Parent:FindFirstChildOfClass("Body Colors"):Destroy()
- end
- local FoundTorso = h.Parent:FindFirstChild("Torso") or h.Parent:FindFirstChild("UpperTorso")
- coroutine.resume(coroutine.create(function()
- for i = 0,2,1 do
- --Cso("1448044156", FoundTorso,2, 1)
- h.Parent:BreakJoints()
- ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)+Vector3.new(Mrandom(-2,2),0,Mrandom(-2,2))), "Death", 1.5, Color3.new(1,0,0))
- for _,v in pairs(h.Parent:children()) do
- if v:IsA("BasePart")and v.Parent:FindFirstChildOfClass("Humanoid") then
- v.Anchored=false
- -- v.Material = "Neon"
- --v.BrickColor = BrickColor.new("Really red")
- if v:FindFirstChildOfClass("SpecialMesh")then
- --v:Destroy()
- end
- if v:FindFirstChildOfClass("Decal") and v.Name == "face" then
- -- v:Destroy()
- end
- local vp = Create("BodyVelocity")({P = 500, maxForce = Vector3.new(1000, 1000, 1000), velocity = Vector3.new(math.random(-10,10),4,math.random(-10,10)) })
- vp.Parent = v
- game:GetService("Debris"):AddItem(vp, math.random(50,100)/1000)
- end
- end
- wait(.2)
- end
- wait(.1)
- --Cso("1448044156", FoundTorso,2, .8)
- h.Parent:BreakJoints()
- for _,v in pairs(h.Parent:children()) do
- if v:IsA("BasePart")and v.Parent:FindFirstChildOfClass("Humanoid") then
- v.Anchored=false
- -- v.Material = "Neon"
- --v.BrickColor = BrickColor.new("Really red")
- if v:FindFirstChildOfClass("SpecialMesh")then
- --v:Destroy()
- end
- if v:FindFirstChildOfClass("Decal") and v.Name == "face" then
- -- v:Destroy()
- end
- local vp = Create("BodyVelocity")({P = 500, maxForce = Vector3.new(1000, 1000, 1000), velocity = Vector3.new(math.random(-10,10),4,math.random(-10,10)) })
- vp.Parent = v
- game:GetService("Debris"):AddItem(vp, math.random(100,200)/1000)
- end
- end
- end))
- wait(.1)
- end
- end))
- if h ~= nil and hit.Parent ~= char and hit.Parent:FindFirstChild("Torso") or hit.Parent:FindFirstChild("UpperTorso") ~= nil then
- if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
- return
- end
- local c = Create("ObjectValue"){
- Name = "creator",
- Value = game:service("Players").LocalPlayer,
- Parent = h,
- }
- game:GetService("Debris"):AddItem(c, .5)
- if HitSound ~= nil and HitPitch ~= nil then
- CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
- end
- local Damage = math.random(minim, maxim)
- local blocked = false
- local block = hit.Parent:findFirstChild("Block")
- if block ~= nil then
- if block.className == "IntValue" then
- if block.Value > 0 then
- blocked = true
- block.Value = block.Value - 1
- print(block.Value)
- end
- end
- end
- if blocked == false then
- h.Health = h.Health - Damage
- ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)+Vector3.new(Mrandom(-2,2),0,Mrandom(-2,2))), -Damage, 1.5, tors.BrickColor.Color)
- else
- h.Health = h.Health - (Damage / 2)
- ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)+Vector3.new(Mrandom(-2,2),0,Mrandom(-2,2))), -Damage, 1.5, tors.BrickColor.Color)
- end
- if Type == "Knockdown" then
- local hum = hit.Parent.Humanoid
- hum.PlatformStand = true
- coroutine.resume(coroutine.create(function(HHumanoid)
- swait(1)
- HHumanoid.PlatformStand = false
- end), hum)
- local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
- local bodvol = Create("BodyVelocity"){
- velocity = angle * knockback,
- P = 5000,
- maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
- Parent = hit,
- }
- local rl = Create("BodyAngularVelocity"){
- P = 3000,
- maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
- angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
- Parent = hit,
- }
- game:GetService("Debris"):AddItem(bodvol, .5)
- game:GetService("Debris"):AddItem(rl, .5)
- elseif Type == "Normal" then
- local vp = Create("BodyVelocity"){
- P = 500,
- maxForce = Vector3.new(math.huge, 0, math.huge),
- velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
- }
- if knockback > 0 then
- vp.Parent = hit.Parent.Torso
- end
- game:GetService("Debris"):AddItem(vp, .5)
- elseif Type == "Up" then
- local bodyVelocity = Create("BodyVelocity"){
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
- Parent = hit,
- }
- game:GetService("Debris"):AddItem(bodyVelocity, .5)
- elseif Type == "DarkUp" then
- coroutine.resume(coroutine.create(function()
- for i = 0, 1, 0.1 do
- swait()
- Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
- end
- end))
- local bodyVelocity = Create("BodyVelocity"){
- velocity = Vector3.new(0, 20, 0),
- P = 5000,
- maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
- Parent = hit,
- }
- game:GetService("Debris"):AddItem(bodyVelocity, 1)
- elseif Type == "Snare" then
- local bp = Create("BodyPosition"){
- P = 2000,
- D = 100,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso,
- }
- game:GetService("Debris"):AddItem(bp, 1)
- elseif Type == "Freeze" then
- local BodPos = Create("BodyPosition"){
- P = 50000,
- D = 1000,
- maxForce = Vector3.new(math.huge, math.huge, math.huge),
- position = hit.Parent.Torso.Position,
- Parent = hit.Parent.Torso,
- }
- local BodGy = Create("BodyGyro") {
- maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
- P = 20e+003,
- Parent = hit.Parent.Torso,
- cframe = hit.Parent.Torso.CFrame,
- }
- hit.Parent.Torso.Anchored = true
- coroutine.resume(coroutine.create(function(Part)
- swait(1.5)
- Part.Anchored = false
- end), hit.Parent.Torso)
- game:GetService("Debris"):AddItem(BodPos, 3)
- game:GetService("Debris"):AddItem(BodGy, 3)
- end
- local debounce = Create("BoolValue"){
- Name = "DebounceHit",
- Parent = hit.Parent,
- Value = true,
- }
- game:GetService("Debris"):AddItem(debounce, Delay)
- c = Create("ObjectValue"){
- Name = "creator",
- Value = Player,
- Parent = h,
- }
- game:GetService("Debris"):AddItem(c, .5)
- end
- end
- -------------------------------------------------------
- --End Damage Function--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start Damage Function Customization--
- -------------------------------------------------------
- function Tween(obj,props,time,easing,direction,repeats,backwards)
- local info = TweenInfo.new(time or .5, easing or Enum.EasingStyle.Quad, direction or Enum.EasingDirection.Out, repeats or 0, backwards or false)
- local tween = game.TweenService:Create(obj, info, props)
- tween:Play()
- end
- function ShowDamage(Pos, Text, Time, Color)
- local Rate = (1 / 30)
- 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 = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
- EffectPart.Anchored = true
- local BillboardGui = NewInstance("BillboardGui",EffectPart,{
- Size = UDim2.new(3, 0, 3, 0),
- Adornee = EffectPart,
- })
- local TextLabel = NewInstance("TextLabel",BillboardGui,{
- BackgroundTransparency = 1,
- Size = UDim2.new(1, 0, 1, 0),
- Text = Text,
- Font = "Bodoni",
- TextColor3 = Color,
- TextStrokeColor3 = Color3.new(0,0,0),
- TextStrokeTransparency=0,
- TextScaled = true,
- })
- game.Debris:AddItem(EffectPart, (Time))
- EffectPart.Parent = game:GetService("Workspace")
- delay(0, function()
- Tween(EffectPart,{CFrame=CF(Pos)*CF(0.5,0,0.1)},Time,Enum.EasingStyle.Elastic,Enum.EasingDirection.Out)
- local Frames = (Time / Rate)
- for Frame = 1, Frames do
- wait(Rate)
- local Percent = (Frame / Frames)
- EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
- TextLabel.TextTransparency = Percent
- end
- if EffectPart and EffectPart.Parent then
- EffectPart:Destroy()
- end
- end)
- end
- -------------------------------------------------------
- --End Damage Function Customization--
- -------------------------------------------------------
- function MagniDamage(Part, magni, mindam, maxdam, knock, Type)
- for _, c in pairs(workspace:children()) do
- local hum = c:findFirstChild("Humanoid")
- if hum ~= nil then
- local head = c:findFirstChild("Head")
- if head ~= nil then
- local targ = head.Position - Part.Position
- local mag = targ.magnitude
- if magni >= mag and c.Name ~= plr.Name then
- Damage(head, head, mindam, maxdam, knock, Type, root, 0.1, "http://www.roblox.com/asset/?id=0", 1.2)
- end
- end
- end
- end
- end
- CFuncs = {
- Part = {
- Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part")({
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material
- })
- RemoveOutlines(Part)
- return Part
- end
- },
- Mesh = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh)({
- Parent = Part,
- Offset = OffSet,
- Scale = Scale
- })
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end
- },
- Mesh = {
- Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh)({
- Parent = Part,
- Offset = OffSet,
- Scale = Scale
- })
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end
- },
- Weld = {
- Create = function(Parent, Part0, Part1, C0, C1)
- local Weld = Create("Weld")({
- Parent = Parent,
- Part0 = Part0,
- Part1 = Part1,
- C0 = C0,
- C1 = C1
- })
- return Weld
- end
- },
- Sound = {
- Create = function(id, par, vol, pit)
- coroutine.resume(coroutine.create(function()
- local S = Create("Sound")({
- Volume = vol,
- Pitch = pit or 1,
- SoundId = id,
- Parent = par or workspace
- })
- wait()
- S:play()
- game:GetService("Debris"):AddItem(S, 6)
- end))
- end
- },
- ParticleEmitter = {
- Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
- local fp = Create("ParticleEmitter")({
- Parent = Parent,
- Color = ColorSequence.new(Color1, Color2),
- LightEmission = LightEmission,
- Size = Size,
- Texture = Texture,
- Transparency = Transparency,
- ZOffset = ZOffset,
- Acceleration = Accel,
- Drag = Drag,
- LockedToPart = LockedToPart,
- VelocityInheritance = VelocityInheritance,
- EmissionDirection = EmissionDirection,
- Enabled = Enabled,
- Lifetime = LifeTime,
- Rate = Rate,
- Rotation = Rotation,
- RotSpeed = RotSpeed,
- Speed = Speed,
- VelocitySpread = VelocitySpread
- })
- return fp
- end
- }
- }
- function RemoveOutlines(part)
- part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
- end
- function CreatePart(FormFactor, Parent, Material, Reflectance, Transparency, BColor, Name, Size)
- local Part = Create("Part")({
- formFactor = FormFactor,
- Parent = Parent,
- Reflectance = Reflectance,
- Transparency = Transparency,
- CanCollide = false,
- Locked = true,
- BrickColor = BrickColor.new(tostring(BColor)),
- Name = Name,
- Size = Size,
- Material = Material
- })
- RemoveOutlines(Part)
- return Part
- end
- function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
- local Msh = Create(Mesh)({
- Parent = Part,
- Offset = OffSet,
- Scale = Scale
- })
- if Mesh == "SpecialMesh" then
- Msh.MeshType = MeshType
- Msh.MeshId = MeshId
- end
- return Msh
- end
- function CreateWeld(Parent, Part0, Part1, C0, C1)
- local Weld = Create("Weld")({
- Parent = Parent,
- Part0 = Part0,
- Part1 = Part1,
- C0 = C0,
- C1 = C1
- })
- return Weld
- end
- -------------------------------------------------------
- --Start Effect Function--
- -------------------------------------------------------
- EffectModel = Instance.new("Model", char)
- Effects = {
- Block = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
- local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- if Type == 1 or Type == nil then
- table.insert(Effects, {
- prt,
- "Block1",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- elseif Type == 2 then
- table.insert(Effects, {
- prt,
- "Block2",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- else
- table.insert(Effects, {
- prt,
- "Block3",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- end
- },
- Sphere = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- },
- Cylinder = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- },
- Wave = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1 / 60, y1 / 60, z1 / 60))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3 / 60,
- y3 / 60,
- z3 / 60,
- msh
- })
- end
- },
- Ring = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- },
- Break = {
- Create = function(brickcolor, cframe, x1, y1, z1)
- local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
- prt.Anchored = true
- prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- local num = math.random(10, 50) / 1000
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Shatter",
- num,
- prt.CFrame,
- math.random() - math.random(),
- 0,
- math.random(50, 100) / 100
- })
- end
- },
- Spiral = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://1051557", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- },
- Push = {
- Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
- local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
- prt.Anchored = true
- prt.CFrame = cframe
- local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://437347603", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
- game:GetService("Debris"):AddItem(prt, 10)
- table.insert(Effects, {
- prt,
- "Cylinder",
- delay,
- x3,
- y3,
- z3,
- msh
- })
- end
- }
- }
- function part(formfactor ,parent, reflectance, transparency, brickcolor, name, size)
- local fp = IT("Part")
- fp.formFactor = formfactor
- fp.Parent = parent
- fp.Reflectance = reflectance
- fp.Transparency = transparency
- fp.CanCollide = false
- fp.Locked = true
- fp.BrickColor = brickcolor
- fp.Name = name
- fp.Size = size
- fp.Position = tors.Position
- RemoveOutlines(fp)
- fp.Material = "SmoothPlastic"
- fp:BreakJoints()
- return fp
- end
- function mesh(Mesh,part,meshtype,meshid,offset,scale)
- local mesh = IT(Mesh)
- mesh.Parent = part
- if Mesh == "SpecialMesh" then
- mesh.MeshType = meshtype
- if meshid ~= "nil" then
- mesh.MeshId = "http://www.roblox.com/asset/?id="..meshid
- end
- end
- mesh.Offset = offset
- mesh.Scale = scale
- return mesh
- end
- function Magic(bonuspeed, type, pos, scale, value, color, MType)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = color
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = MType
- rngm.Scale = scale
- local scaler2 = 1
- if type == "Add" then
- scaler2 = 1 * value
- elseif type == "Divide" then
- scaler2 = 1 / value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0, 10 / bonuspeed, 0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01 * value / bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01 / value * bonuspeed
- end
- rng.Transparency = rng.Transparency + 0.01 * bonuspeed
- rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, scaler2 * bonuspeed)
- end
- rng:Destroy()
- end))
- end
- function ManSlaughter(MAN)
- if MAN then
- local ROOT = MAN:FindFirstChild("HumanoidRootPart")
- if ROOT then
- ROOT:Remove()
- end
- local MANHUM = MAN:FindFirstChildOfClass("Humanoid")
- if MANHUM then
- MANHUM.BreakJointsOnDeath = false
- MANHUM.Health = 0
- end
- if MAN:FindFirstChild("R6Ragdoll") == nil and MAN:FindFirstChild("R15Ragdoll") == nil then
- if MAN:FindFirstChild("UpperTorso") then
- local SCRIPT = script.R15Ragdoll:Clone()
- SCRIPT.Parent = MAN
- SCRIPT.Disabled = false
- else
- local SCRIPT = script.R6Ragdoll:Clone()
- SCRIPT.Parent = MAN
- SCRIPT.Disabled = false
- end
- local TORSO = MAN:FindFirstChild("Torso") or MAN:FindFirstChild("UpperTorso")
- if TORSO then
- --NewSound({ID = 146594648,PARENT = TORSO,VOLUME = 1,PITCH = MRANDOM(8,12)/10,LOOP = false,MAXDISTANCE = 75,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
- end
- end
- MAN:BreakJoints()
- if MAN:FindFirstChild("Slaughtered") == nil then
- local MARK = IT("Folder",MAN)
- MARK.Name = "Slaughtered"
- else
- if MAN:FindFirstChild("Slaughtered") then
- local TORSO = MAN:FindFirstChild("Torso") or MAN:FindFirstChild("UpperTorso")
- if TORSO then
- TORSO.RotVelocity = Vector3.new(0,Mrandom(-25,25),0)
- end
- end
- end
- end
- end
- function OOFf(dude)
- if dude.Name ~= char then
- --local bgf = IT("BodyGyro", dude.Head or dude.Torso or dude.UpperTorso)
- --bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
- local val = IT("BoolValue", dude)
- val.Name = "IsHit"
- local ds = coroutine.wrap(function()
- ManSlaughter(dude)
- Cso("958257111", dude.Head, 6, 1)
- --Cso("192104941", dude.Torso or dude.UpperTorso, 6, 1)
- wait(0.2)
- target = nil
- coroutine.resume(coroutine.create(function()
- for i, v in pairs(dude:GetChildren()) do
- if v:IsA("Accessory") then
- v:Destroy()
- end
- if v:IsA("Humanoid") then
- v:Destroy()
- end
- if v:IsA("CharacterMesh") then
- v:Destroy()
- end
- if v:IsA("Model") then
- v:Destroy()
- end
- if v:IsA("Part") or v:IsA("MeshPart") then
- for x, o in pairs(v:GetChildren()) do
- if o:IsA("Decal") then
- o:Destroy()
- end
- end
- coroutine.resume(coroutine.create(function()
- --v.Material = "Neon"
- v.CanCollide = false
- --[[
- local PartEmmit1 = IT("ParticleEmitter", v)
- PartEmmit1.LightEmission = 1
- PartEmmit1.Texture = "rbxassetid://107081341"
- PartEmmit1.Color = ColorSequence.new(Color3.new (1, .3, 0), Color3.new (.5, 0, 0))
- PartEmmit1.Rate = 100
- PartEmmit1.Lifetime = NumberRange.new(0,1.2)
- PartEmmit1.Size = NumberSequence.new(1.4,0)
- PartEmmit1.Transparency = NumberSequence.new(.1,1)
- PartEmmit1.Speed = NumberRange.new(1,2)
- PartEmmit1.VelocitySpread = 360
- PartEmmit1.Rotation = NumberRange.new(-500, 500)
- PartEmmit1.RotSpeed = NumberRange.new(-100, 100)
- ]]
- local BodPoss = IT("BodyPosition", v)
- BodPoss.P = 3000
- BodPoss.D = 1000
- BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
- BodPoss.position = v.Position + Vector3.new(0, 0.01, 0)
- v.Color = Color3.new(1,0,0)
- coroutine.resume(coroutine.create(function()
- for i = 0, 49 do
- swait(1)
- v.Transparency = v.Transparency + 0.02
- end
- wait(0.5)
- PartEmmit1.Enabled = false
- wait(3)
- v:Destroy()
- dude:Destroy()
- end))
- end))
- end
- end
- end))
- end)
- ds()
- end
- end
- function FindNearestHead(Position, Distance, SinglePlayer)
- if SinglePlayer then
- return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
- end
- local List = {}
- for i, v in pairs(workspace:GetChildren()) do
- if v:IsA("Model") and v:findFirstChild("Head") and v ~= char and Distance >= (v.Head.Position - Position).magnitude then
- table.insert(List, v)
- end
- end
- return List
- end
- function Aura(bonuspeed, FastSpeed, type, pos, x1, y1, z1, value, color, outerpos, MType)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = color
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector * outerpos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = MType
- rngm.Scale = Vector3.new(x1, y1, z1)
- local scaler2 = 1
- local speeder = FastSpeed
- if type == "Add" then
- scaler2 = 1 * value
- elseif type == "Divide" then
- scaler2 = 1 / value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0, 10 / bonuspeed, 0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01 * value / bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01 / value * bonuspeed
- end
- speeder = speeder - 0.01 * FastSpeed * bonuspeed
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector * speeder * bonuspeed
- rng.Transparency = rng.Transparency + 0.01 * bonuspeed
- rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, 0)
- end
- rng:Destroy()
- end))
- end
- function HitboxFunction(Pose, lifetime, siz1, siz2, siz3, Radie, Min, Max, kb, atype)
- local Hitboxpart = Instance.new("Part", EffectModel)
- RemoveOutlines(Hitboxpart)
- Hitboxpart.Size = Vector3.new(siz1, siz2, siz3)
- Hitboxpart.CanCollide = false
- Hitboxpart.Transparency = 1
- Hitboxpart.Anchored = true
- Hitboxpart.CFrame = Pose
- game:GetService("Debris"):AddItem(Hitboxpart, lifetime)
- MagniDamage(Hitboxpart, Radie, Min, Max, kb, atype)
- end
- function SoulSteal(dude)
- if dude.Name ~= char then
- local bgf = IT("BodyGyro", dude.Head)
- bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
- local val = IT("BoolValue", dude)
- val.Name = "IsHit"
- local torso = (dude:FindFirstChild'Head' or dude:FindFirstChild'Torso' or dude:FindFirstChild'UpperTorso' or dude:FindFirstChild'LowerTorso' or dude:FindFirstChild'HumanoidRootPart')
- local soulst = coroutine.wrap(function()
- local soul = Instance.new("Part",dude)
- soul.Size = Vector3.new(1,1,1)
- soul.CanCollide = false
- soul.Anchored = false
- soul.Position = torso.Position
- soul.Transparency = 1
- local PartEmmit1 = IT("ParticleEmitter", soul)
- PartEmmit1.LightEmission = 1
- PartEmmit1.Texture = "rbxassetid://569507414"
- PartEmmit1.Color = ColorSequence.new(maincolor.Color)
- PartEmmit1.Rate = 250
- PartEmmit1.Lifetime = NumberRange.new(1.6)
- PartEmmit1.Size = NumberSequence.new({
- NumberSequenceKeypoint.new(0, 1, 0),
- NumberSequenceKeypoint.new(1, 0, 0)
- })
- PartEmmit1.Transparency = NumberSequence.new({
- NumberSequenceKeypoint.new(0, 0, 0),
- NumberSequenceKeypoint.new(1, 1, 0)
- })
- PartEmmit1.Speed = NumberRange.new(0, 0)
- PartEmmit1.VelocitySpread = 30000
- PartEmmit1.Rotation = NumberRange.new(-360, 360)
- PartEmmit1.RotSpeed = NumberRange.new(-360, 360)
- local BodPoss = IT("BodyPosition", soul)
- BodPoss.P = 3000
- BodPoss.D = 1000
- BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
- BodPoss.position = torso.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
- wait(1.6)
- soul.Touched:connect(function(hit)
- if hit.Parent == char then
- soul:Destroy()
- end
- end)
- wait(1.2)
- while soul do
- swait()
- PartEmmit1.Color = ColorSequence.new(maincolor.Color)
- BodPoss.Position = tors.Position
- end
- end)
- soulst()
- end
- end
- function FaceMouse()
- local Cam = workspace.CurrentCamera
- return {
- CFrame.new(char.Torso.Position, Vector3.new(mouse.Hit.p.x, char.Torso.Position.y, mouse.Hit.p.z)),
- Vector3.new(mouse.Hit.p.x, mouse.Hit.p.y, mouse.Hit.p.z)
- }
- end
- Effects = {
- Block = function(cf,partsize,meshstart,meshadd,matr,colour,spin,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = partsize
- p.Anchored = true
- p.CanCollide = false
- p.Material = matr
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("BlockMesh",p)
- m.Scale = meshstart
- coroutine.wrap(function()
- for i = 0, 1, factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- if spin == true then
- p.CFrame = p.CFrame * CFrame.Angles(math.random(-50,50),math.random(-50,50),math.random(-50,50))
- end
- end
- p:Destroy()
- end)()
- return p
- end,
- Sphere = function(cf,partsize,meshstart,meshadd,matr,colour,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = partsize
- p.Anchored = true
- p.CanCollide = false
- p.Material = matr
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("SpecialMesh",p)
- m.MeshType = "Sphere"
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- end
- p:Destroy()
- end)()
- return p
- end,
- Cylinder = function(cf,partsize,meshstart,meshadd,matr,colour,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = partsize
- p.Anchored = true
- p.CanCollide = false
- p.Material = matr
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("CylinderMesh",p)
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- end
- p:Destroy()
- end)()
- return p
- end,
- Wave = function(cf,meshstart,meshadd,colour,spin,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = Vector3.new()
- p.Anchored = true
- p.CanCollide = false
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("SpecialMesh",p)
- m.MeshId = "rbxassetid://20329976"
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- p.CFrame = p.CFrame * CFrame.Angles(0,math.rad(spin),0)
- end
- p:Destroy()
- end)()
- return p
- end,
- Ring = function(cf,meshstart,meshadd,colour,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = Vector3.new()
- p.Anchored = true
- p.CanCollide = false
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("SpecialMesh",p)
- m.MeshId = "rbxassetid://3270017"
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- end
- p:Destroy()
- end)()
- return p
- end,
- Meshed = function(cf,meshstart,meshadd,colour,meshid,textid,spin,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = Vector3.new()
- p.Anchored = true
- p.CanCollide = false
- p.CFrame = cf
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("SpecialMesh",p)
- m.MeshId = meshid
- m.TextureId = textid
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- p.CFrame = p.CFrame * CFrame.Angles(0,math.rad(spin),0)
- end
- p:Destroy()
- end)()
- return p
- end,
- Explode = function(cf,partsize,meshstart,meshadd,matr,colour,move,inverse,factor)
- local p = Instance.new("Part",EffectModel)
- p.BrickColor = BrickColor.new(colour)
- p.Size = partsize
- p.Anchored = true
- p.CanCollide = false
- p.Material = matr
- p.CFrame = cf * CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
- if inverse == true then
- p.Transparency = 1
- else
- p.Transparency = 0
- end
- local m = Instance.new("SpecialMesh",p)
- m.MeshType = "Sphere"
- m.Scale = meshstart
- coroutine.wrap(function()
- for i=0,1,factor do
- swait()
- if inverse == true then
- p.Transparency = 1-i
- else
- p.Transparency = i
- end
- m.Scale = m.Scale + meshadd
- p.CFrame = p.CFrame * CFrame.new(0,move,0)
- end
- p:Destroy()
- end)()
- return p
- end,
- }
- function PixelBlockX(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos)
- local type = type
- local rng = Instance.new("Part", char)
- rng.Anchored = true
- rng.BrickColor = color
- rng.CanCollide = false
- rng.FormFactor = 3
- rng.Name = "Ring"
- rng.Material = "Neon"
- rng.Size = Vector3.new(1, 1, 1)
- rng.Transparency = 0
- rng.TopSurface = 0
- rng.BottomSurface = 0
- rng.CFrame = pos
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
- local rngm = Instance.new("SpecialMesh", rng)
- rngm.MeshType = "Brick"
- rngm.Scale = Vector3.new(x1,y1,z1)
- local scaler2 = 1
- local speeder = FastSpeed/10
- if type == "Add" then
- scaler2 = 1*value
- elseif type == "Divide" then
- scaler2 = 1/value
- end
- coroutine.resume(coroutine.create(function()
- for i = 0,10/bonuspeed,0.1 do
- swait()
- if type == "Add" then
- scaler2 = scaler2 - 0.01*value/bonuspeed
- elseif type == "Divide" then
- scaler2 = scaler2 - 0.01/value*bonuspeed
- end
- speeder = speeder - 0.01*FastSpeed*bonuspeed/10
- rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
- rng.Transparency = rng.Transparency + 0.01*bonuspeed
- rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
- end
- rng:Destroy()
- end))
- end
- function CrP(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
- local NEWPART = IT("Part")
- NEWPART.formFactor = FORMFACTOR
- NEWPART.Reflectance = REFLECTANCE
- NEWPART.Transparency = TRANSPARENCY
- NEWPART.CanCollide = false
- NEWPART.Locked = true
- NEWPART.Anchored = true
- if ANCHOR == false then
- NEWPART.Anchored = false
- end
- NEWPART.BrickColor = BrickC(tostring(BRICKCOLOR))
- NEWPART.Name = NAME
- NEWPART.Size = SIZE
- NEWPART.Position = tors.Position
- NEWPART.Material = MATERIAL
- NEWPART:BreakJoints()
- NEWPART.Parent = PARENT
- return NEWPART
- end
- function CrM(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
- local NEWMESH = IT(MESH)
- if MESH == "SpecialMesh" then
- NEWMESH.MeshType = MESHTYPE
- if MESHID ~= "nil" and MESHID ~= "" then
- NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
- end
- if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
- NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
- end
- end
- NEWMESH.Offset = OFFSET or Vector3.new(0, 0, 0)
- NEWMESH.Scale = SCALE
- NEWMESH.Parent = PARENT
- return NEWMESH
- end
- local BEGONE_Particle = Create("ParticleEmitter"){
- Color = ColorSequence.new(Color3.new (1,1,1), Color3.new (1, 1, 1)),
- Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.1,0),NumberSequenceKeypoint.new(0.3,0),NumberSequenceKeypoint.new(0.5,.2),NumberSequenceKeypoint.new(1,1)}),
- Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0),NumberSequenceKeypoint.new(.15,1.5),NumberSequenceKeypoint.new(.75,1.5),NumberSequenceKeypoint.new(1,0)}),
- Texture = "rbxassetid://936193661",
- Lifetime = NumberRange.new(1.5),
- Rate = 5,
- VelocitySpread = 0,
- Rotation = NumberRange.new(0),
- RotSpeed = NumberRange.new(-10,10),
- Speed = NumberRange.new(0),
- LightEmission = .25,
- LockedToPart = true,
- Acceleration = Vector3.new(0, -0, 0),
- EmissionDirection = "Top",
- Drag = 4,
- ZOffset = 1,
- Enabled = false
- }
- function weld(parent,part0,part1,c0)
- local weld=IT("Weld")
- weld.Parent=parent
- weld.Part0=part0
- weld.Part1=part1
- weld.C0=c0
- return weld
- end
- local Effs = IT("Folder", char)
- Effs.Name = "Effects"
- function WACKYEFFECT(Table)
- local TYPE = (Table.EffectType or "Sphere")
- local SIZE = (Table.Size or Vector3.new(1,1,1))
- local ENDSIZE = (Table.Size2 or Vector3.new(0,0,0))
- local TRANSPARENCY = (Table.Transparency or 0)
- local ENDTRANSPARENCY = (Table.Transparency2 or 1)
- local CFRAME = (Table.CFrame or tors.CFrame)
- local MOVEDIRECTION = (Table.MoveToPos or nil)
- local ROTATION1 = (Table.RotationX or 0)
- local ROTATION2 = (Table.RotationY or 0)
- local ROTATION3 = (Table.RotationZ or 0)
- local MATERIAL = (Table.Material or "Neon")
- local COLOR = (Table.Color or Color3.new(1,1,1))
- local TIME = (Table.Time or 45)
- local SOUNDID = (Table.SoundID or nil)
- local SOUNDPITCH = (Table.SoundPitch or nil)
- local SOUNDVOLUME = (Table.SoundVolume or nil)
- coroutine.resume(coroutine.create(function()
- local PLAYSSOUND = false
- local SOUND = nil
- local EFFECT = CrP(3, Effs, MATERIAL, 0, TRANSPARENCY, BrickC("Pearl"), "Effect", Vector3.new(1,1,1), true)
- if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
- PLAYSSOUND = true
- SOUND = Cso(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH)
- end
- EFFECT.Color = COLOR
- local MSH = nil
- if TYPE == "Sphere" then
- MSH = CrM("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, Vector3.new(0,0,0))
- elseif TYPE == "Block" or TYPE == "Box" then
- MSH = IT("BlockMesh",EFFECT)
- MSH.Scale = SIZE
- elseif TYPE == "Wave" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, Vector3.new(0,0,-SIZE.X/8))
- elseif TYPE == "Ring" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "559831844", "", Vector3.new(SIZE.X,SIZE.X,0.1), Vector3.new(0,0,0))
- elseif TYPE == "Slash" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "662586858", "", Vector3.new(SIZE.X/10,0,SIZE.X/10), Vector3.new(0,0,0))
- elseif TYPE == "Round Slash" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "662585058", "", Vector3.new(SIZE.X/10,0,SIZE.X/10), Vector3.new(0,0,0))
- elseif TYPE == "Swirl" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, Vector3.new(0,0,0))
- elseif TYPE == "Skull" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, Vector3.new(0,0,0))
- elseif TYPE == "Crystal" then
- MSH = CrM("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, Vector3.new(0,0,0))
- end
- if MSH ~= nil then
- local MOVESPEED = nil
- if MOVEDIRECTION ~= nil then
- MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
- end
- local GROWTH = SIZE - ENDSIZE
- local TRANS = TRANSPARENCY - ENDTRANSPARENCY
- if TYPE == "Block" then
- EFFECT.CFrame = CFRAME*angles(Rad(Mrandom(0,360)),Rad(Mrandom(0,360)),Rad(Mrandom(0,360)))
- else
- EFFECT.CFrame = CFRAME
- end
- for LOOP = 1, TIME+1 do
- swait()
- MSH.Scale = MSH.Scale - GROWTH/TIME
- if TYPE == "Wave" then
- MSH.Offset = Vector3.new(0,0,-MSH.Scale.X/8)
- end
- EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
- if TYPE == "Block" then
- EFFECT.CFrame = CFRAME*angles(Rad(Mrandom(0,360)),Rad(Mrandom(0,360)),Rad(Mrandom(0,360)))
- else
- EFFECT.CFrame = EFFECT.CFrame*angles(Rad(ROTATION1),Rad(ROTATION2),Rad(ROTATION3))
- end
- if MOVEDIRECTION ~= nil then
- local ORI = EFFECT.Orientation
- EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
- EFFECT.Orientation = ORI
- end
- end
- if PLAYSSOUND == false then
- EFFECT:remove()
- else
- repeat swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
- EFFECT:remove()
- end
- else
- if PLAYSSOUND == false then
- EFFECT:remove()
- else
- repeat swait() until EFFECT:FindFirstChildOfClass("Sound") == nil
- EFFECT:remove()
- end
- end
- end))
- end
- -------------------------------------------------------
- --End Effect Function--
- -------------------------------------------------------
- function Cso(ID, PARENT, VOLUME, PITCH)
- local NSound = nil
- coroutine.resume(coroutine.create(function()
- NSound = IT("Sound", PARENT)
- NSound.Volume = VOLUME
- NSound.Pitch = PITCH
- NSound.SoundId = "http://www.roblox.com/asset/?id="..ID
- swait()
- NSound:play()
- game:GetService("Debris"):AddItem(NSound, 10)
- end))
- return NSound
- end
- NewInstance = function(instance,parent,properties)
- local inst = Instance.new(instance)
- inst.Parent = parent
- if(properties)then
- for i,v in next, properties do
- pcall(function() inst[i] = v end)
- end
- end
- return inst;
- end
- New = function(Object, Parent, Name, Data)
- local Object = Instance.new(Object)
- for Index, Value in pairs(Data or {}) do
- Object[Index] = Value
- end
- Object.Parent = Parent
- Object.Name = Name
- return Object
- end
- function SHAKECAM(POSITION,RANGE,INTENSITY,TIME)
- local CHILDREN = workspace:GetDescendants()
- for index, CHILD in pairs(CHILDREN) do
- if CHILD.ClassName == "Model" then
- local HUM = CHILD:FindFirstChildOfClass("Humanoid")
- if HUM then
- local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
- if TORSO then
- if (TORSO.Position - POSITION).Magnitude <= RANGE then
- local CAMSHAKER = script.CamShake:Clone()
- CAMSHAKER.Shake.Value = INTENSITY
- CAMSHAKER.Timer.Value = TIME
- CAMSHAKER.Parent = CHILD
- CAMSHAKER.Disabled = false
- end
- end
- end
- end
- end
- end
- -------------------------------------------------------
- --End Important Functions--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start Customization--
- -------------------------------------------------------
- hats = Instance.new("Model",char)
- hats2 = Instance.new("Model",hats)
- ezweld = function(p, a, b, cf)
- local weld = Instance.new("Weld",p)
- weld.Part0 = a
- weld.Part1 = b
- weld.C0 = cf
- return weld
- end
- bighead = Instance.new("Part",hats2)
- bighead.CanCollide = false
- bighead.Size = Vector3.new(0.1, 0.1, 0.1)
- bighead.Name = "OofHead"
- bigmesh = Instance.new("SpecialMesh",bighead)
- bigmesh.MeshId = "rbxassetid://2333745532"
- bigmesh.TextureId = "rbxassetid://2333750544"
- --bigweld = ezweld(char, bighead, hed, CFrame.new(0, -0.45, 0))
- bomb = Instance.new("Part",hats2)
- bomb.CanCollide = false
- bomb.Size = Vector3.new(0.1, 0.1, 0.1)
- bomb.Name = "Bom"
- bombmesh = Instance.new("SpecialMesh",bomb)
- bombmesh.MeshId = "rbxasset://fonts/timebomb.mesh"
- bombmesh.TextureId = "rbxasset://textures/bombtex.png"
- bombmesh.Scale = Vector3.new(0.8, 0.8, 0.8)
- bombweld = ezweld(char, bomb, bighead, CFrame.new(0, 0, 0) * CFrame.Angles(77, 77, 0))
- local Hats = bighead
- local HatsWeld = IT("Weld")
- HatsWeld.Parent = hed
- HatsWeld.Part0 = hed
- HatsWeld.Part1 = Hats
- HatsWeld.C0 = CF(0, 0.4, -0.1) * angles(Rad(0), Rad(0), Rad(0))
- ----------------------------------------------------------------------------------
- local SONG = 2743829704
- local SONG2 = 0
- ----------------------------------------------------------------------------------
- local equipped = false
- local idle = 0
- local change = 1
- local val = 0
- local toim = 0
- local idleanim = 0.4
- local sine = 0
- local movelegs = false
- local FF = Instance.new("ForceField",char)
- FF.Visible = false
- local Speed = 16
- local Jump = 80
- local rK = false
- local DBT = false
- local CurrentS = 0
- local Paused = false
- ----------------------------------------------------------------------------------
- hum.Animator.Parent = nil
- char.Animate.Parent = nil
- hum.MaxHealth = 100
- hum.Health = 100
- ----------------------------------------------------------------------------------
- local Weapun = script.Sword
- local WeapunTrail = script.Sword.Trail
- Weapun.Anchored = false
- WeapunTrail.Enabled = false
- local WeapunWeld = IT("Weld")
- WeapunWeld.Parent = Weapun
- WeapunWeld.Part0 = Weapun
- WeapunWeld.Part1 = ra
- WeapunWeld.C0 = CF(1, 0, -1.3) * angles(Rad(0), Rad(180), Rad(90))
- ----------------------------------------------------------------------------------
- local sODa = script.Sod
- sODa.Anchored = false
- local SodWeld = IT("Weld")
- SodWeld.Parent = sODa
- SodWeld.Part0 = sODa
- SodWeld.Part1 = ra
- SodWeld.C0 = CF(-1, 0, -0) * angles(Rad(90), Rad(0), Rad(90))
- ----------------------------------------------------------------------------------
- -------------------------------------------------------
- --End Customization--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start Attacks N Stuff--
- -------------------------------------------------------
- function Land(SR)
- spawn(function()
- if DBT == false and attack == true and SR < -15 and rK == false then
- DBT = true
- Speed = Speed / 2
- Jump = 0
- Cso("268933900", root, 6.5, 1)
- for i = 0, 2, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -1.1 + 0.1 * Cos(sine / 20)) * angles(Rad(10), Rad(0), Rad(0)), 0.15)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(15 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.15)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, 0.1 - 0.1 * Cos(sine / 20), -0.3) * angles(Rad(15), Rad(-8 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(-3.5), Rad(0), Rad(2)), 0.15)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, 0.1 - 0.1 * Cos(sine / 20), -0.3) * angles(Rad(15), Rad(8 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(-3.5), Rad(0), Rad(-2)), 0.15)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.02 * Sin(sine / 20), 0) * angles(Rad(20), Rad(-0.6), Rad(25 + 4.5 * Sin(sine / 20))), 0.15)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.02 * Sin(sine / 20), 0) * angles(Rad(20), Rad(-0.6), Rad(-25 - 4.5 * Sin(sine / 20))), 0.15)
- end
- attack = false
- spawn(function()
- wait(0.1)
- Speed = 16
- Jump = 80
- DBT = false
- end)
- else
- attack = false
- end
- end)
- end
- function AttackTemplate()
- attack = true
- movelegs = false
- Speed = 16
- for i = 0, 6, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.05)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(0 - 6 * Cos(sine / 8)), Rad(0 - 10 * Sin(sine / 12)), Rad(-0 + 5 * Cos(sine / 16))), 0.05)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(0), Rad(10 + 5 * Cos(sine / 8))), 0.05)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.05)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.05)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.05)
- end
- attack = false
- movelegs = false
- Speed = 16
- end
- function Death()
- local TARGET = mouse.Target
- if TARGET ~= nil then
- if TARGET.Parent:FindFirstChildOfClass("Humanoid") then
- local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
- local ROOT = TARGET.Parent:FindFirstChild("HumanoidRootPart") or TARGET.Parent:FindFirstChild("Torso") or TARGET.Parent:FindFirstChild("UpperTorso")
- if ROOT and HUM.Health > 0 then
- local FOE = mouse.Target.Parent
- local HEAD = FOE:FindFirstChild("Head")
- if HEAD then
- attack = true
- movelegs = false
- Speed = 0
- local Perms = Cso("928990573", hed, 6, 1)
- NewParticle1.Enabled = true
- NewParticle2.Enabled = true
- wait(0.1)
- repeat
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(30)), 0.05)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(0 - 6 * Cos(sine / 8)), Rad(0 - 10 * Sin(sine / 12)), Rad(-30 + 5 * Cos(sine / 16))), 0.05)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(95 + 8.5 * Sin(sine / 16)), Rad(0), Rad(10 + 5 * Cos(sine / 8))), 0.05)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.05)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.05)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.05)
- until Perms.Playing == false
- NewParticle1.Enabled = false
- NewParticle2.Enabled = false
- OOFf(FOE)
- attack = false
- movelegs = false
- Speed = 16
- end
- end
- end
- end
- end
- function Sipper()
- attack = true
- movelegs = false
- Speed = 0
- sODa.Transparency = 0
- local drink = Cso("10722059", sODa, 5.9, 1)
- script.Model.Model.BigOof.Mesh.TextureId = "rbxassetid://2333750544"
- wait(0.1)
- repeat
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.05)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(-15), Rad(0), Rad(-0)), 0.05)
- RW.C0 = clerp(RW.C0, CF(1.1, 0.5, -0.5) * angles(Rad(145), Rad(0), Rad(-40)), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.05)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.05)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.05)
- until drink.Playing == false
- attack = false
- movelegs = false
- Speed = 16
- sODa.Transparency = 1
- script.Model.Model.BigOof.Mesh.TextureId = "rbxassetid://2333750544"
- end
- function Click()
- attack = true
- movelegs = false
- Speed = 8
- for i = 0, 6, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(0 - 6 * Cos(sine / 8)), Rad(20), Rad(-0)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(180 + 8.5 * Sin(sine / 16)), Rad(0), Rad(30 + 5 * Cos(sine / 8))), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.1)
- end
- local BomB = IT("Explosion", workspace)
- BomB.Position = hed.Position
- BomB.BlastRadius = 10
- Cso("440145223", hed, 6, 1.7)
- for i = 0, 3, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(0 - 6 * Cos(sine / 8)), Rad(-5), Rad(-0)), 0.5)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(180 + 8.5 * Sin(sine / 16)), Rad(0), Rad(-20 + 5 * Cos(sine / 8))), 0.5)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.1)
- end
- attack = false
- movelegs = false
- Speed = 16
- end
- function Dangbelikethat()
- attack = true
- Speed = 3
- Cso("164174763", hed, 4.7, 1)
- bigmesh.TextureId = "rbxassetid://2333750544"
- for i = 0, 5, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(-30 - 6 * Cos(sine / 8)), Rad(0), Rad(-0)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(120 + 8.5 * Sin(sine / 16)), Rad(0), Rad(10 + 5 * Cos(sine / 8))), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(120 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.1)
- end
- for i = 0, 3, 0.1 do
- swait()
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(10 - 6 * Cos(sine / 8)), Rad(0), Rad(-0)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(35 + 8.5 * Sin(sine / 16)), Rad(0), Rad(10 + 5 * Cos(sine / 8))), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(35 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.1)
- end
- attack = false
- Speed = 16
- bigmesh.TextureId = "rbxassetid://2333750544"
- end
- function Slash()
- attack = true
- movelegs = true
- Speed = 6
- WeapunTrail.Enabled = true
- Weapun.Transparency = 0
- for i = 0, 1.1, 0.1 do
- swait()
- WeapunWeld.C0 = clerp(WeapunWeld.C0, CF(1, 0, -1.7) * angles(Rad(0), Rad(180), Rad(90)), 0.1)
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, 0 + 0.05 * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(-27)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(-2 - 7 * Cos(sine / 20)), Rad(0), Rad(27)), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(-7), Rad(-20), Rad(0)) * angles(Rad(0), Rad(0), Rad(9)), 0.2)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(2), Rad(9), Rad(0)) * angles(Rad(0), Rad(0), Rad(-3)), 0.2)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(185), Rad(65), Rad(10)), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(-20 + 7 * Cos(sine / 26)), Rad(23), Rad(-16 - 9 * Sin(sine / 20))), 0.1)
- end
- Cso("158037267", Weapun, 4.8, Mrandom(8,13)/12)
- local NoConstant = false
- local Hitter = Weapun.HitBox.Touched:connect(function(hit)
- local HUMA = hit.Parent:FindFirstChildOfClass("Humanoid")
- local TORSO = hit.Parent:FindFirstChild("Torso")
- if HUMA ~= nil then
- if NoConstant == false then
- NoConstant = true
- HUMA.Health = HUMA.Health - 20
- Cso("935843979", TORSO, 6.8, Mrandom(8,13)/12)
- end
- end
- end)
- for i = 0, 1.3, 0.1 do
- swait()
- WeapunWeld.C0 = clerp(WeapunWeld.C0, CF(1, 0, -1.7) * angles(Rad(0), Rad(210), Rad(90)), 0.3)
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, 0 + 0.05 * Cos(sine / 20)) * angles(Rad(9), Rad(0), Rad(47)), 0.3)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(10 - 7 * Cos(sine / 20)), Rad(10), Rad(-27)), 0.3)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(23), Rad(-20), Rad(0)) * angles(Rad(0), Rad(0), Rad(9)), 0.2)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(-19), Rad(9), Rad(0)) * angles(Rad(0), Rad(0), Rad(-3)), 0.2)
- RW.C0 = clerp(RW.C0, CF(1.3, 0.4 + 0.1 * Cos(sine / 20), -0.3) * angles(Rad(45), Rad(15), Rad(-10)), 0.3)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(10 + 7 * Cos(sine / 26)), Rad(23), Rad(-16 - 9 * Sin(sine / 20))), 0.1)
- end
- Hitter:Disconnect()
- WeapunTrail.Enabled = false
- Weapun.Transparency = 1
- WeapunWeld.C0 = CF(1, 0, -1.3) * angles(Rad(0), Rad(180), Rad(90))
- attack = false
- movelegs = false
- Speed = 16
- end
- function Side()
- attack = true
- movelegs = true
- Speed = 6
- WeapunTrail.Enabled = true
- Weapun.Transparency = 0
- for i = 0, 1.4, 0.1 do
- swait()
- WeapunWeld.C0 = clerp(WeapunWeld.C0, CF(1, 0, -1.7) * angles(Rad(-90), Rad(180), Rad(90)), 0.1)
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, 0 + 0.05 * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(77)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(-15 - 7 * Cos(sine / 20)), Rad(0), Rad(-77)), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(-7), Rad(-20), Rad(0)) * angles(Rad(0), Rad(0), Rad(9)), 0.2)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(2), Rad(9), Rad(0)) * angles(Rad(0), Rad(0), Rad(-3)), 0.2)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 20), -0.5) * angles(Rad(65), Rad(5), Rad(-20)), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(-20 + 7 * Cos(sine / 26)), Rad(23), Rad(-16 - 9 * Sin(sine / 20))), 0.1)
- end
- Cso("158037267", Weapun, 4.8, Mrandom(8,13)/12)
- local NoConstant = false
- local Hitter = Weapun.HitBox.Touched:connect(function(hit)
- local HUMA = hit.Parent:FindFirstChildOfClass("Humanoid")
- local TORSO = hit.Parent:FindFirstChild("Torso")
- if HUMA ~= nil then
- if NoConstant == false then
- NoConstant = true
- Damage(hit, hit, 12, 18, 0, "Normal", root, 0.1, nil, nil)
- Cso("935843979", TORSO, 6.8, Mrandom(8,13)/12)
- end
- end
- end)
- for i = 0, 1.6, 0.1 do
- swait()
- WeapunWeld.C0 = clerp(WeapunWeld.C0, CF(1, 0, -1.7) * angles(Rad(-90), Rad(180), Rad(90)), 0.1)
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, 0 + 0.05 * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(-87)), 0.3)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(2 - 7 * Cos(sine / 20)), Rad(10), Rad(87)), 0.3)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(-7), Rad(-20), Rad(0)) * angles(Rad(0), Rad(0), Rad(9)), 0.2)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.05 * Cos(sine / 20), 0) * angles(Rad(2), Rad(9), Rad(0)) * angles(Rad(0), Rad(0), Rad(-3)), 0.2)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 20), -0.2) * angles(Rad(65), Rad(5), Rad(60)), 0.3)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(-20 + 7 * Cos(sine / 26)), Rad(23), Rad(-16 - 9 * Sin(sine / 20))), 0.1)
- end
- Hitter:Disconnect()
- WeapunTrail.Enabled = false
- Weapun.Transparency = 1
- WeapunWeld.C0 = CF(1, 0, -1.3) * angles(Rad(0), Rad(180), Rad(90))
- attack = false
- movelegs = false
- Speed = 16
- end
- -------------------------------------------------------
- --End Attacks N Stuff--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start KeyBinds--
- -------------------------------------------------------
- local Combo = 1
- mouse.Button1Down:connect(function(key)
- if attack == false then
- if Combo == 1 then
- Slash()
- Combo = 2
- elseif Combo == 2 then
- Side()
- Combo = 1
- end
- end
- end)
- mouse.KeyDown:connect(function(key)
- if attack == false then
- if key == "m" then
- local musiclist = {2743807248,2769681478,2744206083,3114733100,3287259630,2874747644,2874751167,2743784498,3117533716,2769678264,2743829704}
- if MUSIC then
- if CurrentS >= #musiclist then
- CurrentS = 0
- end
- CurrentS = CurrentS + 1
- SONG = musiclist[CurrentS]
- MUSIC:Destroy()
- end
- elseif key == "n" and Paused == false then
- Paused = true
- MUSIC:Pause()
- elseif key == "n" and Paused == true then
- Paused = false
- MUSIC:Resume()
- elseif key == "t" then
- Dangbelikethat()
- elseif key == "y" then
- Sipper()
- elseif key == "z" then
- Click()
- elseif key == "x" then
- Death()
- end
- end
- end)
- -------------------------------------------------------
- --Start KeyBinds--
- -------------------------------------------------------
- -------------------------------------------------------
- --Start Animations--
- -------------------------------------------------------
- local forWFB = 0
- local forWRL = 0
- while true do
- swait()
- sine = sine + change
- local torvel = (root.Velocity * Vector3.new(1, 0, 1)).magnitude
- local velderp = root.Velocity.y
- hitfloor, posfloor = rayCast(root.Position, CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0)).lookVector, 4, char)
- neartouch = game:service("Workspace"):FindPartOnRay(Ray.new(root.Position, (CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0))).lookVector.unit * 6), char)
- if equipped == true or equipped == false then
- if not root:FindFirstChild('MUSIC') and Paused ~= true then
- MUSIC = Instance.new('Sound',root)
- MUSIC.SoundId = 'rbxassetid://'.. SONG
- MUSIC.Name = 'MUSIC'
- MUSIC.Volume = 4
- MUSIC.EmitterSize = 10
- MUSIC.Pitch = 1
- MUSIC.Looped = true
- MUSIC:Play()
- end
- local Walking = (math.abs(root.Velocity.x) > 1 or math.abs(root.Velocity.z) > 1)
- local State = (hum.PlatformStand and 'Paralyzed' or hum.Sit and 'Sit' or 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")
- local WALKSPEEDVALUE = 6 / (hum.WalkSpeed / 16)
- local TiltVelocity = CFrame.new(root.CFrame:vectorToObjectSpace(root.Velocity/1.6))
- if(not char:FindFirstChildOfClass'Shirt')then
- NewInstance("Shirt",char,{ShirtTemplate='rbxassetid://131666081'})
- else
- char:FindFirstChildOfClass'Shirt'.ShirtTemplate='rbxassetid://131666081'
- end
- if(not char:FindFirstChildOfClass'Pants')then
- NewInstance("Pants",char,{PantsTemplate='rbxassetid://131667111'})
- else
- char:FindFirstChildOfClass'Pants'.PantsTemplate='rbxassetid://131667111'
- end
- if (State == 'Jump') then
- if attack == false then
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.1 + 0.1 * Cos(sine / 20)) * angles(Rad(10 + 3 * Cos(sine / 20)), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, ((1) - 1)) * angles(Rad(-50 + 6 * Sin(sine / 20)), Rad(0), Rad(0 + 9 * Cos(sine / 38))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -0.8 - 0.1 * Cos(sine / 20) - Rad(0) , -0.3) * angles(Rad(-27 + 3 * Cos(sine / 20)), Rad(-20 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(0 + 1 * Cos(sine / 20)), Rad(0), Rad(5)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -0.5 - 0.1 * Cos(sine / 20) + Rad(0) , -0.7) * angles(Rad(-27 + 3 * Cos(sine / 20)), Rad(20 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(0 - 1 * Cos(sine / 20)), Rad(0), Rad(-5)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(170 + 10 * Cos(sine / 20)), Rad(10), Rad(10 + 6 * Sin(sine / 20))), 0.2)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(170 + 10 * Cos(sine / 20)), Rad(-10), Rad(-10 - 6 * Sin(sine / 20))), 0.2)
- end
- elseif (State == 'Fall') then
- if neartouch ~= nil and attack == false then
- attack = true
- Land(root.Velocity.y)
- end
- if attack == false then
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.1 + 0.1 * Cos(sine / 20)) * angles(Rad(-27 + 3 * Cos(sine / 20)), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, ((1) - 1)) * angles(Rad(20 + 6 * Sin(sine / 20)), Rad(0), Rad(0 + 9 * Cos(sine / 38))), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -0.9 - 0.1 * Cos(sine / 20) - Rad(0) , 0) * angles(Rad(-27 + 3 * Cos(sine / 20)), Rad(-20 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(0 + 1 * Cos(sine / 20)), Rad(0), Rad(5)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -0.9 - 0.1 * Cos(sine / 20) + Rad(0) , 0) * angles(Rad(-27 + 3 * Cos(sine / 20)), Rad(20 + 1 * Cos(sine / 20)), Rad(0)) * angles(Rad(0 - 1 * Cos(sine / 20)), Rad(0), Rad(-5)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(100 + 10 * Cos(sine / 20)), Rad(10), Rad(45 + 6 * Sin(sine / 20))), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 20), 0) * angles(Rad(100 + 10 * Cos(sine / 20)), Rad(-10), Rad(-45 - 6 * Sin(sine / 20))), 0.1)
- end
- elseif (State == 'Idle') then
- --local hell = GetClientProperty(MUSIC,'PlaybackLoudness')/15
- change = 0.5 --+ hell/35
- if attack == false then
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.06 + 0.08 * Cos(sine / 8)) * angles(Rad(0), Rad(0), Rad(0)), 0.05)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(0 - 6 * Cos(sine / 8)), Rad(0 - 10 * Sin(sine / 12)), Rad(-0 + 5 * Cos(sine / 16))), 0.05)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(0), Rad(10 + 5 * Cos(sine / 8))), 0.05)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.1 * Cos(sine / 8), -0.0) * angles(Rad(0 + 8.5 * Sin(sine / 16)), Rad(-7), Rad(-10 - 5 * Cos(sine / 8))), 0.05)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(-6), Rad(0)) * angles(Rad(0), Rad(0), Rad(2)), 0.05)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -1 - 0.08 * Cos(sine / 8), 0.0) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-2)), 0.05)
- end
- elseif (State == 'Walk') then
- change = 0.9
- if attack == false then
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, 0 - 0.25 * Cos(sine / (WALKSPEEDVALUE / 2))) * angles(Rad(6 + 3 * Sin(sine / (WALKSPEEDVALUE / 2))) -Rad(TiltVelocity.z) * 1, Rad(0) -Rad(TiltVelocity.x) * 0.4, Rad(0 - 4.75 * Cos(sine / WALKSPEEDVALUE )) + root.RotVelocity.Y / 75), 0.1)
- neck.C0 = clerp(neck.C0, necko * CF(0, 0, 0 + ((1) - 1)) * angles(Rad(-5 + 5 * Sin(sine / (WALKSPEEDVALUE / 2))), Rad(0), Rad(0) -Rad(TiltVelocity.x) * 3), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -0.9 - 0.35 * Cos(sine / WALKSPEEDVALUE) / 2, -0.2 + 0.6 * Cos(sine / WALKSPEEDVALUE) / 2) * angles(Rad(-5 - 15 * Cos(sine / WALKSPEEDVALUE)) - root.RotVelocity.Y / 75 + -Sin(sine / WALKSPEEDVALUE) / 2.5 * -Rad(TiltVelocity.z) * 10, Rad(0 - 5 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0 + 25 * math.sin(sine / WALKSPEEDVALUE)*-math.rad(TiltVelocity.x)*5.5)), 0.3)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -0.9 + 0.35 * Cos(sine / WALKSPEEDVALUE) / 2, -0.2 - 0.6 * Cos(sine / WALKSPEEDVALUE) / 2) * angles(Rad(-5 + 15 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / -75 + Sin(sine / WALKSPEEDVALUE) / 2.5 * -Rad(TiltVelocity.z) * 10, Rad(0 - 5 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0 + 25 * math.sin(sine / WALKSPEEDVALUE)*math.rad(TiltVelocity.x)*5.5)), 0.3)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.05 * Sin(sine / WALKSPEEDVALUE), 0 - 0.2 * Cos(sine / WALKSPEEDVALUE)) * angles(Rad(50 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / -75 * -math.rad(TiltVelocity.z) * 10, Rad(10 * Cos(sine / WALKSPEEDVALUE)), Rad(5 - 7 * Sin(sine / (WALKSPEEDVALUE / 2))) - root.RotVelocity.Y / 75), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.05 * Sin(sine / WALKSPEEDVALUE), 0 + 0.2 * Cos(sine / WALKSPEEDVALUE)) * angles(Rad(-50 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / 75 * -math.rad(TiltVelocity.z) * 10, Rad(10 * Cos(sine / WALKSPEEDVALUE)), Rad(-5 + 7 * Sin(sine / (WALKSPEEDVALUE / 2))) + root.RotVelocity.Y / -75), 0.1)
- elseif attack == true and movelegs == true then
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -0.9 - 0.5 * Cos(sine / WALKSPEEDVALUE) / 2, -0.2 + 0.6 * Cos(sine / WALKSPEEDVALUE) / 2) * angles(Rad(-15 - 10 * Cos(sine / WALKSPEEDVALUE)) - root.RotVelocity.Y / 75 + -Sin(sine / WALKSPEEDVALUE) / 2.5 * -Rad(TiltVelocity.z) * 10, Rad(0 - 5 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0 - 25 * math.sin(sine / WALKSPEEDVALUE)*-math.rad(TiltVelocity.x)*5.5)), 0.3)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -0.9 + 0.5 * Cos(sine / WALKSPEEDVALUE) / 2, -0.2 - 0.6 * Cos(sine / WALKSPEEDVALUE) / 2) * angles(Rad(-15 + 10 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / -75 + Sin(sine / WALKSPEEDVALUE) / 2.5 * -Rad(TiltVelocity.z) * 10, Rad(0 - 5 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0 - 25 * math.sin(sine / WALKSPEEDVALUE)*math.rad(TiltVelocity.x)*5.5)), 0.3)
- end
- elseif(State == 'Sit') then
- if attack == false then
- rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.1 + 0.1 * Cos(sine / 20)) * angles(Rad(-15), Rad(0), Rad(0)), 0.1)
- neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1) - 1)) * angles(Rad(25 - 5 * Cos(sine / 20)), Rad(0), Rad(0)), 0.1)
- rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5, -0.9 - 0.1 * Cos(sine / 20) - Rad(0) , -0.3) * angles(Rad(65), Rad(-5), Rad(0)) * angles(Rad(0 + 1 * Cos(sine / 20)), Rad(0), Rad(8)), 0.1)
- ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5, -0.9 - 0.1 * Cos(sine / 20) + Rad(0) , 0) * angles(Rad(65), Rad(5), Rad(0)) * angles(Rad(0 - 1 * Cos(sine / 20)), Rad(0), Rad(-8)), 0.1)
- RW.C0 = clerp(RW.C0, CF(1.5, 0.4 - 0.1 * Cos(sine / 20), -0.2) * angles(Rad(20), Rad(-15), Rad(10)), 0.1)
- LW.C0 = clerp(LW.C0, CF(-1.5, 0.4 - 0.1 * Cos(sine / 20), -0.2) * angles(Rad(20), Rad(15), Rad(-10)), 0.1)
- end
- end
- end
- for _, c in pairs(char:GetChildren()) do
- if c.ClassName == "Part" and c.Name ~= "Detail" and c.Name ~= "Adds" then
- if c == hed then
- c.Transparency = 1
- if c:FindFirstChild("face") then
- c.face:Remove()
- end
- end
- elseif c.ClassName == "Accessory" or c.Name == "Body Colors" then
- c:remove()
- end
- end
- hum.WalkSpeed = Speed
- hum.JumpPower = Jump
- if 0 < #Effects then
- for e = 1, #Effects do
- if Effects[e] ~= nil then
- local Thing = Effects[e]
- if Thing ~= nil then
- local Part = Thing[1]
- local Mode = Thing[2]
- local Delay = Thing[3]
- local IncX = Thing[4]
- local IncY = Thing[5]
- local IncZ = Thing[6]
- if 1 >= Thing[1].Transparency then
- if Thing[2] == "Block1" then
- Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Block2" then
- Thing[1].CFrame = Thing[1].CFrame + Vector3.new(0, 0, 0)
- local Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Block3" then
- Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) + Vector3.new(0, 0.15, 0)
- local Mesh = Thing[7]
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Cylinder" then
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Blood" then
- local Mesh = Thing[7]
- Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Elec" then
- local Mesh = Thing[1].Mesh
- Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Disappear" then
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- elseif Thing[2] == "Shatter" then
- Thing[1].Transparency = Thing[1].Transparency + Thing[3]
- Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
- Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
- Thing[6] = Thing[6] + Thing[5]
- end
- else
- Part.Parent = nil
- table.remove(Effects, e)
- end
- end
- end
- end
- end
- end
- -------------------------------------------------------
- --End Animations And Script--
- -------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement