Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --services
- local debris = game:GetService("Debris")
- local chatservice = game:GetService("Chat")
- --[[settings]]
- --mode customization
- local opmultiplierws = 1.25
- local spdmultiplierws = 2
- local opmultiplierjp = 1
- local spdmultiplierjp = 1.25
- --color
- local maincolor = BrickColor.new("Bright yellow")
- local secondarycolor = BrickColor.new("Bright blue")
- local flamecolor = BrickColor.new("Really red")
- --music
- local musicid = "rbxassetid://571839980"
- local runmusicid = "rbxassetid://703893300"
- --flash effect
- local flashduration = 0
- --jump power
- local walkjp = 50
- local runjp = 70
- --walk speed
- local walkspd = 26
- local runspd = 100
- local spd = 16
- local jpower = 50
- --enables
- local running = false
- local autotarget = false
- local opmode = false
- local chatting = false
- local superspeed = false
- --script
- local player = game:GetService("Players").LocalPlayer
- local mouse = player:GetMouse()
- repeat
- wait()
- until player.Character
- local character = player.Character
- local humanoid = character:FindFirstChild("Humanoid")
- local torso = character:FindFirstChild("Torso")
- if not torso and not humanoid then
- print("Torso and humanoid not found")
- return
- elseif not torso then
- print("No torso found")
- return
- elseif not humanoid then
- print("No humanoid found")
- return
- end
- --useful functions
- local function randomize(value1, value2)
- math.randomseed(os.time())
- for i=1,10 do
- math.random(1,100)
- end
- local randomizeeebebebe = math.random(value1, value2)
- return randomizeeebebebe
- end
- --attacking
- local function attak(thing, thinghumanoid, place)
- local hiteffect = Instance.new("Part", thing)
- hiteffect.Name = "Hit Effect"
- if opmode then
- hiteffect.BrickColor = secondarycolor
- else
- hiteffect.BrickColor = maincolor
- end
- hiteffect.Material = Enum.Material.Neon
- hiteffect.Anchored = true
- hiteffect.CanCollide = false
- hiteffect.CFrame = CFrame.new(thing.Position)
- hiteffect.Size = Vector3.new()
- hiteffect.Transparency = 0
- hiteffect.Shape = "Ball"
- thing.CFrame = thing.CFrame + Vector3.new(0,0.1,0)
- if superspeed then
- thing.Velocity = thing.Velocity + ((thing.Position - place.Position).unit * 500)
- end
- if opmode then
- thinghumanoid.Parent:BreakJoints()
- thing.Velocity = thing.Velocity + ((thing.Position - place.Position).unit * 1000)
- hiteffect.Size = Vector3.new(25,25,25)
- debris:AddItem(thinghumanoid.Parent, 1)
- else
- thinghumanoid:TakeDamage(randomize(17,24))
- end
- thing.Velocity = thing.Velocity + ((thing.Position - place.Position).unit * 100)
- coroutine.resume(coroutine.create(function()
- local hitchange = Vector3.new(0,hiteffect.Transparency,0)
- for i=1,10 do
- hiteffect.Transparency = hitchange.Y
- hiteffect.Size = hiteffect.Size:lerp(Vector3.new(7,7,7), 0.05 * i)
- hitchange = hitchange:lerp(Vector3.new(0,1,0), 0.05 * i)
- if superspeed then
- hiteffect.Color = hiteffect.Color:lerp(flamecolor.Color, 0.1 * i)
- end
- wait()
- end
- hiteffect:Destroy()
- end))
- end
- local function Attack(area, range, autorange)
- local searchrange = range
- local autosearch = autorange
- local htorso = nil
- local hhumanoid = nil
- local autotargethumanoid = nil
- local autotargettorso = nil
- for i,v in pairs(game.Workspace:GetChildren()) do
- local ttorso = v:FindFirstChild("Torso")
- if not ttorso then
- ttorso = v:FindFirstChild("UpperTorso")
- if not ttorso then
- ttorso = v:FindFirstChild("HumanoidRootPart")
- end
- end
- local thumanoid = v:FindFirstChild("Humanoid")
- if ttorso and thumanoid and v ~= character then
- if thumanoid.Health > 0 then
- local distaway = (area.Position - ttorso.Position).magnitude
- if distaway < range then
- attak(ttorso, thumanoid, area)
- end
- if distaway < range then
- htorso = ttorso
- hhumanoid = thumanoid
- searchrange = distaway
- end
- if distaway < autosearch then
- autotargettorso = ttorso
- autotargethumanoid = thumanoid
- autosearch = distaway
- end
- end
- end
- end
- if htorso and hhumanoid then
- if autotarget and autotargettorso and autotargethumanoid then
- if autotargethumanoid.Health > 0 then
- humanoid:MoveTo(autotargettorso.Position)
- torso.Velocity = torso.Velocity + (torso.CFrame.lookVector * 50)
- end
- end
- end
- end
- --music
- local music = Instance.new("Sound", torso)
- music.SoundId = musicid
- music.Volume = 0 --default 0.5
- music.EmitterSize = 10 --default 10
- music.PlaybackSpeed = 1 --default 1
- music.Looped = true
- --text
- local bgui = Instance.new("BillboardGui",character)
- bgui.Size = UDim2.new(0,100,0,40)
- bgui.StudsOffset = Vector3.new(0,2,0)
- bgui.Adornee = character.Head
- local texty = Instance.new("TextLabel", bgui)
- texty.BackgroundTransparency = 1
- texty.BorderSizePixel = 0
- texty.Text = ""
- texty.Font = "Cartoon"
- texty.FontSize = "Size24"
- texty.TextStrokeTransparency = 0.7
- texty.TextStrokeColor3 = Color3.new(1,1,0)
- texty.TextColor3 = Color3.new(1,1,0)
- texty.Size = UDim2.new(1,0,0.5,0)
- coroutine.resume(coroutine.create(function()
- while true do
- wait()
- texty.Position = UDim2.new((math.cos(tick() * 15) / 5), 0, math.sin(tick() * 15) / 5, 0)
- if not chatting then
- texty.Text = "-" ..player.Name.. "-"
- end
- end
- end))
- player.Chatted:connect(function(chat)
- chatting = true
- chat = chatservice:FilterStringForBroadcast(chat, player)
- for i=1,string.len(chat) do
- texty.Text = string.sub(chat, 1, i)
- wait()
- end
- wait(2)
- chatting = false
- end)
- --INTRO
- music:Play()
- humanoid.WalkSpeed = 0
- wait(1)
- local effect = Instance.new("Part", character)
- effect.Name = "Effect"
- effect.BrickColor = maincolor
- effect.Material = Enum.Material.Neon
- effect.Anchored = true
- effect.CanCollide = false
- effect.CFrame = CFrame.new(torso.Position)
- effect.Size = Vector3.new(10,10,10)
- effect.Shape = "Ball"
- for i=1,1 do
- local change = Vector3.new(0,1,0)
- for i=1,20 do
- effect.Size = effect.Size:lerp(Vector3.new(0,0,0), 0.03 * i)
- effect.Transparency = change.Y
- change = change:lerp(Vector3.new(0,0,0), 0.02 * i)
- music.Volume = change.Y / 1
- wait()
- end
- change = Vector3.new(0,1,0)
- effect.Size = Vector3.new(10,10,10)
- for i=1,20 do
- effect.Size = effect.Size:lerp(Vector3.new(0,0,0), 0.03 * i)
- effect.Transparency = change.Y
- change = change:lerp(Vector3.new(0,0,0), 0.02 * i)
- music.Volume = change.Y / 1
- wait()
- end
- change = Vector3.new(0,1,0)
- effect.Size = Vector3.new(10,10,10)
- for i=1,20 do
- effect.Size = effect.Size:lerp(Vector3.new(0,0,0), 0.03 * i)
- effect.Transparency = change.Y
- change = change:lerp(Vector3.new(0,0,0), 0.02 * i)
- music.Volume = change.Y / 1
- wait()
- end
- change = Vector3.new(0,0,0)
- effect.Size = Vector3.new(0,0,0)
- for i=1,20 do
- effect.Size = effect.Size:lerp(Vector3.new(30,30,30), 0.03 * i)
- effect.Color = effect.Color:lerp(flamecolor.Color, 0.03 * i)
- effect.Transparency = change.Y
- change = change:lerp(Vector3.new(0,1,0), 0.02 * i)
- music.Volume = change.Y / 1
- wait()
- end
- music.Volume = 1
- effect:Destroy()
- end
- --set humanoid stats
- coroutine.resume(coroutine.create(function()
- while true do
- wait()
- humanoid.PlatformStand = false
- humanoid.WalkSpeed = spd
- humanoid.JumpPower = jpower
- humanoid.MaxHealth = math.huge
- humanoid.Health = math.huge
- for i,v in pairs(character:GetChildren()) do
- if v:IsA("Part") then
- v.Anchored = false
- end
- end
- end
- end))
- --visual effect for running
- local function Effect()
- for i,v in pairs(character:GetChildren()) do
- if v:IsA("Part") then
- local shadow = v:Clone()
- shadow:ClearAllChildren()
- if v.Name == "Head" then
- shadow.Size = Vector3.new(1.25,1.25,1.25)
- end
- --[[if opmode then
- shadow.BrickColor = secondarycolor
- else
- shadow.BrickColor = maincolor
- end]]
- shadow.CanCollide = false
- shadow.Anchored = true
- shadow.Material = Enum.Material.Neon
- shadow.Transparency = 0.5
- shadow.Parent = workspace
- coroutine.resume(coroutine.create(function()
- wait(flashduration)
- local flash = Vector3.new(0,shadow.Transparency,0)
- local originalsize = shadow.Size
- for i=1,10 do
- wait()
- shadow.Transparency = flash.Y
- shadow.Size = shadow.Size:lerp(Vector3.new(), 0.05 * i)
- shadow.Size = shadow.Size:lerp(originalsize + (Vector3.new(1,1,1) * (music.PlaybackLoudness / 50)), 0.05)
- flash = flash:lerp(Vector3.new(0,1,0), 0.05 * i)
- if superspeed then
- shadow.Color = shadow.Color:lerp(flamecolor.Color, 0.2 * i)
- end
- if opmode then
- shadow.CFrame = shadow.CFrame:lerp(v.CFrame, 0.05 * i)
- end
- end
- shadow:Destroy()
- end))
- end
- end
- end
- --keys
- mouse.KeyDown:connect(function(key)
- local bytekey = key:byte()
- local skey = key:lower()
- if bytekey == 48 then --Shift
- running = true
- torso.Velocity = torso.Velocity + (torso.CFrame.lookVector * 100)
- end
- if skey == "z" then
- if autotarget then
- autotarget = false
- else
- autotarget = true
- end
- end
- if skey == "x" then
- if opmode then
- opmode = false
- runspd = runspd / opmultiplierws
- runjp = runjp / opmultiplierjp
- else
- opmode = true
- runspd = runspd * opmultiplierws
- runjp = runjp * opmultiplierjp
- end
- end
- if skey == "c" then
- if superspeed then
- superspeed = false
- runspd = runspd / spdmultiplierws
- runjp = runjp / spdmultiplierjp
- else
- superspeed = true
- runspd = runspd * spdmultiplierws
- runjp = runjp * spdmultiplierjp
- end
- end
- end)
- mouse.KeyUp:connect(function(key)
- local bytekey = key:byte()
- local skey = key:lower()
- if bytekey == 48 then --Shift
- running = false
- end
- end)
- --main
- while true do
- if not running then
- spd = walkspd
- jpower = walkjp
- music.SoundId = musicid
- else
- spd = runspd
- jpower = runjp
- music.SoundId = runmusicid
- if torso.Velocity.magnitude > 1 then
- Effect()
- Attack(torso, 10, 150)
- end
- end
- wait()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement