SHOW:
|
|
- or go back to the newest paste.
| 1 | - | Run this local --Pyro by madiik |
| 1 | + | |
| 2 | - | --Note, The PYRO script doesn't support Airblast yet, It's still being created. |
| 2 | + | |
| 3 | c = p.Character | |
| 4 | torso = c.Torso | |
| 5 | local firee = false | |
| 6 | local damage = 1 | |
| 7 | local debounce = false | |
| 8 | local debounced = false | |
| 9 | local debounceair = false | |
| 10 | local firedebounce = false | |
| 11 | local removehatchet = false | |
| 12 | local hatchetequipped = false | |
| 13 | RunService = game:service'RunService' | |
| 14 | Debris = game:service'Debris' | |
| 15 | local mouse = p:GetMouse() | |
| 16 | damagelist = {}
| |
| 17 | time_until_extinguish = 50 | |
| 18 | for _,v in pairs(c:children()) do | |
| 19 | pcall(function() | |
| 20 | if v.className == "Hat" then | |
| 21 | v:remove() | |
| 22 | end | |
| 23 | end) | |
| 24 | end | |
| 25 | ra = c["Right Arm"] | |
| 26 | la = c["Left Arm"] | |
| 27 | rs = c.Torso["Right Shoulder"] | |
| 28 | ls = c.Torso["Left Shoulder"] | |
| 29 | ||
| 30 | ||
| 31 | mask = Instance.new("Part")
| |
| 32 | mask.Size = Vector3.new(2, 1, 1) | |
| 33 | mask.BrickColor = BrickColor.new("Dark stone grey")
| |
| 34 | mask:BreakJoints() | |
| 35 | mask.Name = "Mask" | |
| 36 | mask.Parent = c | |
| 37 | ms4 = Instance.new("SpecialMesh", mask)
| |
| 38 | ms4.Scale = Vector3.new(1.3, 1.15, 1.3) | |
| 39 | w9 = Instance.new("Weld", mask)
| |
| 40 | w9.Part0 = mask | |
| 41 | w9.Part1 = c.Head | |
| 42 | w9.C0 = CFrame.new(0, 0, 0) | |
| 43 | ||
| 44 | mask2 = Instance.new("Part")
| |
| 45 | mask2.FormFactor = "Custom" | |
| 46 | mask2.Size = Vector3.new(0.4, 0.5, 0.4) | |
| 47 | mask2.BrickColor = BrickColor.new("Dark stone grey")
| |
| 48 | mask2:BreakJoints() | |
| 49 | mask2.Parent = c | |
| 50 | ms5 = Instance.new("CylinderMesh", mask2)
| |
| 51 | ms5.Scale = Vector3.new(1, 1, 1) | |
| 52 | w8 = Instance.new("Weld", mask2)
| |
| 53 | w8.Part0 = mask2 | |
| 54 | w8.Part1 = c.Head | |
| 55 | w8.C0 = CFrame.new(0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
| 56 | ||
| 57 | mask3 = Instance.new("Part")
| |
| 58 | mask3.FormFactor = "Custom" | |
| 59 | mask3.Size = Vector3.new(0.4, 0.5, 0.4) | |
| 60 | mask3.BrickColor = BrickColor.new("Dark stone grey")
| |
| 61 | mask3:BreakJoints() | |
| 62 | mask3.Parent = c | |
| 63 | ms6 = Instance.new("CylinderMesh", mask3)
| |
| 64 | ms6.Scale = Vector3.new(1, 1, 1) | |
| 65 | w10 = Instance.new("Weld", mask3)
| |
| 66 | w10.Part0 = mask3 | |
| 67 | w10.Part1 = c.Head | |
| 68 | w10.C0 = CFrame.new(-0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
| 69 | ||
| 70 | mask4 = Instance.new("Part")
| |
| 71 | mask4.FormFactor = "Custom" | |
| 72 | mask4.Size = Vector3.new(0.35, 0.51, 0.35) | |
| 73 | mask4.BrickColor = BrickColor.new("Black")
| |
| 74 | mask4:BreakJoints() | |
| 75 | mask4.Reflectance = 0.4 | |
| 76 | mask4.Parent = c | |
| 77 | ms7 = Instance.new("CylinderMesh", mask4)
| |
| 78 | ms7.Scale = Vector3.new(1, 1, 1) | |
| 79 | w11 = Instance.new("Weld", mask4)
| |
| 80 | w11.Part0 = mask4 | |
| 81 | w11.Part1 = c.Head | |
| 82 | w11.C0 = CFrame.new(0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
| 83 | ||
| 84 | mask5 = Instance.new("Part")
| |
| 85 | mask5.FormFactor = "Custom" | |
| 86 | mask5.Size = Vector3.new(0.35, 0.51, 0.35) | |
| 87 | mask5.BrickColor = BrickColor.new("Black")
| |
| 88 | mask5.Reflectance = 0.4 | |
| 89 | mask5:BreakJoints() | |
| 90 | mask5.Parent = c | |
| 91 | ms8 = Instance.new("CylinderMesh", mask5)
| |
| 92 | ms8.Scale = Vector3.new(1, 1, 1) | |
| 93 | w12 = Instance.new("Weld", mask5)
| |
| 94 | w12.Part0 = mask5 | |
| 95 | w12.Part1 = c.Head | |
| 96 | w12.C0 = CFrame.new(-0.25, -0.4, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
| 97 | ||
| 98 | mask7 = Instance.new("Part")
| |
| 99 | mask7.FormFactor = "Custom" | |
| 100 | mask7.Size = Vector3.new(0.2, 1.1, 0.2) | |
| 101 | mask7.BrickColor = BrickColor.new("Dark stone grey")
| |
| 102 | mask7:BreakJoints() | |
| 103 | mask7.Parent = c | |
| 104 | ms8 = Instance.new("CylinderMesh", mask7)
| |
| 105 | ms8.Scale = Vector3.new(1, 1, 1) | |
| 106 | w12 = Instance.new("Weld", mask7)
| |
| 107 | w12.Part0 = mask7 | |
| 108 | w12.Part1 = c.Head | |
| 109 | w12.C0 = CFrame.new(-0.6, -0.3, -0.1) * CFrame.Angles(math.pi/2, 0, 0) | |
| 110 | spot = Instance.new("SpotLight", mask)
| |
| 111 | spot.Range = 60 | |
| 112 | spot.Angle = 70 | |
| 113 | spot.Color = Color3.new(1, 1, 0) | |
| 114 | ||
| 115 | mask6 = Instance.new("Part")
| |
| 116 | mask6.FormFactor = "Custom" | |
| 117 | mask6.Size = Vector3.new(0.35, 0.65, 0.35) | |
| 118 | mask6.BrickColor = BrickColor.new("Dark stone grey")
| |
| 119 | mask6:BreakJoints() | |
| 120 | mask6.Parent = c | |
| 121 | ms9 = Instance.new("CylinderMesh", mask6)
| |
| 122 | ms9.Scale = Vector3.new(1, 1, 1) | |
| 123 | w13 = Instance.new("Weld", mask6)
| |
| 124 | w13.Part0 = mask6 | |
| 125 | w13.Part1 = c.Head | |
| 126 | w13.C0 = CFrame.new(0.2, -0.4, 0) * CFrame.Angles(math.rad(115), math.rad(22.5), 0) | |
| 127 | ||
| 128 | ||
| 129 | tool = Instance.new("HopperBin", p.Backpack)
| |
| 130 | tool.Name = "Pyro" | |
| 131 | tool.Selected:connect(function(mouse) | |
| 132 | bg2 = Instance.new("BodyGyro",c.Torso)
| |
| 133 | bg2.P = 20e+003 | |
| 134 | bg2.maxTorque = Vector3.new(4e+005,4e+005,4e+005)*math.huge | |
| 135 | ||
| 136 | ||
| 137 | game:service("RunService").Stepped:connect(function()
| |
| 138 | bg2.cframe = CFrame.new(c.Torso.Position,Vector3.new(mouse.hit.p.x,c.Torso.Position.y,mouse.hit.p.z)) * CFrame.Angles(0, math.rad(-60), 0) | |
| 139 | end) | |
| 140 | ||
| 141 | ||
| 142 | ||
| 143 | rs.Part0 = nil | |
| 144 | rs.Part1 = nil | |
| 145 | ls.Part0 = nil | |
| 146 | ls.Part1 = nil | |
| 147 | rweld = Instance.new("Weld", c)
| |
| 148 | rweld.C0 = CFrame.new(-1.48,0,0.2) * CFrame.Angles(math.rad(-18), math.rad(0), math.rad(0)) | |
| 149 | rweld.Part0 = ra | |
| 150 | rweld.Part1 = torso | |
| 151 | lweld = Instance.new("Weld", c)
| |
| 152 | lweld.C0 = CFrame.new(1.5,0.2,0.2) * CFrame.Angles(math.rad(-50), math.rad(22.5), math.rad(0)) | |
| 153 | lweld.Part0 = la | |
| 154 | lweld.Part1 = torso | |
| 155 | neck = c.Torso.Neck | |
| 156 | neck.C0 = neck.C0 * CFrame.Angles(math.rad(0), math.rad(0), math.rad(60)) wait(0.01) | |
| 157 | ||
| 158 | ballon1 = Instance.new("Part")
| |
| 159 | ballon1.Size = Vector3.new(1, 2, 1) | |
| 160 | ballon1.BrickColor = BrickColor.new("White")
| |
| 161 | ballon1:BreakJoints() | |
| 162 | ballon1.Parent = c | |
| 163 | Instance.new("SpecialMesh", ballon1)
| |
| 164 | w = Instance.new("Weld", ballon1)
| |
| 165 | w.Part0 = ballon1 | |
| 166 | w.Part1 = torso | |
| 167 | w.C0 = CFrame.new(0.45, 0, -0.8) | |
| 168 | ||
| 169 | ballon2 = Instance.new("Part")
| |
| 170 | ballon2.Size = Vector3.new(1, 2, 1) | |
| 171 | ballon2.BrickColor = BrickColor.new("White")
| |
| 172 | ballon2:BreakJoints() | |
| 173 | ballon2.Parent = c | |
| 174 | Instance.new("SpecialMesh", ballon2)
| |
| 175 | w1 = Instance.new("Weld", ballon2)
| |
| 176 | w1.Part0 = ballon2 | |
| 177 | w1.Part1 = torso | |
| 178 | w1.C0 = CFrame.new(-0.45, 0, -0.8) | |
| 179 | ||
| 180 | base = Instance.new("Part")
| |
| 181 | base.FormFactor = "Custom" | |
| 182 | base.Size = Vector3.new(0.4, 5, 0.4) | |
| 183 | base:breakJoints() | |
| 184 | base.BrickColor = BrickColor.Black() | |
| 185 | base.Parent = c | |
| 186 | Instance.new("CylinderMesh", base)
| |
| 187 | w2 = Instance.new("Weld", base)
| |
| 188 | w2.Part0 = base | |
| 189 | w2.Part1 = torso | |
| 190 | w2.C0 = CFrame.new(1.1, 0.5, 0.5) * CFrame.Angles(math.pi/2,math.rad(120), 0) | |
| 191 | ||
| 192 | sound = Instance.new("Sound", base)
| |
| 193 | sound.SoundId = "http://roblox.com/asset/?id=10209616" | |
| 194 | sound.Volume = 1 | |
| 195 | sound.Looped = true | |
| 196 | ||
| 197 | fire = Instance.new("Part")
| |
| 198 | fire.Parent = nil | |
| 199 | fire.FormFactor = "Custom" | |
| 200 | fire.Size = Vector3.new(8, 55, 4) | |
| 201 | fire.Transparency = 1 | |
| 202 | fire.CanCollide = false | |
| 203 | fire.Anchored = true | |
| 204 | pl = Instance.new("PointLight", fire)
| |
| 205 | pl.Range = 24 | |
| 206 | pl.Color = Color3.new(255/255, 170/255, 0/255) | |
| 207 | ||
| 208 | coroutine.wrap(function() | |
| 209 | while true do | |
| 210 | fire.CFrame = base.CFrame * CFrame.new(0, -30, 0) | |
| 211 | RunService.Stepped:wait() | |
| 212 | end | |
| 213 | end)() | |
| 214 | ||
| 215 | ||
| 216 | sm = Instance.new("Part", c)
| |
| 217 | sm.FormFactor = "Custom" | |
| 218 | sm.BottomSurface = 0 | |
| 219 | sm.TopSurface = 0 | |
| 220 | sm.BrickColor = BrickColor.Black() | |
| 221 | sm.Size = Vector3.new(0.5, 0.5, 0.5) | |
| 222 | sm.Transparency = 0 | |
| 223 | sm:BreakJoints() | |
| 224 | ||
| 225 | pl7 = Instance.new("PointLight", sm)
| |
| 226 | pl7.Range = 12 | |
| 227 | pl7.Color = Color3.new(255/255, 170/255, 0/255) | |
| 228 | ||
| 229 | smoke = Instance.new("Smoke", sm)
| |
| 230 | smoke.Enabled = false | |
| 231 | smoke.Color = Color3.new(255/255, 170/255, 0/255) | |
| 232 | smoke.RiseVelocity = 15 | |
| 233 | smoke.Size = 1 | |
| 234 | w3 = Instance.new("Weld", sm)
| |
| 235 | w3.Part0 = sm | |
| 236 | w3.Part1 = base | |
| 237 | w3.C0 = CFrame.new(0, -2.5, 0) * CFrame.Angles(math.pi, 0, 0) | |
| 238 | ||
| 239 | p1 = Instance.new("Part", c)
| |
| 240 | p1.FormFactor = "Custom" | |
| 241 | p1.BrickColor = BrickColor.Gray() | |
| 242 | p1.Size = Vector3.new(0.8, 1.7, 0.8) | |
| 243 | p1:BreakJoints() | |
| 244 | Instance.new("CylinderMesh", p1)
| |
| 245 | w4 = Instance.new("Weld", p1)
| |
| 246 | w4.Part0 = p1 | |
| 247 | w4.Part1 = base | |
| 248 | w4.C0 = CFrame.new(0, 0.5, 0.3) | |
| 249 | ||
| 250 | p2 = Instance.new("Part", c)
| |
| 251 | p2.FormFactor = "Custom" | |
| 252 | p2.BrickColor = BrickColor.Black() | |
| 253 | p2.Size = Vector3.new(0.4, 1, 0.4) | |
| 254 | p2:BreakJoints() | |
| 255 | p2.BottomSurface = 0 | |
| 256 | p2.TopSurface = 0 | |
| 257 | w5 = Instance.new("Weld", p2)
| |
| 258 | w5.Part0 = p2 | |
| 259 | w5.Part1 = base | |
| 260 | w5.C0 = CFrame.new(0, 0, -2.5) * CFrame.Angles(math.pi/2, 0, 0) | |
| 261 | ||
| 262 | ||
| 263 | p3 = Instance.new("Part", c)
| |
| 264 | p3.FormFactor = "Custom" | |
| 265 | p3.BrickColor = BrickColor.Black() | |
| 266 | p3.Size = Vector3.new(0.3, 1, 0.2) | |
| 267 | p3:BreakJoints() | |
| 268 | p3.BottomSurface = 0 | |
| 269 | p3.TopSurface = 0 | |
| 270 | w6 = Instance.new("Weld", p3)
| |
| 271 | w6.Part0 = p3 | |
| 272 | w6.Part1 = base | |
| 273 | w6.C0 = CFrame.new(0, -1, -0.3) * CFrame.Angles(math.pi/6, 0, 0) | |
| 274 | ||
| 275 | ||
| 276 | p4 = Instance.new("Part", c)
| |
| 277 | p4.FormFactor = "Custom" | |
| 278 | p4.BrickColor = BrickColor.Black() | |
| 279 | p4.Size = Vector3.new(0.3, 1, 0.2) | |
| 280 | p4:BreakJoints() | |
| 281 | p4.BottomSurface = 0 | |
| 282 | p4.TopSurface = 0 | |
| 283 | w7 = Instance.new("Weld", p4)
| |
| 284 | w7.Part0 = p4 | |
| 285 | w7.Part1 = base | |
| 286 | w7.C0 = CFrame.new(0, -0.1, -1.5) * CFrame.Angles(math.pi/2, 0, 0) | |
| 287 | ||
| 288 | ||
| 289 | ||
| 290 | ||
| 291 | ||
| 292 | ||
| 293 | ||
| 294 | ||
| 295 | fiaar = Instance.new("Fire", sm)
| |
| 296 | fiaar.Size = 1 | |
| 297 | fiaar.Heat = 200 | |
| 298 | fiaar.Enabled = false | |
| 299 | ||
| 300 | ||
| 301 | ||
| 302 | ||
| 303 | ||
| 304 | ||
| 305 | ||
| 306 | mouse.KeyDown:connect(function(key) | |
| 307 | if key == "e" then | |
| 308 | if debounceair then return end | |
| 309 | if firee then return end | |
| 310 | debounceair = true | |
| 311 | airblast() | |
| 312 | end | |
| 313 | if string.byte(key) == 48 then | |
| 314 | c.Humanoid.WalkSpeed = 28 | |
| 315 | end | |
| 316 | ||
| 317 | ||
| 318 | end) | |
| 319 | mouse.KeyUp:connect(function(key) | |
| 320 | if string.byte(key) == 48 then | |
| 321 | c.Humanoid.WalkSpeed = 16 | |
| 322 | end | |
| 323 | end) | |
| 324 | ||
| 325 | ||
| 326 | mouse.Button1Down:connect(function() | |
| 327 | if firee == false then | |
| 328 | firee = true | |
| 329 | end | |
| 330 | end) | |
| 331 | ||
| 332 | mouse.Button1Up:connect(function() | |
| 333 | if firee == true then | |
| 334 | firee = false | |
| 335 | end | |
| 336 | end) | |
| 337 | ||
| 338 | end) | |
| 339 | tool.Deselected:connect(function(mouse) | |
| 340 | ballon1:Destroy() | |
| 341 | ballon2:Destroy() | |
| 342 | base:Destroy() | |
| 343 | sm:Destroy() | |
| 344 | fire:Destroy() | |
| 345 | neck.C0 = neck.C0 * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-60)) wait(0.01) | |
| 346 | bg2:Destroy() | |
| 347 | p1:Destroy() | |
| 348 | p2:Destroy() | |
| 349 | p3:Destroy() | |
| 350 | p4:Destroy() | |
| 351 | rs.Part0 = c.Torso | |
| 352 | rs.Part1 = ra | |
| 353 | ls.Part0 = c.Torso | |
| 354 | ls.Part1 = la | |
| 355 | rweld:Destroy() | |
| 356 | lweld:Destroy() | |
| 357 | ||
| 358 | end) | |
| 359 | function ahh(hit) | |
| 360 | if hit.Parent.Name == game.Players.LocalPlayer.Name then return end | |
| 361 | if hit ~= nil and hit.Parent ~= nil then | |
| 362 | ||
| 363 | if hit.Parent:findFirstChild("Humanoid") ~= nil then
| |
| 364 | coroutine.wrap(function() | |
| 365 | if not damagelist[hit.Parent.Name] then | |
| 366 | if hit.Parent.Humanoid.Health ~= 0 then | |
| 367 | damagelist[hit.Parent.Name] = {humanoid = hit.Parent.Humanoid, time = time_until_extinguish}
| |
| 368 | for i,v in pairs(hit.Parent:children()) do | |
| 369 | if v:IsA("Part") then
| |
| 370 | Instance.new("Fire", v)
| |
| 371 | end | |
| 372 | end | |
| 373 | end | |
| 374 | else | |
| 375 | damagelist[hit.Parent.Name].time = time_until_extinguish | |
| 376 | end | |
| 377 | end)() | |
| 378 | end | |
| 379 | end | |
| 380 | end | |
| 381 | ||
| 382 | coroutine.wrap(function() | |
| 383 | while wait() do | |
| 384 | for i,damageobject in pairs(damagelist) do | |
| 385 | damageobject.humanoid.Health = damageobject.humanoid.Health - damage | |
| 386 | damageobject.time = damageobject.time - 1 | |
| 387 | ||
| 388 | if damageobject.time < 1 then | |
| 389 | if damageobject.humanoid then | |
| 390 | for _,n in pairs(damageobject.humanoid.Parent:children()) do | |
| 391 | if n:IsA("Part") and n.Parent:IsA("Model") ~= nil and n:findFirstChild("Fire") ~= nil then
| |
| 392 | n.Fire:Destroy() | |
| 393 | end | |
| 394 | end | |
| 395 | end | |
| 396 | damagelist[i] = nil | |
| 397 | end | |
| 398 | end | |
| 399 | if not debounceair then | |
| 400 | if firee then | |
| 401 | --coroutine.wrap(function() | |
| 402 | if base ~= nil then | |
| 403 | smoke.Enabled = true | |
| 404 | pl7.Enabled = true | |
| 405 | fiaar.Enabled = true | |
| 406 | fire.Parent = Workspace | |
| 407 | sound:play() | |
| 408 | ||
| 409 | fire.Touched:connect(ahh) | |
| 410 | end | |
| 411 | ||
| 412 | --end)() | |
| 413 | else | |
| 414 | if base ~= nil then | |
| 415 | smoke.Enabled = false | |
| 416 | fire.Parent = nil | |
| 417 | pl7.Enabled = false | |
| 418 | fiaar.Enabled = false | |
| 419 | sound:stop() | |
| 420 | end | |
| 421 | end | |
| 422 | end | |
| 423 | end | |
| 424 | ||
| 425 | end)() | |
| 426 | ||
| 427 | ||
| 428 | function airblast() | |
| 429 | if hatchetequipped then return end | |
| 430 | if air ~= nil then return end | |
| 431 | air = Instance.new("Part")
| |
| 432 | air.FormFactor = "Custom" | |
| 433 | air.Size = Vector3.new(8, 3, 8) | |
| 434 | air.Transparency = 0.8 | |
| 435 | air:BreakJoints() | |
| 436 | air.BottomSurface = 0 | |
| 437 | air.TopSurface = 0 | |
| 438 | air.CanCollide = false | |
| 439 | air.Anchored = true | |
| 440 | air.Parent = Workspace | |
| 441 | coroutine.wrap(function() | |
| 442 | wait(0.15) | |
| 443 | air.CanCollide = true | |
| 444 | end)() | |
| 445 | ||
| 446 | coroutine.wrap(function() | |
| 447 | for i = 0, 40, 1.2 do | |
| 448 | air.CFrame = base.CFrame * CFrame.new(0, -i, 0) | |
| 449 | RunService.Stepped:wait(0.0000001) | |
| 450 | end | |
| 451 | end)() | |
| 452 | coroutine.wrap(function() | |
| 453 | while air ~= nil do | |
| 454 | for _, model in pairs(workspace:children()) do | |
| 455 | if model:IsA("Model") and model:findFirstChild("Humanoid") ~= nil and model.Name ~= p.Name then
| |
| 456 | if (model.Torso.CFrame.Position - air.CFrame.Position).magnitude < 3 then | |
| 457 | model.Torso.CFrame = base.CFrame * CFrame.new(0, 0, 30) | |
| 458 | end | |
| 459 | end | |
| 460 | end | |
| 461 | wait() | |
| 462 | end | |
| 463 | end)() | |
| 464 | wait(2) | |
| 465 | air:Destroy() | |
| 466 | ||
| 467 | end |