SHOW:
|
|
- or go back to the newest paste.
1 | - | m = game.Players.LocalPlayer |
1 | + | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end |
2 | - | char = m.Character |
2 | + | local Player,Mouse,mouse,UserInputService,ContextActionService = owner |
3 | local RealPlayer = Player | |
4 | - | function Random(num) |
4 | + | do print("FE Compatibility code by Mokiros")local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c(),Button2Up=c(),Button2Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;if o.UserInputType==Enum.UserInputType.MouseButton2 then return f:TrigEvent(p and"Button2Down"or"Button2Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return typeof(t[q])=="function"and function(m,...)return t[q](t,...)end or t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return rawget(self,t)or r:GetService(t)end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService"),RunService=v({_btrs={},RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;v(x,game)game,owner=x,x.Players.LocalPlayer end |
5 | - | local section=num % 1 * 3; |
5 | + | |
6 | - | local secondary=0.5 * math.pi * (section % 1); |
6 | + | --[[ |
7 | - | if section < 1 then |
7 | + | |
8 | - | return 1,1 - math.cos(secondary),1 - math.sin(secondary); |
8 | + | Clockwork Arena made by zXzGamePROzXz. |
9 | - | elseif section < 2 then |
9 | + | |
10 | - | return 1 - math.sin(secondary),1,1 - math.cos(secondary); |
10 | + | ]] |
11 | - | else |
11 | + | |
12 | - | return 1 - math.cos(secondary),1 - math.sin(secondary),1; |
12 | + | it=Instance.new |
13 | - | end |
13 | + | |
14 | vt=Vector3.new | |
15 | ||
16 | - | --//Lol try to figure this one out// |
16 | + | cf=CFrame.new |
17 | - | function rainb(hue) |
17 | + | |
18 | - | local section = hue % 1 * 3 |
18 | + | euler=CFrame.fromEulerAnglesXYZ |
19 | - | local secondary = 0.5 * math.pi * (section % 1) |
19 | + | |
20 | - | if section < 1 then |
20 | + | angles=CFrame.Angles |
21 | - | return Color3.new(1, 1 - math.cos(secondary), 1 - math.sin(secondary)) |
21 | + | |
22 | - | elseif section < 2 then |
22 | + | teledebounce=false |
23 | - | return Color3.new(1 - math.sin(secondary), 1, 1 - math.cos(secondary)) |
23 | + | |
24 | - | else |
24 | + | teledebounce2=false |
25 | - | return Color3.new(1 - math.cos(secondary), 1 - math.sin(secondary), 1) |
25 | + | |
26 | - | end |
26 | + | c=game.Players:children() |
27 | ||
28 | --[[for i=1,#c do | |
29 | - | Chillmusic = Instance.new("Sound", workspace) |
29 | + | |
30 | - | Chillmusic.Parent = game.Chat |
30 | + | if c[i].className=="Player" and c[i].Character:findFirstChild("Torso")~=nil then |
31 | - | Chillmusic.Volume = 8 |
31 | + | |
32 | - | Chillmusic.SoundId = "rbxassetid://1221694420" |
32 | + | c[i].Character.Torso.CFrame=c[i].Character.Torso.CFrame*cf(0,50,0) |
33 | - | Chillmusic.Looped = true |
33 | + | |
34 | - | Chillmusic:Play() |
34 | + | |
35 | ||
36 | - | local txt = Instance.new("BillboardGui", char) |
36 | + | end]] |
37 | - | txt.Adornee = char.Head |
37 | + | |
38 | - | txt.Name = "_status" |
38 | + | |
39 | - | txt.Size = UDim2.new(2, 0, 1.2, 0) |
39 | + | |
40 | - | txt.StudsOffset = Vector3.new(-9, 8, 0) |
40 | + | if workspace:findFirstChild("Clockwork Arena",true) ~= nil then |
41 | - | local text = Instance.new("TextLabel", txt) |
41 | + | |
42 | - | text.Size = UDim2.new(10, 0, 7, 0) |
42 | + | workspace:findFirstChild("Clockwork Arena",true).Parent = nil |
43 | - | text.FontSize = "Size24" |
43 | + | |
44 | - | text.TextScaled = true |
44 | + | end |
45 | - | text.TextTransparency = 0 |
45 | + | |
46 | - | text.BackgroundTransparency = 1 |
46 | + | |
47 | - | text.TextTransparency = 0 |
47 | + | |
48 | - | text.TextStrokeTransparency = 0 |
48 | + | |
49 | - | text.Font = "Arcade" |
49 | + | |
50 | - | text.TextStrokeColor3 = Color3.new(0, 0, 0) |
50 | + | function part(formfactor,parent,reflectance,transparency,brickcolor,material,name,size,cframe) |
51 | - | v = Instance.new("Part") |
51 | + | |
52 | - | v.Name = "ColorBrick" |
52 | + | local fp = it("Part") |
53 | - | v.Parent = m.Character |
53 | + | |
54 | - | v.FormFactor = "Symmetric" |
54 | + | fp.formFactor = formfactor |
55 | - | v.Anchored = true |
55 | + | |
56 | - | v.CanCollide = false |
56 | + | fp.Parent = parent |
57 | - | v.BottomSurface = "Smooth" |
57 | + | |
58 | - | v.TopSurface = "Smooth" |
58 | + | fp.Reflectance = reflectance |
59 | - | v.Size = Vector3.new(10, 5, 3) |
59 | + | |
60 | - | v.Transparency = 1 |
60 | + | fp.Transparency = transparency |
61 | - | v.CFrame = char.Torso.CFrame |
61 | + | |
62 | - | v.BrickColor = BrickColor.new("Really black") |
62 | + | fp.CanCollide = true |
63 | - | v.Transparency = 1 |
63 | + | |
64 | - | spawn(function() |
64 | + | fp.Anchored = true |
65 | - | TweenService = game:GetService("TweenService") |
65 | + | |
66 | - | Colours = {Color3.fromRGB(0,100,200),Color3.fromRGB(4, 175, 236)} |
66 | + | fp.Locked=true |
67 | - | Int = 0 |
67 | + | |
68 | - | while wait(2) do |
68 | + | fp.BrickColor = brickcolor |
69 | - | if Int == #Colours then Int = 0 end |
69 | + | |
70 | - | Int = Int+1 |
70 | + | fp.Name = name |
71 | - | TweenService:Create(text,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play() |
71 | + | |
72 | fp.Size = size | |
73 | - | end) |
73 | + | |
74 | - | v.Shape = "Block" |
74 | + | fp.Material = material |
75 | - | text.Text = "~»Chill Af«~" |
75 | + | |
76 | - | Player = game:GetService("Players").LocalPlayer |
76 | + | fp.CFrame = cframe |
77 | - | Character = Player.Character |
77 | + | |
78 | - | PlayerGui = Player.PlayerGui |
78 | + | fp.BottomSurface="Smooth" |
79 | - | Backpack = Player.Backpack |
79 | + | |
80 | - | Torso = Character.Torso |
80 | + | fp.TopSurface="Smooth" |
81 | - | Head = Character.Head |
81 | + | |
82 | - | Humanoid = Character.Humanoid |
82 | + | fp:BreakJoints() |
83 | - | m = Instance.new("Model", Character) |
83 | + | |
84 | - | LeftArm = Character["Left Arm"] |
84 | + | return fp |
85 | - | LeftLeg = Character["Left Leg"] |
85 | + | |
86 | - | RightArm = Character["Right Arm"] |
86 | + | end |
87 | - | RightLeg = Character["Right Leg"] |
87 | + | |
88 | - | LS = Torso["Left Shoulder"] |
88 | + | |
89 | - | LH = Torso["Left Hip"] |
89 | + | |
90 | - | RS = Torso["Right Shoulder"] |
90 | + | function mesh(Mesh,part,meshtype,meshid,offset,scale) |
91 | - | RH = Torso["Right Hip"] |
91 | + | |
92 | - | Face = Head.face |
92 | + | local mesh = it(Mesh) |
93 | - | Neck = Torso.Neck |
93 | + | |
94 | - | it = Instance.new |
94 | + | mesh.Parent = part |
95 | - | attacktype = 1 |
95 | + | |
96 | - | vt = Vector3.new |
96 | + | if Mesh=="SpecialMesh" then |
97 | - | cf = CFrame.new |
97 | + | |
98 | - | bc = BrickColor.new |
98 | + | mesh.MeshType = meshtype |
99 | - | br = BrickColor.random |
99 | + | |
100 | - | it = Instance.new |
100 | + | mesh.MeshId = meshid |
101 | - | euler = CFrame.fromEulerAnglesXYZ |
101 | + | |
102 | - | angles = CFrame.Angles |
102 | + | |
103 | - | cloaked = false |
103 | + | |
104 | - | necko = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0) |
104 | + | mesh.Offset=offset |
105 | - | necko2 = cf(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0) |
105 | + | |
106 | - | LHC0 = cf(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) |
106 | + | mesh.Scale=scale |
107 | - | LHC1 = cf(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0) |
107 | + | |
108 | - | RHC0 = cf(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0) |
108 | + | return mesh |
109 | - | RHC1 = cf(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0) |
109 | + | |
110 | - | RootPart = Character.HumanoidRootPart |
110 | + | |
111 | - | RootJoint = RootPart.RootJoint |
111 | + | |
112 | - | RootCF = euler(-1.57, 0, 3.14) |
112 | + | |
113 | - | attack = false |
113 | + | |
114 | - | attackdebounce = false |
114 | + | function weld(parent,part0,part1,c0) |
115 | - | equipped = false |
115 | + | |
116 | - | trispeed = 0.2 |
116 | + | local weld = it("Weld") |
117 | - | attackmode = "none" |
117 | + | |
118 | - | local idle = 0 |
118 | + | weld.Parent = parent |
119 | - | local Anim = "Idle" |
119 | + | |
120 | - | Head.face.Texture = "rbxassetid://206844132" |
120 | + | weld.Part0 = part0 |
121 | ||
122 | - | Humanoid.Animator.Parent = nil |
122 | + | weld.Part1 = part1 |
123 | - | Character.Animate.Parent = nil |
123 | + | |
124 | - | function FindNearestTorso(Position, Distance, SinglePlayer) |
124 | + | weld.C0 = c0 |
125 | - | if SinglePlayer then |
125 | + | |
126 | - | return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude |
126 | + | return weld |
127 | - | end |
127 | + | |
128 | - | local List = {} |
128 | + | |
129 | - | for i, v in pairs(workspace:GetChildren()) do |
129 | + | |
130 | - | if v:IsA("Model") and v:findFirstChild("Torso") and v ~= Character and Distance >= (v.Torso.Position - Position).magnitude then |
130 | + | |
131 | - | table.insert(List, v) |
131 | + | |
132 | - | end |
132 | + | local modelzorz = Instance.new("Model") |
133 | - | end |
133 | + | |
134 | - | return List |
134 | + | modelzorz.Parent = workspace |
135 | ||
136 | - | function lerp(a, b, t) |
136 | + | modelzorz.Name = "Clockwork Arena" |
137 | - | return a + (b - a) * t |
137 | + | |
138 | script.Parent=modelzorz | |
139 | - | function slerp(a, b, t) |
139 | + | |
140 | - | dot = a:Dot(b) |
140 | + | CF=cf(0,0,0) |
141 | - | if dot > 0.99999 or dot < -0.99999 then |
141 | + | |
142 | - | return t <= 0.5 and a or b |
142 | + | |
143 | - | else |
143 | + | |
144 | - | r = math.acos(dot) |
144 | + | local prt1=part(3,modelzorz,0,0,BrickColor.new("Dark orange"),"Slate","Part1",vt(400,10,400),CF) |
145 | - | return (a * math.sin((1 - t) * r) + b * math.sin(t * r)) / math.sin(r) |
145 | + | |
146 | - | end |
146 | + | local prt1b=part(3,modelzorz,0,1,BrickColor.new("Dark orange"),"Slate","Part1",vt(0,0,0),CF*cf(0,20,0)) |
147 | ||
148 | - | function matrixInterpolate(a, b, t) |
148 | + | light = Instance.new("PointLight") |
149 | - | local ax, ay, az, a00, a01, a02, a10, a11, a12, a20, a21, a22 = a:components() |
149 | + | |
150 | - | local bx, by, bz, b00, b01, b02, b10, b11, b12, b20, b21, b22 = b:components() |
150 | + | light.Brightness = .8 |
151 | - | local v0 = lerp(Vector3.new(ax, ay, az), Vector3.new(bx, by, bz), t) |
151 | + | |
152 | - | local v1 = slerp(Vector3.new(a00, a01, a02), Vector3.new(b00, b01, b02), t) |
152 | + | light.Range = 150 |
153 | - | local v2 = slerp(Vector3.new(a10, a11, a12), Vector3.new(b10, b11, b12), t) |
153 | + | |
154 | - | local v3 = slerp(Vector3.new(a20, a21, a22), Vector3.new(b20, b21, b22), t) |
154 | + | light.Color = Color3.new(255,255,255) |
155 | - | local t = v1:Dot(v2) |
155 | + | |
156 | - | if not (t < 0) and t ~= 0 and not (t > 0) then |
156 | + | light.Parent=prt1b |
157 | - | return CFrame.new() |
157 | + | |
158 | - | end |
158 | + | numb=0 |
159 | - | return CFrame.new(v0.x, v0.y, v0.z, v1.x, v1.y, v1.z, v2.x, v2.y, v2.z, v3.x, v3.y, v3.z) |
159 | + | |
160 | numb2=0 | |
161 | - | function genWeld(a, b) |
161 | + | |
162 | - | local w = Instance.new("Weld", a) |
162 | + | for i=1,8 do |
163 | - | w.Part0 = a |
163 | + | |
164 | - | w.Part1 = b |
164 | + | local prt2=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part2",vt(300,15,60),CF*euler(0,numb,0)*cf(0,-numb2,0)) |
165 | - | return w |
165 | + | |
166 | numb=numb+0.3925 | |
167 | - | function weld(a, b) |
167 | + | |
168 | - | local weld = Instance.new("Weld") |
168 | + | numb2=numb2+0.01 |
169 | - | weld.Name = "W" |
169 | + | |
170 | - | weld.Part0 = a |
170 | + | |
171 | - | weld.Part1 = b |
171 | + | |
172 | - | weld.C0 = a.CFrame:inverse() * b.CFrame |
172 | + | numb=0 |
173 | - | weld.Parent = a |
173 | + | |
174 | - | return weld |
174 | + | for i=1,16 do |
175 | ||
176 | - | function Lerp(c1, c2, al) |
176 | + | local prt3=part(3,modelzorz,0,0,BrickColor.new("Tr. Red"),"Slate","Part3",vt(100,10,2),CF*euler(0,numb,0)*cf(80,3-0.01,0)) |
177 | - | local com1 = { |
177 | + | |
178 | - | c1.X, |
178 | + | numb=numb+0.3925 |
179 | - | c1.Y, |
179 | + | |
180 | - | c1.Z, |
180 | + | |
181 | - | c1:toEulerAnglesXYZ() |
181 | + | |
182 | - | } |
182 | + | numb=0 |
183 | - | local com2 = { |
183 | + | |
184 | - | c2.X, |
184 | + | for i=1,4 do |
185 | - | c2.Y, |
185 | + | |
186 | - | c2.Z, |
186 | + | local prt4=part(3,modelzorz,0,0,BrickColor.new("Tr. Red"),"Slate","Part4",vt(30,11,30),CF*euler(0,numb,0)*cf(80,2.5,0)) |
187 | - | c2:toEulerAnglesXYZ() |
187 | + | |
188 | - | } |
188 | + | local prt4b=part(3,modelzorz,0,1,BrickColor.new("Tr. Red"),"Slate","Part4",vt(0,0,0),CF*euler(0,numb,0)*cf(80,2.5+20,0)) |
189 | - | for i, v in pairs(com1) do |
189 | + | |
190 | - | com1[i] = v + (com2[i] - v) * al |
190 | + | light = Instance.new("PointLight") |
191 | - | end |
191 | + | |
192 | - | return CFrame.new(com1[1], com1[2], com1[3]) * CFrame.Angles(select(4, unpack(com1))) |
192 | + | light.Brightness = .8 |
193 | ||
194 | - | function clerp(a, b, t) |
194 | + | light.Range = 50 |
195 | - | local qa = { |
195 | + | |
196 | - | QuaternionFromCFrame(a) |
196 | + | light.Color = Color3.new(50,50,0) |
197 | - | } |
197 | + | |
198 | - | local qb = { |
198 | + | light.Parent=prt4b |
199 | - | QuaternionFromCFrame(b) |
199 | + | |
200 | - | } |
200 | + | numb2=0 |
201 | - | local ax, ay, az = a.x, a.y, a.z |
201 | + | |
202 | - | local bx, by, bz = b.x, b.y, b.z |
202 | + | for i=1,8 do |
203 | - | local _t = 1 - t |
203 | + | |
204 | - | return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t)) |
204 | + | local prt5=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part5",vt(10,5,5),prt4.CFrame*euler(0,numb2,0)*cf(8,3.5,0)) |
205 | ||
206 | - | function QuaternionFromCFrame(cf) |
206 | + | numb2=numb2+0.785 |
207 | - | local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() |
207 | + | |
208 | - | local trace = m00 + m11 + m22 |
208 | + | |
209 | - | if trace > 0 then |
209 | + | |
210 | - | local s = math.sqrt(1 + trace) |
210 | + | numb=numb+1.57 |
211 | - | local recip = 0.5 / s |
211 | + | |
212 | - | return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5 |
212 | + | |
213 | - | else |
213 | + | |
214 | - | local i = 0 |
214 | + | local prt6=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part6",vt(40,10,40),CF*cf(0,10,0)) |
215 | - | if m00 < m11 then |
215 | + | |
216 | - | i = 1 |
216 | + | numb2=0 |
217 | - | end |
217 | + | |
218 | - | if m22 > (i == 0 and m00 or m11) then |
218 | + | for i=1,4 do |
219 | - | i = 2 |
219 | + | |
220 | - | end |
220 | + | numb=0 |
221 | - | if i == 0 then |
221 | + | |
222 | - | local s = math.sqrt(m00 - m11 - m22 + 1) |
222 | + | numb3=0 |
223 | - | local recip = 0.5 / s |
223 | + | |
224 | - | return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip |
224 | + | for i=1,8 do |
225 | - | elseif i == 1 then |
225 | + | |
226 | - | local s = math.sqrt(m11 - m22 - m00 + 1) |
226 | + | local prt6=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part6",vt(5,10,20+numb3),CF*euler(0,numb2,0)*cf(-20-numb,9.9-numb,0)) |
227 | - | local recip = 0.5 / s |
227 | + | |
228 | - | return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip |
228 | + | numb=numb+1 |
229 | - | elseif i == 2 then |
229 | + | |
230 | - | local s = math.sqrt(m22 - m00 - m11 + 1) |
230 | + | numb3=numb3+0.01 |
231 | - | local recip = 0.5 / s |
231 | + | |
232 | - | return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip |
232 | + | |
233 | - | end |
233 | + | |
234 | - | end |
234 | + | numb2=numb2+1.57 |
235 | ||
236 | - | function QuaternionToCFrame(px, py, pz, x, y, z, w) |
236 | + | |
237 | - | local xs, ys, zs = x + x, y + y, z + z |
237 | + | |
238 | - | local wx, wy, wz = w * xs, w * ys, w * zs |
238 | + | numb=0 |
239 | - | local xx = x * xs |
239 | + | |
240 | - | local xy = x * ys |
240 | + | numb2=0 |
241 | - | local xz = x * zs |
241 | + | |
242 | - | local yy = y * ys |
242 | + | for i=1,8 do |
243 | - | local yz = y * zs |
243 | + | |
244 | - | local zz = z * zs |
244 | + | local prt7=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part7",vt(15,5,10),CF*euler(0,numb,0)*cf(10,13-numb2,0)) |
245 | - | return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy)) |
245 | + | |
246 | numb=numb+0.785 | |
247 | - | function QuaternionSlerp(a, b, t) |
247 | + | |
248 | - | local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4] |
248 | + | numb2=numb2+0.01 |
249 | - | local startInterp, finishInterp |
249 | + | |
250 | - | if cosTheta >= 1.0E-4 then |
250 | + | |
251 | - | if 1 - cosTheta > 1.0E-4 then |
251 | + | |
252 | - | local theta = math.acos(cosTheta) |
252 | + | numb=0 |
253 | - | local invSinTheta = 1 / math.sin(theta) |
253 | + | |
254 | - | startInterp = math.sin((1 - t) * theta) * invSinTheta |
254 | + | for i=1,16 do |
255 | - | finishInterp = math.sin(t * theta) * invSinTheta |
255 | + | |
256 | - | else |
256 | + | if i~=1 and i~=5 and i~=9 and i~=13 then |
257 | - | startInterp = 1 - t |
257 | + | |
258 | - | finishInterp = t |
258 | + | local prt8=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part8",vt(30,12,70),CF*euler(0,numb,0)*cf(-180,10,0)) |
259 | - | end |
259 | + | |
260 | - | elseif 1 + cosTheta > 1.0E-4 then |
260 | + | local prt9=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part9",vt(20,13,60),prt8.CFrame) |
261 | - | local theta = math.acos(-cosTheta) |
261 | + | |
262 | - | local invSinTheta = 1 / math.sin(theta) |
262 | + | numb2=0 |
263 | - | startInterp = math.sin((t - 1) * theta) * invSinTheta |
263 | + | |
264 | - | finishInterp = math.sin(t * theta) * invSinTheta |
264 | + | for i=1,6 do |
265 | - | else |
265 | + | |
266 | - | startInterp = t - 1 |
266 | + | local prt9b=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part9b",vt(5,31,5),prt8.CFrame*cf(0,0,30+numb2)*euler(0,0,1.57)) |
267 | - | finishInterp = t |
267 | + | |
268 | - | end |
268 | + | local prt9c=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part9c",vt(3,32,3),prt9b.CFrame) |
269 | - | return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp |
269 | + | |
270 | light = Instance.new("PointLight") | |
271 | - | function rayCast(Pos, Dir, Max, Ignore) |
271 | + | |
272 | - | return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) |
272 | + | light.Brightness = .8 |
273 | ||
274 | - | function part(formfactor, parent, reflectance, transparency, brickcolor, name, size) |
274 | + | light.Range = 30 |
275 | - | local fp = it("Part") |
275 | + | |
276 | - | fp.formFactor = formfactor |
276 | + | light.Color = Color3.new(255,255,255) |
277 | - | fp.Parent = parent |
277 | + | |
278 | - | fp.Reflectance = reflectance |
278 | + | light.Parent=prt9c |
279 | - | fp.Transparency = transparency |
279 | + | |
280 | - | fp.CanCollide = false |
280 | + | numb2=numb2-10 |
281 | - | fp.Locked = true |
281 | + | |
282 | - | fp.BrickColor = brickcolor |
282 | + | |
283 | - | fp.Name = name |
283 | + | |
284 | - | fp.Size = size |
284 | + | |
285 | - | fp.Position = Torso.Position |
285 | + | |
286 | - | fp.BottomSurface = "Smooth" |
286 | + | numb=numb+0.3925 |
287 | - | fp.TopSurface = "Smooth" |
287 | + | |
288 | - | fp:BreakJoints() |
288 | + | |
289 | - | return fp |
289 | + | |
290 | numb=1.57 | |
291 | - | function mesh(Mesh, part, meshtype, meshid, offset, scale) |
291 | + | |
292 | - | local mesh = it(Mesh) |
292 | + | for i=1,3 do |
293 | - | mesh.Parent = part |
293 | + | |
294 | - | if Mesh == "SpecialMesh" then |
294 | + | local prt10=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part10",vt(20,13,80),CF*euler(0,numb,0)*cf(-185,10,0)) |
295 | - | mesh.MeshType = meshtype |
295 | + | |
296 | - | mesh.MeshId = meshid |
296 | + | local prt11=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part10",vt(10,14,70),prt10.CFrame) |
297 | - | end |
297 | + | |
298 | - | mesh.Offset = offset |
298 | + | numb2=0 |
299 | - | mesh.Scale = scale |
299 | + | |
300 | - | return mesh |
300 | + | for i=1,6 do |
301 | ||
302 | - | function weld(parent, part0, part1, c0) |
302 | + | local prt12=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part12",vt(2,11,80),prt10.CFrame*cf(11-numb2,numb2,0)) |
303 | - | local weld = it("Weld") |
303 | + | |
304 | - | weld.Parent = parent |
304 | + | numb2=numb2-2 |
305 | - | weld.Part0 = part0 |
305 | + | |
306 | - | weld.Part1 = part1 |
306 | + | |
307 | - | weld.C0 = c0 |
307 | + | |
308 | - | return weld |
308 | + | numb=numb+1.57 |
309 | ||
310 | - | function rayCast(Pos, Dir, Max, Ignore) |
310 | + | |
311 | - | return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) |
311 | + | |
312 | numb=0 | |
313 | - | RSH, LSH = nil, nil |
313 | + | |
314 | - | RW, LW = Instance.new("Weld"), Instance.new("Weld") |
314 | + | numb2=0 |
315 | - | RW.Name = "Right Shoulder" |
315 | + | |
316 | - | LW.Name = "Left Shoulder" |
316 | + | for i=1,39 do |
317 | - | LH = Torso["Left Hip"] |
317 | + | |
318 | - | RH = Torso["Right Hip"] |
318 | + | if i>=3 then |
319 | - | TorsoColor = Torso.BrickColor |
319 | + | |
320 | - | function NoOutline(Part) |
320 | + | local prt13=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part13",vt(30,10,40),CF*euler(0,numb,0)*cf(-195,20+numb2,0)) |
321 | - | Part.TopSurface, Part.BottomSurface, Part.LeftSurface, Part.RightSurface, Part.FrontSurface, Part.BackSurface = 10, 10, 10, 10, 10, 10 |
321 | + | |
322 | local prt14=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part14",vt(20,11,30),prt13.CFrame) | |
323 | - | player = Player |
323 | + | |
324 | - | ch = Character |
324 | + | |
325 | - | RSH = ch.Torso["Right Shoulder"] |
325 | + | |
326 | - | LSH = ch.Torso["Left Shoulder"] |
326 | + | numb2=numb2+0.009 |
327 | - | RSH.Parent = nil |
327 | + | |
328 | - | LSH.Parent = nil |
328 | + | numb=numb+0.157 |
329 | - | RW.Name = "Right Shoulder" |
329 | + | |
330 | - | RW.Part0 = ch.Torso |
330 | + | |
331 | - | RW.C0 = cf(1.5, 0.5, 0) |
331 | + | |
332 | - | RW.C1 = cf(0, 0.5, 0) |
332 | + | numb=0 |
333 | - | RW.Part1 = ch["Right Arm"] |
333 | + | |
334 | - | RW.Parent = ch.Torso |
334 | + | for i=1,40 do |
335 | - | LW.Name = "Left Shoulder" |
335 | + | |
336 | - | LW.Part0 = ch.Torso |
336 | + | local prt15=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part15",vt(30,10,40),CF*euler(0,numb,0)*cf(-220,30.5+numb2,0)) |
337 | - | LW.C0 = cf(-1.5, 0.5, 0) |
337 | + | |
338 | - | LW.C1 = cf(0, 0.5, 0) |
338 | + | numb3=0 |
339 | - | LW.Part1 = ch["Left Arm"] |
339 | + | |
340 | - | LW.Parent = ch.Torso |
340 | + | local prt9b=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part9b",vt(5,35,5),prt15.CFrame*cf(0,0,0)*euler(0,0,1.57)) |
341 | - | function newWeld(wp0, wp1, wc0x, wc0y, wc0z) |
341 | + | |
342 | - | local wld = Instance.new("Weld", wp1) |
342 | + | local prt9c=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part9c",vt(3,36,3),prt9b.CFrame) |
343 | - | wld.Part0 = wp0 |
343 | + | |
344 | - | wld.Part1 = wp1 |
344 | + | light = Instance.new("PointLight") |
345 | - | wld.C0 = CFrame.new(wc0x, wc0y, wc0z) |
345 | + | |
346 | light.Brightness = .8 | |
347 | - | newWeld(RootPart, Torso, 0, -1, 0) |
347 | + | |
348 | - | Torso.Weld.C1 = CFrame.new(0, -1, 0) |
348 | + | light.Range = 30 |
349 | - | newWeld(Torso, LeftLeg, -0.5, -1, 0) |
349 | + | |
350 | - | LeftLeg.Weld.C1 = CFrame.new(0, 1, 0) |
350 | + | light.Color = Color3.new(255,255,255) |
351 | - | newWeld(Torso, RightLeg, 0.5, -1, 0) |
351 | + | |
352 | - | RightLeg.Weld.C1 = CFrame.new(0, 1, 0) |
352 | + | light.Parent=prt9c |
353 | - | Player = game:GetService("Players").LocalPlayer |
353 | + | |
354 | - | Character = Player.Character |
354 | + | local prt16=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part16",vt(29.9,11,39.9),prt15.CFrame) |
355 | - | mouse = Player:GetMouse() |
355 | + | |
356 | - | m = Instance.new("Model", Character) |
356 | + | local prt17=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part17",vt(10,3,10),prt15.CFrame*cf(0,6,0)) |
357 | - | local weldBetween = function(a, b) |
357 | + | |
358 | - | local weldd = Instance.new("ManualWeld") |
358 | + | local prt18=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part18",vt(5,5,5),prt15.CFrame) |
359 | - | weldd.Part0 = a |
359 | + | |
360 | - | weldd.Part1 = b |
360 | + | prt18.Shape="Cylinder" |
361 | - | weldd.C0 = CFrame.new() |
361 | + | |
362 | - | weldd.C1 = b.CFrame:inverse() * a.CFrame |
362 | + | prt18.CFrame=prt17.CFrame*cf(0,3,0)*euler(0,0,1.57) |
363 | - | weldd.Parent = a |
363 | + | |
364 | - | return weldd |
364 | + | local prt19=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part19",vt(10,3,10),prt18.CFrame*euler(0,0,-1.57)*cf(0,3,0)) |
365 | ||
366 | - | ArtificialHB = Instance.new("BindableEvent", script) |
366 | + | local prt20=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part20",vt(30,10,40),prt19.CFrame*cf(0,6,0)) |
367 | - | ArtificialHB.Name = "Heartbeat" |
367 | + | |
368 | - | script:WaitForChild("Heartbeat") |
368 | + | local prt21=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part21",vt(29.9,11,39.9),prt20.CFrame) |
369 | - | frame = 0.016666666666666666 |
369 | + | |
370 | - | tf = 0 |
370 | + | local prt22=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part22",vt(150,20,40),prt21.CFrame*cf(50,12,0)) |
371 | - | allowframeloss = false |
371 | + | |
372 | - | tossremainder = false |
372 | + | local prt23=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part23",vt(50,50,90),prt22.CFrame*cf(49,30,0)*euler(0,0,0.5)) |
373 | - | lastframe = tick() |
373 | + | |
374 | - | script.Heartbeat:Fire() |
374 | + | local prt24=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Slate","Part24",vt(80,20,20),prt23.CFrame*cf(40,10,0)) |
375 | - | game:GetService("RunService").Heartbeat:connect(function(s, p) |
375 | + | |
376 | - | tf = tf + s |
376 | + | local prt25=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part25",vt(5,40,20),prt24.CFrame*cf(20,0,0)) |
377 | - | if tf >= frame then |
377 | + | |
378 | - | if allowframeloss then |
378 | + | local prt26=part(3,modelzorz,0,0.8,BrickColor.new("Bright blue"),"Plastic","Part26",vt(1,80,20),prt24.CFrame*cf(60,0,0)*euler(0,0,1.07)) |
379 | - | script.Heartbeat:Fire() |
379 | + | |
380 | - | lastframe = tick() |
380 | + | numb=numb+0.157 |
381 | - | else |
381 | + | |
382 | - | for i = 1, math.floor(tf / frame) do |
382 | + | |
383 | - | script.Heartbeat:Fire() |
383 | + | |
384 | - | end |
384 | + | numb=0 |
385 | - | lastframe = tick() |
385 | + | |
386 | - | end |
386 | + | for i=1,6 do |
387 | - | if tossremainder then |
387 | + | |
388 | - | tf = 0 |
388 | + | local prt27=part(3,modelzorz,0,0,BrickColor.new("Nougat"),"Plastic","Part27",vt(13,50,13),CF*euler(0,numb,0)*cf(120,25,0)) |
389 | - | else |
389 | + | |
390 | - | tf = tf - frame * math.floor(tf / frame) |
390 | + | local msh27=mesh("CylinderMesh",prt27,"","",vt(0,0,0),vt(1,1,1)) |
391 | - | end |
391 | + | |
392 | - | end |
392 | + | local prt28=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part28",vt(15,15,15),CF*euler(0,numb,0)*cf(120,10,0)) |
393 | - | end) |
393 | + | |
394 | - | function swait(num) |
394 | + | local prt29=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part29",vt(10,16,10),prt28.CFrame*euler(1.57,0.785,0)) |
395 | - | if num == 0 or num == nil then |
395 | + | |
396 | - | ArtificialHB.Event:wait() |
396 | + | local prt30=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part30",vt(10,16,10),prt28.CFrame*euler(0.785,0,1.57)) |
397 | - | else |
397 | + | |
398 | - | for i = 0, num do |
398 | + | numb2=0 |
399 | - | ArtificialHB.Event:wait() |
399 | + | |
400 | - | end |
400 | + | for i=1,6 do |
401 | - | end |
401 | + | |
402 | local prt31=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part31",vt(15,50,1),prt27.CFrame*euler(0,numb2,0)) | |
403 | - | mouse.KeyDown:connect(function(key) |
403 | + | |
404 | - | if key == "c" then |
404 | + | numb2=numb2+0.785 |
405 | - | repeat |
405 | + | |
406 | - | swait() |
406 | + | |
407 | - | Chillmusic.Volume = Chillmusic.Volume - 0.05 |
407 | + | |
408 | - | until Chillmusic.Volume == 0 |
408 | + | local prt32=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Part32",vt(15,15,15),CF*euler(0,numb,0)*cf(120,47.5,0)) |
409 | - | Chillmusic:Stop() |
409 | + | |
410 | - | swait() |
410 | + | local prt33=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part33",vt(10,16,10),prt32.CFrame*euler(1.57,0.785,0)) |
411 | - | Chillmusic2:Play() |
411 | + | |
412 | - | Chillmusic.Volume = 1 |
412 | + | local prt34=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part34",vt(10,16,10),prt32.CFrame*euler(0.785,0,1.57)) |
413 | - | end |
413 | + | |
414 | - | end) |
414 | + | local spawn = Instance.new("SpawnLocation") |
415 | - | mouse.KeyDown:connect(function(key) |
415 | + | |
416 | - | if key == "f" then |
416 | + | light = Instance.new("PointLight") |
417 | - | text.Text = "Guys why not just chill?" |
417 | + | |
418 | - | wait(1) |
418 | + | light.Brightness = .8 |
419 | - | text.Text = "It's just the way life should be." |
419 | + | |
420 | - | wait(1) |
420 | + | light.Range = 100 |
421 | - | text.Text = "Chill is life." |
421 | + | |
422 | - | wait(1) |
422 | + | light.Parent=spawn |
423 | - | text.Text = "Chill is love." |
423 | + | |
424 | - | wait(1) |
424 | + | spawn.Parent = modelzorz |
425 | - | text.Text = "Chill is for the best." |
425 | + | |
426 | - | wait(1) |
426 | + | spawn.CanCollide = false |
427 | - | text.Text = "Maybe if you were chill you wouldn't be a skid..." |
427 | + | |
428 | - | wait(3) |
428 | + | spawn.Anchored = true |
429 | - | text.Text = "But some people cant handle the chill can they." |
429 | + | |
430 | - | wait(3) |
430 | + | spawn.Transparency = 1 |
431 | - | text.Text = "Chill Af" |
431 | + | |
432 | - | end |
432 | + | spawn.CFrame=CF*euler(0,numb,0)*cf(140,0,0) |
433 | - | end) |
433 | + | |
434 | - | mouse.KeyDown:connect(function(key) |
434 | + | numb=numb+1.04666666 |
435 | - | if key == "v" then |
435 | + | |
436 | - | repeat |
436 | + | |
437 | - | swait() |
437 | + | |
438 | - | Chillmusic2.Volume = Chillmusic2.Volume - 0.05 |
438 | + | local prt35=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part35",vt(60,30,40),CF*cf(-180,15,30)) |
439 | - | until Chillmusic2.Volume == 0 |
439 | + | |
440 | - | Chillmusic2:Stop() |
440 | + | local prt35a=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part35a",vt(10,20,5),CF*cf(-150,15,15)) |
441 | - | swait() |
441 | + | |
442 | - | Chillmusic:Play() |
442 | + | local prt36=part(3,modelzorz,0,0,BrickColor.new("Earth green"),"Slate","Part36",vt(60,30,40),CF*cf(-180,15,-30)) |
443 | - | Chillmusic2.Volume = 1 |
443 | + | |
444 | - | end |
444 | + | local prt3ba=part(3,modelzorz,0,0,BrickColor.new("Earth yellow"),"Slate","Part3ba",vt(10,20,5),CF*cf(-150,15,-15)) |
445 | - | end) |
445 | + | |
446 | - | mouse.KeyDown:connect(function(key) |
446 | + | |
447 | - | if key == "b" then |
447 | + | |
448 | - | text.Text = "Be back scrubs." |
448 | + | local Torso1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Torso",vt(2,2,1),CF*cf(-155,33,-15)*euler(0,1.57,0)) |
449 | - | wait(1) |
449 | + | |
450 | - | text.Text = "Afk nibba..." |
450 | + | local LArm1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Left Arm",vt(1,2,1),Torso1.CFrame*cf(0.8,0,0.5+0.2)*euler(-1,0,-1)) |
451 | - | end |
451 | + | |
452 | - | end) |
452 | + | local RArm1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Reft Arm",vt(1,2,1),Torso1.CFrame*cf(-0.8,0,0.5+0.2)*euler(-1,0,1)) |
453 | - | mouse.KeyDown:connect(function(key) |
453 | + | |
454 | - | if key == "n" then |
454 | + | local LLeg1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Left Leg",vt(1,2,1),Torso1.CFrame*cf(0.5,-2,0)) |
455 | - | text.Text = "K back you nubs's!" |
455 | + | |
456 | - | wait(1) |
456 | + | local RLeg1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Right Leg",vt(1,2,1),Torso1.CFrame*cf(-0.5,-2,0)) |
457 | - | text.Text = "Chill Af" |
457 | + | |
458 | - | end |
458 | + | local Head1=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Head",vt(1,1,1),Torso1.CFrame*cf(0,1.5,0)) |
459 | - | end) |
459 | + | |
460 | - | m = Instance.new("ForceField", Character) |
460 | + | |
461 | - | m.Visible = false |
461 | + | |
462 | - | Character.Humanoid.WalkSpeed = 4 |
462 | + | local Torso2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Torso",vt(2,2,1),CF*cf(-155,33,15)*euler(0,1.57,0)) |
463 | - | mouse.KeyDown:connect(function(key) |
463 | + | |
464 | - | if string.byte(key) == 48 then |
464 | + | local LArm2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Left Arm",vt(1,2,1),Torso2.CFrame*cf(0.8,0,0.5+0.2)*euler(-1,0,-1)) |
465 | - | Swing = 2 |
465 | + | |
466 | - | Character.Humanoid.WalkSpeed = 40 |
466 | + | local RArm2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Reft Arm",vt(1,2,1),Torso2.CFrame*cf(-0.8,0,0.5+0.2)*euler(-1,0,1)) |
467 | - | end |
467 | + | |
468 | - | end) |
468 | + | local LLeg2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Left Leg",vt(1,2,1),Torso2.CFrame*cf(0.5,-2,0)) |
469 | - | mouse.KeyUp:connect(function(key) |
469 | + | |
470 | - | if string.byte(key) == 48 then |
470 | + | local RLeg2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Right Leg",vt(1,2,1),Torso2.CFrame*cf(-0.5,-2,0)) |
471 | - | Swing = 1 |
471 | + | |
472 | - | Character.Humanoid.WalkSpeed = 4 |
472 | + | local Head2=part(3,modelzorz,0,0,BrickColor.new("Medium stone grey"),"Slate","Head",vt(1,1,1),Torso2.CFrame*cf(0,1.5,0)) |
473 | - | end |
473 | + | |
474 | - | end) |
474 | + | |
475 | - | local sine = 0 |
475 | + | |
476 | - | local change = 1 |
476 | + | print("truta193's Clockwork Arena loaded.") |
477 | - | local val = 0 |
477 | + | |
478 | - | spawn(function() |
478 | + | --workspace.Fenrier.Torso.CFrame=teleprt2.CFrame*cf(0,150,0) |
479 | - | while true do |
479 | + | |
480 | - | swait() |
480 | + | |
481 | - | sine = sine + change |
481 | + | --truta193 |