Advertisement
Unicornelias

Cape script (not by me i cant make a script)

Jul 8th, 2017
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.81 KB | None | 0 0
  1. wait(2);
  2. local ta1 = 5;
  3. function Cape(player,color)
  4. color = color or player.Torso.BrickColor;
  5. if (player:FindFirstChild("Head") == nil) then return nil; end
  6. local m = Instance.new("Model");
  7. m.Name = "Cape_Yshi";
  8. local neckpiece = Instance.new("Part",m);
  9. neckpiece.formFactor = "Plate";
  10. neckpiece.Size = Vector3.new(2,.4,1);
  11. neckpiece.Name = "NeckPiece";
  12. neckpiece.BrickColor = color;
  13. neckpiece.CanCollide = false;
  14. neckpiece.TopSurface = "Smooth";
  15. neckpiece.BottomSurface = "Smooth";
  16. local neckweld = Instance.new("Weld",neckpiece);
  17.  
  18. neckweld.Part0 = player.Head;
  19. neckweld.Part1 = neckpiece;
  20. neckweld.C0 = CFrame.new(0,-.5,0);
  21. local seg1 = neckpiece:Clone();
  22. seg1.Size = Vector3.new(3,.4,1);
  23. seg1.Parent = m;
  24. seg1.Name = "Segment_1";
  25. local seg1w = Instance.new("Weld",seg1);
  26. seg1w.Part0 = neckpiece;
  27. seg1w.Part1 = seg1;
  28. seg1w.C0 = CFrame.new(0,0,.45);
  29. seg1w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-80),0,0);
  30. local seg2 = seg1:Clone();
  31. seg2.Parent = m;
  32. seg2.Name = "Segment_2";
  33. local seg2w = Instance.new("Weld",seg2);
  34. seg2w.Part0 = seg1;
  35. seg2w.Part1 = seg2;
  36. seg2w.C0 = CFrame.new(0,0,.45);
  37. seg2w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-5),0,0);
  38. m.Parent = player;
  39. local seg3 = seg2:Clone();
  40. seg3.Parent = m;
  41. seg3.Name = "Segment_3";
  42. local seg3w = Instance.new("Weld",seg3);
  43. seg3w.Part0 = seg2;
  44. seg3w.Part1 = seg3;
  45. seg3w.C0 = CFrame.new(0,0,.45);
  46. seg3w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-2),0,0);
  47. local seg4 = seg3:Clone();
  48. seg4.Name = "Segment_4";
  49. seg4.Parent = m;
  50. local seg4w = Instance.new("Weld",seg4);
  51. seg4w.Part0 = seg3;
  52. seg4w.Part1 = seg4;
  53. seg4w.C0 = CFrame.new(0,0,.45);
  54. seg4w.C1 = CFrame.new(0,0,-.45);
  55. return m;
  56. end
  57.  
  58. function Flex(cape,vals)
  59. for i,v in pairs(vals) do
  60. if(i ~= 1) then
  61. cape:GetChildren()[i].Weld.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(vals[i-1]),0,0);
  62. end
  63. end
  64. end
  65. local char = game.Players.LocalPlayer.Character;
  66. local cape = Cape(char);
  67. local lastfrstrad = -60;
  68. for i=0, math.huge do
  69. local frstrad = -60;
  70. ta = ta1 * char.Torso.Velocity.magnitude/16 + 1 * (math.random()+.5);
  71. if(ta>10) then
  72. ta = math.random(90,100)/10;
  73. end
  74. frstrad = frstrad + (char.Torso.Velocity.magnitude) + math.sin(i)*3*ta;
  75. if(frstrad > 65) then
  76. frstrad = 65;
  77. elseif (char.Torso.Velocity.magnitude < 5) then
  78. frstrad = -80;
  79. end
  80. if(char.Humanoid:HasCustomStatus("Flying"))then
  81. frstrad = -80;
  82. ta = 15;
  83. end
  84. frstrad = (frstrad+lastfrstrad)/2;
  85. lastfrstrad = frstrad;
  86. Flex(cape,{frstrad,math.sin(i+20)*-1*ta,math.sin(i+20)*2*ta,math.sin(i+20)*ta,math.sin(i+20)*-1*ta});
  87. wait(.05);
  88. end
  89.  
  90. print 'Hello world!'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement