Advertisement
andly654321

Physic Gun

Jun 5th, 2020
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.38 KB | None | 0 0
  1. --Physics gun
  2. function sandbox(var,func)
  3. local env = getfenv(func)
  4. local newenv = setmetatable({},{
  5. __index = function(self,k)
  6. if k=="script" then
  7. return var
  8. else
  9. return env[k]
  10. end
  11. end,
  12. })
  13. setfenv(func,newenv)
  14. return func
  15. end
  16. cors = {}
  17. mas = Instance.new("Model",game:GetService("Lighting"))
  18. Tool0 = Instance.new("Tool")
  19. Part1 = Instance.new("Part")
  20. CylinderMesh2 = Instance.new("CylinderMesh")
  21. Part3 = Instance.new("Part")
  22. LocalScript4 = Instance.new("LocalScript")
  23. Script5 = Instance.new("Script")
  24. LocalScript6 = Instance.new("LocalScript")
  25. Script7 = Instance.new("Script")
  26. LocalScript8 = Instance.new("LocalScript")
  27. Part9 = Instance.new("Part")
  28. Script10 = Instance.new("Script")
  29. Part11 = Instance.new("Part")
  30. Script12 = Instance.new("Script")
  31. Part13 = Instance.new("Part")
  32. Script14 = Instance.new("Script")
  33. Tool0.Name = "Physics Gun"
  34. Tool0.Parent = mas
  35. Tool0.CanBeDropped = false
  36. Part1.Name = "Handle"
  37. Part1.Parent = Tool0
  38. Part1.Material = Enum.Material.Neon
  39. Part1.BrickColor = BrickColor.new("Cyan")
  40. Part1.Transparency = 1
  41. Part1.Rotation = Vector3.new(0, 15.4200001, 0)
  42. Part1.CanCollide = false
  43. Part1.FormFactor = Enum.FormFactor.Custom
  44. Part1.Size = Vector3.new(1, 0.400000036, 0.300000012)
  45. Part1.CFrame = CFrame.new(-55.2695465, 0.696546972, 0.383156985, 0.96399641, -4.98074878e-05, 0.265921414, 4.79998416e-05, 1, 1.32960558e-05, -0.265921414, -5.30653779e-08, 0.96399641)
  46. Part1.BottomSurface = Enum.SurfaceType.Smooth
  47. Part1.TopSurface = Enum.SurfaceType.Smooth
  48. Part1.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  49. Part1.Position = Vector3.new(-55.2695465, 0.696546972, 0.383156985)
  50. Part1.Orientation = Vector3.new(0, 15.4200001, 0)
  51. Part1.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  52. CylinderMesh2.Parent = Part1
  53. CylinderMesh2.Scale = Vector3.new(0.100000001, 0.100000001, 0.100000001)
  54. CylinderMesh2.Scale = Vector3.new(0.100000001, 0.100000001, 0.100000001)
  55. Part3.Name = "Shoot"
  56. Part3.Parent = Tool0
  57. Part3.Material = Enum.Material.Neon
  58. Part3.BrickColor = BrickColor.new("Cyan")
  59. Part3.Reflectance = 0.30000001192093
  60. Part3.Transparency = 1
  61. Part3.Rotation = Vector3.new(90.9799957, 0.25999999, -91.409996)
  62. Part3.CanCollide = false
  63. Part3.FormFactor = Enum.FormFactor.Custom
  64. Part3.Size = Vector3.new(0.200000003, 0.25, 0.310000032)
  65. Part3.CFrame = CFrame.new(-54.7998123, 0.774299085, -0.757350147, -0.0245519895, 0.99968797, 0.00460194098, 0.0169109926, 0.00501798885, -0.999844491, -0.999555528, -0.0244703442, -0.0170289185)
  66. Part3.BottomSurface = Enum.SurfaceType.Smooth
  67. Part3.TopSurface = Enum.SurfaceType.Smooth
  68. Part3.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  69. Part3.Position = Vector3.new(-54.7998123, 0.774299085, -0.757350147)
  70. Part3.Orientation = Vector3.new(88.9899979, 164.87999, 73.4700012)
  71. Part3.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  72. LocalScript4.Parent = Tool0
  73. table.insert(cors,sandbox(LocalScript4,function()
  74. -- Variables for services
  75. local render = game:GetService("RunService").RenderStepped
  76. local contextActionService = game:GetService("ContextActionService")
  77. local userInputService = game:GetService("UserInputService")
  78.  
  79. local player = game.Players.LocalPlayer
  80. local mouse = player:GetMouse()
  81. local Tool = script.Parent
  82.  
  83. -- Variables for Module Scripts
  84. local screenSpace = require(Tool:WaitForChild("ScreenSpace"))
  85.  
  86. local connection
  87. -- Variables for character joints
  88.  
  89. local neck, shoulder, oldNeckC0, oldShoulderC0
  90.  
  91. local mobileShouldTrack = true
  92.  
  93. -- Thourough check to see if a character is sitting
  94. local function amISitting(character)
  95. local t = character.Torso
  96. for _, part in pairs(t:GetConnectedParts(true)) do
  97. if part:IsA("Seat") or part:IsA("VehicleSeat") then
  98. return true
  99. end
  100. end
  101. end
  102.  
  103. -- Function to call on renderstepped. Orients the character so it is facing towards
  104. -- the player mouse's position in world space. If character is sitting then the torso
  105. -- should not track
  106. local function frame(mousePosition)
  107. -- Special mobile consideration. We don't want to track if the user was touching a ui
  108. -- element such as the movement controls. Just return out of function if so to make sure
  109. -- character doesn't track
  110. if not mobileShouldTrack then return end
  111.  
  112. -- Make sure character isn't swiming. If the character is swimming the following code will
  113. -- not work well; the character will not swim correctly. Besides, who shoots underwater?
  114. if player.Character.Humanoid:GetState() ~= Enum.HumanoidStateType.Swimming then
  115. local torso = player.Character.Torso
  116. local head = player.Character.Head
  117.  
  118. local toMouse = (mousePosition - head.Position).unit
  119. local angle = math.acos(toMouse:Dot(Vector3.new(0,1,0)))
  120.  
  121. local neckAngle = angle
  122.  
  123. -- Limit how much the head can tilt down. Too far and the head looks unnatural
  124. if math.deg(neckAngle) > 110 then
  125. neckAngle = math.rad(110)
  126. end
  127. neck.C0 = CFrame.new(0,1,0) * CFrame.Angles(math.pi - neckAngle,math.pi,0)
  128.  
  129. -- Calculate horizontal rotation
  130. local arm = player.Character:FindFirstChild("Right Arm")
  131. local fromArmPos = torso.Position + torso.CFrame:vectorToWorldSpace(Vector3.new(
  132. torso.Size.X/2 + arm.Size.X/2, torso.Size.Y/2 - arm.Size.Z/2, 0))
  133. local toMouseArm = ((mousePosition - fromArmPos) * Vector3.new(1,0,1)).unit
  134. local look = (torso.CFrame.lookVector * Vector3.new(1,0,1)).unit
  135. local lateralAngle = math.acos(toMouseArm:Dot(look))
  136.  
  137. -- Check for rogue math
  138. if tostring(lateralAngle) == "-1.#IND" then
  139. lateralAngle = 0
  140. end
  141.  
  142. -- Handle case where character is sitting down
  143. if player.Character.Humanoid:GetState() == Enum.HumanoidStateType.Seated then
  144.  
  145. local cross = torso.CFrame.lookVector:Cross(toMouseArm)
  146. if lateralAngle > math.pi/2 then
  147. lateralAngle = math.pi/2
  148. end
  149. if cross.Y < 0 then
  150. lateralAngle = -lateralAngle
  151. end
  152. end
  153.  
  154. -- Turn shoulder to point to mouse
  155. shoulder.C0 = CFrame.new(1,0.5,0) * CFrame.Angles(math.pi/2 - angle,math.pi/2 + lateralAngle,0)
  156.  
  157. -- If not sitting then aim torso laterally towards mouse
  158. if not amISitting(player.Character) then
  159. torso.CFrame = CFrame.new(torso.Position, torso.Position + (Vector3.new(
  160. mousePosition.X, torso.Position.Y, mousePosition.Z)-torso.Position).unit)
  161. else
  162. --print("sitting")
  163. end
  164. end
  165. end
  166.  
  167. -- Function to bind to render stepped if player is on PC
  168. local function pcFrame()
  169. frame(mouse.Hit.p)
  170. end
  171.  
  172. -- Function to bind to touch moved if player is on mobile
  173. local function mobileFrame(touch, processed)
  174. -- Check to see if the touch was on a UI element. If so, we don't want to update anything
  175. if not processed then
  176. -- Calculate touch position in world space. Uses Stravant's ScreenSpace Module script
  177. -- to create a ray from the camera.
  178. local test = screenSpace.ScreenToWorld(touch.Position.X, touch.Position.Y, 1)
  179. local nearPos = game.Workspace.CurrentCamera.CoordinateFrame:vectorToWorldSpace(screenSpace.ScreenToWorld(touch.Position.X, touch.Position.Y, 1))
  180. nearPos = game.Workspace.CurrentCamera.CoordinateFrame.p - nearPos
  181. local farPos = screenSpace.ScreenToWorld(touch.Position.X, touch.Position.Y,50)
  182. farPos = game.Workspace.CurrentCamera.CoordinateFrame:vectorToWorldSpace(farPos) * -1
  183. if farPos.magnitude > 900 then
  184. farPos = farPos.unit * 900
  185. end
  186. local ray = Ray.new(nearPos, farPos)
  187. local part, pos = game.Workspace:FindPartOnRay(ray, player.Character)
  188.  
  189. -- if a position was found on the ray then update the character's rotation
  190. if pos then
  191. frame(pos)
  192. end
  193. end
  194. end
  195.  
  196. local oldIcon = nil
  197. -- Function to bind to equip event
  198. local function equip()
  199. local torso = player.Character.Torso
  200.  
  201. -- Setup joint variables
  202. neck = torso.Neck
  203. oldNeckC0 = neck.C0
  204. shoulder = torso:FindFirstChild("Right Shoulder")
  205. oldShoulderC0 = shoulder.C0
  206.  
  207. -- Remember old mouse icon and update current
  208. oldIcon = mouse.Icon
  209. mouse.Icon = "rbxassetid:// 3197994757"
  210.  
  211. -- Bind TouchMoved event if on mobile. Otherwise connect to renderstepped
  212. if userInputService.TouchEnabled then
  213. connection = userInputService.TouchMoved:connect(mobileFrame)
  214. else
  215. connection = render:connect(pcFrame)
  216. end
  217.  
  218. -- Bind TouchStarted and TouchEnded. Used to determine if character should rotate
  219. -- during touch input
  220. userInputService.TouchStarted:connect(function(touch, processed)
  221. mobileShouldTrack = not processed
  222. end)
  223. userInputService.TouchEnded:connect(function(touch, processed)
  224. mobileShouldTrack = false
  225. end)
  226.  
  227. -- Fire server's equip event
  228. game.ReplicatedStorage.ROBLOX_PistolEquipEvent:FireServer()
  229.  
  230. -- Bind event for when mouse is clicked to fire server's fire event
  231. mouse.Button1Down:connect(function()
  232. game.ReplicatedStorage.ROBLOX_PistolFireEvent:FireServer(mouse.Hit.p)
  233. end)
  234.  
  235. -- Bind reload event to mobile button and r key
  236. contextActionService:BindActionToInputTypes("Reload", function()
  237. game.ReplicatedStorage.ROBLOX_PistolReloadEvent:FireServer()
  238. end, true, "")
  239.  
  240. -- If game uses filtering enabled then need to update server while tool is
  241. -- held by character.
  242. if workspace.FilteringEnabled then
  243. while connection do
  244. wait()
  245. game.ReplicatedStorage.ROBLOX_PistolUpdateEvent:FireServer(neck.C0, shoulder.C0)
  246. end
  247. end
  248. end
  249.  
  250. -- Function to bind to Unequip event
  251. local function unequip()
  252. if connection then connection:disconnect() end
  253. contextActionService:UnbindAction("Reload")
  254. game.ReplicatedStorage.ROBLOX_PistolUnequipEvent:FireServer()
  255. mouse.Icon = oldIcon
  256. neck.C0 = oldNeckC0
  257. shoulder.C0 = oldShoulderC0
  258. end
  259.  
  260. -- Bind tool events
  261. Tool.Equipped:connect(equip)
  262. Tool.Unequipped:connect(unequip)
  263. end))
  264. Script5.Name = "qPerfectionWeld"
  265. Script5.Parent = Tool0
  266. table.insert(cors,sandbox(Script5,function()
  267. -- Created by Quenty (@Quenty, follow me on twitter).
  268. -- Should work with only ONE copy, seamlessly with weapons, trains, et cetera.
  269. -- Parts should be ANCHORED before use. It will, however, store relatives values and so when tools are reparented, it'll fix them.
  270.  
  271. --[[ INSTRUCTIONS
  272. - Place in the model
  273. - Make sure model is anchored
  274. - That's it. It will weld the model and all children.
  275.  
  276. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  277. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  278. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  279. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  280. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  281. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  282. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  283. THIS SCRIPT SHOULD BE USED ONLY BY ITSELF. THE MODEL SHOULD BE ANCHORED.
  284.  
  285. This script is designed to be used is a regular script. In a local script it will weld, but it will not attempt to handle ancestory changes.
  286. ]]
  287.  
  288. --[[ DOCUMENTATION
  289. - Will work in tools. If ran more than once it will not create more than one weld. This is especially useful for tools that are dropped and then picked up again.
  290. - Will work in PBS servers
  291. - Will work as long as it starts out with the part anchored
  292. - Stores the relative CFrame as a CFrame value
  293. - Takes careful measure to reduce lag by not having a joint set off or affected by the parts offset from origin
  294. - Utilizes a recursive algorith to find all parts in the model
  295. - Will reweld on script reparent if the script is initially parented to a tool.
  296. - Welds as fast as possible
  297. ]]
  298.  
  299. -- qPerfectionWeld.lua
  300. -- Created 10/6/2014
  301. -- Author: Quenty
  302. -- Version 1.0.3
  303.  
  304. -- Updated 10/14/2014 - Updated to 1.0.1
  305. --- Bug fix with existing ROBLOX welds ? Repro by asimo3089
  306.  
  307. -- Updated 10/14/2014 - Updated to 1.0.2
  308. --- Fixed bug fix.
  309.  
  310. -- Updated 10/14/2014 - Updated to 1.0.3
  311. --- Now handles joints semi-acceptably. May be rather hacky with some joints. :/
  312.  
  313. local NEVER_BREAK_JOINTS = false -- If you set this to true it will never break joints (this can create some welding issues, but can save stuff like hinges).
  314.  
  315.  
  316. local function CallOnChildren(Instance, FunctionToCall)
  317. -- Calls a function on each of the children of a certain object, using recursion.
  318.  
  319. FunctionToCall(Instance)
  320.  
  321. for _, Child in next, Instance:GetChildren() do
  322. CallOnChildren(Child, FunctionToCall)
  323. end
  324. end
  325.  
  326. local function GetNearestParent(Instance, ClassName)
  327. -- Returns the nearest parent of a certain class, or returns nil
  328.  
  329. local Ancestor = Instance
  330. repeat
  331. Ancestor = Ancestor.Parent
  332. if Ancestor == nil then
  333. return nil
  334. end
  335. until Ancestor:IsA(ClassName)
  336.  
  337. return Ancestor
  338. end
  339.  
  340. local function GetBricks(StartInstance)
  341. local List = {}
  342.  
  343. -- if StartInstance:IsA("BasePart") then
  344. -- List[#List+1] = StartInstance
  345. -- end
  346.  
  347. CallOnChildren(StartInstance, function(Item)
  348. if Item:IsA("BasePart") then
  349. List[#List+1] = Item;
  350. end
  351. end)
  352.  
  353. return List
  354. end
  355.  
  356. local function Modify(Instance, Values)
  357. -- Modifies an Instance by using a table.
  358.  
  359. assert(type(Values) == "table", "Values is not a table");
  360.  
  361. for Index, Value in next, Values do
  362. if type(Index) == "number" then
  363. Value.Parent = Instance
  364. else
  365. Instance[Index] = Value
  366. end
  367. end
  368. return Instance
  369. end
  370.  
  371. local function Make(ClassType, Properties)
  372. -- Using a syntax hack to create a nice way to Make new items.
  373.  
  374. return Modify(Instance.new(ClassType), Properties)
  375. end
  376.  
  377. local Surfaces = {"TopSurface", "BottomSurface", "LeftSurface", "RightSurface", "FrontSurface", "BackSurface"}
  378. local HingSurfaces = {"Hinge", "Motor", "SteppingMotor"}
  379.  
  380. local function HasWheelJoint(Part)
  381. for _, SurfaceName in pairs(Surfaces) do
  382. for _, HingSurfaceName in pairs(HingSurfaces) do
  383. if Part[SurfaceName].Name == HingSurfaceName then
  384. return true
  385. end
  386. end
  387. end
  388.  
  389. return false
  390. end
  391.  
  392. local function ShouldBreakJoints(Part)
  393. --- We do not want to break joints of wheels/hinges. This takes the utmost care to not do this. There are
  394. -- definitely some edge cases.
  395.  
  396. if NEVER_BREAK_JOINTS then
  397. return false
  398. end
  399.  
  400. if HasWheelJoint(Part) then
  401. return false
  402. end
  403.  
  404. local Connected = Part:GetConnectedParts()
  405.  
  406. if #Connected == 1 then
  407. return false
  408. end
  409.  
  410. for _, Item in pairs(Connected) do
  411. if HasWheelJoint(Item) then
  412. return false
  413. elseif not Item:IsDescendantOf(script.Parent) then
  414. return false
  415. end
  416. end
  417.  
  418. return true
  419. end
  420.  
  421. local function WeldTogether(Part0, Part1, JointType, WeldParent)
  422. --- Weld's 2 parts together
  423. -- @param Part0 The first part
  424. -- @param Part1 The second part (Dependent part most of the time).
  425. -- @param [JointType] The type of joint. Defaults to weld.
  426. -- @param [WeldParent] Parent of the weld, Defaults to Part0 (so GC is better).
  427. -- @return The weld created.
  428.  
  429. JointType = JointType or "Weld"
  430. local RelativeValue = Part1:FindFirstChild("qRelativeCFrameWeldValue")
  431.  
  432. local NewWeld = Part1:FindFirstChild("qCFrameWeldThingy") or Instance.new(JointType)
  433. Modify(NewWeld, {
  434. Name = "qCFrameWeldThingy";
  435. Part0 = Part0;
  436. Part1 = Part1;
  437. C0 = CFrame.new();--Part0.CFrame:inverse();
  438. C1 = RelativeValue and RelativeValue.Value or Part1.CFrame:toObjectSpace(Part0.CFrame); --Part1.CFrame:inverse() * Part0.CFrame;-- Part1.CFrame:inverse();
  439. Parent = Part1;
  440. })
  441.  
  442. if not RelativeValue then
  443. RelativeValue = Make("CFrameValue", {
  444. Parent = Part1;
  445. Name = "qRelativeCFrameWeldValue";
  446. Archivable = true;
  447. Value = NewWeld.C1;
  448. })
  449. end
  450.  
  451. return NewWeld
  452. end
  453.  
  454. local function WeldParts(Parts, MainPart, JointType, DoNotUnanchor)
  455. -- @param Parts The Parts to weld. Should be anchored to prevent really horrible results.
  456. -- @param MainPart The part to weld the model to (can be in the model).
  457. -- @param [JointType] The type of joint. Defaults to weld.
  458. -- @parm DoNotUnanchor Boolean, if true, will not unachor the model after cmopletion.
  459.  
  460. for _, Part in pairs(Parts) do
  461. if ShouldBreakJoints(Part) then
  462. Part:BreakJoints()
  463. end
  464. end
  465.  
  466. for _, Part in pairs(Parts) do
  467. if Part ~= MainPart then
  468. WeldTogether(MainPart, Part, JointType, MainPart)
  469. end
  470. end
  471.  
  472. if not DoNotUnanchor then
  473. for _, Part in pairs(Parts) do
  474. Part.Anchored = false
  475. end
  476. MainPart.Anchored = false
  477. end
  478. end
  479.  
  480. local function PerfectionWeld()
  481. local Tool = GetNearestParent(script, "Tool")
  482.  
  483. local Parts = GetBricks(script.Parent)
  484. local PrimaryPart = Tool and Tool:FindFirstChild("Handle") and Tool.Handle:IsA("BasePart") and Tool.Handle or script.Parent:IsA("Model") and script.Parent.PrimaryPart or Parts[1]
  485.  
  486. if PrimaryPart then
  487. WeldParts(Parts, PrimaryPart, "Weld", false)
  488. else
  489. warn("qWeld - Unable to weld part")
  490. end
  491.  
  492. return Tool
  493. end
  494.  
  495. local Tool = PerfectionWeld()
  496.  
  497.  
  498. if Tool and script.ClassName == "Script" then
  499. --- Don't bother with local scripts
  500.  
  501. script.Parent.AncestryChanged:connect(function()
  502. PerfectionWeld()
  503. end)
  504. end
  505.  
  506. -- Created by Quenty (@Quenty, follow me on twitter).
  507.  
  508. end))
  509. LocalScript6.Name = "Animate"
  510. LocalScript6.Parent = Tool0
  511. table.insert(cors,sandbox(LocalScript6,function()
  512. local arms = nil
  513. local torso = nil
  514. local welds = {}
  515. local Tool = script.Parent
  516. local neck = nil
  517. local orginalC0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  518.  
  519. function Equip(mouse)
  520. wait(0.01)
  521. arms = {Tool.Parent:FindFirstChild("Left Arm"), Tool.Parent:FindFirstChild("Right Arm")}
  522. head = Tool.Parent:FindFirstChild("Head")
  523. torso = Tool.Parent:FindFirstChild("Torso")
  524. if neck == nil then
  525. neck = Tool.Parent:FindFirstChild("Torso").Neck
  526. end
  527. if arms ~= nil and torso ~= nil then
  528. local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")}
  529. if sh ~= nil then
  530. local yes = true
  531. if yes then
  532. yes = false
  533. sh[1].Part1 = nil
  534. sh[2].Part1 = nil
  535. local weld1 = Instance.new("Weld")
  536. weld1.Part0 = head
  537. weld1.Parent = head
  538. weld1.Part1 = arms[1]
  539. welds[1] = weld1
  540. local weld2 = Instance.new("Weld")
  541. weld2.Part0 = head
  542. weld2.Parent = head
  543. weld2.Part1 = arms[2]
  544. welds[2] = weld2
  545. -------------------------here
  546. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
  547. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  548. mouse.Move:connect(function ()
  549. --local Direction = Tool.Direction.Value
  550. local Direction = mouse.Hit.p
  551. local b = head.Position.Y-Direction.Y
  552. local dist = (head.Position-Direction).magnitude
  553. local answer = math.asin(b/dist)
  554. neck.C0=orginalC0*CFrame.fromEulerAnglesXYZ(answer,0,0)
  555. wait(0.1)
  556. end)end
  557. else
  558. print("sh")
  559. end
  560. else
  561. print("arms")
  562. end
  563. end
  564.  
  565. function Unequip(mouse)
  566. if arms ~= nil and torso ~= nil then
  567. local sh = {torso:FindFirstChild("Left Shoulder"), torso:FindFirstChild("Right Shoulder")}
  568. if sh ~= nil then
  569. local yes = true
  570. if yes then
  571. yes = false
  572. neck.C0 = orginalC0
  573.  
  574. sh[1].Part1 = arms[1]
  575. sh[2].Part1 = arms[2]
  576. welds[1].Parent = nil
  577. welds[2].Parent = nil
  578. end
  579. else
  580. print("sh")
  581. end
  582. else
  583. print("arms")
  584. end
  585. end
  586. Tool.Equipped:connect(Equip)
  587. Tool.Unequipped:connect(Unequip)
  588.  
  589. function Animate()
  590. arms = {Tool.Parent:FindFirstChild("Left Arm"), Tool.Parent:FindFirstChild("Right Arm")}
  591. if Tool.AnimateValue.Value == "Shoot" then
  592. local weld1 = welds[1]
  593. local weld2 = welds[2]
  594. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
  595. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  596. wait(0.00001)
  597. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.05, math.rad(-90))
  598. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  599. wait(0.00001)
  600. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.1, math.rad(-90))
  601. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-95), math.rad(-15), 0)
  602. wait(0.00001)
  603. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.3, math.rad(-90))
  604. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-110), math.rad(-15), 0)
  605. wait(0.00001)
  606. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.35, math.rad(-90))
  607. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-115), math.rad(-15), 0)
  608. wait(0.00001)
  609. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  610. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  611. wait(0.00001)
  612. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
  613. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  614. Tool.AnimateValue.Value = "None"
  615. end
  616. if Tool.AnimateValue.Value == "Reload" then
  617. local weld1 = welds[1]
  618. local weld2 = welds[2]
  619. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
  620. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  621. wait(0.0001)
  622. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  623. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  624. wait(0.0001)
  625. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  626. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-95), math.rad(-15), 0)
  627. wait(0.0001)
  628. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  629. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-100), math.rad(-15), 0)
  630. wait(0.0001)
  631. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  632. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-105), math.rad(-15), 0)
  633. wait(0.0001)
  634. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  635. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-110), math.rad(-15), 0)
  636. wait(0.0001)
  637. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.4, math.rad(-90))
  638. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-115), math.rad(-15), 0)
  639. wait(0.0001)
  640. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.45, math.rad(-90))
  641. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  642. wait(0.0001)
  643. weld1.C1 = CFrame.new(-0.5+1.5, 0.9, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.5, math.rad(-90))
  644. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  645. wait(0.0001)
  646. weld1.C1 = CFrame.new(-0.5+1.5, 1, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.55, math.rad(-90))
  647. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  648. wait(0.0001)
  649. weld1.C1 = CFrame.new(-0.5+1.5, 1.1, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.57, math.rad(-90))
  650. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  651. wait(0.0001)
  652. weld1.C1 = CFrame.new(-0.5+1.5, 1.2, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.6, math.rad(-90))
  653. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  654. wait(0.0001)
  655. weld1.C1 = CFrame.new(-0.5+1.5, 1.3, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0.6, math.rad(-90))
  656. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-120), math.rad(-15), 0)
  657. wait(0.0001)
  658. weld1.C1 = CFrame.new(-0.5+1.5, 0.8, .9)* CFrame.fromEulerAnglesXYZ(math.rad(290), 0, math.rad(-90))
  659. weld2.C1 = CFrame.new(-1, 0.8, 0.5-1.5) * CFrame.fromEulerAnglesXYZ(math.rad(-90), math.rad(-15), 0)
  660. Tool.AnimateValue.Value = "None"
  661. end
  662. end
  663.  
  664. Tool.AnimateValue.Changed:connect(Animate)
  665.  
  666. end))
  667. Script7.Name = "LineConnect"
  668. Script7.Parent = Tool0
  669. Script7.Disabled = true
  670. table.insert(cors,sandbox(Script7,function()
  671. wait()
  672. local check = script.Part2
  673. local part1 = script.Part1.Value
  674. local part2 = script.Part2.Value
  675. local parent = script.Par.Value
  676. local color = script.Color
  677. local line = Instance.new("Part")
  678. line.TopSurface = 0
  679. line.BottomSurface = 0
  680. line.Reflectance = .5
  681. line.Name = "Laser"
  682. line.Transparency = 0.6
  683. line.Locked = true
  684. line.CanCollide = false
  685. line.Anchored = true
  686. line.formFactor = 0
  687. line.Size = Vector3.new(0.4,0.4,1)
  688. local mesh = Instance.new("BlockMesh")
  689. mesh.Parent = line
  690. while true do
  691. if (check.Value==nil) then break end
  692. if (part1==nil or part2==nil or parent==nil) then break end
  693. if (part1.Parent==nil or part2.Parent==nil) then break end
  694. if (parent.Parent==nil) then break end
  695. local lv = CFrame.new(part1.Position,part2.Position)
  696. local dist = (part1.Position-part2.Position).magnitude
  697. line.Parent = parent
  698. line.Material = "Neon"
  699. line.BrickColor = color.Value.BrickColor
  700. line.Reflectance = color.Value.Reflectance
  701. line.Transparency = "0.2"
  702. line.CFrame = CFrame.new(part1.Position+lv.lookVector*dist/2)
  703. line.CFrame = CFrame.new(line.Position,part2.Position)
  704. mesh.Scale = Vector3.new(.25,.25,dist)
  705. wait()
  706. end
  707. line:remove()
  708. script:remove()
  709. end))
  710. LocalScript8.Name = "MainScript"
  711. LocalScript8.Parent = Tool0
  712. table.insert(cors,sandbox(LocalScript8,function()
  713. --Physics gun created by Killersoldier45
  714. wait()
  715. tool = script.Parent
  716. lineconnect = tool.LineConnect
  717. object = nil
  718. mousedown = false
  719. found = false
  720. BP = Instance.new("BodyPosition")
  721. BP.maxForce = Vector3.new(math.huge*math.huge,math.huge*math.huge,math.huge*math.huge) --pwns everyone elses bodyposition
  722. BP.P = BP.P*10 --faster movement. less bounceback.
  723. dist = nil
  724. point = Instance.new("Part")
  725. point.Locked = true
  726. point.Anchored = true
  727. point.formFactor = 0
  728. point.Shape = 0
  729. point.Material = 'Neon'
  730. point.BrickColor = BrickColor.new("Toothpaste")
  731. point.Size = Vector3.new(1,1,1)
  732. point.CanCollide = false
  733. local mesh = Instance.new("SpecialMesh")
  734. mesh.MeshType = "Sphere"
  735. mesh.Scale = Vector3.new(.2,.2,.2)
  736. mesh.Parent = point
  737. handle = tool.Shoot
  738. front = tool.Shoot
  739. color = tool.Shoot
  740. objval = nil
  741. local hooked = false
  742. local hookBP = BP:clone()
  743. hookBP.maxForce = Vector3.new(30000,30000,30000)
  744.  
  745. function LineConnect(part1,part2,parent)
  746. local p1 = Instance.new("ObjectValue")
  747. p1.Value = part1
  748. p1.Name = "Part1"
  749. local p2 = Instance.new("ObjectValue")
  750. p2.Value = part2
  751. p2.Name = "Part2"
  752. local par = Instance.new("ObjectValue")
  753. par.Value = parent
  754. par.Name = "Par"
  755. local col = Instance.new("ObjectValue")
  756. col.Value = color
  757. col.Name = "Color"
  758. local s = lineconnect:clone()
  759. s.Disabled = false
  760. p1.Parent = s
  761. p2.Parent = s
  762. par.Parent = s
  763. col.Parent = s
  764. s.Parent = workspace
  765. if (part2==object) then
  766. objval = p2
  767. end
  768. end
  769.  
  770. function onButton1Down(mouse)
  771. if (mousedown==true) then return end
  772. mousedown = true
  773. coroutine.resume(coroutine.create(function()
  774. local p = point:clone()
  775. p.Parent = tool
  776. LineConnect(front,p,workspace)
  777. while (mousedown==true) do
  778. p.Parent = tool
  779. if (object==nil) then
  780. if (mouse.Target==nil) then
  781. local lv = CFrame.new(front.Position,mouse.Hit.p)
  782. p.CFrame = CFrame.new(front.Position+(lv.lookVector*1000))
  783. else
  784. p.CFrame = CFrame.new(mouse.Hit.p)
  785. end
  786. else
  787. LineConnect(front,object,workspace)
  788. break
  789. end
  790. wait()
  791. end
  792. p:remove()
  793. end))
  794. while (mousedown==true) do
  795. if (mouse.Target~=nil) then
  796. local t = mouse.Target
  797. if (t.Anchored==false) then
  798. object = t
  799. dist = (object.Position-front.Position).magnitude
  800. break
  801. end
  802. end
  803. wait()
  804. end
  805. while (mousedown==true) do
  806. if (object.Parent==nil) then break end
  807. local lv = CFrame.new(front.Position,mouse.Hit.p)
  808. BP.Parent = object
  809. BP.position = front.Position+lv.lookVector*dist
  810. wait()
  811. end
  812. BP:remove()
  813. object = nil
  814. objval.Value = nil
  815. end
  816.  
  817. function onKeyDown(key,mouse)
  818. local key = key:lower()
  819. local yesh = false
  820. if (key=="q") then
  821. if (dist>=5) then
  822. dist = dist-5
  823. end
  824. end
  825. if key == "" then
  826. if (object==nil) then return end
  827. for _,v in pairs(object:children()) do
  828. if v.className == "BodyGyro" then
  829. return nil
  830. end
  831. end
  832. BG = Instance.new("BodyGyro")
  833. BG.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
  834. BG.cframe = CFrame.new(object.CFrame.p)
  835. BG.Parent = object
  836. repeat wait() until(object.CFrame == CFrame.new(object.CFrame.p))
  837. BG.Parent = nil
  838. if (object==nil) then return end
  839. for _,v in pairs(object:children()) do
  840. if v.className == "BodyGyro" then
  841. v.Parent = nil
  842. end
  843. end
  844. object.Velocity = Vector3.new(0,0,0)
  845. object.RotVelocity = Vector3.new(0,0,0)
  846. end
  847. if (key=="e") then
  848. dist = dist+5
  849. end
  850. if (string.byte(key)==27) then
  851. if (object==nil) then return end
  852. local e = Instance.new("Explosion")
  853. e.Parent = workspace
  854. e.Position = object.Position
  855. color.BrickColor = BrickColor.Black()
  856. point.BrickColor = BrickColor.White()
  857. wait(.48)
  858. color.BrickColor = BrickColor.White()
  859. point.BrickColor = BrickColor.Black()
  860. end
  861. if (key=="") then
  862. if not hooked then
  863. if (object==nil) then return end
  864. hooked = true
  865. hookBP.position = object.Position
  866. if tool.Parent:findFirstChild("Torso") then
  867. hookBP.Parent = tool.Parent.Torso
  868. if dist ~= (object.Size.x+object.Size.y+object.Size.z)+5 then
  869. dist = (object.Size.x+object.Size.y+object.Size.z)+5
  870. end
  871. end
  872. else
  873. hooked = false
  874. hookBP.Parent = nil
  875. end
  876. end
  877. if (key=="r") then
  878. if (object==nil) then return end
  879. color.BrickColor = BrickColor.new("Toothpaste")
  880. point.BrickColor = BrickColor.new("Toothpaste")
  881. object.Parent = nil
  882. wait(.48)
  883. color.BrickColor = BrickColor.new("Toothpaste")
  884. point.BrickColor = BrickColor.new("Toothpaste")
  885. end
  886. if (key=="") then
  887. if (object==nil) then return end
  888. local New = object:clone()
  889. New.Parent = object.Parent
  890. for _,v in pairs(New:children()) do
  891. if v.className == "BodyPosition" or v.className == "BodyGyro" then
  892. v.Parent = nil
  893. end
  894. end
  895. object = New
  896. mousedown = false
  897. mousedown = true
  898. LineConnect(front,object,workspace)
  899. while (mousedown==true) do
  900. if (object.Parent==nil) then break end
  901. local lv = CFrame.new(front.Position,mouse.Hit.p)
  902. BP.Parent = object
  903. BP.position = front.Position+lv.lookVector*dist
  904. wait()
  905. end
  906. BP:remove()
  907. object = nil
  908. objval.Value = nil
  909. end
  910. if (key=="") then
  911. local Cube = Instance.new("Part")
  912. Cube.Locked = true
  913. Cube.Size = Vector3.new(4,4,4)
  914. Cube.formFactor = 0
  915. Cube.TopSurface = 0
  916. Cube.BottomSurface = 0
  917. Cube.Name = "WeightedStorageCube"
  918. Cube.Parent = workspace
  919. Cube.CFrame = CFrame.new(mouse.Hit.p) + Vector3.new(0,2,0)
  920. for i = 0,5 do
  921. local Decal = Instance.new("Decal")
  922. Decal.Texture = "http://www.roblox.com/asset/?id=2662260"
  923. Decal.Face = i
  924. Decal.Name = "WeightedStorageCubeDecal"
  925. Decal.Parent = Cube
  926. end
  927. end
  928. if (key=="") then
  929. if dist ~= 15 then
  930. dist = 15
  931. end
  932. end
  933. end
  934.  
  935. function onEquipped(mouse)
  936. keymouse = mouse
  937. local char = tool.Parent
  938. human = char.Humanoid
  939. human.Changed:connect(function() if (human.Health==0) then mousedown = false BP:remove() point:remove() tool:remove() end end)
  940. mouse.Button1Down:connect(function() onButton1Down(mouse) end)
  941. mouse.Button1Up:connect(function() mousedown = false end)
  942. mouse.KeyDown:connect(function(key) onKeyDown(key,mouse) end)
  943. mouse.Icon = "rbxassetid:// 2715931788"
  944. end
  945.  
  946. tool.Equipped:connect(onEquipped)
  947. end))
  948. Part9.Name = "GlowPart"
  949. Part9.Parent = Tool0
  950. Part9.Material = Enum.Material.Neon
  951. Part9.BrickColor = BrickColor.new("Cyan")
  952. Part9.Transparency = 0.5
  953. Part9.Rotation = Vector3.new(0, -89.5899963, 0)
  954. Part9.Shape = Enum.PartType.Cylinder
  955. Part9.Size = Vector3.new(1.20000005, 0.649999976, 2)
  956. Part9.CFrame = CFrame.new(-54.8191681, 0.773548007, -0.0522949994, 0.00736002205, 4.68389771e-11, -0.999974668, 4.72937245e-11, 1, 1.41590961e-10, 0.999974668, 5.09317033e-11, 0.00736002252)
  957. Part9.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  958. Part9.Position = Vector3.new(-54.8191681, 0.773548007, -0.0522949994)
  959. Part9.Orientation = Vector3.new(0, -89.5799942, 0)
  960. Part9.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  961. Script10.Name = "Glow Script"
  962. Script10.Parent = Part9
  963. table.insert(cors,sandbox(Script10,function()
  964. while true do
  965. wait(0.05)
  966. script.Parent.Transparency = .5
  967. wait(0.05)
  968. script.Parent.Transparency = .6
  969. wait(0.05)
  970. script.Parent.Transparency = .7
  971. wait(0.05)
  972. script.Parent.Transparency = .8
  973. wait(0.05)
  974. script.Parent.Transparency = .9
  975. wait(0.05)
  976. script.Parent.Transparency = .8
  977. wait(0.05)
  978. script.Parent.Transparency = .7
  979. wait(0.05)
  980. script.Parent.Transparency = .6
  981. wait(0.05)
  982. script.Parent.Transparency = .5
  983. end
  984.  
  985. end))
  986. Part11.Name = "GlowPart"
  987. Part11.Parent = Tool0
  988. Part11.Material = Enum.Material.Neon
  989. Part11.BrickColor = BrickColor.new("Cyan")
  990. Part11.Transparency = 0.5
  991. Part11.Rotation = Vector3.new(-89.3799973, -55.7399979, -89.25)
  992. Part11.Size = Vector3.new(0.280000001, 0.25999999, 0.200000003)
  993. Part11.CFrame = CFrame.new(-54.9808807, 0.99843204, 0.799362957, 0.00736002205, 0.562958956, -0.826454222, 4.72937245e-11, 0.826475084, 0.56297338, 0.999974668, -0.00414349511, 0.00608287565)
  994. Part11.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  995. Part11.Position = Vector3.new(-54.9808807, 0.99843204, 0.799362957)
  996. Part11.Orientation = Vector3.new(-34.2599983, -89.5799942, 0)
  997. Part11.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  998. Script12.Name = "Glow Script"
  999. Script12.Parent = Part11
  1000. table.insert(cors,sandbox(Script12,function()
  1001. while true do
  1002. wait(0.05)
  1003. script.Parent.Transparency = .5
  1004. wait(0.05)
  1005. script.Parent.Transparency = .6
  1006. wait(0.05)
  1007. script.Parent.Transparency = .7
  1008. wait(0.05)
  1009. script.Parent.Transparency = .8
  1010. wait(0.05)
  1011. script.Parent.Transparency = .9
  1012. wait(0.05)
  1013. script.Parent.Transparency = .8
  1014. wait(0.05)
  1015. script.Parent.Transparency = .7
  1016. wait(0.05)
  1017. script.Parent.Transparency = .6
  1018. wait(0.05)
  1019. script.Parent.Transparency = .5
  1020. end
  1021.  
  1022. end))
  1023. Part13.Name = "GlowPart"
  1024. Part13.Parent = Tool0
  1025. Part13.Material = Enum.Material.Neon
  1026. Part13.BrickColor = BrickColor.new("Cyan")
  1027. Part13.Transparency = 0.5
  1028. Part13.Rotation = Vector3.new(95.1500015, -53.8199997, 98.0799942)
  1029. Part13.Size = Vector3.new(0.280000001, 0.25999999, 0.200000003)
  1030. Part13.CFrame = CFrame.new(-54.5909271, 0.978429973, 0.799362957, -0.0830051303, -0.584483683, -0.807150841, 0.0241250042, 0.808528602, -0.58796227, 0.996258855, -0.0682764053, -0.0530113392)
  1031. Part13.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  1032. Part13.Position = Vector3.new(-54.5909271, 0.978429973, 0.799362957)
  1033. Part13.Orientation = Vector3.new(36.0099983, -93.7599945, 1.70999992)
  1034. Part13.Color = Color3.new(0.0156863, 0.686275, 0.92549)
  1035. Script14.Name = "Glow Script"
  1036. Script14.Parent = Part13
  1037. table.insert(cors,sandbox(Script14,function()
  1038. while true do
  1039. wait(0.05)
  1040. script.Parent.Transparency = .5
  1041. wait(0.05)
  1042. script.Parent.Transparency = .6
  1043. wait(0.05)
  1044. script.Parent.Transparency = .7
  1045. wait(0.05)
  1046. script.Parent.Transparency = .8
  1047. wait(0.05)
  1048. script.Parent.Transparency = .9
  1049. wait(0.05)
  1050. script.Parent.Transparency = .8
  1051. wait(0.05)
  1052. script.Parent.Transparency = .7
  1053. wait(0.05)
  1054. script.Parent.Transparency = .6
  1055. wait(0.05)
  1056. script.Parent.Transparency = .5
  1057. end
  1058.  
  1059. end))
  1060. for i,v in pairs(mas:GetChildren()) do
  1061. v.Parent = game:GetService("Players").LocalPlayer.Backpack
  1062. pcall(function() v:MakeJoints() end)
  1063. end
  1064. mas:Destroy()
  1065. for i,v in pairs(cors) do
  1066. spawn(function()
  1067. pcall(v)
  1068. end)
  1069. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement