Advertisement
billykennard

nyan cat script

Jun 17th, 2012
797
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.35 KB | None | 0 0
  1. Rainbow = {"Bright red", "Neon orange", "Bright yellow", "Lime green", "Deep blue", "Bright violet"}
  2. me = game.Players.YOURNAMEHERE
  3. function Part(P, Anch, Coll, Tran, Ref, Col, Size, Name)
  4. local p = Instance.new("Part")
  5. p.TopSurface = 0
  6. p.BottomSurface = 0
  7. p.Transparency = Tran
  8. p.Reflectance = Ref
  9. p.CanCollide = Coll
  10. p.Anchored = Anch
  11. p.BrickColor = BrickColor.new(Col)
  12. p.formFactor = "Custom"
  13. p.Size = Size
  14. if Name then p.Name = Name end
  15. p.Parent = P
  16. p.Locked = true
  17. p:BreakJoints()
  18. return p
  19. end
  20. V3 = Vector3.new
  21. CN = CFrame.new
  22. CA = CFrame.Angles
  23. MR = math.rad
  24. MRA = math.random
  25. function Weld(P0, P1, CF1, CF2, Name)
  26. local w = Instance.new("Motor6D")
  27. w.Part0 = P0
  28. w.Part1 = P1
  29. w.C0 = CF1
  30. w.C1 = CF2
  31. if Name then w.Name = Name end
  32. w.Parent = P0
  33. return w
  34. end
  35. function MakeNyan(Player, S)
  36. local Naim = "Nyan "..Player.Name:sub(1,5)
  37. if S >= 5 then Naim = "Giant Nyan "..Player.Name:sub(1,5) end
  38. local Model = Instance.new("Model")
  39. Model.Name = Naim
  40. local Torso = Part(Model, false, false, 0, 0, "Brick yellow", V3(0.5*S, 1.5*S, 2*S), "Torso")
  41. local Head = Part(Model, false, false, 0, 0, "Dark grey", V3(0.6*S, 0.8*S, 1.2*S), "Head")
  42. Instance.new("BlockMesh",Head)
  43. local Neck = Weld(Torso, Head, CN(0, -0.35*S, -0.9*S), CN(), "Neck")
  44. local Tart = Part(Model, false, false, 0, 0, "Pink", V3(0.5*S+0.05, 1.2*S, 1.7*S), "Torso")
  45. Instance.new("BlockMesh",Tart)
  46. Weld(Torso, Tart, CN(), CN())
  47. local RFL = Part(Model, false, false, 0, 0, "Dark grey", V3(0.4*S, 0.6*S, 0.4*S), "Right Arm")
  48. Instance.new("SpecialMesh",RFL).MeshType = "Sphere"
  49. local LFL = Part(Model, false, false, 0, 0, "Dark grey", V3(0.4*S, 0.6*S, 0.4*S), "Left Arm")
  50. Instance.new("SpecialMesh",LFL).MeshType = "Sphere"
  51. local RBL = Part(Model, false, false, 0, 0, "Dark grey", V3(0.4*S, 0.6*S, 0.4*S), "Right Leg")
  52. Instance.new("SpecialMesh",RBL).MeshType = "Sphere"
  53. local LBL = Part(Model, false, false, 0, 0, "Dark grey", V3(0.4*S, 0.6*S, 0.4*S), "Left Leg")
  54. Instance.new("SpecialMesh",LBL).MeshType = "Sphere"
  55. local RSH = Weld(Torso, RFL, CN(), CN(-0.1*S, 0.8*S, 0.8*S), "Right Shoulder")
  56. local LSH = Weld(Torso, LFL, CN(), CN(0.1*S, 0.8*S, 0.6*S), "Left Shoulder")
  57. local RH = Weld(Torso, RBL, CN(), CN(-0.1*S, 0.8*S, -0.8*S), "Right Hip")
  58. local LH = Weld(Torso, LBL, CN(), CN(0.1*S, 0.8*S, -1*S), "Left Hip")
  59. local Mouth = Part(Model, false, false, 0, 0, "Really black", V3(0.6*S+0.05, 0.2*S, 0.6*S))
  60. Weld(Head, Mouth, CN(0, -0.25*S, -0.1), CN())
  61. Instance.new("BlockMesh",Mouth).Scale = V3(1, 0.6, 0.8)
  62. for i = -0.25, 0.25, 0.25 do
  63. local Mouth2 = Part(Model, false, false, 0, 0, "Really black", V3(0.6*S+0.05, 0.3*S, 0.2*S))
  64. Weld(Mouth, Mouth2, CN(0, 0.1*S, i*S), CN())
  65. Instance.new("BlockMesh",Mouth2).Scale = V3(1, 0.6, 0.6)
  66. end
  67. local Nose = Part(Model, false, false, 0, 0, "Really black", V3(0.6*S+0.05, 0.2*S, 0.2*S))
  68. Weld(Head, Nose, CN(0, 0.05*S, -0.1*S), CN())
  69. Instance.new("BlockMesh",Nose).Scale = V3(1, 0.6, 0.6)
  70. for i = -0.3, 0.31, 0.6 do
  71. local Eye = Part(Model, false, false, 0, 0, "Really black", V3(0.6*S+0.05, 0.3*S, 0.3*S))
  72. Weld(Head, Eye, CN(0, 0.15*S, (i-0.1)*S), CN())
  73. local Eye2 = Part(Model, false, false, 0, 0, "Institutional white", V3(0.6*S+0.1, 0.2*S, 0.2*S))
  74. Weld(Eye, Eye2, CN(0, 0.04*S, 0.04*S), CN())
  75. Instance.new("BlockMesh",Eye).Scale = V3(1, 0.6, 0.6)
  76. Instance.new("BlockMesh",Eye2).Scale = V3(1, 0.4, 0.4)
  77. end
  78. for i = -0.4, 0.5, 0.9 do
  79. local Cheek = Part(Model, false, false, 0, 0, "Medium red", V3(0.6*S+0.05, 0.2*S, 0.2*S))
  80. Instance.new("BlockMesh",Cheek).Scale = V3(1, 0.8, 0.8)
  81. Weld(Head, Cheek, CN(0, -0.05*S, (i-0.1)*S), CN())
  82. end
  83. for i = -80, -140, -20 do
  84. local tail = Part(Model, false, false, 0, 0, "Dark grey", V3(0.4*S, 0.25*S, 0.3*S))
  85. Weld(Torso, tail, CN(0, 0.2*S, 1.15*S) * CA(MR(i), 0, 0), CN(0, 0, 0.5*S))
  86. Instance.new("BlockMesh",tail)
  87. end
  88. for i = 0, 180, 180 do
  89. local ear = Part(Model, false, false, 0, 0, "Dark grey", V3(0.6*S, 0.4*S, 0.5*S))
  90. Instance.new("SpecialMesh",ear).MeshType = "Wedge"
  91. Weld(Head, ear, CN(0, 0.45*S, 0) * CA(0, MR(i), 0), CN(0, 0, -0.32*S) * CA(MR(15), 0, 0))
  92. end
  93. local Hum = Instance.new("Humanoid")
  94. Hum.Name = "Humanoid"
  95. Hum.MaxHealth = 100
  96. Hum.Health = 100
  97. Hum.WalkSpeed = 11+(5*S)
  98. Hum.Parent = Model
  99. Model.Parent = workspace
  100. Model:MakeJoints()
  101. Model:MoveTo(V3(0, 2*S, 0))
  102. Player.Character = Model
  103. local lastP = (Torso.CFrame * CN(0, 0, 0.9*S)).p
  104. local function runn()
  105. for i = 0.5, 1, 0.5 do
  106. RSH.C0 = CN(0, -(0.2*S)*i, 0)
  107. LSH.C0 = CN(0, -(0.2*S)*i, 0)
  108. RH.C0 = CN(0, -(0.2*S)*i, 0)
  109. LH.C0 = CN(0, -(0.2*S)*i, 0)
  110. wait()
  111. end
  112. for i = 0.5, 1, 0.5 do
  113. RSH.C0 = CN(0, -(0.2*S), (0.2*S)*i)
  114. LSH.C0 = CN(0, -(0.2*S), (0.2*S)*i)
  115. RH.C0 = CN(0, -(0.2*S), (0.2*S)*i)
  116. LH.C0 = CN(0, -(0.2*S), (0.2*S)*i)
  117. wait()
  118. end
  119. for i = 0.5, 1, 0.5 do
  120. RSH.C0 = CN(0, -(0.2*S)+(0.2*S)*i, (0.2*S))
  121. LSH.C0 = CN(0, -(0.2*S)+(0.2*S)*i, (0.2*S))
  122. RH.C0 = CN(0, -(0.2*S)+(0.2*S)*i, (0.2*S))
  123. LH.C0 = CN(0, -(0.2*S)+(0.2*S)*i, (0.2*S))
  124. wait()
  125. end
  126. for i = 0.5, 1, 0.5 do
  127. RSH.C0 = CN(0, 0, (0.2*S)-(0.2*S)*i)
  128. LSH.C0 = CN(0, 0, (0.2*S)-(0.2*S)*i)
  129. RH.C0 = CN(0, 0, (0.2*S)-(0.2*S)*i)
  130. LH.C0 = CN(0, 0, (0.2*S)-(0.2*S)*i)
  131. wait()
  132. end
  133. end
  134. local poss = "Standing"
  135. coroutine.resume(coroutine.create(function()
  136. while Player.Character == Model do
  137. wait(0.1)
  138. if poss == "Running" then
  139. runn()
  140. end
  141. end
  142. end))
  143. coroutine.resume(coroutine.create(function()
  144. while Player.Character == Model do
  145. wait(0.1)
  146. local speed = Torso.Velocity.magnitude
  147. local posnow = (Torso.CFrame * CN(0, 0, 0.9*S)).p
  148. coroutine.resume(coroutine.create(function()
  149. if speed > 2 then
  150. poss = "Running"
  151. local ps = {}
  152. for i,v in pairs(Rainbow) do
  153. local a = (#Rainbow-i)
  154. a = ((a-(a/2))/2.5)*S
  155. local pp = Part(Model, true, false, 0, 0, v, V3(0.2, 0.2, 0.2), "Rainbow")
  156. local dist = (posnow - lastP).magnitude
  157. Instance.new("BlockMesh",pp).Scale = V3(1, ((1.4*S)/#Rainbow)*5, dist*5)
  158. pp.CFrame = CN(lastP, posnow) * CN(0, a, -dist/2)
  159. table.insert(ps, pp)
  160. end
  161. coroutine.resume(coroutine.create(function()
  162. wait(10)
  163. for i = 0, 1, 0.2 do
  164. wait()
  165. for _,v in pairs(ps) do
  166. v.Transparency = i
  167. end
  168. end
  169. for _,v in pairs(ps) do
  170. v:remove()
  171. end
  172. end))
  173. else poss = "Standing" end
  174. end))
  175. lastP = posnow
  176. end
  177. end))
  178. end
  179. --for i,v in pairs(game.Players:GetPlayers()) do
  180. -- MakeNyan(v, MRA(10,120)/10)
  181. --end
  182. MakeNyan(me, 1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement