Advertisement
fusionfriends

Fire Stick

Jun 15th, 2019
629
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.54 KB | None | 0 0
  1. local Player = owner
  2. script.Name = "Flamethrower"
  3. wait(0.25)
  4. if Player == nil then script:Destroy() return end
  5. repeat wait() until Player.Character
  6. local Character = Player.Character
  7. local Damage = 1
  8. local AfterburnDamage = 2
  9. local LoggedDamage = Damage
  10. local LoggedAfterburnDamage = AfterburnDamage
  11. local SuperValue = 0
  12. local CanHit = false
  13. local Super = false
  14. local Tool = Instance.new("Tool",Player.Backpack)
  15. Tool.Name = "Flamethrower"
  16. Tool.ToolTip = "Roast those noobs!"
  17. Tool.TextureId = "rbxasset://textures/particles/explosion01_core_main.dds"
  18. Tool.Grip = CFrame.new(-0.400000006, -0.400000006, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  19. local Flamethrower = Instance.new("Part",Tool)
  20. Flamethrower.Name = "Handle"
  21. Flamethrower.BrickColor = BrickColor.new("CGA brown")
  22. Flamethrower.Material = Enum.Material.Neon
  23. Flamethrower.Shape = Enum.PartType.Cylinder
  24. Flamethrower.Size = Vector3.new(3,1,1)
  25. Flamethrower.CanCollide = false
  26. Flamethrower.Massless = true
  27. local FlameParticle1 = Instance.new("ParticleEmitter",Flamethrower)
  28. local FlameParticle1KeypointsSize = {
  29.     NumberSequenceKeypoint.new(0,0),
  30.     NumberSequenceKeypoint.new(0.8,2.5),
  31.     NumberSequenceKeypoint.new(1,0)
  32. }
  33. local FlameParticleKeypointsTransparency = {
  34.     NumberSequenceKeypoint.new(0,0),
  35.     NumberSequenceKeypoint.new(1,1)
  36. }
  37. FlameParticle1.Size = NumberSequence.new(FlameParticle1KeypointsSize)
  38. FlameParticle1.Transparency = NumberSequence.new(FlameParticleKeypointsTransparency)
  39. FlameParticle1.Color = ColorSequence.new(Color3.fromRGB(255,60,0))
  40. FlameParticle1.LightInfluence = 0
  41. FlameParticle1.LightEmission = 0.5
  42. FlameParticle1.Texture = "rbxassetid://2070896802"
  43. FlameParticle1.RotSpeed = NumberRange.new(1000)
  44. FlameParticle1.EmissionDirection = Enum.NormalId.Right
  45. FlameParticle1.Speed = NumberRange.new(40)
  46. FlameParticle1.Lifetime = NumberRange.new(0.25)
  47. FlameParticle1.Rate = 100
  48. FlameParticle1.Enabled = false
  49. local FlameParticle2 = Instance.new("ParticleEmitter",Flamethrower)
  50. local FlameParticle2KeypointsSize = {
  51.     NumberSequenceKeypoint.new(0,0),
  52.     NumberSequenceKeypoint.new(0.85,1),
  53.     NumberSequenceKeypoint.new(1,0)
  54. }
  55. FlameParticle2.Size = NumberSequence.new(FlameParticle2KeypointsSize)
  56. FlameParticle2.Transparency = NumberSequence.new(FlameParticleKeypointsTransparency)
  57. FlameParticle2.Color = ColorSequence.new(Color3.fromRGB(255,255,0))
  58. FlameParticle2.LightInfluence = 0
  59. FlameParticle2.LightEmission = 0.5
  60. FlameParticle2.Texture = "rbxassetid://2070896802"
  61. FlameParticle2.RotSpeed = NumberRange.new(1000)
  62. FlameParticle2.EmissionDirection = Enum.NormalId.Right
  63. FlameParticle2.Speed = NumberRange.new(30)
  64. FlameParticle2.Lifetime = NumberRange.new(0.25)
  65. FlameParticle2.Rate = 120
  66. FlameParticle2.Enabled = false
  67. local Sparkles = Instance.new("ParticleEmitter",Flamethrower)
  68. local SparklesKeypointsSize = {
  69.     NumberSequenceKeypoint.new(0,2),
  70.     NumberSequenceKeypoint.new(1,0)
  71. }
  72. Sparkles.Size = NumberSequence.new(SparklesKeypointsSize)
  73. Sparkles.SpreadAngle = Vector2.new(50000000,5e+07)
  74. Sparkles.Color = ColorSequence.new(Color3.fromRGB(0,200,0))
  75. Sparkles.LightEmission = 0.5
  76. Sparkles.LightInfluence = 0
  77. Sparkles.Lifetime = NumberRange.new(1)
  78. Sparkles.Speed = NumberRange.new(10)
  79. Sparkles.LockedToPart = true
  80. Sparkles.Enabled = false
  81. local Hitbox = Instance.new("Part",Flamethrower)
  82. Hitbox.Transparency = 1
  83. Hitbox.Size = Vector3.new(2.25,2.25,7.5)
  84. Hitbox.CanCollide = false
  85. Hitbox.Massless = true
  86. local HitboxWeld = Instance.new("Weld",Hitbox)
  87. HitboxWeld.Part1 = Hitbox
  88. HitboxWeld.Part0 = Flamethrower
  89. HitboxWeld.C1 = CFrame.new(0, 0, -5.24999952, 1.66860048e-07, 1, 3.08536414e-08, -2.98023224e-08, -3.08536343e-08, 1, 1, -1.66860048e-07, 2.98023153e-08)
  90. local SuperHitbox = Instance.new("Part",Flamethrower)
  91. SuperHitbox.Transparency = 1
  92. SuperHitbox.Size = Vector3.new(7.5,7.5,18)
  93. SuperHitbox.CanCollide = false
  94. SuperHitbox.Massless = true
  95. local SuperHitboxWeld = Instance.new("Weld",SuperHitbox)
  96. SuperHitboxWeld.Part1 = SuperHitbox
  97. SuperHitboxWeld.Part0 = Flamethrower
  98. SuperHitboxWeld.C1 = CFrame.new(0.25, -0.125, -10.625, 1.66860048e-07, 1, 3.08536414e-08, -2.98023224e-08, -3.08536343e-08, 1, 1, -1.66860048e-07, 2.98023153e-08)
  99. local Connection = Hitbox.Touched:Connect(function() end)
  100. local Connection2 = SuperHitbox.Touched:Connect(function() end)
  101. Tool.Activated:Connect(function()
  102.     FlameParticle1.Enabled = true
  103.     FlameParticle2.Enabled = true
  104.     Flamethrower.BrickColor = BrickColor.new("Neon orange")
  105.     local Sound = Instance.new("Sound",Flamethrower)
  106.     Sound.Looped = true
  107.     Sound.SoundId = "rbxassetid://346067083"
  108.     Sound.Volume = 5
  109.     Sound:Play()
  110.     CanHit = true
  111.     Super = false
  112.     SuperValue = 0
  113. end)
  114. Tool.Deactivated:Connect(function()
  115.     FlameParticle1.Enabled = false
  116.     FlameParticle2.Enabled = false
  117.     Flamethrower.BrickColor = BrickColor.new("CGA brown")
  118.     Flamethrower.Sound:Destroy()
  119.     CanHit = false
  120.     Super = false
  121.     SuperValue = 0
  122. end)
  123. Tool.Unequipped:Connect(function()
  124.     SuperValue = 0
  125.     for i,v in pairs(Flamethrower:GetChildren()) do
  126.         if v:IsA("Sound") then
  127.             v:Destroy()
  128.         end
  129.     end
  130.     CanHit = false
  131.     Super = false
  132.     SuperValue = 0
  133.     Flamethrower.BrickColor = BrickColor.new("CGA brown")
  134.     FlameParticle1.Enabled = false
  135.     FlameParticle2.Enabled = false
  136. end)
  137. function Burn(Target)
  138.     local Torso = Target:FindFirstChild("HumanoidRootPart") or Target:FindFirstChild("Torso") or Target:FindFirstChild("UpperTorso")
  139.     Target:FindFirstChildWhichIsA("Humanoid").Health = Target:FindFirstChildWhichIsA("Humanoid").Health-Damage
  140.     if not Torso:FindFirstChild("Burning") and not Torso:FindFirstChild("SuperBurning") then
  141.         local Burning = FlameParticle1:Clone()
  142.         local BurningKeypointsSize = {
  143.             NumberSequenceKeypoint.new(0,0),
  144.             NumberSequenceKeypoint.new(0.8,0.9),
  145.             NumberSequenceKeypoint.new(1,0)
  146.         }
  147.         Burning.Size = NumberSequence.new(BurningKeypointsSize)
  148.         Burning.Parent = Torso
  149.         Burning.SpreadAngle = Vector2.new(1000,1000)
  150.         Burning.Rate = 200
  151.         Burning.Speed = NumberRange.new(10)
  152.         Burning.Name = "Burning"
  153.         game.Debris:AddItem(Burning,7)
  154.         local Sound = Instance.new("Sound",Torso)
  155.         Sound.Looped = true
  156.         Sound.SoundId = "rbxassetid://1301200629"
  157.         Sound:Play()
  158.         game.Debris:AddItem(Sound,7)
  159.         while Torso:FindFirstChild("Burning") do
  160.             wait(.5)
  161.             Target.Humanoid:TakeDamage(AfterburnDamage)
  162.         end
  163.     end
  164. end
  165. function SuperBurn(Target)
  166.     local Torso = Target:FindFirstChild("HumanoidRootPart") or Target:FindFirstChild("Torso") or Target:FindFirstChild("UpperTorso")
  167.     Target:FindFirstChildWhichIsA("Humanoid").Health = Target:FindFirstChildWhichIsA("Humanoid").Health-Damage
  168.     if not Torso:FindFirstChild("SuperBurning") then
  169.         if Torso:FindFirstChild("Burning") then
  170.             Torso.Burning:Destroy()
  171.         end
  172.         local SuperBurning = FlameParticle1:Clone()
  173.         local SuperBurningKeypointsSize = {
  174.             NumberSequenceKeypoint.new(0,0),
  175.             NumberSequenceKeypoint.new(0.8,0.9),
  176.             NumberSequenceKeypoint.new(1,0)
  177.         }
  178.         SuperBurning.Size = NumberSequence.new(SuperBurningKeypointsSize)
  179.         SuperBurning.Parent = Torso
  180.         SuperBurning.SpreadAngle = Vector2.new(1000,1000)
  181.         SuperBurning.Rate = 400
  182.         SuperBurning.Speed = NumberRange.new(10)
  183.         SuperBurning.Name = "SuperBurning"
  184.         SuperBurning.Color = ColorSequence.new(Color3.fromRGB(0,200,0))
  185.         game.Debris:AddItem(SuperBurning,7)
  186.         local Sound = Instance.new("Sound",Torso)
  187.         Sound.Looped = true
  188.         Sound.SoundId = "rbxassetid://1301200629"
  189.         Sound.PlaybackSpeed = 1.25
  190.         Sound:Play()
  191.         game.Debris:AddItem(Sound,7)
  192.         while Torso:FindFirstChild("SuperBurning") do
  193.             wait(.5)
  194.             Target.Humanoid:TakeDamage(AfterburnDamage)
  195.         end
  196.     end
  197. end
  198. spawn(function()
  199.     while wait(.1) do
  200.         if CanHit then
  201.             if not Super then
  202.                 for i,v in pairs(Hitbox:GetTouchingParts()) do
  203.                     if v.Parent and v.Parent:FindFirstChildWhichIsA("Humanoid") and v.Parent.Name ~= Player.Name then
  204.                         spawn(function()
  205.                             Burn(v.Parent)
  206.                         end)
  207.                     end
  208.                 end
  209.             elseif Super then
  210.                 for i,v in pairs(SuperHitbox:GetTouchingParts()) do
  211.                     if v.Parent and v.Parent:FindFirstChildWhichIsA("Humanoid") and v.Parent.Name ~= Player.Name then
  212.                         spawn(function()
  213.                             SuperBurn(v.Parent)
  214.                         end)
  215.                     end
  216.                 end
  217.             end
  218.         end
  219.     end
  220. end)
  221. spawn(function()
  222.     while wait(1) do
  223.         if CanHit then
  224.             SuperValue = SuperValue+1
  225.         end
  226.     end
  227. end)
  228. game:GetService("RunService").Heartbeat:Connect(function()
  229.     if SuperValue == 5 then
  230.         SuperValue = SuperValue+1
  231.         Super = true
  232.         Sparkles:Emit(500)
  233.         Flamethrower.BrickColor = BrickColor.new("Lime green")
  234.         local Sound = Instance.new("Sound",Tool)
  235.         Sound.SoundId = "rbxasset://sounds/impact_explosion_03.mp3"
  236.         Sound.Volume = 3
  237.         Sound.PlaybackSpeed = 3
  238.         Sound:Play()
  239.         FlameParticle1.Color = ColorSequence.new(Color3.fromRGB(0,200,0))
  240.         FlameParticle1.SpreadAngle = Vector2.new(20,20)
  241.         FlameParticle1.Rate = 10000
  242.         FlameParticle1.Speed = NumberRange.new(100)
  243.         FlameParticle2.SpreadAngle = Vector2.new(10,10)
  244.         FlameParticle2.Rate = 500
  245.         FlameParticle2.Speed = NumberRange.new(75)
  246.         game.Debris:AddItem(Sound,2)
  247.     elseif SuperValue < 5 then
  248.         Super = false
  249.         FlameParticle1.Size = NumberSequence.new(FlameParticle1KeypointsSize)
  250.         FlameParticle1.Transparency = NumberSequence.new(FlameParticleKeypointsTransparency)
  251.         FlameParticle1.Color = ColorSequence.new(Color3.fromRGB(255,60,0))
  252.         FlameParticle1.LightInfluence = 0
  253.         FlameParticle1.LightEmission = 0.5
  254.         FlameParticle1.Texture = "rbxassetid://2070896802"
  255.         FlameParticle1.RotSpeed = NumberRange.new(1000)
  256.         FlameParticle1.EmissionDirection = Enum.NormalId.Right
  257.         FlameParticle1.Speed = NumberRange.new(40)
  258.         FlameParticle1.Lifetime = NumberRange.new(0.25)
  259.         FlameParticle1.Rate = 100
  260.         FlameParticle1.SpreadAngle = Vector2.new(0,0)
  261.         FlameParticle2.Size = NumberSequence.new(FlameParticle2KeypointsSize)
  262.         FlameParticle2.Transparency = NumberSequence.new(FlameParticleKeypointsTransparency)
  263.         FlameParticle2.Color = ColorSequence.new(Color3.fromRGB(255,255,0))
  264.         FlameParticle2.LightInfluence = 0
  265.         FlameParticle2.LightEmission = 0.5
  266.         FlameParticle2.Texture = "rbxassetid://2070896802"
  267.         FlameParticle2.RotSpeed = NumberRange.new(1000)
  268.         FlameParticle2.EmissionDirection = Enum.NormalId.Right
  269.         FlameParticle2.Speed = NumberRange.new(30)
  270.         FlameParticle2.Lifetime = NumberRange.new(0.25)
  271.         FlameParticle2.Rate = 120
  272.         FlameParticle2.SpreadAngle = Vector2.new(0,0)
  273.     end
  274. end)
  275. spawn(function()
  276.     while wait(.1) do
  277.         if CanHit then
  278.             if Super then
  279.                 Damage = LoggedDamage*2
  280.                 AfterburnDamage = LoggedAfterburnDamage*2
  281.                 Flamethrower.Sound.PlaybackSpeed = 1.2
  282.             elseif not Super then
  283.                 Damage = LoggedDamage
  284.                 AfterburnDamage = LoggedAfterburnDamage
  285.                 Flamethrower.Sound.PlaybackSpeed = 1
  286.             end
  287.         end
  288.     end
  289. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement