Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Tool = Instance.new("Tool")
- Tool.Name = "grow"
- disc = Instance.new("Part")
- disc.Name = "Handle"
- disc.Parent = Tool
- Tool.Parent = owner.Character
- disc.Size = Vector3.new(0.35, 0.35, 0.35)
- disc.BrickColor = BrickColor.new("Dove blue")
- disc.Shape = Enum.PartType.Ball
- disc.Material = "Neon"
- casing = Instance.new("Part")
- casing.Size = Vector3.new(0.15, 0.75, 0.75)
- casing.BrickColor = BrickColor.new("Dark grey")
- casing.Shape = Enum.PartType.Cylinder
- casing.Parent = disc
- casing.CanCollide = false
- disc.Transparency = 1
- print("Disk models by bannaboy43")
- ----------------base disk----------------------
- casing.Size = Vector3.new( 0.027,0.727, 0.7214)
- Basemesh = Instance.new("SpecialMesh", casing)
- Basemesh.MeshId = "rbxassetid://7695869004"
- Basemesh.Scale = Vector3.new(1,1,1)
- Basemesh.TextureId = "rbxassetid://29564388"
- Basemesh.VertexColor = Vector3.new(1.3,1.3,1.3)
- casing.Material = Enum.Material.Metal
- casing.Reflectance = .2
- casing.Color = Color3.fromRGB(84, 81, 86)
- ----------------glass disk----------------------
- Glass = Instance.new("Part", casing)
- Glass.Transparency = .5
- Glass.Size = Vector3.new(0.073, 0.256, 0.256)
- Glass.Color = Color3.fromRGB(91, 130, 255)--- RED(184, 65, 65)
- Glassmesh = Instance.new("SpecialMesh", Glass)
- Glassmesh.Scale = Vector3.new(1,1,1)
- Glass.Material = Enum.Material.Glass
- Glassmesh.MeshType = Enum.MeshType.Sphere
- GlassWeld = Instance.new("Weld", Glass)
- GlassWeld.Part0 = casing
- GlassWeld.Part1 = Glass
- --GlassWeld.C0 = CFrame.Angles(math.rad(90),math.rad(0),0)
- ----------------neon disk----------------------
- Core = Instance.new("Part", casing)
- Core.Size = Vector3.new(0.035, 0.33, 0.333)
- Core.Color = Color3.fromRGB(91, 130, 2555) --- RED( 255, 91, 91)
- Coremesh = Instance.new("SpecialMesh", Core)
- Coremesh.Scale = Vector3.new(1,1,1)
- Core.Material = Enum.Material.Neon
- Coremesh.MeshType = Enum.MeshType.Sphere
- CoreWeld = Instance.new("Weld", Core)
- CoreWeld.Part0 = Core
- CoreWeld.Part1 = Glass
- Weldlol3 = Instance.new("Weld")
- Weldlol3.Parent = disc
- Weldlol3.Part0 = disc
- Weldlol3.Part1 = casing
- Weldlol3.C1 = CFrame.Angles(0,0,math.rad(90))
- Core.CanCollide = false
- Glass.CanCollide = false
- weight = Instance.new("Part", owner.Character)
- weight.CanCollide = false
- weight.Transparency = 1
- weight.Size = Vector3.new(20,20,20)
- weight.CanTouch = false
- weight.CFrame = owner.Character.Torso.CFrame
- owner.Character.Torso.Anchored = true
- task.wait()
- weightweld = Instance.new("Weld")
- weightweld.Parent = owner.Character.Torso
- weightweld.Part0 = owner.Character.Torso
- weightweld.Part1 = weight
- weightweld.C1 = CFrame.new(0,50,0)
- task.wait()
- weight.Massless = true
- owner.Character.Torso.Anchored = false
- Tool.GripPos = Vector3.new(0,0,0.25)
- islunging = false
- toolout = false
- notouch = false
- local where
- owner.Character.Humanoid:RemoveAccessories()
- oldname = owner.Character.Humanoid.DisplayName
- task.wait()
- hat = Instance.new("Accessory")
- helm = Instance.new("Part", hat)
- helm.CanCollide = false
- local attachment1 = Instance.new("Attachment")
- attachment1.Parent = helm
- attachment1.Name = "HatAttachment"
- attachment1.CFrame = CFrame.new(0, 0.45, 0.1, 1, 0, 0, 0, 1, 0, 0, 0, 1)
- Mesh = Instance.new("SpecialMesh")
- Mesh.Parent = helm
- Mesh.MeshId = "http://www.roblox.com/asset/?id=1915039857"
- Mesh.TextureId = "http://www.roblox.com/asset/?id=1915052170"
- Mesh.Scale = Vector3.new(2, 2, 2)
- helm.Name = "Handle"
- task.wait()
- hat.Parent = owner.Character
- local function replaceClothes()
- local character = owner.Character
- if character then
- local shirt = character:FindFirstChildOfClass("Shirt")
- local pants = character:FindFirstChildOfClass("Pants")
- local tshirt = character:FindFirstChildOfClass("ShirtGraphic")
- if tshirt then
- tshirt:Destroy()
- end
- if not shirt then
- shirt = Instance.new("Shirt", character)
- end
- if not pants then
- pants = Instance.new("Pants", character)
- end
- -- reset shirt / pants content ids
- shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=555136926"
- pants.PantsTemplate = "http://www.roblox.com/asset/?id=1995739662"
- end
- end
- task.wait()
- replaceClothes()
- Tool.Equipped:Connect(function()
- toolout = true
- task.wait()
- end)
- Tool.Unequipped:Connect(function()
- toolout = false
- end)
- Tool.Activated:connect(function()
- wait(0.25)
- islunging = true
- end)
- function grow(part)
- if part.Name ~= "Base" then
- notouch = false
- psize = 1
- ogsize = part.Size
- wait()
- ring:Destroy()
- islunging = false
- wait()
- where = nil
- for growth = 1, 10 do
- wait()
- psize = psize + 0.1
- task.wait()
- part.Size = ogsize * psize
- end
- end
- end
- local isTouched = false
- function thinghere(plr,action,part)
- local s, f = pcall(function()
- if toolout then
- ring = disc:Clone()
- ring.Parent = workspace
- ring.CFrame = owner.Character.Head.CFrame * CFrame.new(0,-1,-3.5)
- wait()
- local velocity = Instance.new("BodyVelocity", ring)
- velocity.Velocity = ring.CFrame.lookVector * 50
- velocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
- wait()
- notouch = true
- coroutine.wrap(function()
- while notouch do
- task.wait()
- where = part.Position
- task.wait()
- ring.CFrame = CFrame.lookAt(ring.Position, where)
- velocity.Velocity = ring.CFrame.LookVector * 50
- end
- end)()
- wait(0.25)
- while notouch do
- wait(0.1)
- ring.Touched:Connect(grow)
- end
- end
- end)
- end
- local E = Instance.new("RemoteEvent",NLS([[local E = script:FindFirstChildWhichIsA("RemoteEvent")
- local Mouse = owner:GetMouse()
- function ButtonDown()
- if Mouse.Hit ~= nil then
- E:FireServer("Down",Mouse.Target)
- end
- end
- Mouse.Button1Down:Connect(ButtonDown)
- ]],owner.PlayerGui))
- E.OnServerEvent:Connect(thinghere)
- Tool2 = Instance.new("Tool")
- Tool2.Name = "shrink"
- disc2 = Instance.new("Part")
- disc2.Name = "Handle"
- disc2.Parent = Tool2
- Tool2.Parent = owner.Character
- disc2.BrickColor = BrickColor.new("Bright red")
- disc2.Size = Vector3.new(0.35, 0.35, 0.35)
- disc2.Shape = Enum.PartType.Ball
- disc2.Material = "Neon"
- casing2 = Instance.new("Part")
- casing2.Size = Vector3.new(0.15, 0.75, 0.75)
- casing2.BrickColor = BrickColor.new("Dark grey")
- casing2.Shape = Enum.PartType.Cylinder
- casing2.Parent = disc2
- casing2.CanCollide = false
- ----------------base disk----------------------
- casing2.Size = Vector3.new( 0.027,0.727, 0.7214)
- Basemesh2 = Instance.new("SpecialMesh", casing2)
- Basemesh2.MeshId = "rbxassetid://7695869004"
- Basemesh2.Scale = Vector3.new(1,1,1)
- Basemesh2.TextureId = "rbxassetid://29564388"
- Basemesh2.VertexColor = Vector3.new(1.3,1.3,1.3)
- casing2.Material = Enum.Material.Metal
- casing2.Reflectance = .2
- casing2.Color = Color3.fromRGB(84, 81, 86)
- ----------------glass disk----------------------
- Glass2 = Instance.new("Part", casing2)
- Glass2.Transparency = .5
- Glass2.Size = Vector3.new(0.073, 0.256, 0.256)
- Glass2.Color = Color3.fromRGB(184, 65, 65)
- Glassmesh2 = Instance.new("SpecialMesh", Glass2)
- Glassmesh2.Scale = Vector3.new(1,1,1)
- Glass2.Material = Enum.Material.Glass
- Glassmesh2.MeshType = Enum.MeshType.Sphere
- GlassWeld2 = Instance.new("Weld", Glass2)
- GlassWeld2.Part0 = casing2
- GlassWeld2.Part1 = Glass2
- --GlassWeld2.C0 = CFrame.Angles(math.rad(90),math.rad(0),0)
- ----------------neon disk----------------------
- Core2 = Instance.new("Part", casing2)
- Core2.Size = Vector3.new(0.035, 0.33, 0.333)
- Core2.Color = Color3.fromRGB( 255, 91, 91)
- Coremesh2 = Instance.new("SpecialMesh", Core2)
- Coremesh2.Scale = Vector3.new(1,1,1)
- Core2.Material = Enum.Material.Neon
- Coremesh2.MeshType = Enum.MeshType.Sphere
- CoreWeld2 = Instance.new("Weld", Core2)
- CoreWeld2.Part0 = Core2
- CoreWeld2.Part1 = Glass2
- Weldlol4 = Instance.new("Weld")
- Weldlol4.Parent = disc2
- Weldlol4.Part0 = disc2
- Weldlol4.Part1 = casing2
- Weldlol4.C1 = CFrame.Angles(0,0,math.rad(90))
- Core2.CanCollide = false
- Glass2.CanCollide = false
- task.wait()
- Tool2.GripPos = Vector3.new(0,0,0.25)
- islunging2 = false
- toolout2 = false
- notouch2 = false
- disc2.Transparency = 1
- local where2
- Tool2.Equipped:Connect(function()
- toolout2 = true
- task.wait()
- end)
- Tool2.Unequipped:Connect(function()
- toolout2 = false
- end)
- Tool2.Activated:connect(function()
- wait(0.25)
- islunging2 = true
- end)
- function grow2(part)
- if part.Name ~= "Base" then
- notouch2 = false
- psize2 = 1
- ogsize2 = part.Size
- wait()
- ring2:Destroy()
- islunging2 = false
- where2 = nil
- wait()
- for growth2 = 1, 5 do
- wait()
- psize2 = psize2 - 0.05
- task.wait()
- part.Size = ogsize2 * psize2
- end
- end
- end
- local isTouched2 = false
- function thinghere2(plr,action,part)
- local s, f = pcall(function()
- if toolout2 then
- ring2 = disc2:Clone()
- ring2.Parent = workspace
- ring2.CFrame = owner.Character.Head.CFrame * CFrame.new(0,-1,-3.5)
- wait()
- local velocity2 = Instance.new("BodyVelocity", ring2)
- velocity2.Velocity = ring2.CFrame.lookVector * 50
- velocity2.MaxForce = Vector3.new(math.huge,math.huge,math.huge)
- wait()
- notouch2 = true
- coroutine.wrap(function()
- while notouch2 do
- task.wait()
- where2 = part.Position
- task.wait()
- ring2.CFrame = CFrame.lookAt(ring2.Position, where2)
- velocity2.Velocity = ring2.CFrame.LookVector * 50
- end
- end)()
- wait(0.25)
- while notouch2 do
- wait(0.1)
- ring2.Touched:Connect(grow2)
- end
- end
- end)
- end
- local E2 = Instance.new("RemoteEvent",NLS([[local E2 = script:FindFirstChildWhichIsA("RemoteEvent")
- local Mouse = owner:GetMouse()
- function ButtonDown2()
- if Mouse.Hit ~= nil then
- E2:FireServer("Down",Mouse.Target)
- end
- end
- Mouse.Button1Down:Connect(ButtonDown2)
- ]],owner.PlayerGui))
- E2.OnServerEvent:Connect(thinghere2)
- squish = 0
- function growlol()
- local Percent = 4
- Player = owner
- squish = squish + 1
- local Motors = {}
- table.insert(Motors, Player.Character.HumanoidRootPart.RootJoint)
- for i,Motor in pairs(Player.Character.Torso:GetChildren()) do
- if Motor:IsA("Motor6D") == false then continue end
- table.insert(Motors, Motor)
- end
- for i,v in pairs(Motors) do
- v.C0 = CFrame.new((v.C0.Position * Percent)) * (v.C0 - v.C0.Position)
- v.C1 = CFrame.new((v.C1.Position * Percent)) * (v.C1 - v.C1.Position)
- end
- for i,Part in pairs(Player.Character:GetChildren()) do
- if Part:IsA("BasePart") == false then continue end
- Part.Size = Part.Size * Percent
- end
- for i,Accessory in pairs(Player.Character:GetChildren()) do
- if Accessory:IsA("Accessory") == false then continue end
- Accessory.Handle.AccessoryWeld.C0 = CFrame.new((Accessory.Handle.AccessoryWeld.C0.Position * Percent)) * (Accessory.Handle.AccessoryWeld.C0 - Accessory.Handle.AccessoryWeld.C0.Position)
- Accessory.Handle.AccessoryWeld.C1 = CFrame.new((Accessory.Handle.AccessoryWeld.C1.Position * Percent)) * (Accessory.Handle.AccessoryWeld.C1 - Accessory.Handle.AccessoryWeld.C1.Position)
- Accessory.Handle:FindFirstChildOfClass("SpecialMesh").Scale *= Percent
- end
- owner.Character.Humanoid.WalkSpeed = 16
- owner.Character.Humanoid.JumpPower = 50
- owner.Character.Humanoid.DisplayName = oldname
- weight.Massless = true
- end
- function shrinklol()
- local Percent = 0.25
- Player = owner
- squish = squish - 1
- local Motors = {}
- table.insert(Motors, Player.Character.HumanoidRootPart.RootJoint)
- for i,Motor in pairs(Player.Character.Torso:GetChildren()) do
- if Motor:IsA("Motor6D") == false then continue end
- table.insert(Motors, Motor)
- end
- for i,v in pairs(Motors) do
- v.C0 = CFrame.new((v.C0.Position * Percent)) * (v.C0 - v.C0.Position)
- v.C1 = CFrame.new((v.C1.Position * Percent)) * (v.C1 - v.C1.Position)
- end
- for i,Part in pairs(Player.Character:GetChildren()) do
- if Part:IsA("BasePart") == false then continue end
- Part.Size = Part.Size * Percent
- end
- for i,Accessory in pairs(Player.Character:GetChildren()) do
- if Accessory:IsA("Accessory") == false then continue end
- Accessory.Handle.AccessoryWeld.C0 = CFrame.new((Accessory.Handle.AccessoryWeld.C0.Position * Percent)) * (Accessory.Handle.AccessoryWeld.C0 - Accessory.Handle.AccessoryWeld.C0.Position)
- Accessory.Handle.AccessoryWeld.C1 = CFrame.new((Accessory.Handle.AccessoryWeld.C1.Position * Percent)) * (Accessory.Handle.AccessoryWeld.C1 - Accessory.Handle.AccessoryWeld.C1.Position)
- Accessory.Handle:FindFirstChildOfClass("SpecialMesh").Scale *= Percent
- end
- task.wait()
- for i,v in pairs(owner.Character:GetDescendants()) do
- if v:IsA("BasePart") or v:IsA("MeshPart") then
- local density = 1
- local friction = 1
- local elasticity = 0
- local frictionWeight = 100000000
- local elasticityWeight = 1
- local physProperties = PhysicalProperties.new(density, friction, elasticity, frictionWeight, elasticityWeight)
- v.CustomPhysicalProperties = physProperties
- end
- end
- owner.Character.Humanoid.WalkSpeed = 75
- owner.Character.Humanoid.JumpPower = 75
- owner.Character.Humanoid.DisplayName = " "
- weight.Massless = false
- end
- local E3 = Instance.new("RemoteEvent",NLS([[local E3 = script:FindFirstChildWhichIsA("RemoteEvent")
- local Mouse = owner:GetMouse()
- function ButtonDown(key)
- key = key:lower()
- if key == "e" then
- E3:FireServer("Down")
- end
- end
- Mouse.KeyDown:Connect(ButtonDown)
- ]],owner.PlayerGui))
- E3.OnServerEvent:Connect(growlol)
- local E4 = Instance.new("RemoteEvent",NLS([[local E4 = script:FindFirstChildWhichIsA("RemoteEvent")
- local Mouse = owner:GetMouse()
- function ButtonDown2(key)
- key = key:lower()
- if key == "q" then
- E4:FireServer("Down")
- end
- end
- Mouse.KeyDown:Connect(ButtonDown2)
- ]],owner.PlayerGui))
- E4.OnServerEvent:Connect(shrinklol)
- function squishlol(hit)
- if squish >= 2 then
- local partParent = hit.Parent
- local humanoid = partParent:FindFirstChildWhichIsA("Humanoid")
- if humanoid ~= owner.Character.Humanoid and humanoid then
- humanoid.PlatformStand = true
- end
- end
- end
- function squishlolstop(hit)
- if squish <= 2 then
- local partParent = hit.Parent
- local humanoid = partParent:FindFirstChildWhichIsA("Humanoid")
- if humanoid ~= owner.Character.Humanoid and humanoid then
- humanoid.PlatformStand = false
- end
- end
- end
- for i,v in pairs(owner.Character:GetDescendants()) do
- if v:IsA("BasePart") then
- v.Touched:connect(squishlol)
- v.TouchEnded:connect(squishlolstop)
- end
- end
Add Comment
Please, Sign In to add comment