SHARE
TWEET

Untitled

a guest Feb 19th, 2019 52 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- This script has convert to FE by who i don't know?
  2.  
  3. -----------------------------------------------------
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,game,owner = owner,game
  6. local RealPlayer = Player
  7. do
  8.     print("FE Compatibility code by Mokiros | Showcase by Bacon Hair!")
  9.     local rp = RealPlayer
  10.     script.Parent = rp.Character
  11.    
  12.     --RemoteEvent for communicating
  13.     local Event = Instance.new("RemoteEvent")
  14.     Event.Name = "UserInput_Event"
  15.  
  16.     --Fake event to make stuff like Mouse.KeyDown work
  17.     local function fakeEvent()
  18.         local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  19.         t.connect = t.Connect
  20.         return t
  21.     end
  22.  
  23.     --Creating fake input objects with fake variables
  24.     local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  25.     local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  26.     local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  27.         CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  28.     end}
  29.     --Merged 2 functions into one by checking amount of arguments
  30.     CAS.UnbindAction = CAS.BindAction
  31.  
  32.     --This function will trigger the events that have been :Connect()'ed
  33.     local function te(self,ev,...)
  34.         local t = m[ev]
  35.         if t and t._fakeEvent then
  36.             for _,f in pairs(t.Functions) do
  37.                 f(...)
  38.             end
  39.         end
  40.     end
  41.     m.TrigEvent = te
  42.     UIS.TrigEvent = te
  43.  
  44.     Event.OnServerEvent:Connect(function(plr,io)
  45.         if plr~=rp then return end
  46.         m.Target = io.Target
  47.         m.Hit = io.Hit
  48.         if not io.isMouse then
  49.             local b = io.UserInputState == Enum.UserInputState.Begin
  50.             if io.UserInputType == Enum.UserInputType.MouseButton1 then
  51.                 return m:TrigEvent(b and "Button1Down" or "Button1Up")
  52.             end
  53.             for _,t in pairs(CAS.Actions) do
  54.                 for _,k in pairs(t.Keys) do
  55.                     if k==io.KeyCode then
  56.                         t.Function(t.Name,io.UserInputState,io)
  57.                     end
  58.                 end
  59.             end
  60.             m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  61.             UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  62.         end
  63.     end)
  64.     Event.Parent = NLS([==[
  65.     local Player = game:GetService("Players").LocalPlayer
  66.     local Event = script:WaitForChild("UserInput_Event")
  67.  
  68.     local Mouse = Player:GetMouse()
  69.     local UIS = game:GetService("UserInputService")
  70.     local input = function(io,a)
  71.         if a then return end
  72.         --Since InputObject is a client-side instance, we create and pass table instead
  73.         Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  74.     end
  75.     UIS.InputBegan:Connect(input)
  76.     UIS.InputEnded:Connect(input)
  77.  
  78.     local h,t
  79.     --Give the server mouse data 30 times every second, but only if the values changed
  80.     --If player is not moving their mouse, client won't fire events
  81.     while wait(1/30) do
  82.         if h~=Mouse.Hit or t~=Mouse.Target then
  83.             h,t=Mouse.Hit,Mouse.Target
  84.             Event:FireServer({isMouse=true,Target=t,Hit=h})
  85.         end
  86.     end]==],Player.Character)
  87.  
  88.     ----Sandboxed game object that allows the usage of client-side methods and services
  89.     --Real game object
  90.     local _rg = game
  91.  
  92.     --Metatable for fake service
  93.     local fsmt = {
  94.         __index = function(self,k)
  95.             local s = rawget(self,"_RealService")
  96.             if s then return s[k] end
  97.         end,
  98.         __newindex = function(self,k,v)
  99.             local s = rawget(self,"_RealService")
  100.             if s then s[k]=v end
  101.         end,
  102.         __call = function(self,...)
  103.             local s = rawget(self,"_RealService")
  104.             if s then return s(...) end
  105.         end
  106.     }
  107.     local function FakeService(t,RealService)
  108.         t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  109.         return setmetatable(t,fsmt)
  110.     end
  111.  
  112.     --Fake game object
  113.     local g = {
  114.         GetService = function(self,s)
  115.             return self[s]
  116.         end,
  117.         Players = FakeService({
  118.             LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  119.         },"Players"),
  120.         UserInputService = FakeService(UIS,"UserInputService"),
  121.         ContextActionService = FakeService(CAS,"ContextActionService"),
  122.     }
  123.     rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  124.     g.service = g.GetService
  125.    
  126.     g.RunService = FakeService({
  127.         RenderStepped = _rg:GetService("RunService").Heartbeat,
  128.         BindToRenderStep = function(self,name,_,fun)
  129.  
  130.         end,
  131.         UnbindFromRenderStep = function(self,name)
  132.             self._btrs[name]:Disconnect()
  133.         end,
  134.     },"RunService")
  135.  
  136.     setmetatable(g,{
  137.         __index=function(self,s)
  138.             return _rg:GetService(s) or typeof(_rg[s])=="function"
  139.             and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  140.         end,
  141.         __newindex = fsmt.__newindex,
  142.         __call = fsmt.__call
  143.     })
  144.     --Changing owner to fake player object to support owner:GetMouse()
  145.     game,owner = g,g.Players.LocalPlayer
  146. end
  147. songs = {"No Rain","484759745","Panic","277784505","Pack up the Louie","262032243","Rock it for me","157460849","Suzy","280613610","Bambous","198285559","Sofa","253333412","Ballroom Breakers","269261597","Bad boy Good man","201552585","Booty Swing","242193187","Jimmy's Gang","228239848","Catgroove","149838917","All Night","253586805"}
  148.  
  149. local asin = math.asin
  150. local atan2 = math.atan2
  151. local rad = math.rad
  152. local sin = math.sin
  153. local abs = math.abs
  154. local ceil = math.ceil
  155. local pi = math.pi
  156. deddeb=false
  157. deb=false
  158. local player = game.Players.LocalPlayer
  159. local pchar = player.Character
  160. local mouse = player:GetMouse()
  161. local torso=pchar.Torso
  162. anim=true
  163. anim2=false
  164. anglespeed = 1
  165. hum=pchar.Humanoid
  166. angle = 0
  167. equi=false
  168. showing = false
  169. tol=Instance.new("HopperBin",player.Backpack)
  170. tol.Name="GramaPlayer"
  171. Part = function(x,y,z,color,tr,cc,an,parent)
  172.     local p = Instance.new('Part',parent or Weapon)
  173.     p.formFactor = 'Custom'
  174.     p.Size = Vector3.new(x,y,z)
  175.     p.BrickColor = BrickColor.new(color)
  176.     p.CanCollide = cc
  177.     p.Transparency = tr
  178.     p.Anchored = an
  179.     p.TopSurface,p.BottomSurface = 0,0
  180.     return p
  181. end
  182. wPart = function(x,y,z,color,tr,cc,an,parent)
  183.     local wp = Instance.new('WedgePart',parent or Weapon)
  184.     wp.formFactor = 'Custom'
  185.     wp.Size = Vector3.new(x,y,z)
  186.     wp.BrickColor = BrickColor.new(color)
  187.     wp.CanCollide = cc
  188.     wp.Transparency = tr
  189.     wp.Anchored = an
  190.     wp.TopSurface,wp.BottomSurface = 0,0
  191.     return wp
  192. end
  193. Weld = function(p0,p1,x,y,z,rx,ry,rz,par)
  194.     p0.Position = p1.Position
  195.     local w = Instance.new('Motor',par or p0)
  196.     w.Part0 = p0
  197.     w.Part1 = p1
  198.     w.C1 = CFrame.new(x,y,z)*CFrame.Angles(rx,ry,rz)
  199.     return w
  200. end
  201. Mesh = function(par,num,x,y,z)
  202.     local msh = nil
  203.     if num == 1 then
  204.         msh = Instance.new("CylinderMesh",par)
  205.     elseif num == 2 then
  206.         msh = Instance.new("SpecialMesh",par)
  207.         msh.MeshType = 3
  208.     elseif num == 3 then
  209.         msh = Instance.new("BlockMesh",par)
  210.     elseif type(num) == 'string' then
  211.         msh = Instance.new("SpecialMesh",par)
  212.         msh.MeshId = num
  213.     end
  214.     msh.Scale = Vector3.new(x,y,z)
  215.     return msh
  216. end
  217.  
  218. ROW = function(x, pa, out, col, trans, s, wt, t, ang, plus)
  219.     for i = 1, 360, 360/t do wait()
  220.         local c = Instance.new("Part", pa)
  221.         c.FormFactor = 3
  222.         c.TopSurface = 0
  223.         c.BottomSurface = 0
  224.         c.Size = s
  225.         c.Anchored = true
  226.         c.CanCollide = wt
  227.         c.Transparency = trans
  228.         c.BrickColor = BrickColor.new(col)
  229.         c.CFrame = x * CFrame.Angles(0, math.rad(i + plus), 0) * CFrame.new(0, 0, out) * ang
  230.     end
  231. end
  232.  
  233. local function getAngles(cf)
  234.     local sx,sy,sz,m00,m01,m02,m10,m11,m12,m20,m21,m22 = cf:components()
  235.     return atan2(-m12,m22),asin(m02),atan2(-m01,m00)
  236. end
  237. Lerp = {
  238.     Number = function(C1,C2,inc)
  239.         return C1 + (C2 - C1) * inc
  240.     end;
  241.     CFrame = function(a,b,m)
  242.         local c,d={a:components()},{b:components()}
  243.         table.foreach(c,function(a,b)c[a]=c[a]+(d[a]-c[a])*m end)
  244.         return CFrame.new(unpack(c))
  245.     end;
  246. }
  247. local function genWeld(a,b)
  248.     local w = Instance.new("Weld",a)
  249.     w.Part0 = a
  250.     w.Part1 = b
  251.     return w
  252. end
  253. local Neck = genWeld(pchar.Torso,pchar.Head)
  254. Neck.C0 = CFrame.new(0,1,0)
  255. Neck.C1 = CFrame.new(0,-0.5,0)
  256. local LeftShoulder = genWeld(pchar.Torso,pchar['Left Arm'])
  257. LeftShoulder.C0 = CFrame.new(-1,0.5,0)
  258. LeftShoulder.C1 = CFrame.new(0.5,0.5,0)
  259. RightShoulder = genWeld(pchar.Torso,pchar['Right Arm'])
  260. RightShoulder.C0 = CFrame.new(1,0.5,0)
  261. RightShoulder.C1 = CFrame.new(-0.5,0.5,0)
  262. local LeftHip = genWeld(pchar.Torso,pchar['Left Leg'])
  263. LeftHip.C0 = CFrame.new(-1,-1,0)
  264. LeftHip.C1 = CFrame.new(-0.5,1,0)
  265. local RightHip = genWeld(pchar.Torso,pchar['Right Leg'])
  266. RightHip.C0 = CFrame.new(1,-1,0)
  267. RightHip.C1 = CFrame.new(0.5,1,0)
  268. local RootJoint = genWeld(pchar.HumanoidRootPart,pchar.Torso)
  269. RootJoint.C0 = CFrame.new(0,0,0) * CFrame.Angles(-math.pi/2,0,math.pi)
  270. RootJoint.C1 = CFrame.new(0,0,0) * CFrame.Angles(-math.pi/2,0,math.pi)
  271. local function newLerpTo(weld)
  272.         return {
  273.                 Weld = weld;
  274.                 To = weld.C0;
  275.                 Cache = weld.C0;
  276.                 Speed = 0.1;
  277.         }
  278. end
  279. mo = Instance.new("Model",pchar)
  280. mp = Part(1,1,1,'Reddish brown',1,false,false,mo)
  281. Mesh(mp,3,1.5,.75,1.5)
  282. mw = Weld(mp,torso,0,-.125,-1.5,0,0,0,mo)
  283. mp.Material='Wood'
  284. p = Part(1,1,1,'Brown',1,false,false,mo)
  285. Mesh(p,3,1.75,.1,1.75)
  286. Weld(p,mp,0,-.375,0,0,0,0,mo)
  287. p.Material='Wood'
  288. p = Part(1,1,1,'Nougat',1,false,false,mo)
  289. Mesh(p,3,1.325,.1,1.325)
  290. Weld(p,mp,0,.375,0,0,0,0,mo)
  291. p.Material='WoodPlanks'
  292. p = Part(1,1,1,'Black',1,false,false,mo)
  293. Mesh(p,1,1.325,.1,1.325)
  294. Weld(p,mp,0,.376,0,0,0,0,mo)
  295. p.Material='SmoothPlastic'
  296. disc = Part(1,1,1,'Black',1,false,false,mo)
  297. Mesh(disc,3,1.25,.1,1.25)
  298. discw=Weld(disc,mp,0,.377,0,0,0,0,mo)
  299. d=Instance.new('Decal',disc)
  300. d.Face='Top'
  301. d.Transparency=1
  302. d.Texture='http://www.roblox.com/asset/?id=24716248'
  303. sp = Part(1,1,1,'',1,false,false,mo)
  304. Mesh(sp,1,.1,.5,.1)
  305. Weld(sp,mp,-.5,.42,-.5,rad(45),0,-rad(45),mo)
  306. sp.Material='SmoothPlastic'
  307. sp2 = Part(1,1,1,'',1,false,false,mo)
  308. Mesh(sp2,1,.15,.11,.15)
  309. Weld(sp2,sp,0,.25,0,pi/2,0,rad(50),mo)
  310. sp2.Material='SmoothPlastic'
  311. p = Part(1,1,1,'',1,false,false,mo)
  312. Mesh(p,1,.05,.5,.05)
  313. Weld(p,sp2,0.2,0,0,0,0,pi/2,mo)
  314. p.Material='SmoothPlastic'
  315. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  316. Mesh(p,1,.15,.2,.15)
  317. Weld(p,mp,0,.377,0,0,0,0,mo)
  318. p = Part(1,1,1,'Black',1,false,false,mo)
  319. Mesh(p,1,.2,.1,.2)
  320. Weld(p,mp,.75,0,0,0,0,pi/2,mo)
  321. hn = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  322. Mesh(hn,1,.1,.5,.1)
  323. hnw=Weld(hn,mp,.75,0,0,0,0,-pi/2,mo)
  324. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  325. Mesh(p,1,.15,.11,.15)
  326. Weld(p,hn,0,.25,0,0,0,0,mo)
  327. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  328. Mesh(p,1,.1,.25,.1)
  329. Weld(p,hn,-0.125,.25,0,0,0,pi/2,mo)
  330. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  331. Mesh(p,1,.15,.11,.15)
  332. Weld(p,hn,-.25,.25,0,0,0,0,mo)
  333. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  334. Mesh(p,1,.1,.5,.1)
  335. Weld(p,hn,-.25,.5,0,0,0,0,mo)
  336. p = Part(1,1,1,'Brown',1,false,false,mo)
  337. Mesh(p,1,.125,.35,.125)
  338. Weld(p,hn,-.25,.5,0,0,0,0,mo)
  339. p.Material='Wood'
  340. local crank = p
  341. for i=1,90,18 do
  342.     local p=Part(1,1,1,'Dark stone grey',1,false,false,mo)
  343.     Mesh(p,1,.15,.115,.15)
  344.     local w=Weld(p,mp,0,0,0,0,0,0,p)
  345.     w.C0=CFrame.new(0.3,0,0)*CFrame.Angles(0,0,-math.rad(i))*CFrame.new(.7,-.3,0);
  346. end
  347. p = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  348. Mesh(p,1,.15,.3,.15)
  349. Weld(p,mp,-1,.5,0,0,0,0,mo)
  350. for i=1,70,18 do
  351.     local p=Part(1,1,1,'Dark stone grey',1,false,false,mo)
  352.     Mesh(p,1,.15,.115,.15)
  353.     local w=Weld(p,mp,0,0,0,0,0,0,p)
  354.     w.C0=CFrame.new(.3,0,0)*CFrame.Angles(0,0,math.rad(i))*CFrame.new(0.7,-.6,0);
  355. end
  356. strt = Part(1,1,1,'Dark stone grey',1,false,false,mo)
  357. Mesh(strt,1,.15,.3,.15)
  358. Weld(strt,mp,-.7,.925,0,0,0,-rad(65),mo)
  359.  
  360. for i=1,24 do
  361.     local p=Part(1,1,1,'Dark stone grey',1,false,false,mo)
  362.     Mesh(p,3,.5,.1,.01)
  363.     local wld=Weld(p,strt,0,0,0,0,0,0,mo)
  364.     wld.C1=CFrame.new(0,.1,0)*CFrame.Angles(pi/2,0,rad(360/24)*i)*CFrame.new(0.1,0,0)*CFrame.Angles(0,rad(70),0)
  365. end
  366. for i=1,24 do
  367.     local p=Part(1,1,1,'Dark stone grey',1,false,false,mo)
  368.     Mesh(p,3,.5,.2,.01)
  369.     local wld=Weld(p,strt,0,0,0,0,0,0,mo)
  370.     wld.C1=CFrame.new(0,.525,0)*CFrame.Angles(pi/2,0,rad(360/24)*i)*CFrame.new(0.35,0,0)*CFrame.Angles(0,rad(50),0)
  371. end
  372. p = Part(1,1,1,'Black',1,false,false,mo)
  373. Mesh(p,'http://www.roblox.com/asset/?id=3270017',.42,.42,.42)
  374. Weld(p,strt,0,.35,0,pi/2,0,0,mo)
  375. p = Part(1,1,1,'Black',1,false,false,mo)
  376. Mesh(p,'http://www.roblox.com/asset/?id=3270017',1,1,1)
  377. Weld(p,strt,0,.75,0,pi/2,0,0,mo)
  378.  
  379. s = Instance.new("Sound",sp2)
  380. s.Looped=true
  381. s.Pitch=1
  382.  
  383. local screengui = Instance.new("ScreenGui",player.PlayerGui)
  384. screengui.Name = "musicgui"
  385.  
  386. local frame = Instance.new("Frame",screengui)
  387. frame.BorderSizePixel = 0
  388. frame.Size = UDim2.new(0.15, 0, 0.35, 0)
  389. frame.ClipsDescendants = true
  390. frame.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  391. frame.Position = UDim2.new(1.1, 0, 0.35, 0)
  392. frame.BackgroundTransparency = 0.8
  393. frame.BackgroundColor3 = Color3.new(0, 0, 0)
  394.  
  395. local dt = Instance.new("Frame",frame)
  396. dt.BorderSizePixel = 0
  397. dt.Size = UDim2.new(0.02, 0, 1, 0)
  398. dt.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  399. dt.Name = "dt"
  400. dt.BackgroundTransparency = 0.8
  401. dt.BackgroundColor3 = Color3.new(1, 1, 1)
  402.  
  403. local dt_2 = Instance.new("Frame",frame)
  404. dt_2.BorderSizePixel = 0
  405. dt_2.Size = UDim2.new(0.98, 0, 0.02, 0)
  406. dt_2.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  407. dt_2.Name = "dt"
  408. dt_2.Position = UDim2.new(0.02, 0, 0.2, 0)
  409. dt_2.BackgroundTransparency = 0.8
  410. dt_2.BackgroundColor3 = Color3.new(1, 1, 1)
  411.  
  412. local name = Instance.new("TextLabel",frame)
  413. name.FontSize = Enum.FontSize.Size24
  414. name.TextStrokeTransparency = 0
  415. name.BorderSizePixel = 0
  416. name.Size = UDim2.new(1, 0, 0.2, 0)
  417. name.TextColor3 = Color3.new(1, 1, 1)
  418. name.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  419. name.Text = "Music list"
  420. name.BackgroundTransparency = 1
  421. name.Font = Enum.Font.SourceSans
  422. name.Name = "name"
  423. name.BackgroundColor3 = Color3.new(1, 1, 1)
  424.  
  425. local list = Instance.new("ScrollingFrame",frame)
  426. list.Size = UDim2.new(0.82, 0, 0.6, 0)
  427. list.BackgroundTransparency = 0.8
  428. list.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  429. list.Name = "list"
  430. list.Position = UDim2.new(0.1, 0, 0.3, 0)
  431. list.ScrollBarThickness = 8
  432. list.BackgroundColor3 = Color3.new(0, 0, 0)
  433.  
  434. local dt_3 = Instance.new("Frame",selector)
  435. dt_3.BorderSizePixel = 0
  436. dt_3.Size = UDim2.new(0.02, 0, 1, 0)
  437. dt_3.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  438. dt_3.Name = "dt"
  439. dt_3.BackgroundTransparency = 0.8
  440. dt_3.BackgroundColor3 = Color3.new(1, 1, 1)
  441.  
  442. local songinfo = Instance.new("Frame",frame)
  443. songinfo.Size = UDim2.new(0.82, 0, 0.6, 0)
  444. songinfo.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  445. songinfo.Name = "songinfo"
  446. songinfo.Position = UDim2.new(1.1, 0, 0.3, 0)
  447. songinfo.BackgroundTransparency = 0.8
  448. songinfo.BackgroundColor3 = Color3.new(0, 0, 0)
  449.  
  450. local dt = Instance.new("Frame",songinfo)
  451. dt.BorderSizePixel = 0
  452. dt.Size = UDim2.new(1, 0, 0.02, 0)
  453. dt.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  454. dt.Name = "dt"
  455. dt.Position = UDim2.new(0, 0, 0.2, 0)
  456. dt.BackgroundTransparency = 0.8
  457. dt.BackgroundColor3 = Color3.new(1, 1, 1)
  458.  
  459. local songnam = Instance.new("TextLabel",songinfo)
  460. songnam.FontSize = Enum.FontSize.Size24
  461. songnam.TextStrokeTransparency = 0
  462. songnam.TextWrapped = true
  463. songnam.BorderSizePixel = 0
  464. songnam.Size = UDim2.new(1, 0, 0.2, 0)
  465. songnam.TextColor3 = Color3.new(1, 1, 1)
  466. songnam.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  467. songnam.Text = "n/a"
  468. songnam.BackgroundTransparency = 1
  469. songnam.Font = Enum.Font.SourceSans
  470. songnam.Name = "songnam"
  471. songnam.TextScaled = true
  472. songnam.BackgroundColor3 = Color3.new(1, 1, 1)
  473.  
  474. local time = Instance.new("Frame",songinfo)
  475. time.BorderSizePixel = 0
  476. time.Size = UDim2.new(0.8, 0, 0.1, 0)
  477. time.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  478. time.Name = "time"
  479. time.Position = UDim2.new(0.1, 0, 0.4, 0)
  480. time.BackgroundTransparency = 0.7
  481. time.BackgroundColor3 = Color3.new(0, 0, 0)
  482. time.ClipsDescendants=true
  483.  
  484. local slider = Instance.new("Frame",time)
  485. slider.BorderSizePixel = 0
  486. slider.Size = UDim2.new(0.955, 0, 0.7, 0)
  487. slider.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  488. slider.Name = "slider"
  489. slider.Position = UDim2.new(0.02, 0, 0.15, 0)
  490. slider.BackgroundTransparency = 0.4
  491. slider.BackgroundColor3 = Color3.new(1, 1, 1)
  492.  
  493. local snglegth = Instance.new("TextLabel",songinfo)
  494. snglegth.FontSize = Enum.FontSize.Size14
  495. snglegth.TextStrokeTransparency = 0
  496. snglegth.Size = UDim2.new(1, 0, 0.63, 0)
  497. snglegth.TextColor3 = Color3.new(1, 1, 1)
  498. snglegth.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  499. snglegth.Text = "0/120"
  500. snglegth.BackgroundTransparency = 1
  501. snglegth.Font = Enum.Font.SourceSans
  502. snglegth.Name = "snglegth"
  503. snglegth.BackgroundColor3 = Color3.new(1, 1, 1)
  504.  
  505. local pitch = Instance.new("TextButton",songinfo)
  506. pitch.FontSize = Enum.FontSize.Size12
  507. pitch.TextStrokeTransparency = 0
  508. pitch.BackgroundTransparency = 0.8
  509. pitch.Position = UDim2.new(0.455, 0, 0.525, 0)
  510. pitch.BorderSizePixel = 0
  511. pitch.Size = UDim2.new(0.25, 0, 0.15, 0)
  512. pitch.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  513. pitch.Text = "Set Pitch"
  514. pitch.Font = Enum.Font.SourceSans
  515. pitch.Name = "pitch"
  516. pitch.TextColor3 = Color3.new(1, 1, 1)
  517. pitch.BackgroundColor3 = Color3.new(0, 0, 0)
  518.  
  519. local play = Instance.new("TextButton",songinfo)
  520. play.FontSize = Enum.FontSize.Size14
  521. play.TextStrokeTransparency = 0
  522. play.BackgroundTransparency = 0.8
  523. play.Position = UDim2.new(0.175, 0, 0.525, 0)
  524. play.BorderSizePixel = 0
  525. play.Size = UDim2.new(0.25, 0, 0.15, 0)
  526. play.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  527. play.Text = "Stop"
  528. play.Font = Enum.Font.SourceSans
  529. play.Name = "play"
  530. play.TextColor3 = Color3.new(1, 1, 1)
  531. play.BackgroundColor3 = Color3.new(0, 0, 0)
  532.  
  533. local pitchn = Instance.new("TextBox",songinfo)
  534. pitchn.FontSize = Enum.FontSize.Size14
  535. pitchn.TextStrokeTransparency = 0
  536. pitchn.BackgroundTransparency = 0.8
  537. pitchn.BorderSizePixel = 0
  538. pitchn.Size = UDim2.new(0.1, 0, 0.15, 0)
  539. pitchn.Position = UDim2.new(0.735, 0, 0.525, 0)
  540. pitchn.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  541. pitchn.Text = "1"
  542. pitchn.TextColor3 = Color3.new(1, 1, 1)
  543. pitchn.Font = Enum.Font.SourceSans
  544. pitchn.Name = "pitchn"
  545. pitchn.BackgroundColor3 = Color3.new(0, 0, 0)
  546.  
  547. local rtr = Instance.new("TextButton",songinfo)
  548. rtr.FontSize = Enum.FontSize.Size14
  549. rtr.TextStrokeTransparency = 0
  550. rtr.BackgroundTransparency = 0.8
  551. rtr.Position = UDim2.new(0.175, 0, 0.7, 0)
  552. rtr.BorderSizePixel = 0
  553. rtr.Size = UDim2.new(0.667, 0, 0.15, 0)
  554. rtr.BorderColor3 = Color3.new(0.105882, 0.164706, 0.207843)
  555. rtr.Text = "Return to list"
  556. rtr.Font = Enum.Font.SourceSans
  557. rtr.Name = "rtl"
  558. rtr.TextColor3 = Color3.new(1, 1, 1)
  559. rtr.BackgroundColor3 = Color3.new(0, 0, 0)
  560.  
  561. cpos=0
  562. numt2=1
  563. for i=1,#songs/2 do
  564.     local cnumt=numt2+1
  565.     local selector = Instance.new("TextButton",list)
  566.     selector.FontSize = Enum.FontSize.Size18
  567.     selector.TextWrapped = true
  568.     selector.TextStrokeTransparency = 0
  569.     selector.BackgroundTransparency = 0.8
  570.     selector.Position = UDim2.new(0, 3, 0, 3+cpos)
  571.     selector.BorderSizePixel = 0
  572.     selector.Size = UDim2.new(.93, 0, 0, 30)
  573.     selector.Text = songs[numt2]
  574.     selector.Font = Enum.Font.SourceSans
  575.     selector.Name = songs[numt2].."_selector"
  576.     selector.TextColor3 = Color3.new(1, 1, 1)
  577.     selector.TextScaled = true
  578.     selector.BackgroundColor3 = Color3.new(0, 0, 0)
  579.     selector.MouseButton1Click:connect(function()
  580.         songinfo:TweenPosition(UDim2.new(.1, 0, 0.3, 0), "Out", "Quad", .2)
  581.         list:TweenPosition(UDim2.new(-1, 0, 0.3, 0), "Out", "Quad", .2)
  582.         local curp=s.Pitch
  583.         s:Destroy()
  584.         s = Instance.new("Sound",sp2)
  585.         s.Looped=true
  586.         s.Pitch=1
  587.         s.Name=songs[cnumt-1]
  588.         s.SoundId = "http://roblox.com/asset/?id="..songs[cnumt]
  589.     wait(.1)
  590.         s:Play()
  591.     end)
  592.     cpos=cpos+35
  593.     numt2=numt2+2
  594. end
  595.  
  596. playa=false
  597.  
  598. play.MouseButton1Click:connect(function()
  599.     playa=not playa
  600.     if playa then
  601.         curpi=s.Pitch
  602.         play.Text="Play"
  603.         for i=1,curpi/.05 do wait() s.Pitch=s.Pitch-.05 end
  604.     else
  605.         play.Text="Stop"
  606.         for i=1,curpi/.05 do wait() s.Pitch=s.Pitch+.05 end
  607.     end
  608. end)
  609.  
  610. pitch.MouseButton1Click:connect(function()
  611.     s.Pitch=tonumber(pitchn.Text)
  612. end)
  613.  
  614. rtr.MouseButton1Click:connect(function()
  615.     songinfo:TweenPosition(UDim2.new(1.1, 0, 0.3, 0), "Out", "Quad", .2)
  616.     list:TweenPosition(UDim2.new(.1, 0, 0.3, 0), "Out", "Quad", .2)
  617. end)
  618.  
  619.  
  620. LerpTo = {
  621.         Neck = newLerpTo(Neck);
  622.         LeftArm = newLerpTo(LeftShoulder);
  623.         RightArm = newLerpTo(RightShoulder);
  624.         LeftLeg = newLerpTo(LeftHip);
  625.         RightLeg = newLerpTo(RightHip);
  626.         RootJoint = newLerpTo(RootJoint);
  627. }
  628.  
  629.  
  630. tol.Selected:connect(function(mouse)
  631.     equi=true
  632.     frame:TweenPosition(UDim2.new(.83, 0, 0.35, 0), "Out", "Quad", .5)
  633.     LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
  634.     LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(20),0,0)
  635.     LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(20),0,0)
  636.     LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * CFrame.Angles(rad(90),0,rad(10))
  637.     LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * CFrame.Angles(rad(90),0,-rad(10))
  638.     LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.new(0,0,-1.5)
  639.     pchar.Humanoid.WalkSpeed=0
  640.     for i=1,10 do wait()
  641.         for _,v in pairs(mo:GetChildren()) do
  642.             if v.ClassName=="Part" then
  643.                 v.Transparency=v.Transparency-.1
  644.                 if v==disc then v.Transparency=1 end
  645.             end
  646.         end
  647.         d.Transparency=d.Transparency-.1
  648.     end
  649. end)
  650.  
  651. tol.Deselected:connect(function(mouse)
  652.     equi=false
  653.     for i=1,10 do wait()
  654.         for _,v in pairs(mo:GetChildren()) do
  655.             if v.ClassName=="Part" then
  656.                 v.Transparency=v.Transparency+.1
  657.                 if v==disc then v.Transparency=1 end
  658.             end
  659.         end
  660.         d.Transparency=d.Transparency+.1
  661.     end
  662.     pchar.Humanoid.WalkSpeed=16
  663.     s:Stop()
  664.     wait()
  665.     frame:TweenPosition(UDim2.new(1.1, 0, 0.35, 0), "Out", "Quad", .5)
  666.     songinfo:TweenPosition(UDim2.new(1.1, 0, 0.3, 0), "Out", "Quad", .2)
  667.     list:TweenPosition(UDim2.new(.1, 0, 0.3, 0), "Out", "Quad", .2)
  668. end)
  669.  
  670. game:GetService("RunService"):BindToRenderStep("Player",Enum.RenderPriority.Character.Value,function()
  671.     songnam.Text=s.Name
  672.     snglegth.Text=s.TimePosition.."/"..s.TimeLength
  673.     slider.Size = UDim2.new(math.ceil(s.TimePosition)/s.TimeLength, -8, .7, 0)
  674.     angle = (angle % 100) + anglespeed/10
  675.     if equi==false then
  676.         if Vector3.new(torso.Velocity.x, torso.Velocity.y, torso.Velocity.z).magnitude < 2 then
  677.             anglespeed = 1/2/2
  678.             LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.new(0,0,0)
  679.             LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
  680.             LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(-math.sin(angle)*.1,0,0)
  681.             LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(math.sin(angle)*.1,0,0)
  682.             LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * CFrame.Angles(math.sin(angle)*.1,0,0)
  683.             LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * CFrame.Angles(-math.sin(angle)*.1,0,0)
  684.         end
  685.         if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude > 2 then
  686.             anglespeed = 4/2
  687.             LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
  688.             LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.new(0,0,0)
  689.             LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(-math.sin(angle)*1,0,0)
  690.             LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(math.sin(angle)*1,0,0)
  691.             LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * CFrame.Angles(math.sin(angle)*1,0,0)
  692.             LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * CFrame.Angles(-math.sin(angle)*1,0,0)
  693.         end
  694.     else
  695.         local Point = (pchar['Torso'].CFrame*LerpTo.RightArm.Cache):inverse()*CFrame.new((pchar['Torso'].CFrame*LerpTo.RightArm.Cache).p,crank.Position)
  696.         local Rel = (pchar['Torso'].CFrame*LerpTo.RightArm.Cache):inverse()*crank.Position
  697.         Rel = Rel+Vector3.new(-0.5,0.35,0.95)
  698.         local Rel2 = (pchar['Torso'].CFrame*LerpTo.RightArm.Cache):inverse()*(pchar['Right Arm'].Position)
  699.         local Vec = Vector3.new(Rel.X-Rel2.X,Rel.Y-Rel2.Y,(Rel.Z-Rel2.Z)*10)
  700.         CFr = (Point-Point.p)+Vec
  701.         LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFr * CFrame.Angles(math.rad(90),0,0)
  702.     end
  703.     for _,v in pairs(LerpTo) do
  704.         v.Weld.C0 = Lerp.CFrame(v.Weld.C0,v.To,v.Speed)
  705.     end
  706.     discw.C1=discw.C1*CFrame.Angles(0,rad(2*s.Pitch),0)
  707.     hnw.C1=hnw.C1*CFrame.Angles(0,rad(2*s.Pitch),0)
  708. end)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top