Advertisement
Guest User

Astriel!

a guest
Jan 27th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Player Stuff
  2. Pleyur = game.Players:WaitForChild("NeighborlyWolfyboy01")
  3. Chara = Pleyur.Character
  4.  
  5. local moosik = 4 -- 1 for Hopes and Dreams, 2 for Necrofantasia, 3 for Nuclear Fusion,
  6.  
  7. BlastQuotes = {"Readying Hikari Blast...","Prepare for your end!","I will purify your soul!"}
  8. BusterQuotes = {"Preparing Hikari Buster!","Feel the wrath of Light!","This is the true power!"}
  9. FinalBlastQuotes = {"NOW PERISH!","DIE!","YOU WON'T SURVIVE THIS ONE!","HIKARI BLAST!"}
  10. EquipBladeQuotes = {"Hikari Blade!","I'll cut you to pieces!","You made a mistake being too close!"}
  11. SlashFireQuotes = {"DON'T GET AWAY!","SWIFT SLICE!","YOU WON'T RUN!"}
  12.  
  13. function chat(string)
  14. chansu = math.random(1,2)
  15. if chansu == 1 then
  16. ch = game:GetService("Chat"):Chat(Chara.Head, string, "Red")
  17. end
  18. end
  19.  
  20. Chara.Humanoid.MaxHealth = math.huge
  21. Chara.Humanoid.Health = math.huge
  22. Chara.Humanoid.WalkSpeed = 40
  23.  
  24. local lol = nil
  25.  
  26. if Pleyur ~= nil then
  27. lol = Instance.new("Tool", Pleyur.Backpack)
  28. lol.Name = "Hikari Blast"
  29. lol.CanBeDropped = false
  30. lol2 = Instance.new("Tool", Pleyur.Backpack)
  31. lol2.Name = "Purity Blast"
  32. lol2.CanBeDropped = false
  33. lol3 = Instance.new("Tool", Pleyur.Backpack)
  34. lol3.Name = "Hikari Blade"
  35. lol3.CanBeDropped = false
  36. lol3.GripForward = Vector3.new(-1, 0, 0)
  37. lol3.GripPos = Vector3.new(0, 0, -2.52)
  38. lol3.GripRight = Vector3.new(0, 1, 0)
  39. lol3.GripUp = Vector3.new(0, 0, 1)
  40. handur2 = Instance.new("Part", lol)
  41. handur2.Name = "Handle"
  42. handur2.Size = Vector3.new(.2, .2, .2)
  43. handur2.Transparency = 1
  44. handur3 = Instance.new("Part", lol2)
  45. handur3.Name = "Handle"
  46. handur3.Size = Vector3.new(.2, .2, .2)
  47. handur3.Transparency = 1
  48. handur = Instance.new("Part", lol3)
  49. handur.Name = "Handle"
  50. handur.Size = Vector3.new(1, 0.8, 10)
  51. handur.Reflectance = 10
  52. handur.BrickColor = BrickColor.new("Institutional white")
  53. meshhh = Instance.new("SpecialMesh", handur)
  54. meshhh.MeshType = "FileMesh"
  55. meshhh.MeshId = "http://www.roblox.com/asset/?id=22771612"
  56. meshhh.Scale = Vector3.new(0.5,0.5,0.8)
  57. end
  58.  
  59. local transPoints = {
  60.                         NumberSequenceKeypoint.new(0,.819,.0375),
  61.                         NumberSequenceKeypoint.new(.207,.594,.0187),
  62.                         NumberSequenceKeypoint.new(.4,.55,.031),
  63.                         NumberSequenceKeypoint.new(.57,.619,.05),
  64.                         NumberSequenceKeypoint.new(.76,.8,.0375),
  65.                         NumberSequenceKeypoint.new(1,1,0),
  66.                 }
  67.  
  68. local LAEffectu = Instance.new("ParticleEmitter", Chara["Left Arm"])
  69. LAEffectu.Texture = "rbxasset://textures/particles/smoke_main.dds"
  70. LAEffectu.LightEmission = 1
  71. LAEffectu.Enabled = false
  72. LAEffectu.Rate = 100000
  73. LAEffectu.EmissionDirection = "Bottom"
  74. LAEffectu.Size = NumberSequence.new(1,1)
  75. LAEffectu.Lifetime = NumberRange.new(.3,.3)
  76. LAEffectu.RotSpeed = NumberRange.new(1000,1000)
  77. LAEffectu.Speed = NumberRange.new(10,10)
  78. LAEffectu.Transparency = NumberSequence.new(transPoints)
  79. LAEffectu.VelocitySpread = 20
  80. LAEffectu.LockedToPart = true
  81.  
  82. local Slash1 = Instance.new("Animation",script)
  83. Slash1.AnimationId = "http://www.roblox.com/Asset?ID=218504594"
  84. local Slash2 = Instance.new("Animation",script)
  85. Slash2.AnimationId = "http://www.roblox.com/asset/?id=184573779"
  86. local Slash3 = Instance.new("Animation",script)
  87. Slash3.AnimationId = "http://www.roblox.com/asset/?id=186934910"
  88. local Slash4 = Instance.new("Animation",script)
  89. Slash4.AnimationId = "http://www.roblox.com/asset/?id=218508052"
  90. local Beam = Instance.new("Animation",script)
  91. Beam.AnimationId = "http://www.roblox.com/Asset?ID=86504773"
  92.  
  93. WhackAnim = Chara.Humanoid:LoadAnimation(Slash1)
  94. WhackAnim2 = Chara.Humanoid:LoadAnimation(Slash2)
  95. WhackAnim3 = Chara.Humanoid:LoadAnimation(Slash3)
  96. WhackAnim4 = Chara.Humanoid:LoadAnimation(Slash4)
  97. Beam = Chara.Humanoid:LoadAnimation(Beam)
  98.  
  99. local SwordEffect = Instance.new("ParticleEmitter", handur)
  100. SwordEffect.Texture = "rbxasset://textures/particles/smoke_main.dds"
  101. SwordEffect.LightEmission = 1
  102. SwordEffect.Enabled = false
  103. SwordEffect.Rate = 1000000
  104. SwordEffect.Size = NumberSequence.new(2,2)
  105. SwordEffect.Lifetime = NumberRange.new(.3,.3)
  106. SwordEffect.Transparency = NumberSequence.new(transPoints)
  107. SwordEffect.Speed = NumberRange.new(0,0)
  108. SwordEffect.RotSpeed = NumberRange.new(1000,1000)
  109.  
  110. local chargesnd = Instance.new("Sound")
  111. chargesnd.Name = "Charge"
  112. chargesnd.Parent = script
  113. chargesnd.SoundId = "http://www.roblox.com/asset/?id=2101137"
  114. chargesnd.Volume = 1
  115. chargesnd.Pitch = .5
  116.  
  117. local shotsnd = Instance.new("Sound")
  118. shotsnd.Name = "Shoot"
  119. shotsnd.Parent = script
  120. shotsnd.SoundId = "http://www.roblox.com/asset/?id=13775494"
  121. shotsnd.Volume = 1
  122. shotsnd.Pitch = .7
  123.  
  124. local shotsnd2 = Instance.new("Sound")
  125. shotsnd2.Name = "Shoot2"
  126. shotsnd2.Parent = script
  127. shotsnd2.SoundId = "http://www.roblox.com/asset/?id=48618802"
  128. shotsnd2.Volume = 1
  129. shotsnd2.Pitch = 1
  130.  
  131. local lungesnd = Instance.new("Sound")
  132. lungesnd.Name = "Lunge"
  133. lungesnd.Parent = script
  134. lungesnd.SoundId = "rbxasset://sounds/swordlunge.wav"
  135. lungesnd.Volume = 1
  136. lungesnd.Pitch = 1
  137.  
  138. local slshsnd = Instance.new("Sound")
  139. slshsnd.Name = "Slash"
  140. slshsnd.Parent = lol3
  141. slshsnd.SoundId = "http://www.roblox.com/Asset?ID=154965962"
  142. slshsnd.Volume = 1
  143. slshsnd.Pitch = 1
  144.  
  145. local slshsnd2 = Instance.new("Sound")
  146. slshsnd2.Name = "Slash2"
  147. slshsnd2.Parent = lol3
  148. slshsnd2.SoundId = "http://www.roblox.com/Asset?ID=231917758"
  149. slshsnd2.Volume = 1
  150. slshsnd2.Pitch = 1
  151.  
  152. local hitsnd = Instance.new("Sound")
  153. hitsnd.Name = "Hit"
  154. hitsnd.Parent = lol3
  155. hitsnd.SoundId = "http://www.roblox.com/asset/?id=154965973"
  156. hitsnd.Volume = 1
  157. hitsnd.Pitch = 1
  158.  
  159. --Godly Effects, bro!-------------------------------------------------------------------------------------------------------------------------
  160.  
  161. Void = nil
  162. VoidParts = {}
  163.  
  164. function RayCast(Position, Direction, MaxDistance, IgnoreList)
  165.     return game:GetService("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (MaxDistance or 999.999)), IgnoreList)
  166. end
  167.  
  168.     local loopsound = Instance.new("Sound")
  169.     loopsound.Name = "LoopSound"
  170.     loopsound.Looped = true
  171.     loopsound.Parent = script
  172.     loopsound.Volume = 1
  173.     if moosik == 1 then --Hopes and Dreams 
  174.     loopsound.SoundId = "http://www.roblox.com/asset/?id=328606227"
  175.     loopsound.Pitch = 1
  176.     elseif moosik == 2 then --Necrofantasia
  177.     loopsound.SoundId = "http://www.roblox.com/asset/?id=170884430"
  178.     loopsound.Pitch = .25
  179.     elseif moosik == 3 then --Nuclear Fusion
  180.     loopsound.SoundId = "http://www.roblox.com/asset/?id=170885892"
  181.     loopsound.Pitch = .25
  182.     elseif moosik == 4 then --Victory
  183.     loopsound.SoundId = "http://www.roblox.com/asset/?id=565863302"
  184.     loopsound.Pitch = 1
  185.     end
  186.    
  187.     script.LoopSound:Play()
  188.    
  189.     local startsound = Instance.new("Sound")
  190.     startsound.Name = "StartUp"
  191.     startsound.Parent = script
  192.     startsound.SoundId = "rbxasset://Sounds/collide.wav"
  193.     startsound.Volume = 0.5
  194.     startsound.Pitch = 1
  195.  
  196.     local ex = Instance.new("Explosion", game.Workspace)
  197.     ex.BlastPressure = 0
  198.     ex.Position = Chara:FindFirstChild("Torso").Position
  199.     script.StartUp:Play()
  200.     Humanoid = Chara:FindFirstChild("Humanoid")
  201.     Torso = Chara:FindFirstChild("Torso")
  202.     if not Pleyur or not Humanoid or Humanoid.Health == 0 or not Torso then
  203.         return
  204.     end
  205.     Equipped = true
  206.     Void = Instance.new("Model")
  207.     Void.Name = "Void"
  208.     Angle = 0
  209.     for i = 1, 1 do
  210.         local VoidPart = Instance.new("Part")
  211.         VoidPart.Name = "VoidPart"
  212.         VoidPart.Transparency = 0.2
  213.         VoidPart.BrickColor = BrickColor.new("Institutional white")
  214.         VoidPart.Material = Enum.Material.Plastic
  215.         VoidPart.Shape = Enum.PartType.Block
  216.         VoidPart.TopSurface = Enum.SurfaceType.Smooth
  217.         VoidPart.BottomSurface = Enum.SurfaceType.Smooth
  218.         VoidPart.Anchored = true
  219.         VoidPart.CanCollide = false
  220.         VoidPart.Locked = true
  221.         VoidPart.Size = Vector3.new(10, 0.2, 10)
  222.         local Meshu = Instance.new("SpecialMesh", VoidPart)
  223.         Meshu.MeshType = "FileMesh"
  224.         Meshu.MeshId = "http://www.roblox.com/asset/?id=20329976"
  225.         Meshu.Offset = Vector3.new(0,0,-1)
  226.         Meshu.Scale = Vector3.new(10,4,10)
  227.         VoidPart.Parent = Void
  228.         local Light = Instance.new("PointLight", VoidPart)
  229.         Light.Brightness = 100
  230.         Light.Range = 10
  231.         local Effectu = Instance.new("ParticleEmitter", VoidPart)
  232.         Effectu.LightEmission = 1
  233.         Effectu.Lifetime = NumberRange.new(5,5)
  234.         Effectu.Transparency = NumberSequence.new(transPoints)
  235.         Effectu.RotSpeed = NumberRange.new(100,100)
  236.         Effectu.Speed = NumberRange.new(10,10)
  237.         Effectu.LockedToPart = true
  238.         table.insert(VoidParts, VoidPart)
  239.     end
  240.     Spawn(function()
  241.         while Equipped and Humanoid.Parent and Humanoid.Health > 0 and Chara do
  242.             if Angle == 360 then
  243.                 Angle = 0
  244.             end
  245.             Angle = Angle + .25
  246.             local Hit, EndPosition = RayCast(Chara.Torso.Position, Vector3.new(0, -1, 0), (Chara.Torso.Size.Y * 6.5), {Chara})
  247.             if Hit then
  248.                 if not Void.Parent then
  249.                     Void.Parent = Chara
  250.                 end
  251.                 for i, v in pairs(VoidParts) do
  252.                     v.CFrame = CFrame.new(Chara.Torso.Position.X, EndPosition.Y, Chara.Torso.Position.Z) * CFrame.Angles(0, (Angle + i), 0)
  253.                 end
  254.             else
  255.                 Void.Parent = nil
  256.             end
  257.             wait()
  258.         end
  259.     end)
  260.  
  261. --Hikari Blast-------------------------------------------------------------------------------------------------------------------------
  262. local r = game:service("RunService")
  263. local debris = game:GetService("Debris")
  264.  
  265. sword = handur2
  266. Tool = lol
  267.  
  268. local damage = 0
  269.  
  270. local proc = 40
  271.  
  272. local lungeAnim = nil
  273.  
  274. function blowprojectile(hit)
  275.     if (hit.Parent == nil) then return end -- happens when bullet hits sword
  276.  
  277.     local humanoid = nil
  278.     local ceal = hit.Parent:GetChildren()
  279.     for i = 1, #ceal do
  280.     if ceal[i].ClassName == "Humanoid" then
  281.     humanoid = ceal[i]
  282.     end
  283.     end
  284.     local vCharacter = Tool.Parent
  285.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  286.     local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
  287.     if humanoid~=nil and humanoid ~= hum and hum ~= nil then
  288.         -- final check, make sure sword is in-hand
  289. hit:BreakJoints()
  290.    
  291.         local right_arm = vCharacter:FindFirstChild("Right Arm")
  292.         if (right_arm ~= nil) then
  293.             local joint = right_arm:FindFirstChild("RightGrip")
  294.             if (joint ~= nil and (joint.Part0 == sword or joint.Part1 == sword)) then
  295.                 tagHumanoid(humanoid, vPlayer)
  296.                 humanoid:TakeDamage(proc)
  297.                 local bodyp = humanoid.Parent:GetChildren()
  298.                 if humanoid.Health <= 1 then
  299.                 for i = 1, #bodyp do
  300.                 if bodyp[i].ClassName == "Part" then
  301.                 if bodyp[i]:FindFirstChild("Effecto") == nil then
  302.                 bodyp[i].Material = "Neon"
  303.                 bodyp[i].BrickColor = BrickColor.new("Institutional white")
  304.                 local LAE = Instance.new("ParticleEmitter", bodyp[i])
  305.                 LAE.Name = "Effecto"               
  306.                 LAE.Texture = "rbxasset://textures/particles/smoke_main.dds"
  307.                 LAE.LightEmission = 1
  308.                 LAE.Rate = 20
  309.                 LAE.EmissionDirection = "Bottom"
  310.                 LAE.Lifetime = NumberRange.new(0.3,0.3)
  311.                 LAE.RotSpeed = NumberRange.new(1000,1000)
  312.                 LAE.Speed = NumberRange.new(0,0)
  313.                 end
  314.                 end
  315.                 if bodyp[i].Name == "Head" then
  316.                 bodyp[i].Mesh:destroy()
  317.                 bodyp[i].face:destroy()
  318.                 end
  319.                 if bodyp[i].ClassName == "Shirt" or bodyp[i].ClassName == "ShirtGraphic" or bodyp[i].ClassName == "Pants" or bodyp[i].ClassName == "CharacterMesh" then
  320.                 bodyp[i]:destroy()
  321.                 end
  322.                 end
  323.                 end
  324.                 local AE = Instance.new("ParticleEmitter", humanoid.Parent.Torso)
  325.                 AE.Name = "HitSwordEff"            
  326.                 AE.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  327.                 AE.LightEmission = 1
  328.                 AE.Rate = 10000
  329.                 AE.EmissionDirection = "Front"
  330.                 AE.Lifetime = NumberRange.new(.5,.5)
  331.                 AE.Transparency = NumberSequence.new(transPoints)
  332.                 AE.RotSpeed = NumberRange.new(1000,1000)
  333.                 AE.Speed = NumberRange.new(50,50)
  334.                 AE.VelocitySpread = 100
  335.                 wait(1)
  336.                 AE:Destroy()
  337.                 untagHumanoid(humanoid)
  338.             end
  339.         end
  340.     end
  341. end
  342.  
  343. function fire(v, part)
  344.  
  345.     local vCharacter = Tool.Parent
  346.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  347.        
  348.     local missile = Instance.new("Part")
  349.  
  350.    
  351.  
  352.     missile.CFrame = part.CFrame * CFrame.Angles(math.pi/2,0,0)
  353.     missile.Size = Vector3.new(1,1,1)
  354.     missile.Velocity = v.unit * 100
  355.     missile.BrickColor = BrickColor.new("Institutional white")
  356.     missile.Material = "Neon"
  357.     missile.BottomSurface = 0
  358.     missile.TopSurface = 0
  359.     missile.CanCollide = false
  360.     missile.Elasticity = .05
  361.     missile.Friction = .7
  362.     missile.Name = "Bullet"
  363.  
  364.     missile.Touched:connect(blowprojectile)
  365.  
  366.     local mesh = Instance.new("SpecialMesh")
  367.     mesh.MeshType = "Sphere"
  368.     mesh.Parent = missile
  369.    
  370.     local force = Instance.new("BodyForce")
  371.     force.force = Vector3.new(0,137,0)
  372.     force.Parent = missile
  373.    
  374.     local shs = Instance.new("ParticleEmitter", missile)
  375.     shs.Texture = "rbxasset://textures/particles/smoke_main.dds"
  376.     shs.LightEmission = 1
  377.     shs.Rate = 100000
  378.     shs.EmissionDirection = "Bottom"
  379.     shs.Size = NumberSequence.new(0.5,0.5)
  380.     shs.Lifetime = NumberRange.new(1,1)
  381.     shs.Transparency = NumberSequence.new(transPoints)
  382.     shs.RotSpeed = NumberRange.new(1000,1000)
  383.     shs.Speed = NumberRange.new(0,0)
  384.  
  385. --  local force = Instance.new("BodyForce")
  386. --  force.Name = "BulletFloat"
  387. --  force.force = Vector3.new(0,98.1,0)
  388. --  force.Parent = missile
  389.    
  390.     debris:AddItem(missile,5)
  391.     missile.Parent = game.Workspace
  392.  
  393.     shotsnd:play()
  394. end
  395.  
  396. function giantfire(v, part)
  397.  
  398.     local vCharacter = Tool.Parent
  399.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  400.        
  401.     local missile = Instance.new("Part")
  402.  
  403.    
  404.  
  405.     missile.CFrame = part.CFrame * CFrame.Angles(math.pi/2,0,0)
  406.     missile.Size = Vector3.new(4,4,4)
  407.     missile.Velocity = v.unit * 100
  408.     missile.BrickColor = BrickColor.new("Institutional white")
  409.     missile.Material = "Neon"
  410.     missile.BottomSurface = 0
  411.     missile.TopSurface = 0
  412.     missile.CanCollide = false
  413.     missile.Elasticity = .05
  414.     missile.Friction = .7
  415.     missile.Name = "Bullet"
  416.  
  417.     missile.Touched:connect(blowprojectile)
  418.  
  419.     local mesh = Instance.new("SpecialMesh")
  420.     mesh.MeshType = "Sphere"
  421.     mesh.Parent = missile
  422.    
  423.     local force = Instance.new("BodyForce")
  424.     force.force = Vector3.new(0,9000,0)
  425.     force.Parent = missile
  426.    
  427.     local shs = Instance.new("ParticleEmitter", missile)
  428.     shs.Texture = "rbxasset://textures/particles/smoke_main.dds"
  429.     shs.LightEmission = 1
  430.     shs.Rate = 100000
  431.     shs.EmissionDirection = "Bottom"
  432.     shs.Size = NumberSequence.new(0.5,0.5)
  433.     shs.Lifetime = NumberRange.new(1,1)
  434.     shs.Transparency = NumberSequence.new(transPoints)
  435.     shs.RotSpeed = NumberRange.new(1000,1000)
  436.     shs.Speed = NumberRange.new(0,0)
  437.  
  438. --  local force = Instance.new("BodyForce")
  439. --  force.Name = "BulletFloat"
  440. --  force.force = Vector3.new(0,98.1,0)
  441. --  force.Parent = missile
  442.    
  443.     debris:AddItem(missile,5)
  444.     missile.Parent = game.Workspace
  445.  
  446.     shotsnd2:play()
  447. end
  448.  
  449. function tagHumanoid(humanoid, player)
  450.     local creator_tag = Instance.new("ObjectValue")
  451.     creator_tag.Value = player
  452.     creator_tag.Name = "creator"
  453.     creator_tag.Parent = humanoid
  454. end
  455.  
  456. function untagHumanoid(humanoid)
  457.     if humanoid ~= nil then
  458.         local tag = humanoid:findFirstChild("creator")
  459.         if tag ~= nil then
  460.             tag.Parent = nil
  461.         end
  462.     end
  463. end
  464.  
  465. function onActivated()
  466.     if Tool.Enabled then
  467.  
  468.     Tool.Enabled = false
  469.  
  470. --  local character = Chara;
  471. --  local humanoid = character.Humanoid
  472. --  if humanoid == nil then
  473. --      print("Humanoid not found")
  474. --      return
  475. --  end
  476.     Beam:Play()
  477.     LAEffectu.Enabled = true
  478.     chargesnd:play()
  479.     chat(BlastQuotes[math.random(1, #BlastQuotes)])
  480.     wait(2)
  481.     for i = 1, 6 do
  482.     wait(0.3)
  483.     fire(Chara.HumanoidRootPart.CFrame.lookVector, Chara["Left Arm"])
  484.     end
  485.     WhackAnim3:Play()
  486.     chat(FinalBlastQuotes[math.random(1, #FinalBlastQuotes)])
  487.     wait(0.6)
  488.     shotsnd.Pitch = 0.5
  489.     giantfire(Chara.HumanoidRootPart.CFrame.lookVector, Chara["Left Arm"])
  490.     wait(0.1)
  491.     shotsnd.Pitch = 0.7
  492.     LAEffectu.Enabled = false
  493.     WhackAnim3:Stop()
  494.     end
  495.     Tool.Enabled = true
  496. end
  497.  
  498.  
  499. function onEquipped()
  500.     local vCharacter = Chara
  501.     local humanoid = vCharacter:findFirstChild("Humanoid")  
  502.     if humanoid ~= nil then end
  503. end
  504.  
  505.  
  506. Tool.Activated:connect(onActivated)
  507. Tool.Equipped:connect(onEquipped)
  508. --Beam of Purity-------------------------------------------------------------------------------------------------------------------------
  509.  
  510.  
  511. --Sword!-------------------------------------------------------------------------------------------------------------------------
  512.  
  513. -- Handle to the game service, in case we need to get the time
  514. r = game:service("RunService")
  515.  
  516. -- normal damage, when the Mackerel touches a humanoid object
  517. local damage = 0
  518.  
  519. -- Whack damage
  520. local whack_damage = 10
  521.  
  522. -- Handle to tool
  523. Mackerel = lol3.Handle
  524. Tool3 = lol3
  525. local animstates = 1
  526.  
  527. -- When a collision is detected between the player and another character
  528. function blow(hit)
  529.     if hit == nil or hit.Parent == nil then return end
  530.     local opponent = hit.Parent:findFirstChild("Torso")
  531.     local humanoid = nil
  532.     local ceal = hit.Parent:GetChildren()
  533.     for i = 1, #ceal do
  534.     if ceal[i].ClassName == "Humanoid" then
  535.     humanoid = ceal[i]
  536.     end
  537.     end
  538.     local vCharacter = Tool3.Parent
  539.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  540.     local myTorso = vCharacter:findFirstChild("Torso")
  541.     local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
  542.     if humanoid~=nil and humanoid ~= hum and hum ~= nil then           
  543.         -- final check, make sure Mackerel is in-hand
  544. hit:BreakJoints()
  545.         local right_arm = vCharacter:FindFirstChild("Right Arm")
  546.         if (right_arm ~= nil) then
  547.             local joint = right_arm:FindFirstChild("RightGrip")
  548.             if (joint ~= nil and (joint.Part0 == Mackerel or joint.Part1 == Mackerel)) then
  549.                 tagHumanoid(humanoid, vPlayer)
  550.                 humanoid:TakeDamage(damage)            
  551.                 -- Add body velocity to the opponent to push him when he gets whacked              
  552. --              local bodyVelocity = Instance.new("BodyVelocity")
  553. --              bodyVelocity.P = 100000
  554. --              bodyVelocity.maxForce = Vector3.new(bodyVelocity.P, bodyVelocity.P, bodyVelocity.P)
  555. --              bodyVelocity.velocity = (opponent.Position - myTorso.Position) * 6
  556. --              bodyVelocity.Parent = opponent
  557. --              wait(0.5)
  558. --              if bodyVelocity ~= nil then bodyVelocity:remove() end
  559.                 if humanoid.Health <= 1 then
  560.                 local bodyp = hit.Parent:GetChildren()
  561.                 for i = 1, #bodyp do
  562.                 if bodyp[i].ClassName == "Part" then
  563.                 if bodyp[i]:FindFirstChild("Effecto") == nil then
  564.                 bodyp[i].Material = "Neon"
  565.                 bodyp[i].BrickColor = BrickColor.new("Institutional white")
  566.                 local LAE = Instance.new("ParticleEmitter", bodyp[i])
  567.                 LAE.Name = "Effecto"               
  568.                 LAE.Texture = "rbxasset://textures/particles/smoke_main.dds"
  569.                 LAE.LightEmission = 1
  570.                 LAE.Rate = 20
  571.                 LAE.EmissionDirection = "Bottom"
  572.                 LAE.Lifetime = NumberRange.new(0.3,0.3)
  573.                 LAE.RotSpeed = NumberRange.new(1000,1000)
  574.                 LAE.Speed = NumberRange.new(0,0)
  575.                 end
  576.                 end
  577.                 if bodyp[i].Name == "Head" then
  578.                 bodyp[i].Mesh:destroy()
  579.                 bodyp[i].face:destroy()
  580.                 end
  581.                 if bodyp[i].ClassName == "Shirt" or bodyp[i].ClassName == "ShirtGraphic" or bodyp[i].ClassName == "Pants" or bodyp[i].ClassName == "CharacterMesh" then
  582.                 bodyp[i]:destroy()
  583.                 end
  584.                 end
  585.                 end
  586.                 Tool3:FindFirstChild("Hit"):play()
  587.                 local AE = Instance.new("ParticleEmitter", humanoid.Parent.Torso)
  588.                 AE.Name = "HitSwordEff"            
  589.                 AE.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  590.                 AE.LightEmission = 1
  591.                 AE.Rate = 10000
  592.                 AE.EmissionDirection = "Front"
  593.                 AE.Lifetime = NumberRange.new(.3,.3)
  594.                 AE.Transparency = NumberSequence.new(transPoints)
  595.                 AE.RotSpeed = NumberRange.new(1000,1000)
  596.                 AE.Speed = NumberRange.new(50,50)
  597.                 AE.VelocitySpread = 100
  598.                 wait(0.5)
  599.                 AE:Destroy()
  600.                 untagHumanoid(humanoid)
  601.             end
  602.         end
  603.  
  604.     end
  605. end
  606.  
  607. function blowprojectileslash(hit)
  608.     if (hit.Parent == nil) then return end -- happens when bullet hits sword
  609.     local humanoid = nil
  610.     local ceal = hit.Parent:GetChildren()
  611.     for i = 1, #ceal do
  612.     if ceal[i].ClassName == "Humanoid" then
  613.     humanoid = ceal[i]
  614.     end
  615.     end
  616.     local vCharacter = Tool3.Parent
  617.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  618.     local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
  619.     if humanoid~=nil and humanoid ~= hum and hum ~= nil then
  620.         -- final check, make sure sword is in-hand
  621. hit:BreakJoints()
  622.    
  623. --      local right_arm = vCharacter:FindFirstChild("Right Arm")
  624. --      if (right_arm ~= nil) then
  625. --          local joint = right_arm:FindFirstChild("RightGrip")
  626. --          if (joint ~= nil and (joint.Part0 == sword or joint.Part1 == sword)) then
  627.                 tagHumanoid(humanoid, vPlayer)
  628.                 humanoid:TakeDamage(100)
  629.                 if humanoid.Health <= 1 then
  630.                 local bodyp = hit.Parent:GetChildren()
  631.                 for i = 1, #bodyp do
  632.                 if bodyp[i].ClassName == "Part" then
  633.                 if bodyp[i]:FindFirstChild("Effecto") == nil then
  634.                 bodyp[i].Material = "Neon"
  635.                 bodyp[i].BrickColor = BrickColor.new("Institutional white")
  636.                 local LAE = Instance.new("ParticleEmitter", bodyp[i])
  637.                 LAE.Name = "Effecto"               
  638.                 LAE.Texture = "rbxasset://textures/particles/smoke_main.dds"
  639.                 LAE.LightEmission = 1
  640.                 LAE.Rate = 20
  641.                 LAE.EmissionDirection = "Bottom"
  642.                 LAE.Lifetime = NumberRange.new(.5,.5)
  643.                 LAE.Transparency = NumberSequence.new(transPoints)
  644.                 LAE.RotSpeed = NumberRange.new(1000,1000)
  645.                 LAE.Speed = NumberRange.new(0,0)
  646.                 end
  647.                 end
  648.                 if bodyp[i].Name == "Head" then
  649.                 bodyp[i].Mesh:destroy()
  650.                 bodyp[i].face:destroy()
  651.                 end
  652.                 if bodyp[i].ClassName == "Shirt" or bodyp[i].ClassName == "ShirtGraphic" or bodyp[i].ClassName == "Pants" or bodyp[i].ClassName == "CharacterMesh" then
  653.                 bodyp[i]:destroy()
  654.                 end
  655.                 end
  656.                 end
  657.                 Tool3:FindFirstChild("Hit"):play()
  658.                 local AE = Instance.new("ParticleEmitter", humanoid.Parent.Torso)
  659.                 AE.Name = "HitSwordEff"            
  660.                 AE.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  661.                 AE.LightEmission = 1
  662.                 AE.Rate = 10000
  663.                 AE.EmissionDirection = "Front"
  664.                 AE.Lifetime = NumberRange.new(0.3,0.3)
  665.                 AE.Transparency = NumberSequence.new(transPoints)
  666.                 AE.RotSpeed = NumberRange.new(1000,1000)
  667.                 AE.Speed = NumberRange.new(50,50)
  668.                 AE.VelocitySpread = 100
  669.                 wait(1)
  670.                 AE:Destroy()
  671.                 untagHumanoid(humanoid)
  672. --          end
  673. --      end
  674.     end
  675. end
  676.  
  677. function fireslash(v, part)
  678.  
  679.     local vCharacter = Tool3.Parent
  680.     local vPlayer = game.Players:playerFromCharacter(vCharacter)
  681.        
  682.     local missile = Instance.new("Part")
  683.  
  684.    
  685.  
  686.     missile.CFrame = part.CFrame * CFrame.Angles(math.pi/2,0,0)
  687.     missile.Size = Vector3.new(1,1,1)
  688.     missile.Velocity = v.unit * 400
  689.     missile.BrickColor = BrickColor.new("Institutional white")
  690.     missile.Material = "Neon"
  691.     missile.BottomSurface = 0
  692.     missile.TopSurface = 0
  693.     missile.CanCollide = false
  694.     missile.Elasticity = .05
  695.     missile.Friction = .7
  696.     missile.Name = "Bullet"
  697.  
  698.     missile.Touched:connect(blowprojectileslash)
  699.  
  700.     local mesh = Instance.new("SpecialMesh")
  701.     mesh.MeshType = "Sphere"
  702.     mesh.Scale = Vector3.new(0.1,7,7)
  703.     mesh.Parent = missile
  704.    
  705.     local force = Instance.new("BodyForce")
  706.     force.force = Vector3.new(0,137,0)
  707.     force.Parent = missile
  708.    
  709. --  local mehss = Instance.new("SpecialMesh", missile)
  710. --  mehss.MeshType = "FileMesh"
  711. --  mehss.MeshId = "rbxassetid://65514292"
  712. --  mehss.Scale = Vector3.new(10,10,1)
  713.    
  714.     local shs = Instance.new("ParticleEmitter", missile)
  715.     shs.Texture = "rbxasset://textures/particles/sparkles_main.dds"
  716.     shs.LightEmission = 1
  717.     shs.Rate = 20
  718.     shs.EmissionDirection = "Bottom"
  719.     shs.Size = NumberSequence.new(0.5,0.5)
  720.     shs.Lifetime = NumberRange.new(1,1)
  721.     shs.Transparency = NumberSequence.new(transPoints)
  722.     shs.RotSpeed = NumberRange.new(1000,1000)
  723.     shs.Speed = NumberRange.new(0,0)
  724.  
  725. --  local force = Instance.new("BodyForce")
  726. --  force.Name = "BulletFloat"
  727. --  force.force = Vector3.new(0,98.1,0)
  728. --  force.Parent = missile
  729.    
  730.     debris:AddItem(missile,5)
  731.     missile.Parent = game.Workspace
  732.    
  733.     slshsnd2:play()
  734.     slshsnd:play()
  735.     lungesnd:play()
  736. end
  737.  
  738. -- Tagging and Untagging primarily for the leaderboards
  739. function tagHumanoid(humanoid, player)
  740.     local creator_tag = Instance.new("ObjectValue")
  741.     creator_tag.Value = player
  742.     creator_tag.Name = "creator"
  743.     creator_tag.Parent = humanoid
  744. end
  745.  
  746. function untagHumanoid(humanoid)
  747.     if humanoid ~= nil then
  748.         local tag = humanoid:findFirstChild("creator")
  749.         if tag ~= nil then
  750.             tag.Parent = nil
  751.         end
  752.     end
  753. end
  754.  
  755.  
  756.  -- On, left click!
  757. function attack()
  758.     damage = whack_damage
  759.     -- Play the sound
  760.     if Tool3:FindFirstChild("Slash") and Tool3:FindFirstChild("Slash2") then Tool3:FindFirstChild("Slash"):Play() Tool3:FindFirstChild("Slash2"):Play() end
  761. end
  762.  
  763. -- Tentative lock
  764. Tool3.Enabled = true
  765.  
  766. function onActivated()
  767.     if not Tool3.Enabled then
  768.         return
  769.     end
  770.     Tool3.Enabled = false
  771. -- Check if the handle to the Player is still available in the space
  772.     local MyPlayer = Chara
  773.     if MyPlayer == nil then
  774.         return
  775.     end    
  776.     -- Check to see if the humanoid is still in the world
  777.     local  MyHumanoid= MyPlayer:FindFirstChild("Humanoid")
  778.     if MyHumanoid == nil then
  779.         return
  780.     end
  781.     attack()   
  782.     -- Load and play the animation
  783.     SwordEffect.Enabled = true
  784.     if WhackAnim and WhackAnim2 and WhackAnim3 and WhackAnim4 then
  785.     if animstates == 1 then
  786.     WhackAnim:Play()
  787.     animstates = 2
  788.     elseif animstates == 2 then
  789.     WhackAnim2:Play()
  790.     lol3.GripUp = Vector3.new(1,-1,1)
  791.     animstates = 3
  792.     elseif animstates == 3 then
  793.     WhackAnim3:Play()
  794.     animstates = 4
  795.     elseif animstates == 4 then
  796.     WhackAnim4:Play()
  797.     wait(0.3)
  798.     slshsnd2.Pitch = 1.2
  799.     slshsnd:play()
  800.     slshsnd2:play()
  801.     chat(SlashFireQuotes[math.random(1, #SlashFireQuotes)])
  802.     wait(0.3)
  803.     fireslash(Chara.HumanoidRootPart.CFrame.lookVector, Chara.HumanoidRootPart)
  804.     slshsnd2.Pitch = 1
  805.     animstates = 1
  806.     end
  807.     end
  808.     wait(0.5)  
  809.     lol3.GripRight = Vector3.new(0,1,0)
  810.     lol3.GripUp = Vector3.new(0,0,1)
  811.     SwordEffect.Enabled = false
  812.     Tool3.Enabled = true
  813.     -- Reset the damage
  814.     damage = 0
  815. end
  816.  
  817.  
  818. function onEquipped()      
  819.     -- Remove the sound if its still playing
  820.     chat(EquipBladeQuotes[math.random(1, #EquipBladeQuotes)])
  821.     Tool3:FindFirstChild("Slash").Volume = 1
  822.     Tool3:FindFirstChild("Slash2").Volume = 1
  823.     if Tool3:FindFirstChild("Slash") and Tool3:FindFirstChild("Slash2") then Tool3:FindFirstChild("Slash"):Stop() Tool3:FindFirstChild("Slash2"):Stop() end
  824.     Tool3.GripRight = Vector3.new(0, 1, 0)
  825. end
  826.  
  827. function onUnequipped()
  828.     -- Remove the sounds and the animations
  829.     Tool3:FindFirstChild("Slash").Volume = 0
  830.     Tool3:FindFirstChild("Slash2").Volume = 0  
  831.     if WhackAnim and WhackAnim2 and WhackAnim3 and WhackAnim4 then WhackAnim:Stop() WhackAnim2:Stop() WhackAnim3:Stop() WhackAnim4:Stop() end  
  832.     if Tool3:FindFirstChild("Slash") then Tool3:FindFirstChild("Slash"):Stop() end 
  833. end
  834.  
  835. Tool3.Activated:connect(onActivated)
  836. Tool3.Equipped:connect(onEquipped)
  837. Tool3.Unequipped:connect(onUnequipped)
  838.  
  839. connection = Mackerel.Touched:connect(blow)
  840.  
  841. --On Death--------------------------------------------------------------------------------------------------
  842. function onDeath()
  843. script:Destroy()
  844. end
  845.  
  846. Chara.Humanoid.Died:connect(onDeath)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement