Advertisement
Prephy

Urchin

Mar 13th, 2021 (edited)
1,062
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.03 KB | None | 0 0
  1. warn[[
  2.  
  3.  
  4.  
  5. --projor22
  6.  
  7. --Urchin
  8.  
  9. keys:
  10. q-reposition
  11. z-teleport
  12. x-attack
  13. p-reset
  14. ]]
  15.  
  16.  
  17. wait()
  18. player = owner
  19. local size = Vector3.new(28, 28, 28)
  20. local scale = Vector3.new(7.5, 7.5, 7.5)
  21. local NAME="Urchin >"..math.random()
  22. local wa = "Végtzetez"
  23. local sa="HumanoidRootPart"
  24. local MOD = Instance.new("Model",workspace) MOD.Name=NAME
  25. local ball = Instance.new("Part",MOD) ball.Shape=Enum.PartType.Ball ball.Name=sa ball.Transparency=1 ball.Material=Enum.Material.ForceField ball.Size=size ball.Massless=true
  26. local fakeball = Instance.new("Part",MOD) fakeball.Name=wa  fakeball.Transparency=0 fakeball.Reflectance=1 fakeball.Size = ball.Size + Vector3.new(7,7,7) fakeball.Material=Enum.Material.Glass fakeball.Shape=Enum.PartType.Ball
  27. local mesh = Instance.new("SpecialMesh",fakeball) mesh.MeshId="http://www.roblox.com/Asset/?id=9982590" mesh.Name="Spí" mesh.Scale=scale
  28. local attach0 = Instance.new("Attachment",ball) local attach1 = Instance.new("Attachment",fakeball)
  29. local sock = Instance.new("BallSocketConstraint",MOD) sock.Attachment0=attach0 sock.Attachment1=attach1 sock.Name="ñáæén"
  30. local oldpos = nil
  31. oldpos=ball
  32. local attack=false
  33. refitter = true
  34.  
  35. local drcoomer = {"rbxassetid://4833964587","rbxassetid://6334642411"}
  36.  
  37.  
  38.  
  39. function CLIENT()
  40.     NLS([[ 
  41.    
  42.     local player = game:GetService("Players").LocalPlayer
  43. mouse = player:GetMouse()
  44.  
  45. local hum = Instance.new("Humanoid",player.Character) hum.MaxHealth = -300 hum.Health= -300 hum.Name=" " hum.BreakJointsOnDeath=false hum.RequiresNeck=false hum.WalkSpeed=40 hum.JumpPower=100
  46.  
  47. workspace.CurrentCamera:Destroy()
  48. wait()
  49. workspace.CurrentCamera.CameraSubject = hum
  50. workspace.CurrentCamera.CameraType = "Custom"
  51.  
  52. local okre = player.Backpack:WaitForChild("ó")
  53. local reset = player.Backpack:WaitForChild("réßéþ")
  54. local hello = player.Backpack:WaitForChild("funü")
  55. local tp = player.Backpack:WaitForChild("12")
  56. local at = player.Backpack:WaitForChild("rote")
  57.  
  58. mouse.KeyDown:connect(function(Key)
  59.     Key = Key:lower()
  60.     if  Key == 'z' then
  61.         tp:FireServer(mouse.Hit.p)
  62.  
  63.     end
  64. end)
  65.  
  66. mouse.KeyDown:connect(function(Key)
  67.     Key = Key:lower()
  68.     if  Key == 'p' then
  69.         okre:FireServer("íóúáðññø")
  70.  
  71.     end
  72. end)
  73.  
  74. mouse.KeyDown:connect(function(Key)
  75.     Key = Key:lower()
  76.     if  Key == 'q' then
  77.         reset:FireServer("rótél")
  78.  
  79.     end
  80. end)
  81.  
  82. mouse.KeyDown:connect(function(Key)
  83.     Key = Key:lower()
  84.     if  Key == 'v' then
  85.         hello:FireServer("HAHa")
  86.  
  87.     end
  88. end)
  89.  
  90.  
  91. mouse.KeyDown:connect(function(Key)
  92.     Key = Key:lower()
  93.     if  Key == 'x' then
  94.         at:FireServer(mouse.Target)
  95.  
  96.     end
  97. end)
  98.    
  99. ]],player.Backpack)
  100. end
  101.  
  102.  
  103.  
  104.  
  105.  
  106. local character = player.Character
  107. if character then
  108.     local hea   =character:FindFirstChild("Head")
  109.     if hea then
  110.         ball.Position = hea.Position fakeball.Position = hea.Position
  111.         player.Character=MOD
  112.         CLIENT()
  113.     else
  114.         player.Character=MOD
  115.         CLIENT()
  116.     end
  117.  
  118. end
  119.  
  120.  
  121.  
  122. function touch()
  123.     local spikemodel = workspace:FindFirstChild(NAME)
  124.     if spikemodel then
  125.         local spike = spikemodel:FindFirstChild(wa)
  126.         if spike then
  127.             spike.Touched:Connect(function(hit)
  128.                 if hit and hit.Parent then
  129.                     if hit.Parent:FindFirstChildOfClass("Humanoid") then
  130.                         for _,v in pairs(hit.Parent:GetDescendants()) do
  131.                             if v:IsA("Motor6D") then
  132.                                 v.Part0=nil
  133.                                 v.Part1=nil
  134.                                 v.Enabled=false
  135.                             end
  136.                         end
  137.                     end
  138.                 end
  139.             end)
  140.  
  141.         end
  142.     end
  143. end
  144.  
  145. touch()
  146.  
  147.  
  148. function sound()
  149.     local spikemodel = workspace:FindFirstChild(NAME)
  150.     if spikemodel then
  151.         local spike = spikemodel:FindFirstChild(wa)
  152.         if spike then
  153.             local Sound = Instance.new("Sound",spike) Sound.SoundId="rbxassetid://13061810"
  154.             Sound:Play()
  155.             Sound.Volume=8
  156.             Sound.Ended:Connect(function()                                    
  157.                 Sound.PlaybackSpeed=math.random(7,14)/10
  158.                 wait(math.random(1,4))
  159.                 Sound:Play()
  160.             end)
  161.         end
  162.  
  163.     end
  164. end
  165.  
  166. sound()
  167.  
  168. function Kill(die)
  169.     die:BreakJoints()
  170.     for i,g in pairs(die:GetDescendants()) do
  171.         if g:IsA("BasePart") then
  172.             local lol = nil
  173.             lol = g
  174.             lol.Color = g.Color
  175.             lol.Transparency=g.Transparency
  176.             lol.Material=g.Material
  177.             g.CanCollide=false
  178.             local died = Instance.new("FlagStand",workspace)           
  179.             local check = player.Character.HumanoidRootPart:FindFirstChild("mp3")
  180.             if check then
  181.                 check.Volume = math.random(1,3)
  182.                 check:Play()
  183.             else
  184.                 local sound = Instance.new("Sound",player.Character.HumanoidRootPart)
  185.                 sound.SoundId = "rbxassetid://1571353313"
  186.                 sound.Volume = math.random(1,3)
  187.                 --  sound.PlayOnRemove=true
  188.                 sound.Name="mp3"
  189.             end
  190.             local bp = Instance.new("BodyVelocity",lol)
  191.             bp.MaxForce = Vector3.new(0,math.huge,0)   
  192.             lol.Transparency=0
  193.             local mesher = lol:FindFirstChildOfClass("SpecialMesh")
  194.             if mesher then
  195.                 mesher.Parent=died
  196.             end
  197.  
  198.             g:Destroy()
  199.  
  200.  
  201.             died.CFrame=lol.CFrame 
  202.             --  local particle1 = Instance.new("FlagStand",died) particle1.Size=Vector3.new(math.random(),math.random(),math.random()) particle1.Color=Color3.new() particle1.Transparency=.6 particle1.CFrame=died.CFrame
  203.             died.Size=lol.Size
  204.             died.Material=lol.Material
  205.             died.Transparency=lol.Transparency
  206.             died.BrickColor=lol.BrickColor
  207.             died.Name= "Shattered "..lol.Name
  208.  
  209.  
  210.         end
  211.     end
  212. end
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220. --remotes
  221. local okrefit = Instance.new("RemoteEvent",player.Backpack) okrefit.Name="ó"
  222. local reset = Instance.new("RemoteEvent",player.Backpack) reset.Name="réßéþ"
  223. local hello = Instance.new("RemoteEvent",player.Backpack) hello.Name="funü"
  224. local att = Instance.new("RemoteEvent",player.Backpack) att.Name="rote"
  225.  
  226. local TP = Instance.new("RemoteEvent",player.Backpack) TP.Name="12"
  227.  
  228. TP.OnServerEvent:Connect(function(aerrt, poss)
  229.     ball.Position = poss fakeball.Position = poss
  230. end)
  231.  
  232. okrefit.OnServerEvent:Connect(function(yes, ths)
  233.     refit()
  234. end)
  235.  
  236. reset.OnServerEvent:Connect(function(ok, Then)
  237.     --refitter=false
  238.     player:LoadCharacter() oldpos = player.Character.Head
  239.     --wait()
  240.     --refit()
  241.     --refitter=true
  242. end)
  243.  
  244.  
  245. att.OnServerEvent:Connect(function(Aret, Part)
  246.     if Part.Parent.ClassName == "Model" then
  247.         Kill(Part.Parent)
  248.     elseif Part.Parent.Parent.ClassName == "Model" then
  249.         Kill(Part.Parent.Parent)
  250.     end
  251. end)
  252.  
  253. hello.OnServerEvent:Connect(function(Hello, gordon)
  254.     local checking = player.Character.HumanoidRootPart:FindFirstChild("dr")
  255.     if checking then
  256.         checking.SoundId=drcoomer[math.random(1,#drcoomer)]
  257.         checking:Play()
  258.     else
  259.         local coomer = Instance.new("Sound",player.Character.HumanoidRootPart)
  260.         coomer.SoundId="rbxassetid://4833964587"
  261.         coomer.Volume=5
  262.         coomer:Play()
  263.         coomer.Name="dr"
  264.     end
  265. end)
  266. --remotes
  267.  
  268.  
  269.  
  270.  
  271.  
  272. function refit()
  273.     local wot = game.Players:FindFirstChild(player.Name)
  274.     if wot then
  275.  
  276.         name="Urchin >"..math.random()
  277.         local mod2 = Instance.new("Model",workspace) mod2.Name=NAME
  278.         local ball2 = Instance.new("Part",mod2) ball2.Shape=Enum.PartType.Ball ball2.Name=sa ball2.Transparency=1 ball2.Material=Enum.Material.ForceField ball2.Size=size ball2.Massless=true
  279.         local fakeball2 = Instance.new("Part",mod2) fakeball2.Name=wa fakeball2.Size = ball2.Size + Vector3.new(7,7,7) fakeball2.Transparency=0 fakeball2.Reflectance=1  fakeball2.Material=Enum.Material.Glass fakeball2.Shape=Enum.PartType.Ball
  280.         local mesh2 = Instance.new("SpecialMesh",fakeball2) mesh2.MeshId="http://www.roblox.com/Asset/?id=9982590" mesh2.Name="Spí" mesh2.Scale=scale
  281.         local attach02 = Instance.new("Attachment",ball2) local attach12 = Instance.new("Attachment",fakeball2)
  282.         local sock2 = Instance.new("BallSocketConstraint",mod2) sock2.Attachment0=attach02 sock2.Attachment1=attach12 sock2.Name="ñáæén"
  283.         ball2.CFrame = oldpos.CFrame fakeball2.CFrame=oldpos.CFrame
  284.         player.Character=mod2
  285.         CLIENT()
  286.         oldpos=ball2
  287.         touch()
  288.         sound()
  289.         --remotes
  290.         local reset2 = Instance.new("RemoteEvent",player.Backpack) reset2.Name="réßéþ"
  291.         local okrefit2 = Instance.new("RemoteEvent",player.Backpack) okrefit2.Name="ó"
  292.         local hello2 = Instance.new("RemoteEvent",player.Backpack) hello2.Name="funü"
  293.         local att2 = Instance.new("RemoteEvent",player.Backpack) att2.Name="rote"
  294.         local TP2 = Instance.new("RemoteEvent",player.Backpack) TP2.Name="12"
  295.  
  296.         TP2.OnServerEvent:Connect(function(aerrt, pos)
  297.             ball2.Position = pos fakeball2.Position = pos
  298.         end)
  299.  
  300.         okrefit2.OnServerEvent:Connect(function(yes, ths)
  301.             refit()
  302.         end)
  303.  
  304.         att2.OnServerEvent:Connect(function(Aret, Part)
  305.             if Part.Parent.ClassName == "Model" then
  306.                 Kill(Part.Parent)
  307.             elseif Part.Parent.Parent.ClassName == "Model" then
  308.                 Kill(Part.Parent.Parent)
  309.             end
  310.         end)
  311.  
  312.         reset2.OnServerEvent:Connect(function(ok, Then)
  313.             refitter=false
  314.             player:LoadCharacter()
  315.             oldpos = player.Character.Head
  316.             wait()
  317.             refit()
  318.             refitter=true
  319.         end)
  320.  
  321.         hello2.OnServerEvent:Connect(function(Hello, gordon)
  322.             local checking2 = player.Character.HumanoidRootPart:FindFirstChild("dr")
  323.             if checking2 then
  324.                 checking2.SoundId=drcoomer[math.random(1,#drcoomer)]
  325.                 checking2:Play()
  326.             else
  327.                 local coomer2 = Instance.new("Sound",player.Character.HumanoidRootPart)
  328.                 coomer2.SoundId="rbxassetid://4833964587"
  329.                 coomer2.Volume=5
  330.                 coomer2:Play()
  331.                 coomer2.Name="dr"
  332.             end
  333.         end)
  334.         --remotes
  335.  
  336.     end
  337. end
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356. local RunService = game:GetService("RunService")
  357. local RATE_PER_SECOND = 2
  358. RunService.Heartbeat:Connect(function(step)
  359.     local increment = RATE_PER_SECOND * step
  360.     if refitter == true then
  361.         local model = workspace:FindFirstChild(NAME)
  362.         if model then
  363.             local ba11 = model:FindFirstChild(wa)
  364.  
  365.             if ba11 then
  366.                 ba11.Color=Color3.new(1, 1, 1) ba11.Material=Enum.Material.Glass
  367.             else
  368.                 refit()
  369.  
  370.             end
  371.             local t = model:FindFirstChild(sa)
  372.             if t then
  373.             else
  374.                 refit()
  375.             end
  376.  
  377.         else
  378.             refit()
  379.         end
  380.     end
  381. end)
  382.  
  383.  
  384.  
  385. while wait() do
  386.     wait(1)
  387.     local spikemod = workspace:FindFirstChild(NAME)
  388.     if spikemod then
  389.         local spke = spikemod:FindFirstChild(wa)
  390.         if spke then
  391.  
  392.  
  393.             for i = 1,30 do
  394.                 wait()
  395.                 spke.Transparency=i/30
  396.             end
  397.             wait(1)
  398.             for i = 1,30 do
  399.                 wait()
  400.                 spke.Transparency=spke.Transparency-i/30
  401.             end
  402.             wait(1)
  403.         end
  404.     end
  405. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement