--MADE BY OneLegend (NOT THE SCRIPT) Thanks to TheRedAngel for letting me add. Feel free to take his model too. http://www.roblox.com/TheRedAngels-SB-Gift-NEW-SCRIPTS-item?id=88063410
--LOCAL SCRIPT: JUST RUN!
wait(2);
local ta1 = 5;
function Cape(player,color)
color = color or player.Torso.BrickColor;
if (player:FindFirstChild("Head") == nil) then return nil; end
local m = Instance.new("Model");
m.Name = "Cape_Yshi";
local neckpiece = Instance.new("Part",m);
neckpiece.formFactor = "Plate";
neckpiece.Size = Vector3.new(2,.4,1);
neckpiece.Name = "NeckPiece";
neckpiece.BrickColor = color;
neckpiece.CanCollide = false;
neckpiece.TopSurface = "Smooth";
neckpiece.BottomSurface = "Smooth";
local neckweld = Instance.new("Weld",neckpiece);
neckweld.Part0 = player.Head;
neckweld.Part1 = neckpiece;
neckweld.C0 = CFrame.new(0,-.5,0);
local seg1 = neckpiece:Clone();
seg1.Size = Vector3.new(3,.4,1);
seg1.Parent = m;
seg1.Name = "Segment_1";
local seg1w = Instance.new("Weld",seg1);
seg1w.Part0 = neckpiece;
seg1w.Part1 = seg1;
seg1w.C0 = CFrame.new(0,0,.45);
seg1w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-80),0,0);
local seg2 = seg1:Clone();
seg2.Parent = m;
seg2.Name = "Segment_2";
local seg2w = Instance.new("Weld",seg2);
seg2w.Part0 = seg1;
seg2w.Part1 = seg2;
seg2w.C0 = CFrame.new(0,0,.45);
seg2w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-5),0,0);
m.Parent = player;
local seg3 = seg2:Clone();
seg3.Parent = m;
seg3.Name = "Segment_3";
local seg3w = Instance.new("Weld",seg3);
seg3w.Part0 = seg2;
seg3w.Part1 = seg3;
seg3w.C0 = CFrame.new(0,0,.45);
seg3w.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(-2),0,0);
local seg4 = seg3:Clone();
seg4.Name = "Segment_4";
seg4.Parent = m;
local seg4w = Instance.new("Weld",seg4);
seg4w.Part0 = seg3;
seg4w.Part1 = seg4;
seg4w.C0 = CFrame.new(0,0,.45);
seg4w.C1 = CFrame.new(0,0,-.45);
return m;
end
function Flex(cape,vals)
for i,v in pairs(vals) do
if(i ~= 1) then
cape:GetChildren()[i].Weld.C1 = CFrame.new(0,0,-.45)*CFrame.Angles(math.rad(vals[i-1]),0,0);
end
end
end
local char = game.Players.LocalPlayer.Character;
local cape = Cape(char);
local lastfrstrad = -60;
for i=0, math.huge do
local frstrad = -60;
ta = ta1 * char.Torso.Velocity.magnitude/16 + 1 * (math.random()+.5);
if(ta>10) then
ta = math.random(90,100)/10;
end
frstrad = frstrad + (char.Torso.Velocity.magnitude) + math.sin(i)*3*ta;
if(frstrad > 65) then
frstrad = 65;
elseif (char.Torso.Velocity.magnitude < 5) then
frstrad = -80;
end
if(char.Humanoid:HasCustomStatus("Flying"))then
frstrad = -80;
ta = 15;
end
frstrad = (frstrad+lastfrstrad)/2;
lastfrstrad = frstrad;
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});
wait(.05);
end
print 'Hello world!'
.
No comments:
Post a Comment