REDPlays

JoJo Part 3 Scripts

Jan 20th, 2020
15,215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.81 KB | None | 0 0
  1. --//Local Scripts for Barrage
  2.  
  3. local Player = game:GetService("Players").LocalPlayer
  4.  
  5. local rp = game:GetService("ReplicatedStorage")
  6. local Barrage = rp:WaitForChild("BarragePress")
  7.  
  8. local UIS = game:GetService("UserInputService")
  9.  
  10. local debounce = false
  11. local cooldown = 3
  12.  
  13. UIS.InputBegan:Connect(function(input,IsTyping)
  14. if IsTyping then
  15. return
  16. elseif input.KeyCode == Enum.KeyCode.F then
  17.  
  18. if workspace:FindFirstChild(Player.Name.." Stand") then
  19. if debounce == false then
  20. debounce = true
  21.  
  22. Barrage:FireServer()
  23. end
  24. end
  25.  
  26. end
  27. end)
  28.  
  29. Barrage.OnClientEvent:Connect(function()
  30. wait(cooldown)
  31. debounce = false
  32. end)
  33.  
  34. -----------------------------------
  35. local Player = game:GetService("Players").LocalPlayer
  36.  
  37. local rp = game:GetService("ReplicatedStorage")
  38. local Barrage = rp:WaitForChild("BarrageHold")
  39.  
  40. local UIS = game:GetService("UserInputService")
  41.  
  42. local debounce = false
  43. local active = false
  44. local cooldown = 3
  45.  
  46. UIS.InputBegan:Connect(function(input,IsTyping)
  47. if IsTyping then
  48. return
  49. elseif input.KeyCode == Enum.KeyCode.F then
  50.  
  51. if workspace:FindFirstChild(Player.Name.." Stand") then
  52. if debounce == false and active == false then
  53. debounce = true
  54.  
  55. Barrage:FireServer(active)
  56. end
  57. end
  58.  
  59. end
  60. end)
  61.  
  62. UIS.InputEnded:Connect(function(input,IsTyping)
  63. if IsTyping then
  64. return
  65. elseif input.KeyCode == Enum.KeyCode.F then
  66.  
  67. if workspace:FindFirstChild(Player.Name.." Stand") then
  68. if debounce == true and active == false then
  69. active = true
  70.  
  71. Barrage:FireServer(active)
  72. end
  73. end
  74.  
  75. end
  76. end)
  77.  
  78. Barrage.OnClientEvent:Connect(function()
  79. wait(cooldown)
  80. active = false
  81. debounce = false
  82. end)
  83.  
  84. --//Server scripts for Barrage
  85.  
  86. local rp = game:GetService("ReplicatedStorage")
  87. local Barrage = rp:WaitForChild("BarragePress")
  88. local TweenService = game:GetService("TweenService")
  89. local Debris = game:GetService("Debris")
  90.  
  91. local Damage = 1
  92. local debounce = false
  93. local length = 25
  94.  
  95. function leftSide(Character,Stand,Folder,armPart)
  96. local posY = math.random(1.25,1.75)
  97. local rotX = math.random(-5,1)
  98.  
  99. local Arm = script:WaitForChild("Arm"):Clone()
  100. Arm.CFrame = Stand:WaitForChild("HumanoidRootPart").CFrame * CFrame.new((math.random(-170,-150)/100),(math.random(50,150)/100),-.2)
  101. Arm.Orientation = Arm.Orientation + Vector3.new(rotX,-math.random(7,15),0)
  102. Arm.Color = armPart.Color
  103. Arm.Size = Vector3.new(1,1,1)
  104. Arm.Parent = Folder
  105. Debris:AddItem(Arm,.4)
  106.  
  107. Arm.Touched:Connect(function(Hit)
  108. if Hit:IsA("Part") or Hit:IsA("MeshPart") then
  109. if Hit.Parent ~= Character and Hit.Parent ~= Stand then
  110. local EHumanoid = Hit.Parent:FindFirstChild("Humanoid")
  111.  
  112. if EHumanoid and not EHumanoid:FindFirstChild("ArmPunch") then
  113. print("attacking")
  114. local ArmPunch = Instance.new("BoolValue",EHumanoid)
  115. ArmPunch.Name = "ArmPunch"
  116. Debris:AddItem(ArmPunch,.1)
  117.  
  118. local sound = Instance.new("Sound",Folder)
  119. sound.SoundId = "rbxassetid://2174934844"
  120. sound.Volume = 1
  121. sound:Play()
  122. Debris:AddItem(sound,.5)
  123.  
  124. local wave = script:WaitForChild("Wave"):Clone()
  125. wave.Parent = Folder
  126. wave.CFrame = Arm.CFrame * CFrame.new(0,0,-1)
  127. wave.Orientation = wave.Orientation + Vector3.new(90,0,0)
  128. Debris:AddItem(wave,.25)
  129.  
  130. local goal = {}
  131. goal.Size = wave.Size + Vector3.new(5,0,5)
  132. goal.Transparency = wave.Transparency + (1 - wave.Transparency)
  133. local info = TweenInfo.new(.25)
  134. local tween = TweenService:Create(wave,info,goal)
  135. tween:Play()
  136.  
  137. EHumanoid:TakeDamage(Damage)
  138. end
  139. end
  140. end
  141. end)
  142.  
  143. local goal = {}
  144. goal.Size = Arm.Size + Vector3.new(0,0,3)
  145. goal.CFrame = Arm.CFrame * CFrame.new(0,0,-1.5)
  146. local info = TweenInfo.new(.1,Enum.EasingStyle.Linear)
  147. local tween = TweenService:Create(Arm,info,goal)
  148. tween:Play()
  149.  
  150. spawn(function()
  151. wait(.1)
  152. local goal2 = {}
  153. goal2.Transparency = Arm.Transparency + (1 - Arm.Transparency)
  154. local info2 = TweenInfo.new(.1)
  155. local tween2 = TweenService:Create(Arm,info,goal2)
  156. tween2:Play()
  157. end)
  158.  
  159. end
  160.  
  161. function rightSide(Character,Stand,Folder,armPart)
  162. local posY = math.random(1.25,1.75)
  163. local rotX = math.random(-5,1)
  164.  
  165. local Arm = script:WaitForChild("Arm"):Clone()
  166. Arm.CFrame = Stand:WaitForChild("HumanoidRootPart").CFrame * CFrame.new((math.random(150,170)/100),(math.random(50,150)/100),-.2)
  167. Arm.Orientation = Arm.Orientation + Vector3.new(rotX,math.random(7,15),0)
  168. Arm.Color = armPart.Color
  169. Arm.Size = Vector3.new(1,1,1)
  170. Arm.Parent = Folder
  171. Debris:AddItem(Arm,.4)
  172.  
  173. Arm.Touched:Connect(function(Hit)
  174. if Hit:IsA("Part") or Hit:IsA("MeshPart") then
  175. if Hit.Parent ~= Character and Hit.Parent ~= Stand then
  176. local EHumanoid = Hit.Parent:FindFirstChild("Humanoid")
  177.  
  178. if EHumanoid and not EHumanoid:FindFirstChild("ArmPunch") then
  179. print("attacking")
  180. local ArmPunch = Instance.new("BoolValue",EHumanoid)
  181. ArmPunch.Name = "ArmPunch"
  182. Debris:AddItem(ArmPunch,.1)
  183.  
  184. local sound = Instance.new("Sound",Folder)
  185. sound.SoundId = "rbxassetid://2174934844"
  186. sound.Volume = 1
  187. sound:Play()
  188. Debris:AddItem(sound,.5)
  189.  
  190. local wave = script:WaitForChild("Wave"):Clone()
  191. wave.Parent = Folder
  192. wave.CFrame = Arm.CFrame * CFrame.new(0,0,-1)
  193. wave.Orientation = wave.Orientation + Vector3.new(90,0,0)
  194. Debris:AddItem(wave,.25)
  195.  
  196. local goal = {}
  197. goal.Size = wave.Size + Vector3.new(5,0,5)
  198. goal.Transparency = wave.Transparency + (1 - wave.Transparency)
  199. local info = TweenInfo.new(.25)
  200. local tween = TweenService:Create(wave,info,goal)
  201. tween:Play()
  202.  
  203. EHumanoid:TakeDamage(Damage)
  204. end
  205. end
  206. end
  207. end)
  208.  
  209. local goal = {}
  210. goal.Size = Arm.Size + Vector3.new(0,0,3)
  211. goal.CFrame = Arm.CFrame * CFrame.new(0,0,-1.5)
  212. local info = TweenInfo.new(.1,Enum.EasingStyle.Linear)
  213. local tween = TweenService:Create(Arm,info,goal)
  214. tween:Play()
  215.  
  216. spawn(function()
  217. wait(.1)
  218. local goal2 = {}
  219. goal2.Transparency = Arm.Transparency + (1 - Arm.Transparency)
  220. local info2 = TweenInfo.new(.1)
  221. local tween2 = TweenService:Create(Arm,info,goal2)
  222. tween2:Play()
  223. end)
  224.  
  225. end
  226.  
  227. Barrage.OnServerEvent:Connect(function(Player)
  228. local Stand = workspace:FindFirstChild(Player.Name.." Stand"):WaitForChild("Dummy")
  229.  
  230. if Stand then
  231. debounce = true
  232. local Character = Player.Character
  233. local Humanoid = Character:WaitForChild("Humanoid")
  234. local HumanoidRP = Character:WaitForChild("HumanoidRootPart")
  235. Humanoid.WalkSpeed = 2
  236. Humanoid.JumpPower = 0
  237.  
  238. local prevWeld = Stand:WaitForChild("HumanoidRootPart"):WaitForChild("Stand Weld")
  239. prevWeld:Destroy()
  240.  
  241. Stand:WaitForChild("HumanoidRootPart").CFrame = HumanoidRP.CFrame * CFrame.new(0,-.5,-1.5)
  242.  
  243. local weld = Instance.new("ManualWeld")
  244. weld.Name = "Stand Weld"
  245. weld.Part0 = Stand:WaitForChild("HumanoidRootPart")
  246. weld.Part1 = HumanoidRP
  247. weld.C0 = Stand:WaitForChild("HumanoidRootPart").CFrame:inverse() * HumanoidRP.CFrame
  248. weld.Parent = weld.Part0
  249.  
  250. local animControl = Stand:WaitForChild("AnimControl")
  251. for i, track in pairs(animControl:GetPlayingAnimationTracks()) do
  252. track:Stop()
  253. end
  254.  
  255. local Punching = animControl:LoadAnimation(script:WaitForChild("Punches"))
  256. Punching:Play()
  257.  
  258. local Folder = Instance.new("Folder",workspace)
  259. Folder.Name = Player.Name.." Barrage"
  260.  
  261. spawn(function()
  262. for i,v in pairs(Stand:GetChildren()) do
  263. if v.Name == "LeftHand" or v.Name == "LeftUpperArm" or v.Name == "LeftLowerArm" then
  264. v.Transparency = 1
  265. elseif v.Name == "RightHand" or v.Name == "RightUpperArm" or v.Name == "RightLowerArm" then
  266. v.Transparency = 1
  267. end
  268. end
  269. end)
  270.  
  271. local armPart = Stand:WaitForChild("LeftHand")
  272.  
  273. for i=1, length do
  274. leftSide(Character,Stand,Folder,armPart)
  275. wait(.1)
  276. rightSide(Character,Stand,Folder,armPart)
  277. wait(.1)
  278. end
  279. Folder:Destroy()
  280. Humanoid.WalkSpeed = 16
  281. Humanoid.JumpPower = 50
  282.  
  283. local prevWeld = Stand:WaitForChild("HumanoidRootPart"):WaitForChild("Stand Weld")
  284. prevWeld:Destroy()
  285.  
  286. Stand:WaitForChild("HumanoidRootPart").CFrame = HumanoidRP.CFrame * CFrame.new(2,0,2)
  287.  
  288. local weld = Instance.new("ManualWeld")
  289. weld.Name = "Stand Weld"
  290. weld.Part0 = Stand:WaitForChild("HumanoidRootPart")
  291. weld.Part1 = HumanoidRP
  292. weld.C0 = Stand:WaitForChild("HumanoidRootPart").CFrame:inverse() * HumanoidRP.CFrame
  293. weld.Parent = weld.Part0
  294.  
  295. for i, track in pairs(animControl:GetPlayingAnimationTracks()) do
  296. track:Stop()
  297. end
  298.  
  299. local Idle = animControl:LoadAnimation(script:WaitForChild("Idle"))
  300. Idle:Play()
  301.  
  302. spawn(function()
  303. for i,v in pairs(Stand:GetChildren()) do
  304. if v.Name == "LeftHand" or v.Name == "LeftUpperArm" or v.Name == "LeftLowerArm" then
  305. v.Transparency = 0
  306. elseif v.Name == "RightHand" or v.Name == "RightUpperArm" or v.Name == "RightLowerArm" then
  307. v.Transparency = 0
  308. end
  309. end
  310. end)
  311.  
  312. Barrage:FireClient(Player)
  313. end
  314. end)
  315.  
  316. -----------------------------------
  317.  
  318. local rp = game:GetService("ReplicatedStorage")
  319. local Barrage = rp:WaitForChild("BarrageHold")
  320. local TweenService = game:GetService("TweenService")
  321. local Debris = game:GetService("Debris")
  322.  
  323. local Damage = 1
  324. local debounce = false
  325.  
  326. function leftSide(Character,Stand,Folder,armPart)
  327. local posY = math.random(1.25,1.75)
  328. local rotX = math.random(-5,1)
  329.  
  330. local Arm = script:WaitForChild("Arm"):Clone()
  331. Arm.CFrame = Stand:WaitForChild("HumanoidRootPart").CFrame * CFrame.new((math.random(-170,-150)/100),(math.random(50,150)/100),-.2)
  332. Arm.Orientation = Arm.Orientation + Vector3.new(rotX,-math.random(7,15),0)
  333. Arm.Color = armPart.Color
  334. Arm.Size = Vector3.new(1,1,1)
  335. Arm.Parent = Folder
  336. Debris:AddItem(Arm,.4)
  337.  
  338. Arm.Touched:Connect(function(Hit)
  339. if Hit:IsA("Part") or Hit:IsA("MeshPart") then
  340. if Hit.Parent ~= Character and Hit.Parent ~= Stand then
  341. local EHumanoid = Hit.Parent:FindFirstChild("Humanoid")
  342.  
  343. if EHumanoid and not EHumanoid:FindFirstChild("ArmPunch") then
  344. print("attacking")
  345. local ArmPunch = Instance.new("BoolValue",EHumanoid)
  346. ArmPunch.Name = "ArmPunch"
  347. Debris:AddItem(ArmPunch,.1)
  348.  
  349. local sound = Instance.new("Sound",Folder)
  350. sound.SoundId = "rbxassetid://2174934844"
  351. sound.Volume = 1
  352. sound:Play()
  353. Debris:AddItem(sound,.5)
  354.  
  355. local wave = script:WaitForChild("Wave"):Clone()
  356. wave.Parent = Folder
  357. wave.CFrame = Arm.CFrame * CFrame.new(0,0,-1)
  358. wave.Orientation = wave.Orientation + Vector3.new(90,0,0)
  359. Debris:AddItem(wave,.25)
  360.  
  361. local goal = {}
  362. goal.Size = wave.Size + Vector3.new(5,0,5)
  363. goal.Transparency = wave.Transparency + (1 - wave.Transparency)
  364. local info = TweenInfo.new(.25)
  365. local tween = TweenService:Create(wave,info,goal)
  366. tween:Play()
  367.  
  368. EHumanoid:TakeDamage(Damage)
  369. end
  370. end
  371. end
  372. end)
  373.  
  374. local goal = {}
  375. goal.Size = Arm.Size + Vector3.new(0,0,3)
  376. goal.CFrame = Arm.CFrame * CFrame.new(0,0,-1.5)
  377. local info = TweenInfo.new(.1,Enum.EasingStyle.Linear)
  378. local tween = TweenService:Create(Arm,info,goal)
  379. tween:Play()
  380.  
  381. spawn(function()
  382. wait(.1)
  383. local goal2 = {}
  384. goal2.Transparency = Arm.Transparency + (1 - Arm.Transparency)
  385. local info2 = TweenInfo.new(.1)
  386. local tween2 = TweenService:Create(Arm,info,goal2)
  387. tween2:Play()
  388. end)
  389.  
  390. end
  391.  
  392. function rightSide(Character,Stand,Folder,armPart)
  393. local posY = math.random(1.25,1.75)
  394. local rotX = math.random(-5,1)
  395.  
  396. local Arm = script:WaitForChild("Arm"):Clone()
  397. Arm.CFrame = Stand:WaitForChild("HumanoidRootPart").CFrame * CFrame.new((math.random(150,170)/100),(math.random(50,150)/100),-.2)
  398. Arm.Orientation = Arm.Orientation + Vector3.new(rotX,math.random(7,15),0)
  399. Arm.Color = armPart.Color
  400. Arm.Size = Vector3.new(1,1,1)
  401. Arm.Parent = Folder
  402. Debris:AddItem(Arm,.4)
  403.  
  404. Arm.Touched:Connect(function(Hit)
  405. if Hit:IsA("Part") or Hit:IsA("MeshPart") then
  406. if Hit.Parent ~= Character and Hit.Parent ~= Stand then
  407. local EHumanoid = Hit.Parent:FindFirstChild("Humanoid")
  408.  
  409. if EHumanoid and not EHumanoid:FindFirstChild("ArmPunch") then
  410. print("attacking")
  411. local ArmPunch = Instance.new("BoolValue",EHumanoid)
  412. ArmPunch.Name = "ArmPunch"
  413. Debris:AddItem(ArmPunch,.1)
  414.  
  415. local sound = Instance.new("Sound",Folder)
  416. sound.SoundId = "rbxassetid://2174934844"
  417. sound.Volume = 1
  418. sound:Play()
  419. Debris:AddItem(sound,.5)
  420.  
  421. local wave = script:WaitForChild("Wave"):Clone()
  422. wave.Parent = Folder
  423. wave.CFrame = Arm.CFrame * CFrame.new(0,0,-1)
  424. wave.Orientation = wave.Orientation + Vector3.new(90,0,0)
  425. Debris:AddItem(wave,.25)
  426.  
  427. local goal = {}
  428. goal.Size = wave.Size + Vector3.new(5,0,5)
  429. goal.Transparency = wave.Transparency + (1 - wave.Transparency)
  430. local info = TweenInfo.new(.25)
  431. local tween = TweenService:Create(wave,info,goal)
  432. tween:Play()
  433.  
  434. EHumanoid:TakeDamage(Damage)
  435. end
  436. end
  437. end
  438. end)
  439.  
  440. local goal = {}
  441. goal.Size = Arm.Size + Vector3.new(0,0,3)
  442. goal.CFrame = Arm.CFrame * CFrame.new(0,0,-1.5)
  443. local info = TweenInfo.new(.1,Enum.EasingStyle.Linear)
  444. local tween = TweenService:Create(Arm,info,goal)
  445. tween:Play()
  446.  
  447. spawn(function()
  448. wait(.1)
  449. local goal2 = {}
  450. goal2.Transparency = Arm.Transparency + (1 - Arm.Transparency)
  451. local info2 = TweenInfo.new(.1)
  452. local tween2 = TweenService:Create(Arm,info,goal2)
  453. tween2:Play()
  454. end)
  455.  
  456. end
  457.  
  458. Barrage.OnServerEvent:Connect(function(Player,active)
  459. local Stand = workspace:FindFirstChild(Player.Name.." Stand"):WaitForChild("Dummy")
  460.  
  461. if Stand and active == false then
  462. debounce = true
  463. local Character = Player.Character
  464. local Humanoid = Character:WaitForChild("Humanoid")
  465. local HumanoidRP = Character:WaitForChild("HumanoidRootPart")
  466. Humanoid.WalkSpeed = 2
  467. Humanoid.JumpPower = 0
  468.  
  469. local prevWeld = Stand:WaitForChild("HumanoidRootPart"):WaitForChild("Stand Weld")
  470. prevWeld:Destroy()
  471.  
  472. Stand:WaitForChild("HumanoidRootPart").CFrame = HumanoidRP.CFrame * CFrame.new(0,-.5,-1.5)
  473.  
  474. local weld = Instance.new("ManualWeld")
  475. weld.Name = "Stand Weld"
  476. weld.Part0 = Stand:WaitForChild("HumanoidRootPart")
  477. weld.Part1 = HumanoidRP
  478. weld.C0 = Stand:WaitForChild("HumanoidRootPart").CFrame:inverse() * HumanoidRP.CFrame
  479. weld.Parent = weld.Part0
  480.  
  481. local animControl = Stand:WaitForChild("AnimControl")
  482. for i, track in pairs(animControl:GetPlayingAnimationTracks()) do
  483. track:Stop()
  484. end
  485.  
  486. local Punching = animControl:LoadAnimation(script:WaitForChild("Punches"))
  487. Punching:Play()
  488.  
  489. local Folder = Instance.new("Folder",workspace)
  490. Folder.Name = Player.Name.." Barrage"
  491.  
  492. spawn(function()
  493. for i,v in pairs(Stand:GetChildren()) do
  494. if v.Name == "LeftHand" or v.Name == "LeftUpperArm" or v.Name == "LeftLowerArm" then
  495. v.Transparency = 1
  496. elseif v.Name == "RightHand" or v.Name == "RightUpperArm" or v.Name == "RightLowerArm" then
  497. v.Transparency = 1
  498. end
  499. end
  500. end)
  501.  
  502. local armPart = Stand:WaitForChild("LeftHand")
  503.  
  504. while debounce == true do
  505. leftSide(Character,Stand,Folder,armPart)
  506. wait(.1)
  507. rightSide(Character,Stand,Folder,armPart)
  508. wait(.1)
  509. end
  510.  
  511. end
  512. end)
  513.  
  514. Barrage.OnServerEvent:Connect(function(Player,active)
  515. local Stand = workspace:FindFirstChild(Player.Name.." Stand"):WaitForChild("Dummy")
  516.  
  517. if Stand and active == true then
  518. debounce = false
  519. local Character = Player.Character
  520. local Humanoid = Character:WaitForChild("Humanoid")
  521. local HumanoidRP = Character:WaitForChild("HumanoidRootPart")
  522. Humanoid.WalkSpeed = 16
  523. Humanoid.JumpPower = 50
  524.  
  525. local prevWeld = Stand:WaitForChild("HumanoidRootPart"):WaitForChild("Stand Weld")
  526. prevWeld:Destroy()
  527.  
  528. Stand:WaitForChild("HumanoidRootPart").CFrame = HumanoidRP.CFrame * CFrame.new(2,0,2)
  529.  
  530. local weld = Instance.new("ManualWeld")
  531. weld.Name = "Stand Weld"
  532. weld.Part0 = Stand:WaitForChild("HumanoidRootPart")
  533. weld.Part1 = HumanoidRP
  534. weld.C0 = Stand:WaitForChild("HumanoidRootPart").CFrame:inverse() * HumanoidRP.CFrame
  535. weld.Parent = weld.Part0
  536.  
  537. local animControl = Stand:WaitForChild("AnimControl")
  538. for i, track in pairs(animControl:GetPlayingAnimationTracks()) do
  539. track:Stop()
  540. end
  541.  
  542. local Idle = animControl:LoadAnimation(script:WaitForChild("Idle"))
  543. Idle:Play()
  544.  
  545. local Folder = workspace:FindFirstChild(Player.Name.." Barrage")
  546. Folder:Destroy()
  547.  
  548. spawn(function()
  549. for i,v in pairs(Stand:GetChildren()) do
  550. if v.Name == "LeftHand" or v.Name == "LeftUpperArm" or v.Name == "LeftLowerArm" then
  551. v.Transparency = 0
  552. elseif v.Name == "RightHand" or v.Name == "RightUpperArm" or v.Name == "RightLowerArm" then
  553. v.Transparency = 0
  554. end
  555. end
  556. end)
  557.  
  558. Barrage:FireClient(Player)
  559. end
  560. end)
Advertisement
Add Comment
Please, Sign In to add comment