Advertisement
BlueHasMeme

Untitled

Nov 8th, 2016
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Gaster <3
  2. -- Can You Give Me Some Money For A Taxi?
  3.  
  4. --SHIROBAKO made by mugex--
  5.  
  6.  
  7.  
  8.  
  9. Player = game.Players.LocalPlayer
  10.  
  11. Char = Player.Character
  12.  
  13. Torso = Char.Torso
  14.  
  15. Head = Char.Head
  16.  
  17. Arms = {Char:FindFirstChild'Right Arm', Char:FindFirstChild'Left Arm'}
  18.  
  19. Shoulders = {Torso:FindFirstChild'Right Shoulder', Torso:FindFirstChild'Left Shoulder'}
  20.  
  21. Legs = {Char:FindFirstChild'Right Leg', Char:FindFirstChild'Left Leg'}
  22.  
  23. HumRoot = Char:FindFirstChild'HumanoidRootPart'
  24.  
  25. HumRootJ = HumRoot['RootJoint']
  26.  
  27. Humanoid = Char:FindFirstChild'Humanoid'
  28.  
  29.  
  30.  
  31.  
  32. local s = Workspace:FindFirstChild('shirobako_script: '..Player.Name,true)
  33.  
  34. if s then
  35.  
  36.         local f = s:FindFirstChild'stop'
  37.  
  38.         if f then
  39.  
  40.                 f:Invoke()
  41.  
  42.         end
  43.  
  44. end
  45.  
  46. s=nil
  47.  
  48.  
  49.  
  50.  
  51. Debris = game:service'Debris'
  52.  
  53. RS = game:service'RunService'
  54.  
  55. Chatserv = game:service'Chat'
  56.  
  57. Insertserv = game:service'InsertService'
  58.  
  59.  
  60.  
  61.  
  62. Neck = Torso:FindFirstChild'Neck'
  63.  
  64.  
  65.  
  66.  
  67. pcall(function() Char.Shirobako:Destroy() end)
  68.  
  69. Main = Instance.new("Model",Char)
  70.  
  71. Main.Name = "Shirobako"
  72.  
  73. script.Parent=Main
  74.  
  75.  
  76.  
  77.  
  78. cfn=CFrame.new
  79.  
  80. ang = function(x,y,z) return CFrame.Angles(x or 0,y or 0,z or 0)end
  81.  
  82. m={tau=math.pi*2}
  83.  
  84. v3n=Vector3.new
  85.  
  86. md,mr,PI=math.rad, math.random, math.pi
  87.  
  88. bcol=BrickColor.new
  89.  
  90.  
  91.  
  92.  
  93. function l(a1,x,y,z,rx,ry,rz)
  94.  
  95.     local cf
  96.  
  97.     if tostring(a1):find(',') == nil then
  98.  
  99.         cf=a1.CFrame
  100.  
  101.     else cf=a1 end
  102.  
  103.     return cf*CFrame.new(x or 0,y or 0,z or 0)*CFrame.Angles(
  104.  
  105.                         rx or 0,ry or 0,yz or 0)
  106.  
  107. end
  108.  
  109.  
  110.  
  111.  
  112. New = function(what)
  113.  
  114.     return function(bar)
  115.  
  116.         local obj=Instance.new(what)
  117.  
  118.         for arg,val in pairs(bar) do
  119.  
  120.             if arg == "_P" then
  121.  
  122.                 obj.Parent = val
  123.  
  124.             else
  125.  
  126.                                 if pcall(function()return obj[arg] end) then
  127.  
  128.                     obj[arg]=val
  129.  
  130.                 end
  131.  
  132.             end
  133.  
  134.         end
  135.  
  136.         return obj
  137.  
  138.     end
  139.  
  140. end
  141.  
  142.  
  143.  
  144.  
  145. Edit = function(what)
  146.  
  147.         return function(args)
  148.  
  149.                 for _,obj in next,what do
  150.  
  151.                         for arg,val in next,args do
  152.  
  153.                                 if pcall(function()return obj[arg]end) then
  154.  
  155.                                         obj[arg]=val
  156.  
  157.                                 end
  158.  
  159.                         end
  160.  
  161.                 end
  162.  
  163.         end
  164.  
  165. end
  166.  
  167.  
  168.  
  169.  
  170. _1=nil
  171.  
  172. set_material = nil
  173.  
  174. set_color = nil
  175.  
  176. set_parent = nil
  177.  
  178. Part = function(x,y,z,col,tr)
  179.  
  180.         local p = New"Part"{
  181.  
  182.                 _P=set_parent or Main;
  183.  
  184.                 BrickColor = bcol(col or set_color or "White");
  185.  
  186.                 CanCollide = false;
  187.  
  188.                 Transparency = tr or 0;
  189.  
  190.                 Size = Vector3.new(x or 0,y or 0,z or 0);
  191.  
  192.                 Material = set_material or 'SmoothPlastic';
  193.  
  194.         }
  195.  
  196.         for _,sur in next,Enum.NormalId:GetEnumItems() do
  197.  
  198.                 p[sur.Name..'Surface'] = 0
  199.  
  200.         end
  201.  
  202.         _1 = p
  203.  
  204.         return p
  205.  
  206. end
  207.  
  208. Wedge = function(x,y,z,col,tr)
  209.  
  210.         local p = New"WedgePart"{
  211.  
  212.                 _P=Main;
  213.  
  214.                 BrickColor = bcol(col or "White");
  215.  
  216.                 CanCollide = false;
  217.  
  218.                 Transparency = tr or 0;
  219.  
  220.                 Size = Vector3.new(x or 0,y or 0,z or 0);
  221.  
  222.                 Material = set_material or 'SmoothPlastic';
  223.  
  224.         }
  225.  
  226.         for _,sur in next,Enum.NormalId:GetEnumItems() do
  227.  
  228.                 p[sur.Name..'Surface'] = 0
  229.  
  230.         end
  231.  
  232.         _1 = p
  233.  
  234.         return p
  235.  
  236. end
  237.  
  238. Weld = function(part0,part1,c0,c1,...) --over-engineered welding function which accepts many things
  239.  
  240.         local ar = {...}
  241.  
  242.         local cframe0,cframe1
  243.  
  244.         local function checkf()local res=true
  245.  
  246.                 for i,v in pairs(ar)do
  247.  
  248.                         if type(v) ~= 'number' then
  249.  
  250.                                 res=false
  251.  
  252.                         end
  253.  
  254.                 end
  255.  
  256.                 return res
  257.  
  258.         end
  259.  
  260.         if type(c0) == 'table' then
  261.  
  262.                 cframe0 = CFrame.new(c0[1] or 0, c0[2] or 0, c0[3] or 0) * CFrame.Angles(
  263.  
  264.                         c0[4] or 0, c0[5] or 0, c0[6] or 0)
  265.  
  266.         elseif type(c0) == 'userdata' then
  267.  
  268.                 cframe0 = c0
  269.  
  270.         elseif type(c0) == 'number' and checkf() then
  271.  
  272.                 cframe0 = CFrame.new(c0 or 0,c1 or 0,ar[1] or 0) * CFrame.Angles(ar[2] or 0, ar[3] or 0, ar[4] or 0)
  273.  
  274.         end
  275.  
  276.         if type(c1) == 'table' then
  277.  
  278.                 cframe1 = CFrame.new(c1[1] or 0, c1[2] or 0, c1[3] or 0) * CFrame.Angles(
  279.  
  280.                         c1[4] or 0, c1[5] or 0, c1[6] or 0)
  281.  
  282.         elseif type(c1) == 'userdata' then
  283.  
  284.                 cframe1 = c1
  285.  
  286.         elseif type(c1) == 'number' and (not c0 or (c0 and type(c0) == 'table')) then
  287.  
  288.                 cframe1 = CFrame.new(c1 or 0, ar[1] or 0, ar[2] or 0) * CFrame.Angles(ar[3] or 0, ar[4] or 0, ar[5] or 0)
  289.  
  290.         end
  291.  
  292.         for i,v in pairs(ar)do
  293.  
  294.                 if type(v) == 'table' then
  295.  
  296.                         cframe1 = CFrame.new(v[1] or 0, v[2] or 0, v[3] or 0) * CFrame.new(v[4] or 0, v[5] or 0, v[6] or 0)
  297.  
  298.                 elseif type(v) == 'userdata' then
  299.  
  300.                         cframe1 = v
  301.  
  302.                 end
  303.  
  304.         end
  305.  
  306.                        
  307.  
  308.         cframe0,cframe1 = cframe1,cframe0
  309.  
  310.         part0.Position=part1.Position
  311.  
  312.         local weld = Instance.new("Motor")
  313.  
  314.         weld.Part0 = part0
  315.  
  316.         weld.Part1 = part1
  317.  
  318.         weld.C0 = cframe0 or CFrame.new()
  319.  
  320.         weld.C1 = cframe1 or CFrame.new()
  321.  
  322.         weld.MaxVelocity = .1
  323.  
  324.         weld.Parent = part0
  325.  
  326.         return weld
  327.  
  328. end
  329.  
  330.  
  331.  
  332.  
  333. mesh_ids = {spike = "rbxassetid://1033714";
  334.  
  335.         ring="rbxassetid://3270017";
  336.  
  337. }
  338.  
  339.  
  340.  
  341.  
  342. Mesh = function(parent,id,sx,sy,sz)
  343.  
  344.         local name = ( (id == 'cyl' and 'CylinderMesh') or (id == 'bl' and 'BlockMesh') or 'SpecialMesh')
  345.  
  346.         local mesh = Instance.new(name)
  347.  
  348.         if id == 's' then
  349.  
  350.                 mesh.MeshType = Enum.MeshType.Sphere
  351.  
  352.         elseif id == 'w' then
  353.  
  354.                 mesh.MeshType = Enum.MeshType.Wedge
  355.  
  356.         elseif string.find(id,"://") ~= nil then
  357.  
  358.                 mesh.MeshId = id
  359.  
  360.         end
  361.  
  362.         mesh.Scale = Vector3.new(sx or 1, sy or 1, sz or 1)
  363.  
  364.         mesh.Parent = parent
  365.  
  366.         return mesh
  367.  
  368. end
  369.  
  370.  
  371.  
  372.  
  373. hdl = Part(1.1,1.5,1.1) hdl.Material='Wood'
  374.  
  375. hw=Weld(hdl,Arms[1],0,-2,0,-PI/2)
  376.  
  377.  
  378.  
  379.  
  380. -- New'Decal'{_P=hdl;face='Front';Texture='rbxassetid://49125250'}
  381.  
  382.  
  383.  
  384.  
  385. dollar = Part(1,1,1,'Bright green')
  386.  
  387. dollar_msh=Mesh(dollar,"rbxassetid://443493147",.015,.015,.015)
  388.  
  389. Weld(dollar,hdl,0,0,-.5,0,PI)
  390.  
  391.  
  392.  
  393.  
  394. top=Part(1,.1,1,'Black')Mesh(top,'bl',.95,.1,.95)
  395.  
  396. Weld(top,hdl,0,.75)
  397.  
  398.  
  399.  
  400.  
  401. ring = Part(1,1,1)
  402.  
  403. Weld(ring,hdl,0,0,.5,0,PI/2)
  404.  
  405. Mesh(ring,mesh_ids.ring,1,1,3)
  406.  
  407.  
  408.  
  409.  
  410. Joints = {}
  411.  
  412. function addJoint(name,weld,c0,c1)
  413.  
  414.         local t= {}
  415.  
  416.         t.w=weld
  417.  
  418.         t.n_c0 = c0 or weld.C0
  419.  
  420.         t.n_c1 = c1 or weld.C1
  421.  
  422.         t._desired=weld.C0
  423.  
  424.         t.speed=.1
  425.  
  426.         t.l=0
  427.  
  428.        
  429.  
  430.         function t:get()
  431.  
  432.                 return setmetatable({},{__newindex=function(t,i,v)
  433.  
  434.                 if i=='d' and self.l == 0 then
  435.  
  436.                         self.d = v
  437.  
  438.                 elseif i == 's' then self.speed=v end end})
  439.  
  440.         end
  441.  
  442.  
  443.  
  444.  
  445.         setmetatable(t,{__newindex=function(ta,i,v)
  446.  
  447.         if i=='d' then
  448.  
  449.                 ta._desired = ta.n_c0 * v
  450.  
  451.         end end})
  452.  
  453.        
  454.  
  455.  
  456.  
  457.  
  458.         Joints[name]=t
  459.  
  460. end
  461.  
  462.  
  463.  
  464.  
  465. addJoint('rw',New"Weld"{_P = Torso;Part0=Torso;Part1=Arms[1];
  466.  
  467. C0=cfn(1,0.5,0); C1=cfn(-.5,0.5,0)})
  468.  
  469. addJoint('hw',hw)
  470.  
  471. addJoint('tw',HumRootJ)
  472.  
  473.  
  474.  
  475.  
  476. rw=Joints.rw
  477.  
  478. hw=Joints.hw
  479.  
  480. tw=Joints.tw
  481.  
  482.  
  483.  
  484.  
  485. snd=New"Sound"{_P=hdl;SoundId='rbxassetid://359628148'}
  486.  
  487.  
  488.  
  489.  
  490. rw.d=ang(PI/2)
  491.  
  492. script.Name='shirobako_script: '..Player.Name
  493.  
  494.  
  495.  
  496.  
  497. angle=0
  498.  
  499. p_tick=tick()
  500.  
  501.  
  502.  
  503.  
  504. --Clear clothing--
  505.  
  506. for i,v in pairs(Char:children())do
  507.  
  508.         if v:IsA'Hat' or v:IsA'Clothing'then
  509.  
  510.                 v:Destroy()
  511.  
  512.         end
  513.  
  514. end
  515.  
  516.  
  517.  
  518.  
  519. function addHat(id)
  520.  
  521.         return function()
  522.  
  523.                 local id=id
  524.  
  525.                 for i,v in next,Char:children()do
  526.  
  527.                         if v:IsA'Hat' then v:Destroy() end
  528.  
  529.                 end
  530.  
  531.                 local as=Insertserv:LoadAsset(id):children()[1]
  532.  
  533.                 Player:LoadCharacterAppearance(as)
  534.  
  535.         end
  536.  
  537. end
  538.  
  539.  
  540.  
  541.  
  542. MONEY = 0
  543.  
  544. DonatedPlayers = {}
  545.  
  546.  
  547.  
  548.  
  549. function GiveAll()
  550.  
  551.         local as=Insertserv:LoadAsset(162067148)
  552.  
  553.         for i,v in next,DonatedPlayers do
  554.  
  555.                 local pl=game:service'Players':FindFirstChild(v)
  556.  
  557.                 if pl then
  558.  
  559.                         local cl=as:Clone()
  560.  
  561.                         pl:LoadCharacterAppearance(cl:children()[1])
  562.  
  563.                 end
  564.  
  565.         end
  566.  
  567.  
  568.  
  569.  
  570.         acting = true
  571.  
  572.         rw.w.Part1 = nil
  573.  
  574.         tw.w.C0 = tw.n_c0
  575.  
  576.         Shoulders[1].Part0=Torso
  577.  
  578.         Shoulders[1].Part1=Arms[1]
  579.  
  580.         Shoulders[1].Parent=Torso
  581.  
  582.         Chatserv:Chat(Head,"THANK YOU EVERYONE =D")
  583.  
  584.         for i,v in pairs(Connections) do
  585.  
  586.                 v:disconnect()
  587.  
  588.         end
  589.  
  590.         Main:Destroy()
  591.  
  592. end
  593.  
  594.  
  595.  
  596.  
  597. suits = {
  598.  
  599.         beggar={'rbxassetid://54674221','rbxassetid://54676961',-1};
  600.  
  601.         poor={'rbxassetid://398635080','rbxassetid://217385535',10,addHat(68259961)};
  602.  
  603.         rich={'rbxassetid://286378066','rbxassetid://198292567',20,addHat(1563352)};
  604.  
  605.         uberrich={'rbxassetid://231706573','rbxassetid://239131699',30,addHat(138932314)};
  606.  
  607.         FINAL={'rbxassetid://231706573','rbxassetid://239131699',40,GiveAll};
  608.  
  609. }
  610.  
  611.  
  612.  
  613.  
  614. shirt = New"Shirt"{_P=Char;ShirtTemplate=suits.beggar[1]}
  615.  
  616. pants = New"Pants"{_P=Char;PantsTemplate=suits.beggar[2]}
  617.  
  618.  
  619.  
  620.  
  621. function checksuit()
  622.  
  623.         for i,v in pairs(suits)do
  624.  
  625.                 if MONEY == v[3] then
  626.  
  627.                         cur_choise = i
  628.  
  629.                         shirt.ShirtTemplate=v[1]
  630.  
  631.                         pants.PantsTemplate=v[2]
  632.  
  633.                         if v[4] then
  634.  
  635.                                 v[4]()
  636.  
  637.                         end
  638.  
  639.                 end
  640.  
  641.         end
  642.  
  643. end
  644.  
  645.  
  646.  
  647.  
  648. cur_choise = "beggar"
  649.  
  650. choises = {
  651.  
  652. beggar = {"Can you niggers give me money?";";_;";"Can ya niggers give me some money and watermelon??";"You niggers im still poor!"};
  653.  
  654. poor = {"I need money for studies.", "Can ya lend me some cash?", ";_; Anyone?"};
  655.  
  656. rich = {"Can ya give sum money for taxi?", "Please?"};
  657.  
  658. uberrich={"Wanna get dominus? Gimme money!", "This is not a scam... I swear!", "Does anyone want a dominus?"};
  659.  
  660. FINAL={"THANK YOU EVERYONE WHO DONATED =D"};
  661.  
  662. }
  663.  
  664.  
  665.  
  666.  
  667. text = "_ bucks donated"
  668.  
  669. text2 = "Thank you kind _"
  670.  
  671. surfg = New"SurfaceGui"{_P=hdl,Face='Right'}
  672.  
  673. lab=New"TextLabel"{_P=surfg;Size=UDim2.new(1,0,1,0);Text="0 bucks donated";TextScaled=true;BackgroundTransparency=1}
  674.  
  675. thanking=false
  676.  
  677.  
  678.  
  679.  
  680. anim_con = RS.Stepped:connect(function()
  681.  
  682.         for _,j in next,Joints do
  683.  
  684.                 j.w.C0 = j.w.C0:lerp(j._desired,j.speed)
  685.  
  686.         end
  687.  
  688. end)
  689.  
  690. dead_con = Humanoid.Died:connect(function()
  691.  
  692.         acting=true
  693.  
  694.         Chatserv:Chat(Head,"You fucks are cray cray..=(")
  695.  
  696. end)
  697.  
  698.  
  699.  
  700.  
  701. acting=false
  702.  
  703.  
  704.  
  705.  
  706. depmoney=function(a)
  707.  
  708.         if not thanking then
  709.  
  710.                 snd:Play()
  711.  
  712.                 thanking=true
  713.  
  714.                 Chatserv:Chat(Head,text2:gsub('_',(a and a.Name or 'human')) )
  715.  
  716.                 MONEY = MONEY+1
  717.  
  718.                 if a then
  719.  
  720.                         local name = a.Name
  721.  
  722.                         local _in=false
  723.  
  724.                         for _,v in pairs(DonatedPlayers) do
  725.  
  726.                                 if v == name then
  727.  
  728.                                         _in=true
  729.  
  730.                                 end
  731.  
  732.                         end
  733.  
  734.                         if not _in then
  735.  
  736.                                 table.insert(DonatedPlayers,name)
  737.  
  738.                         end
  739.  
  740.                 end
  741.  
  742.                 checksuit()
  743.  
  744.                 lab.Text=text:gsub('_',MONEY)
  745.  
  746.                 wait(1.25)
  747.  
  748.                 thanking=false
  749.  
  750.         end
  751.  
  752. end
  753.  
  754.  
  755.  
  756.  
  757. lab.Text=text:gsub('_',MONEY)
  758.  
  759. New"ClickDetector"{_P=dollar}.MouseClick:connect(function(a)depmoney(a)end)
  760.  
  761. cnt=0
  762.  
  763. Connections = {}
  764.  
  765. for i,v in next,getfenv(0) do
  766.  
  767.         if i:match("_con") ~= nil then
  768.  
  769.                 table.insert(Connections,v)
  770.  
  771.         end
  772.  
  773. end
  774.  
  775.  
  776.  
  777.  
  778. swoosh_snd = New"Sound"{_P=hdl;SoundId='rbxassetid://134012322'}
  779.  
  780. hit_snd = New"Sound"{_P=hdl;SoundId='rbxassetid://386946017'}
  781.  
  782.  
  783.  
  784.  
  785. function slash()
  786.  
  787.         acting=true
  788.  
  789.         rw.speed=.3
  790.  
  791.         rw.d=ang(PI/2,0,-PI/4)*ang(0,PI/2)
  792.  
  793.         swoosh_snd:Play()
  794.  
  795.         local con
  796.  
  797.         con=hdl.Touched:connect(function(hit)
  798.  
  799.                 local hum=hit.Parent:FindFirstChild'Humanoid'
  800.  
  801.                 if hum then
  802.  
  803.                         Spawn(function()hum.PlatformStand=true wait'.1'hum.PlatformStand=false end)
  804.  
  805.                         hum.Torso.Velocity=cfn(Torso.Position,hum.Torso.Position).lookVector*70+v3n(0,30,0)
  806.  
  807.                         hit_snd:Play()
  808.  
  809.                         con:disconnect()
  810.  
  811.                         Chatserv:Chat(Head,"Dont come closer!")
  812.  
  813.                 end
  814.  
  815.         end)
  816.  
  817.         wait'.15'
  818.  
  819.         rw.d=ang(PI/2,0,PI/4)*ang(0,PI/2)
  820.  
  821.         wait'.25'
  822.  
  823.         acting=false
  824.  
  825.         rw.speed=.1
  826.  
  827.         con:disconnect()
  828.  
  829. end
  830.  
  831. New"BindableFunction"{_P=script;Name='stop'}.OnInvoke=function()for i,v in pairs(Connections)do v:disconnect()end end
  832.  
  833. -- thanking=true
  834.  
  835. Spawn(function()
  836.  
  837.         while wait()do
  838.  
  839.         if not acting then
  840.  
  841.                 if (tick()-p_tick)>(2+(cnt/2*1.75)) and not thanking and cur_choise~='FINAL' then
  842.  
  843.                         local choise = choises[cur_choise]
  844.  
  845.                         cnt=cnt+1
  846.  
  847.                         cnt=(cnt>#choise and 1 or cnt)
  848.  
  849.                         Chatserv:Chat(Head, choise[cnt])
  850.  
  851.                         p_tick=tick()
  852.  
  853.                 end
  854.  
  855.                 angle=angle%100 + 1/5
  856.  
  857.                
  858.  
  859.                 if not thanking then
  860.  
  861.                         rw.d=ang(PI/2+math.sin(angle)*.15)
  862.  
  863.                         hw.d=ang(0,0,math.sin(angle)*.15)
  864.  
  865.                         tw.d=cfn()
  866.  
  867.                 else
  868.  
  869.                         rw.d=cfn(0,0,.15)*ang(PI/2,0,-PI/4)
  870.  
  871.                         hw.d=cfn(.15,0,0)*ang(0,md'-35')
  872.  
  873.                         tw.d=ang(md'15')
  874.  
  875.                 end end
  876.  
  877.         end
  878.  
  879. end)
  880.  
  881.  
  882.  
  883.  
  884. Mouse = Player:GetMouse()
  885.  
  886. Mouse.KeyDown:connect(function(key)
  887.  
  888.         if acting then return end
  889.  
  890.         if key == 'f' then
  891.  
  892.                 slash()
  893.  
  894.         end
  895.  
  896. end)
  897.  
  898. -- slash()
  899.  
  900. -- for i =1,40 do depmoney(Player)end
  901.  
  902.  
  903.  
  904.  
  905. --type: hl/https://titanpad.com/ep/pad/export/Beggar/latest?format=txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement