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.Players.localPlayer |
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 | wait(0.016666666666667) | |
153 | Effects = {} | |
154 | local Player = owner | |
155 | local Character = Player.Character | |
156 | local Humanoid = Character.Humanoid | |
157 | local mouse = Player:GetMouse() | |
158 | local m = Instance.new("Model", Character) | |
159 | m.Name = "WeaponModel" | |
160 | local LeftArm = Character["Left Arm"] | |
161 | local RightArm = Character["Right Arm"] | |
162 | local LeftLeg = Character["Left Leg"] | |
163 | local RightLeg = Character["Right Leg"] | |
164 | local Head = Character.Head | |
165 | local Torso = Character.Torso | |
166 | local cam = game.Workspace.CurrentCamera | |
167 | local RootPart = Character.HumanoidRootPart | |
168 | local RootJoint = RootPart.RootJoint | |
169 | local equipped = false | |
170 | local attack = false | |
171 | local Anim = "Idle" | |
172 | local idle = 0 | |
173 | local attacktype = 1 | |
174 | local Torsovelocity = RootPart.Velocity * Vector3.new(1, 0, 1).magnitude | |
175 | local velocity = RootPart.Velocity.y | |
176 | local sine = 0 | |
177 | local change = 1 | |
178 | local grabbed = false | |
179 | local cf = CFrame.new | |
180 | local mr = math.rad | |
181 | local angles = CFrame.Angles | |
182 | local ud = UDim2.new | |
183 | local vt = Vector3.new | |
184 | local c3 = Color3.new | |
185 | local mana = 0 | |
186 | local mananum = 0 | |
187 | local it = Instance.new | |
188 | local NeckCF = cf(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0) | |
189 | local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14) | |
190 | local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0) | |
191 | local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0) | |
192 | xenabled = true | |
193 | cenabled = true | |
194 | venabled = true | |
195 | zenabled = true | |
196 | RSH = nil | |
197 | RW = Instance.new("Weld") | |
198 | LW = Instance.new("Weld") | |
199 | RH = Torso["Right Hip"] | |
200 | LH = Torso["Left Hip"] | |
201 | RSH = Torso["Right Shoulder"] | |
202 | LSH = Torso["Left Shoulder"] | |
203 | RSH.Parent = nil | |
204 | LSH.Parent = nil | |
205 | RW.Name = "RW" | |
206 | RW.Part0 = Torso | |
207 | RW.C0 = cf(1.5, 0.5, 0) | |
208 | RW.C1 = cf(0, 0.5, 0) | |
209 | RW.Part1 = RightArm | |
210 | RW.Parent = Torso | |
211 | LW.Name = "LW" | |
212 | LW.Part0 = Torso | |
213 | LW.C0 = cf(-1.5, 0.5, 0) | |
214 | LW.C1 = cf(0, 0.5, 0) | |
215 | LW.Part1 = LeftArm | |
216 | LW.Parent = Torso | |
217 | clerp = function(a, b, t) | |
218 | return a:lerp(b, t) | |
219 | end | |
220 | ||
221 | ||
222 | ---------------------------------------------------- | |
223 | z = Instance.new("Sound", Character) | |
224 | z.SoundId = "rbxassetid://428255459"-- | |
225 | z.Looped = true | |
226 | z.Pitch = 1 | |
227 | z.Volume = 1 | |
228 | wait(.1) | |
229 | z:Play() | |
230 | ---------------------------------------------------- | |
231 | ||
232 | ArtificialHB = Instance.new("BindableEvent", script) | |
233 | ArtificialHB.Name = "Heartbeat" | |
234 | script:WaitForChild("Heartbeat") | |
235 | frame = 0.016666666666667 | |
236 | tf = 0 | |
237 | allowframeloss = false | |
238 | tossremainder = false | |
239 | lastframe = tick() | |
240 | script.Heartbeat:Fire() | |
241 | game:GetService("RunService").Heartbeat:connect(function(s, p) | |
242 | tf = tf + s | |
243 | if frame <= tf then | |
244 | if allowframeloss then | |
245 | script.Heartbeat:Fire() | |
246 | lastframe = tick() | |
247 | else | |
248 | for i = 1, math.floor(tf / frame) do | |
249 | script.Heartbeat:Fire() | |
250 | end | |
251 | lastframe = tick() | |
252 | end | |
253 | if tossremainder then | |
254 | tf = 0 | |
255 | else | |
256 | tf = tf - frame * math.floor(tf / frame) | |
257 | end | |
258 | end | |
259 | end | |
260 | ) | |
261 | swait = function(num) | |
262 | if num == 0 or num == nil then | |
263 | ArtificialHB.Event:wait() | |
264 | else | |
265 | for i = 0, num do | |
266 | ArtificialHB.Event:wait() | |
267 | end | |
268 | end | |
269 | end | |
270 | ||
271 | ||
272 | ||
273 | ||
274 | ||
275 | ||
276 | Magik = function(part) | |
277 | Spawn(function() | |
278 | local function lerp(a,b,c) | |
279 | return a+(b-a)*c | |
280 | end | |
281 | local function rndRange(rng) | |
282 | return math.random(-rng*1000,rng*1000)/1000 | |
283 | end | |
284 | local magik = Instance.new("Part", part) | |
285 | magik.Anchored = true | |
286 | magik.Locked = true | |
287 | magik.Material = "Neon" | |
288 | magik.FormFactor = "Custom" | |
289 | magik.Size = Vector3.new(1.2, 1.2, 1.2) | |
290 | magik.TopSurface = "Smooth" | |
291 | magik.BottomSurface = "Smooth" | |
292 | magik.Transparency = 0 | |
293 | magik.CanCollide = false | |
294 | ||
295 | magik.BrickColor = BrickColor.new("Royal purple") | |
296 | ||
297 | local mr = math.rad | |
298 | local rnx,rny,rnz = mr(rndRange(180)),mr(rndRange(180)),mr(rndRange(180)) | |
299 | local cf = part.CFrame * CFrame.new(0, -.8, 0) * CFrame.Angles(rnx,rny,rnz) | |
300 | magik.CFrame = cf | |
301 | for i = 0, 1, .05 do | |
302 | local newTrans = lerp(.8, 1, i) | |
303 | local ns = lerp(1,1.2,i) | |
304 | magik.Transparency = newTrans | |
305 | magik.Size = Vector3.new(ns,ns,ns) | |
306 | magik.CFrame = cf | |
307 | wait() | |
308 | end | |
309 | magik:Destroy() | |
310 | wait() | |
311 | end) | |
312 | end | |
313 | ---------------------------------------------------- | |
314 | Magik2 = function(part) | |
315 | Spawn(function() | |
316 | local function lerp(a,b,c) | |
317 | return a+(b-a)*c | |
318 | end | |
319 | local function rndRange(rng) | |
320 | return math.random(-rng*1000,rng*1000)/1000 | |
321 | end | |
322 | local magik2 = Instance.new("Part",part) | |
323 | magik2.Anchored = true | |
324 | magik2.Locked = true | |
325 | magik2.FormFactor = "Custom" | |
326 | magik2.Size = Vector3.new(1.2, 1.2, 1.2) | |
327 | magik2.TopSurface = "Smooth" | |
328 | magik2.BottomSurface = "Smooth" | |
329 | magik2.Transparency = 0 | |
330 | magik2.Material = "Neon" | |
331 | magik2.CanCollide = false | |
332 | ||
333 | ||
334 | magik2.BrickColor = BrickColor.new("Really black") | |
335 | ||
336 | ||
337 | local mr = math.rad | |
338 | local rnx,rny,rnz = mr(rndRange(180)),mr(rndRange(180)),mr(rndRange(180)) | |
339 | local cf = part.CFrame * CFrame.new(0, -.8, 0) * CFrame.Angles(rnx,rny,rnz) | |
340 | magik2.CFrame = cf | |
341 | for i = 0, 1, .05 do | |
342 | local newTrans = lerp(.8, 1, i) | |
343 | local ns = lerp(1,1.2,i) | |
344 | magik2.Transparency = newTrans | |
345 | magik2.Size = Vector3.new(ns,ns,ns) | |
346 | magik2.CFrame = cf | |
347 | wait() | |
348 | end | |
349 | magik2:Destroy() | |
350 | end) | |
351 | end | |
352 | ||
353 | ||
354 | ||
355 | Spawn(function() | |
356 | while wait(.1) do | |
357 | Magik(RightArm) | |
358 | end | |
359 | end) | |
360 | ||
361 | Spawn(function() | |
362 | while wait(.1) do | |
363 | Magik2(RightArm) | |
364 | end | |
365 | end) | |
366 | ||
367 | ||
368 | ||
369 | ||
370 | ||
371 | ||
372 | ||
373 | ||
374 | FloatPart = function() | |
375 | local Part = Instance.new('Part',Torso) | |
376 | Part.CFrame = CFrame.new(Torso.CFrame.X,workspace.Base.CFrame.Y+1,Torso.CFrame.Z) * CFrame.fromEulerAnglesXYZ(86.4,0,87) | |
377 | Part.Anchored = true | |
378 | Part.Material = 'Neon' | |
379 | Part.CanCollide = false | |
380 | Part.BrickColor = BrickColor.new(PrimaryColor) | |
381 | local Mesh = Instance.new('SpecialMesh',Part) | |
382 | Mesh.Scale = Vector3.new(4,4,.2) | |
383 | Mesh.MeshId = 'http://www.roblox.com/asset/?id=3270017' | |
384 | Mesh.VertexColor = Vector3.new(0,170,255) | |
385 | spawn(function() | |
386 | for i = 1,30 do | |
387 | Mesh.Scale = Mesh.Scale + Vector3.new(.04,.04,0) | |
388 | Part.Transparency = Part.Transparency + .035 | |
389 | game["Run Service"].RenderStepped:wait() | |
390 | end | |
391 | Part:Destroy() | |
392 | end) | |
393 | end; | |
394 | ||
395 | DubPart = function() | |
396 | local Part = Instance.new('Part',Torso) | |
397 | Part.CFrame = CFrame.new(Torso.CFrame.X,workspace.Base.CFrame.Y+1,Torso.CFrame.Z) * CFrame.fromEulerAnglesXYZ(86.4,0,87) | |
398 | Part.Anchored = true | |
399 | Part.CanCollide = false | |
400 | Part.Material = 'Neon' | |
401 | Part.BrickColor = BrickColor.new(SecondaryColor) | |
402 | local Mesh = Instance.new('SpecialMesh',Part) | |
403 | Mesh.Scale = Vector3.new(7,7,.2) | |
404 | Mesh.MeshId = 'http://www.roblox.com/asset/?id=3270017' | |
405 | Mesh.VertexColor = Vector3.new(0,170,255) | |
406 | spawn(function() | |
407 | for i = 1,30 do | |
408 | Mesh.Scale = Mesh.Scale + Vector3.new(.04,.04,0) | |
409 | Part.Transparency = Part.Transparency + .035 | |
410 | game["Run Service"].RenderStepped:wait() | |
411 | end | |
412 | Part:Destroy() | |
413 | end) | |
414 | end; | |
415 | ||
416 | Fade = function(Item,t) | |
417 | spawn(function() | |
418 | for i = 1,20 do | |
419 | Item.Transparency = Item.Transparency + .05 | |
420 | if t then | |
421 | wait(t) | |
422 | else | |
423 | wait() | |
424 | end | |
425 | end | |
426 | Item:Destroy() | |
427 | end) | |
428 | end | |
429 | ||
430 | Particle = function(PrimaryColor) | |
431 | local Part = Instance.new('Part',Torso) | |
432 | Part.BrickColor = BrickColor.new(PrimaryColor) | |
433 | Part.Anchored = true | |
434 | Part.Transparency = .3 | |
435 | Part.CanCollide = false | |
436 | Part.CFrame = Torso.CFrame * CFrame.new(math.random(-10,10),math.random(-15,15),math.random(-10,10)) * CFrame.fromEulerAnglesXYZ(math.random(),math.random(),math.random()) | |
437 | local Mesh = Instance.new('BlockMesh',Part) | |
438 | Mesh.Scale = Vector3.new(.05,.1,.1) | |
439 | spawn(function() | |
440 | for i = 1,40 do | |
441 | Part.Transparency = Part.Transparency + .0125 | |
442 | Part.CFrame = Part.CFrame * CFrame.new(0,-.07,0) | |
443 | game["Run Service"].RenderStepped:wait() | |
444 | end | |
445 | Part:Destroy() | |
446 | end) | |
447 | end; | |
448 | ||
449 | --[[spawn(function() | |
450 | while wait() do | |
451 | wait(.05) | |
452 | FloatPart() | |
453 | wait(.08) | |
454 | FloatPart() | |
455 | wait(.05) | |
456 | DubPart() | |
457 | wait(.08) | |
458 | end | |
459 | end)]] | |
460 | ||
461 | game["Run Service"].RenderStepped:connect(function(_) | |
462 | Particle("Royal purple") | |
463 | Particle("Really black") | |
464 | --Character['HumanoidRootPart'].C1 = Character['HumanoidRootPart'].C1 * CFrame.new(0,Height+math.sin(tick())/150,0) | |
465 | end) | |
466 | ||
467 | ||
468 | ||
469 | particle = function(parent, col1, col2, lightemis, size, texture, transparency, zoffset, accel, drag, ltp, velinher, emisdir, enabled, lifetime, rate, rotation, rotspeed, speed, velspread) | |
470 | local fp = it("ParticleEmitter") | |
471 | fp.Parent = parent | |
472 | fp.Color = cs(col1, col2) | |
473 | fp.LightEmission = lightemis | |
474 | fp.Size = size | |
475 | fp.Texture = texture | |
476 | fp.Transparency = transparency | |
477 | fp.ZOffset = zoffset | |
478 | fp.Acceleration = accel | |
479 | fp.Drag = drag | |
480 | fp.LockedToPart = ltp | |
481 | fp.VelocityInheritance = velinher | |
482 | fp.EmissionDirection = emisdir | |
483 | fp.Enabled = enabled | |
484 | fp.Lifetime = lifetime | |
485 | fp.Rate = rate | |
486 | fp.Rotation = rotation | |
487 | fp.RotSpeed = rotspeed | |
488 | fp.Speed = speed | |
489 | fp.VelocitySpread = velspread | |
490 | return fp | |
491 | end | |
492 | ||
493 | ||
494 | ||
495 | ||
496 | local fengui = it("GuiMain") | |
497 | fengui.Parent = Player.PlayerGui | |
498 | fengui.Name = "WeaponGUI" | |
499 | local fenframe1 = it("TextLabel") | |
500 | fenframe1.Parent = fengui | |
501 | fenframe1.BackgroundColor3 = Color3.new(0.19607843137255, 0.19607843137255, 0.19607843137255) | |
502 | fenframe1.BackgroundTransparency = 0.3 | |
503 | fenframe1.BorderSizePixel = 5 | |
504 | fenframe1.BorderColor3 = Color3.new(1, 1, 1) | |
505 | fenframe1.Size = UDim2.new(0.05, 0, 0.1, 0) | |
506 | fenframe1.Position = UDim2.new(0.325, 0, 0.7, 0) | |
507 | fenframe1.Text = "Z" | |
508 | fenframe1.TextWrapped = true | |
509 | fenframe1.FontSize = 7 | |
510 | fenframe1.TextColor3 = Color3.new(1, 1, 1) | |
511 | local fenframe1a = it("TextLabel") | |
512 | fenframe1a.Parent = fengui | |
513 | fenframe1a.BackgroundColor3 = Color3.new(0.7843137254902, 0.7843137254902, 0.7843137254902) | |
514 | fenframe1a.BackgroundTransparency = 0.3 | |
515 | fenframe1a.BorderSizePixel = 5 | |
516 | fenframe1a.BorderColor3 = Color3.new(1, 1, 1) | |
517 | fenframe1a.Size = UDim2.new(0.05, 0, 0.1, 0) | |
518 | fenframe1a.Position = UDim2.new(0.325, 0, 0.7, 0) | |
519 | fenframe1a.Text = "" | |
520 | local fenframe2 = it("TextLabel") | |
521 | fenframe2.Parent = fengui | |
522 | fenframe2.BackgroundColor3 = Color3.new(0.19607843137255, 0.19607843137255, 0.19607843137255) | |
523 | fenframe2.BackgroundTransparency = 0.3 | |
524 | fenframe2.BorderSizePixel = 5 | |
525 | fenframe2.BorderColor3 = Color3.new(1, 1, 1) | |
526 | fenframe2.Size = UDim2.new(0.05, 0, 0.1, 0) | |
527 | fenframe2.Position = UDim2.new(0.425, 0, 0.7, 0) | |
528 | fenframe2.Text = "X" | |
529 | fenframe2.TextWrapped = true | |
530 | fenframe2.FontSize = 7 | |
531 | fenframe2.TextColor3 = Color3.new(1, 1, 1) | |
532 | local fenframe2a = it("TextLabel") | |
533 | fenframe2a.Parent = fengui | |
534 | fenframe2a.BackgroundColor3 = Color3.new(0.7843137254902, 0.7843137254902, 0.7843137254902) | |
535 | fenframe2a.BackgroundTransparency = 0.3 | |
536 | fenframe2a.BorderSizePixel = 5 | |
537 | fenframe2a.BorderColor3 = Color3.new(1, 1, 1) | |
538 | fenframe2a.Size = UDim2.new(0.05, 0, 0.1, 0) | |
539 | fenframe2a.Position = UDim2.new(0.425, 0, 0.7, 0) | |
540 | fenframe2a.Text = "" | |
541 | local fenframe3 = it("TextLabel") | |
542 | fenframe3.Parent = fengui | |
543 | fenframe3.BackgroundColor3 = Color3.new(0.19607843137255, 0.19607843137255, 0.19607843137255) | |
544 | fenframe3.BackgroundTransparency = 0.3 | |
545 | fenframe3.BorderSizePixel = 5 | |
546 | fenframe3.BorderColor3 = Color3.new(1, 1, 1) | |
547 | fenframe3.Size = UDim2.new(0.05, 0, 0.1, 0) | |
548 | fenframe3.Position = UDim2.new(0.525, 0, 0.7, 0) | |
549 | fenframe3.Text = "C" | |
550 | fenframe3.TextWrapped = true | |
551 | fenframe3.FontSize = 7 | |
552 | fenframe3.TextColor3 = Color3.new(1, 1, 1) | |
553 | local fenframe3a = it("TextLabel") | |
554 | fenframe3a.Parent = fengui | |
555 | fenframe3a.BackgroundColor3 = Color3.new(0.7843137254902, 0.7843137254902, 0.7843137254902) | |
556 | fenframe3a.BackgroundTransparency = 0.3 | |
557 | fenframe3a.BorderSizePixel = 5 | |
558 | fenframe3a.BorderColor3 = Color3.new(1, 1, 1) | |
559 | fenframe3a.Size = UDim2.new(0.05, 0, 0.1, 0) | |
560 | fenframe3a.Position = UDim2.new(0.525, 0, 0.7, 0) | |
561 | fenframe3a.Text = "" | |
562 | local fenframe4 = it("TextLabel") | |
563 | fenframe4.Parent = fengui | |
564 | fenframe4.BackgroundColor3 = Color3.new(0.19607843137255, 0.19607843137255, 0.19607843137255) | |
565 | fenframe4.BackgroundTransparency = 0.3 | |
566 | fenframe4.BorderSizePixel = 5 | |
567 | fenframe4.BorderColor3 = Color3.new(1, 1, 1) | |
568 | fenframe4.Size = UDim2.new(0.05, 0, 0.1, 0) | |
569 | fenframe4.Position = UDim2.new(0.625, 0, 0.7, 0) | |
570 | fenframe4.Text = "V" | |
571 | fenframe4.TextWrapped = true | |
572 | fenframe4.FontSize = 7 | |
573 | fenframe4.TextColor3 = Color3.new(1, 1, 1) | |
574 | local fenframe4a = it("TextLabel") | |
575 | fenframe4a.Parent = fengui | |
576 | fenframe4a.BackgroundColor3 = Color3.new(0.7843137254902, 0.7843137254902, 0.7843137254902) | |
577 | fenframe4a.BackgroundTransparency = 0.3 | |
578 | fenframe4a.BorderSizePixel = 5 | |
579 | fenframe4a.BorderColor3 = Color3.new(1, 1, 1) | |
580 | fenframe4a.Size = UDim2.new(0.05, 0, 0.1, 0) | |
581 | fenframe4a.Position = UDim2.new(0.625, 0, 0.7, 0) | |
582 | fenframe4a.Text = "" | |
583 | fenframe1a.Size = UDim2.new(0, 0, 0.1, 0) | |
584 | fenframe2a.Size = UDim2.new(0, 0, 0.1, 0) | |
585 | fenframe3a.Size = UDim2.new(0, 0, 0.1, 0) | |
586 | fenframe4a.Size = UDim2.new(0, 0, 0.1, 0) | |
587 | local RbxUtility = LoadLibrary("RbxUtility") | |
588 | local Create = RbxUtility.Create | |
589 | RemoveOutlines = function(part) | |
590 | part.TopSurface = 10 | |
591 | end | |
592 | ||
593 | CreatePart = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size) | |
594 | local Part = Create("Part")({Parent = Parent, Reflectance = Reflectance, Transparency = Transparency, CanCollide = false, Locked = true, BrickColor = BrickColor.new(tostring(BColor)), Name = Name, Size = Size, Material = Material}) | |
595 | RemoveOutlines(Part) | |
596 | return Part | |
597 | end | |
598 | ||
599 | CreateMesh = function(Mesh, Part, MeshType, MeshId, OffSet, Scale) | |
600 | local Msh = Create(Mesh)({Parent = Part, Offset = OffSet, Scale = Scale}) | |
601 | if Mesh == "SpecialMesh" then | |
602 | Msh.MeshType = MeshType | |
603 | Msh.MeshId = MeshId | |
604 | end | |
605 | return Msh | |
606 | end | |
607 | ||
608 | CreateWeld = function(Parent, Part0, Part1, C0, C1) | |
609 | local Weld = Create("Weld")({Parent = Parent, Part0 = Part0, Part1 = Part1, C0 = C0, C1 = C1}) | |
610 | return Weld | |
611 | end | |
612 | ||
613 | Damagefunc = function(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch) | |
614 | if hit.Parent == nil then | |
615 | return | |
616 | end | |
617 | local h = hit.Parent:FindFirstChild("Humanoid") | |
618 | for _,v in pairs(hit.Parent:children()) do | |
619 | if v:IsA("Humanoid") then | |
620 | h = v | |
621 | end | |
622 | end | |
623 | if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then | |
624 | if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then | |
625 | return | |
626 | end | |
627 | local c = Create("ObjectValue")({Name = "creator", Value = game:service("Players").LocalPlayer, Parent = h}) | |
628 | game:GetService("Debris"):AddItem(c, 0.5) | |
629 | if HitSound ~= nil and HitPitch ~= nil then | |
630 | CreateSound(HitSound, hit, 1, HitPitch) | |
631 | end | |
632 | local Damage = math.random(minim, maxim) | |
633 | local blocked = false | |
634 | local block = hit.Parent:findFirstChild("Block") | |
635 | if block ~= nil and block.className == "IntValue" and block.Value > 0 then | |
636 | blocked = true | |
637 | block.Value = block.Value - 1 | |
638 | print(block.Value) | |
639 | end | |
640 | if blocked == false then | |
641 | HitHealth = h.Health | |
642 | h.Health = h.Health - Damage | |
643 | if mana < 100 then | |
644 | mana = mana + math.random(5, 10) | |
645 | end | |
646 | if mana > 100 then | |
647 | mana = 100 | |
648 | end | |
649 | if HitHealth ~= h.Health and HitHealth ~= 0 and h.Health <= 0 and h.Parent.Name ~= "Lost Soul" then | |
650 | end | |
651 | ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, Part.BrickColor.Color) | |
652 | else | |
653 | h.Health = h.Health - Damage / 2 | |
654 | ShowDamage(Part.CFrame * CFrame.new(0, 0, Part.Size.Z / 2).p + Vector3.new(0, 1.5, 0), -Damage, 1.5, Part.BrickColor.Color) | |
655 | end | |
656 | if Type == "Knockdown" then | |
657 | local hum = hit.Parent.Humanoid | |
658 | hum.PlatformStand = true | |
659 | coroutine.resume(coroutine.create(function(HHumanoid) | |
660 | swait(1) | |
661 | HHumanoid.PlatformStand = false | |
662 | end | |
663 | ), hum) | |
664 | local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit | |
665 | local bodvol = Create("BodyVelocity")({velocity = angle * knockback, P = 5000, maxForce = Vector3.new(8000, 8000, 8000), Parent = hit}) | |
666 | local rl = Create("BodyAngularVelocity")({P = 3000, maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000, angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)), Parent = hit}) | |
667 | game:GetService("Debris"):AddItem(bodvol, 0.5) | |
668 | game:GetService("Debris"):AddItem(rl, 0.5) | |
669 | else | |
670 | do | |
671 | if Type == "Normal" then | |
672 | local vp = Create("BodyVelocity")({P = 500, maxForce = Vector3.new(math.huge, 0, math.huge), velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05}) | |
673 | if knockback > 0 then | |
674 | vp.Parent = hit.Parent.Torso | |
675 | end | |
676 | game:GetService("Debris"):AddItem(vp, 0.5) | |
677 | else | |
678 | do | |
679 | if Type == "Up" then | |
680 | local bodyVelocity = Create("BodyVelocity")({velocity = vt(0, 20, 0), P = 5000, maxForce = Vector3.new(8000, 8000, 8000), Parent = hit}) | |
681 | game:GetService("Debris"):AddItem(bodyVelocity, 0.5) | |
682 | else | |
683 | do | |
684 | if Type == "DarkUp" then | |
685 | coroutine.resume(coroutine.create(function() | |
686 | for i = 0, 1, 0.1 do | |
687 | swait() | |
688 | BlockEffect(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, 0.08, 1) | |
689 | end | |
690 | end | |
691 | )) | |
692 | local bodyVelocity = Create("BodyVelocity")({velocity = vt(0, 20, 0), P = 5000, maxForce = Vector3.new(8000, 8000, 8000), Parent = hit}) | |
693 | game:GetService("Debris"):AddItem(bodyVelocity, 1) | |
694 | else | |
695 | do | |
696 | if Type == "Snare" then | |
697 | local bp = Create("BodyPosition")({P = 2000, D = 100, maxForce = Vector3.new(math.huge, math.huge, math.huge), position = hit.Parent.Torso.Position, Parent = hit.Parent.Torso}) | |
698 | game:GetService("Debris"):AddItem(bp, 1) | |
699 | else | |
700 | do | |
701 | if Type == "Freeze" then | |
702 | local BodPos = Create("BodyPosition")({P = 50000, D = 1000, maxForce = Vector3.new(math.huge, math.huge, math.huge), position = hit.Parent.Torso.Position, Parent = hit.Parent.Torso}) | |
703 | local BodGy = Create("BodyGyro")({maxTorque = Vector3.new(400000, 400000, 400000) * math.huge, P = 20000, Parent = hit.Parent.Torso, cframe = hit.Parent.Torso.CFrame}) | |
704 | hit.Parent.Torso.Anchored = true | |
705 | coroutine.resume(coroutine.create(function(Part) | |
706 | swait(1.5) | |
707 | Part.Anchored = false | |
708 | end | |
709 | ), hit.Parent.Torso) | |
710 | game:GetService("Debris"):AddItem(BodPos, 3) | |
711 | game:GetService("Debris"):AddItem(BodGy, 3) | |
712 | end | |
713 | do | |
714 | local debounce = Create("BoolValue")({Name = "DebounceHit", Parent = hit.Parent, Value = true}) | |
715 | game:GetService("Debris"):AddItem(debounce, Delay) | |
716 | c = Instance.new("ObjectValue") | |
717 | c.Name = "creator" | |
718 | c.Value = Player | |
719 | c.Parent = h | |
720 | game:GetService("Debris"):AddItem(c, 0.5) | |
721 | end | |
722 | end | |
723 | end | |
724 | end | |
725 | end | |
726 | end | |
727 | end | |
728 | end | |
729 | end | |
730 | end | |
731 | end | |
732 | end | |
733 | end | |
734 | ||
735 | ShowDamage = function(Pos, Text, Time, Color) | |
736 | local Rate = 0.033333333333333 | |
737 | if not Pos then | |
738 | local Pos = Vector3.new(0, 0, 0) | |
739 | end | |
740 | local Text = Text or "" | |
741 | local Time = Time or 2 | |
742 | if not Color then | |
743 | local Color = Color3.new(1, 0, 1) | |
744 | end | |
745 | local EffectPart = CreatePart(workspace, "Marble", 0, 1, BrickColor.new(Color), "Effect", vt(0, 0, 0)) | |
746 | EffectPart.Anchored = true | |
747 | local BillboardGui = Create("BillboardGui")({Size = UDim2.new(3, 0, 3, 0), Adornee = EffectPart, Parent = EffectPart}) | |
748 | local TextLabel = Create("TextLabel")({BackgroundTransparency = 1, Size = UDim2.new(1, 0, 1, 0), Text = Text, TextColor3 = Color, TextScaled = true, Font = Enum.Font.ArialBold, Parent = BillboardGui}) | |
749 | game.Debris:AddItem(EffectPart, Time + 0.1) | |
750 | EffectPart.Parent = game:GetService("Workspace") | |
751 | delay(0, function() | |
752 | local Frames = Time / Rate | |
753 | for Frame = 1, Frames do | |
754 | wait(Rate) | |
755 | local Percent = Frame / Frames | |
756 | EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0) | |
757 | TextLabel.TextTransparency = Percent | |
758 | end | |
759 | if EffectPart and EffectPart.Parent then | |
760 | EffectPart:Destroy() | |
761 | end | |
762 | end | |
763 | ) | |
764 | end | |
765 | ||
766 | MagniDamage = function(Part, magni, mindam, maxdam, knock, Type) | |
767 | for _,c in pairs(workspace:children()) do | |
768 | local hum = c:findFirstChild("Humanoid") | |
769 | if hum ~= nil then | |
770 | local head = c:findFirstChild("Torso") | |
771 | if head ~= nil then | |
772 | local targ = head.Position - Part.Position | |
773 | local mag = targ.magnitude | |
774 | if mag <= magni and c.Name ~= Player.Name then | |
775 | Damagefunc(head, head, mindam, maxdam, knock, Type, RootPart, 0.1, "http://www.roblox.com/asset/?id=231917784", 1) | |
776 | end | |
777 | end | |
778 | end | |
779 | end | |
780 | end | |
781 | ||
782 | Handle = CreatePart(m, Enum.Material.Marble, 0, 1, "Royal purple", "Handle", Vector3.new(0.200000003, 1.57000017, 0.200000003)) | |
783 | HandleWeld = CreateWeld(m, Character["Right Arm"], Handle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.982839942, 0.146006823, 0.234023571, 0.211453959, -0.977137685, 0.0221185088, -0.0402157828, -0.0313093588, -0.99870044, 0.976560295, 0.210289627, -0.0459168404)) | |
784 | CreateMesh("CylinderMesh", Handle, "", "", Vector3.new(0, 0, 0), Vector3.new(1.5, 1, 1.5)) | |
785 | FakeHandle = CreatePart(m, Enum.Material.Marble, 0, 1, "Royal purple", "FakeHandle", Vector3.new(0.200000003, 1.57000017, 0.200000003)) | |
786 | FakeHandleWeld = CreateWeld(m, Handle, FakeHandle, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0, 0, 0, 1, 3.7252903e-009, 6.4028427e-009, 3.7252903e-009, 1.00000012, 0, 6.4028427e-009, 0, 1.00000012)) | |
787 | Part = CreatePart(m, Enum.Material.Marble, 0, 0, "Black", "Part", Vector3.new(0.200000003, 1, 0.200000003)) | |
788 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.07288361e-006, 0.683865368, -4.76837158e-007, 1, 3.7252903e-009, 6.4028427e-009, 3.7252903e-009, 1.00000012, 0, 6.4028427e-009, 0, 1.00000012)) | |
789 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(2, 0.5, 2)) | |
790 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
791 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.31791997, -0.975689411, 2.925138, 3.06405127e-006, 0.707111418, 0.707102299, -0.999756992, 0.0155918654, -0.0155877285, -0.0220473036, -0.706930399, 0.706939638)) | |
792 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
793 | Part = CreatePart(m, Enum.Material.Marble, 0, 0, "Black", "Part", Vector3.new(1, 0.729999959, 1)) | |
794 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(1.4692868, -3.70743895, -1.52587891e-005, 0.916809797, -0.399324507, 1.15483999e-006, 0.399324447, 0.916809678, -4.00096178e-006, 5.56348823e-007, 4.12762165e-006, 1)) | |
795 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 0.200000003)) | |
796 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
797 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-3.31796861, -0.99111104, 3.62495184, 3.06405127e-006, 0.707111418, 0.707102299, -0.999756992, 0.0155918654, -0.0155877285, -0.0220473036, -0.706930399, 0.706939638)) | |
798 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
799 | Cone = CreatePart(m, Enum.Material.Marble, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
800 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(4.64674854, -0.903340101, -0.354405403, -1.83284283e-006, -1.00000012, 3.39746475e-006, -0.999756992, 1.90362334e-006, 0.0220472421, -0.0220472496, -3.36021185e-006, -0.999756992)) | |
801 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
802 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
803 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.0155968666, -0.981806874, 5.01632404, 4.59002331e-006, 1.38655305e-005, 1, -0.999757051, 0.0220471006, 4.27453779e-006, -0.0220471006, -0.999757051, 1.39661133e-005)) | |
804 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
805 | Cone = CreatePart(m, Enum.Material.Marble, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
806 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.015683651, -0.99636519, 4.31590414, 4.59002331e-006, 1.38655305e-005, 1, -0.999757051, 0.0220471006, 4.27453779e-006, -0.0220471006, -0.999757051, 1.39661133e-005)) | |
807 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
808 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
809 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(3.2746892, -0.975648642, 2.9260354, 2.64961272e-006, -0.707099259, 0.707114458, -0.999756992, 0.0155881718, 0.0155915832, -0.0220474396, -0.706942558, -0.706927299)) | |
810 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
811 | Cone = CreatePart(m, Enum.Material.Marble, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
812 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(3.27468133, -0.991158009, 3.62575912, 2.64961272e-006, -0.707099259, 0.707114458, -0.999756992, 0.0155881718, 0.0155915832, -0.0220474396, -0.706942558, -0.706927299)) | |
813 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
814 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
815 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.0155587196, -1.11407149, 4.663311, 4.59002331e-006, 1.38655305e-005, 1, -0.999757051, 0.0220471006, 4.27453779e-006, -0.0220471006, -0.999757051, 1.39661133e-005)) | |
816 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.550000012, 1, 0.550000012)) | |
817 | Cone = CreatePart(m, Enum.Material.Marble, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
818 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(0.0131573677, 0.00466442108, 4.61167336, -1.74657907e-006, -1.09747052e-005, -1.00000012, 0.764525652, -0.644593418, 5.77419996e-006, -0.644593358, -0.764525771, 9.49576497e-006)) | |
819 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.550000012, 1, 0.550000012)) | |
820 | Cone = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Cone", Vector3.new(1, 1.01999998, 1)) | |
821 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(4.6467495, -0.918762922, 0.345379829, -1.83284283e-006, -1.00000012, 3.39746475e-006, -0.999756992, 1.90362334e-006, 0.0220472421, -0.0220472496, -3.36021185e-006, -0.999756992)) | |
822 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.5, 0.200000003)) | |
823 | Cone = CreatePart(m, Enum.Material.Marble, 0, 0, "Royal purple", "Cone", Vector3.new(0.200000003, 0.200000003, 0.200000003)) | |
824 | ConeWeld = CreateWeld(m, FakeHandle, Cone, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-0.00376915932, -3.44346094, -0.00172424316, -1.00000012, -1.70432031e-006, 1.69267878e-007, 1.70432031e-006, -1.00000012, -2.12341547e-007, 1.75088644e-007, -2.12341547e-007, 1.00000012)) | |
825 | CreateMesh("SpecialMesh", Cone, Enum.MeshType.FileMesh, "http://www.roblox.com/asset/?id=1778999", Vector3.new(0, 0, 0), Vector3.new(0.200000003, 0.300000012, 0.200000003)) | |
826 | Part = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Part", Vector3.new(1, 1, 1)) | |
827 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.31130219e-006, -3.5749507, 0, 1, 3.7252903e-009, 6.4028427e-009, 3.7252903e-009, 1.00000012, 0, 6.4028427e-009, 0, 1.00000012)) | |
828 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 0.5, 0.400000006)) | |
829 | Part = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Part", Vector3.new(0.200000003, 4.57000017, 0.200000003)) | |
830 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(5.96046448e-007, -1.50000107, 9.53674316e-007, 1, 3.7252903e-009, 6.4028427e-009, 3.7252903e-009, 1.00000012, 0, 6.4028427e-009, 0, 1.00000012)) | |
831 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1.5, 1, 1.5)) | |
832 | Part = CreatePart(m, Enum.Material.Marble, 0, 0, "Black", "Part", Vector3.new(1, 1.16999996, 1)) | |
833 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-4.68149614, -0.0198745728, -1.09672546e-005, 0.0220478568, 0.999756992, -2.0749867e-006, -0.999756932, 0.0220478605, -1.48452818e-006, -1.42678618e-006, 2.10851431e-006, 1.00000012)) | |
834 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1)) | |
835 | Part = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Part", Vector3.new(1, 0.870000005, 1)) | |
836 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-4.71543217, -0.0690839291, -9.53674316e-006, 0.19052954, 0.981681645, -1.97067857e-006, -0.981681526, 0.190529525, -1.91386789e-006, -1.49046537e-006, 2.29105353e-006, 1.00000012)) | |
837 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 0.899999976)) | |
838 | Part22 = CreatePart(m, Enum.Material.Marble, 0, 0, "Black", "Part22", Vector3.new(1, 0.729999959, 1)) | |
839 | PartWeld = CreateWeld(m, FakeHandle, Part22, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.51120782, -3.69066477, -7.15255737e-006, 0.911903143, 0.410405785, -3.35276127e-007, -0.410405725, 0.911903143, -1.79186463e-006, -4.35044058e-007, 1.76206231e-006, 1.00000012)) | |
840 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 0.200000003)) | |
841 | Part = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Part", Vector3.new(1, 0.870000005, 1)) | |
842 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-4.71087646, -0.0231897831, -6.19888306e-006, 0.318961442, 0.947767794, -1.48266554e-006, -0.947767675, 0.318961442, -2.70921737e-006, -2.10118014e-006, 2.26870179e-006, 1.00000012)) | |
843 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 0.850000024)) | |
844 | Part = CreatePart(m, Enum.Material.Marble, 0, 0, "Black", "Part", Vector3.new(1, 0.769999981, 1)) | |
845 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-4.68154573, -0.4009372, -5.7220459e-006, 0.516243339, 0.856442034, -8.04662704e-007, -0.856442034, 0.516243339, -4.18536365e-006, -3.15741636e-006, 2.8423965e-006, 1.00000012)) | |
846 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 0.800000012)) | |
847 | Part = CreatePart(m, Enum.Material.Neon, 0, 0, "Royal purple", "Part", Vector3.new(0.200000003, 2.57999992, 0.200000003)) | |
848 | PartWeld = CreateWeld(m, FakeHandle, Part, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(3.4570694e-006, 1.91385686, 4.76837158e-007, 1, 3.7252903e-009, 6.4028427e-009, 3.7252903e-009, 1.00000012, 0, 6.4028427e-009, 0, 1.00000012)) | |
849 | CreateMesh("CylinderMesh", Part, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1)) | |
850 | Hitbox = CreatePart(m, Enum.Material.Marble, 0, 1, "Black", "Hitbox", Vector3.new(2.4000001, 3.67000008, 0.399999976)) | |
851 | HitboxWeld = CreateWeld(m, FakeHandle, Hitbox, CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1), CFrame.new(-1.76720476, 3.04898357, 0.00860214233, -0.699169815, 0.713988841, 0.0371726528, -0.713755548, -0.700063348, 0.0215496495, 0.0414094217, -0.0114653222, 0.999076545)) | |
852 | rayCast = function(Position, Direction, Range, Ignore) | |
853 | return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) | |
854 | end | |
855 | ||
856 | ||
857 | Spawn(function() | |
858 | while wait() do | |
859 | Magik(LeftArm) | |
860 | end | |
861 | end) | |
862 | ||
863 | Spawn(function() | |
864 | while wait() do | |
865 | Magik2(LeftArm) | |
866 | end | |
867 | end) | |
868 | ||
869 | ||
870 | CreateSound = function(id, parent, vol, pit, looped) | |
871 | coroutine.resume(coroutine.create(function() | |
872 | local sou = Instance.new("Sound", parent or workspace) | |
873 | sou.Volume = vol | |
874 | sou.Pitch = pit or 1 | |
875 | sou.SoundId = id | |
876 | sou.Looped = looped | |
877 | swait() | |
878 | sou:play() | |
879 | game:GetService("Debris"):AddItem(sou, 6) | |
880 | end | |
881 | )) | |
882 | end | |
883 | ||
884 | ||
885 | local getclosest = function(obj, distance) | |
886 | local last, lastx = distance + 1, nil | |
887 | for i,v in pairs(workspace:GetChildren()) do | |
888 | if v:IsA("Model") and v ~= Character and v:findFirstChild("Humanoid") and v:findFirstChild("Torso") and v:findFirstChild("Humanoid").Health > 0 then | |
889 | local t = v.Torso | |
890 | local dist = t.Position - obj.Position.magnitude | |
891 | if dist <= distance and dist < last then | |
892 | last = dist | |
893 | lastx = v | |
894 | end | |
895 | end | |
896 | end | |
897 | return lastx | |
898 | end | |
899 | ||
900 | BlockEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type) | |
901 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
902 | prt.Anchored = true | |
903 | prt.CFrame = cframe | |
904 | local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
905 | game:GetService("Debris"):AddItem(prt, 10) | |
906 | if Type == 1 or Type == nil then | |
907 | table.insert(Effects, {prt, "Block1", delay, x3, y3, z3, msh}) | |
908 | else | |
909 | if Type == 2 then | |
910 | table.insert(Effects, {prt, "Block2", delay, x3, y3, z3, msh}) | |
911 | end | |
912 | end | |
913 | end | |
914 | ||
915 | SphereEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
916 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
917 | prt.Anchored = true | |
918 | prt.CFrame = cframe | |
919 | local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
920 | game:GetService("Debris"):AddItem(prt, 10) | |
921 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
922 | end | |
923 | ||
924 | RingEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
925 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5)) | |
926 | prt.Anchored = true | |
927 | prt.CFrame = cframe * CFrame.new(x1, y1, z1) | |
928 | local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
929 | game:GetService("Debris"):AddItem(prt, 10) | |
930 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
931 | end | |
932 | ||
933 | CylinderEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
934 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
935 | prt.Anchored = true | |
936 | prt.CFrame = cframe | |
937 | local msh = CreateMesh("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
938 | game:GetService("Debris"):AddItem(prt, 10) | |
939 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
940 | end | |
941 | ||
942 | WaveEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
943 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
944 | prt.Anchored = true | |
945 | prt.CFrame = cframe | |
946 | local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
947 | game:GetService("Debris"):AddItem(prt, 10) | |
948 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
949 | end | |
950 | ||
951 | SpecialEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
952 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
953 | prt.Anchored = true | |
954 | prt.CFrame = cframe | |
955 | local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://24388358", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
956 | game:GetService("Debris"):AddItem(prt, 10) | |
957 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
958 | end | |
959 | ||
960 | DragonEffect = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
961 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new()) | |
962 | prt.Anchored = true | |
963 | prt.CFrame = cframe | |
964 | local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://51177741", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
965 | game:GetService("Debris"):AddItem(prt, 10) | |
966 | table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3, msh}) | |
967 | end | |
968 | ||
969 | BreakEffect = function(brickcolor, cframe, x1, y1, z1) | |
970 | local prt = CreatePart(workspace, "Marble", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5)) | |
971 | prt.Anchored = true | |
972 | prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
973 | local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
974 | local num = math.random(10, 50) / 1000 | |
975 | game:GetService("Debris"):AddItem(prt, 10) | |
976 | table.insert(Effects, {prt, "Shatter", num, prt.CFrame, math.random() - math.random(), 0, math.random(50, 100) / 100}) | |
977 | end | |
978 | ||
979 | attackone = function() | |
980 | attack = true | |
981 | for i = 0, 1, 0.1 do | |
982 | swait() | |
983 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
984 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(80)), 0.3) | |
985 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(90)), 0.3) | |
986 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
987 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
988 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
989 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
990 | end | |
991 | local con = Hitbox.Touched:connect(function(hit) | |
992 | Damagefunc(Hitbox, hit, 10, 15, math.random(1, 5), "Normal", RootPart, 0.2, "rbxassetid://199149221", 0.8) | |
993 | end | |
994 | ) | |
995 | CreateSound("http://www.roblox.com/asset/?id=234365549", Torso, 1, 1) | |
996 | for i = 0, 1, 0.1 do | |
997 | swait() | |
998 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(100)), 0.3) | |
999 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1000 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1001 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(-80)), 0.3) | |
1002 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1003 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1004 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-150)), 0.2) | |
1005 | end | |
1006 | con:disconnect() | |
1007 | attack = false | |
1008 | end | |
1009 | ||
1010 | Deathwish = function() | |
1011 | attack = true | |
1012 | CreateSound("http://www.roblox.com/asset/?id=231917970", RootPart, 1, 1) | |
1013 | for i = 0, 1, 0.05 do | |
1014 | swait() | |
1015 | WaveEffect(BrickColor.new("Black"), RootPart.CFrame * cf(0, -2.5, 0), 5, 2, 5, 1, 0.1, 1, 0.09) | |
1016 | BlockEffect(BrickColor.new("Black"), LeftArm.CFrame * cf(0, -1, 0), 5, 5, 5, 0.5, 0.5, 0.5, 0.08, 1) | |
1017 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
1018 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(2 * math.cos(sine / 5)), math.rad(-4 * math.cos(sine / 25)), math.rad(80)), 0.3) | |
1019 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos(sine / 25)), math.rad(0), math.rad(190)), 0.3) | |
1020 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.3) | |
1021 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1022 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1023 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(60), math.rad(100)), 0.2) | |
1024 | end | |
1025 | MagniDamage(RootPart, 5599, 1099, 1599, 0, "DarkUp") | |
1026 | CreateSound("http://www.roblox.com/asset/?id=192410089", RootPart, 1, 1) | |
1027 | BlockEffect(BrickColor.new("Black"), LeftArm.CFrame * cf(0, -1, 0), 5, 5, 5, 5, 5, 5, 0.06, 1) | |
1028 | WaveEffect(BrickColor.new("Black"), RootPart.CFrame * cf(0, -2.5, 0), 5, 2, 5, 2, 0.1, 2, 0.07) | |
1029 | for i = 0, 1, 0.05 do | |
1030 | swait() | |
1031 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
1032 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(2 * math.cos(sine / 5)), math.rad(-4 * math.cos(sine / 25)), math.rad(80)), 0.3) | |
1033 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos(sine / 25)), math.rad(0), math.rad(190)), 0.3) | |
1034 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-190)), 0.3) | |
1035 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1036 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1037 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(60), math.rad(100)), 0.2) | |
1038 | end | |
1039 | for i = 0, 1, 0.1 do | |
1040 | swait() | |
1041 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-110)), 0.3) | |
1042 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(2 * math.cos(sine / 5)), math.rad(-4 * math.cos(sine / 25)), math.rad(100)), 0.3) | |
1043 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos(sine / 25)), math.rad(0), math.rad(190)), 0.3) | |
1044 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(-80), math.rad(-90)), 0.3) | |
1045 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1046 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1047 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(60), math.rad(100)), 0.2) | |
1048 | end | |
1049 | MagniDamage(RootPart, 55, 5, 10, -70, "Knockdown") | |
1050 | CreateSound("http://www.roblox.com/asset/?id=192410089", RootPart, 1, 1.2) | |
1051 | SphereEffect(BrickColor.new("Black"), LeftArm.CFrame * cf(0, -1, 0), 5, 5, 5, 10, 10, 10, 0.06) | |
1052 | BlockEffect(BrickColor.new("Black"), LeftArm.CFrame * cf(0, -1, 0), 5, 5, 5, 5, 5, 5, 0.06, 1) | |
1053 | WaveEffect(BrickColor.new("Black"), RootPart.CFrame * cf(0, -2.5, 0), 5, 2, 5, 0.5, 1, 0.5, 0.07) | |
1054 | for i = 0, 1, 0.1 do | |
1055 | swait() | |
1056 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-50)), 0.3) | |
1057 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(2 * math.cos(sine / 5)), math.rad(-4 * math.cos(sine / 25)), math.rad(50)), 0.3) | |
1058 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos(sine / 25)), math.rad(0), math.rad(190)), 0.3) | |
1059 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-90)), 0.3) | |
1060 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1061 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1062 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(60), math.rad(100)), 0.2) | |
1063 | end | |
1064 | attack = false | |
1065 | end | |
1066 | ||
1067 | ChaosDriver = function() | |
1068 | attack = true | |
1069 | for i = 0, 1, 0.05 do | |
1070 | swait() | |
1071 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
1072 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(80)), 0.3) | |
1073 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(90)), 0.3) | |
1074 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-80)), 0.3) | |
1075 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1076 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1077 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
1078 | end | |
1079 | CreateSound("http://www.roblox.com/asset/?id=234365549", Torso, 1, 1) | |
1080 | coroutine.resume(coroutine.create(function() | |
1081 | for i = 1, 5 do | |
1082 | swait() | |
1083 | local ef = CreatePart(workspace, "Marble", 0, 1, BrickColor.new("Black"), "Effect", vt()) | |
1084 | ef.Anchored = true | |
1085 | ef.CFrame = RootPart.CFrame * cf(0, 0, -10 * i) | |
1086 | MagniDamage(ef, 17, 10, 15, 1, "DarkUp") | |
1087 | game:GetService("Debris"):AddItem(ef, 0.5) | |
1088 | CreateSound("http://www.roblox.com/asset/?id=231917784", ef, 1, 0.7) | |
1089 | DragonEffect(BrickColor.new("Black"), RootPart.CFrame * cf(0, 0, -10 * i) * angles(math.rad(math.random(50, 90)), 0, math.rad(math.random(50, 90))), 5, 170, 5, 0, -10, 0, 0.07) | |
1090 | DragonEffect(BrickColor.new("Magenta"), RootPart.CFrame * cf(0, 0, -10 * i) * angles(math.rad(math.random(50, 90)), 0, math.rad(math.random(50, 90))), 5, 150, 5, 0, -10, 0, 0.07) | |
1091 | SpecialEffect(BrickColor.new("Really black"), Torso.CFrame, 5, 5, 5, 3, 3, 3, 0.08) | |
1092 | SpecialEffect(BrickColor.new("Magenta"), Torso.CFrame, 2, 2, 2, 3, 3, 3, 0.07) | |
1093 | SpecialEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08) | |
1094 | SpecialEffect(BrickColor.new("Magenta"), Hitbox.CFrame, 2, 2, 2, 3, 3, 3, 0.07) | |
1095 | end | |
1096 | end | |
1097 | )) | |
1098 | for i = 0, 1, 0.1 do | |
1099 | swait() | |
1100 | BlockEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08, 1) | |
1101 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(100)), 0.3) | |
1102 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1103 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1104 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(-80)), 0.3) | |
1105 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1106 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1107 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-150)), 0.2) | |
1108 | end | |
1109 | attack = false | |
1110 | end | |
1111 | ||
1112 | attacktwo = function() | |
1113 | attack = true | |
1114 | soundn = true | |
1115 | for i = 0, 1, 0.1 do | |
1116 | swait() | |
1117 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(-80)), 0.3) | |
1118 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(20), math.rad(0), math.rad(80)), 0.3) | |
1119 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(180)), 0.3) | |
1120 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-30)), 0.3) | |
1121 | RH.C0 = clerp(RH.C0, cf(1, -1.2, 0) * RHCF * angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.3) | |
1122 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1123 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(200), math.rad(-100), math.rad(0)), 0.2) | |
1124 | end | |
1125 | local con = Hitbox.Touched:connect(function(hit) | |
1126 | Damagefunc(Hitbox, hit, 10, 15, math.random(1, 5), "Normal", RootPart, 0.2, "rbxassetid://199149221", 0.8) | |
1127 | end | |
1128 | ) | |
1129 | CreateSound("http://www.roblox.com/asset/?id=234365573", Torso, 1, 1) | |
1130 | coroutine.resume(coroutine.create(function() | |
1131 | while soundn do | |
1132 | wait(0.3) | |
1133 | CreateSound("http://www.roblox.com/asset/?id=234365573", Torso, 1, 1) | |
1134 | end | |
1135 | end | |
1136 | )) | |
1137 | for i = 0, 1, 0.1 do | |
1138 | swait() | |
1139 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0 + 360 * i)), 0.3) | |
1140 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1141 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1142 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(50), math.rad(-30)), 0.3) | |
1143 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1144 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1145 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
1146 | end | |
1147 | con:disconnect() | |
1148 | soundn = false | |
1149 | attack = false | |
1150 | end | |
1151 | ||
1152 | local soundn = false | |
1153 | attackthree = function() | |
1154 | attack = true | |
1155 | soundn = true | |
1156 | for i = 0, 1, 0.1 do | |
1157 | swait() | |
1158 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(-80)), 0.3) | |
1159 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(20), math.rad(0), math.rad(80)), 0.3) | |
1160 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-50), math.rad(180)), 0.3) | |
1161 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-30)), 0.3) | |
1162 | RH.C0 = clerp(RH.C0, cf(1, -1.2, 0) * RHCF * angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.3) | |
1163 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1164 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(200), math.rad(-100), math.rad(0)), 0.2) | |
1165 | end | |
1166 | local con = Hitbox.Touched:connect(function(hit) | |
1167 | Damagefunc(Hitbox, hit, 10, 15, math.random(1, 5), "Normal", RootPart, 0.2, "rbxassetid://199149221", 0.8) | |
1168 | end | |
1169 | ) | |
1170 | CreateSound("http://www.roblox.com/asset/?id=234365573", Torso, 1, 1) | |
1171 | coroutine.resume(coroutine.create(function() | |
1172 | while soundn do | |
1173 | wait(0.3) | |
1174 | CreateSound("http://www.roblox.com/asset/?id=234365573", Torso, 1, 1) | |
1175 | end | |
1176 | end | |
1177 | )) | |
1178 | for i = 0, 1, 0.1 do | |
1179 | swait() | |
1180 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0 + 360 * i)), 0.3) | |
1181 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1182 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1183 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(50), math.rad(-30)), 0.3) | |
1184 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1185 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1186 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
1187 | end | |
1188 | con:disconnect() | |
1189 | soundn = false | |
1190 | attack = false | |
1191 | end | |
1192 | ||
1193 | ThanatosDriver = function() | |
1194 | attack = true | |
1195 | for i = 0, 1, 0.1 do | |
1196 | swait() | |
1197 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(-80)), 0.3) | |
1198 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(20), math.rad(0), math.rad(80)), 0.3) | |
1199 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-90), math.rad(180)), 0.3) | |
1200 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(-90), math.rad(-100)), 0.3) | |
1201 | RH.C0 = clerp(RH.C0, cf(1, -1.2, 0) * RHCF * angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.3) | |
1202 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1203 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(200), math.rad(-100), math.rad(0)), 0.2) | |
1204 | end | |
1205 | local con = Hitbox.Touched:connect(function(hit) | |
1206 | Damagefunc(Hitbox, hit, 30, 30, 50, "Knockdown", RootPart, 0.2, "rbxassetid://199149221", 0.8) | |
1207 | end | |
1208 | ) | |
1209 | CreateSound("http://www.roblox.com/asset/?id=231917871", Torso, 1, 0.7) | |
1210 | for i = 0, 1, 0.1 do | |
1211 | swait() | |
1212 | BlockEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08, 1) | |
1213 | BlockEffect(BrickColor.new("Magenta"), Hitbox.CFrame, 3, 3, 3, 3, 3, 3, 0.08, 2) | |
1214 | DragonEffect(BrickColor.new("Black"), Hitbox.CFrame * cf(0, 0, -2) * angles(math.rad(90), math.rad(-90), math.rad(90)), 1, 1, 1, 0.2, 0.5, 0.2, 0.08) | |
1215 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(20), math.rad(0), math.rad(100)), 0.3) | |
1216 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(20), math.rad(0), math.rad(-80)), 0.3) | |
1217 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-20), math.rad(30)), 0.3) | |
1218 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(90), math.rad(0)), 0.3) | |
1219 | RH.C0 = clerp(RH.C0, cf(1, -1.2, 0) * RHCF * angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.3) | |
1220 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1221 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(200), math.rad(-100), math.rad(170)), 0.2) | |
1222 | end | |
1223 | con:disconnect() | |
1224 | attack = false | |
1225 | end | |
1226 | ||
1227 | LastResort = function() | |
1228 | attack = true | |
1229 | soundn = true | |
1230 | CreateSound("http://www.roblox.com/asset/?id=233096557", Torso, 1, 1) | |
1231 | MagniDamage(RootPart, 10, 5, 10, 0, "Knockdown") | |
1232 | SpecialEffect(BrickColor.new("Really black"), Torso.CFrame, 5, 5, 5, 3, 3, 3, 0.08) | |
1233 | SpecialEffect(BrickColor.new("Magenta"), Torso.CFrame, 2, 2, 2, 3, 3, 3, 0.07) | |
1234 | SpecialEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08) | |
1235 | SpecialEffect(BrickColor.new("Magenta"), Hitbox.CFrame, 2, 2, 2, 3, 3, 3, 0.07) | |
1236 | ||
1237 | RootPart.CFrame = RootPart.CFrame * cf(0, 0, 20) | |
1238 | for i = 0, 1, 0.1 do | |
1239 | swait() | |
1240 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(-20), math.rad(0), math.rad(-80)), 0.3) | |
1241 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(20), math.rad(0), math.rad(80)), 0.3) | |
1242 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(-90), math.rad(180)), 0.3) | |
1243 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(-90), math.rad(-100)), 0.3) | |
1244 | RH.C0 = clerp(RH.C0, cf(1, -1.2, 0) * RHCF * angles(math.rad(-10), math.rad(-50), math.rad(0)), 0.3) | |
1245 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1246 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(200), math.rad(-100), math.rad(0)), 0.2) | |
1247 | end | |
1248 | CreateSound("http://www.roblox.com/asset/?id=231917871", Torso, 1, 1) | |
1249 | coroutine.resume(coroutine.create(function() | |
1250 | while soundn do | |
1251 | wait(0.5) | |
1252 | CreateSound("http://www.roblox.com/asset/?id=231917871", Torso, 1, 1) | |
1253 | end | |
1254 | end | |
1255 | )) | |
1256 | for i = 0, 1, 0.1 do | |
1257 | swait() | |
1258 | MagniDamage(RootPart, 10, 5, 10, 0, "Normal") | |
1259 | Torso.Velocity = RootPart.CFrame.lookVector * 100 | |
1260 | BlockEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08, 1) | |
1261 | BlockEffect(BrickColor.new("Magenta"), Hitbox.CFrame, 3, 3, 3, 3, 3, 3, 0.08, 2) | |
1262 | DragonEffect(BrickColor.new("Black"), Hitbox.CFrame * cf(0, 0, -2) * angles(math.rad(90), math.rad(90), math.rad(90)), 1, 1, 1, 0.2, 0.5, 0.2, 0.08) | |
1263 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0 + 360 * i)), 0.3) | |
1264 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1265 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1266 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(50), math.rad(-30)), 0.3) | |
1267 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1268 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1269 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
1270 | end | |
1271 | for i = 0, 1, 0.1 do | |
1272 | swait() | |
1273 | MagniDamage(RootPart, 10, 3, 3, 0, "Normal") | |
1274 | Torso.Velocity = RootPart.CFrame.lookVector * 100 | |
1275 | BlockEffect(BrickColor.new("Really black"), Hitbox.CFrame, 5, 5, 5, 3, 3, 3, 0.08, 1) | |
1276 | BlockEffect(BrickColor.new("Magenta"), Hitbox.CFrame, 3, 3, 3, 3, 3, 3, 0.08, 2) | |
1277 | DragonEffect(BrickColor.new("Black"), Hitbox.CFrame * cf(0, 0, -2) * angles(math.rad(90), math.rad(90), math.rad(90)), 1, 1, 1, 0.2, 0.5, 0.2, 0.08) | |
1278 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0 + 360 * i)), 0.3) | |
1279 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(0), math.rad(-100)), 0.3) | |
1280 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(30), math.rad(90)), 0.3) | |
1281 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(50), math.rad(-30)), 0.3) | |
1282 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(-50), math.rad(0)), 0.3) | |
1283 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1284 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(190), math.rad(0), math.rad(-100)), 0.2) | |
1285 | end | |
1286 | soundn = false | |
1287 | attack = false | |
1288 | end | |
1289 | ||
1290 | ob1u = function() | |
1291 | end | |
1292 | ||
1293 | ob1d = function() | |
1294 | if attack == false and attacktype == 1 then | |
1295 | attacktype = 2 | |
1296 | attackone() | |
1297 | else | |
1298 | if attack == false and attacktype == 2 then | |
1299 | attacktype = 3 | |
1300 | attacktwo() | |
1301 | else | |
1302 | if attack == false and attacktype == 3 then | |
1303 | attacktype = 1 | |
1304 | attackthree() | |
1305 | end | |
1306 | end | |
1307 | end | |
1308 | end | |
1309 | ||
1310 | key = function(k) | |
1311 | k = k:lower() | |
1312 | if attack == false and k == "z" and zenabled == true then | |
1313 | zenabled = false | |
1314 | coroutine.resume(coroutine.create(function() | |
1315 | for i = 1, 0, -0.02 do | |
1316 | swait() | |
1317 | fenframe1a.Size = UDim2.new(0.05 * i, 0, 0.1, 0) | |
1318 | end | |
1319 | zenabled = true | |
1320 | fenframe1a.Size = UDim2.new(0, 0, 0.1, 0) | |
1321 | end | |
1322 | )) | |
1323 | ThanatosDriver() | |
1324 | else | |
1325 | if attack == false and k == "x" and xenabled == true then | |
1326 | xenabled = false | |
1327 | coroutine.resume(coroutine.create(function() | |
1328 | for i = 1, 0, -0.005 do | |
1329 | swait() | |
1330 | fenframe2a.Size = UDim2.new(0.05 * i, 0, 0.1, 0) | |
1331 | end | |
1332 | xenabled = true | |
1333 | fenframe2a.Size = UDim2.new(0, 0, 0.1, 0) | |
1334 | end | |
1335 | )) | |
1336 | LastResort() | |
1337 | else | |
1338 | if attack == false and k == "c" and cenabled == true then | |
1339 | cenabled = false | |
1340 | coroutine.resume(coroutine.create(function() | |
1341 | for i = 1, 0, -0.0025 do | |
1342 | swait() | |
1343 | fenframe3a.Size = UDim2.new(0.05 * i, 0, 0.1, 0) | |
1344 | end | |
1345 | cenabled = true | |
1346 | fenframe3a.Size = UDim2.new(0, 0, 0.1, 0) | |
1347 | end | |
1348 | )) | |
1349 | ChaosDriver() | |
1350 | else | |
1351 | if attack == false and k == "v" and venabled == true then | |
1352 | venabled = false | |
1353 | coroutine.resume(coroutine.create(function() | |
1354 | for i = 1, 0, -0.0005 do | |
1355 | swait() | |
1356 | fenframe4a.Size = UDim2.new(0.05 * i, 0, 0.1, 0) | |
1357 | end | |
1358 | venabled = true | |
1359 | fenframe4a.Size = UDim2.new(0, 0, 0.1, 0) | |
1360 | end | |
1361 | )) | |
1362 | Deathwish() | |
1363 | end | |
1364 | end | |
1365 | end | |
1366 | end | |
1367 | end | |
1368 | ||
1369 | s = function(mouse) | |
1370 | mouse.Button1Down:connect(function() | |
1371 | ob1d(mouse) | |
1372 | end | |
1373 | ) | |
1374 | mouse.Button1Up:connect(function() | |
1375 | ob1u(mouse) | |
1376 | end | |
1377 | ) | |
1378 | mouse.KeyDown:connect(key) | |
1379 | end | |
1380 | ||
1381 | s(mouse) | |
1382 | ||
1383 | ||
1384 | ||
1385 | ||
1386 | ||
1387 | ||
1388 | rs = game:GetService'RunService' | |
1389 | plrs = game:GetService'Players' | |
1390 | lp = plrs.LocalPlayer | |
1391 | c = lp.Character | |
1392 | root = lp.Character.HumanoidRootPart | |
1393 | human = c.Humanoid | |
1394 | FPS = 0 | |
1395 | inf = 0 | |
1396 | opos1 = Vector3.new() | |
1397 | opos2 = Vector3.new() | |
1398 | opos3 = Vector3.new() | |
1399 | waves = Instance.new("Model", c) | |
1400 | res = Instance.new("Model", c) | |
1401 | ||
1402 | local function b() | |
1403 | local t=tick(); | |
1404 | local l=t%1*3; | |
1405 | local t=.5*math.pi*(l%1); | |
1406 | if l<1 then | |
1407 | return Color3.new(47,0,32); | |
1408 | elseif l<2 then | |
1409 | return Color3.new(47,0,35); | |
1410 | else | |
1411 | return Color3.new(0,0,0); | |
1412 | end; | |
1413 | end; | |
1414 | speedParts = function() | |
1415 | for i = 1, 4 do | |
1416 | local pos = Vector3.new(math.sin(math.rad(inf + 360 * i)) * 2, math.sin(math.rad(inf + 260 * i) + math.pi / 2) * 2, -Hitbox.Velocity / 5) * (math.sin(tick()) + 2) | |
1417 | local CFramepos = Hitbox.CFrame:toWorldSpace(CFrame.new(pos)).p | |
1418 | local opos | |
1419 | if i == 1 then | |
1420 | opos = opos1 | |
1421 | elseif i == 2 then | |
1422 | opos = opos2 | |
1423 | else | |
1424 | opos = opos3 | |
1425 | end | |
1426 | local e | |
1427 | if #res:children() <= 3 then | |
1428 | e = Instance.new("Part") | |
1429 | else | |
1430 | e = res:FindFirstChild("Trail") | |
1431 | end | |
1432 | e.Parent = waves | |
1433 | e.Anchored = false | |
1434 | e.CanCollide = false | |
1435 | e.Transparency = 0 | |
1436 | e.Material = "Neon" | |
1437 | e.Name = "Trail" | |
1438 | e.Color = b(); --Color = a(); | |
1439 | e.Size = Vector3.new(.01, (CFramepos - opos).magnitude, .01) | |
1440 | e.CFrame = CFrame.new((CFramepos + opos) / 2, opos) * CFrame.Angles(math.pi / 2, 0, 0) | |
1441 | if i == 1 then | |
1442 | opos1 = CFramepos | |
1443 | elseif i == 2 then | |
1444 | opos2 = CFramepos | |
1445 | else | |
1446 | opos3 = CFramepos | |
1447 | end | |
1448 | end | |
1449 | end | |
1450 | ||
1451 | rs.RenderStepped:connect(function() | |
1452 | FPS = 1 / rs.RenderStepped:wait() | |
1453 | for i, v in pairs (waves:children()) do | |
1454 | v.Transparency = v.Transparency + .05 / (FPS / 400) | |
1455 | if v.Transparency >= .98 then | |
1456 | v.Transparency = 1 | |
1457 | v.Parent = res | |
1458 | end | |
1459 | end | |
1460 | inf = inf + (30 + root.Velocity.magnitude / 15) / (FPS / 400) | |
1461 | speedParts() | |
1462 | end) | |
1463 | ||
1464 | ||
1465 | ||
1466 | ||
1467 | ||
1468 | ||
1469 | while 1 do | |
1470 | swait() | |
1471 | Torsovelocity = RootPart.Velocity * Vector3.new(1, 0, 1).magnitude | |
1472 | velocity = RootPart.Velocity.y | |
1473 | sine = sine + change | |
1474 | local hit, pos = rayCast(RootPart.Position, CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0)).lookVector, 4, Character) | |
1475 | if equipped == true or equipped == false then | |
1476 | if 1 < RootPart.Velocity.y and hit == nil then | |
1477 | Anim = "Jump" | |
1478 | if attack == false then | |
1479 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1480 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(0), math.rad(-4 * math.cos((sine) / 25)), math.rad(-30)), 0.3) | |
1481 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos((sine) / 25)), math.rad(0), math.rad(190)), 0.3) | |
1482 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1483 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1484 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1485 | end | |
1486 | else | |
1487 | if RootPart.Velocity.y < -1 and hit == nil then | |
1488 | Anim = "Fall" | |
1489 | if attack == false then | |
1490 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, 0) * angles(math.rad(0), math.rad(0), math.rad(30)), 0.3) | |
1491 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(30), math.rad(-4 * math.cos((sine) / 25)), math.rad(-30)), 0.3) | |
1492 | RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(10 * math.cos((sine) / 25)), math.rad(0), math.rad(190)), 0.3) | |
1493 | LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1494 | RH.C0 = clerp(RH.C0, cf(1, -1, 0) * RHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1495 | LH.C0 = clerp(LH.C0, cf(-1, -1, 0) * LHCF * angles(math.rad(0), math.rad(0), math.rad(0)), 0.3) | |
1496 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(0), math.rad(60), math.rad(100)), 0.2) | |
1497 | end | |
1498 | else | |
1499 | if Torsovelocity.x < 1 and Torsovelocity.z < 1 and hit ~= nil then | |
1500 | Anim = "Idle" | |
1501 | if attack == false then | |
1502 | change = 1 | |
1503 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, -0.2 - 0.1 * math.cos((sine) / 9)) * angles(math.rad(20), math.rad(-20), math.rad(-80)), 0.3) | |
1504 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(-10 + 1 * math.cos((sine) / 9)), math.rad(-10 + 1 * math.cos((sine) / 9)), math.rad(80)), 0.3) | |
1505 | RW.C0 = clerp(RW.C0, CFrame.new(1.3, 0.2, -0.5) * angles(math.rad(50), math.rad(0), math.rad(-30)), 0.3) | |
1506 | LW.C0 = clerp(LW.C0, CFrame.new(-1, 0.5, -1) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.3) | |
1507 | RH.C0 = clerp(RH.C0, cf(1, -1.2 + 0.1 * math.cos((sine) / 9), 0) * RHCF * angles(math.rad(0), math.rad(-30), math.rad(20)), 0.3) | |
1508 | LH.C0 = clerp(LH.C0, cf(-1.3, -1 + 0.1 * math.cos((sine) / 9), 0) * LHCF * angles(math.rad(0), math.rad(30), math.rad(-20)), 0.3) | |
1509 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(60), math.rad(70 - 1 * math.cos((sine) / 9)), math.rad(70)), 0.3) | |
1510 | end | |
1511 | else | |
1512 | if Torsovelocity.x > 2 and Torsovelocity.z > 2 and hit ~= nil then | |
1513 | Anim = "Walk" | |
1514 | if attack == false then | |
1515 | RootJoint.C0 = clerp(RootJoint.C0, RootCF * cf(0, 0, -0.2 - 0.1 * math.cos((sine) / 9)) * angles(math.rad(10), math.rad(-5), math.rad(-30)), 0.3) | |
1516 | Torso.Neck.C0 = clerp(Torso.Neck.C0, NeckCF * angles(math.rad(-5 + 1 * math.cos((sine) / 9)), math.rad(-10 + 1 * math.cos((sine) / 9)), math.rad(30)), 0.3) | |
1517 | RW.C0 = clerp(RW.C0, CFrame.new(1.3, 0.2, 0) * angles(math.rad(50), math.rad(0), math.rad(-10)), 0.3) | |
1518 | LW.C0 = clerp(LW.C0, CFrame.new(-0.5, 0.5, -1) * angles(math.rad(0), math.rad(0), math.rad(50)), 0.3) | |
1519 | RH.C0 = clerp(RH.C0, cf(1, -1, 0 + 0.5 * math.cos((sine) / 5)) * RHCF * angles(math.rad(0), math.rad(0), math.rad(10 - 50 * math.cos((sine) / 5))), 0.3) | |
1520 | LH.C0 = clerp(LH.C0, cf(-1, -1, -0.5 - 0.5 * math.cos((sine) / 5)) * LHCF * angles(math.rad(0), math.rad(0), math.rad(-10 - 50 * math.cos((sine) / 5))), 0.3) | |
1521 | FakeHandleWeld.C0 = clerp(FakeHandleWeld.C0, cf(0, 0, 0) * angles(math.rad(60), math.rad(50 - 1 * math.cos((sine) / 9)), math.rad(120)), 0.3) | |
1522 | end | |
1523 | end | |
1524 | end | |
1525 | end | |
1526 | end | |
1527 | end | |
1528 | if 0 < #Effects then | |
1529 | for e = 1, #Effects do | |
1530 | if Effects[e] ~= nil then | |
1531 | local Thing = Effects[e] | |
1532 | if Thing ~= nil then | |
1533 | local Part = Thing[1] | |
1534 | local Mode = Thing[2] | |
1535 | local Delay = Thing[3] | |
1536 | local IncX = Thing[4] | |
1537 | local IncY = Thing[5] | |
1538 | local IncZ = Thing[6] | |
1539 | if Thing[1].Transparency <= 1 then | |
1540 | if Thing[2] == "Block1" then | |
1541 | Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
1542 | Mesh = Thing[1].Mesh | |
1543 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1544 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1545 | else | |
1546 | if Thing[2] == "Block2" then | |
1547 | Thing[1].CFrame = Thing[1].CFrame | |
1548 | Mesh = Thing[7] | |
1549 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1550 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1551 | else | |
1552 | if Thing[2] == "Cylinder" then | |
1553 | Mesh = Thing[1].Mesh | |
1554 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1555 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1556 | else | |
1557 | if Thing[2] == "Blood" then | |
1558 | Mesh = Thing[7] | |
1559 | Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0) | |
1560 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1561 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1562 | else | |
1563 | if Thing[2] == "Elec" then | |
1564 | Mesh = Thing[1].Mesh | |
1565 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9]) | |
1566 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1567 | else | |
1568 | if Thing[2] == "Disappear" then | |
1569 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1570 | else | |
1571 | if Thing[2] == "Shatter" then | |
1572 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1573 | Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0) | |
1574 | Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0) | |
1575 | Thing[6] = Thing[6] + Thing[5] | |
1576 | end | |
1577 | end | |
1578 | end | |
1579 | end | |
1580 | end | |
1581 | end | |
1582 | end | |
1583 | else | |
1584 | Part.Parent = nil | |
1585 | table.remove(Effects, e) | |
1586 | end | |
1587 | end | |
1588 | end | |
1589 | end | |
1590 | end | |
1591 | end |