Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
- local Player,game,owner = owner,game
- local RealPlayer = Player
- do
- print("FE Compatibility code by Mokiros")
- local rp = RealPlayer
- script.Parent = rp.Character
- --RemoteEvent for communicating
- local Event = Instance.new("RemoteEvent")
- Event.Name = "UserInput_Event"
- --Fake event to make stuff like Mouse.KeyDown work
- local function fakeEvent()
- local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
- t.connect = t.Connect
- return t
- end
- --Creating fake input objects with fake variables
- local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
- local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
- local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
- CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
- end}
- --Merged 2 functions into one by checking amount of arguments
- CAS.UnbindAction = CAS.BindAction
- --This function will trigger the events that have been :Connect()'ed
- local function te(self,ev,...)
- local t = m[ev]
- if t and t._fakeEvent then
- for _,f in pairs(t.Functions) do
- f(...)
- end
- end
- end
- m.TrigEvent = te
- UIS.TrigEvent = te
- Event.OnServerEvent:Connect(function(plr,io)
- if plr~=rp then return end
- m.Target = io.Target
- m.Hit = io.Hit
- if not io.isMouse then
- local b = io.UserInputState == Enum.UserInputState.Begin
- if io.UserInputType == Enum.UserInputType.MouseButton1 then
- return m:TrigEvent(b and "Button1Down" or "Button1Up")
- end
- if io.UserInputType == Enum.UserInputType.MouseButton2 then
- return m:TrigEvent(b and "Button2Down" or "Button2Up")
- end
- for _,t in pairs(CAS.Actions) do
- for _,k in pairs(t.Keys) do
- if k==io.KeyCode then
- t.Function(t.Name,io.UserInputState,io)
- end
- end
- end
- m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
- UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
- end
- end)
- Event.Parent = NLS([==[
- local Player = game:GetService("Players").LocalPlayer
- local Event = script:WaitForChild("UserInput_Event")
- local Mouse = Player:GetMouse()
- local UIS = game:GetService("UserInputService")
- local input = function(io,a)
- if a then return end
- --Since InputObject is a client-side instance, we create and pass table instead
- Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
- end
- UIS.InputBegan:Connect(input)
- UIS.InputEnded:Connect(input)
- local h,t
- --Give the server mouse data 30 times every second, but only if the values changed
- --If player is not moving their mouse, client won't fire events
- while wait(1/30) do
- if h~=Mouse.Hit or t~=Mouse.Target then
- h,t=Mouse.Hit,Mouse.Target
- Event:FireServer({isMouse=true,Target=t,Hit=h})
- end
- end]==],Player.Character)
- ----Sandboxed game object that allows the usage of client-side methods and services
- --Real game object
- local _rg = game
- --Metatable for fake service
- local fsmt = {
- __index = function(self,k)
- local s = rawget(self,"_RealService")
- if s then
- return typeof(s[k])=="function"
- and function(_,...)return s[k](s,...)end or s[k]
- end
- end,
- __newindex = function(self,k,v)
- local s = rawget(self,"_RealService")
- if s then s[k]=v end
- end
- }
- local function FakeService(t,RealService)
- t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
- return setmetatable(t,fsmt)
- end
- --Fake game object
- local g = {
- GetService = function(self,s)
- return rawget(self,s) or _rg:GetService(s)
- end,
- Players = FakeService({
- LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
- },"Players"),
- UserInputService = FakeService(UIS,"UserInputService"),
- ContextActionService = FakeService(CAS,"ContextActionService"),
- RunService = FakeService({
- _btrs = {},
- RenderStepped = _rg:GetService("RunService").Heartbeat,
- BindToRenderStep = function(self,name,_,fun)
- self._btrs[name] = self.Heartbeat:Connect(fun)
- end,
- UnbindFromRenderStep = function(self,name)
- self._btrs[name]:Disconnect()
- end,
- },"RunService")
- }
- rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
- g.service = g.GetService
- FakeService(g,game)
- --Changing owner to fake player object to support owner:GetMouse()
- game,owner = g,g.Players.LocalPlayer
- end
- --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"))
- Tool0 = Instance.new("Tool")
- Animation1 = Instance.new("Animation")
- Animation2 = Instance.new("Animation")
- Animation3 = Instance.new("Animation")
- Part4 = Instance.new("Part")
- SpecialMesh5 = Instance.new("SpecialMesh")
- Sound6 = Instance.new("Sound")
- Sound7 = Instance.new("Sound")
- LocalScript8 = Instance.new("LocalScript")
- ParticleEmitter9 = Instance.new("ParticleEmitter")
- ParticleEmitter10 = Instance.new("ParticleEmitter")
- ParticleEmitter11 = Instance.new("ParticleEmitter")
- ParticleEmitter12 = Instance.new("ParticleEmitter")
- Attachment13 = Instance.new("Attachment")
- ParticleEmitter14 = Instance.new("ParticleEmitter")
- Attachment15 = Instance.new("Attachment")
- ParticleEmitter16 = Instance.new("ParticleEmitter")
- ParticleEmitter17 = Instance.new("ParticleEmitter")
- LocalScript18 = Instance.new("LocalScript")
- Sound19 = Instance.new("Sound")
- Tool0.Name = "Oof hammer"
- Tool0.Parent = mas
- Tool0.GripForward = Vector3.new(-1, -0, -0)
- Tool0.GripPos = Vector3.new(0, 0, -1.29999995)
- Tool0.GripRight = Vector3.new(0, 1, 0)
- Tool0.GripUp = Vector3.new(0, 0, 1)
- Tool0.ToolTip = "this is a god killing utensil"
- Animation1.Name = "QuickSlash"
- Animation1.Parent = Tool0
- Animation1.AnimationId = "http://www.roblox.com/Asset?ID=49815113"
- Animation2.Name = "ShieldBash"
- Animation2.Parent = Tool0
- Animation2.AnimationId = "http://www.roblox.com/Asset?ID=49907410"
- Animation3.Name = "ShieldWalk"
- Animation3.Parent = Tool0
- Animation3.AnimationId = "http://www.roblox.com/Asset?ID=49763871"
- Part4.Name = "Handle"
- Part4.Parent = Tool0
- Part4.Material = Enum.Material.SmoothPlastic
- Part4.BrickColor = BrickColor.new("Institutional white")
- Part4.Rotation = Vector3.new(-90, 0, -180)
- Part4.FormFactor = Enum.FormFactor.Plate
- Part4.Size = Vector3.new(1.07499957, 1.09999979, 5.49999905)
- Part4.CFrame = CFrame.new(-52.5500069, 2.75001097, -38.8999939, -1, 0, 0, 0, 0, 1, 0, 1, -0)
- Part4.BottomSurface = Enum.SurfaceType.Smooth
- Part4.TopSurface = Enum.SurfaceType.Smooth
- Part4.Color = Color3.new(0.972549, 0.972549, 0.972549)
- Part4.Position = Vector3.new(-52.5500069, 2.75001097, -38.8999939)
- Part4.Orientation = Vector3.new(-90, -180, 0)
- Part4.Color = Color3.new(0.972549, 0.972549, 0.972549)
- SpecialMesh5.Parent = Part4
- SpecialMesh5.MeshId = "http://www.roblox.com/asset/?id=12592754"
- SpecialMesh5.Scale = Vector3.new(1.71874976, 1.71874976, 1.71874976)
- SpecialMesh5.TextureId = "http://www.roblox.com/asset/?id=418208180"
- SpecialMesh5.MeshType = Enum.MeshType.FileMesh
- SpecialMesh5.Scale = Vector3.new(1.71874976, 1.71874976, 1.71874976)
- Sound6.Name = "Hit"
- Sound6.Parent = Part4
- Sound6.SoundId = "rbxassetid://291487516"
- Sound6.Volume = 6
- Sound7.Name = "Swing"
- Sound7.Parent = Part4
- Sound7.SoundId = "rbxassetid://1268836293"
- Sound7.Volume = 1
- LocalScript8.Name = "OOFHAMMERscript"
- LocalScript8.Parent = Part4
- table.insert(cors,sandbox(LocalScript8,function()
- ------------------------
- --[[UTIL Functions]]--
- ------------------------
- --Global functions used by all classes are wrapped in UTIL
- --deal with it.
- local UTIL = {}
- function UTIL.Class(tableIn,template)
- tableIn = tableIn or {}
- local mt = {
- __metatable = UTIL.DeepCopy(template);
- __index = UTIL.DeepCopy(template);
- }
- return setmetatable(tableIn, mt)
- end
- function UTIL.MakeClass(...)
- local arg = {...}
- assert(#arg>0, 'ERROR: class needs 1 argument or more')
- local members = arg[1]
- for i=2,#arg,1 do
- if type(arg[i])=='table' then
- for key,val in pairs(arg[i]) do
- if not members[key] then
- members[key] = val
- end
- end
- end
- end
- local function New(init)
- return UTIL.Class(init or {},members)
- end
- local function Copy(obj, ...)
- local newobj = obj:New(unpack(arg))
- for n,v in pairs(obj) do newobj[n] = v end
- return newobj
- end
- members.New = New
- members.Copy = Copy
- return mt
- end
- function UTIL.DeepCopy(orig)
- local orig_type = type(orig)
- local copy
- if orig_type == 'table' then
- copy = {}
- for orig_key, orig_value in next, orig, nil do
- copy[UTIL.DeepCopy(orig_key)] = UTIL.DeepCopy(orig_value)
- end
- setmetatable(copy, UTIL.DeepCopy(getmetatable(orig)))
- else -- number, string, boolean, etc
- copy = orig
- end
- return copy
- end
- function UTIL.Instantiate(guiType)
- return function(data)
- local obj = Instance.new(guiType)
- for k, v in pairs(data) do
- if type(k) == 'number' then
- v.Parent = obj
- else
- obj[k] = v
- end
- end
- return obj
- end
- end
- function UTIL.RetroRegister(func,...)
- func()
- for _,i in ipairs({...}) do
- i:connect(func)
- end
- end
- -- Waits for a new character to be added if the current one is invalid
- -- (Ensures that you don't have the old dead character after a respawn)
- function UTIL.WaitForValidCharacter(player)
- local character = player.Character
- if not character or not character.Parent or not character:FindFirstChild('Humanoid') or character.Humanoid.Health <= 0 then
- player.CharacterAdded:wait()
- wait(0) --NOTE: Necessary for server scripts executing on the same event
- character = player.Character
- end
- return character
- end
- -- Returns a character ancestor and its Humanoid, or nil
- function UTIL.FindCharacterAncestor(subject)
- if subject and subject ~= Workspace then
- local humanoid = subject:FindFirstChild('Humanoid')
- if humanoid then
- return subject, humanoid
- else
- return UTIL.FindCharacterAncestor(subject.Parent)
- end
- end
- return nil
- end
- UTIL.AssetURL = 'http://www.roblox.com/asset/?id='
- UTIL.TouchEnabled = game:GetService("UserInputService").TouchEnabled
- do
- local suceeded,_ =pcall(function() game.Workspace.CurrentCamera:GetPanSpeed() end)
- UTIL.CanCheckPanSpeed = suceeded
- end
- local DebrisService = Game:GetService('Debris')
- local DebugPrintOffset = 0
- function UTIL.Dprint(...)
- local line = ''
- for _, segment in pairs({...}) do
- line = line .. (line and ' ' or '') .. tostring(segment)
- end
- local gui = Instance.new('ScreenGui')
- local label = Instance.new('TextLabel')
- label.Text = line
- label.Size = UDim2.new(0.25, 0, 0.05, 0)
- label.BackgroundTransparency = 0.5
- label.Position = UDim2.new(0, 0, 0, DebugPrintOffset)
- label.TextWrapped = true
- label.Parent = gui
- DebrisService:AddItem(gui, 30)
- gui.Parent = script.Parent
- DebugPrintOffset = (DebugPrintOffset <= 600) and DebugPrintOffset + 30 or 0
- end
- --
- --All Welding Related Utility functions should be put here
- --
- WeldUtil = {}
- do
- function WeldUtil.WeldBetween(a, b)
- local weld = Instance.new("Weld")
- weld.Part0 = a
- weld.Part1 = b
- weld.C0 = CFrame.new()
- weld.C1 = b.CFrame:inverse() * a.CFrame
- weld.Parent = a
- return weld
- end
- function WeldUtil:PermaWeld(weld)
- local OriginalParent = weld.Parent
- weld.Changed:connect(function()
- Delay(0,function() weld.Parent = OriginalParent end)
- end)
- end
- end
- local InternalEvent =
- {
- Listeners = nil,
- }
- do
- UTIL.MakeClass(InternalEvent)
- function InternalEvent:Connect(func)
- if not self.Listeners then self.Listeners = {} end
- table.insert(self.Listeners,func)
- end
- function InternalEvent:Fire(...)
- if not self.Listeners then return end
- local args = {...}
- for _,i in ipairs(self.Listeners) do
- Spawn(function() i(unpack(args)) end)
- end
- end
- end
- --[[Sword Part Class]]--
- local SwordPart =
- {
- Damage = 1,
- AttackTime = math.random(.1),
- CoolDown = 0,
- LastSwing = 0,
- LastHit = 0,
- Part= nil,
- Owner = nil,--player object that owns this sword
- OnHit = nil,
- OnHitHumanoid = nil,
- OnAttackReady = nil,
- OnAttack = nil,
- SwingSound = nil,
- HitSound = nil,
- SwingAnimation = nil, --animation track!
- ActiveConnections = {},
- }
- do
- UTIL.MakeClass(SwordPart)
- function SwordPart.New(npart,nowner)
- local init= UTIL.DeepCopy(SwordPart)
- init.Part= npart
- init.Owner = nowner
- table.insert(init.ActiveConnections,init.Part.Touched:connect(function(hit) init:SwordTouch(hit) end))
- init.OnHit = InternalEvent.New()
- init.OnHitHumanoid = InternalEvent.New()
- init.OnAttackReady = InternalEvent.New()
- init.OnAttack = InternalEvent.New()
- return init
- end
- function SwordPart:SwordTouch(hit)
- if tick()-self.LastSwing >self.AttackTime or tick()-self.LastHit<self.AttackTime then return end
- self.OnHit:Fire(hit)
- local character,humanoid = UTIL.FindCharacterAncestor(hit)
- if character and character ~= self.Owner.Character then
- humanoid:TakeDamage(self.Damage)
- self.OnHitHumanoid:Fire(humanoid,hit)
- self.LastHit = tick()
- if self.HitSound then
- self.HitSound:Play()
- end
- end
- end
- function SwordPart:DoSwing()
- if tick()-self.LastSwing<self.AttackTime+self.CoolDown then
- return
- end
- if self.SwingAnimation then
- self.SwingAnimation:Play()
- end
- if self.SwingSound then
- self.SwingSound:Play()
- end
- self.LastSwing = tick()
- self.OnAttack:Fire()
- end
- function SwordPart:Destroy()
- for _,i in pairs(self.ActiveConnections) do
- i:disconnect()
- end
- end
- end
- do
- local Handle = script.Parent
- local Tool = Handle.Parent
- local Player = game.Players.LocalPlayer
- local Character = UTIL.WaitForValidCharacter(Player)
- local SwingAni = UTIL.Instantiate"Animation"
- {AnimationId = "http://www.roblox.com/Asset?ID=33169596"}
- local HitSound = Handle:WaitForChild('Hit')
- local SwingSound = Handle:WaitForChild('Swing')
- local SwingAniTrack
- local Sword
- Tool.Equipped:connect(function(mouse)
- Sword = SwordPart.New(Handle,Player)
- Sword.Damage = math.random(9999999999999999999999999999999999999)
- Sword.HitSound = HitSound
- Sword.SwingSound = SwingSound
- Character = UTIL.WaitForValidCharacter(Player)
- local Humanoid = Character:FindFirstChild('Humanoid')
- SwingAniTrack = Humanoid:LoadAnimation(SwingAni)
- Sword.SwingAnimation = SwingAniTrack
- Sword.OnHitHumanoid:Connect(function(humanoid,hit)
- local myTorso = Character:FindFirstChild('Torso')
- local torso = humanoid.Parent:FindFirstChild('Torso')
- if not torso or not myTorso then return end
- if hit.Name=='nil' then
- hit:BreakJoints()
- WeldUtil.WeldBetween(hit, Handle)
- Delay(1,function() hit:BreakJoints() end )
- end
- end)
- mouse.Button1Down:connect(function()
- Sword:DoSwing()
- end)
- end)
- Tool.Unequipped:connect(function()
- Sword:Destroy()
- end)
- end
- end))
- ParticleEmitter9.Parent = Part4
- ParticleEmitter9.Transparency = NumberSequence.new(1,0,1)
- ParticleEmitter9.Rotation = NumberRange.new(-999, 999)
- ParticleEmitter9.Size = NumberSequence.new(0,0.30000001192093,0)
- ParticleEmitter9.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0.137255, 0.137255, 0))
- ParticleEmitter9.LightEmission = 1
- ParticleEmitter9.Acceleration = Vector3.new(0, -0.5, 0)
- ParticleEmitter9.Lifetime = NumberRange.new(0, 5)
- ParticleEmitter9.Rate = inf
- ParticleEmitter9.RotSpeed = NumberRange.new(-180, 180)
- ParticleEmitter9.Speed = NumberRange.new(0, 0.5)
- ParticleEmitter9.VelocitySpread = 999
- ParticleEmitter9.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0.137255, 0.137255, 0))
- ParticleEmitter10.Parent = Part4
- ParticleEmitter10.Transparency = NumberSequence.new(1,0,1)
- ParticleEmitter10.Rotation = NumberRange.new(-999, 999)
- ParticleEmitter10.Size = NumberSequence.new(0,0.10000000149012,0)
- ParticleEmitter10.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0, 0.333333, 0.498039))
- ParticleEmitter10.LightEmission = 1
- ParticleEmitter10.Acceleration = Vector3.new(0, -0.5, 0)
- ParticleEmitter10.Lifetime = NumberRange.new(0, 5)
- ParticleEmitter10.Rate = inf
- ParticleEmitter10.RotSpeed = NumberRange.new(-180, 180)
- ParticleEmitter10.Speed = NumberRange.new(0, 0.5)
- ParticleEmitter10.VelocitySpread = 999
- ParticleEmitter10.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0, 0.333333, 0.498039))
- ParticleEmitter11.Name = "shine"
- ParticleEmitter11.Parent = Part4
- ParticleEmitter11.Transparency = NumberSequence.new(1,0.94375002384186,0,0.94375002384186,1,0.98124998807907,1)
- ParticleEmitter11.Rotation = NumberRange.new(-999, 999)
- ParticleEmitter11.Size = NumberSequence.new(0,0.18750011920929,0.40000000596046,0.9375,0)
- ParticleEmitter11.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0, 0, 0.498039),Color3.new(0, 0, 0))
- ParticleEmitter11.LightEmission = 1
- ParticleEmitter11.Texture = "rbxassetid://2406236224"
- ParticleEmitter11.ZOffset = -1
- ParticleEmitter11.Acceleration = Vector3.new(0, 0.00499999989, 0)
- ParticleEmitter11.Lifetime = NumberRange.new(0, 5)
- ParticleEmitter11.Rate = inf
- ParticleEmitter11.RotSpeed = NumberRange.new(-180, 180)
- ParticleEmitter11.Speed = NumberRange.new(0, 0.0049999998882413)
- ParticleEmitter11.VelocitySpread = 999
- ParticleEmitter11.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(0, 0, 0.498039),Color3.new(0, 0, 0))
- ParticleEmitter12.Name = "shine"
- ParticleEmitter12.Parent = Part4
- ParticleEmitter12.Transparency = NumberSequence.new(1,0.94375002384186,0,0.94375002384186,1,0.98124998807907,1)
- ParticleEmitter12.Rotation = NumberRange.new(-999, 999)
- ParticleEmitter12.Size = NumberSequence.new(0,0.10000000149012,0.20000000298023,0.40000000596046,0)
- ParticleEmitter12.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(1, 1, 0),Color3.new(0, 0, 0))
- ParticleEmitter12.LightEmission = 1
- ParticleEmitter12.Texture = "rbxassetid://2406236224"
- ParticleEmitter12.ZOffset = 0.15000000596046
- ParticleEmitter12.Acceleration = Vector3.new(0, 0.00499999989, 0)
- ParticleEmitter12.Lifetime = NumberRange.new(0, 5)
- ParticleEmitter12.Rate = inf
- ParticleEmitter12.RotSpeed = NumberRange.new(-180, 180)
- ParticleEmitter12.Speed = NumberRange.new(0, 0.0049999998882413)
- ParticleEmitter12.VelocitySpread = 999
- ParticleEmitter12.Color = ColorSequence.new(Color3.new(0, 0, 0),Color3.new(1, 1, 0),Color3.new(0, 0, 0))
- Attachment13.Parent = Part4
- Attachment13.CFrame = CFrame.new(-1.40588212, 0.150000006, 2.29999995, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Attachment13.Position = Vector3.new(-1.40588212, 0.150000006, 2.29999995)
- ParticleEmitter14.Parent = Attachment13
- ParticleEmitter14.Transparency = NumberSequence.new(0,1)
- ParticleEmitter14.Size = NumberSequence.new(0,0.5,0)
- ParticleEmitter14.Color = ColorSequence.new(Color3.new(0.333333, 0, 0),Color3.new(0.666667, 0, 0))
- ParticleEmitter14.LightEmission = 0.34999999403954
- ParticleEmitter14.Texture = "rbxassetid://1127194263"
- ParticleEmitter14.ZOffset = 0.5
- ParticleEmitter14.Lifetime = NumberRange.new(0, 0.25)
- ParticleEmitter14.Rate = 9.9999996169032e+35
- ParticleEmitter14.RotSpeed = NumberRange.new(-9, 9)
- ParticleEmitter14.Speed = NumberRange.new(0, 0)
- ParticleEmitter14.Color = ColorSequence.new(Color3.new(0.333333, 0, 0),Color3.new(0.666667, 0, 0))
- Attachment15.Parent = Part4
- Attachment15.CFrame = CFrame.new(-1.40588212, -0.25, 2.29999995, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Attachment15.Position = Vector3.new(-1.40588212, -0.25, 2.29999995)
- ParticleEmitter16.Parent = Attachment15
- ParticleEmitter16.Transparency = NumberSequence.new(0,1)
- ParticleEmitter16.Size = NumberSequence.new(0,0.5,0)
- ParticleEmitter16.Color = ColorSequence.new(Color3.new(0.333333, 0, 0),Color3.new(0.666667, 0, 0))
- ParticleEmitter16.LightEmission = 0.34999999403954
- ParticleEmitter16.Texture = "rbxassetid://1127194263"
- ParticleEmitter16.ZOffset = 0.5
- ParticleEmitter16.Lifetime = NumberRange.new(0, 0.25)
- ParticleEmitter16.Rate = 9.9999996169032e+35
- ParticleEmitter16.RotSpeed = NumberRange.new(-9, 9)
- ParticleEmitter16.Speed = NumberRange.new(0, 0)
- ParticleEmitter16.Color = ColorSequence.new(Color3.new(0.333333, 0, 0),Color3.new(0.666667, 0, 0))
- ParticleEmitter17.Name = "dp"
- ParticleEmitter17.Parent = Part4
- ParticleEmitter17.Transparency = NumberSequence.new(1,0,0,1)
- ParticleEmitter17.Rotation = NumberRange.new(-180, 180)
- ParticleEmitter17.Size = NumberSequence.new(10,10,0,2.75,9)
- ParticleEmitter17.Color = ColorSequence.new(Color3.new(1, 0.972549, 0.113725),Color3.new(1, 0.972549, 0.113725))
- ParticleEmitter17.LightEmission = 0.5
- ParticleEmitter17.Texture = "rbxassetid://2446898316"
- ParticleEmitter17.Acceleration = Vector3.new(0, -50, 0)
- ParticleEmitter17.Lifetime = NumberRange.new(0, 5)
- ParticleEmitter17.Rate = 50
- ParticleEmitter17.RotSpeed = NumberRange.new(-150, 150)
- ParticleEmitter17.Speed = NumberRange.new(0, 85)
- ParticleEmitter17.VelocitySpread = 65
- ParticleEmitter17.Color = ColorSequence.new(Color3.new(1, 0.972549, 0.113725),Color3.new(1, 0.972549, 0.113725))
- LocalScript18.Name = "main"
- LocalScript18.Parent = Tool0
- table.insert(cors,sandbox(LocalScript18,function()
- --Impletion [awful coding i know]
- wait()
- explode=false
- soundlock=false
- lock=false
- script.Parent.Activated:connect(function(click)
- if lock==false then
- lock=true
- local char=script.Parent.Parent
- local anim=char.Humanoid:LoadAnimation(script.Parent.Animation)
- anim:Play()
- wait(1.4)
- lock=false
- end
- end)
- script.Parent.Handle.Touched:connect(function(hit)
- local gethum=hit.Parent:GetChildren()
- for i=1,#gethum do
- if gethum[i].ClassName=="Humanoid" and gethum[i] ~= nil and hit.Parent.Name ~= game.Players.LocalPlayer.Name and lock==true then
- local hum=gethum[i]
- hum.Sit=true
- if soundlock==false then
- soundlock=true
- script.Parent.Smash:Play()
- end
- local character=hit.Parent
- local b=character:GetChildren()
- for i=1,#b do
- if b[i]:IsA("Part") and b[i] ~= nil then
- b[i].CanCollide=false
- b[i].Anchored=false
- end
- end
- local torso=hit.Parent:findFirstChild("Torso")
- character.Torso.Velocity=game.Players.LocalPlayer.Character.Torso.CFrame.lookVector * 600
- character.Torso.Velocity=character.Torso.Velocity + Vector3.new(0,65,0)
- wait(5)
- if explode==false then
- explode=true
- local expl=Instance.new("Explosion", workspace)
- expl.BlastPressure=math.huge
- expl.BlastRadius=math.huge
- expl.Position=torso.Position
- character:BreakJoints()
- local p=game.Players:GetPlayerFromCharacter(character)
- character:Destroy()
- if p ~= nil then
- p:Destroy()
- end
- end
- end
- end
- wait(1)
- soundlock=false
- explode=false
- end)
- script.Parent.Equipped:connect(function(equip)
- game.Players.LocalPlayer.Character.Humanoid.MaxHealth=250
- game.Players.LocalPlayer.Character.Humanoid.Health=250
- game.Players.LocalPlayer.Character.Humanoid.WalkSpeed=16
- end)
- end))
- Sound19.Name = "Smash"
- Sound19.Parent = Tool0
- Sound19.SoundId = "rbxassetid://1183218037"
- for i,v in pairs(mas:GetChildren()) do
- v.Parent = game:GetService("Players").LocalPlayer.Backpack
- pcall(function() v:MakeJoints() end)
- end
- mas:Destroy()
- for i,v in pairs(cors) do
- spawn(function()
- pcall(v)
- end)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement