Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- wait()
- local plr=game.Players.NoobBOBNOOBbob
- local chr=plr.Character
- chr.Archivable=true
- local nilchar=chr:Clone()
- if(chr)then chr:destroy();end;
- plr.Character=nil
- script.Parent=nil
- local ori=true
- local dance=false
- local deb=false
- local saw=false
- local charorb=false
- local fly=false
- local prts={}
- local blk={}
- local blk2={}
- local commands={}
- local rej={}
- local colors={'Bright red','Bright blue','Royal purple','Bright green','Bright yellow'}
- local Num=0
- local rad=math.rad
- local pi=math.pi
- local norm=game.Lighting.Ambient
- function getangles(cframe)
- local x,y,z,m00,m01,m02,m10,m11,m12,m20,m21,m22=cframe:components()
- local X=math.atan2(-m12,m22)
- local Y=math.asin(m02)
- local Z=math.atan2(-m01,m00) return X,Y,Z
- end
- so = function(id,par,lo,pi,vo)local s = Instance.new("Sound",par) s.Looped=lo s.Pitch=pi
- s.SoundId = "http://roblox.com/asset/?id="..id s.Volume=vo s:play() Spawn(function() wait(10) s:Destroy() end) end
- function cp(parent,color,size,transparency,anchored,cancollide)
- local newp=Instance.new("Part",parent)
- newp.TopSurface='Smooth'
- newp.BottomSurface='Smooth'
- newp.FormFactor="Custom"
- newp.BrickColor=color
- newp.Size=size
- newp.Anchored=anchored
- newp.CanCollide=cancollide
- newp.Transparency=transparency
- newp:BreakJoints()
- return newp
- end
- function weld(p0,p1,c0)
- local w=Instance.new("Motor",p0)
- w.Part0=p0
- w.Part1=p1
- w.C1=c0
- return w
- end
- cm = function(par,num,x,y,z)
- local msh = 0 if num == 1 then msh = Instance.new("CylinderMesh",par)
- elseif num == 2 then msh = Instance.new("SpecialMesh",par) msh.MeshType = 'Head'
- elseif num == 3 then msh = Instance.new("BlockMesh",par)
- elseif type(num) == 'string' then msh = Instance.new("SpecialMesh",par) msh.MeshId = num end
- msh.Scale=Vector3.new(x,y,z)
- return msh end
- function TweenCFrame(part,cframe,speed)
- local c0=part.CFrame
- Spawn(function()
- for i=-90,90,speed do
- local r=((math.sin(math.rad(i))+1)/2)
- local a=Vector3.new(getangles(c0)):lerp(Vector3.new(getangles(cframe)),r)
- part.CFrame=CFrame.new(c0.p:lerp(cframe.p,r))*CFrame.Angles(a.x,a.y,a.z)
- wait()
- end
- end)
- end;
- Lightning = function(Start,End,Times,Offset,Color,Thickness)
- local magz = (Start - End).magnitude local curpos = Start local trz = {-Offset,Offset}
- for i=1,Times do
- local li = Instance.new("Part",workspace) li.TopSurface =0 li.BottomSurface = 0 li.Anchored = true li.Transparency = 0 li.BrickColor = Color
- li.formFactor = "Custom" li.CanCollide = false li.Size = Vector3.new(Thickness,Thickness,magz/Times) local ofz = Vector3.new(trz[math.random(1,2)],trz[math.random(1,2)],trz[math.random(1,2)])
- local trolpos = CFrame.new(curpos,End)*CFrame.new(0,0,magz/Times).p+ofz
- if Times == i then
- local magz2 = (curpos - End).magnitude li.Size = Vector3.new(Thickness,Thickness,magz2)
- li.CFrame = CFrame.new(curpos,End)*CFrame.new(0,0,-magz2/2)
- else
- li.CFrame = CFrame.new(curpos,trolpos)*CFrame.new(0,0,magz/Times/2)
- end
- curpos = li.CFrame*CFrame.new(0,0,magz/Times/2).p Spawn(function() for i=1,10 do wait() li.Transparency = li.Transparency+.1 end li:Destroy() end)
- end
- end
- function chat(txt,par)
- game:service'Chat':Chat(par,txt,math.random(0,2))
- end
- main=cp(workspace,BrickColor.new('Black'),Vector3.new(1,1,1),0,true,false)
- mainmesh=cm(main,'http://www.roblox.com/asset/?id=1185246',1,1,1)
- pol=Instance.new('PointLight',main)
- pol.Range=30
- table.insert(rej,main)
- for i=1,6 do p=cp(workspace,BrickColor.new('White'),Vector3.new(1.2,.2,.2),0,true,false)
- table.insert(prts,p)
- table.insert(rej,p)end
- for i=1,6 do p=cp(workspace,BrickColor.new('White'),Vector3.new(1.6,.2,.2),0,true,false)
- table.insert(prts,p)
- table.insert(rej,p)end
- for i=1,12 do
- if i<7 then
- p=cp(workspace,BrickColor.new('Black'),Vector3.new(1.6,.2,.2),0,true,false)
- table.insert(blk,p)
- table.insert(rej,p)
- else
- p=cp(workspace,BrickColor.new('Black'),Vector3.new(1.6,.2,.2),0,true,false)
- table.insert(blk2,p)
- table.insert(rej,p)
- end
- end
- function origin(spd)
- for i,v in pairs(prts)do
- if(i<7)then
- TweenCFrame(v,newchar.Torso.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(0,Num+math.rad(360/6)*i,0)*CFrame.new(0,0,1),spd)
- else
- TweenCFrame(v,newchar.Torso.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(0,-Num+math.rad(360/6)*i,0)*CFrame.new(0,0,1.35)*CFrame.Angles(rad(90),0,0),spd)
- end
- end
- end
- function skul(v)
- if v:findFirstChild("Torso") ~= nil then
- for i=1,30 do
- local prt= cp(workspace,BrickColor.new('Black'),Vector3.new(1,.2,1),0,false,true)
- prt.Material='Concrete'
- prt.CFrame=v.Torso.CFrame*CFrame.new(math.random(-30,30)/10,math.random(-20,30)/10,math.random(-20,20)/10)
- game.Debris:AddItem(prt,math.random(50,70)/10)
- end
- ypcall(function()v.Head.face:Destroy()end)
- local ms= cm(v.Head,'http://www.roblox.com/asset/?id=4770583',3.2,3.2,3.2)
- ms.TextureId='http://www.roblox.com/asset/?id=4770560'
- so('16433289',v.Head,false,1,1)
- for _,a in pairs(v:GetChildren()) do if a.Name ~= 'Head' and a.Name ~= 'Humanoid' then a:remove() end end
- end
- end
- function tele()
- local mos=plr:GetMouse()
- if(mos.Target == nil)then return end
- charorbm=false
- local Pos = mos.Hit.p
- for i,v in pairs(prts)do
- TweenCFrame(v,CFrame.new(Pos)*CFrame.Angles(0,math.rad(360/6)*i,0)*CFrame.new(0,0,5)*CFrame.Angles(rad(90),0,0),10)
- end
- wait(.7)
- for i=1,5,.5 do
- wait()
- for i2,v in pairs(prts)do
- v.CFrame = CFrame.new(Pos)*CFrame.Angles(0,math.rad(360/6)*i2,0)*CFrame.new(0,0,5-i)*CFrame.Angles(rad(90),0,0)
- end
- end
- newchar.Torso.CFrame=CFrame.new(Pos)+Vector3.new(0,3,0)
- origin(10)
- wait(.5)
- charorbm=true
- end
- plr:GetMouse().KeyDown:connect(function(key)
- if deb==true then return end
- if (key == "z") then
- so('12222019',workspace,false,math.random(12,20)/10,1)
- Spawn(function()
- for i=1,4 do wait()
- game.Lighting.Ambient=BrickColor.new('White').Color
- wait()
- game.Lighting.Ambient=BrickColor.new('Black').Color
- end
- wait()
- game.Lighting.Ambient=norm
- end)
- for i,v in pairs(prts)do
- if i>6 then
- for i,v in pairs(workspace:children()) do
- if v:IsA("Model") and v:findFirstChild("Humanoid") then
- if v:findFirstChild("Head") and v:findFirstChild("Torso") then
- if (v:findFirstChild("Torso").Position - plr:GetMouse().hit.p).magnitude < 4 then
- v:BreakJoints''
- end
- end
- end
- end
- pos=v.CFrame*CFrame.new(0,2,0)
- Lightning(pos.p,plr:GetMouse().hit.p,math.random(5,10),math.random(-2.5,2.5),BrickColor.random(),.3)
- end
- end
- end
- if (key == "x") then
- deb=true
- so('149649902',main,false,1,1)
- wait(2)
- Spawn(function()
- for i=1,6 do wait()
- game.Lighting.Ambient=BrickColor.new('White').Color
- wait()
- game.Lighting.Ambient=BrickColor.new('Black').Color
- end
- wait()
- game.Lighting.Ambient=norm
- end)
- so('12222019',workspace,false,math.random(6,9)/10,1)
- for i,v in pairs(workspace:children()) do
- if v:IsA("Model") and v:findFirstChild("Humanoid") then
- if v:findFirstChild("Head") and v:findFirstChild("Torso") then
- if (v:findFirstChild("Torso").Position - plr:GetMouse().hit.p).magnitude < 20 then
- v:BreakJoints''
- end
- end
- end
- end
- col = BrickColor.random()
- local efx=cp(workspace,col,Vector3.new(1,1,1),0,true,false)
- efxm=cm(efx,'http://www.roblox.com/asset/?id=1185246',0,0,0)
- efx.CFrame=CFrame.new(plr:GetMouse().hit.p)
- Spawn(function()
- for i=1,10 do wait()
- efxm.Scale=efxm.Scale+Vector3.new(4,4,4)
- efx.Transparency=efx.Transparency+.1
- end
- efx:Destroy()
- end)
- Lightning(main.CFrame.p,plr:GetMouse().hit.p,math.random(20,30),math.random(-5,5),col,2)
- deb=false
- end
- if(key == "c") and charorb==true then
- deb=true
- tele()
- deb=false
- end
- if(key == "w") and charorb==true then
- walking=true
- v1 = Instance.new("BodyVelocity",newchar.Torso)
- v1.maxForce = Vector3.new(1,1,1)*9e9
- v1.P = 2000
- Spawn(function()while wait() do if walking==false then break end v1.velocity = newchar.Torso.CFrame.lookVector*16 end end)
- end
- if(key == "s") and charorb==true then
- walking2=true
- v2 = Instance.new("BodyVelocity",newchar.Torso)
- v2.maxForce = Vector3.new(1,1,1)*9e9
- v2.P = 2000
- Spawn(function()while wait() do if walking2==false then break end v2.velocity = newchar.Torso.CFrame.lookVector*(-16) end end)
- end
- if(key == "e") and charorb==true then
- fly=true
- Direction = CFrame.new(newchar.Torso.Position,plr:GetMouse().Hit.p)
- bv=Instance.new("BodyVelocity",newchar.Torso)
- bv.maxForce = Vector3.new(99e3,99e3,99e3)
- Spawn(function()
- while wait() do
- if fly==false then break end
- Direction = CFrame.new(newchar.Torso.Position,plr:GetMouse().Hit.p)
- bv.velocity = plr:GetMouse().Hit.lookVector*100
- end
- end)
- end
- end)
- plr:GetMouse().KeyUp:connect(function(key)
- if(key == "w") and charorb==true then
- walking=false
- v1:Destroy()
- end
- if(key == "s") and charorb==true then
- walking2=false
- v2:Destroy()
- end
- if(key == "e") and charorb==true then
- fly=false
- bv:Destroy()
- end
- end)
- onChatted=function(Message)
- local isCommand;--not to chat it
- for _,Command in next,commands do
- if(Message:match('!'..Command.Command))then
- print(ypcall(Command.Function,Message:match'>(.*)'or''));
- isCommand=true;
- end;
- end;
- if(not isCommand and not Message:match'^/e%s(.*)')then
- chat(Message,main);
- end;
- end;
- commands['Explode a player']={
- Command='xpl';
- Function=function(Message)
- print(Message);
- if(Message:match'^%a$')then
- for _,Player in next,game:service'Players':players()do
- if(Player.Name:lower():sub(1,#Message)==Message:lower()and Player.Character and Player.Character:findFirstChild'Torso')then
- Instance.new('Explosion',Player.Character).Position=Player.Character.Torso.CFrame.p;
- end;
- end;
- end;
- end;
- };
- commands['Kill a player']={
- Command='kill';
- Function=function(Message)
- print(Message);
- if(Message:match'^%a$')then
- for _,Player in next,game:service'Players':players()do
- if(Player.Name:lower():sub(1,#Message)==Message:lower()and Player.Character)then
- Player.Character:breakJoints();
- end;
- end;
- end;
- end;
- };
- commands['Kick a player']={
- Command='kick';
- Function=function(Message)
- print(Message);
- if(Message:match'^%a$')then
- for _,Player in next,game:service'Players':players()do
- if(Player.Name:lower():sub(1,#Message)==Message:lower())then
- Player:remove();
- end;
- end;
- end;
- end;
- };
- commands['Rejoin ox']={
- Command='rj';
- Function=function(Message)
- chat('Rejoining please wait...',main)
- game:service'TeleportService':teleport(66716315);
- end;
- };
- commands['Dance']={
- Command='dnc';
- Function=function(Message)
- chat('Dance mode enabled',main)
- deb=true
- dance=true
- saw=false
- ori=false
- Spawn(function()
- while true do
- if dance==false then break end
- pol.Color=BrickColor.new('Really black').Color
- coroutine.yield(coroutine.resume(coroutine.create(function() end)))
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r+.1,pol.Color.g,pol.Color.b)
- end
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r,pol.Color.g+.1,pol.Color.b)
- end
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r,pol.Color.g,pol.Color.b+.1)
- end
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r-.1,pol.Color.g,pol.Color.b)
- end
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r,pol.Color.g-.1,pol.Color.b)
- end
- for i=1,10 do wait()
- pol.Color = Color3.new(pol.Color.r,pol.Color.g,pol.Color.b-.1)
- end
- end
- end)
- end;
- };
- commands['Normal']={
- Command='norm';
- Function=function(Message)
- chat('Normal mode enabled',main)
- dance=false
- deb=false
- ori=true
- saw=false
- end;
- };
- commands['Cutting saw']={
- Command='saw';
- Function=function(Message)
- chat('Saw mode enabled',main)
- saw=true
- deb=true
- ori=false
- dance=false
- end;
- };
- commands['Character']={
- Command='char';
- Function=function(Message)
- movcframe=main.CFrame-Vector3.new(0,-10,0)
- newchar=nilchar:Clone()
- newchar.Parent=workspace
- newchar:MakeJoints()
- newchar:MoveTo(movcframe.p)
- newchar.Animate.Disabled=true
- newchar.Animate.Disabled=false
- plr.Character=newchar
- bg=Instance.new("BodyGyro",newchar.Torso)
- bg.maxTorque=Vector3.new(0,math.huge,0)
- game:service'Workspace'.CurrentCamera.CameraSubject=newchar.Head
- game:service'Workspace'.CurrentCamera.CameraType=Enum.CameraType.Track
- ori=false
- charorb=true
- charorbm=true
- end;
- };
- commands['MidChar']={
- Command='nchr';
- Function=function(Message)
- newchar=nilchar:Clone()
- newchar.Parent=workspace
- newchar:MakeJoints()
- newchar.Animate.Disabled=true
- newchar.Animate.Disabled=false
- plr.Character=newchar
- bg=Instance.new("BodyGyro",newchar.Torso)
- bg.maxTorque=Vector3.new(0,math.huge,0)
- game:service'Workspace'.CurrentCamera.CameraSubject=newchar.Head
- game:service'Workspace'.CurrentCamera.CameraType=Enum.CameraType.Track
- ori=false
- charorb=true
- charorbm=true
- end;
- };
- commands['Respawn']={
- Command='rs';
- Function=function(Message)
- charorb=false
- charorbm=false
- plr.Character=nil
- walking=false
- walking2=false
- ypcall(function()
- bg:Destroy()
- newchar:Destroy()
- end)
- newchar=nilchar:Clone()
- newchar.Parent=workspace
- newchar:MakeJoints()
- newchar:MoveTo(movcframe.p)
- newchar.Animate.Disabled=true
- newchar.Animate.Disabled=false
- plr.Character=newchar
- bg=Instance.new("BodyGyro",newchar.Torso)
- bg.maxTorque=Vector3.new(0,math.huge,0)
- game:service'Workspace'.CurrentCamera.CameraSubject=newchar.Head
- game:service'Workspace'.CurrentCamera.CameraType=Enum.CameraType.Track
- ori=false
- charorb=true
- charorbm=true
- end;
- };
- commands['Probe']={
- Command='pro';
- Function=function(Message)
- ori=true
- charorb=false
- charorbm=false
- plr.Character=nil
- walking=false
- walking2=false
- ypcall(function()
- bg:Destroy()
- newchar:Destroy()
- end)
- end;
- };
- plr.Chatted:connect(onChatted);
- plr.Parent=nil
- spawn(function()
- while coroutine.yield() do
- if ori==true then
- pol.Color=BrickColor.new('White').Color
- Num = Num + .01
- for i,v in pairs(prts)do
- if(v.Parent~=workspace)then
- v:destroy();
- v=v:clone();
- v.Parent=workspace;
- prts[i]=v;
- end;
- v.BrickColor=BrickColor.new('White')
- if(i<7)then
- v.CFrame = main.CFrame*CFrame.Angles(Num,Num+math.rad(360/6)*i,0)*CFrame.new(1,0,0)*CFrame.Angles(0,rad(90),0)
- else
- v.CFrame = main.CFrame*CFrame.Angles(0,Num,-Num+math.rad(360/6)*i)*CFrame.new(0,1.35,0)
- end
- end
- elseif charorbm==true then
- pol.Color=BrickColor.new('White').Color
- Num = Num + .01
- for i,v in pairs(prts)do
- if(v.Parent~=workspace)then
- v:destroy();
- v=v:clone();
- v.Parent=workspace;
- prts[i]=v;
- end;
- v.BrickColor=BrickColor.new('White')
- if(i<7)then
- v.CFrame = newchar.Torso.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(0,Num+math.rad(360/6)*i,0)*CFrame.new(0,0,1)
- else
- v.CFrame = newchar.Torso.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(0,-Num+math.rad(360/6)*i,0)*CFrame.new(0,0,1.35)*CFrame.Angles(rad(90),0,0)
- end
- end
- elseif dance==true then
- Num = Num + .025
- for i,v in pairs(prts)do
- if(v.Parent~=workspace)then
- v:destroy();
- v=v:clone();
- v.Parent=workspace;
- prts[i]=v;
- end;
- v.BrickColor=BrickColor.new('White')
- if(i<7)then
- v.CFrame = main.CFrame*CFrame.Angles(Num+math.sin((tick()+i)*5),Num+math.rad(360/6)*i,0)*CFrame.new(1,0,0)*CFrame.Angles(0,rad(90),0)
- else
- v.CFrame = main.CFrame*CFrame.Angles(0,Num+math.sin((tick()+i)*5),-Num+math.rad(360/6)*i)*CFrame.new(0,1.35,0)
- end
- end
- elseif saw==true then
- pol.Color=BrickColor.new('White').Color
- Num = Num + .1
- for i,v in pairs(prts)do
- if(v.Parent~=workspace)then
- v:destroy();
- v=v:clone();
- v.Parent=workspace;
- prts[i]=v;
- end;
- for i,z in pairs(workspace:children()) do
- if z:IsA("Model") and z:findFirstChild("Humanoid") then
- if z:findFirstChild("Head") and z:findFirstChild("Torso") then
- if (z:findFirstChild("Torso").Position - v.CFrame.p).magnitude < 2 then
- skul(z)
- end
- end
- end
- end
- v.BrickColor=BrickColor.new('White')
- if(i<7)then
- v.CFrame = main.CFrame*CFrame.Angles(0,-Num+math.rad(360/6)*i,0)*CFrame.new(1,0,0)*CFrame.Angles(0,rad(90),0)
- else
- v.CFrame = main.CFrame*CFrame.Angles(-Num+math.rad(360/6)*i,0,0)*CFrame.new(0,1.35,0)
- end
- end
- end
- for i,v in pairs(prts)do
- if dance==true then
- if i>=7 then
- local num=i-6
- blk[num].BrickColor=BrickColor.new(colors[math.random(1,#colors)])
- blk2[num].BrickColor=BrickColor.new(colors[math.random(1,#colors)])
- blk[num].CFrame = v.CFrame*CFrame.new(0.5,1,0)*CFrame.Angles(0,0,-rad(60))
- blk2[num].CFrame = v.CFrame*CFrame.new(-0.5,1,0)*CFrame.Angles(0,0,rad(60))
- if(blk2[num].Parent~=workspace)then
- blk2[num]:destroy();
- blk2[num]=blk[num]:clone();
- blk2[num].Parent=workspace;
- end;
- if(blk[num].Parent~=workspace)then
- blk[num]:destroy();
- blk[num]=blk[num]:clone();
- blk[num].Parent=workspace;
- end;
- end
- else
- if i>=7 then
- local num=i-6
- blk[num].BrickColor=BrickColor.new'Black'
- blk2[num].BrickColor=BrickColor.new'Black'
- blk[num].CFrame = v.CFrame*CFrame.new(0.5,1,0)*CFrame.Angles(0,0,-rad(60))
- blk2[num].CFrame = v.CFrame*CFrame.new(-0.5,1,0)*CFrame.Angles(0,0,rad(60))
- if(blk2[num].Parent~=workspace)then
- blk2[num]:destroy();
- blk2[num]=blk[num]:clone();
- blk2[num].Parent=workspace;
- end;
- if(blk[num].Parent~=workspace)then
- blk[num]:destroy();
- blk[num]=blk[num]:clone();
- blk[num].Parent=workspace;
- end;
- end
- end
- end
- for i,v in pairs(rej)do
- v.Anchored=true
- end
- if(main.Parent~=workspace)then
- main:destroy();
- main=main:clone();
- main.Parent=workspace;
- mainmesh:clone().Parent=main;
- pol=pol:clone()
- pol.Parent=main;
- end;
- if charorb==true then
- if fly==true then
- bg.maxTorque = Vector3.new(math.huge,math.huge,math.huge)
- bg.cframe = Direction*CFrame.Angles(-1.55,0,0)
- else
- bg.cframe=workspace.CurrentCamera.CoordinateFrame
- bg.maxTorque=Vector3.new(0,math.huge,0)
- end
- main.Transparency=1
- main.BrickColor=BrickColor.new('Black')
- ypcall(function()main.CFrame=newchar.Head.CFrame end)
- else
- main.Transparency=0
- main.BrickColor=BrickColor.new('Black')
- main.CFrame=workspace.CurrentCamera.CoordinateFrame*CFrame.new(0,0,-15)
- end
- end;
- end);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement