SHOW:
|
|
- or go back to the newest paste.
1 | --https://github.com/Mokiros/roblox-FE-compatibility | |
2 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
3 | local Player,game,owner = owner,game | |
4 | local RealPlayer = Player | |
5 | do | |
6 | print("FE Compatibility code V2 by Mokiros") | |
7 | local RealPlayer = RealPlayer | |
8 | script.Parent = RealPlayer.Character | |
9 | ||
10 | --Fake event to make stuff like Mouse.KeyDown work | |
11 | local Disconnect_Function = function(this) | |
12 | this[1].Functions[this[2]] = nil | |
13 | end | |
14 | local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}} | |
15 | local FakeEvent_Metatable = {__index={ | |
16 | Connect = function(this,f) | |
17 | local i = tostring(math.random(0,10000)) | |
18 | while this.Functions[i] do | |
19 | i = tostring(math.random(0,10000)) | |
20 | end | |
21 | this.Functions[i] = f | |
22 | return setmetatable({this,i},Disconnect_Metatable) | |
23 | end | |
24 | }} | |
25 | FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect | |
26 | local function fakeEvent() | |
27 | return setmetatable({Functions={}},FakeEvent_Metatable) | |
28 | end | |
29 | ||
30 | --Creating fake input objects with fake variables | |
31 | local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()} | |
32 | FakeMouse.keyUp = FakeMouse.KeyUp | |
33 | FakeMouse.keyDown = FakeMouse.KeyDown | |
34 | local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} | |
35 | local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) | |
36 | CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil | |
37 | end} | |
38 | --Merged 2 functions into one by checking amount of arguments | |
39 | CAS.UnbindAction = CAS.BindAction | |
40 | ||
41 | --This function will trigger the events that have been :Connect()'ed | |
42 | local function TriggerEvent(self,ev,...) | |
43 | for _,f in pairs(self[ev].Functions) do | |
44 | f(...) | |
45 | end | |
46 | end | |
47 | FakeMouse.TriggerEvent = TriggerEvent | |
48 | UIS.TriggerEvent = TriggerEvent | |
49 | ||
50 | --Client communication | |
51 | local Event = Instance.new("RemoteEvent") | |
52 | Event.Name = "UserInput_Event" | |
53 | Event.OnServerEvent:Connect(function(plr,io) | |
54 | if plr~=RealPlayer then return end | |
55 | FakeMouse.Target = io.Target | |
56 | FakeMouse.Hit = io.Hit | |
57 | if not io.isMouse then | |
58 | local b = io.UserInputState == Enum.UserInputState.Begin | |
59 | if io.UserInputType == Enum.UserInputType.MouseButton1 then | |
60 | return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up") | |
61 | end | |
62 | if io.UserInputType == Enum.UserInputType.MouseButton2 then | |
63 | return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up") | |
64 | end | |
65 | for _,t in pairs(CAS.Actions) do | |
66 | for _,k in pairs(t.Keys) do | |
67 | if k==io.KeyCode then | |
68 | t.Function(t.Name,io.UserInputState,io) | |
69 | end | |
70 | end | |
71 | end | |
72 | FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) | |
73 | UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false) | |
74 | end | |
75 | end) | |
76 | Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event") | |
77 | local Mouse = owner:GetMouse() | |
78 | local UIS = game:GetService("UserInputService") | |
79 | local input = function(io,RobloxHandled) | |
80 | if RobloxHandled then return end | |
81 | --Since InputObject is a client-side instance, we create and pass table instead | |
82 | Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) | |
83 | end | |
84 | UIS.InputBegan:Connect(input) | |
85 | UIS.InputEnded:Connect(input) | |
86 | ||
87 | local h,t | |
88 | --Give the server mouse data every second frame, but only if the values changed | |
89 | --If player is not moving their mouse, client won't fire events | |
90 | local HB = game:GetService("RunService").Heartbeat | |
91 | while true do | |
92 | if h~=Mouse.Hit or t~=Mouse.Target then | |
93 | h,t=Mouse.Hit,Mouse.Target | |
94 | Event:FireServer({isMouse=true,Target=t,Hit=h}) | |
95 | end | |
96 | --Wait 2 frames | |
97 | for i=1,2 do | |
98 | HB:Wait() | |
99 | end | |
100 | end]==],script) | |
101 | ||
102 | ----Sandboxed game object that allows the usage of client-side methods and services | |
103 | --Real game object | |
104 | local RealGame = game | |
105 | ||
106 | --Metatable for fake service | |
107 | local FakeService_Metatable = { | |
108 | __index = function(self,k) | |
109 | local s = rawget(self,"_RealService") | |
110 | if s then | |
111 | return typeof(s[k])=="function" | |
112 | and function(_,...)return s[k](s,...)end or s[k] | |
113 | end | |
114 | end, | |
115 | __newindex = function(self,k,v) | |
116 | local s = rawget(self,"_RealService") | |
117 | if s then s[k]=v end | |
118 | end | |
119 | } | |
120 | local function FakeService(t,RealService) | |
121 | t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService | |
122 | return setmetatable(t,FakeService_Metatable) | |
123 | end | |
124 | ||
125 | --Fake game object | |
126 | local FakeGame = { | |
127 | GetService = function(self,s) | |
128 | return rawget(self,s) or RealGame:GetService(s) | |
129 | end, | |
130 | Players = FakeService({ | |
131 | LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player) | |
132 | },"Players"), | |
133 | UserInputService = FakeService(UIS,"UserInputService"), | |
134 | ContextActionService = FakeService(CAS,"ContextActionService"), | |
135 | RunService = FakeService({ | |
136 | _btrs = {}, | |
137 | RenderStepped = RealGame:GetService("RunService").Heartbeat, | |
138 | BindToRenderStep = function(self,name,_,fun) | |
139 | self._btrs[name] = self.Heartbeat:Connect(fun) | |
140 | end, | |
141 | UnbindFromRenderStep = function(self,name) | |
142 | self._btrs[name]:Disconnect() | |
143 | end, | |
144 | },"RunService") | |
145 | } | |
146 | rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer) | |
147 | FakeGame.service = FakeGame.GetService | |
148 | FakeService(FakeGame,game) | |
149 | --Changing owner to fake player object to support owner:GetMouse() | |
150 | game,owner = FakeGame,FakeGame.Players.LocalPlayer | |
151 | end | |
152 | ||
153 | Player=game:GetService("Players").LocalPlayer | |
154 | Character=Player.Character | |
155 | PlayerGui=Player.PlayerGui | |
156 | Backpack=Player.Backpack | |
157 | Torso=Character.Torso | |
158 | Head=Character.Head | |
159 | Humanoid=Character.Humanoid | |
160 | m=Instance.new('Model',Character) | |
161 | LeftArm=Character["Left Arm"] | |
162 | LeftLeg=Character["Left Leg"] | |
163 | RightArm=Character["Right Arm"] | |
164 | RightLeg=Character["Right Leg"] | |
165 | LS=Torso["Left Shoulder"] | |
166 | LH=Torso["Left Hip"] | |
167 | RS=Torso["Right Shoulder"] | |
168 | RH=Torso["Right Hip"] | |
169 | Face = Head.face | |
170 | Neck=Torso.Neck | |
171 | it=Instance.new | |
172 | attacktype=1 | |
173 | vt=Vector3.new | |
174 | cf=CFrame.new | |
175 | euler=CFrame.fromEulerAnglesXYZ | |
176 | angles=CFrame.Angles | |
177 | cloaked=false | |
178 | necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
179 | necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
180 | LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0) | |
181 | LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0) | |
182 | RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0) | |
183 | RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0) | |
184 | RootPart=Character.HumanoidRootPart | |
185 | RootJoint=RootPart.RootJoint | |
186 | RootCF=euler(-1.57,0,3.14) | |
187 | attack = false | |
188 | attackdebounce = false | |
189 | deb=false | |
190 | equipped=true | |
191 | hand=false | |
192 | MMouse=nil | |
193 | combo=0 | |
194 | mana=0 | |
195 | trispeed=.2 | |
196 | attackmode='none' | |
197 | local idle=0 | |
198 | local Anim="Idle" | |
199 | local Effects={} | |
200 | local gun=false | |
201 | local shoot=false | |
202 | player=nil | |
203 | mana=0 | |
204 | ||
205 | mouse=Player:GetMouse() | |
206 | --save shoulders | |
207 | RSH, LSH=nil, nil | |
208 | --welds | |
209 | RW, LW=Instance.new("Weld"), Instance.new("Weld") | |
210 | RW.Name="Right Shoulder" LW.Name="Left Shoulder" | |
211 | LH=Torso["Left Hip"] | |
212 | RH=Torso["Right Hip"] | |
213 | TorsoColor=Torso.BrickColor | |
214 | function NoOutline(Part) | |
215 | Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10 | |
216 | end | |
217 | player=Player | |
218 | ch=Character | |
219 | RSH=ch.Torso["Right Shoulder"] | |
220 | LSH=ch.Torso["Left Shoulder"] | |
221 | -- | |
222 | RSH.Parent=nil | |
223 | LSH.Parent=nil | |
224 | -- | |
225 | RW.Name="Right Shoulder" | |
226 | RW.Part0=ch.Torso | |
227 | RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) | |
228 | RW.C1=cf(0, 0.5, 0) | |
229 | RW.Part1=ch["Right Arm"] | |
230 | RW.Parent=ch.Torso | |
231 | -- | |
232 | LW.Name="Left Shoulder" | |
233 | LW.Part0=ch.Torso | |
234 | LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8) | |
235 | LW.C1=cf(0, 0.5, 0) | |
236 | LW.Part1=ch["Left Arm"] | |
237 | LW.Parent=ch.Torso | |
238 | ||
239 | Player=game:GetService('Players').LocalPlayer | |
240 | Character=Player.Character | |
241 | Mouse=Player:GetMouse() | |
242 | m=Instance.new('Model',Character) | |
243 | ||
244 | ||
245 | local function weldBetween(a, b) | |
246 | local weldd = Instance.new("ManualWeld") | |
247 | weldd.Part0 = a | |
248 | weldd.Part1 = b | |
249 | weldd.C0 = CFrame.new() | |
250 | weldd.C1 = b.CFrame:inverse() * a.CFrame | |
251 | weldd.Parent = a | |
252 | return weldd | |
253 | end | |
254 | ||
255 | it=Instance.new | |
256 | ||
257 | function nooutline(part) | |
258 | part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10 | |
259 | end | |
260 | ||
261 | function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size) | |
262 | local fp=it("Part") | |
263 | fp.formFactor=formfactor | |
264 | fp.Parent=parent | |
265 | fp.Reflectance=reflectance | |
266 | fp.Transparency=transparency | |
267 | fp.CanCollide=false | |
268 | fp.Locked=true | |
269 | fp.BrickColor=BrickColor.new(tostring(brickcolor)) | |
270 | fp.Name=name | |
271 | fp.Size=size | |
272 | fp.Position=Character.Torso.Position | |
273 | nooutline(fp) | |
274 | fp.Material=material | |
275 | fp:BreakJoints() | |
276 | return fp | |
277 | end | |
278 | ||
279 | function mesh(Mesh,part,meshtype,meshid,offset,scale) | |
280 | local mesh=it(Mesh) | |
281 | mesh.Parent=part | |
282 | if Mesh=="SpecialMesh" then | |
283 | mesh.MeshType=meshtype | |
284 | mesh.MeshId=meshid | |
285 | end | |
286 | mesh.Offset=offset | |
287 | mesh.Scale=scale | |
288 | return mesh | |
289 | end | |
290 | ||
291 | function weld(parent,part0,part1,c0,c1) | |
292 | local weld=it("Weld") | |
293 | weld.Parent=parent | |
294 | weld.Part0=part0 | |
295 | weld.Part1=part1 | |
296 | weld.C0=c0 | |
297 | weld.C1=c1 | |
298 | return weld | |
299 | end | |
300 | ||
301 | ||
302 | Player=game:GetService('Players').LocalPlayer | |
303 | Character=Player.Character | |
304 | Mouse=Player:GetMouse() | |
305 | m=Instance.new('Model',Character) | |
306 | ||
307 | ||
308 | local function weldBetween(a, b) | |
309 | local weldd = Instance.new("ManualWeld") | |
310 | weldd.Part0 = a | |
311 | weldd.Part1 = b | |
312 | weldd.C0 = CFrame.new() | |
313 | weldd.C1 = b.CFrame:inverse() * a.CFrame | |
314 | weldd.Parent = a | |
315 | return weldd | |
316 | end | |
317 | ||
318 | it=Instance.new | |
319 | ||
320 | function nooutline(part) | |
321 | part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10 | |
322 | end | |
323 | ||
324 | function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size) | |
325 | local fp=it("Part") | |
326 | fp.formFactor=formfactor | |
327 | fp.Parent=parent | |
328 | fp.Reflectance=reflectance | |
329 | fp.Transparency=transparency | |
330 | fp.CanCollide=false | |
331 | fp.Locked=true | |
332 | fp.BrickColor=BrickColor.new(tostring(brickcolor)) | |
333 | fp.Name=name | |
334 | fp.Size=size | |
335 | fp.Position=Character.Torso.Position | |
336 | nooutline(fp) | |
337 | fp.Material=material | |
338 | fp:BreakJoints() | |
339 | return fp | |
340 | end | |
341 | ||
342 | function swait(num) | |
343 | if num==0 or num==nil then | |
344 | game:service'RunService'.Heartbeat:wait(0) | |
345 | else | |
346 | for i=0,num do | |
347 | game:service'RunService'.Heartbeat:wait(0) | |
348 | end | |
349 | end | |
350 | end | |
351 | ||
352 | function mesh(Mesh,part,meshtype,meshid,offset,scale) | |
353 | local mesh=it(Mesh) | |
354 | mesh.Parent=part | |
355 | if Mesh=="SpecialMesh" then | |
356 | mesh.MeshType=meshtype | |
357 | mesh.MeshId=meshid | |
358 | end | |
359 | mesh.Offset=offset | |
360 | mesh.Scale=scale | |
361 | return mesh | |
362 | end | |
363 | ||
364 | function weld(parent,part0,part1,c0,c1) | |
365 | local weld=it("Weld") | |
366 | weld.Parent=parent | |
367 | weld.Part0=part0 | |
368 | weld.Part1=part1 | |
369 | weld.C0=c0 | |
370 | weld.C1=c1 | |
371 | return weld | |
372 | end | |
373 | ||
374 | ||
375 | local function CFrameFromTopBack(at, top, back) | |
376 | local right = top:Cross(back) | |
377 | return CFrame.new(at.x, at.y, at.z, | |
378 | right.x, top.x, back.x, | |
379 | right.y, top.y, back.y, | |
380 | right.z, top.z, back.z) | |
381 | end | |
382 | ||
383 | function Triangle(a, b, c) | |
384 | local edg1 = (c-a):Dot((b-a).unit) | |
385 | local edg2 = (a-b):Dot((c-b).unit) | |
386 | local edg3 = (b-c):Dot((a-c).unit) | |
387 | if edg1 <= (b-a).magnitude and edg1 >= 0 then | |
388 | a, b, c = a, b, c | |
389 | elseif edg2 <= (c-b).magnitude and edg2 >= 0 then | |
390 | a, b, c = b, c, a | |
391 | elseif edg3 <= (a-c).magnitude and edg3 >= 0 then | |
392 | a, b, c = c, a, b | |
393 | else | |
394 | assert(false, "unreachable") | |
395 | end | |
396 | ||
397 | local len1 = (c-a):Dot((b-a).unit) | |
398 | local len2 = (b-a).magnitude - len1 | |
399 | local width = (a + (b-a).unit*len1 - c).magnitude | |
400 | ||
401 | local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit) | |
402 | ||
403 | local list = {} | |
404 | ||
405 | local Color = BrickColor.new("Dark grey") | |
406 | ||
407 | if len1 > 0.01 then | |
408 | local w1 = Instance.new('WedgePart', m) | |
409 | game:GetService("Debris"):AddItem(w1,5) | |
410 | w1.Material = "SmoothPlastic" | |
411 | w1.FormFactor = 'Custom' | |
412 | w1.BrickColor = BrickColor.new(Color) | |
413 | w1.Transparency = 0 | |
414 | w1.Reflectance = 0 | |
415 | w1.Material = "SmoothPlastic" | |
416 | w1.CanCollide = false | |
417 | NoOutline(w1) | |
418 | local sz = Vector3.new(0.2, width, len1) | |
419 | w1.Size = sz | |
420 | local sp = Instance.new("SpecialMesh",w1) | |
421 | sp.MeshType = "Wedge" | |
422 | sp.Scale = Vector3.new(0,1,1) * sz/w1.Size | |
423 | w1:BreakJoints() | |
424 | w1.Anchored = true | |
425 | w1.Parent = workspace | |
426 | w1.Transparency = 0.7 | |
427 | table.insert(Effects,{w1,"Disappear",.01}) | |
428 | w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2) | |
429 | table.insert(list,w1) | |
430 | end | |
431 | ||
432 | if len2 > 0.01 then | |
433 | local w2 = Instance.new('WedgePart', m) | |
434 | game:GetService("Debris"):AddItem(w2,5) | |
435 | w2.Material = "SmoothPlastic" | |
436 | w2.FormFactor = 'Custom' | |
437 | w2.BrickColor = BrickColor.new(Color) | |
438 | w2.Transparency = 0 | |
439 | w2.Reflectance = 0 | |
440 | w2.Material = "SmoothPlastic" | |
441 | w2.CanCollide = false | |
442 | NoOutline(w2) | |
443 | local sz = Vector3.new(0.2, width, len2) | |
444 | w2.Size = sz | |
445 | local sp = Instance.new("SpecialMesh",w2) | |
446 | sp.MeshType = "Wedge" | |
447 | sp.Scale = Vector3.new(0,1,1) * sz/w2.Size | |
448 | w2:BreakJoints() | |
449 | w2.Anchored = true | |
450 | w2.Parent = workspace | |
451 | w2.Transparency = 0.7 | |
452 | table.insert(Effects,{w2,"Disappear",.01}) | |
453 | w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2) | |
454 | table.insert(list,w2) | |
455 | end | |
456 | return unpack(list) | |
457 | end | |
458 | ||
459 | ||
460 | so = function(id,par,vol,pit) | |
461 | coroutine.resume(coroutine.create(function() | |
462 | local sou = Instance.new("Sound",par or workspace) | |
463 | sou.Volume=vol | |
464 | sou.Pitch=pit or 1 | |
465 | sou.SoundId=id | |
466 | swait() | |
467 | sou:play() | |
468 | game:GetService("Debris"):AddItem(sou,6) | |
469 | end)) | |
470 | end | |
471 | ||
472 | function clerp(a,b,t) | |
473 | local qa = {QuaternionFromCFrame(a)} | |
474 | local qb = {QuaternionFromCFrame(b)} | |
475 | local ax, ay, az = a.x, a.y, a.z | |
476 | local bx, by, bz = b.x, b.y, b.z | |
477 | local _t = 1-t | |
478 | return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t)) | |
479 | end | |
480 | ||
481 | function QuaternionFromCFrame(cf) | |
482 | local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() | |
483 | local trace = m00 + m11 + m22 | |
484 | if trace > 0 then | |
485 | local s = math.sqrt(1 + trace) | |
486 | local recip = 0.5/s | |
487 | return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 | |
488 | else | |
489 | local i = 0 | |
490 | if m11 > m00 then | |
491 | i = 1 | |
492 | end | |
493 | if m22 > (i == 0 and m00 or m11) then | |
494 | i = 2 | |
495 | end | |
496 | if i == 0 then | |
497 | local s = math.sqrt(m00-m11-m22+1) | |
498 | local recip = 0.5/s | |
499 | return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip | |
500 | elseif i == 1 then | |
501 | local s = math.sqrt(m11-m22-m00+1) | |
502 | local recip = 0.5/s | |
503 | return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip | |
504 | elseif i == 2 then | |
505 | local s = math.sqrt(m22-m00-m11+1) | |
506 | local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip | |
507 | end | |
508 | end | |
509 | end | |
510 | ||
511 | function QuaternionToCFrame(px, py, pz, x, y, z, w) | |
512 | local xs, ys, zs = x + x, y + y, z + z | |
513 | local wx, wy, wz = w*xs, w*ys, w*zs | |
514 | local xx = x*xs | |
515 | local xy = x*ys | |
516 | local xz = x*zs | |
517 | local yy = y*ys | |
518 | local yz = y*zs | |
519 | local zz = z*zs | |
520 | 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)) | |
521 | end | |
522 | ||
523 | function QuaternionSlerp(a, b, t) | |
524 | local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] | |
525 | local startInterp, finishInterp; | |
526 | if cosTheta >= 0.0001 then | |
527 | if (1 - cosTheta) > 0.0001 then | |
528 | local theta = math.acos(cosTheta) | |
529 | local invSinTheta = 1/math.sin(theta) | |
530 | startInterp = math.sin((1-t)*theta)*invSinTheta | |
531 | finishInterp = math.sin(t*theta)*invSinTheta | |
532 | else | |
533 | startInterp = 1-t | |
534 | finishInterp = t | |
535 | end | |
536 | else | |
537 | if (1+cosTheta) > 0.0001 then | |
538 | local theta = math.acos(-cosTheta) | |
539 | local invSinTheta = 1/math.sin(theta) | |
540 | startInterp = math.sin((t-1)*theta)*invSinTheta | |
541 | finishInterp = math.sin(t*theta)*invSinTheta | |
542 | else | |
543 | startInterp = t-1 | |
544 | finishInterp = t | |
545 | end | |
546 | end | |
547 | 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 | |
548 | end | |
549 | ||
550 | function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants | |
551 | return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) | |
552 | end | |
553 | ||
554 | Damagefunc=function(hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock) | |
555 | if hit.Parent==nil then | |
556 | return | |
557 | end | |
558 | h=hit.Parent:FindFirstChild("Humanoid") | |
559 | for _,v in pairs(hit.Parent:children()) do | |
560 | if v:IsA("Humanoid") then | |
561 | h=v | |
562 | end | |
563 | end | |
564 | if hit.Parent.Parent:FindFirstChild("Torso")~=nil then | |
565 | h=hit.Parent.Parent:FindFirstChild("Humanoid") | |
566 | end | |
567 | if hit.Parent.className=="Hat" then | |
568 | hit=hit.Parent.Parent:findFirstChild("Head") | |
569 | end | |
570 | if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Torso")~=nil then | |
571 | if hit.Parent:findFirstChild("DebounceHit")~=nil then if hit.Parent.DebounceHit.Value==true then return end end | |
572 | --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then | |
573 | return | |
574 | end]] | |
575 | -- hs(hit,1.2) | |
576 | c=Instance.new("ObjectValue") | |
577 | c.Name="creator" | |
578 | c.Value=game:service("Players").LocalPlayer | |
579 | c.Parent=h | |
580 | game:GetService("Debris"):AddItem(c,.5) | |
581 | Damage=math.random(minim,maxim) | |
582 | -- h:TakeDamage(Damage) | |
583 | blocked=false | |
584 | block=hit.Parent:findFirstChild("Block") | |
585 | if block~=nil then | |
586 | print(block.className) | |
587 | if block.className=="NumberValue" then | |
588 | if block.Value>0 then | |
589 | blocked=true | |
590 | if decreaseblock==nil then | |
591 | block.Value=block.Value-1 | |
592 | end | |
593 | end | |
594 | end | |
595 | if block.className=="IntValue" then | |
596 | if block.Value>0 then | |
597 | blocked=true | |
598 | if decreaseblock~=nil then | |
599 | block.Value=block.Value-1 | |
600 | end | |
601 | end | |
602 | end | |
603 | end | |
604 | if blocked==false then | |
605 | -- h:TakeDamage(Damage) | |
606 | h.Health=h.Health-Damage | |
607 | showDamage(hit.Parent,Damage,.5,BrickColor.new("Dark stone grey")) | |
608 | else | |
609 | h.Health=h.Health-(Damage/2) | |
610 | showDamage(hit.Parent,Damage/2,.5,BrickColor.new("Bright blue")) | |
611 | end | |
612 | if Type=="Knockdown" then | |
613 | hum=hit.Parent.Humanoid | |
614 | hum.PlatformStand=true | |
615 | coroutine.resume(coroutine.create(function(HHumanoid) | |
616 | swait(1) | |
617 | HHumanoid.PlatformStand=false | |
618 | end),hum) | |
619 | local angle=(hit.Position-(Property.Position+Vector3.new(0,0,0))).unit | |
620 | --hit.CFrame=CFrame.new(hit.Position,Vector3.new(angle.x,hit.Position.y,angle.z))*CFrame.fromEulerAnglesXYZ(math.pi/4,0,0) | |
621 | local bodvol=Instance.new("BodyVelocity") | |
622 | bodvol.velocity=angle*knockback | |
623 | bodvol.P=5000 | |
624 | bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003) | |
625 | bodvol.Parent=hit | |
626 | rl=Instance.new("BodyAngularVelocity") | |
627 | rl.P=3000 | |
628 | rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000 | |
629 | rl.angularvelocity=Vector3.new(math.random(-10,10),math.random(-10,10),math.random(-10,10)) | |
630 | rl.Parent=hit | |
631 | game:GetService("Debris"):AddItem(bodvol,.5) | |
632 | game:GetService("Debris"):AddItem(rl,.5) | |
633 | elseif Type=="Normal" then | |
634 | vp=Instance.new("BodyVelocity") | |
635 | vp.P=500 | |
636 | vp.maxForce=Vector3.new(math.huge,0,math.huge) | |
637 | -- vp.velocity=Character.Torso.CFrame.lookVector*Knockback | |
638 | if KnockbackType==1 then | |
639 | vp.velocity=Property.CFrame.lookVector*knockback+Property.Velocity/1.05 | |
640 | elseif KnockbackType==2 then | |
641 | vp.velocity=Property.CFrame.lookVector*knockback | |
642 | end | |
643 | if knockback>0 then | |
644 | vp.Parent=hit.Parent.Torso | |
645 | end | |
646 | game:GetService("Debris"):AddItem(vp,.5) | |
647 | elseif Type=="Up" then | |
648 | local bodyVelocity=Instance.new("BodyVelocity") | |
649 | bodyVelocity.velocity=vt(0,60,0) | |
650 | bodyVelocity.P=5000 | |
651 | bodyVelocity.maxForce=Vector3.new(8e+003, 8e+003, 8e+003) | |
652 | bodyVelocity.Parent=hit | |
653 | game:GetService("Debris"):AddItem(bodyVelocity,1) | |
654 | rl=Instance.new("BodyAngularVelocity") | |
655 | rl.P=3000 | |
656 | rl.maxTorque=Vector3.new(500000,500000,500000)*50000000000000 | |
657 | rl.angularvelocity=Vector3.new(math.random(-30,30),math.random(-30,30),math.random(-30,30)) | |
658 | rl.Parent=hit | |
659 | game:GetService("Debris"):AddItem(rl,.5) | |
660 | elseif Type=="Snare" then | |
661 | bp=Instance.new("BodyPosition") | |
662 | bp.P=2000 | |
663 | bp.D=100 | |
664 | bp.maxForce=Vector3.new(math.huge,math.huge,math.huge) | |
665 | bp.position=hit.Parent.Torso.Position | |
666 | bp.Parent=hit.Parent.Torso | |
667 | game:GetService("Debris"):AddItem(bp,1) | |
668 | elseif Type=="Target" then | |
669 | if Targetting==false then | |
670 | ZTarget=hit.Parent.Torso | |
671 | coroutine.resume(coroutine.create(function(Part) | |
672 | so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5) | |
673 | swait(5) | |
674 | so("http://www.roblox.com/asset/?id=15666462",Part,1,1.5) | |
675 | end),ZTarget) | |
676 | TargHum=ZTarget.Parent:findFirstChild("Humanoid") | |
677 | targetgui=Instance.new("BillboardGui") | |
678 | targetgui.Parent=ZTarget | |
679 | targetgui.Size=UDim2.new(10,100,10,100) | |
680 | targ=Instance.new("ImageLabel") | |
681 | targ.Parent=targetgui | |
682 | targ.BackgroundTransparency=1 | |
683 | targ.Image="rbxassetid://4834067" | |
684 | targ.Size=UDim2.new(1,0,1,0) | |
685 | cam.CameraType="Scriptable" | |
686 | cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) | |
687 | dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z) | |
688 | workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) | |
689 | Targetting=true | |
690 | RocketTarget=ZTarget | |
691 | for i=1,Property do | |
692 | --while Targetting==true and Humanoid.Health>0 and Character.Parent~=nil do | |
693 | if Humanoid.Health>0 and Character.Parent~=nil and TargHum.Health>0 and TargHum.Parent~=nil and Targetting==true then | |
694 | swait() | |
695 | end | |
696 | --workspace.CurrentCamera.CoordinateFrame=CFrame.new(Head.CFrame.p,Head.CFrame.p+rmdir*100) | |
697 | cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position) | |
698 | dir=Vector3.new(cam.CoordinateFrame.lookVector.x,0,cam.CoordinateFrame.lookVector.z) | |
699 | cam.CoordinateFrame=CFrame.new(Head.CFrame.p,ZTarget.Position)*cf(0,5,10)*euler(-0.3,0,0) | |
700 | end | |
701 | Targetting=false | |
702 | RocketTarget=nil | |
703 | targetgui.Parent=nil | |
704 | cam.CameraType="Custom" | |
705 | end | |
706 | end | |
707 | debounce=Instance.new("BoolValue") | |
708 | debounce.Name="DebounceHit" | |
709 | debounce.Parent=hit.Parent | |
710 | debounce.Value=true | |
711 | game:GetService("Debris"):AddItem(debounce,Delay) | |
712 | c=Instance.new("ObjectValue") | |
713 | c.Name="creator" | |
714 | c.Value=Player | |
715 | c.Parent=h | |
716 | game:GetService("Debris"):AddItem(c,.5) | |
717 | CRIT=false | |
718 | hitDeb=true | |
719 | AttackPos=6 | |
720 | end | |
721 | end | |
722 | ||
723 | showDamage=function(Char,Dealt,du,Color) | |
724 | m=Instance.new("Model") | |
725 | m.Name=tostring(Dealt) | |
726 | h=Instance.new("Humanoid") | |
727 | h.Health=0 | |
728 | h.MaxHealth=0 | |
729 | h.Parent=m | |
730 | c=Instance.new("Part") | |
731 | c.Transparency=0 | |
732 | c.BrickColor=Color | |
733 | c.Name="Head" | |
734 | c.TopSurface=0 | |
735 | c.BottomSurface=0 | |
736 | c.formFactor="Plate" | |
737 | c.Size=Vector3.new(1,.4,1) | |
738 | ms=Instance.new("CylinderMesh") | |
739 | ms.Scale=Vector3.new(.8,.8,.8) | |
740 | if CRIT==true then | |
741 | ms.Scale=Vector3.new(1,1.25,1) | |
742 | end | |
743 | ms.Parent=c | |
744 | c.Reflectance=0 | |
745 | Instance.new("BodyGyro").Parent=c | |
746 | c.Parent=m | |
747 | if Char:findFirstChild("Head")~=nil then | |
748 | c.CFrame=CFrame.new(Char["Head"].CFrame.p+Vector3.new(0,1.5,0)) | |
749 | elseif Char.Parent:findFirstChild("Head")~=nil then | |
750 | c.CFrame=CFrame.new(Char.Parent["Head"].CFrame.p+Vector3.new(0,1.5,0)) | |
751 | end | |
752 | f=Instance.new("BodyPosition") | |
753 | f.P=2000 | |
754 | f.D=100 | |
755 | f.maxForce=Vector3.new(math.huge,math.huge,math.huge) | |
756 | f.position=c.Position+Vector3.new(0,3,0) | |
757 | f.Parent=c | |
758 | game:GetService("Debris"):AddItem(m,.5+du) | |
759 | c.CanCollide=false | |
760 | m.Parent=workspace | |
761 | c.CanCollide=false | |
762 | end | |
763 | ||
764 | handle=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,1,"Dark stone grey","Handle",Vector3.new(0.232000008, 0.812000036, 0.34799999)) | |
765 | handleweld=weld(m,Character["Right Arm"],handle,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0146102905, -0.318485737, 0.839184284, 1.00000632, -4.93172472e-008, -0.000935511896, -0.000935515272, -6.51810888e-006, -1.00000536, 4.32263612e-008, 0.999999762, -6.51843266e-006)) | |
766 | Hitbox=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,1,"Dark stone grey","Hitbox",Vector3.new(5.11999989, 1.03200006, 0.800000012)) | |
767 | Hitboxweld=weld(m,handle,Hitbox,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(2.26914215, -2.28439808, -0.0138931274, 5.5279628e-008, 0.000357966754, -0.999999583, -0.000903482374, 1.00000536, 0.000357964687, 1.00000632, 0.000903477019, 3.78699411e-007)) | |
768 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.200000003, 0.232000008)) | |
769 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0174179077, -4.69187212, -0.754995346, -1.0000025, 0.000546428899, -0.00286973943, -0.00286977179, -2.13581079e-005, 0.999995589, 0.000546361669, 1.00000572, 2.29263151e-005)) | |
770 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
771 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.579999983, 0.927999973)) | |
772 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00373840332, -2.08894491, 2.90544128, 1.00000536, 0.00170327828, -1.6089453e-007, -0.00170328422, 1.00000441, 1.36183207e-005, 1.84098781e-007, -1.36177896e-005, 0.999999642)) | |
773 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
774 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993)) | |
775 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79949474, -0.180219173, -0.227863312, -0.00172967673, 1.00001013, 2.24112646e-005, 6.46309104e-007, 2.24120486e-005, -0.999999523, -1.00001204, -0.00172966474, -6.85080067e-007)) | |
776 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
777 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34799999, 0.200000003, 0.696000099)) | |
778 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.74123478, -0.409946442, 4.40184164, -0.00107316044, 1.00000525, 1.4551938e-005, 1.0000062, 0.00107315509, 7.93131278e-007, 7.77512412e-007, 1.45525482e-005, -0.999999642)) | |
779 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
780 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.579999983, 0.927999914)) | |
781 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000267028809, -0.582561016, -1.50176382, 1.00001347, -3.86033207e-007, -3.92623845e-009, 3.77418473e-007, 1.00001156, 2.45045476e-006, 3.94029254e-009, -2.44983767e-006, 0.999999285)) | |
782 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
783 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00412750244, 1.45268583, -1.05011797, 1.00001216, 0.00172310648, 2.03311345e-007, 0.00172311824, -1.00001025, 6.49886579e-006, 2.14497248e-007, -6.49923504e-006, -0.999999285)) | |
784 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
785 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(3.13199997, 0.231999978, 0.69599998)) | |
786 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.80415058, -0.524322987, -0.00103759766, 9.72363068e-007, 2.15515029e-005, -0.999999285, -0.00172366935, 1.00001025, 2.15501732e-005, 1.00001216, 0.00172365736, 1.0095107e-006)) | |
787 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.231999993, 0.232000008)) | |
788 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00213241577, 0.754931927, -3.58990145, -1.00000894, 0.00341619202, 7.19290369e-007, -0.00341618108, -1.00000799, -2.25470994e-005, 6.42287603e-007, -2.25490967e-005, 0.999999642)) | |
789 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
790 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993)) | |
791 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79969883, -0.180217266, 0.23601532, -0.00172980642, 1.00001013, 2.24137202e-005, 6.46412275e-007, 2.24145024e-005, -0.999999285, -1.00001204, -0.00172979443, -6.85189946e-007)) | |
792 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
793 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
794 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00409317017, 1.45303392, 2.21011066, -1.00001216, -0.00168438489, -1.55491065e-007, 0.00168439688, -1.00001025, 6.03345643e-006, -1.6564087e-007, 6.03390299e-006, 0.999999285)) | |
795 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
796 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.928000152, 0.34799999)) | |
797 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164337158, 0.00995254517, 0.378734589, 1.00000417, -0.000275396451, 0.000659934303, -0.000271914061, 0.707111299, 0.70709461, -0.000661380531, -0.707101762, 0.707109511)) | |
798 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.463999957, 0.452400029)) | |
799 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0109825134, -0.0555400848, 0.707753658, 1.00001204, 0.00170851196, -1.88033137e-005, -0.0017085236, 1.00001013, 1.71195006e-005, 1.88328195e-005, -1.70869171e-005, 0.999999285)) | |
800 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.812000036, 0.200000003, 0.200000003)) | |
801 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.96466255, -0.414768219, 0.721370459, -0.00134572294, 0.500003576, 0.866025984, 1.00001371, 0.000263436057, 0.00140178087, 0.000472741085, 0.866039276, -0.499996334)) | |
802 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
803 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0.60000002384186,"Pastel Blue","Part",Vector3.new(2.31999993, 0.34799999, 0.200000003)) | |
804 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.2697916, -1.39367867, 0.285621643, 9.60484385e-007, 2.34255967e-005, -0.999999404, -0.00169333746, 1.00001848, 2.34244617e-005, 1.00002027, 0.00169331662, 1.00015268e-006)) | |
805 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
806 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999904, 0.231999978, 0.69599998)) | |
807 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.02214336, -0.756259918, -0.00161361694, 9.72405815e-007, 2.15511936e-005, -0.999999046, -0.00172374037, 1.00001574, 2.15500022e-005, 1.00001884, 0.00172372279, 1.00955594e-006)) | |
808 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.812000036, 0.34799999)) | |
809 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164260864, 0.299938202, -0.537542105, 1.00001764, -0.000275420141, 0.000659916259, -0.000271896773, 0.707119524, 0.707094133, -0.000661385478, -0.707109988, 0.707109034)) | |
810 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.579999983, 0.695999742, 0.463999987)) | |
811 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39053106, -0.458235741, -0.011390686, -0.000440491422, 1.00001991, 1.48311792e-005, -5.82179155e-007, -1.48307363e-005, 0.999999404, 1.00002158, 0.000440472504, 5.88722855e-007)) | |
812 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
813 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
814 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0137062073, 0.00253915787, -1.46745825, -1.00000048, 0.00355784409, 1.83245029e-005, 0.00355784269, 0.999999583, 2.01142084e-005, -1.82529657e-005, 2.0179079e-005, -0.999999642)) | |
815 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
816 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
817 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0136070251, 0.113649845, 0.986213684, -1.00001204, -0.00167019933, -1.89533148e-005, 0.0016702119, -1.00001013, -2.11289407e-005, -1.89182501e-005, -2.11601837e-005, 0.999999285)) | |
818 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
819 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.812000036, 0.200000003, 0.200000003)) | |
820 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.96466923, 0.397167206, 0.721361637, -0.0013458092, 0.50001061, 0.86602205, 1.00001383, 0.00026367465, 0.00140174653, 0.000472528627, 0.866035402, -0.500003278)) | |
821 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
822 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.928000033)) | |
823 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56735134, -0.408821106, 3.24180651, -0.000670250331, 1.00001955, 1.51960503e-005, 1.00002134, 0.000670230889, 6.58439376e-007, 6.48245248e-007, 1.51957993e-005, -0.999999404)) | |
824 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
825 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0.60000002384186,"Pastel Blue","Part",Vector3.new(2.31999993, 0.34799999, 0.200000003)) | |
826 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26982021, -1.39350224, -0.295120239, 1.08945255e-006, 2.34336403e-005, -0.999999404, -0.00210836693, 1.00001788, 2.34318177e-005, 1.00001955, 0.00210834551, 1.13885642e-006)) | |
827 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
828 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999904, 0.231999978, 0.69599998)) | |
829 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.02117348, 1.4526372, 0.0043182373, -8.55062524e-007, -7.5024268e-006, -0.999999642, 0.00172491686, -1.00000417, 7.50057416e-006, -1.00000513, -0.00172491092, 8.67988547e-007)) | |
830 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003)) | |
831 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.170059204, -2.2058959, 4.45978069, -1.00001419, -0.00135475828, -4.16571709e-007, -0.00135477353, 1.00001323, 4.34294707e-005, 3.57724417e-007, 4.34299582e-005, -0.999999642)) | |
832 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983)) | |
833 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.200000003, 0.34800005)) | |
834 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00218582153, -0.812090874, 2.42410946, 1.0000062, -0.000122337253, -0.000491121027, -0.000139618875, 0.866030037, -0.499999434, 0.000486493052, 0.500002682, 0.866024911)) | |
835 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
836 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.200000003)) | |
837 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00135040283, 0.462905884, 3.42825031, -1.00001216, -0.00170107209, -3.2242329e-007, 0.00170108408, -1.00001025, -4.80908056e-007, -3.21594428e-007, -4.80819381e-007, 0.999999285)) | |
838 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
839 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 1.27600002, 0.69599998)) | |
840 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00625753403, -1.16150713, -0.00413131714, 9.68375389e-007, 2.27232595e-005, -0.999999404, -0.00171916001, 1.00001824, 2.27220989e-005, 1.00002003, 0.00171913893, 1.0074408e-006)) | |
841 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003)) | |
842 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.174598694, -2.20604086, 4.45978403, -1.0000217, 3.07324808e-006, 3.6950091e-008, 3.05491267e-006, 1.00001991, 4.44986144e-005, -3.68387809e-008, 4.44985162e-005, -0.999999404)) | |
843 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983)) | |
844 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999993, 0.34800005)) | |
845 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.7220459e-005, -0.171551704, 2.84820986, 1.00001347, 1.32246059e-005, -1.8708166e-005, -1.32331043e-005, 1.00001156, 9.19823833e-007, 1.87084588e-005, -9.18944352e-007, 0.999999285)) | |
846 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.812000155, 0.200000003, 0.231999993)) | |
847 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.90776682, -1.85868549, -0.00782012939, 1.8466252e-006, 2.3490722e-005, -0.999999404, -0.00454348512, 1.0000093, 2.34826093e-005, 1.00001109, 0.00454345904, 1.95331836e-006)) | |
848 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
849 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.232000038, 0.463999987)) | |
850 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.69186592, -0.987005711, -0.00565719604, 1.16656577e-006, 2.24069317e-005, -0.999999642, -0.0023512831, 1.00000334, 2.24043106e-005, 1.00000429, 0.00235127681, 1.21924631e-006)) | |
851 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 1)) | |
852 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.463999987, 0.34799999)) | |
853 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.008228302, -2.14741659, -0.0642538071, -1.00000715, 0.00357599347, 3.75979994e-007, 0.00357599184, 1.00000525, 2.70939381e-007, -3.75028975e-007, 2.71639692e-007, -0.999999285)) | |
854 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
855 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.200000003)) | |
856 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000347137451, -1.8586607, -0.167779922, 1.00002146, -7.44219869e-006, -3.64530095e-008, 7.4239797e-006, 1.00001967, 2.38242046e-006, 3.6459241e-008, -2.38146504e-006, 0.999999404)) | |
857 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
858 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
859 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0133476257, 0.114125729, -1.46745729, 1.00000048, -0.00355736027, 1.89384191e-005, -0.00355735887, -0.999999583, 2.02438559e-006, 1.8931225e-005, -2.09207792e-006, -0.999999642)) | |
860 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
861 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.74000013, 0.232000083, 0.69599998)) | |
862 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(3.64782763, -2.03162193, -0.00580215454, 1.18259686e-006, 2.35495809e-005, -0.999999404, -0.00240779901, 1.00001693, 2.35471889e-005, 1.00001872, 0.00240777642, 1.23929362e-006)) | |
863 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.232000008, 0.463999987)) | |
864 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26977873, -1.68380308, -0.00464248657, 1.04666037e-006, 2.36031628e-005, -0.999999285, -0.00197039847, 1.00000978, 2.36014093e-005, 1.00001168, 0.00197038613, 1.09316613e-006)) | |
865 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.579999983, 1.15999985)) | |
866 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000141143799, -0.00238656998, -1.38578653, 1.00001347, -2.6228372e-007, -3.18987103e-009, 2.53668986e-007, 1.00001156, 2.2798049e-006, 3.2041374e-009, -2.27918736e-006, 0.999999285)) | |
867 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34800005, 0.200000003, 0.200000003)) | |
868 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.12457228, 0.377754211, -2.04072428, -0.00161815656, 2.28647568e-005, 0.999998331, 1.00000501, -0.000935775577, 0.00161816564, 0.000935807999, 1.00000536, -2.13500443e-005)) | |
869 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
870 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.69599998, 0.34800005)) | |
871 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00218963623, -1.21802139, 2.42397022, 1.00000656, -0.000122337195, -0.000491121318, -0.000139618875, 0.866030455, -0.499999672, 0.000486493111, 0.500002742, 0.866025031)) | |
872 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.59740001)) | |
873 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.012588501, -0.230174541, 1.22678614, 1.00001204, 0.00170156895, -1.85436711e-005, -0.00170158059, 1.00001013, 1.60903783e-005, 1.85713052e-005, -1.60583568e-005, 0.999999285)) | |
874 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
875 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000187, 0.200000003, 0.200000003)) | |
876 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.28582335, -2.20614576, 0.16740036, 1.29392276e-006, 2.35486077e-005, -0.999999285, -0.00276590372, 1.00000787, 2.35452953e-005, 1.00000978, 0.00276589021, 1.3590477e-006)) | |
877 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
878 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Cyan","Part",Vector3.new(0.579999983, 0.927999735, 0.463999987)) | |
879 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39041233, -1.27023077, -0.011089325, -0.000441556913, 1.00001168, 1.47172686e-005, -5.82458881e-007, -1.47170649e-005, 0.999999285, 1.00001359, 0.0004415476, 5.88964099e-007)) | |
880 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
881 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.928000033)) | |
882 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56732988, 0.403812408, 3.24179888, -0.000671263493, 1.00000596, 1.39352715e-005, 1.00000691, 0.000671258371, 6.59181296e-007, 6.49824415e-007, 1.39354743e-005, -0.999999642)) | |
883 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
884 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 1.27600002, 0.69599998)) | |
885 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.180254936, -1.16150093, -0.0041885376, 9.68362087e-007, 2.2722732e-005, -0.999999285, -0.00171916536, 1.00001013, 2.27213986e-005, 1.00001204, 0.00171915337, 1.00742602e-006)) | |
886 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 1)) | |
887 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999993, 0.916400015)) | |
888 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0164260864, 0.589895248, 0.094648838, 1.00001764, -0.000275413156, 0.000659923593, -0.000271906902, 0.707119524, 0.707094133, -0.000661385711, -0.707109988, 0.707109034)) | |
889 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.200000003)) | |
890 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00074005127, -0.113721371, 2.02377272, 1.00001466, -2.03231466e-005, 3.07392952e-007, -2.03155214e-005, -1.00001335, -1.85632734e-006, 3.07421914e-007, 1.85568797e-006, -0.999999404)) | |
891 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
892 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.200000003)) | |
893 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000648498535, 0.523108482, 3.42824936, -1.00001204, -0.00170232763, -3.22026239e-007, 0.00170233962, -1.00001013, -4.4727858e-007, -3.21253964e-007, -4.47188995e-007, 0.999999285)) | |
894 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
895 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.231999993)) | |
896 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00292205811, -2.03163147, 4.63377762, -1.00001311, -0.000978587777, -2.91069369e-007, -0.000978597905, 1.00001121, 4.45006881e-005, 2.4750986e-007, 4.45008554e-005, -0.999999285)) | |
897 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
898 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(1.62399995, 0.927999794, 0.928000033)) | |
899 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.1038084, 0.702246666, -0.00408935547, -0.00171928364, 1.00001013, 1.46179427e-005, -5.92813478e-007, -1.46185203e-005, 0.999999285, 1.00001204, 0.00171927165, 6.17952878e-007)) | |
900 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
901 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.463999987)) | |
902 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.180233479, -1.85741377, -0.00400161743, 9.68401537e-007, 2.21498412e-005, -0.999999285, -0.00171989296, 1.00001013, 2.2148517e-005, 1.00001204, 0.00171988097, 1.00649675e-006)) | |
903 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.580000103, 1)) | |
904 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.34799999, 0.200000003)) | |
905 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00061416626, 0.113962173, -0.515907764, 1.00000679, 8.48609488e-007, -1.58665658e-009, -8.52916855e-007, 1.00000584, 8.92841399e-007, 1.59491531e-009, -8.9252535e-007, 0.999999642)) | |
906 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
907 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.200000003)) | |
908 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000152587891, 0.350605965, -0.979739666, -1.00001347, 3.24973371e-007, -3.23643548e-007, -3.16358637e-007, -1.00001156, -4.67361169e-005, -3.23648152e-007, -4.67360405e-005, 0.999999285)) | |
909 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
910 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.231999978)) | |
911 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0134773254, -2.03588963, 0.0627288818, 1.0000118, 0.00168008753, -0.000919409504, -0.000919448154, 1.43879734e-005, -0.999998927, -0.00168008532, 1.00001025, 1.59331266e-005)) | |
912 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
913 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.34799999, 0.34799999)) | |
914 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00144577026, 0.465278625, 2.25577259, 1.00000525, -0.00357661862, 2.83521615e-007, -0.00357662095, -1.00000381, -2.32054535e-005, 3.66508516e-007, 2.32040093e-005, -0.999999404)) | |
915 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
916 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.231999993, 0.69599998)) | |
917 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.4577775, -0.755722523, -0.00420379639, 9.68686891e-007, 2.31499107e-005, -0.999999285, -0.00171863148, 1.00001037, 2.31485628e-005, 1.00001228, 0.00171861949, 1.00847365e-006)) | |
918 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.927999914, 0.231999978, 0.69599998)) | |
919 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.63014698, -0.756272316, -0.00161361694, 9.72395696e-007, 2.15512227e-005, -0.999999285, -0.00172371534, 1.00001013, 2.15498931e-005, 1.00001204, 0.00172370335, 1.00954367e-006)) | |
920 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
921 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000984191895, -0.756361485, 0.354147911, 1.00001216, 0.00168376672, -1.40138248e-008, -0.00168377871, 1.00001025, 2.1083024e-005, 4.95281753e-008, -2.10825874e-005, 0.999999285)) | |
922 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
923 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.231999844)) | |
924 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-4.19616699e-005, -0.350408554, -0.921793938, 1.00001347, 8.28295015e-008, -2.89782998e-009, -9.14442353e-008, 1.00001156, 2.05126844e-006, 2.91285485e-009, -2.05064771e-006, 0.999999285)) | |
925 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
926 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.463999987)) | |
927 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00622749329, -1.85754061, -0.00392532349, 9.6856877e-007, 2.22277413e-005, -0.999999285, -0.00171961775, 1.00001037, 2.2226408e-005, 1.00001228, 0.00171960576, 1.00679244e-006)) | |
928 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.580000103, 1)) | |
929 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(3.13199997, 0.231999978, 0.69599998)) | |
930 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.804111, 1.68473339, 0.00412750244, -8.36535833e-007, -6.4935798e-006, -0.999999285, 0.00172392465, -1.00001013, 6.49140156e-006, -1.00001204, -0.00172391266, 8.47700733e-007)) | |
931 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
932 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00101089478, -0.756358147, 3.25414419, 1.00001884, 0.00168378535, -1.40127501e-008, -0.00168380293, 1.00001574, 2.10829876e-005, 4.953597e-008, -2.1082411e-005, 0.999999046)) | |
933 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
934 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
935 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00154876709, -0.345762253, -0.747890472, -1.00000513, 0.00184790534, -9.90573952e-008, -0.00184790278, -1.00000417, -3.50944756e-005, -1.63901603e-007, -3.50941227e-005, 0.999999642)) | |
936 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
937 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.231999993)) | |
938 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00116729736, 0.582655907, 0.921771049, 1.0000118, -0.0018872465, 3.00768534e-007, -0.00188724138, -1.00000989, -2.33032779e-006, 3.05155339e-007, 2.32914181e-006, -0.999999285)) | |
939 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
940 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.34799999, 0.69599998)) | |
941 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.26979065, -1.04566193, -0.00424575806, 9.68193035e-007, 2.35501375e-005, -0.999999285, -0.00171805895, 1.00001037, 2.35487987e-005, 1.00001228, 0.00171804742, 1.00865361e-006)) | |
942 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000187, 0.200000003, 0.200000003)) | |
943 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.28582954, -2.20552588, -0.181804657, 1.45761271e-006, 2.37911408e-005, -0.999999285, -0.00329261925, 1.00000644, 2.37865734e-005, 1.00000834, 0.00329260482, 1.53593442e-006)) | |
944 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
945 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 0.928000033)) | |
946 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56748581, 0.403205872, 3.24181366, -0.000669696892, 1.00001156, 1.54301233e-005, 1.00001347, 0.000669687288, 6.58446311e-007, 6.48107061e-007, 1.54301015e-005, -0.999999285)) | |
947 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
948 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.232000008, 0.34799999)) | |
949 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00191497803, -2.03143692, -2.60386896, 1.00001359, 0.000368760899, 2.53006078e-007, -0.000368769979, 1.00001168, 2.77856907e-006, -2.51969908e-007, -2.77804475e-006, 0.999999285)) | |
950 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
951 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.231999993, 0.231999993)) | |
952 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79963732, -0.0062046051, -0.227901459, -0.00172873132, 1.00001025, 2.30093628e-005, 6.45988621e-007, 2.30101468e-005, -0.999999285, -1.00001216, -0.00172871957, -6.85771909e-007)) | |
953 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
954 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
955 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000247955322, -1.85837555, 0.515717983, -1.00001347, 0.00037799112, 1.62256811e-007, 0.000377983262, 1.00001156, 4.46234044e-005, -1.45407441e-007, 4.4623368e-005, -0.999999285)) | |
956 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
957 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599992, 0.231999993, 0.200000003)) | |
958 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00257110596, -1.6831336, 3.42826033, 1.00001204, 0.00170258048, -1.60158933e-007, -0.00170259248, 1.00001013, 1.46196398e-005, 1.8506725e-007, -1.46188831e-005, 0.999999285)) | |
959 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
960 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.200000003)) | |
961 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000370025635, -1.8587203, -1.44380522, 1.00001359, -8.11205246e-006, -3.67194701e-008, 8.10361234e-006, 1.00001168, 2.74641434e-006, 3.67127662e-008, -2.74579975e-006, 0.999999285)) | |
962 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
963 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.231999993, 0.200000003)) | |
964 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.27035666, -1.68360662, 0.293216705, -6.99449004e-007, 0.000311892974, 0.999999285, -0.00104407989, 1.00001121, -0.000311888987, -1.00001323, -0.00104407, -3.73821621e-007)) | |
965 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
966 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.928000152, 0.464000016, 0.463999987)) | |
967 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.16985369, -0.871246338, -0.0051651001, 1.16509625e-006, 2.38373486e-005, -0.999998808, -0.00235050265, 1.00001895, 2.38351458e-005, 1.00002158, 0.00235049031, 1.22111521e-006)) | |
968 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.200000003, 1.04399979)) | |
969 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000732421875, 0.345625401, -1.32782841, 1.00001347, 1.57987233e-006, -3.28700223e-009, -1.58848707e-006, 1.00001156, 1.30031594e-006, 3.30395888e-009, -1.29968794e-006, 0.999999285)) | |
970 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
971 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000172, 0.200000003, 0.231999993)) | |
972 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.341750622, -1.85878611, -0.00778961182, 1.84655323e-006, 2.3751556e-005, -0.999999285, -0.00454270514, 1.00000131, 2.3743276e-005, 1.00000322, 0.00454268791, 1.9544193e-006)) | |
973 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
974 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.200000003, 1.2759999)) | |
975 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-2.28881836e-005, -0.466629028, -0.399776936, 1.00001347, -3.22703272e-007, -3.16622373e-009, 3.14088538e-007, 1.00001156, 2.64065238e-006, 3.18028226e-009, -2.6400412e-006, 0.999999285)) | |
976 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
977 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
978 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0040397644, 1.45275879, 0.354114056, -1.00001884, -0.00168373343, -1.7531282e-007, 0.00168375147, -1.00001597, 6.02276077e-006, -1.85434587e-007, 6.02347882e-006, 0.999999166)) | |
979 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
980 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.231999993, 0.231999993)) | |
981 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.79963207, -0.00620794296, 0.236164093, -0.00172861468, 1.00001025, 2.30448168e-005, 6.46028013e-007, 2.30456026e-005, -0.999999285, -1.00001216, -0.00172860292, -6.85869907e-007)) | |
982 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
983 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(1.62399995, 1.27599967, 0.928000033)) | |
984 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.10384512, 2.7322464, -0.00403213501, -0.00171939307, 1.00001013, 1.46226739e-005, -5.92917615e-007, -1.46232505e-005, 0.999999285, 1.00001204, 0.00171938131, 6.18066792e-007)) | |
985 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
986 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
987 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000701904297, -0.345462322, 1.90779448, 1.00001347, -2.00413051e-005, 3.0602007e-007, -2.00327486e-005, -1.00001156, -2.15015098e-006, 3.06052669e-007, 2.14952706e-006, -0.999999285)) | |
988 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
989 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.04400015, 0.811999977, 0.69599998)) | |
990 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(4.2278223, -1.50939083, -0.00476455688, 1.06762559e-006, 2.37910026e-005, -0.999999285, -0.00203778502, 1.00000966, 2.37891327e-005, 1.00001156, 0.00203777291, 1.11610427e-006)) | |
991 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.463999987, 0.200000003, 0.928000033)) | |
992 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.56723642, -0.411323547, 3.2417984, -0.000671109243, 1.0000056, 1.40209831e-005, 1.00000656, 0.000671104353, 6.59014859e-007, 6.49602271e-007, 1.40211887e-005, -0.999999642)) | |
993 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
994 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
995 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00456619263, 1.45251989, 3.25319099, -1.00000548, -0.00168398093, -1.74997453e-007, 0.0016839871, -1.00000453, 7.01806357e-006, -1.86809473e-007, 7.01812223e-006, 0.999999642)) | |
996 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
997 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
998 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0012512207, 0.756712437, 0.921786785, 1.00001192, -0.00188787864, 2.99965563e-007, -0.00188787398, -1.00001001, -2.71932527e-006, 3.05087923e-007, 2.71814042e-006, -0.999999285)) | |
999 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1000 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
1001 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00101852417, -0.756660938, -1.05014706, -1.00001204, -0.00172244979, 6.12758271e-008, -0.00172246178, 1.00001013, 2.15474902e-005, -9.84062183e-008, 2.15469754e-005, -0.999999285)) | |
1002 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1003 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.580000103, 2.204)) | |
1004 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00379943848, -2.08976412, 1.34025192, 1.00001204, 0.00171907921, 2.17523793e-005, -0.00171909155, 1.00001013, 1.06986054e-005, -2.17342458e-005, -1.07354717e-005, 0.999999285)) | |
1005 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(1.27600014, 1.04400003, 0.69599998)) | |
1006 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(3.06781864, -1.39336252, -0.00276947021, 6.42567954e-007, 2.37156328e-005, -0.999999285, -0.000670476642, 1.00001156, 2.37155527e-005, 1.00001347, 0.000670467038, 6.58474448e-007)) | |
1007 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.696000159, 0.200000003, 0.232000008)) | |
1008 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.457955837, -0.580825329, -0.0055770874, 1.16664842e-006, 2.21116316e-005, -0.999999642, -0.00235209521, 1.00000632, 2.21090704e-005, 1.00000727, 0.0023520845, 1.21865253e-006)) | |
1009 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
1010 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
1011 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00102996826, -0.756342888, -2.7901454, -1.00001884, -0.00172247365, 6.13245135e-008, -0.001722491, 1.00001574, 2.15474611e-005, -9.84643691e-008, 2.15468062e-005, -0.999999046)) | |
1012 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1013 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.927999973, 0.200000003)) | |
1014 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.35656452, -0.0282249451, -2.04077148, -0.00161817856, 2.2865348e-005, 0.999997616, 1.00001848, -0.000935790653, 0.00161816448, 0.000935816381, 1.00001693, -2.13497078e-005)) | |
1015 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 1, 0.579999983)) | |
1016 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34799999, 0.200000003, 0.696000099)) | |
1017 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.7414937, 0.402587891, 4.40184164, -0.00107212085, 1.00001121, 1.57967261e-005, 1.00001311, 0.00107211061, 7.93275149e-007, 7.76334844e-007, 1.57971135e-005, -0.999999285)) | |
1018 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
1019 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
1020 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0135307312, 0.00276422501, 0.986213207, 1.00001204, 0.00167110038, -1.825656e-005, -0.00167111226, 1.00001013, -1.0784629e-006, 1.82550084e-005, 1.10962583e-006, 0.999999285)) | |
1021 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
1022 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.231999964, 0.200000003)) | |
1023 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0116043091, -0.169836521, 2.03595734, 1.00001204, 0.00170413801, -1.86736106e-005, -0.00170414965, 1.00001013, 1.63084733e-005, 1.87016558e-005, -1.62761844e-005, 0.999999285)) | |
1024 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
1025 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.927999914, 0.231999978, 0.69599998)) | |
1026 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.62992048, 1.45317078, 0.00423812866, -8.35475475e-007, -7.49478841e-006, -0.999999642, 0.00172465458, -1.00001037, 7.49267065e-006, -1.00001204, -0.00172464119, 8.48372508e-007)) | |
1027 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
1028 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0048866272, 1.45256662, -2.78931189, 1.00000513, 0.00172351021, 2.02878823e-007, 0.00172351615, -1.00000417, 7.49809578e-006, 2.15795779e-007, -7.49809897e-006, -0.999999642)) | |
1029 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1030 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003)) | |
1031 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.175273895, -2.2061739, -4.11187935, 1.00001371, 0.00036665576, 8.8621448e-008, -0.000366665074, 1.0000118, 2.83818667e-006, -8.7566761e-008, -2.8376005e-006, 0.999999285)) | |
1032 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983)) | |
1033 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000008, 0.579999983, 0.200000003)) | |
1034 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000499725342, -0.350563049, -2.02378225, 1.00001347, -5.64614311e-007, -3.58900643e-009, 5.56057785e-007, 1.00001156, 2.58954788e-006, 3.60246588e-009, -2.58893624e-006, 0.999999285)) | |
1035 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
1036 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.463999957, 0.452400029)) | |
1037 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0107460022, -0.0555205345, 1.75172997, 1.00001204, 0.00170685095, -1.87402256e-005, -0.00170686259, 1.00001013, 1.71129595e-005, 1.87696915e-005, -1.7080516e-005, 0.999999285)) | |
1038 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.200000003, 0.200000003)) | |
1039 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000179290771, -0.11830616, -0.515934467, 1.00000679, 1.18016033e-006, -1.49793378e-009, -1.18446769e-006, 1.00000584, 4.800022e-007, 1.50599488e-009, -4.79683422e-007, 0.999999642)) | |
1040 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
1041 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.579999983, 0.695999742, 0.463999987)) | |
1042 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39072371, -2.08222008, -0.0108184814, -0.000440219301, 1.00001168, 1.49555108e-005, -5.82121402e-007, -1.49553034e-005, 0.999999285, 1.00001359, 0.000440209988, 5.88711941e-007)) | |
1043 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1044 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.232000038, 0.200000003, 3.59599972)) | |
1045 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000350952148, -0.34586668, 1.57220888, 1.00001347, -8.66054324e-006, -1.0555099e-009, 8.65192851e-006, 1.00001156, 6.67146651e-007, 1.06459686e-009, -6.66510914e-007, 0.999999285)) | |
1046 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
1047 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.69599998, 0.232000008, 0.231999993)) | |
1048 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000980377197, -0.756362438, 2.21014261, 1.00001216, 0.00168377184, -1.39758196e-008, -0.00168378383, 1.00001025, 2.10831458e-005, 4.94904349e-008, -2.10827075e-005, 0.999999285)) | |
1049 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1050 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.231999993, 0.200000003, 0.200000003)) | |
1051 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000228881836, -1.85836792, 2.37173796, -1.00001347, 0.000378501718, 1.62424982e-007, 0.000378494151, 1.00001156, 4.46612976e-005, -1.45538479e-007, 4.46612685e-005, -0.999999285)) | |
1052 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
1053 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Cyan","Part",Vector3.new(1.62399995, 0.927999794, 0.928000033)) | |
1054 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.1039381, 1.63024521, -0.0039024353, -0.00172031764, 1.00001013, 1.46122475e-005, -5.72987631e-007, -1.46127904e-005, 0.999999285, 1.00001204, 0.00172030565, 5.98132715e-007)) | |
1055 | mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1056 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(2.9000001, 0.232000038, 0.232000008)) | |
1057 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(2.2558732, -0.755105019, -0.005027771, 1.16550927e-006, 2.32517414e-005, -0.999999046, -0.00235130615, 1.00001335, 2.32494094e-005, 1.00001562, 0.00235129381, 1.22017377e-006)) | |
1058 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.812000036, 0.34799999)) | |
1059 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.000499725342, -0.000572681427, -0.399878502, 1.00001347, -3.89991328e-009, -1.60411329e-009, -4.71482053e-009, 1.00001156, 9.86925897e-007, 1.61898139e-009, -9.86294253e-007, 0.999999285)) | |
1060 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.463999987, 0.69599998, 0.231999993)) | |
1061 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000854492188, -0.060251236, -0.689863205, 1.00000679, 9.31904651e-008, -2.52386245e-009, -9.7497832e-008, 1.00000584, 1.58413877e-006, 2.53151944e-009, -1.58382682e-006, 0.999999642)) | |
1062 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.69599998, 0.34799999, 0.34799996)) | |
1063 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000202178955, -0.698717594, -0.863790989, 1.00001359, -9.37085133e-007, -4.30265912e-009, 9.28586815e-007, 1.00001168, 2.73720707e-006, 4.31539515e-009, -2.73659361e-006, 0.999999285)) | |
1064 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1)) | |
1065 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(0.232000008, 0.200000003, 0.59740001)) | |
1066 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0118713379, 0.117973328, 1.22682953, 1.00001204, 0.00170348049, -1.86220968e-005, -0.00170349213, 1.00001013, 1.60979762e-005, 1.86497764e-005, -1.60657855e-005, 0.999999285)) | |
1067 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
1068 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.200000003, 0.200000003, 0.200000003)) | |
1069 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.170646667, -2.20620346, -4.11187887, 1.00001299, 0.00135321938, 4.18644504e-007, -0.00135323033, 1.00001109, 2.83407667e-006, -4.147997e-007, -2.83402255e-006, 0.999999285)) | |
1070 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.579999983, 0.579999983, 0.579999983)) | |
1071 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Really black","Part",Vector3.new(0.34800005, 0.200000003, 0.200000003)) | |
1072 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-5.12456751, -0.434249878, -2.04071569, -0.00161815656, 2.28647568e-005, 0.999998331, 1.00000501, -0.000935775577, 0.00161816564, 0.000935807999, 1.00000536, -2.13500443e-005)) | |
1073 | mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 0.579999983)) | |
1074 | Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Part",Vector3.new(2.31999993, 0.231999993, 0.200000003)) | |
1075 | Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(1.27036333, -1.68534136, 0.286766052, 4.37200288e-006, -0.00031248352, -0.999999225, -0.00104415184, 1.00001121, -0.000312483375, 1.00001323, 0.00104414311, 4.04568164e-006)) | |
1076 | mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.579999983)) | |
1077 | Barrel=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"Dark stone grey","Barrel",Vector3.new(0.695999742, 0.200000003, 0.928000033)) | |
1078 | Barrelweld=weld(m,handle,Barrel,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.09376717, 3.31707621, -0.00493240356, -0.00171980122, 1.00000441, 1.36221133e-005, -5.93967741e-007, -1.36229164e-005, 0.999999642, 1.00000536, 0.00171979528, 6.1739911e-007)) | |
1079 | mesh("CylinderMesh",Barrel,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.579999983, 1)) | |
1080 | ||
1081 | LASER_WIDTH = 5 | |
1082 | LASER_MAGIC_CIRCLE_DISTANCE = 6.25 | |
1083 | laser_data = {} | |
1084 | ||
1085 | player=game.Players.localPlayer | |
1086 | char=player.Character | |
1087 | active=false | |
1088 | ||
1089 | math = { | |
1090 | abs = math.abs, | |
1091 | acos = math.acos, | |
1092 | asin = math.asin, | |
1093 | atan = math.atan, | |
1094 | atan2 = math.atan2, | |
1095 | ceil = math.ceil, | |
1096 | cos = math.cos, | |
1097 | cosh = math.cosh, | |
1098 | deg = math.deg, | |
1099 | exp = math.exp, | |
1100 | floor = math.floor, | |
1101 | fmod = math.fmod, | |
1102 | frexp = math.frexp, | |
1103 | huge = math.huge, | |
1104 | ldexp = math.ldexp, | |
1105 | log = math.log, | |
1106 | log10 = math.log10, | |
1107 | max = math.max, | |
1108 | min = math.min, | |
1109 | modf = math.modf, | |
1110 | phi = 1.618033988749895, | |
1111 | pi = math.pi, | |
1112 | pow = math.pow, | |
1113 | rad = math.rad, | |
1114 | random = math.random, | |
1115 | randomseed = math.randomseed, | |
1116 | sin = math.sin, | |
1117 | sinh = math.sinh, | |
1118 | sqrt = math.sqrt, | |
1119 | tan = math.tan, | |
1120 | tanh = math.tanh, | |
1121 | tau = 2 * math.pi | |
1122 | } | |
1123 | magicCircleData = {} | |
1124 | MAGIC_CIRCLE_DEFAULT_OFFSET = 6.25 | |
1125 | function AnimateMagicCircle(data) | |
1126 | local frame, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, duration, | |
1127 | ||
1128 | stay, magic_circle_adornee_func, magic_circle_offset = unpack(data) | |
1129 | frame = frame + 1 | |
1130 | data[1] = frame | |
1131 | local transparency = (frame / duration) ^ stay | |
1132 | local opacity = 1 - transparency | |
1133 | if frame == duration then | |
1134 | pcall(game.Destroy, magic_circle_model) | |
1135 | magicCircleData[data] = nil | |
1136 | else | |
1137 | if magic_circle_model.Parent ~= workspace then | |
1138 | magic_circle_model.Parent=workspace | |
1139 | end | |
1140 | local magic_circle_adornee = magic_circle_adornee_func() | |
1141 | magic_circle_position = magic_circle_adornee.Position + direction * magic_circle_offset | |
1142 | local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame / | |
1143 | ||
1144 | 25) | |
1145 | magic_circle_part.CFrame = magic_circle_cframe | |
1146 | magic_circle_light.Brightness = opacity | |
1147 | magic_circle_decal_back.Transparency = transparency | |
1148 | magic_circle_decal_front.Transparency = transparency | |
1149 | end | |
1150 | end | |
1151 | function CreateMagicCircle(target, magic_circle_scale, magic_circle_image, light_color, duration, stay, magic_circle_adornee_func, | |
1152 | ||
1153 | magic_circle_offset) | |
1154 | local magic_circle_adornee = magic_circle_adornee_func() | |
1155 | if magic_circle_adornee then | |
1156 | local origin = magic_circle_adornee.Position | |
1157 | local direction = (target - origin).unit | |
1158 | local magic_circle_position = origin + direction * magic_circle_offset | |
1159 | local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) | |
1160 | local magic_circle_model = Instance.new("Model") | |
1161 | local magic_circle_part = Instance.new("Part", magic_circle_model) | |
1162 | local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part) | |
1163 | local magic_circle_light = Instance.new("PointLight", magic_circle_part) | |
1164 | local magic_circle_decal_back = Instance.new("Decal", magic_circle_part) | |
1165 | local magic_circle_decal_front = Instance.new("Decal", magic_circle_part) | |
1166 | magic_circle_model.Archivable = false | |
1167 | magic_circle_part.Anchored = true | |
1168 | magic_circle_part.BottomSurface = "Smooth" | |
1169 | magic_circle_part.CanCollide = false | |
1170 | magic_circle_part.CFrame = magic_circle_cframe | |
1171 | magic_circle_part.FormFactor = "Custom" | |
1172 | magic_circle_part.Locked = true | |
1173 | magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2) | |
1174 | magic_circle_part.TopSurface = "Smooth" | |
1175 | magic_circle_part.Transparency = 1 | |
1176 | magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale | |
1177 | magic_circle_light.Color = light_color | |
1178 | magic_circle_light.Range = 16 * magic_circle_scale | |
1179 | magic_circle_light.Shadows = true | |
1180 | magic_circle_decal_back.Face = "Back" | |
1181 | magic_circle_decal_back.Texture = magic_circle_image | |
1182 | magic_circle_decal_front.Face = "Front" | |
1183 | magic_circle_decal_front.Texture = magic_circle_image | |
1184 | magic_circle_model.Parent = workspace | |
1185 | local data = {0, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, | |
1186 | ||
1187 | duration, stay, magic_circle_adornee_func, magic_circle_offset} | |
1188 | magicCircleData[data] = true | |
1189 | return data | |
1190 | end | |
1191 | end | |
1192 | ||
1193 | --GraphicalEffects.fragmentation = {} | |
1194 | function AnimateLaserOfDeath(data) | |
1195 | local frame, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part, magic_circle_light, | |
1196 | ||
1197 | magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay, light_effects = | |
1198 | ||
1199 | unpack(data) | |
1200 | local laser_color = laser_part.Color | |
1201 | frame = frame + 1 | |
1202 | data[1] = frame | |
1203 | local transparency = (frame / duration) ^ stay | |
1204 | local opacity = 1 - transparency | |
1205 | if frame == 2 then | |
1206 | sound:Play() | |
1207 | end | |
1208 | if frame == duration then | |
1209 | pcall(game.Destroy, magic_circle_model) | |
1210 | laser_data[data] = nil | |
1211 | else | |
1212 | if magic_circle_model.Parent ~= workspace then | |
1213 | magic_circle_model.Parent=workspace | |
1214 | end | |
1215 | local laser_distance = 0 | |
1216 | local origin = Barrel.CFrame | |
1217 | if not light_effects then | |
1218 | direction = (origin * directionOrientation - origin.p).unit | |
1219 | end | |
1220 | local magic_circle_position = origin.p + direction * LASER_MAGIC_CIRCLE_DISTANCE | |
1221 | local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame / | |
1222 | ||
1223 | 25) | |
1224 | local loop_scale = (laser_scale - 1) / 10 | |
1225 | for x_offset = -loop_scale, loop_scale, 2 do | |
1226 | for y_offset = -loop_scale, loop_scale, 2 do | |
1227 | local origin_position = magic_circle_cframe * Vector3.new(x_offset, y_offset, 0) | |
1228 | for index = 1, 8 do | |
1229 | local part, position | |
1230 | for ray_index = 1, 10 do | |
1231 | local ray = Ray.new(origin_position + direction * (999 * (ray_index - 1)), direction * 999) | |
1232 | part, position = workspace:FindPartOnRay(ray, magic_circle_model) | |
1233 | if part then | |
1234 | break | |
1235 | end | |
1236 | end | |
1237 | if part then | |
1238 | laser_distance = (position - origin_position).magnitude | |
1239 | if frame % 8 == 1 and index == 1 then | |
1240 | Instance.new("Explosion", workspace).Position = position | |
1241 | end | |
1242 | if not part:IsA("Terrain") then | |
1243 | pcall(part.BreakJoints, part) | |
1244 | local is_block = part:IsA("Part") and part.Shape == Enum.PartType.Block | |
1245 | local mass = part:GetMass() | |
1246 | local size = part.Size | |
1247 | if (is_block and ((size.X < fragmentation_size and size.Y < fragmentation_size and size.Z < | |
1248 | ||
1249 | fragmentation_size) or (not part.Anchored and mass < 750))) or (not is_block and mass < 250000) then | |
1250 | local part_transparency = math.max(part.Transparency + 0.007 * fragmentation_size, 0.5) | |
1251 | if part_transparency >= 0.5 then -- temporarily to minimize debris | |
1252 | pcall(game.Destroy, part) | |
1253 | else | |
1254 | local cframe = part.CFrame | |
1255 | part.Anchored = false | |
1256 | part.BrickColor = BrickColor.new("Medium stone grey") | |
1257 | part.CanCollide = true | |
1258 | if part:IsA("FormFactorPart") then | |
1259 | part.FormFactor = "Custom" | |
1260 | end | |
1261 | part.Size = size - Vector3.new(0.135, 0.135, 0.135) * fragmentation_size | |
1262 | part.Transparency = part_transparency | |
1263 | part.CFrame = cframe + direction * 5 | |
1264 | part.Velocity = part.Velocity + direction * 40 | |
1265 | end | |
1266 | elseif is_block then | |
1267 | local parts = {part} | |
1268 | local model = Instance.new("Model", part.Parent) | |
1269 | model.Name = "Fragments" | |
1270 | if size.X >= fragmentation_size then | |
1271 | size = Vector3.new(0.5, 1, 1) * size | |
1272 | local archivable = part.Archivable | |
1273 | local cframe = part.CFrame | |
1274 | part.FormFactor = "Custom" | |
1275 | part.Size = size | |
1276 | part.Archivable = true | |
1277 | local part_clone = part:Clone() | |
1278 | part.Archivable = archivable | |
1279 | part_clone.Archivable = archivable | |
1280 | part.CFrame = cframe * CFrame.new(-0.5 * size.X, 0, 0) | |
1281 | part_clone.CFrame = cframe * CFrame.new(0.5 * size.X, 0, 0) | |
1282 | part_clone.Parent = model | |
1283 | parts[2] = part_clone | |
1284 | end | |
1285 | if size.Y >= fragmentation_size then | |
1286 | size = Vector3.new(1, 0.5, 1) * size | |
1287 | for part_index = 1, #parts do | |
1288 | local part = parts[part_index] | |
1289 | local archivable = part.Archivable | |
1290 | local cframe = part.CFrame | |
1291 | part.FormFactor = "Custom" | |
1292 | part.Size = size | |
1293 | part.Archivable = true | |
1294 | local part_clone = part:Clone() | |
1295 | part.Archivable = archivable | |
1296 | part_clone.Archivable = archivable | |
1297 | part.CFrame = cframe * CFrame.new(0, -0.5 * size.Y, 0) | |
1298 | part_clone.CFrame = cframe * CFrame.new(0, 0.5 * size.Y, 0) | |
1299 | part_clone.Parent = model | |
1300 | table.insert(parts, part_clone) | |
1301 | end | |
1302 | end | |
1303 | if size.Z >= fragmentation_size then | |
1304 | size = Vector3.new(1, 1, 0.5) * size | |
1305 | for part_index = 1, #parts do | |
1306 | local part = parts[part_index] | |
1307 | local archivable = part.Archivable | |
1308 | local cframe = part.CFrame | |
1309 | part.FormFactor = "Custom" | |
1310 | part.Size = size | |
1311 | part.Archivable = true | |
1312 | local part_clone = part:Clone() | |
1313 | part.Archivable = archivable | |
1314 | part_clone.Archivable = archivable | |
1315 | part.CFrame = cframe * CFrame.new(0, 0, -0.5 * size.Z) | |
1316 | part_clone.CFrame = cframe * CFrame.new(0, 0, 0.5 * size.Z) | |
1317 | part_clone.Parent = model | |
1318 | table.insert(parts, part_clone) | |
1319 | end | |
1320 | end | |
1321 | for _, part in ipairs(parts) do | |
1322 | part:MakeJoints() | |
1323 | end | |
1324 | else | |
1325 | break | |
1326 | end | |
1327 | end | |
1328 | else | |
1329 | laser_distance = 9990 | |
1330 | break | |
1331 | end | |
1332 | end | |
1333 | end | |
1334 | end | |
1335 | local laser_cframe = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0) | |
1336 | local laser_width = LASER_WIDTH * opacity * laser_scale | |
1337 | local laser_mesh_offset = Vector3.new(0, 0.5 * laser_distance, 0) | |
1338 | laser_part.CFrame = laser_cframe | |
1339 | if laser_effects then | |
1340 | local laser_effect_data_1, laser_effect_data_2 = laser_effects[1], laser_effects[2] | |
1341 | local laser_effect_1, laser_effect_mesh_1 = laser_effect_data_1[1], laser_effect_data_1[2] | |
1342 | local laser_effect_2, laser_effect_mesh_2 = laser_effect_data_2[1], laser_effect_data_2[2] | |
1343 | laser_effect_1.CFrame = laser_cframe | |
1344 | laser_effect_2.CFrame = laser_cframe | |
1345 | laser_effect_mesh_1.Offset = laser_mesh_offset | |
1346 | laser_effect_mesh_2.Offset = laser_mesh_offset | |
1347 | local game_time = time() | |
1348 | local effect_scale_1 = 0.5 + 0.5 * math.sin(16 * math.pi * game_time) | |
1349 | local effect_scale_2 = 0.5 + 0.5 * math.cos(16 * math.pi * game_time) | |
1350 | laser_effect_mesh_1.Scale = 5 * Vector3.new(laser_width * effect_scale_1, laser_distance, laser_width * effect_scale_1) | |
1351 | laser_effect_mesh_2.Scale = 5 * Vector3.new(laser_width * effect_scale_2, laser_distance, laser_width * effect_scale_2) | |
1352 | laser_width = laser_width * 0.25 | |
1353 | end | |
1354 | laser_mesh.Offset = laser_mesh_offset | |
1355 | laser_mesh.Scale = 5 * Vector3.new(laser_width, laser_distance, laser_width) | |
1356 | magic_circle_part.CFrame = magic_circle_cframe | |
1357 | magic_circle_light.Brightness = opacity | |
1358 | magic_circle_decal_back.Transparency = transparency | |
1359 | magic_circle_decal_front.Transparency = transparency | |
1360 | if light_effects then | |
1361 | for index, data in ipairs(laser_lights) do | |
1362 | local laser_spotlight_part, laser_spotlight = data[1], data[2] | |
1363 | local laser_spotlight_offset = 30 * (index - 1) | |
1364 | if laser_spotlight_offset <= laser_distance then | |
1365 | laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -laser_spotlight_offset) | |
1366 | laser_spotlight.Brightness = opacity | |
1367 | laser_spotlight.Enabled = true | |
1368 | else | |
1369 | laser_spotlight.Enabled = false | |
1370 | end | |
1371 | end | |
1372 | end | |
1373 | end | |
1374 | end | |
1375 | function ShootLaserOfDeath(target, data) | |
1376 | data = data or {} | |
1377 | local brickcolor = data.brickcolor or BrickColor.new("Really black") | |
1378 | local duration = data.duration or 40 | |
1379 | local fragmentation_size = data.fragmentation_size or 3 | |
1380 | local laser_scale = data.laser_scale or 1 | |
1381 | local light_color = data.light_color or Color3.new(1, 0.5, 1) | |
1382 | local magic_circle_image = data.magic_circle_image or "rbxassetid://122610943" | |
1383 | local magic_circle_scale = data.magic_circle_scale or 1 | |
1384 | local sound_volume = data.sound_volume or 1 / 3 | |
1385 | local special_effects = data.special_effects | |
1386 | local stay = data.stay or 4 | |
1387 | local origin = Barrel.CFrame | |
1388 | local directionOrientation = origin:pointToObjectSpace(target) | |
1389 | local direction = (target - origin.p).unit | |
1390 | local magic_circle_position = origin.p + direction * LASER_MAGIC_CIRCLE_DISTANCE | |
1391 | local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) | |
1392 | local magic_circle_model = Instance.new("Model") | |
1393 | local laser_part = Instance.new("Part", magic_circle_model) | |
1394 | local laser_mesh = Instance.new("CylinderMesh", laser_part) | |
1395 | local magic_circle_part = Instance.new("Part", magic_circle_model) | |
1396 | local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part) | |
1397 | local magic_circle_light = Instance.new("PointLight", magic_circle_part) | |
1398 | local magic_circle_decal_back = Instance.new("Decal", magic_circle_part) | |
1399 | local magic_circle_decal_front = Instance.new("Decal", magic_circle_part) | |
1400 | local sound = Instance.new("Sound", magic_circle_part) | |
1401 | sound.Pitch = 0.9 | |
1402 | sound.SoundId = "rbxassetid://222371404" | |
1403 | sound.Volume = 1 | |
1404 | magic_circle_model.Archivable = false | |
1405 | laser_part.Anchored = true | |
1406 | laser_part.BottomSurface = "Smooth" | |
1407 | laser_part.BrickColor = brickcolor | |
1408 | laser_part.CanCollide = false | |
1409 | laser_part.CFrame = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0) | |
1410 | laser_part.FormFactor = "Custom" | |
1411 | laser_part.Locked = true | |
1412 | laser_part.Size = Vector3.new(0.2, 0.2, 0.2) | |
1413 | laser_part.TopSurface = "Smooth" | |
1414 | laser_mesh.Offset = Vector3.new(0, 0, 0) | |
1415 | laser_mesh.Name = "Mesh" | |
1416 | laser_mesh.Scale = 5 * laser_scale * Vector3.new(LASER_WIDTH, 0, LASER_WIDTH) | |
1417 | magic_circle_part.Anchored = true | |
1418 | magic_circle_part.BottomSurface = "Smooth" | |
1419 | magic_circle_part.CanCollide = false | |
1420 | magic_circle_part.CFrame = magic_circle_cframe | |
1421 | magic_circle_part.FormFactor = "Custom" | |
1422 | magic_circle_part.Locked = true | |
1423 | magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2) | |
1424 | magic_circle_part.TopSurface = "Smooth" | |
1425 | magic_circle_part.Transparency = 1 | |
1426 | magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale | |
1427 | magic_circle_light.Color = light_color | |
1428 | magic_circle_light.Range = 16 * magic_circle_scale | |
1429 | magic_circle_light.Shadows = true | |
1430 | magic_circle_decal_back.Face = "Back" | |
1431 | magic_circle_decal_back.Texture = magic_circle_image | |
1432 | magic_circle_decal_front.Face = "Front" | |
1433 | magic_circle_decal_front.Texture = magic_circle_image | |
1434 | magic_circle_model.Parent = workspace | |
1435 | local laser_color = brickcolor.Color | |
1436 | local laser_lights = {} | |
1437 | local light_effects = laser_color.r + laser_color.g + laser_color.b > 0.25 | |
1438 | if light_effects then | |
1439 | local laser_spotlight_part_template = Instance.new("Part") | |
1440 | local laser_spotlight_light_template = Instance.new("SpotLight", laser_spotlight_part_template) | |
1441 | laser_spotlight_part_template.Anchored = true | |
1442 | laser_spotlight_part_template.Anchored = true | |
1443 | laser_spotlight_part_template.BottomSurface = "Smooth" | |
1444 | laser_spotlight_part_template.CanCollide = false | |
1445 | laser_spotlight_part_template.FormFactor = "Custom" | |
1446 | laser_spotlight_part_template.Locked = true | |
1447 | laser_spotlight_part_template.Size = Vector3.new(0.2, 0.2, 0.2) | |
1448 | laser_spotlight_part_template.TopSurface = "Smooth" | |
1449 | laser_spotlight_part_template.Transparency = 1 | |
1450 | laser_spotlight_light_template.Angle = 45 | |
1451 | laser_spotlight_light_template.Color = laser_color | |
1452 | laser_spotlight_light_template.Enabled = true | |
1453 | laser_spotlight_light_template.Name = "Light" | |
1454 | laser_spotlight_light_template.Range = 60 | |
1455 | for index = 1, 40 do | |
1456 | local laser_spotlight_part = laser_spotlight_part_template:Clone() | |
1457 | laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -30 * (index - 1)) | |
1458 | laser_spotlight_part.Parent = magic_circle_model | |
1459 | laser_lights[index] = {laser_spotlight_part, laser_spotlight_part.Light} | |
1460 | end | |
1461 | end | |
1462 | local laser_effects | |
1463 | if special_effects then | |
1464 | laser_effects = {} | |
1465 | local laser_effect_1 = laser_part:Clone() | |
1466 | laser_effect_1.BrickColor = special_effects | |
1467 | laser_effect_1.Transparency = 0.5 | |
1468 | local laser_effect_2 = laser_effect_1:Clone() | |
1469 | laser_effects[1], laser_effects[2] = {laser_effect_1, laser_effect_1.Mesh}, {laser_effect_2, laser_effect_2.Mesh} | |
1470 | laser_effect_1.Parent = magic_circle_model | |
1471 | laser_effect_2.Parent = magic_circle_model | |
1472 | end | |
1473 | laser_data={0, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part, | |
1474 | ||
1475 | magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay, | |
1476 | ||
1477 | light_effects} | |
1478 | end | |
1479 | ||
1480 | function laser(target) | |
1481 | ShootLaserOfDeath(target, {brickcolor = BrickColor.new("New Yeller"), duration = 20, fragmentation_size = 10, | |
1482 | ||
1483 | laser_scale = 3, light_color = Color3.new(1, 0.5, 0), magic_circle_image = "rbxassetid://1", magic_circle_scale = 1.5, sound_volume = 1, | |
1484 | ||
1485 | special_effects = BrickColor.new("Deep orange"), stay = 2}) | |
1486 | end | |
1487 | ||
1488 | function LaserAtMouse() | |
1489 | laser(mouse.Hit.p) | |
1490 | end | |
1491 | ||
1492 | mouse.Button1Down:connect(function() | |
1493 | pcall(function() | |
1494 | shoot() | |
1495 | end) | |
1496 | end) | |
1497 | ||
1498 | ready=false | |
1499 | ||
1500 | mouse.KeyDown:connect(function(k) | |
1501 | k=k:lower() | |
1502 | if k=='f' then | |
1503 | if ready==false then | |
1504 | ready=true | |
1505 | attack=true | |
1506 | elseif ready==true then | |
1507 | ready=false | |
1508 | attack=false | |
1509 | end | |
1510 | elseif k=='q' and attack==false then | |
1511 | Melee() | |
1512 | end | |
1513 | end) | |
1514 | ||
1515 | function Melee() | |
1516 | attack = true | |
1517 | con1=Hitbox.Touched:connect(function(hit) Damagefunc(hit,50,100,math.random(10,15),"Normal",RootPart,.2,1) end) | |
1518 | for i=0,3,0.3 do | |
1519 | swait() | |
1520 | LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(5),math.rad(25),math.rad(-20)),.3) | |
1521 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(160),math.rad(0),math.rad(0)),.3) | |
1522 | ||
1523 | end | |
1524 | so("http://www.roblox.com/asset/?id=200632136",Hitbox,1,0.8) | |
1525 | for i=0,3,0.3 do | |
1526 | swait() | |
1527 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3) | |
1528 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(-150),math.rad(0),math.rad(0)),.3) | |
1529 | end | |
1530 | attack=false | |
1531 | con1:disconnect() | |
1532 | end | |
1533 | ||
1534 | function shoot() | |
1535 | if attack==true and ready==true then | |
1536 | ready=false | |
1537 | attack=true | |
1538 | LaserAtMouse() | |
1539 | for i=0,3,0.3 do | |
1540 | swait() | |
1541 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3) | |
1542 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(-30),math.rad(0),math.rad(0)),.3) | |
1543 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(120),math.rad(0),math.rad(0)),.3) | |
1544 | LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(180),math.rad(0),math.rad(40)),.3) | |
1545 | Torso.Velocity=Head.CFrame.lookVector*-100 | |
1546 | end | |
1547 | attack=false | |
1548 | end | |
1549 | end | |
1550 | ||
1551 | local sine = 0 | |
1552 | local change = 1 | |
1553 | local val = 0 | |
1554 | ||
1555 | while true do | |
1556 | swait() | |
1557 | sine = sine + change | |
1558 | local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude | |
1559 | local velderp=RootPart.Velocity.y | |
1560 | hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character) | |
1561 | if equipped==true or equipped==false then | |
1562 | if attack==false then | |
1563 | idle=idle+1 | |
1564 | else | |
1565 | idle=0 | |
1566 | end | |
1567 | if idle>=500 then | |
1568 | if attack==false then | |
1569 | --Sheath() | |
1570 | end | |
1571 | end | |
1572 | if RootPart.Velocity.y > 1 and hitfloor==nil then | |
1573 | Anim="Jump" | |
1574 | if attack==false then | |
1575 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1576 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(-20),math.rad(0),math.rad(0)),.3) | |
1577 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3) | |
1578 | end | |
1579 | elseif RootPart.Velocity.y < -1 and hitfloor==nil then | |
1580 | Anim="Fall" | |
1581 | if attack==false then | |
1582 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1583 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(10),math.rad(0),math.rad(0)),.3) | |
1584 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3) | |
1585 | end | |
1586 | elseif torvel<1 and hitfloor~=nil then | |
1587 | Anim="Idle" | |
1588 | if attack==false then | |
1589 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1590 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1591 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1592 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3) | |
1593 | LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3) | |
1594 | end | |
1595 | elseif torvel>2 and torvel<22 and hitfloor~=nil then | |
1596 | Anim="Walk" | |
1597 | if attack==false then | |
1598 | change=3 | |
1599 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1600 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3) | |
1601 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3) | |
1602 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3) | |
1603 | LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3) | |
1604 | end | |
1605 | elseif torvel>=22 and hitfloor~=nil then | |
1606 | Anim="Run" | |
1607 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1608 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3) | |
1609 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3) | |
1610 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(60),math.rad(0),math.rad(0)),.3) | |
1611 | LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(120),math.rad(0),math.rad(40)),.3) | |
1612 | if attack==false then | |
1613 | end | |
1614 | end | |
1615 | end | |
1616 | if ready==true then | |
1617 | handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1618 | RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1619 | Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(0)),.3) | |
1620 | RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(90),math.rad(0),math.rad(0)),.3) | |
1621 | LW.C0=clerp(LW.C0,cf(-0,0.5,-.7)*angles(math.rad(160),math.rad(0),math.rad(40)),.3) | |
1622 | end | |
1623 | pcall(function() | |
1624 | AnimateLaserOfDeath(laser_data) | |
1625 | end) | |
1626 | end |