SHOW:
|
|
- or go back to the newest paste.
1 | --[[ | |
2 | @Name: Mortis | |
3 | @Author: iKrypto | |
4 | @Date: 2/23/17 | |
5 | @Engine: Lua 5.1 | |
6 | ||
7 | @Notes: | |
8 | - Finished on 2/23/17 | |
9 | - Get whitelisted to run this by Darkus_Theory or it will just crash you lol (Antileak!) | |
10 | - Or just be in https://www.roblox.com/My/Groups.aspx?gid=971711 this will also allow you to run it | |
11 | ||
12 | @Movelist: | |
13 | ~E: Apply DOT | |
14 | ~R: Teleport | |
15 | ~Q: Increase DOT damage | |
16 | ~F: AoE ULT (Applies DOT to everyone in zone) | |
17 | ~X: SurrenderToMadness > Increases Damage Output but also damages you overtime for increasing percents (Not finished) | |
18 | ~C: Haunt > Increases Damage for 8 seconds on your target | |
19 | ~T: Target MousePlayer | |
20 | ~Y: Target Self | |
21 | ||
22 | [Targetting anyone will make these abilities go right to them, therefore, target = easy button] | |
23 | ||
24 | ]] | |
25 | ||
26 | wait(0.003) | |
27 | --print'starting script...' | |
28 | ||
29 | local startLoad = tick() | |
30 | script.Name = " Mortis" | |
31 | ||
32 | local Player = game:service("Players").LocalPlayer | |
33 | repeat wait() until Player.Character ~= nil | |
34 | ||
35 | -- todo: | |
36 | ||
37 | local plrs = game:GetService('Players') | |
38 | local plr = plrs.LocalPlayer | |
39 | local char = plr.Character | |
40 | local bp = plr.Backpack | |
41 | local hum = char.Humanoid | |
42 | local T = char.Torso | |
43 | local Character = char | |
44 | local Humanoid = hum | |
45 | local torso = char.Torso | |
46 | local kick = false | |
47 | local Char = Player.Character | |
48 | local char = Char | |
49 | local mouse = Player:GetMouse() | |
50 | local Effects = {} | |
51 | local Backpack = Player.Backpack | |
52 | local PlayerGui = Player.PlayerGui | |
53 | local Camera = workspace.CurrentCamera | |
54 | local damageAmp = 200000000 | |
55 | local Humanoid = Char:WaitForChild("Humanoid") | |
56 | local Torso = Char:WaitForChild("Torso") | |
57 | local Head = Char:WaitForChild("Head") | |
58 | local ra = Char:WaitForChild("Right Arm") | |
59 | local la = Char:WaitForChild("Left Arm") | |
60 | local rl = Char:WaitForChild("Right Leg") | |
61 | local ll = Char:WaitForChild("Left Leg") | |
62 | local rs = Torso:WaitForChild("Right Shoulder") | |
63 | local ls = Torso:WaitForChild("Left Shoulder") | |
64 | local rh = Torso:WaitForChild("Right Hip") | |
65 | local lh = Torso:WaitForChild("Left Hip") | |
66 | local neck = Torso:WaitForChild("Neck") | |
67 | local rootpart = Char:WaitForChild("HumanoidRootPart") | |
68 | local rj = rootpart:WaitForChild("RootJoint") | |
69 | local anim = Char:WaitForChild("Animate") | |
70 | local RunService = game:GetService("RunService") | |
71 | local UIA = game:GetService("UserInputService") | |
72 | local CF = CFrame.new | |
73 | local CA = CFrame.Angles | |
74 | local FEA = CFrame.fromEulerAnglesXYZ | |
75 | local Create = LoadLibrary("RbxUtility").Create | |
76 | local FAA = CFrame.fromAxisAngle | |
77 | local V3 = Vector3.new | |
78 | local CN = Color3.new | |
79 | local Ice = Instance.new | |
80 | local BC = BrickColor.new | |
81 | local UD2 = UDim2.new | |
82 | local C3 = Color3.new | |
83 | local MR = math.rad | |
84 | local MP = math.pi | |
85 | local MD = math.deg | |
86 | local MH = math.huge | |
87 | local MS = math.sin | |
88 | local MC = math.cos | |
89 | local MT = math.tan | |
90 | local MAS = math.asin | |
91 | local MAC = math.acos | |
92 | local MAT = math.atan | |
93 | local Keys = {} | |
94 | local sine = 0 | |
95 | local change = 1.1 | |
96 | local components = CF().components | |
97 | local State = "Calm" | |
98 | local Slash = false | |
99 | local Sheathed = false | |
100 | local H=true | |
101 | local it = Instance.new | |
102 | local vt = Vector3.new | |
103 | local cf = CFrame.new | |
104 | local euler = CFrame.fromEulerAnglesXYZ | |
105 | local angles = CFrame.Angles | |
106 | local combocounter = 0 | |
107 | local Stealthed = false | |
108 | local tMesh,asset = "rbxasset://fonts/torso.mesh","rbxassetid://" | |
109 | local meshes,sounds = {blast = 20329976,ring = 3270017,spike = 1033714,cone = 1082802,crown = 20329976,cloud = 1095708,diamond = 9756362},{laser = 166196553;gun = 131070686;falling = 138206037;hit = 146163493;twirl = 46299547;explosion = 142070127} | |
110 | local Intellect,Haste,damage = 2,.2,0 | |
111 | local stats,Parts,Cooldowns,Damage,recountData,parts,Damaged,Ally,Buffs,canBeKillt,hold = {},{},{},{},{},{},{},{},{},{},{} | |
112 | local Ctrl,Cam,lastclick,btimer = false,game.Workspace:FindFirstChild('currentCamera'),tick(),0 | |
113 | game:service'Lighting'.Outlines = false | |
114 | Cha = char | |
115 | it=Instance.new | |
116 | vt=Vector3.new | |
117 | cn=CFrame.new | |
118 | euler=CFrame.fromEulerAnglesXYZ | |
119 | angles=CFrame.Angles | |
120 | -- if leaked, don't edit this value | |
121 | -- it lets other scripts know this is | |
122 | -- a linked script so that you can do | |
123 | -- extra features such as slowing, stunning | |
124 | -- buffing, healing etc. Thanks. | |
125 | local iAmDarkusScript = Instance.new('Model') | |
126 | iAmDarkusScript.Parent = hum | |
127 | iAmDarkusScript.Name = 'Property of Darkus_Theory' | |
128 | Runes = {"rbxassetid://200326272", "rbxassetid://200326330", "rbxassetid://200326394", "rbxassetid://200326465", "rbxassetid://200326593", "rbxassetid://200326667", "rbxassetid://200326796", "rbxassetid://200326880", "rbxassetid://200327025", "rbxassetid://200327088", "rbxassetid://200327279", "rbxassetid://200327394", "rbxassetid://200327439", "rbxassetid://200327517", "rbxassetid://200327625", "rbxassetid://200327725", "rbxassetid://200327804", "rbxassetid://200327922", "rbxassetid://200327991", "rbxassetid://200328063", "rbxassetid://200328131", "rbxassetid://200328211", "rbxassetid://200328319", "rbxassetid://200328365", "rbxassetid://200328401", "rbxassetid://200328461", "rbxassetid://200328530", "rbxassetid://200328645", "rbxassetid://200328713"} | |
129 | ContentProvider = game:GetService("ContentProvider") | |
130 | for _,v in pairs(Runes) do | |
131 | ContentProvider:Preload(v) | |
132 | end | |
133 | humanoid = char:findFirstChild("Humanoid") | |
134 | hum = humanoid | |
135 | torso = char:findFirstChild("Torso") | |
136 | head = char.Head | |
137 | ra = char:findFirstChild("Right Arm") | |
138 | ra.CanCollide = true | |
139 | la = char:findFirstChild("Left Arm") | |
140 | la.CanCollide = true | |
141 | rl = char:findFirstChild("Right Leg") | |
142 | rl.CanCollide = true | |
143 | ll = char:findFirstChild("Left Leg") | |
144 | ll.CanCollide = true | |
145 | rs = torso:findFirstChild("Right Shoulder") | |
146 | ls = torso:findFirstChild("Left Shoulder") | |
147 | rh = torso:findFirstChild("Right Hip") | |
148 | lh = torso:findFirstChild("Left Hip") | |
149 | neck = torso:findFirstChild("Neck") | |
150 | rootpart = char:findFirstChild("HumanoidRootPart") | |
151 | rj = rootpart:findFirstChild("RootJoint") | |
152 | anim = char:findFirstChild("Animate") | |
153 | camera = workspace.CurrentCamera | |
154 | plr.CameraMaxZoomDistance = math.huge | |
155 | for _,x in pairs(char:children()) do | |
156 | if x:IsA('Shirt') then x:remove() end | |
157 | if x:IsA('Pants') then x:remove() end | |
158 | if x:IsA('Accessory') then x:remove() end | |
159 | end | |
160 | pcall(function()anim:Destroy()end) | |
161 | pcall(function()char["Health"]:Destroy() end) | |
162 | pcall(function()humanoid.Animator:Destroy()end) | |
163 | pcall(function()head.face:Destroy()end) | |
164 | local rjo = rootpart.RootJoint:Clone() | |
165 | newWeld = function(wp0, wp1, wc0x, wc0y, wc0z) | |
166 | local wld = Instance.new("Weld", wp1) | |
167 | wld.Part0 = wp0 | |
168 | wld.Part1 = wp1 | |
169 | wld.C0 = CFrame.new(wc0x, wc0y, wc0z) | |
170 | return wld | |
171 | end | |
172 | ||
173 | local theme_songs = {{300612771,1}} | |
174 | print('Theme songs: '..#theme_songs) | |
175 | local sund = Instance.new('Sound', head) | |
176 | sund.SoundId = ''--601852677 (Pumped up kicks) --196838861(libera me from hell) --144390446 (mememe) --276298931 (ending theme gurren lagann) -- 274555117 (gurren lagann midway music) -- 335167645 (one punch man theme saitama) -- 337732102 (Another one punch man song) -- 441375145 ( gurren lagann pretty sad song) | |
177 | local ggg = theme_songs[math.random(1,#theme_songs)] | |
178 | sund.SoundId = 'rbxassetid://'..ggg[1] | |
179 | sund.Pitch = ggg[2] | |
180 | sund.Volume = .35 | |
181 | sund.MaxDistance = 100 | |
182 | sund.Name = 'Mesh' | |
183 | sund.Changed:connect(function(a) | |
184 | sund.Name = tick() | |
185 | if a == 'Volume' then | |
186 | sund.Volume = 1 | |
187 | elseif a=='MaxDistance' then | |
188 | sund.MaxDistance = 200 | |
189 | end | |
190 | end) | |
191 | ||
192 | ||
193 | local berserk = false | |
194 | local keepPlaying = true | |
195 | ||
196 | coroutine.wrap(function() | |
197 | wait(5) | |
198 | while not berserk do | |
199 | if not sund.Playing and keepPlaying then | |
200 | local selected = theme_songs[math.random(1,#theme_songs)] | |
201 | sund:Stop() | |
202 | sund.SoundId = 'rbxassetid://'..selected[1] | |
203 | sund.Pitch = selected[2] | |
204 | wait() | |
205 | sund:Play() | |
206 | end | |
207 | wait() | |
208 | end | |
209 | end)() | |
210 | ||
211 | Ally[hum] = true | |
212 | ||
213 | local mult = 1 | |
214 | ||
215 | la.Size = la.Size * mult | |
216 | ra.Size = ra.Size * mult | |
217 | ll.Size = ll.Size * mult | |
218 | rl.Size = rl.Size * mult | |
219 | torso.Size = torso.Size * mult | |
220 | head.Size = head.Size * mult | |
221 | rootpart.Size = rootpart.Size * mult | |
222 | ||
223 | local lm = newWeld(torso, la, -1.5*mult, 0.5*mult, 0) | |
224 | lm.C1 = CFrame.new(0, 0.5*mult, 0) | |
225 | local rm = newWeld(torso, ra, 1.5*mult, 0.5*mult, 0) | |
226 | rm.C1 = CFrame.new(0, 0.5*mult, 0) | |
227 | local neck = newWeld(torso, head, 0, mult, 0) | |
228 | local llegm = newWeld(torso, ll, -0.5*mult, -1*mult, 0) | |
229 | llegm.C1 = CFrame.new(0, mult, 0) | |
230 | local rlegm = newWeld(torso, rl, 0.5*mult, -1*mult, 0) | |
231 | rlegm.C1 = CFrame.new(0, mult, 0) | |
232 | local rj = rjo:Clone() | |
233 | rj.Part0 = rootpart | |
234 | rj.Part1 = torso | |
235 | rj.Parent = rootpart | |
236 | neck.C1 = CFrame.new(0, -(mult/2), 0) | |
237 | neckc0 = neck.C0 | |
238 | rsc0 = rm.C0 | |
239 | lsc0 = lm.C0 | |
240 | llc0 = llegm.C0 | |
241 | rlc0 = rlegm.C0 | |
242 | rootc0 = rj.C0 | |
243 | rootc1 = rj.C1 | |
244 | wait() | |
245 | ||
246 | local shirt = Instance.new('Shirt', char) | |
247 | shirt.Name = 'Wild Gladiator\'s Felweave Raiment' | |
248 | shirt.ShirtTemplate = 'http://www.roblox.com/asset/?id=166273878' | |
249 | local pants = Instance.new('Pants', char) | |
250 | pants.Name = 'Wild Gladiator\'s Felweave Trousers' | |
251 | pants.PantsTemplate = 'http://www.roblox.com/asset/?id=166273938' | |
252 | local h = Instance.new('Part', char) | |
253 | h.Name = 'DK Hood' | |
254 | h.TopSurface,h.BottomSurface = 0,0 | |
255 | h.Size = Vector3.new(2.3*mult, 2.3*mult, 2.3*mult) | |
256 | h.CFrame = torso.CFrame | |
257 | h.CanCollide = false | |
258 | h.BrickColor = BrickColor.new('Really black') | |
259 | h:BreakJoints() | |
260 | local m = Instance.new('SpecialMesh', h) | |
261 | m.Name = "Wild Gladiator's Felweave Cowl" | |
262 | m.MeshType = 'FileMesh' | |
263 | m.Scale = Vector3.new(mult, mult, mult) | |
264 | m.MeshId = 'http://www.roblox.com/asset/?id=16952952' | |
265 | m.VertexColor = Vector3.new(1,1,1) | |
266 | local Weld = Instance.new("Weld") | |
267 | Weld.Part0 = char.Head | |
268 | Weld.Part1 = h | |
269 | Weld.Parent = char.Head | |
270 | Weld.C0 = CFrame.new(0, .3*mult, 0) | |
271 | ||
272 | local holdah = char | |
273 | local Aur = Instance.new('Part') | |
274 | Aur.Transparency = .55 | |
275 | - | Aur.BrickColor = BrickColor.new'Lime green' |
275 | + | Aur.BrickColor = BrickColor.new'Really red' |
276 | Aur.Name = 'Aura' | |
277 | Aur.Locked = true | |
278 | Aur.Size = Vector3.new(1.05*mult,2.05*mult,1.05*mult) | |
279 | Aur.Material = 'Neon' | |
280 | ||
281 | local asdddd = {ra,la,rl,ll} | |
282 | ||
283 | for q,e in next, asdddd do | |
284 | local asdfert = Aur:Clone() | |
285 | asdfert.Parent = holdah | |
286 | local wlder = Instance.new('Weld') | |
287 | wlder.Parent = holdah | |
288 | wlder.Part0 = asdfert | |
289 | wlder.Part1 = e | |
290 | end | |
291 | ||
292 | Aur.Parent = holdah | |
293 | Aur.Size = Vector3.new(2.05*mult, 2.05*mult, 1.05*mult) | |
294 | local w = Instance.new('Weld') | |
295 | w.Parent = holdah | |
296 | w.Part0 = torso | |
297 | w.Part1 = Aur | |
298 | ||
299 | local fakehead = head:Clone() | |
300 | fakehead.Parent = holdah | |
301 | fakehead.Transparency = .55 | |
302 | - | fakehead.BrickColor = BrickColor.new'Lime green' |
302 | + | fakehead.BrickColor = BrickColor.new'Really red' |
303 | fakehead.Name = 'Aura' | |
304 | fakehead.Size = Vector3.new(1.05*mult,1.05*mult,1.05*mult) | |
305 | fakehead.Material = 'Neon' | |
306 | local w = Instance.new('Weld') | |
307 | w.Parent = holdah | |
308 | w.Part0 = head | |
309 | w.Part1 = fakehead | |
310 | ||
311 | local h = Instance.new('Part', char) | |
312 | h.Name = 'DK HoodM' | |
313 | h.TopSurface,h.BottomSurface = 0,0 | |
314 | h.Size = Vector3.new(2.3*mult, 2.3*mult, 2.3*mult) | |
315 | h.CFrame = torso.CFrame | |
316 | h.CanCollide = false | |
317 | h.Parent = holdah | |
318 | h.Transparency = .55 | |
319 | - | h.BrickColor = BrickColor.new'Lime green' |
319 | + | h.BrickColor = BrickColor.new'Really red' |
320 | h.Name = 'Aura' | |
321 | h.Material = 'Neon' | |
322 | h:BreakJoints() | |
323 | local m = Instance.new('SpecialMesh', h) | |
324 | m.Name = "Wild Gladiator's Felweave CowlM" | |
325 | m.MeshType = 'FileMesh' | |
326 | m.Scale = Vector3.new(mult+.06, mult+.06, mult+.06) | |
327 | m.MeshId = 'http://www.roblox.com/asset/?id=16952952' | |
328 | m.VertexColor = Vector3.new(1,1,1) | |
329 | local Weld = Instance.new("Weld") | |
330 | Weld.Part0 = char.Head | |
331 | Weld.Part1 = h | |
332 | Weld.Parent = char.Head | |
333 | Weld.C0 = CFrame.new(0, .3*mult, 0) | |
334 | ||
335 | ArtificialHB = Instance.new("BindableEvent", script) | |
336 | ArtificialHB.Name = "Heartbeat" | |
337 | ||
338 | script:WaitForChild("Heartbeat") | |
339 | ||
340 | frame = 1 / 60 | |
341 | tf = 0 | |
342 | allowframeloss = true | |
343 | tossremainder = false | |
344 | lastframe = tick() | |
345 | script.Heartbeat:Fire() | |
346 | ||
347 | game:GetService("RunService").Heartbeat:connect(function(s, p) | |
348 | tf = tf + s | |
349 | if tf >= frame then | |
350 | if allowframeloss then | |
351 | script.Heartbeat:Fire() | |
352 | lastframe = tick() | |
353 | else | |
354 | for i = 1, math.floor(tf / frame) do | |
355 | script.Heartbeat:Fire() | |
356 | end | |
357 | lastframe = tick() | |
358 | end | |
359 | if tossremainder then | |
360 | tf = 0 | |
361 | else | |
362 | tf = tf - frame * math.floor(tf / frame) | |
363 | end | |
364 | end | |
365 | end) | |
366 | ||
367 | function swait(num) | |
368 | if num == 0 or num == nil then | |
369 | ArtificialHB.Event:wait() | |
370 | else | |
371 | for i = 0, num do | |
372 | ArtificialHB.Event:wait() | |
373 | end | |
374 | end | |
375 | end | |
376 | ||
377 | ||
378 | function Creat(Instanc,prop) | |
379 | local p=Instance.new(Instanc) | |
380 | for i,v in pairs(prop) do | |
381 | p[i]=v | |
382 | end | |
383 | return p | |
384 | end | |
385 | ||
386 | function weldya(thing1,thing2) | |
387 | local a = Instance.new('Weld'); | |
388 | pcall(function() | |
389 | --a.Parent = thing1; | |
390 | a.Part0 = thing1; | |
391 | a.Part1 = thing2; | |
392 | end) | |
393 | return a | |
394 | end | |
395 | ||
396 | function Dmg() | |
397 | local partofdeath = Instance.new'Part' | |
398 | local function CreateRegion3FromLocAndSize(Position, Size) | |
399 | local SizeOffset = Size/2 | |
400 | local Point1 = Position - SizeOffset | |
401 | local Point2 = Position + SizeOffset | |
402 | return Region3.new(Point1, Point2) | |
403 | end | |
404 | local reg = CreateRegion3FromLocAndSize(partofdeath.Position, partofdeath.Size) | |
405 | for i, v in pairs(game.Workspace:FindPartsInRegion3WithIgnoreList(reg, char:GetChildren(), 100)) do | |
406 | spawn(function() | |
407 | end) | |
408 | end | |
409 | end | |
410 | ||
411 | function CreateSound(id, par, vol, pit) | |
412 | coroutine.resume(coroutine.create(function() | |
413 | local sou = Instance.new("Sound", par or char) | |
414 | sou.Volume = vol | |
415 | sou.Pitch = pit or 1 | |
416 | sou.SoundId = id | |
417 | swait() | |
418 | sou:play() | |
419 | game:GetService("Debris"):AddItem(sou, 6) | |
420 | end)) | |
421 | end | |
422 | ||
423 | local pony = Instance.new('PointLight', Torso) | |
424 | pony.Name = 'LePontyPontz' | |
425 | pony.Brightness = 1 | |
426 | pony.Color = Color3.new(0, 0, 0) | |
427 | ||
428 | coroutine.wrap(function() | |
429 | game:service'RunService'.Stepped:connect(function() | |
430 | pony.Range = 8+math.abs(math.sin(tick()/2))*4 | |
431 | end) | |
432 | end)() | |
433 | ||
434 | local function setupPart(part) | |
435 | part.Anchored = true | |
436 | part.FormFactor = 'Custom' | |
437 | part.CanCollide = false | |
438 | part.BrickColor = BrickColor.new("Sea green") | |
439 | part.Material = "Neon" | |
440 | part.TopSurface = 'SmoothNoOutlines' | |
441 | part.BottomSurface = 'SmoothNoOutlines' | |
442 | part.FrontSurface = 'SmoothNoOutlines' | |
443 | part.BackSurface = 'SmoothNoOutlines' | |
444 | part.LeftSurface = 'SmoothNoOutlines' | |
445 | part.RightSurface = 'SmoothNoOutlines' | |
446 | end | |
447 | ||
448 | ||
449 | function BlockEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type) | |
450 | local prt = CreatePart(char, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new()) | |
451 | prt.Anchored = true | |
452 | prt.CFrame = cframe | |
453 | local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
454 | game:GetService("Debris"):AddItem(prt, 10) | |
455 | if Type == 1 or Type == nil then | |
456 | table.insert(Effects, { | |
457 | prt, | |
458 | "Block1b", | |
459 | delay, | |
460 | x3, | |
461 | y3, | |
462 | z3, | |
463 | msh | |
464 | }) | |
465 | elseif Type == 2 then | |
466 | table.insert(Effects, { | |
467 | prt, | |
468 | "Block2b", | |
469 | delay, | |
470 | x3, | |
471 | y3, | |
472 | z3, | |
473 | msh | |
474 | }) | |
475 | end | |
476 | end | |
477 | ||
478 | ||
479 | function getDPS(override) | |
480 | local crit = math.random(1,15) | |
481 | local DPS = ((stats.Intellect) * (crit > 11 and stats.CriticalStrikeBonus or 1.2)) | |
482 | DPS = math.ceil(DPS) | |
483 | lastdps = tick() | |
484 | if berserk then DPS = DPS * 2 end | |
485 | if cheating then DPS = DPS * 1.5 end | |
486 | if damageAmp>0 then DPS=DPS*damageAmp end | |
487 | return DPS,((crit > 13) and true or false) | |
488 | end | |
489 | ||
490 | function newStat(stat, typeof, value) | |
491 | if stats[stat] then return end | |
492 | stats[stat] = value | |
493 | return stats[stat] | |
494 | end | |
495 | ||
496 | local function Implode(CF,Color) | |
497 | local cf = CF | |
498 | local f = Instance.new("Part",Character) | |
499 | f.BrickColor = Color | |
500 | f.Size = Vector3.new(1,1,1) | |
501 | f.Anchored = true | |
502 | f.Locked = true | |
503 | f.CanCollide = false | |
504 | f.TopSurface = 0 | |
505 | f.Transparency = 1 | |
506 | f.BottomSurface = 0 | |
507 | f.CFrame = cf | |
508 | local sm = Instance.new("SpecialMesh",f) | |
509 | sm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
510 | sm.Scale = Vector3.new(30,30,30) | |
511 | coroutine.wrap(function() | |
512 | for i = 1,10 do | |
513 | f.Transparency = f.Transparency -0.1 | |
514 | sm.Scale = sm.Scale - Vector3.new(3,3,3) | |
515 | swait() | |
516 | end | |
517 | f:Destroy() | |
518 | end)() | |
519 | local ax = Instance.new("Part",Character) | |
520 | ax.Size = Vector3.new(30,30,30) | |
521 | ax.TopSurface = 0 | |
522 | ax.BottomSurface = 0 | |
523 | ax.Transparency = 0 | |
524 | ax.Locked = true | |
525 | ax.BrickColor = Color | |
526 | ax.Shape = "Ball" | |
527 | ax.CanCollide = false | |
528 | ax.CFrame = cf | |
529 | ax.Anchored = true | |
530 | ax.Transparency = 1 | |
531 | coroutine.wrap(function() | |
532 | for i = 1,10 do | |
533 | ax.Size = ax.Size - Vector3.new(math.random(1,3)+1,math.random(1,3)+1,math.random(1,3)+1) | |
534 | ax.Transparency = ax.Transparency -0.1 | |
535 | ax.CFrame = cf | |
536 | swait() | |
537 | end | |
538 | ax:Destroy() | |
539 | end)() | |
540 | end | |
541 | local function Explode(CF,Color,SMM,BBoom) | |
542 | local cf = CF | |
543 | local f = Instance.new("Part",Character) | |
544 | f.BrickColor = Color | |
545 | f.Size = Vector3.new(5,1,5) | |
546 | f.Anchored = true | |
547 | f.Locked = true | |
548 | f.CanCollide = false | |
549 | f.TopSurface = 0 | |
550 | f.BottomSurface = 0 | |
551 | f.CFrame = cf | |
552 | local sm = Instance.new("SpecialMesh",f) | |
553 | sm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
554 | sm.Scale = Vector3.new(5,5,5) | |
555 | coroutine.wrap(function() | |
556 | for i = 1,20 do | |
557 | f.Transparency = f.Transparency +0.05 | |
558 | sm.Scale = sm.Scale + Vector3.new(10,10,10) | |
559 | swait() | |
560 | end | |
561 | f:Destroy() | |
562 | end)() | |
563 | if BBoom then do | |
564 | local zs = BBoom | |
565 | local ax = Instance.new("Part",Character) | |
566 | ax.Size = Vector3.new(1,1,1) | |
567 | ax.TopSurface = 0 | |
568 | ax.BottomSurface = 0 | |
569 | ax.Transparency = 0 | |
570 | ax.Locked = true | |
571 | ax.BrickColor = Color | |
572 | ax.Shape = "Ball" | |
573 | ax.CanCollide = false | |
574 | ax.CFrame = zs | |
575 | ax.Anchored = true | |
576 | local SMMx = Instance.new("SpecialMesh",ax) | |
577 | SMMx.MeshId = "http://www.roblox.com/asset/?id=1323306" | |
578 | SMMx.Scale = Vector3.new(1,1,1) | |
579 | coroutine.wrap(function() | |
580 | for i = 1,20 do | |
581 | SMMx.Scale = SMMx.Scale + Vector3.new(math.random(1,3)+1,math.random(1,3)+1,math.random(1,3)+1) | |
582 | ax.Transparency = ax.Transparency +0.05 | |
583 | ax.CFrame = zs | |
584 | swait() | |
585 | end | |
586 | ax:Destroy() | |
587 | end)() | |
588 | end | |
589 | end | |
590 | local ax = Instance.new("Part",Character) | |
591 | ax.Size = Vector3.new(1,1,1) | |
592 | ax.TopSurface = 0 | |
593 | ax.BottomSurface = 0 | |
594 | ax.Transparency = 0 | |
595 | ax.Locked = true | |
596 | ax.BrickColor = Color | |
597 | ax.Shape = "Ball" | |
598 | ax.CanCollide = false | |
599 | ax.CFrame = cf | |
600 | ax.Anchored = true | |
601 | local SMMx do if SMM then | |
602 | SMMx = Instance.new("SpecialMesh",ax) | |
603 | SMMx.MeshId = SMM | |
604 | SMMx.Scale = Vector3.new(1,1,1) | |
605 | end | |
606 | end | |
607 | coroutine.wrap(function() | |
608 | for i = 1,20 do | |
609 | if SMM then | |
610 | SMMx.Scale = SMMx.Scale + Vector3.new(math.random(1,3)+2,math.random(1,3)+2,math.random(1,3)+2) | |
611 | else | |
612 | ax.Size = ax.Size + Vector3.new(math.random(1,3)+1,math.random(1,3)+1,math.random(1,3)+1) | |
613 | end | |
614 | ax.Transparency = ax.Transparency +0.05 | |
615 | ax.CFrame = cf | |
616 | swait() | |
617 | end | |
618 | ax:Destroy() | |
619 | end)() | |
620 | end | |
621 | ||
622 | function NoOutline(Part) | |
623 | Part.TopSurface, Part.BottomSurface, Part.LeftSurface, Part.RightSurface, Part.FrontSurface, Part.BackSurface = 10, 10, 10, 10, 10, 10 | |
624 | end | |
625 | ||
626 | function nooutline(part) | |
627 | part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10 | |
628 | end | |
629 | ||
630 | function checkload() | |
631 | end | |
632 | ||
633 | local gui=it("GuiMain") | |
634 | gui.Parent=Player.PlayerGui | |
635 | gui.Name="WeaponGUI" | |
636 | local frame=it("Frame") | |
637 | frame.Parent=gui | |
638 | frame.BackgroundColor3=Color3.new(255,255,255) | |
639 | frame.BackgroundTransparency=1 | |
640 | frame.BorderColor3=Color3.new(17,17,17) | |
641 | frame.Size=UDim2.new(0.0500000007, 0, 0.100000001, 0) | |
642 | frame.Position=UDim2.new(0.4,0,0.1,0) | |
643 | local barmana1=it("TextLabel") | |
644 | barmana1.Parent=frame | |
645 | barmana1.Text=" " | |
646 | barmana1.BackgroundTransparency=0 | |
647 | barmana1.BackgroundColor3=Color3.new(0,0,0) | |
648 | barmana1.SizeConstraint="RelativeXY" | |
649 | barmana1.TextXAlignment="Center" | |
650 | barmana1.TextYAlignment="Center" | |
651 | barmana1.Position=UDim2.new(0,0,0,0) | |
652 | barmana1.Size=UDim2.new(4,0,0.2,0) | |
653 | local barmana2=it("TextLabel") | |
654 | barmana2.Parent=frame | |
655 | barmana2.Text=" " | |
656 | barmana2.BackgroundTransparency=0 | |
657 | barmana2.BackgroundColor3=Torso.Color | |
658 | barmana2.SizeConstraint="RelativeXY" | |
659 | barmana2.TextXAlignment="Center" | |
660 | barmana2.TextYAlignment="Center" | |
661 | barmana2.Position=UDim2.new(0,0,0,0) | |
662 | barmana2.Size=UDim2.new(4*100/100,0,0.2,0) | |
663 | local barmana4=it("TextLabel") | |
664 | barmana4.Parent=frame | |
665 | barmana4.Text="Energy [100]" | |
666 | barmana4.BackgroundTransparency=1 | |
667 | barmana4.BackgroundColor3=Color3.new(0,0,0) | |
668 | barmana4.SizeConstraint="RelativeXY" | |
669 | barmana4.TextXAlignment="Center" | |
670 | barmana4.TextYAlignment="Center" | |
671 | barmana4.Position=UDim2.new(0,0,-0.3,0) | |
672 | barmana4.Size=UDim2.new(4,0,0.2,0) | |
673 | barmana4.FontSize="Size9" | |
674 | barmana4.TextStrokeTransparency=0 | |
675 | barmana4.TextColor=BrickColor.new("White") | |
676 | ||
677 | local Create = LoadLibrary("RbxUtility").Create | |
678 | function party(formfactor, parent, material, reflectance, transparency, brickcolor, name, size) | |
679 | local fp = Create("Part"){ | |
680 | formFactor = formfactor, | |
681 | Parent = parent, | |
682 | Reflectance = reflectance, | |
683 | Transparency = transparency, | |
684 | CanCollide = false, | |
685 | Locked = true, | |
686 | BrickColor = BrickColor.new(tostring(brickcolor)), | |
687 | Name = name, | |
688 | Size = size, | |
689 | Position = Character.Torso.Position, | |
690 | Material = material, | |
691 | } | |
692 | nooutline(fp) | |
693 | return fp | |
694 | end | |
695 | ||
696 | function mesh(Mesh, part, meshtype, meshid, offset, scale) | |
697 | local Msh = Create(Mesh){ | |
698 | Parent = part, | |
699 | Offset = offset, | |
700 | Scale = scale, | |
701 | } | |
702 | if Mesh == "SpecialMesh" then | |
703 | Msh.MeshType = meshtype | |
704 | Msh.MeshId = meshid | |
705 | end | |
706 | return Msh | |
707 | end | |
708 | ||
709 | function rayCast(Pos, Dir, Max, Ignore) | |
710 | return game:service("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) | |
711 | end | |
712 | ||
713 | ||
714 | function MagniDamage(Hit,Part,magni,mindam,maxdam,knock,Type, typ) | |
715 | if Part.Name=='Base' then return end | |
716 | for _,c in pairs(workspace:children()) do | |
717 | local hum=searchForHumanoid(c) | |
718 | if hum~=nil then | |
719 | local head=c:findFirstChild("HumanoidRootPart") | |
720 | if head~=nil then | |
721 | local targ=head.Position-Part.Position | |
722 | local mag=targ.magnitude | |
723 | if mag<=magni and c.Name~=Player.Name then | |
724 | local mult = getDPS()+(math.random(mindam,maxdam)/2) | |
725 | damageHuman(hum, mult, head, typ)--Damagefunc(Hit,head,mindam,maxdam,knock,Type,RootPart,.2,"Hit1",1) | |
726 | end | |
727 | end | |
728 | end | |
729 | end | |
730 | end | |
731 | ||
732 | ||
733 | ||
734 | local RbxUtility = LoadLibrary("RbxUtility") | |
735 | local Create = RbxUtility.Create | |
736 | ||
737 | function RemoveOutlines(part) | |
738 | part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10 | |
739 | end | |
740 | ||
741 | function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size) | |
742 | local Part = Create("Part"){ | |
743 | Parent = Parent, | |
744 | Reflectance = Reflectance, | |
745 | Transparency = Transparency, | |
746 | CanCollide = false, | |
747 | Locked = true, | |
748 | BrickColor = BrickColor.new(tostring(BColor)), | |
749 | Name = Name, | |
750 | Size = Size, | |
751 | Material = Material, | |
752 | } | |
753 | RemoveOutlines(Part) | |
754 | return Part | |
755 | end | |
756 | ||
757 | function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale) | |
758 | local Msh = Create(Mesh){ | |
759 | Parent = Part, | |
760 | Offset = OffSet, | |
761 | Scale = Scale, | |
762 | } | |
763 | if Mesh == "SpecialMesh" then | |
764 | Msh.MeshType = MeshType | |
765 | Msh.MeshId = MeshId | |
766 | end | |
767 | return Msh | |
768 | end | |
769 | ||
770 | function useMana(amount) | |
771 | local precalc = stats['Mana']-amount | |
772 | ||
773 | if stats['Mana'] < 0 then return false end | |
774 | if precalc < 0 then return false end | |
775 | ||
776 | stats['Mana'] = precalc | |
777 | ||
778 | return true | |
779 | end | |
780 | ||
781 | local acos = math.acos | |
782 | local sqrt = math.sqrt | |
783 | local Vec3 = Vector3.new | |
784 | local fromAxisAngle = CFrame.fromAxisAngle | |
785 | ||
786 | local function toAxisAngle(CFr) | |
787 | local X,Y,Z,R00,R01,R02,R10,R11,R12,R20,R21,R22 = CFr:components() | |
788 | local Angle = math.acos((R00+R11+R22-1)/2) | |
789 | local A = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2 | |
790 | A = A == 0 and 0.00001 or A | |
791 | local B = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2 | |
792 | B = B == 0 and 0.00001 or B | |
793 | local C = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2 | |
794 | C = C == 0 and 0.00001 or C | |
795 | local x = (R21-R12)/sqrt(A) | |
796 | local y = (R02-R20)/sqrt(B) | |
797 | local z = (R10-R01)/sqrt(C) | |
798 | return Vec3(x,y,z),Angle | |
799 | end | |
800 | ||
801 | function ApplyTrig(Num,Func) | |
802 | local Min,Max = Func(0),Func(1) | |
803 | local i = Func(Num) | |
804 | return (i-Min)/(Max-Min) | |
805 | --[[if Func == "sin" then | |
806 | return (math.sin((1-Num)*math.pi)+1)/2 | |
807 | elseif Func == "cos" then | |
808 | return (math.cos((1-Num)*math.pi)+1)/2 | |
809 | end]] | |
810 | end | |
811 | ||
812 | function LerpCFrame(CFrame1,CFrame2,Num) | |
813 | local Vec,Ang = toAxisAngle(CFrame1:inverse()*CFrame2) | |
814 | return CFrame1*fromAxisAngle(Vec,Ang*Num) + (CFrame2.p-CFrame1.p)*Num | |
815 | end | |
816 | ||
817 | function recount() | |
818 | ||
819 | local totl = {} | |
820 | ||
821 | local function addUp(tbl) | |
822 | local total = 0 | |
823 | for i,v in next,tbl do | |
824 | total = total + v | |
825 | end | |
826 | return total | |
827 | end | |
828 | ||
829 | local function avg(tbl) | |
830 | ||
831 | local num = #tbl | |
832 | local nom = addUp(tbl) | |
833 | ||
834 | return (nom/num) | |
835 | end | |
836 | ||
837 | warn('RECOUNT - All Data') | |
838 | for i,v in pairs(recountData) do | |
839 | local qq = addUp(v) | |
840 | print(i..': '..qq..' ('..math.ceil(avg(v))..')') | |
841 | table.insert(totl, qq) | |
842 | end | |
843 | ||
844 | warn('TOTAL: '..addUp(totl)) | |
845 | ||
846 | end | |
847 | ||
848 | function logDamage(skill, damage) | |
849 | ||
850 | if not recountData[skill] then recountData[skill] = {} end | |
851 | ||
852 | local tbl = recountData[skill] | |
853 | table.insert(tbl, damage) | |
854 | ||
855 | end | |
856 | cn,ca,bc,v3,r = CFrame.new,CFrame.Angles,BrickColor.new,Vector3.new,function(a)return (math.random()-.5)*2*(a or 1) end | |
857 | deg,nf,c3,ins,ma,pi,mr = math.deg,math.floor,Color3.new,Instance.new,math.abs,math.pi,math.rad | |
858 | local part = function(prnt,cfr,siz,col,anc,canc,tra,mat,typ) | |
859 | local p = ins(typ or "Part") | |
860 | p.FormFactor = "Custom" | |
861 | p.Material = mat | |
862 | p.Transparency = tra | |
863 | p.CanCollide = canc | |
864 | p.Anchored = anc | |
865 | p.BrickColor = bc(col) | |
866 | p.Size = siz | |
867 | p.CFrame = cfr | |
868 | p.Parent = prnt | |
869 | p.Locked = true | |
870 | p.TopSurface,p.BottomSurface = 0,0 | |
871 | p:BreakJoints() | |
872 | return p | |
873 | end | |
874 | local mesh = function(typ,prnt,scal,mtyp,mid,mtx) | |
875 | local m = ins(typ or "SpecialMesh") | |
876 | if mtyp then m.MeshType = mtyp end | |
877 | if mid then m.MeshId = mid end | |
878 | if mtx then m.TextureId = mtx end | |
879 | if scal then m.Scale = scal end | |
880 | m.Parent = prnt | |
881 | return m | |
882 | end | |
883 | local weldy = function(prt1,prt2,c0,c1) | |
884 | local w = ins("Weld",prt1) | |
885 | w.Part0 = prt1 | |
886 | w.Part1 = prt2 | |
887 | w.C0,w.C1 = c0 or cn(),c1 or cn() | |
888 | return w | |
889 | end | |
890 | function explosion(where,heat,size,pres) | |
891 | a = Instance.new("Explosion",Workspace) | |
892 | a.BlastRadius = size | |
893 | a.BlastPressure = pres | |
894 | a.Position = where.Position | |
895 | local f = Instance.new("Fire",p) | |
896 | f.Size = size | |
897 | f.Heat = heat | |
898 | f:Remove() | |
899 | end | |
900 | function flame(cf,heat,size,instant) | |
901 | local p = Instance.new("Part") | |
902 | p.formFactor = 3 | |
903 | p.Anchored = true | |
904 | p.CanCollide = false | |
905 | p.Locked = true | |
906 | p.Transparency = 1 | |
907 | p.Size = Vector3.new() | |
908 | p.CFrame = cf | |
909 | p.Parent = char | |
910 | local f = Instance.new("Fire",p) | |
911 | f.Size = size | |
912 | f.Heat = heat | |
913 | game.Debris:AddItem(p,1.1) | |
914 | delay(0.1,function() | |
915 | f.Enabled = false | |
916 | if instant then | |
917 | p:Destroy() | |
918 | end | |
919 | end) | |
920 | end | |
921 | ||
922 | function getRegion(point,range,ignore) | |
923 | return workspace:FindPartsInRegion3WithIgnoreList(Region3.new(point-Vector3.new(1,1,1)*range/2,point+Vector3.new(1,1,1)*range/2),ignore,100) | |
924 | end | |
925 | ||
926 | function getHumanoid(v) | |
927 | if v and v.Parent then | |
928 | local h = v.Parent:findFirstChild("Humanoid") | |
929 | if not h then | |
930 | for _,p in ipairs(v.Parent:GetChildren()) do | |
931 | if p:isA("Humanoid") then | |
932 | h = p | |
933 | end | |
934 | end | |
935 | if not h and v.Parent.Parent and v.Parent.Parent ~= game and v.Parent.Parent ~= workspace then | |
936 | for _,p in ipairs(v.Parent.Parent:GetChildren()) do | |
937 | if p:isA("Humanoid") then | |
938 | h = p | |
939 | end | |
940 | end | |
941 | end | |
942 | end | |
943 | return h | |
944 | end | |
945 | end | |
946 | function advRay(start,point) | |
947 | local dis = (start-(start+point)).magnitude | |
948 | local dir = ((start+point)-start).unit | |
949 | if dis > 999 then | |
950 | dis = 999 | |
951 | end | |
952 | point = dis*dir | |
953 | hit,pos = workspace:FindPartOnRayWithIgnoreList(Ray.new(start,point),{player.Character}) | |
954 | if hit and not hit.CanCollide and not getHumanoid(hit) then | |
955 | function persistentRay(list) | |
956 | hit,pos = workspace:FindPartOnRayWithIgnoreList(Ray.new(start,point),{player.Character,unpack(list)}) | |
957 | if hit and not hit.CanCollide and not getHumanoid(hit) then | |
958 | hit,pos = persistentRay({hit,unpack(list)}) | |
959 | end | |
960 | return hit,pos | |
961 | end | |
962 | hit,pos = persistentRay({hit}) | |
963 | end | |
964 | return hit,pos | |
965 | end | |
966 | ||
967 | function ParticleEmit(Object,Color,Duration) | |
968 | local Counter = 0 | |
969 | coroutine.wrap(function() | |
970 | while Wait(0.3)do | |
971 | if Counter == Duration then break end | |
972 | local p = Instance.new("Part",Object.Parent) | |
973 | p.Name = "Trail" | |
974 | p.TopSurface = 0 | |
975 | p.BottomSurface = 0 | |
976 | p.Anchored = true | |
977 | p.CanCollide = false | |
978 | p.FormFactor = "Custom" | |
979 | p.Size = Vector3.new(0.01,0.01,0.01) | |
980 | p.BrickColor = Color and(type(Color)== 'userdata' and Color or BrickColor.new(Color)) | |
981 | p.CFrame = Object.CFrame * CFrame.new(math.random(-1,1),math.random(-1,1)-3,math.random(-1,1)) | |
982 | local m = Instance.new("BlockMesh",p) | |
983 | m.Scale = Vector3.new(2,2,2) | |
984 | coroutine.wrap(function() | |
985 | for i = 1,15 do | |
986 | p.Transparency = i/15 | |
987 | m.Scale = m.Scale + Vector3.new(0.1,0.1,0.1) | |
988 | p.CFrame = CFrame.new(p.Position + Vector3.new(math.random(-5,5)/20,0.5,math.random(-5,5)/20))* CFrame.fromEulerAnglesXYZ(math.random(-10,10)/i,math.random(-10,10)/i,0.5) | |
989 | swait() | |
990 | end | |
991 | p:Destroy() | |
992 | end)() | |
993 | end | |
994 | end)() | |
995 | if Duration == math.huge then return end | |
996 | coroutine.wrap(function() | |
997 | while Wait(1)do | |
998 | Counter = Counter +1 | |
999 | if Counter == Duration then | |
1000 | break | |
1001 | end | |
1002 | end | |
1003 | end)() | |
1004 | end | |
1005 | ||
1006 | function Burn(v) | |
1007 | coroutine.wrap(function() | |
1008 | - | local Colors = {"Really black", 'Mulberry', 'Lime green'} |
1008 | + | local Colors = {"Really black", 'Mulberry', 'Really red'} |
1009 | local calc = getDPS()*.5 | |
1010 | if v:IsA("Model")and v ~= char and not v:findFirstChild("Burnt")then | |
1011 | local h = v:findFirstChild("Humanoid") | |
1012 | if h then | |
1013 | if h.Health > 0 then | |
1014 | local t = v:findFirstChild("Torso") | |
1015 | if t then | |
1016 | if(t.Position -T.Position).magnitude <= 20 then | |
1017 | local f = Instance.new("StringValue",v) | |
1018 | f.Name = "Burnt" | |
1019 | - | ParticleEmit(v.Torso,BrickColor.new("Lime green"),10) |
1019 | + | ParticleEmit(v.Torso,BrickColor.new("Really red"),10) |
1020 | for m,c in pairs(v:GetChildren())do | |
1021 | if c:IsA("BasePart")then | |
1022 | local ss = Instance.new("Fire",c) | |
1023 | ss.Size = c.Size.y +2 | |
1024 | ss.Color = BrickColor.new(Colors[math.random(1,#Colors)]).Color | |
1025 | ss.SecondaryColor = Color3.new(0,0,0) | |
1026 | ss.Heat = 100 | |
1027 | delay(10,function() | |
1028 | local size = ss.Size | |
1029 | for i = size,0,-1 do | |
1030 | ss.Size = i | |
1031 | swait() | |
1032 | end | |
1033 | ss:Destroy() | |
1034 | end) | |
1035 | end | |
1036 | end | |
1037 | h.PlatformStand = true | |
1038 | coroutine.wrap(function() | |
1039 | for i = 1,10 do | |
1040 | h:TakeDamage(calc) | |
1041 | logDamage('Fire',calc) | |
1042 | Wait(1) | |
1043 | end | |
1044 | end)() | |
1045 | Game:GetService("Debris"):AddItem(f,10) | |
1046 | end | |
1047 | end | |
1048 | end | |
1049 | end | |
1050 | end | |
1051 | end)() | |
1052 | end; | |
1053 | function AoE(point,radius,damage,push,trip) | |
1054 | --ypcall(function() | |
1055 | local push = push or Vector3.new() | |
1056 | local hit = getRegion(point,radius,{char}) | |
1057 | local humanoidList = {} | |
1058 | for _,v in pairs(hit) do | |
1059 | local h = getHumanoid(v) | |
1060 | if not v.Anchored then | |
1061 | if h then | |
1062 | if not humanoidList[h] then | |
1063 | if Damaged[h] and tick()-Damaged[h]<.2 then return end | |
1064 | humanoidList[h] = true | |
1065 | Damaged[h] = tick() | |
1066 | damageHuman(h,damage,h.Parent:findFirstChild'Head') | |
1067 | Burn(h.Parent) | |
1068 | if h.Parent:findFirstChild("Torso") and h.Parent.Torso:isA("BasePart") then | |
1069 | if push.magnitude > 0 then | |
1070 | local v = Instance.new("BodyVelocity",h.Parent.Torso) | |
1071 | v.maxForce = Vector3.new(1,1,1)*10000000000 | |
1072 | v.velocity = push/0.1 | |
1073 | game.Debris:AddItem(v,0.1) | |
1074 | end | |
1075 | if trip then | |
1076 | local v = Instance.new("BodyAngularVelocity",h.Parent.Torso) | |
1077 | v.maxTorque = Vector3.new(1,1,1)*10000000000 | |
1078 | v.angularvelocity = Vector3.new(math.pi,0,math.pi)/0.1 | |
1079 | game.Debris:AddItem(v,0.1) | |
1080 | end | |
1081 | end | |
1082 | end | |
1083 | else v:BreakJoints() | |
1084 | v.Velocity = v.Velocity+push/v:GetMass() | |
1085 | end | |
1086 | end | |
1087 | end | |
1088 | --end) | |
1089 | end | |
1090 | function crownExplode(cf,col,scl) | |
1091 | local p = part(char,cf,v3(1,1,1),col,true,false,.1,"SmoothPlastic") | |
1092 | local pm = mesh("FileMesh",p,nil,nil,asset..meshes.crown) | |
1093 | Spawn(function() | |
1094 | for i=.1,1.1,.025 do | |
1095 | p.Transparency = i | |
1096 | pm.Scale = pm.Scale + v3(scl,scl,scl) | |
1097 | p.CFrame = cf | |
1098 | swait() | |
1099 | end | |
1100 | p:Destroy() | |
1101 | end) | |
1102 | end | |
1103 | function crater(cf,dist,siz,col,mat) | |
1104 | local num = math.random(13,18) | |
1105 | for i=1,num do | |
1106 | game:service("Debris"):AddItem(part(char,cf*ca(0,pi*2/num*i,0)*cn(0,0,dist)*ca(r(2),r(2),r(2)),v3(ma(r(siz)),ma(r(siz)),ma(r(siz))),col,true,true,0,mat),3) | |
1107 | end | |
1108 | end | |
1109 | function quickSound(id,par,pi) | |
1110 | local s = Instance.new("Sound") | |
1111 | local pis = {1.5,1.55,1.6,1.65,1.7,1.75,1.8,1.85,1.9,1.95,2,2.05,2.1,2.15,2.2,2.25,2.3,2.35,2.4,2.45,2.5} | |
1112 | s.Pitch = pis[math.random(1,#pis)] | |
1113 | s.SoundId = asset..id | |
1114 | s.Parent = par | |
1115 | swait() | |
1116 | s:Play() | |
1117 | return s | |
1118 | end | |
1119 | function newSound(id,par,pi) | |
1120 | local s = Instance.new("Sound",par) | |
1121 | s.Pitch = pi or 1 | |
1122 | s.Volume = .3 | |
1123 | s.SoundId = asset..id | |
1124 | s:Play() | |
1125 | return s | |
1126 | end | |
1127 | ||
1128 | local Num = 0 | |
1129 | local Anchored = {} | |
1130 | ||
1131 | function GetMesh(Obj) | |
1132 | for i,v in pairs(Obj:GetChildren()) do | |
1133 | if v:IsA("DataModelMesh") then | |
1134 | return v | |
1135 | end | |
1136 | end | |
1137 | end | |
1138 | ||
1139 | function GetCFrame(Obj) | |
1140 | if Obj == nil then | |
1141 | return | |
1142 | end | |
1143 | if Obj == Workspace then | |
1144 | return CFrame.new(0,0,0) | |
1145 | end | |
1146 | if Obj:IsA("Model") then | |
1147 | return Obj:GetModelCFrame() | |
1148 | end | |
1149 | if Obj:IsA("BasePart") then | |
1150 | return Obj.CFrame | |
1151 | end | |
1152 | return | |
1153 | end | |
1154 | ||
1155 | function GetSize(Obj) | |
1156 | if Obj == nil then | |
1157 | return | |
1158 | end | |
1159 | if Obj == Workspace then | |
1160 | return Vector3.new(0,0,0) | |
1161 | end | |
1162 | if Obj:IsA("Model") then | |
1163 | return Obj:GetModelSize() | |
1164 | end | |
1165 | if Obj:IsA("BasePart") then | |
1166 | return Obj.Size | |
1167 | end | |
1168 | return | |
1169 | end | |
1170 | ||
1171 | function SaveWelds(Obj,Welds,Scale) | |
1172 | if Welds == nil then | |
1173 | local Welds = {} | |
1174 | for i,v in pairs(Obj:GetChildren()) do | |
1175 | if v:IsA("JointInstance") then | |
1176 | Welds[#Welds+1] = {v,v.Part0,v.Part1,v.C0,v.C1,v.Parent} | |
1177 | v.Parent = nil | |
1178 | end | |
1179 | SaveWelds(v,Welds,Scale) | |
1180 | end | |
1181 | return Welds | |
1182 | else | |
1183 | for i,v in pairs(Obj:GetChildren()) do | |
1184 | if v:IsA("JointInstance") then | |
1185 | Welds[#Welds+1] = {v,v.Part0,v.Part1,v.C0,v.C1,v.Parent} | |
1186 | v.Parent = nil | |
1187 | end | |
1188 | SaveWelds(v,Welds,Scale) | |
1189 | end | |
1190 | end | |
1191 | end | |
1192 | ||
1193 | function GetMass(Obj) | |
1194 | local Mass = 0 | |
1195 | if Obj:IsA("BasePart") then | |
1196 | Mass = Mass+Obj:GetMass() | |
1197 | end | |
1198 | for i,v in pairs(Obj:GetChildren()) do | |
1199 | Mass = Mass+GetMass(v) | |
1200 | end | |
1201 | return Mass | |
1202 | end | |
1203 | ||
1204 | function SaveConnectedParts(Obj,Welds) | |
1205 | if Welds == nil then | |
1206 | local Welds = {} | |
1207 | for i,v in pairs(Obj:GetChildren()) do | |
1208 | if v:IsA("BasePart") then | |
1209 | for i2,v2 in pairs(v:GetConnectedParts()) do | |
1210 | Welds[#Welds+1] = {Instance.new("Weld"),v,v2,v.CFrame:toObjectSpace(v2.CFrame),CFrame.new(0,0,0),v} | |
1211 | end | |
1212 | v:BreakJoints() | |
1213 | end | |
1214 | SaveConnectedParts(v,Welds) | |
1215 | end | |
1216 | return Welds | |
1217 | else | |
1218 | for i,v in pairs(Obj:GetChildren()) do | |
1219 | if v:IsA("BasePart") then | |
1220 | for i2,v2 in pairs(v:GetConnectedParts()) do | |
1221 | Welds[#Welds+1] = {Instance.new("Weld"),v,v2,v.CFrame:toObjectSpace(v2.CFrame),CFrame.new(0,0,0),v} | |
1222 | end | |
1223 | v:BreakJoints() | |
1224 | end | |
1225 | SaveConnectedParts(v,Welds) | |
1226 | end | |
1227 | end | |
1228 | end | |
1229 | ||
1230 | function ResizeWelds(Welds,Scale) | |
1231 | for i,v in pairs(Welds) do | |
1232 | v[1].Parent = v[6] | |
1233 | v[1].Part0 = v[2] | |
1234 | v[1].Part1 = v[3] | |
1235 | local Vec = v[4].p | |
1236 | local Vec2 = v[5].p | |
1237 | v[1].C0 = CFrame.new(Vec*Scale)*(v[4]-Vec) | |
1238 | v[1].C1 = CFrame.new(Vec2*Scale)*(v[5]-Vec2) | |
1239 | end | |
1240 | end | |
1241 | ||
1242 | function AnchorParts(Obj) | |
1243 | for i,v in pairs(Obj:GetChildren()) do | |
1244 | if v:IsA("BasePart") and v.Anchored == false then | |
1245 | v.Anchored = true | |
1246 | Anchored[v] = v | |
1247 | end | |
1248 | AnchorParts(v) | |
1249 | end | |
1250 | end | |
1251 | ||
1252 | function ResizeFunc(Obj,Scale,Welds,Center) | |
1253 | Center = Center or CFrame.new(0,0,0) | |
1254 | for i,v in pairs(Obj:GetChildren()) do | |
1255 | if v:IsA("BasePart") then | |
1256 | --[[Num = Num+1 | |
1257 | if Num == 100 then | |
1258 | wait(0.25) | |
1259 | Num = 0 | |
1260 | end]] | |
1261 | local Size = v.Size | |
1262 | for i2,v2 in pairs(v:GetChildren()) do | |
1263 | if v2.Name == "ScaleInserted" then | |
1264 | Size = Size*v2.Scale | |
1265 | v2:Destroy() | |
1266 | elseif v2.Name:sub(1,14) == "ScaleInserted:" then | |
1267 | local X,Y,Z; | |
1268 | for Match in v2.Name:sub(15):gmatch("[^,%s]+") do | |
1269 | if Y ~= nil then | |
1270 | Z = tonumber(Match) | |
1271 | elseif X ~= nil then | |
1272 | Y = tonumber(Match) | |
1273 | else | |
1274 | X = tonumber(Match) | |
1275 | end | |
1276 | end | |
1277 | Size = Vector3.new(X,Y,Z) | |
1278 | v2:Destroy() | |
1279 | end | |
1280 | end | |
1281 | pcall(function() v.FormFactor = "Custom" end) | |
1282 | local CFr = v.CFrame | |
1283 | local Want = Size*Scale | |
1284 | v.Size = Want | |
1285 | if v:IsA("VehicleSeat") then | |
1286 | Seats[#Seats+1] = v | |
1287 | end | |
1288 | if v.Size ~= Want then | |
1289 | local Name = "" | |
1290 | for Match in v.Name:gmatch("[^%s]+") do | |
1291 | Name = Name..Match | |
1292 | end | |
1293 | local CharMesh = nil | |
1294 | for i,v in pairs(Obj:GetChildren()) do | |
1295 | if v:IsA("CharacterMesh") and tostring(v.BodyPart):sub(15) == Name then | |
1296 | CharMesh = v | |
1297 | end | |
1298 | end | |
1299 | if CharMesh == nil then | |
1300 | local Mesh = GetMesh(v) | |
1301 | if Mesh == nil then | |
1302 | local Mesh; | |
1303 | if v:IsA("WedgePart") then | |
1304 | Mesh = Instance.new("SpecialMesh",v) | |
1305 | Mesh.MeshType = "Wedge" | |
1306 | else | |
1307 | local HasShape = pcall(function() return v.Shape end) | |
1308 | if HasShape then | |
1309 | if v.Shape == "Ball" then | |
1310 | Mesh = Instance.new("SpecialMesh",v) | |
1311 | Mesh.MeshType = "Sphere" | |
1312 | elseif v.Shape == "Cylinder" then | |
1313 | Mesh = Instance.new("SpecialMesh",v) | |
1314 | Mesh.MeshType = "Cylinder" | |
1315 | else | |
1316 | Mesh = Instance.new("BlockMesh",v) | |
1317 | end | |
1318 | else | |
1319 | Mesh = Instance.new("BlockMesh",v) | |
1320 | end | |
1321 | end | |
1322 | Mesh.Scale = Want/v.Size | |
1323 | Mesh.Name = "ScaleInserted" | |
1324 | else | |
1325 | if (Mesh.ClassName == "SpecialMesh" and Mesh.MeshType ~= Enum.MeshType.FileMesh) or Mesh.ClassName ~= "SpecialMesh" then | |
1326 | Mesh.Scale = Want/v.Size*Mesh.Scale | |
1327 | end | |
1328 | end | |
1329 | else | |
1330 | local Mesh = Instance.new("SpecialMesh",v) | |
1331 | Mesh.Name = "ScaleInserted:"..tostring(Want) | |
1332 | Mesh.MeshType = "FileMesh" | |
1333 | Mesh.MeshId = "rbxassetid://"..CharMesh.MeshId | |
1334 | --Mesh.TextureId = CharMesh.BaseTextureId | |
1335 | Mesh.Scale = Vector3.new(1,1,1)*Want.X/Scale | |
1336 | end | |
1337 | end | |
1338 | v:BreakJoints() | |
1339 | local Rel = Center:toObjectSpace(CFr) | |
1340 | local New = CFrame.new(Rel.p*Scale)*(Rel-Rel.p) | |
1341 | v.CFrame = Center*New | |
1342 | v:BreakJoints() | |
1343 | elseif v:IsA("DataModelMesh") then | |
1344 | if v.ClassName == "SpecialMesh" then | |
1345 | if v.MeshType == Enum.MeshType.FileMesh then | |
1346 | v.Scale = v.Scale*Scale | |
1347 | end | |
1348 | else | |
1349 | --v.Scale = v.Scale*Scale | |
1350 | end | |
1351 | end | |
1352 | ResizeFunc(v,Scale,Welds,Center) | |
1353 | end | |
1354 | end | |
1355 | ||
1356 | function Resize(Obj,Scale,Break) | |
1357 | local Welds = SaveWelds(Obj,nil,Scale) | |
1358 | SaveConnectedParts(Obj,Welds) | |
1359 | local Mass = GetMass(Obj) | |
1360 | local Center = GetCFrame(Obj) | |
1361 | if Center ~= nil and Workspace:FindFirstChild("Base") ~= nil then | |
1362 | --Center = Center-Vector3.new(0,GetSize(Obj).Y/2,0) | |
1363 | Center = CFrame.new(Center.X,Workspace.Base.Position.Y+Workspace.Base.Size.Y/2,Center.Z)*(Center-Center.p) | |
1364 | end | |
1365 | Seats = {} | |
1366 | ResizeFunc(Obj,Scale,Welds,Center) | |
1367 | ResizeWelds(Welds,Scale) | |
1368 | local Mass2 = GetMass(Obj) | |
1369 | for i,v in pairs(Seats) do | |
1370 | v.Torque = Mass2*(v.Torque/Mass) | |
1371 | v.TurnSpeed = v.TurnSpeed*Scale | |
1372 | v.MaxSpeed = v.MaxSpeed*Scale | |
1373 | end | |
1374 | end | |
1375 | ||
1376 | function cylinderOpen(cf,col,col2) | |
1377 | local p = part(char,cf,v3(0,1000,0),col,true,false,.1,"SmoothPlastic") | |
1378 | local pm = mesh("CylinderMesh",p) | |
1379 | local p2 = part(char,cf,v3(0,1000,0),col2,true,false,.1,"SmoothPlastic") | |
1380 | local p2m = mesh("CylinderMesh",p2) | |
1381 | Spawn(function() | |
1382 | for i=.1,1.1,.0125 do | |
1383 | p.Transparency = i | |
1384 | p2.Transparency = i | |
1385 | pm.Scale = pm.Scale + v3(.8,0,.8) | |
1386 | p2m.Scale = p2m.Scale + v3(.5,0,.5) | |
1387 | swait() | |
1388 | end | |
1389 | p:Destroy() | |
1390 | p2:Destroy() | |
1391 | end) | |
1392 | end | |
1393 | function cylinderOpen2(cf,col,col2) | |
1394 | local p = part(workspace,cf,v3(0,1000,0),col,true,false,.1,"SmoothPlastic") | |
1395 | local pm = mesh("CylinderMesh",p) | |
1396 | local p2 = part(workspace,cf,v3(0,1000,0),col2,true,false,.1,"SmoothPlastic") | |
1397 | local p2m = mesh("CylinderMesh",p2) | |
1398 | Spawn(function() | |
1399 | for i=.1,1.1,.025 do | |
1400 | p.Transparency = i | |
1401 | p2.Transparency = i | |
1402 | pm.Scale = pm.Scale + v3(.7,0,.7) | |
1403 | p2m.Scale = p2m.Scale + v3(.6,0,.6) | |
1404 | swait() | |
1405 | end | |
1406 | wait(10) | |
1407 | p:Destroy() | |
1408 | p2:Destroy() | |
1409 | end) | |
1410 | end | |
1411 | ||
1412 | function ray(Pos, Dir,xxz) | |
1413 | local xxz2=char | |
1414 | if xxz ~= nil then | |
1415 | xxz2=nil | |
1416 | end | |
1417 | return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999),xxz2) | |
1418 | end | |
1419 | ||
1420 | function FindGround(pos) | |
1421 | local ax,ay,az = pos:toEulerAnglesXYZ() | |
1422 | local bhit,bpos=ray(pos.p,pos.p - (pos.p + Vector3.new(0,200,0))) | |
1423 | if bhit and bpos then | |
1424 | return CFrame.new(bpos)*CFrame.Angles(ax,ay,az) | |
1425 | end | |
1426 | return nil | |
1427 | end | |
1428 | ||
1429 | local lastdps = tick() | |
1430 | local ohp = hum.Health | |
1431 | local berserk = false | |
1432 | hum.Changed:connect(function(val) | |
1433 | if val == 'Health_XML' then | |
1434 | if hum.Health < ohp then | |
1435 | lastdps = tick() | |
1436 | end | |
1437 | ohp = hum.Health | |
1438 | ||
1439 | elseif val =='PlatformStand' then | |
1440 | hum.PlatformStand = false | |
1441 | elseif val == 'MaxHealth' then | |
1442 | hum.MaxHealth = 650 | |
1443 | hum.Health = 650 | |
1444 | elseif val == "Sit" then | |
1445 | hum.Sit = false | |
1446 | elseif val == "WalkSpeed" then | |
1447 | end | |
1448 | end) | |
1449 | ||
1450 | local LastTrail = nil | |
1451 | local Trails = {} | |
1452 | ||
1453 | function Disable(Humanoid) | |
1454 | ||
1455 | if Humanoid == hum then return end | |
1456 | ||
1457 | ypcall(function() | |
1458 | ||
1459 | for i = 10,0,-1 do | |
1460 | ||
1461 | if not Humanoid.Parent then break end | |
1462 | if Humanoid.WalkSpeed > 5 then | |
1463 | if Humanoid.Health <= 0 then break end | |
1464 | ||
1465 | if Humanoid:findFirstChild'Property of Darkus_Theory' then | |
1466 | Humanoid.WalkSpeed = 3 | |
1467 | Humanoid.JumpPower = 0 | |
1468 | end | |
1469 | --Humanoid.JumpMana = 0 | |
1470 | end | |
1471 | ||
1472 | wait(1) | |
1473 | ||
1474 | end | |
1475 | ||
1476 | if Humanoid.WalkSpeed > 5 then | |
1477 | if Humanoid:findFirstChild'Property of Darkus_Theory' then | |
1478 | Humanoid.JumpPower = 50 | |
1479 | Humanoid.WalkSpeed = 16 | |
1480 | end | |
1481 | end | |
1482 | ||
1483 | end) | |
1484 | end | |
1485 | ||
1486 | ||
1487 | ||
1488 | function Ringz(part,col) | |
1489 | local modle = Instance.new('Model', char) | |
1490 | for i = 1,6 do | |
1491 | local p = Instance.new("Part", modle) | |
1492 | p.Name = "BlastRing" | |
1493 | p.TopSurface = 0 | |
1494 | p.BottomSurface = 0 | |
1495 | p.CanCollide = false | |
1496 | p.Anchored = true | |
1497 | p.BrickColor = BrickColor.new(col) | |
1498 | p.Size = Vector3.new(1,1,1) | |
1499 | p.CFrame = CFrame.new(part.Position - Vector3.new(0,3,0))* CFrame.fromEulerAnglesXYZ(math.random(-50,50),math.random(-50,50),math.random(-50,50)/30) | |
1500 | local rm = Instance.new("SpecialMesh",p) | |
1501 | rm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
1502 | rm.Name = "BlastMesh" | |
1503 | rm.Scale = Vector3.new(1,1,1) | |
1504 | coroutine.wrap(function() | |
1505 | for n = 1,25 do | |
1506 | rm.Scale = rm.Scale + Vector3.new(1.2 +1 +i/5,1.2 +1 +i/5,0.1)*.8 | |
1507 | if 1 +i/5 == 1.2 then | |
1508 | rm.Scale = rm.Scale + Vector3.new(0,0.9,0) | |
1509 | end | |
1510 | p.Transparency = n/15 | |
1511 | p.CFrame = p.CFrame * CFrame.new(0,0.01,0)* CFrame.fromEulerAnglesXYZ(math.random(-20,20)/50,math.random(-20,20)/70,0) | |
1512 | swait() | |
1513 | end | |
1514 | p:Destroy() | |
1515 | end)() | |
1516 | end | |
1517 | game:service'Debris':AddItem(modle, 10) | |
1518 | end | |
1519 | ||
1520 | local DOTTED = {} | |
1521 | local unique = 'Agony'..Player.Name..tick() | |
1522 | function damageHuman(hum, d, hit, ticklul) | |
1523 | if not hum:IsA('Humanoid') then hum.Parent:breakJoints() return end | |
1524 | pcall(function() hum.Parent.Health.Disabled = true end) | |
1525 | if hum.Health <= 0 then return end | |
1526 | if hum == Humanoid then return end | |
1527 | if hum.MaxHealth > 1000000 then hum.Parent:breakJoints() end | |
1528 | if not hum:findFirstChild(unique) and ticklul=='Apply' then | |
1529 | local Agony = Instance.new('Model', hum) | |
1530 | Agony.Name = unique | |
1531 | DOTTED[hum] = {Dot = Agony, Tix = 15, DPSX = 1, LastT = tick(), Haste = 1} | |
1532 | --print('applying to '..hum.Parent.Name) | |
1533 | elseif ticklul=='Refresh' and hum:findFirstChild(unique) and DOTTED[hum].Tix > 0 then | |
1534 | DOTTED[hum].Tix = 15 | |
1535 | --print('refreshing on '..hum.Parent.Name) | |
1536 | elseif ticklul=='Apply' and DOTTED[hum].Tix <= 1 then | |
1537 | DOTTED[hum].Tix = 8 | |
1538 | --print('reapplying on '..hum.Parent.Name) | |
1539 | end | |
1540 | if Ally[hum] then return end | |
1541 | local crit = math.random(1,15) | |
1542 | local DPS = ((d) * (crit > 11 and stats.CriticalStrikeBonus or 1)) | |
1543 | Title("-"..math.ceil(DPS), ((hit.Parent and hit.Parent~='Workspace') and (hit.Parent:findFirstChild'Head' or Instance.new('Model'))), (crit < 12 and Color3.new(0/255,0/255,200/255) or Color3.new(230/255,0/255,150/255)),true,false) | |
1544 | hum.Health = hum.Health - math.ceil(DPS) | |
1545 | if hum.Health <= 0 then logDamage('Kills', 1) Alert('You killed '..hum.Parent.Name..'!', 'Yellow') spawn(function() damageAmp = damageAmp+.35 wait(10) damageAmp = damageAmp-.35 end) end | |
1546 | end | |
1547 | ||
1548 | function healHuman(hum, d, hit) | |
1549 | if not hum:IsA('Humanoid') then hum.Parent:breakJoints() return end | |
1550 | pcall(function() hum.Parent.Health.Disabled = true end) | |
1551 | if hum.Health <= 0 then return end | |
1552 | local crit = math.random(1,15) | |
1553 | local DPS = ((d) * (crit > 11 and stats.CriticalStrikeBonus or 1)) | |
1554 | Title("+"..math.ceil(DPS), ((hit.Parent and hit.Parent~='Workspace') and (hit.Parent:findFirstChild'Head' or Instance.new('Model'))), (crit > 11 and Color3.new(200/255,200/255,0/255) or Color3.new(0/255,230/255,0/255)),true,false) | |
1555 | hum.Health = hum.Health + math.ceil(DPS) | |
1556 | end | |
1557 | ||
1558 | ||
1559 | function Tag(Humanoid) | |
1560 | local c = Instance.new("ObjectValue",Humanoid) | |
1561 | c.Value = plr | |
1562 | c.Name = "creator" | |
1563 | end | |
1564 | ||
1565 | function CloneCharacter() | |
1566 | Character.Archivable = true | |
1567 | local Clone = Character:Clone() | |
1568 | for i,v in pairs(Clone:GetChildren())do | |
1569 | if v:IsA("BasePart") then | |
1570 | v.Transparency = .1 | |
1571 | v.Reflectance = .1 | |
1572 | end | |
1573 | end | |
1574 | Character.Archivable = false | |
1575 | Clone.Parent = game:service('Workspace') | |
1576 | Clone.Archivable = false | |
1577 | game:service('Debris'):AddItem(Clone,9) | |
1578 | return Clone | |
1579 | end | |
1580 | function searchForHumanoid(thing) | |
1581 | for _,v in pairs(thing:children()) do | |
1582 | if v:IsA('Humanoid') then | |
1583 | return v | |
1584 | end | |
1585 | end | |
1586 | return false | |
1587 | end | |
1588 | ||
1589 | ||
1590 | function Title(txt,part,color,rise,spell) | |
1591 | local col = color | |
1592 | local Gui = Instance.new("BillboardGui",part) | |
1593 | Gui.Name = "3DGUI" | |
1594 | Gui.ExtentsOffset = Vector3.new(math.random(-3,3),math.random(2,3),math.random(-3,3)) | |
1595 | Gui.Size = UDim2.new(8,0,2,0) | |
1596 | local Tit = Instance.new("TextLabel",Gui) | |
1597 | Tit.Name = "Gooey" | |
1598 | Tit.TextColor3 = col | |
1599 | Tit.TextTransparency = 0.25 | |
1600 | Tit.TextStrokeColor3 = col | |
1601 | Tit.TextStrokeTransparency = 1 | |
1602 | Tit.Size = UDim2.new(1,0,1,0) | |
1603 | Tit.BackgroundTransparency = 1 | |
1604 | Tit.Font = "Arial" | |
1605 | Tit.TextScaled = true | |
1606 | Tit.Text = txt | |
1607 | if rise then | |
1608 | if not tonumber(rise) then rise = 6 end | |
1609 | coroutine.wrap(function() | |
1610 | local randvar = (spell and 0 or math.random(-4,4)) | |
1611 | while Tit.Parent and Gui.Parent and wait() do | |
1612 | Gui.ExtentsOffset = Gui.ExtentsOffset + Vector3.new(0.025*randvar,0.025*rise,0.025*randvar) | |
1613 | end | |
1614 | end)() | |
1615 | end | |
1616 | game:service('Debris'):AddItem(Gui,1.5) | |
1617 | return Tit | |
1618 | end | |
1619 | ||
1620 | function DamageNear(Pos,Mag,Dmg,x) | |
1621 | local Targets,HitAlready = {},{} | |
1622 | for i,v in pairs(workspace:GetChildren())do | |
1623 | if v:IsA("Model")and v ~= Character and v:findFirstChild("Humanoid")then | |
1624 | for _,x in pairs(v:GetChildren())do | |
1625 | if x:IsA("BasePart")then | |
1626 | if(Pos -x.Position).magnitude <= Mag then | |
1627 | table.insert(Targets,v) | |
1628 | end | |
1629 | end | |
1630 | end | |
1631 | end | |
1632 | end | |
1633 | for i,v in pairs(Targets)do | |
1634 | if not HitAlready[v.Name]then | |
1635 | ypcall(function() | |
1636 | end) | |
1637 | HitAlready[v.Name] = true | |
1638 | end | |
1639 | end | |
1640 | end | |
1641 | ||
1642 | function weld(thing1,thing2) | |
1643 | local a = Instance.new('Weld'); | |
1644 | pcall(function() | |
1645 | a.Parent = thing1; | |
1646 | a.Part0 = thing1; | |
1647 | a.Part1 = thing2; | |
1648 | a.C0 = thing1.CFrame:inverse()*thing2.CFrame | |
1649 | end) | |
1650 | return a | |
1651 | end | |
1652 | ||
1653 | function IsNear(Position,Distance,SinglePlayer,db) | |
1654 | if SinglePlayer then | |
1655 | return(SinglePlayer.Torso.CFrame.p -Position).magnitude < Distance | |
1656 | end | |
1657 | local List = {} | |
1658 | for i,v in pairs(workspace:GetChildren())do | |
1659 | if v:IsA("Model")then | |
1660 | if v:findFirstChild("Torso")then | |
1661 | --if (v ~= char and not db) then | |
1662 | if(v.Torso.CFrame.p -Position).magnitude < Distance then | |
1663 | table.insert(List,v) | |
1664 | end | |
1665 | --end | |
1666 | end | |
1667 | end | |
1668 | end | |
1669 | return List | |
1670 | end | |
1671 | ||
1672 | function createOrb() | |
1673 | ||
1674 | local Orb = Instance.new("Model") | |
1675 | Orb.Name = "OrbModel" | |
1676 | local PurplePart = Instance.new("Part", Orb) | |
1677 | - | PurplePart.BrickColor = BrickColor.new("Camo") |
1677 | + | PurplePart.BrickColor = BrickColor.new("Navy blue") |
1678 | PurplePart.Anchored = true | |
1679 | PurplePart.Locked = true | |
1680 | PurplePart.CanCollide = false | |
1681 | PurplePart.Name = 'PurplePart' | |
1682 | PurplePart.Material = 'Neon' | |
1683 | PurplePart.Size = Vector3.new(1, 1, 1) | |
1684 | PurplePart.BottomSurface = Enum.SurfaceType.Smooth | |
1685 | PurplePart.TopSurface = Enum.SurfaceType.Smooth | |
1686 | PurpleMesh = Instance.new("SpecialMesh", PurplePart) | |
1687 | PurpleMesh.MeshType = Enum.MeshType.FileMesh | |
1688 | PurpleMesh.Name = "Mesh" | |
1689 | PurpleMesh.MeshId = "http://www.roblox.com/Asset/?id=9756362" | |
1690 | PurpleMesh.VertexColor = Vector3.new(1, 0, 1) | |
1691 | ||
1692 | local Ring = Instance.new("Part", PurplePart) | |
1693 | Ring.Name = "BlastRing" | |
1694 | Ring.TopSurface = 0 | |
1695 | Ring.BottomSurface = 0 | |
1696 | Ring.CanCollide = false | |
1697 | Ring.Anchored = true | |
1698 | Ring.Locked = true | |
1699 | - | Ring.BrickColor = BrickColor.new('Lime green') |
1699 | + | Ring.BrickColor = BrickColor.new('Really red') |
1700 | Ring.Size = Vector3.new(1,1,1) | |
1701 | local RingMesh = Instance.new("SpecialMesh",Ring) | |
1702 | RingMesh.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
1703 | RingMesh.Name = "BlastMesh" | |
1704 | ||
1705 | ||
1706 | Orb.Parent = char | |
1707 | OrbModel = Orb | |
1708 | ||
1709 | local Light = Instance.new("PointLight", PurplePart) | |
1710 | Light.Name = "HeadLight" | |
1711 | Light.Color = Color3.new(1,0,1) | |
1712 | Light.Range = 6 | |
1713 | Light.Brightness = 20 | |
1714 | ||
1715 | local con = game:GetService("RunService").RenderStepped:connect(function() | |
1716 | local Targ | |
1717 | if not currentTarget then Targ = hum else Targ = currentTarget end | |
1718 | ||
1719 | if Targ:FindFirstChild('MarkOfDeath') then | |
1720 | PurplePart.BrickColor = BrickColor.new'Really red' | |
1721 | Ring.BrickColor = BrickColor.new'White' | |
1722 | else | |
1723 | - | PurplePart.BrickColor = BrickColor.new'Camo' |
1723 | + | PurplePart.BrickColor = BrickColor.new'Navy blue' |
1724 | - | Ring.BrickColor = BrickColor.new'Lime green' |
1724 | + | Ring.BrickColor = BrickColor.new'Really red' |
1725 | end | |
1726 | ||
1727 | local c = math.abs(math.cos(tick())) | |
1728 | ||
1729 | if c <= .5 then c = .5 end | |
1730 | ||
1731 | PurpleMesh.Scale = Vector3.new(c*.7, c*1.1, c*.7) | |
1732 | RingMesh.Scale = Vector3.new(c*.9, c*.9, c*.9) | |
1733 | ||
1734 | PurplePart.CFrame = PurplePart.CFrame:lerp((Targ.Parent and Targ.Parent or char).Head.CFrame*CFrame.new(0,3,0),.5) | |
1735 | Ring.CFrame = PurplePart.CFrame* CFrame.fromEulerAnglesXYZ(-math.rad(90+(math.sin(tick())*6)), 0, -math.rad(90+(math.sin(tick())*6))) | |
1736 | end) | |
1737 | ||
1738 | local chnge = function(a) | |
1739 | if a=='Name' then | |
1740 | Orb:Destroy() | |
1741 | con:disconnect() | |
1742 | createOrb() | |
1743 | elseif a=='Parent' then | |
1744 | Orb:Destroy() | |
1745 | con:disconnect() | |
1746 | createOrb() | |
1747 | elseif a=='Locked' then | |
1748 | Orb:Destroy() | |
1749 | con:disconnect() | |
1750 | createOrb() | |
1751 | elseif a=='Anchored' then | |
1752 | Orb:Destroy() | |
1753 | con:disconnect() | |
1754 | createOrb() | |
1755 | end | |
1756 | end | |
1757 | ||
1758 | Orb.Changed:connect(chnge) | |
1759 | Ring.Changed:connect(chnge) | |
1760 | PurplePart.Changed:connect(chnge) | |
1761 | return Orb | |
1762 | end | |
1763 | ||
1764 | ||
1765 | ||
1766 | function isFriendly() | |
1767 | ||
1768 | if currentTarget == hum then return end | |
1769 | ||
1770 | if Ally[currentTarget] then return true end | |
1771 | ||
1772 | return false | |
1773 | end | |
1774 | ||
1775 | function toggleFriendly() | |
1776 | ||
1777 | --if currentTarget == hum then return end | |
1778 | ||
1779 | pcall(function()if Ally[currentTarget] then Ally[currentTarget] = nil else Ally[currentTarget] = true end end) | |
1780 | ||
1781 | end | |
1782 | ||
1783 | --SlashDamage = Damage(TrailPart) | |
1784 | ||
1785 | asd = function(parent,string) | |
1786 | repeat swait() until parent:FindFirstChild(string) | |
1787 | swait() | |
1788 | return parent:FindFirstChild(string) | |
1789 | end | |
1790 | ||
1791 | newWeld = function(wp0, wp1, wc0x, wc0y, wc0z) | |
1792 | ||
1793 | local wld = Instance.new("Weld", wp1) | |
1794 | wld.Part0 = wp0 | |
1795 | wld.Part1 = wp1 | |
1796 | wld.C0 = CFrame.new(wc0x, wc0y, wc0z) | |
1797 | ||
1798 | return wld | |
1799 | end | |
1800 | ||
1801 | ||
1802 | Search = false | |
1803 | ||
1804 | function shadowSight() | |
1805 | ||
1806 | if Search == false then | |
1807 | Search = true | |
1808 | for i,v in pairs(game.Players:getPlayers()) do | |
1809 | if v.Name~=char.Name and v.Character then | |
1810 | for j,k in pairs(v.Character:GetChildren()) do | |
1811 | if k:IsA("BasePart") and k.Transparency >= 1 then | |
1812 | bawx=Instance.new("SelectionBox",camera) | |
1813 | bawx.Color = BrickColor.new("Bright red") | |
1814 | bawx.Transparency = .5 | |
1815 | bawx.Adornee = k | |
1816 | end | |
1817 | end | |
1818 | end | |
1819 | end | |
1820 | camera.CameraSubject = OrbModel.PurplePart | |
1821 | elseif Search == true then | |
1822 | Search = false | |
1823 | for i, v in pairs(camera:GetChildren()) do | |
1824 | if v:IsA("SelectionBox") then | |
1825 | v:Destroy() | |
1826 | end | |
1827 | end | |
1828 | camera.CameraSubject = hum | |
1829 | end | |
1830 | ||
1831 | end | |
1832 | ||
1833 | ||
1834 | newStat("Mana", 'NumberValue', 100) | |
1835 | newStat("Intellect", 'NumberValue', Intellect) | |
1836 | newStat("Haste", 'NumberValue', Haste) | |
1837 | newStat("CriticalStrikeBonus", 'NumberValue', 1.25) | |
1838 | ||
1839 | hum.JumpPower = 100 | |
1840 | hum.WalkSpeed = 22 | |
1841 | hum.MaxHealth = 650 | |
1842 | hum.Health = 650 | |
1843 | ||
1844 | Alert = function(txt, color, font, fontsize) | |
1845 | local Colorz = { | |
1846 | ["Red"] = Color3.new(255/255,0,0); | |
1847 | ["Green"] = Color3.new(0,255/255,0); | |
1848 | ["Blue"] = Color3.new(0,0,255/255); | |
1849 | - | ["Purple"] = Color3.new(255/255,255/255,0); |
1849 | + | ["Purple"] = Color3.new(0,255/255,0); |
1850 | - | ["Camo"] = Color3.new(0,0,0); |
1850 | + | ["Navy blue"] = Color3.new(0,0,0); |
1851 | ["White"] = Color3.new(1,1,1); | |
1852 | ['Orange'] = Color3.new(1,0.5,0); | |
1853 | ['Yellow'] = Color3.new(1,1,0); | |
1854 | }; | |
1855 | ||
1856 | game:GetService('StarterGui'):SetCore('ChatMakeSystemMessage', { | |
1857 | Text = (txt and txt or 'nil'), | |
1858 | Color = (color and Colorz[color] or Color3.new(.8,0,0)), | |
1859 | Font = (font and font or 'SourceSansLight'), | |
1860 | FontSize = (fontsize and fontsize or 'Size14'), | |
1861 | }) | |
1862 | end | |
1863 | ||
1864 | function giveBuff(buffName, stat, duration, addition, targ) | |
1865 | ||
1866 | end | |
1867 | ||
1868 | hum.ChildAdded:connect(function(obj) | |
1869 | ||
1870 | end) | |
1871 | ||
1872 | function clerp(a,b,t) | |
1873 | local qa = {QuaternionFromCFrame(a)} | |
1874 | local qb = {QuaternionFromCFrame(b)} | |
1875 | local ax, ay, az = a.x, a.y, a.z | |
1876 | local bx, by, bz = b.x, b.y, b.z | |
1877 | local _t = 1-t | |
1878 | return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t)) | |
1879 | end | |
1880 | ||
1881 | function QuaternionFromCFrame(cf) | |
1882 | local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() | |
1883 | local trace = m00 + m11 + m22 | |
1884 | if trace > 0 then | |
1885 | local s = math.sqrt(1 + trace) | |
1886 | local recip = 0.5/s | |
1887 | return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 | |
1888 | else | |
1889 | local i = 0 | |
1890 | if m11 > m00 then | |
1891 | i = 1 | |
1892 | end | |
1893 | if m22 > (i == 0 and m00 or m11) then | |
1894 | i = 2 | |
1895 | end | |
1896 | if i == 0 then | |
1897 | local s = math.sqrt(m00-m11-m22+1) | |
1898 | local recip = 0.5/s | |
1899 | return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip | |
1900 | elseif i == 1 then | |
1901 | local s = math.sqrt(m11-m22-m00+1) | |
1902 | local recip = 0.5/s | |
1903 | return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip | |
1904 | elseif i == 2 then | |
1905 | local s = math.sqrt(m22-m00-m11+1) | |
1906 | local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip | |
1907 | end | |
1908 | end | |
1909 | end | |
1910 | ||
1911 | function QuaternionToCFrame(px, py, pz, x, y, z, w) | |
1912 | local xs, ys, zs = x + x, y + y, z + z | |
1913 | local wx, wy, wz = w*xs, w*ys, w*zs | |
1914 | local xx = x*xs | |
1915 | local xy = x*ys | |
1916 | local xz = x*zs | |
1917 | local yy = y*ys | |
1918 | local yz = y*zs | |
1919 | local zz = z*zs | |
1920 | 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)) | |
1921 | end | |
1922 | ||
1923 | function QuaternionSlerp(a, b, t) | |
1924 | local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] | |
1925 | local startInterp, finishInterp; | |
1926 | if cosTheta >= 0.0001 then | |
1927 | if (1 - cosTheta) > 0.0001 then | |
1928 | local theta = math.acos(cosTheta) | |
1929 | local invSinTheta = 1/math.sin(theta) | |
1930 | startInterp = math.sin((1-t)*theta)*invSinTheta | |
1931 | finishInterp = math.sin(t*theta)*invSinTheta | |
1932 | else | |
1933 | startInterp = 1-t | |
1934 | finishInterp = t | |
1935 | end | |
1936 | else | |
1937 | if (1+cosTheta) > 0.0001 then | |
1938 | local theta = math.acos(-cosTheta) | |
1939 | local invSinTheta = 1/math.sin(theta) | |
1940 | startInterp = math.sin((t-1)*theta)*invSinTheta | |
1941 | finishInterp = math.sin(t*theta)*invSinTheta | |
1942 | else | |
1943 | startInterp = t-1 | |
1944 | finishInterp = t | |
1945 | end | |
1946 | end | |
1947 | 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 | |
1948 | end | |
1949 | ||
1950 | function lerp(weld,beglerp,endlerp,speed) | |
1951 | if weld.ClassName =='Weld' or weld.ClassName == 'Motor6D' then | |
1952 | weld.C0 = clerp(beglerp, endlerp, speed) | |
1953 | else | |
1954 | weld.CFrame = clerp(beglerp, endlerp, speed) | |
1955 | end | |
1956 | return (weld.ClassName =='Weld' or weld.ClassName == 'Motor6D' and weld.C0 or weld.CFrame) | |
1957 | end | |
1958 | ||
1959 | function IsNear(Position,Distance,SinglePlayer,db) | |
1960 | if SinglePlayer then | |
1961 | return(SinglePlayer.Torso.CFrame.p -Position).magnitude < Distance | |
1962 | end | |
1963 | local List = {} | |
1964 | for i,v in pairs(workspace:GetChildren())do | |
1965 | if v:IsA("Model")then | |
1966 | if v:findFirstChild("Torso")then | |
1967 | --if (v ~= char and not db) then | |
1968 | if(v.Torso.CFrame.p -Position).magnitude < Distance then | |
1969 | table.insert(List,v) | |
1970 | end | |
1971 | --end | |
1972 | end | |
1973 | end | |
1974 | end | |
1975 | return List | |
1976 | end | |
1977 | ||
1978 | regening = false | |
1979 | lastdps = tick() | |
1980 | function regenHealth() | |
1981 | if regening then return end | |
1982 | if (tick()-lastdps < 15) then return end | |
1983 | regening = true | |
1984 | local s = wait(1) | |
1985 | local health = hum.Health | |
1986 | if health > 0 and health < hum.MaxHealth then | |
1987 | local newHealthDelta = hum.MaxHealth * .03 | |
1988 | health = health + newHealthDelta | |
1989 | hum.Health = math.min(health,hum.MaxHealth) | |
1990 | end | |
1991 | ||
1992 | regening = false | |
1993 | end | |
1994 | ||
1995 | function checkCooldown(ability) | |
1996 | if not Cooldowns[ability] then return false end | |
1997 | local trem = (tick()-Cooldowns[ability].startTime) | |
1998 | if (trem <= Cooldowns[ability].timeRequired) then return true end | |
1999 | return false | |
2000 | end | |
2001 | ||
2002 | function setCooldown(ability, req) | |
2003 | Cooldowns[ability] = {startTime = tick(), timeRequired = req} | |
2004 | end | |
2005 | ||
2006 | ||
2007 | applyCameraShake=function(Noob,Intens,Time) | |
2008 | Intens = Intens / 5.2 | |
2009 | if game.Players:GetPlayerFromCharacter(Noob)~=nil then | |
2010 | local ss=Nethex.CamShake:clone() | |
2011 | ss.Disabled=false | |
2012 | ss.intensity.Value=Intens | |
2013 | ss.times.Value=Time | |
2014 | ss.Parent=Noob | |
2015 | end | |
2016 | end | |
2017 | ||
2018 | function getRandomPlayer() | |
2019 | local players = game:service('Players'):GetPlayers() | |
2020 | if #players > 0 then | |
2021 | local plrz = players[math.random(#players)] | |
2022 | if plrz.Name == plr.Name then | |
2023 | repeat swait() plrz = players[math.random(#players)] until plrz.Name ~= plr.Name | |
2024 | currentTarget = plrz | |
2025 | Target(plrz) | |
2026 | end | |
2027 | return plrz | |
2028 | end | |
2029 | end | |
2030 | ||
2031 | partyy = function(formfactor, parent, reflectance, transparency, brickcolor, name, size) | |
2032 | local fp = it("Part") | |
2033 | fp.formFactor = formfactor | |
2034 | fp.Parent = parent | |
2035 | fp.Reflectance = reflectance | |
2036 | fp.Transparency = transparency | |
2037 | fp.CanCollide = false | |
2038 | fp.Locked = true | |
2039 | fp.BrickColor = brickcolor | |
2040 | fp.Name = name | |
2041 | fp.Size = size | |
2042 | fp.Position = Torso.Position | |
2043 | NoOutline(fp) | |
2044 | fp.Material = "SmoothPlastic" | |
2045 | fp:BreakJoints() | |
2046 | return fp | |
2047 | end | |
2048 | meshy = function(Mesh, part, meshtype, meshid, offset, scale) | |
2049 | local mesh = it(Mesh) | |
2050 | mesh.Parent = part | |
2051 | if Mesh == "SpecialMesh" then | |
2052 | mesh.MeshType = meshtype | |
2053 | if meshid ~= "nil" then | |
2054 | mesh.MeshId = "http://www.roblox.com/asset/?id=" .. meshid | |
2055 | end | |
2056 | end | |
2057 | mesh.Offset = offset | |
2058 | mesh.Scale = scale | |
2059 | return mesh | |
2060 | end | |
2061 | ||
2062 | so = function(id, par, vol, pit) | |
2063 | local sou = Instance.new("Sound", par or workspace) | |
2064 | sou.Volume = vol | |
2065 | sou.Pitch = pit or 1 | |
2066 | if id == "Whoosh" then | |
2067 | num = math.random(1, 3) | |
2068 | if num == 1 then | |
2069 | id = "200633968" | |
2070 | else | |
2071 | if num == 2 then | |
2072 | id = "200634020" | |
2073 | else | |
2074 | if num == 3 then | |
2075 | id = "200634043" | |
2076 | end | |
2077 | end | |
2078 | end | |
2079 | end | |
2080 | sou.SoundId = "http://www.roblox.com/asset/?id=" .. id | |
2081 | coroutine.resume(coroutine.create(function(Sound) | |
2082 | swait() | |
2083 | Sound:play() | |
2084 | end), sou) | |
2085 | game:GetService("Debris"):AddItem(sou, 6) | |
2086 | end | |
2087 | ||
2088 | function getTarget() | |
2089 | return currentTarget | |
2090 | end | |
2091 | ||
2092 | local Blocking = false | |
2093 | local Charging = false | |
2094 | local Burst = true | |
2095 | local lastpress = tick() | |
2096 | local Keys = {} | |
2097 | ||
2098 | function createBlast() | |
2099 | ||
2100 | local aiming = true | |
2101 | local fxholder = Instance.new('Model' ,char) | |
2102 | local rune = Instance.new('Part') | |
2103 | rune.Size = Vector3.new(13,1,13) | |
2104 | rune.Transparency = 1 | |
2105 | rune.CanCollide = false | |
2106 | rune.Anchored = true | |
2107 | local mash=Instance.new("BlockMesh",rune) | |
2108 | mash.Scale=Vector3.new(1,.1,1) | |
2109 | local texturr=Instance.new("Texture",rune) | |
2110 | texturr.Texture = "http://www.roblox.com/asset/?id=139222366" | |
2111 | texturr.Face="Top" | |
2112 | local texturr=Instance.new("Texture",rune) | |
2113 | texturr.Texture = "http://www.roblox.com/asset/?id=139222366" | |
2114 | texturr.Face="Bottom" | |
2115 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) | |
2116 | rune.Parent = fxholder | |
2117 | ||
2118 | spawn(function() | |
2119 | local i = 0 | |
2120 | while aiming do | |
2121 | i = i + 15 | |
2122 | otheranims = true | |
2123 | rootpart.Anchored = true | |
2124 | rootpart.CFrame = CFrame.new(rootpart.Position, ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p)) | |
2125 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) * CFrame.Angles(math.rad(0), math.rad(i), math.rad(0)) | |
2126 | Mode = 'CastingSingle' | |
2127 | swait() | |
2128 | end | |
2129 | end) | |
2130 | ||
2131 | wait(.35) | |
2132 | ||
2133 | ||
2134 | local Blast = Instance.new('Part') | |
2135 | Blast.Name = 'Blasty' | |
2136 | Blast.Size = Vector3.new(1,1,1) | |
2137 | Blast.TopSurface,Blast.BottomSurface = 0,0 | |
2138 | - | Blast.BrickColor = BrickColor.new('Lime green') |
2138 | + | Blast.BrickColor = BrickColor.new('Really red') |
2139 | Blast.Anchored = true | |
2140 | local BMesh = Instance.new('SpecialMesh', Blast) | |
2141 | BMesh.MeshType = 'Sphere' | |
2142 | BMesh.Scale = Vector3.new(1, 1, 2) | |
2143 | Blast.CFrame = rune.CFrame | |
2144 | swait() | |
2145 | ||
2146 | wait(.2) | |
2147 | ||
2148 | local Ring = Instance.new("Part") | |
2149 | Ring.Name = "BlastRing" | |
2150 | Ring.TopSurface = 0 | |
2151 | Ring.BottomSurface = 0 | |
2152 | Ring.CanCollide = false | |
2153 | Ring.Anchored = true | |
2154 | Ring.Locked = true | |
2155 | Ring.BrickColor = BrickColor.new('Mulberry') | |
2156 | Ring.Size = Vector3.new(1,1,1) | |
2157 | local RingMesh = Instance.new("SpecialMesh",Ring) | |
2158 | RingMesh.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
2159 | RingMesh.Name = "BlastMesh" | |
2160 | ||
2161 | Ring.CFrame = rune.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(math.rad(90),0,0) | |
2162 | Ring.Parent = fxholder | |
2163 | ||
2164 | spawn(function() | |
2165 | for i = 0,1,.05 do | |
2166 | RingMesh.Scale = RingMesh.Scale+Vector3.new(1.5,1.5,1) | |
2167 | Ring.Transparency = Ring.Transparency + .05 | |
2168 | swait() | |
2169 | end | |
2170 | end) | |
2171 | ||
2172 | aiming = false | |
2173 | otheranims = false | |
2174 | rootpart.Anchored = false | |
2175 | ||
2176 | swait() | |
2177 | torso.Velocity = -(rune.CFrame*CFrame.Angles(-math.pi/2,0,0)).lookVector*100 | |
2178 | ||
2179 | local mh = ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p) | |
2180 | local hit,pos = rayCast(Blast.Position,CFrame.new(Blast.Position,mh).lookVector,999,char:children'') | |
2181 | ||
2182 | spawn(function() | |
2183 | Blast.CFrame = CFrame.new(Blast.Position, pos) | |
2184 | Blast.Parent = fxholder | |
2185 | repeat Blast.CFrame = Blast.CFrame:lerp(CFrame.new(pos, ra.Position), .4) swait() until (Blast.Position-mh).magnitude < 5 | |
2186 | MagniDamage(Blast.Position,Blast,15,14,18,1,'Normal', 'Apply') | |
2187 | local asd = Blast:Clone() | |
2188 | asd.CFrame = Blast.CFrame | |
2189 | asd.Parent = fxholder | |
2190 | Blast.Transparency = 1 | |
2191 | local mm = asd:children''[1] | |
2192 | mm.Scale = Vector3.new(1,1,1) | |
2193 | quickSound(166196553, Blast) | |
2194 | - | Ringz(asd, 'Lime green') |
2194 | + | Ringz(asd, 'Really red') |
2195 | for i = 0,1,.05 do | |
2196 | asd.Transparency = i | |
2197 | mm.Scale = mm.Scale+Vector3.new(1.25, 1.25, 1.25) | |
2198 | swait() | |
2199 | end | |
2200 | wait(.4) | |
2201 | fxholder:Destroy() | |
2202 | end) | |
2203 | ||
2204 | wait(2) | |
2205 | ||
2206 | pcall(game.Destroy, fxholder) | |
2207 | end | |
2208 | ||
2209 | function Teleport() | |
2210 | local numtween = function(a, b, t) | |
2211 | return (b-a)*t + a | |
2212 | end | |
2213 | local fxholder = Instance.new('Model', char) | |
2214 | local function rayCast(Pos, Dir, Max, Ignore) | |
2215 | return game:service("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) | |
2216 | end | |
2217 | otheranims = true | |
2218 | Mode = 'CastingSingle' | |
2219 | local focusing = true | |
2220 | local rune = Instance.new('Part') | |
2221 | rune.Size = Vector3.new(10,1,10) | |
2222 | rune.Transparency = 1 | |
2223 | rune.CanCollide = false | |
2224 | rune.Anchored = true | |
2225 | local mash=Instance.new("BlockMesh",rune) | |
2226 | mash.Scale=Vector3.new(3,1,3) | |
2227 | local texturr=Instance.new("Texture",rune) | |
2228 | texturr.Texture = "http://www.roblox.com/asset/?id=295332792" | |
2229 | texturr.Face="Top" | |
2230 | texturr.Transparency = .2 | |
2231 | local texturr=Instance.new("Texture",rune) | |
2232 | texturr.Texture = "http://www.roblox.com/asset/?id=295332792" | |
2233 | texturr.Face="Bottom" | |
2234 | texturr.Transparency = .2 | |
2235 | spawn(function() | |
2236 | while focusing do | |
2237 | rune.CFrame = CFrame.new(mouse.Hit.p) | |
2238 | swait() | |
2239 | end | |
2240 | end) | |
2241 | rune.Parent = fxholder | |
2242 | wait(1) | |
2243 | otheranims = false | |
2244 | focusing = false | |
2245 | local Hit,Position = rayCast(rootpart.Position, CFrame.new(rootpart.Position, rune.Position).lookVector, 500, char:children'') | |
2246 | rootpart.CFrame = rune.CFrame*CFrame.new(0, 5, 0) | |
2247 | MagniDamage(rune.Position,rune,10,4,8,1,'Normal', 'Apply') | |
2248 | MagniDamage(rune.Position,rune,10,3,4,1,'Normal', 'Refresh') | |
2249 | - | crownExplode(rune.CFrame,'Lime green',.5) |
2249 | + | crownExplode(rune.CFrame,'Really red',.5) |
2250 | crater(rune.CFrame,10,5,'Really black','Grass') | |
2251 | AoE(rune.Position,15,13,false,false) | |
2252 | - | cylinderOpen2(rune.CFrame,'Lime green','Mulberry') |
2252 | + | cylinderOpen2(rune.CFrame,'Really red','Mulberry') |
2253 | quickSound(142070127, head) | |
2254 | wait(2) | |
2255 | startedb = false | |
2256 | for i = 1,15 do | |
2257 | mash.Scale = Vector3.new(numtween(mash.Scale.X, -2, .1),numtween(mash.Scale.Y, -2, .1),numtween(mash.Scale.Z, -2, .1)) | |
2258 | swait() | |
2259 | end | |
2260 | fxholder:Destroy() | |
2261 | end | |
2262 | ||
2263 | local RbxUtility = LoadLibrary("RbxUtility") | |
2264 | local Create = RbxUtility.Create | |
2265 | ||
2266 | function RemoveOutlines(part) | |
2267 | part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10 | |
2268 | end | |
2269 | ||
2270 | function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size) | |
2271 | local Part = Create("Part"){ | |
2272 | Parent = Parent, | |
2273 | Reflectance = Reflectance, | |
2274 | Transparency = Transparency, | |
2275 | CanCollide = false, | |
2276 | Locked = true, | |
2277 | BrickColor = BrickColor.new(tostring(BColor)), | |
2278 | Name = Name, | |
2279 | Size = Size, | |
2280 | Material = Material, | |
2281 | } | |
2282 | RemoveOutlines(Part) | |
2283 | return Part | |
2284 | end | |
2285 | ||
2286 | function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale) | |
2287 | local Msh = Create(Mesh){ | |
2288 | Parent = Part, | |
2289 | Offset = OffSet, | |
2290 | Scale = Scale, | |
2291 | } | |
2292 | if Mesh == "SpecialMesh" then | |
2293 | Msh.MeshType = MeshType | |
2294 | Msh.MeshId = MeshId | |
2295 | end | |
2296 | return Msh | |
2297 | end | |
2298 | ||
2299 | ||
2300 | function RingEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
2301 | local prt=CreatePart(char,"SmoothPlastic",0,0,brickcolor,"Effect",vt(.5,.5,.5))--part(3,char,"SmoothPlastic",0,0,brickcolor,"Effect",vt(0.5,0.5,0.5)) | |
2302 | prt.Anchored=true | |
2303 | prt.CFrame=cframe | |
2304 | msh=CreateMesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(x1,y1,z1)) | |
2305 | game:GetService("Debris"):AddItem(prt,2) | |
2306 | coroutine.resume(coroutine.create(function(Part,Mesh,num) | |
2307 | for i=0,1,delay do | |
2308 | swait() | |
2309 | Part.Transparency=i | |
2310 | Mesh.Scale=Mesh.Scale+vt(x3,y3,z3) | |
2311 | end | |
2312 | Part.Parent=nil | |
2313 | end),prt,msh,(math.random(0,1)+math.random())/5) | |
2314 | end | |
2315 | ||
2316 | function shoottrail3(baseprt, trg) | |
2317 | local spread=0 | |
2318 | local range=150 | |
2319 | local rangepower=75 | |
2320 | local function rayCast(Position, Direction, Range, Ignore) | |
2321 | return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) | |
2322 | end | |
2323 | coroutine.resume(coroutine.create(function(v) | |
2324 | local spreadvector = 0 | |
2325 | local dir = CFrame.new((baseprt.Position+trg.Position)/2,trg.Position) | |
2326 | local hit,pos = rayCast(baseprt.Position,dir.lookVector,10,Character) | |
2327 | local rangepos = range*50 | |
2328 | local function drawtrail(From,To) | |
2329 | local effectsmsh = Instance.new("SpecialMesh") | |
2330 | effectsmsh.Scale = Vector3.new(1,1,1) | |
2331 | effectsmsh.Name = "Mesh" | |
2332 | effectsmsh.MeshType = "Sphere" | |
2333 | effectsmsh.Scale=Vector3.new(5,5,5) | |
2334 | local effectsg = Instance.new("Part") | |
2335 | --effectsg.formFactor = 3 | |
2336 | effectsg.CanCollide = false | |
2337 | effectsg.Name = "Eff" | |
2338 | effectsg.Material="Neon" | |
2339 | effectsg.Locked = true | |
2340 | effectsg.Anchored = true | |
2341 | effectsg.Size = Vector3.new(0.2,0.2,0.2) | |
2342 | effectsg.Parent = char | |
2343 | effectsmsh.Parent = effectsg | |
2344 | - | effectsg.BrickColor = BrickColor.new("Lime green") |
2344 | + | effectsg.BrickColor = BrickColor.new("Really red") |
2345 | effectsg.Reflectance = 0 | |
2346 | ||
2347 | --particle.RotSpeed=NumberRange.new(20,20) | |
2348 | --particle.Rotation=NumberRange.new(180,180) | |
2349 | local LP = From | |
2350 | local point1 = To | |
2351 | local mg = (LP - point1).magnitude | |
2352 | effectsmsh.Scale = Vector3.new(5,5,5) | |
2353 | effectsg.CFrame=CFrame.new((LP+point1)/2,point1) | |
2354 | --MoonEffect(BrickColor.new("Toothpaste"),effectsg.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),1,1,1,.5,.5,.5,.07) | |
2355 | RingEffect(BrickColor.new("Mulberry"),effectsg.CFrame*angles(math.random(-50,50),math.random(-50,50),math.random(-50,50)),3,3,3,2,2,2,.07) | |
2356 | coroutine.resume(coroutine.create(function() | |
2357 | swait() | |
2358 | effectsg.Parent = nil | |
2359 | end)) | |
2360 | end | |
2361 | local newpos = baseprt.Position | |
2362 | local inc = rangepower/10 | |
2363 | repeat | |
2364 | swait() | |
2365 | rangepower = rangepower+5 | |
2366 | rangepos = rangepos - 10 | |
2367 | --dir = dir * CFrame.Angles(math.rad(-1),0,0) | |
2368 | hit,pos = rayCast(newpos,dir.lookVector,inc,Character) | |
2369 | drawtrail(newpos,pos) | |
2370 | local disttohit = (pos-trg.Position).magnitude | |
2371 | if disttohit <= 10 then | |
2372 | hit = trg | |
2373 | end | |
2374 | if torso~=nil then | |
2375 | dir=CFrame.new(pos,torso.Position) | |
2376 | end | |
2377 | dir=CFrame.new(pos,trg.Position) | |
2378 | newpos = newpos + (dir.lookVector * inc) | |
2379 | if hit ~= nil then | |
2380 | rangepos = 0 | |
2381 | if getHumanoid(hit) ~= nil then | |
2382 | --local hum = getHumanoid(hit) | |
2383 | --local tTorso=hit.Parent:findFirstChild'Torso' | |
2384 | --Damagefunc1(hit,20,30) | |
2385 | --MagniDamage(hit,10,10,15,0,"Knockdown") | |
2386 | if trg and trg.Parent then | |
2387 | local hum = trg.Parent:findFirstChild'Humanoid' | |
2388 | if hum then | |
2389 | local tbl = DOTTED[hum] | |
2390 | if tbl then | |
2391 | quickSound(131070686, trg) | |
2392 | spawn(function() | |
2393 | tbl.DPSX = tbl.DPSX+1.75 | |
2394 | wait(8) | |
2395 | tbl.DPSX = tbl.DPSX-1.75 | |
2396 | end) | |
2397 | end | |
2398 | end | |
2399 | end | |
2400 | attackdebounce=false | |
2401 | --ADmg(hum,hit) | |
2402 | elseif hit.Parent and hit.Parent.Parent and getHumanoid(hit.Parent) ~= nil then | |
2403 | --local hum = getHumanoid(hit.Parent) | |
2404 | --tTorso=hit.Parent.Parent.HumanoidRootPart | |
2405 | if trg and trg.Parent then | |
2406 | local hum = trg.Parent:findFirstChild'Humanoid' | |
2407 | if hum then | |
2408 | local tbl = DOTTED[hum] | |
2409 | if tbl then | |
2410 | quickSound(131070686, trg) | |
2411 | spawn(function() | |
2412 | tbl.DPSX = tbl.DPSX+3 | |
2413 | wait(3) | |
2414 | tbl.DPSX= tbl.DPSX-3 | |
2415 | end) | |
2416 | end | |
2417 | end | |
2418 | end | |
2419 | --Damagefunc1(hit.Parent.Parent.HumanoidRootPart,20,30) | |
2420 | attackdebounce=false | |
2421 | --ADmg(hum,hit) | |
2422 | end | |
2423 | --MoonEffect(BrickColor.new("Teal"),CFrame.new(newpos),2,2,2,.5,.5,.5,.07) | |
2424 | end | |
2425 | until rangepos <= 0 | |
2426 | end)) | |
2427 | end | |
2428 | ||
2429 | function DeathAndDecay() | |
2430 | local numtween = function(a, b, t) | |
2431 | return (b-a)*t + a | |
2432 | end | |
2433 | local fxholder = Instance.new('Model', char) | |
2434 | local function rayCast(Pos, Dir, Max, Ignore) | |
2435 | return game:service("Workspace"):FindPartOnRayWithIgnoreList(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) | |
2436 | end | |
2437 | otheranims = true | |
2438 | hum.WalkSpeed = 0 | |
2439 | hum.JumpPower = 0 | |
2440 | Mode = 'SkyCasting' | |
2441 | wait(.2) | |
2442 | local startedb = false | |
2443 | local focusing = true | |
2444 | local rune = Instance.new('Part') | |
2445 | rune.Size = Vector3.new(30,1,30) | |
2446 | rune.Transparency = 1 | |
2447 | rune.CanCollide = false | |
2448 | rune.Anchored = true | |
2449 | local mash=Instance.new("BlockMesh",rune) | |
2450 | mash.Scale=Vector3.new(7,1,7) | |
2451 | local texturr=Instance.new("Texture",rune) | |
2452 | texturr.Texture = "http://www.roblox.com/asset/?id=249559138" | |
2453 | texturr.Face="Top" | |
2454 | texturr.Transparency = .2 | |
2455 | local texturr=Instance.new("Texture",rune) | |
2456 | texturr.Texture = "http://www.roblox.com/asset/?id=249559138" | |
2457 | texturr.Face="Bottom" | |
2458 | texturr.Transparency = .2 | |
2459 | local supportPart = Instance.new('Part') | |
2460 | supportPart.Size = Vector3.new(1,1,1) | |
2461 | supportPart.Anchored = false | |
2462 | supportPart.CanCollide = false | |
2463 | - | supportPart.BrickColor = BrickColor.new'Lime green' |
2463 | + | supportPart.BrickColor = BrickColor.new'Really red' |
2464 | supportPart.Material = 'Neon' | |
2465 | local gloup = Instance.new('PointLight', supportPart) | |
2466 | gloup.Color = Color3.new(1,0,1) | |
2467 | gloup.Range = 35 | |
2468 | local supportMe = Instance.new('Weld', fxholder) | |
2469 | supportMe.Part0 = torso | |
2470 | supportMe.Part1 = supportPart | |
2471 | local support1Mesh = Instance.new('SpecialMesh', supportPart) | |
2472 | support1Mesh.Name = 'tuch me dadi' | |
2473 | support1Mesh.MeshType = 'Sphere' | |
2474 | support1Mesh.Scale = Vector3.new(30,30,30) | |
2475 | local supportOrb = Instance.new('Part') | |
2476 | supportOrb.Size = Vector3.new(1,1,1) | |
2477 | supportOrb.Anchored = true | |
2478 | supportOrb.CanCollide = false | |
2479 | supportOrb.BrickColor = BrickColor.new'Really black' | |
2480 | supportOrb.Material = 'Neon' | |
2481 | supportOrb.Transparency = .9 | |
2482 | local gloup = Instance.new('PointLight', supportOrb) | |
2483 | gloup.Color = Color3.new(0,0,1) | |
2484 | gloup.Range = 15 | |
2485 | local support2Mesh = Instance.new('SpecialMesh', supportOrb) | |
2486 | support2Mesh.Name = 'tuch me dadi' | |
2487 | support2Mesh.MeshType = 'Sphere' | |
2488 | support2Mesh.Scale = Vector3.new(220,220,220) | |
2489 | local antiOrb = Instance.new('Part') | |
2490 | antiOrb.Size = Vector3.new(1,1,1) | |
2491 | antiOrb.Anchored = true | |
2492 | antiOrb.CanCollide = false | |
2493 | antiOrb.BrickColor = BrickColor.new'Mulberry' | |
2494 | antiOrb.Material = 'Neon' | |
2495 | antiOrb.Transparency = .85 | |
2496 | local gloup = Instance.new('PointLight', antiOrb) | |
2497 | gloup.Color = Color3.new(0,0,1) | |
2498 | gloup.Range = 15 | |
2499 | local support3Mesh = Instance.new('SpecialMesh', antiOrb) | |
2500 | support3Mesh.Name = 'tuch me dadi' | |
2501 | support3Mesh.MeshType = 'FileMesh' | |
2502 | support3Mesh.MeshId = 'http://www.roblox.com/asset/?id=1185246' | |
2503 | support3Mesh.Scale = Vector3.new(-310,-310,-310) | |
2504 | spawn(function() | |
2505 | while focusing do | |
2506 | rune.CFrame = CFrame.new(mouse.Hit.p) | |
2507 | swait() | |
2508 | end | |
2509 | repeat swait() until startedb | |
2510 | while startedb do | |
2511 | rune.CFrame = rune.CFrame * CFrame.Angles(0,-math.rad(1.5),0) | |
2512 | --mash.Scale = mash.Scale+Vector3.new(.0025,.0025,.0025) | |
2513 | antiOrb.CFrame = rune.CFrame | |
2514 | supportOrb.CFrame = rune.CFrame | |
2515 | torso.CFrame = CFrame.new(rune.Position)*CFrame.new(0, 20, 0) | |
2516 | swait() | |
2517 | end | |
2518 | end) | |
2519 | rune.Parent = fxholder | |
2520 | wait(3) | |
2521 | hum.WalkSpeed = 22 | |
2522 | hum.JumpPower = 100 | |
2523 | focusing = false | |
2524 | startedb = true | |
2525 | wait(.2) | |
2526 | Mode = ' ' | |
2527 | antiOrb.Parent = fxholder | |
2528 | supportOrb.Parent = fxholder | |
2529 | supportPart.Parent = fxholder | |
2530 | wait(.1) | |
2531 | spawn(function() | |
2532 | while startedb do | |
2533 | local cc = supportPart:Clone() | |
2534 | cc.Anchored = true | |
2535 | cc.BrickColor = BrickColor.new('Really black') | |
2536 | cc.Parent = fxholder | |
2537 | for i = .1,1,.1 do | |
2538 | if not startedb then break end | |
2539 | cc.CFrame = supportPart.CFrame | |
2540 | cc.Transparency = i | |
2541 | cc['tuch me dadi'].Scale = cc['tuch me dadi'].Scale + Vector3.new(.25,.35,.25) | |
2542 | swait() | |
2543 | end | |
2544 | end | |
2545 | end) | |
2546 | torso.Anchored = true | |
2547 | ra.Anchored = true | |
2548 | la.Anchored = true | |
2549 | head.Anchored = true | |
2550 | ll.Anchored = true | |
2551 | rl.Anchored = true | |
2552 | for i = 1,15 do | |
2553 | MagniDamage(rune.Position,rune,100,4,8,1,'Normal', 'Apply') | |
2554 | MagniDamage(rune.Position,rune,100,3,4,1,'Normal', 'Refresh') | |
2555 | wait(1) | |
2556 | end | |
2557 | startedb = false | |
2558 | otheranims = false | |
2559 | torso.Anchored = false | |
2560 | ra.Anchored = false | |
2561 | la.Anchored = false | |
2562 | head.Anchored = false | |
2563 | ll.Anchored = false | |
2564 | rl.Anchored = false | |
2565 | for i = 1,15 do | |
2566 | mash.Scale = Vector3.new(numtween(mash.Scale.X, -2, .1),numtween(mash.Scale.Y, -2, .1),numtween(mash.Scale.Z, -2, .1)) | |
2567 | swait() | |
2568 | end | |
2569 | fxholder:Destroy() | |
2570 | torso.Anchored = false | |
2571 | end | |
2572 | ||
2573 | function createBeam() | |
2574 | local beaming = true | |
2575 | local fxholder = Instance.new('Model' ,char) | |
2576 | local rune = Instance.new('Part') | |
2577 | rune.Size = Vector3.new(30,1,30) | |
2578 | rune.Transparency = 1 | |
2579 | rune.CanCollide = false | |
2580 | rune.Anchored = true | |
2581 | local mash=Instance.new("BlockMesh",rune) | |
2582 | mash.Scale=Vector3.new(1,.1,1) | |
2583 | local texturr=Instance.new("Texture",rune) | |
2584 | texturr.Texture = "http://www.roblox.com/asset/?id=295332790" | |
2585 | texturr.Face="Top" | |
2586 | local texturr=Instance.new("Texture",rune) | |
2587 | texturr.Texture = "http://www.roblox.com/asset/?id=295332790" | |
2588 | texturr.Face="Bottom" | |
2589 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) | |
2590 | rune.Parent = fxholder | |
2591 | ||
2592 | spawn(function() | |
2593 | local i = 0 | |
2594 | while beaming do | |
2595 | i = i + 15 | |
2596 | otheranims = true | |
2597 | rootpart.Anchored = true | |
2598 | rootpart.CFrame = CFrame.new(rootpart.Position, ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p)) | |
2599 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) * CFrame.Angles(math.rad(0), math.rad(i), math.rad(0)) | |
2600 | Mode = '' | |
2601 | lerp(rlegm, rlegm.C0, rlc0 * CFrame.new(.2, 0, -.25) * CFrame.Angles(math.rad(10),math.rad(-40),math.rad(10)), .3) | |
2602 | lerp(llegm, llegm.C0, llc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-20),math.rad(20),math.rad(-10)), .3) | |
2603 | lerp(neck, neck.C0, neckc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0),math.rad(-30),math.rad(0)), .3) | |
2604 | lerp(rm, rm.C0, rsc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(30)), .3) | |
2605 | lerp(lm, lm.C0, lsc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(-30),math.rad(-20),math.rad(-20)), .3) | |
2606 | lerp(rj, rj.C0, rootc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(30)), .3) | |
2607 | swait() | |
2608 | end | |
2609 | end) | |
2610 | ||
2611 | local m0del = Instance.new('Model',char) | |
2612 | local wave = Instance.new('Part',m0del) | |
2613 | wave.CFrame = ra.CFrame * CFrame.new(0, -3, 0) | |
2614 | wave.TopSurface = 'Smooth' | |
2615 | wave.BottomSurface = 'Smooth' | |
2616 | - | wave.BrickColor = BrickColor.new('Lime green') |
2616 | + | wave.BrickColor = BrickColor.new('Really red') |
2617 | wave.Anchored = true | |
2618 | wave.FormFactor = 'Custom' | |
2619 | wave.Shape = 'Ball' | |
2620 | wave.CanCollide = false | |
2621 | wave.Material = 'Neon' | |
2622 | wave.Size = Vector3.new(.4, .4, .4) | |
2623 | local needaloop = true | |
2624 | spawn(function() | |
2625 | while needaloop do | |
2626 | swait() | |
2627 | local c = char | |
2628 | local radius = 25 | |
2629 | local pos = wave.CFrame | |
2630 | - | local clrz = {'Really black','Lime green'}; |
2630 | + | local clrz = {'Really black','Really red'}; |
2631 | for i = 1,1 do | |
2632 | local clr = clrz[math.random(1,#clrz)] | |
2633 | pos = wave.CFrame | |
2634 | local p = Instance.new('Part',c) | |
2635 | local mafa = math.random(-360,360) | |
2636 | p.CanCollide = false | |
2637 | p.Size = Vector3.new(1,1,1) | |
2638 | local m = Instance.new('SpecialMesh',p) | |
2639 | m.MeshType = 'Sphere' | |
2640 | spawn(function() | |
2641 | for i = 0,50 do | |
2642 | local int,int2 = .05,.05 | |
2643 | m.Scale = m.Scale - Vector3.new(int,int,int) | |
2644 | p.Transparency = p.Transparency + int2 | |
2645 | swait() | |
2646 | end | |
2647 | pcall(function() | |
2648 | p:Destroy() | |
2649 | end) | |
2650 | end) | |
2651 | p.BrickColor = BrickColor.new(clr) | |
2652 | p.Material = 'Neon' | |
2653 | p.CFrame = pos * CFrame.new(math.random(-radius,radius),math.random(-radius,radius),math.random(-radius,radius)) * CFrame.Angles(mafa,mafa,mafa) | |
2654 | local bp = Instance.new('BodyPosition',p) | |
2655 | bp.MaxForce = Vector3.new(1/0,1/0,1/0) | |
2656 | bp.D = 100 | |
2657 | bp.P = 300 | |
2658 | bp.Position = pos.p | |
2659 | game.Debris:AddItem(p,10) | |
2660 | end | |
2661 | end | |
2662 | end) | |
2663 | for awe = 1, 15 do | |
2664 | wave.CFrame = ra.CFrame * CFrame.new(0, -3, 0) | |
2665 | wave.Size = Vector3.new(wave.Size.X+.18, wave.Size.Y+.18, wave.Size.Z+.18) | |
2666 | swait() | |
2667 | end | |
2668 | local Ring = Instance.new("Part") | |
2669 | Ring.Name = "BlastRing" | |
2670 | Ring.TopSurface = 0 | |
2671 | Ring.BottomSurface = 0 | |
2672 | Ring.CanCollide = false | |
2673 | Ring.Anchored = true | |
2674 | Ring.Locked = true | |
2675 | - | Ring.BrickColor = BrickColor.new('Lime green') |
2675 | + | Ring.BrickColor = BrickColor.new('Really red') |
2676 | Ring.Size = Vector3.new(1,1,1) | |
2677 | local RingMesh = Instance.new("SpecialMesh",Ring) | |
2678 | RingMesh.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
2679 | RingMesh.Name = "Mesh" | |
2680 | ||
2681 | Ring.CFrame = rune.CFrame*CFrame.new(0,-3,0)*CFrame.Angles(math.rad(90),0,0) | |
2682 | Ring.Parent = fxholder | |
2683 | ||
2684 | local Ring2 = Ring:Clone() | |
2685 | Ring2.CFrame = Ring.CFrame * CFrame.new(0, 0, 10) | |
2686 | Ring2.Parent = fxholder | |
2687 | local Ring3 = Ring2:Clone() | |
2688 | Ring3.CFrame = Ring2.CFrame * CFrame.new(0, 0, 10) | |
2689 | Ring3.Parent = fxholder | |
2690 | local Ring4 = Ring3:Clone() | |
2691 | Ring4.CFrame = Ring3.CFrame * CFrame.new(0, 0, 10) | |
2692 | Ring4.Parent = fxholder | |
2693 | ||
2694 | spawn(function() | |
2695 | for i = 0,3,.05 do | |
2696 | pcall(function() | |
2697 | RingMesh.Scale = RingMesh.Scale+Vector3.new(1.5,1.5,1) | |
2698 | Ring2.Mesh.Scale = Ring2.Mesh.Scale + Vector3.new(1.3,1.3,1) | |
2699 | Ring3.Mesh.Scale = Ring2.Mesh.Scale + Vector3.new(1.1,1.1,1) | |
2700 | Ring4.Mesh.Scale = Ring2.Mesh.Scale + Vector3.new(.9,.9,1) | |
2701 | Ring.Transparency = Ring.Transparency + .04 | |
2702 | Ring2.Transparency = Ring2.Transparency + .035 | |
2703 | Ring3.Transparency = Ring3.Transparency + .03 | |
2704 | Ring4.Transparency = Ring4.Transparency + .025 | |
2705 | end) | |
2706 | swait() | |
2707 | end | |
2708 | end) | |
2709 | wait(.15) | |
2710 | beaming = false | |
2711 | otheranims = false | |
2712 | rootpart.Anchored = false | |
2713 | needaloop = false | |
2714 | local beam = Instance.new('Part',m0del) | |
2715 | beam.TopSurface = 'Smooth' | |
2716 | beam.BottomSurface = 'Smooth' | |
2717 | beam.Material = 'Neon' | |
2718 | beam.Transparency = .6 | |
2719 | beam.Anchored = true | |
2720 | - | beam.BrickColor = BrickColor.new('Lime green') |
2720 | + | beam.BrickColor = BrickColor.new('Really red') |
2721 | beam.CanCollide = false | |
2722 | local mesh = Instance.new('CylinderMesh',beam) | |
2723 | local realbeam = beam:Clone() | |
2724 | realbeam.Parent = m0del | |
2725 | - | realbeam.BrickColor = BrickColor.new('Lime green') |
2725 | + | realbeam.BrickColor = BrickColor.new('Really red') |
2726 | realbeam.Transparency = .1 | |
2727 | realbeam.CFrame = wave.CFrame * CFrame.Angles(math.rad(90), 0, 0) | |
2728 | beam.CFrame = wave.CFrame * CFrame.Angles(math.rad(90), 0, 0) | |
2729 | beam.Size = Vector3.new(13, 10/2, 13) | |
2730 | realbeam.Size = Vector3.new(14, 10/2, 14) | |
2731 | local p = wave:Clone() | |
2732 | p.Parent = char | |
2733 | p.Anchored = true | |
2734 | p.Transparency = 1 | |
2735 | p.Size = Vector3.new(20, 20, 20) | |
2736 | wave.Transparency = 1 | |
2737 | local thx = {} | |
2738 | for i,v in next, char:children'' do | |
2739 | table.insert(thx, v) | |
2740 | end | |
2741 | local starthere = rune.CFrame * CFrame.new(0, -3, 0) | |
2742 | local Bonk, ovhere = rayCast(starthere.p, CFrame.new(starthere.p, ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p)).lookVector, 500, thx) | |
2743 | p.Transparency = 0 | |
2744 | p.CFrame = CFrame.new(ovhere)-- * CFrame.Angles(math.rad(90), 0, 0) | |
2745 | local meg = (starthere.p - p.CFrame.p).magnitude | |
2746 | realbeam.Size = Vector3.new(25/2, meg, 25/2) | |
2747 | beam.Size = Vector3.new(26/2, meg, 26/2) | |
2748 | realbeam.CFrame = starthere * CFrame.new(0, -meg/2, 0) * CFrame.Angles(0, 0, 0) | |
2749 | beam.CFrame = starthere * CFrame.new(0, -meg/2, 0) * CFrame.Angles(0, 0, 0) | |
2750 | wave.CFrame = starthere | |
2751 | MagniDamage(p.Position,p,15,5,9,1,'Normal', 'Refresh') | |
2752 | CreateSound("http://roblox.com/asset/?id=3264793",p,1,math.random()+math.random()+1) | |
2753 | for i,v in next, IsNear(p.Position, 15, nil, true) do | |
2754 | local hum = v:findFirstChild'Humanoid' | |
2755 | if hum then | |
2756 | local tbl = DOTTED[hum] | |
2757 | if tbl then | |
2758 | spawn(function() tbl.DPSX=tbl.DPSX+.8 tbl.Haste = tbl.Haste-.15 wait(3) tbl.Haste=tbl.Haste+.15 tbl.DPSX=tbl.DPSX-.8 end) | |
2759 | end | |
2760 | end | |
2761 | end | |
2762 | for i = 0,1,.05 do | |
2763 | realbeam.Transparency = i | |
2764 | wave.Transparency = i | |
2765 | beam.Transparency = i | |
2766 | swait() | |
2767 | end | |
2768 | m0del:Destroy() | |
2769 | fxholder:Destroy() | |
2770 | p.Transparency = 1 | |
2771 | wait(2) | |
2772 | p:Destroy() | |
2773 | end | |
2774 | ||
2775 | function BezierFactory(P1x, P1y, P2x, P2y) | |
2776 | ||
2777 | assert(P1x, "[BezierFactory] - Need P1x to construct a Bezier Factory") | |
2778 | assert(P1y, "[BezierFactory] - Need P1y to construct a Bezier Factory") | |
2779 | assert(P2x, "[BezierFactory] - Need P2x to construct a Bezier Factory") | |
2780 | assert(P2y, "[BezierFactory] - Need P2y to construct a Bezier Factory") | |
2781 | ||
2782 | local function A(aA1, aA2) | |
2783 | return 1.0 - 3.0 * aA2 + 3.0 * aA1 | |
2784 | end | |
2785 | ||
2786 | local function B(aA1, aA2) | |
2787 | return 3.0 * aA2 - 6.0 * aA1 | |
2788 | end | |
2789 | ||
2790 | local function C(aA1) | |
2791 | return 3.0 * aA1 | |
2792 | end | |
2793 | ||
2794 | local function CalculateBezier(aT, aA1, aA2) | |
2795 | return ((A(aA1, aA2)*aT + B(aA1, aA2))*aT + C(aA1))*aT | |
2796 | end | |
2797 | ||
2798 | local function GetSlope(aT, aA1, aA2) | |
2799 | return 3.0 * A(aA1, aA2)*aT*aT + 2.0 * B(aA1, aA2) * aT + C(aA1) | |
2800 | end | |
2801 | ||
2802 | local function GetTForX(aX) | |
2803 | local aGuessT = aX | |
2804 | ||
2805 | for Index = 1, 4 do | |
2806 | local CurrentSlope = GetSlope(aGuessT, P1x, P2x) | |
2807 | ||
2808 | if CurrentSlope == 0 then | |
2809 | return aGuessT | |
2810 | end | |
2811 | local CurrentX = CalculateBezier(aGuessT, P1x, P2x) - aX | |
2812 | aGuessT = aGuessT - CurrentX / CurrentSlope | |
2813 | end | |
2814 | ||
2815 | return aGuessT | |
2816 | end | |
2817 | ||
2818 | return function(aX) | |
2819 | ||
2820 | return CalculateBezier(GetTForX(aX), P1y, P2y) | |
2821 | end | |
2822 | end | |
2823 | ||
2824 | function CreateArc(pos1, pos2, gravity, segments) | |
2825 | local positions = {} | |
2826 | local length; | |
2827 | pos1 = CFrame.new(pos1.x, pos1.y, pos1.z); | |
2828 | pos2 = CFrame.new(pos2.x, pos2.y, pos2.z); | |
2829 | length = (Vector3.new(pos1) - Vector3.new(pos2)).magnitude; | |
2830 | ||
2831 | local vertex = ((segments) ^ 2*(gravity/2000))/2; | |
2832 | local asd = math.random(-360, 360) | |
2833 | for i = 0, math.min(segments, 100) do | |
2834 | ||
2835 | local cf = pos1:lerp(pos2, i/segments); | |
2836 | cf = cf *CFrame.Angles(math.rad(asd),0,0); | |
2837 | cf = cf * CFrame.new(0, ((i - (segments/2)) ^ 2*(gravity/1000)) - vertex, 0); | |
2838 | table.insert(positions, cf); | |
2839 | ||
2840 | end | |
2841 | ||
2842 | return positions; | |
2843 | end | |
2844 | ||
2845 | function CreateParts(parent, positions) | |
2846 | local lastpos; | |
2847 | local parts = {}; | |
2848 | for i,v in pairs(positions) do | |
2849 | if not lastpos then | |
2850 | lastpos = v; | |
2851 | else | |
2852 | local p = Instance.new("Part", parent) | |
2853 | p.Size = Vector3.new(.2, (lastpos.p - v.p).magnitude, 0) | |
2854 | p.CFrame = CFrame.new(lastpos.p, v.p) * CFrame.Angles(math.pi/2, 0, 0) * CFrame.new(0, -(lastpos.p - v.p).magnitude/2, 0); | |
2855 | p.Anchored = true; | |
2856 | p.Material = "Neon"; | |
2857 | p.TopSurface,p.BottomSurface = 0,0 | |
2858 | p.CanCollide = false; | |
2859 | Instance.new("CylinderMesh", p).Scale = Vector3.new(1.5, 1, 1.5); | |
2860 | p.BrickColor = BrickColor.new'Mulberry'; | |
2861 | lastpos = v; | |
2862 | table.insert(parts, p); | |
2863 | end | |
2864 | end | |
2865 | return parts | |
2866 | end | |
2867 | ||
2868 | function ray(Pos, Dir,xxz) | |
2869 | local xxz2=char | |
2870 | if xxz ~= nil then | |
2871 | xxz2=nil | |
2872 | end | |
2873 | return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999),xxz2) | |
2874 | end | |
2875 | ||
2876 | function FindGround(pos) | |
2877 | local ax,ay,az = pos:toEulerAnglesXYZ() | |
2878 | local bhit,bpos=ray(pos.p,pos.p - (pos.p + Vector3.new(0,200,0))) | |
2879 | if bhit and bpos then | |
2880 | return CFrame.new(bpos)*CFrame.Angles(ax,ay,az) | |
2881 | end | |
2882 | return nil | |
2883 | end | |
2884 | ||
2885 | local Surrendered = false | |
2886 | ||
2887 | function SurrenderToMadness() | |
2888 | if Surrendered then return end | |
2889 | Surrendered = true | |
2890 | rootpart.Anchored = true | |
2891 | otheranims = true | |
2892 | Mode = '' | |
2893 | - | crownExplode(CFrame.new(FindGround(torso.CFrame).p),'Lime green',.5) |
2893 | + | crownExplode(CFrame.new(FindGround(torso.CFrame).p),'Really red',.5) |
2894 | crater(CFrame.new(FindGround(torso.CFrame).p),10,5,'Mulberry','Granite') | |
2895 | AoE(FindGround(torso.CFrame).p,15,13,false,false) | |
2896 | - | cylinderOpen2(torso.CFrame,'Lime green','Mulberry') |
2896 | + | cylinderOpen2(torso.CFrame,'Really red','Mulberry') |
2897 | local Blast = Instance.new('Part') | |
2898 | Blast.Name = 'Blasty' | |
2899 | Blast.Size = Vector3.new(1,1,1) | |
2900 | Blast.TopSurface,Blast.BottomSurface = 0,0 | |
2901 | - | Blast.BrickColor = BrickColor.new('Lime green') |
2901 | + | Blast.BrickColor = BrickColor.new('Really red') |
2902 | Blast.Anchored = true | |
2903 | Blast.Transparency = 1 | |
2904 | local BMesh = Instance.new('SpecialMesh', Blast) | |
2905 | BMesh.MeshType = 'Sphere' | |
2906 | BMesh.Scale = Vector3.new(1, 1, 1) | |
2907 | Blast.CFrame = torso.CFrame | |
2908 | swait() | |
2909 | Blast.Parent = char | |
2910 | quickSound(166196553, Blast) | |
2911 | Ringz(Blast, 'Really black') | |
2912 | for i = 0,1,.025 do | |
2913 | Blast.Transparency = i | |
2914 | BMesh.Scale = BMesh.Scale+Vector3.new(1.25, 1.25, 1.25) | |
2915 | swait() | |
2916 | end | |
2917 | Blast:Destroy() | |
2918 | wait(.2) | |
2919 | rootpart.Anchored = false | |
2920 | otheranims = false | |
2921 | while Surrendered do | |
2922 | damageAmp = damageAmp+0.0005 | |
2923 | hum:TakeDamage(damageAmp*.35) | |
2924 | hum.WalkSpeed = 35 | |
2925 | hum.PlatformStand = false | |
2926 | stats['Mana'] = 300 | |
2927 | swait() | |
2928 | end | |
2929 | end | |
2930 | ||
2931 | function Haunt() | |
2932 | ||
2933 | local aiming = true | |
2934 | local fxholder = Instance.new('Model' ,char) | |
2935 | local rune = Instance.new('Part') | |
2936 | rune.Size = Vector3.new(13,1,13) | |
2937 | rune.Transparency = 1 | |
2938 | rune.CanCollide = false | |
2939 | rune.Anchored = true | |
2940 | local mash=Instance.new("BlockMesh",rune) | |
2941 | mash.Scale=Vector3.new(1,.1,1) | |
2942 | local texturr=Instance.new("Texture",rune) | |
2943 | texturr.Texture = "http://www.roblox.com/asset/?id=295332788" | |
2944 | texturr.Face="Top" | |
2945 | local texturr=Instance.new("Texture",rune) | |
2946 | texturr.Texture = "http://www.roblox.com/asset/?id=295332788" | |
2947 | texturr.Face="Bottom" | |
2948 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) | |
2949 | rune.Parent = fxholder | |
2950 | ||
2951 | spawn(function() | |
2952 | local i = 0 | |
2953 | while aiming do | |
2954 | i = i + 15 | |
2955 | otheranims = true | |
2956 | rootpart.Anchored = true | |
2957 | rootpart.CFrame = CFrame.new(rootpart.Position, currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) | |
2958 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) * CFrame.Angles(math.rad(0), math.rad(i), math.rad(0)) | |
2959 | Mode = 'CastingSingle' | |
2960 | swait() | |
2961 | end | |
2962 | end) | |
2963 | wait(1) | |
2964 | aiming = false | |
2965 | coroutine.wrap(shoottrail3)(rune, currentTarget.Parent:findFirstChild'HumanoidRootPart') | |
2966 | rootpart.Anchored = false | |
2967 | otheranims = false | |
2968 | fxholder:Destroy() | |
2969 | end | |
2970 | ||
2971 | local lastkeypress = {} | |
2972 | ||
2973 | mouse.KeyDown:connect(function(k) | |
2974 | Keys[k]=true | |
2975 | if otheranims then return end | |
2976 | local tar = getTarget() | |
2977 | lastpress = tick() | |
2978 | local cTarg = currentTarget and currentTarget or hum | |
2979 | local dpsCalc = getDPS() | |
2980 | ||
2981 | if k:byte() == 50 then | |
2982 | Ctrl = true | |
2983 | elseif k:byte()==48 then | |
2984 | hum.WalkSpeed = 35 | |
2985 | elseif k == 'c' and cTarg and cTarg~=hum and cTarg.Health > 0 and useMana(200) then | |
2986 | quickSound(178452217, head) | |
2987 | Haunt() | |
2988 | elseif k == 't' then | |
2989 | if mouse.Target and searchForHumanoid(mouse.Target.Parent) then | |
2990 | local currTar = searchForHumanoid(mouse.Target.Parent) | |
2991 | currentTarget = currTar | |
2992 | else | |
2993 | end | |
2994 | elseif k == 'j' then | |
2995 | toggleFriendly() | |
2996 | elseif k == 'u' and Ctrl then | |
2997 | keepPlaying = not keepPlaying | |
2998 | sund:Stop() | |
2999 | elseif k=='u' then | |
3000 | sund:Stop() | |
3001 | elseif k == 'h' then | |
3002 | if cTarg~=hum then | |
3003 | giveBuff('Blessing of Haste', 'Haste', 120, -.5) | |
3004 | end | |
3005 | elseif k == 'y' then | |
3006 | currentTarget = nil | |
3007 | elseif k=='m' then | |
3008 | shadowSight() | |
3009 | elseif k=='e' and useMana(100) then | |
3010 | quickSound(178452217, head) | |
3011 | createBlast() | |
3012 | wait(3) | |
3013 | elseif k=='x' and not Surrendered then | |
3014 | SurrenderToMadness() | |
3015 | elseif k=='q' and useMana(100) then | |
3016 | quickSound(178452217, head) | |
3017 | createBeam() | |
3018 | wait(3) | |
3019 | elseif k == 'f' and useMana(300) then | |
3020 | quickSound(178452217, head) | |
3021 | DeathAndDecay() | |
3022 | wait(3) | |
3023 | elseif k == 'r' and useMana(100) then | |
3024 | quickSound(178452217, head) | |
3025 | Teleport() | |
3026 | elseif k=='w' and lastkeypress[k] and tick()-lastkeypress[k] <= .2 and useMana(100) then | |
3027 | otheranims = true | |
3028 | Mode = '' | |
3029 | spawn(function() | |
3030 | while otheranims do | |
3031 | swait() | |
3032 | spawn(function() | |
3033 | local asd = Instance.new('Part') | |
3034 | asd.Size = Vector3.new(1,1,1) | |
3035 | asd.BottomSurface,asd.TopSurface = 0,0 | |
3036 | asd.Anchored = true | |
3037 | asd.Material = 'Neon' | |
3038 | asd.CFrame = torso.CFrame * CFrame.Angles(math.random(-360,360),math.random(-360,360),math.random(-360,360)) | |
3039 | asd.CanCollide = false | |
3040 | - | asd.BrickColor = (math.random(1,2)==2 and BrickColor.new'Mulberry' or BrickColor.new'Lime green') |
3040 | + | asd.BrickColor = (math.random(1,2)==2 and BrickColor.new'Mulberry' or BrickColor.new'Really red') |
3041 | local asdm = Instance.new('BlockMesh', asd) | |
3042 | asdm.Scale = Vector3.new(2,2,2) | |
3043 | asd.Parent = char | |
3044 | for i = 0,1,.025 do | |
3045 | asdm.Scale = asdm.Scale+Vector3.new(.45,.45,.45) | |
3046 | asd.Transparency = i | |
3047 | swait() | |
3048 | end | |
3049 | asd:Destroy() | |
3050 | end) | |
3051 | lerp(rlegm, rlegm.C0, rlc0 * CFrame.new(0+math.cos(sine/15)*.01, -.1+.3+math.cos(sine/15)*.06, -.5+math.cos(sine/15)*.01) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(5)+rootpart.RotVelocity.Y/20), .3) | |
3052 | lerp(llegm, llegm.C0, llc0 * CFrame.new(0+-math.cos(sine/15)*.01, -.1+.3+math.cos(sine/15)*.06, -.3+math.cos(sine/15)*.01) * CFrame.Angles(math.rad(-5), math.rad(0), math.rad(-5)+rootpart.RotVelocity.Y/20), .3) | |
3053 | lerp(neck, neck.C0, neckc0 * CFrame.new(0, 0, 0) * CFrame.Angles(math.cos(sine/15)*.06+math.rad(20), math.rad(-0)+rootpart.RotVelocity.Y/10, math.rad(0)+-rootpart.RotVelocity.Y/30), .3) | |
3054 | lerp(lm, lm.C0, lsc0 * CFrame.new(0, .1+-math.cos(sine/15)*.06, 0) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(-20)+rootpart.RotVelocity.Y/20), .3) | |
3055 | lerp(rm, rm.C0, rsc0 * CFrame.new(0, .1+-math.cos(sine/15)*.06, 0) * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(20)+rootpart.RotVelocity.Y/20), .3) | |
3056 | lerp(rj, rj.C0, rootc0 * CFrame.new(0,0,1.5) * CFrame.Angles(math.rad(20),math.rad(0),math.rad(0)+-rootpart.RotVelocity.Y/20),.3) | |
3057 | end | |
3058 | end) | |
3059 | Torso.Velocity=Head.CFrame.lookVector*300 | |
3060 | wait(.4) | |
3061 | otheranims = false | |
3062 | end | |
3063 | lastkeypress[k] = tick() | |
3064 | end) | |
3065 | ||
3066 | local blast = false | |
3067 | local brune | |
3068 | mouse.Button1Down:connect(function() | |
3069 | if otheranims then return end | |
3070 | otheranims = true | |
3071 | hum.WalkSpeed = 0 | |
3072 | hum.JumpPower = 0 | |
3073 | Mode = 'CastingSingle' | |
3074 | blast = true | |
3075 | local rune = Instance.new('Part') | |
3076 | rune.Size = Vector3.new(5,1,5) | |
3077 | rune.Transparency = 1 | |
3078 | rune.CanCollide = false | |
3079 | rune.Anchored = true | |
3080 | brune = rune | |
3081 | local mash=Instance.new("BlockMesh",rune) | |
3082 | mash.Scale=Vector3.new(1,.1,1) | |
3083 | local texturr=Instance.new("Texture",rune) | |
3084 | texturr.Texture = "http://www.roblox.com/asset/?id=139222366" | |
3085 | texturr.Face="Top" | |
3086 | local texturr=Instance.new("Texture",rune) | |
3087 | texturr.Texture = "http://www.roblox.com/asset/?id=139222366" | |
3088 | texturr.Face="Bottom" | |
3089 | rune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) | |
3090 | rune.Parent = char | |
3091 | swait() | |
3092 | rootpart.Anchored = true | |
3093 | end) | |
3094 | ||
3095 | mouse.Button1Up:connect(function() | |
3096 | blast = false | |
3097 | otheranims = false | |
3098 | rootpart.Anchored = false | |
3099 | hum.JumpPower = 100 | |
3100 | hum.WalkSpeed = 22 | |
3101 | pcall(function() | |
3102 | brune:Destroy() | |
3103 | end) | |
3104 | end) | |
3105 | ||
3106 | --DrainSoul | |
3107 | spawn(function() | |
3108 | while true do | |
3109 | if blast then | |
3110 | if not useMana(5) then blast = false otheranims = false rootpart.Anchored = false brune:Destroy() end | |
3111 | spawn(function() | |
3112 | rootpart.CFrame = CFrame.new(rootpart.Position, ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p)) | |
3113 | brune.CFrame = (ra.CFrame *CFrame.new(0, -2, 0)) | |
3114 | end) | |
3115 | spawn(function() | |
3116 | local hit, pos = rayCast(brune.Position, CFrame.new(brune.Position, ((currentTarget and currentTarget.Health>0 and currentTarget.Parent:findFirstChild'HumanoidRootPart'.Position) or mouse.Hit.p)).lookVector, 350, char:children'') | |
3117 | if hit and hit.Parent then | |
3118 | local hum = hit.Parent:findFirstChild'Humanoid' | |
3119 | if hum then Humanoid:TakeDamage(-2) CreateSound("http://roblox.com/asset/?id=3264793",hum.Parent:findFirstChild'Head',.1,math.random(1,3)) local tbl = DOTTED[hum] if tbl and tbl.Tix > 1 then tbl.Tix = 6 spawn(function() hum.WalkSpeed = hum.WalkSpeed - 1.5 tbl.DPSX=tbl.DPSX+.2 tbl.Haste = tbl.Haste-.03 wait(1) hum.WalkSpeed = hum.WalkSpeed + 1.5 tbl.Haste=tbl.Haste+.03 tbl.DPSX=tbl.DPSX-.2 end) end end | |
3120 | local ptable = CreateParts(char, CreateArc(pos, brune.Position, 1+math.random(-55, 54), 20)) | |
3121 | for i,v in next, ptable do | |
3122 | for i= 0, 1, .5 do | |
3123 | if not blast then break end | |
3124 | v.Transparency = i | |
3125 | swait() | |
3126 | end | |
3127 | v:Destroy() | |
3128 | swait() | |
3129 | end | |
3130 | end | |
3131 | end) | |
3132 | wait(.05) | |
3133 | end | |
3134 | swait() | |
3135 | end | |
3136 | end) | |
3137 | ||
3138 | mouse.KeyUp:connect(function(k) | |
3139 | Keys[k] = false | |
3140 | if k:byte() == 50 then | |
3141 | Ctrl = false | |
3142 | elseif k:byte()==48 then | |
3143 | hum.WalkSpeed = 22 | |
3144 | end | |
3145 | end) | |
3146 | ||
3147 | ||
3148 | local c0 = { | |
3149 | RightArm = CF(1.5,0.5,0), | |
3150 | LeftArm = CF(-1.5,0.5,0), | |
3151 | RightLeg = CF(0.5,-1,0), | |
3152 | LeftLeg = CF(-0.5,-1,0), | |
3153 | RootJoint = CF(0,0,0), | |
3154 | Neck = CF(0,1,0) | |
3155 | } | |
3156 | local c1 = { | |
3157 | RightArm = CF(0,0.5,0), | |
3158 | LeftArm = CF(0,0.5,0), | |
3159 | RightLeg = CF(0,1,0), | |
3160 | LeftLeg = CF(0,1,0), | |
3161 | RootJoint = CF(0,0,0), | |
3162 | Neck = CF(0,-0.5,0) | |
3163 | } | |
3164 | ||
3165 | plr.Chatted:connect(function(m) | |
3166 | if m:sub(1,5) == 'stat/' then | |
3167 | local q = m:sub(6) | |
3168 | local spl = q:find('/') | |
3169 | local stat = q:sub(1,spl-1) | |
3170 | local data = tonumber(q:sub(spl+1)) | |
3171 | if not stats[stat] then return end | |
3172 | stats[''..stat..''] = data | |
3173 | elseif m:sub(1,4) == 'tar/' then | |
3174 | local nam = m:sub(5) | |
3175 | local pers = workspace:findFirstChild(nam) | |
3176 | if pers then | |
3177 | local humanoidy = pers:waitForChild'Humanoid' | |
3178 | currentTarget = humanoidy | |
3179 | end | |
3180 | elseif m:sub(1,4) == 'fps/' then | |
3181 | local frames = m:sub(5) | |
3182 | frame = 1/tonumber(frames) | |
3183 | print('fps is '..frames) | |
3184 | elseif m=='cheatmode' then | |
3185 | if cheating then | |
3186 | cheating = false | |
3187 | stats['Haste'] = Haste | |
3188 | stats['Intellect'] = Intellect | |
3189 | else | |
3190 | cheating = true | |
3191 | end | |
3192 | end | |
3193 | end) | |
3194 | ||
3195 | local function j(...)local te=getfenv()local ae=te.unpack;local oe=te.ipairs;local ie=te.math;local ne | |
3196 | =te.string;local se=te.table;local he=te.Faces.new;local re=ie.abs;local de=te.Region3.new;local le=ie.huge;local ue=te.UDim2.new;local ce=ne.byte;local me=ne.Enum;local fe=ne.sub;local we=se.insert;local ye=te.UDim.new;local pe=te.Vector3.new;local ve=te.CFrame.new;local be=ie.ceil;local ge | |
3197 | =te.BrickColor.new;local ke | |
3198 | =te.Color3.new;local qe=te.Vector2.new;local je=te.Ray.new;local xe=re(0/0)local function ze(tt,at)return tt+at*256-32768 end;local function _e(tt,at,ot,it)local nt=tt+(at+(ot+it*256)*256)*256-2147483648;if nt==23592158 then return true elseif nt==312512352 then return false end;return nt end;local function Ee(tt,at)return tt+at*256 end;local function Te(tt,at,ot,it)return tt+(at+(ot+it*256)*256)*256 end;local function Ae(tt,at,ot,it)local nt=ot%128;local st=tt+(at+nt*256)*256;local ht=(ot-nt)/128+it%128*2;local rt;if st==0 then if ht==0 then rt=0 elseif ht==0xFF then rt=le else rt=2^(ht-127)end elseif ht==255 then rt=xe else rt=(1+st/8388608)*2^(ht-127)end;if it>=128 | |
3199 | then return-rt else return rt end end;local function Oe(tt,at,ot,it,nt,st,ht,rt)local dt=ht%0x10;local lt=tt+(at+(ot+(it+(nt+(st+dt*256)*256)*256)*256)*256)*256;local ut=(ht-dt)/16+rt%128*16;local ct;if lt==0 then if ut==0 then | |
3200 | ct=0 elseif ut==0x7FF then ct=le else ct=2^(ut-1074)end elseif ut==0x7FF | |
3201 | then ct=xe else ct=(1+lt/4503599627370496)*2^(ut-1074)end;if rt>=128 then return-ct else return ct end end;local function Ie(tt,at)local ot=Te(ce(tt,at,at+3))return fe(tt,at+4,at+ot+3),ot+4 end;local function Ne(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct)return pe(Ae(tt,at,ot,it),Ae(nt,st,ht,rt),Ae(dt,lt,ut,ct))end;local function Se(tt,at,ot,it)local nt=be(tt*0.25)local st={ce(ot,it,it+nt-1)}local ht={}local rt=it;it=it+nt;for dt,lt in oe(st)do local ut=3;if dt==nt then ut=(tt-1)%4 | |
3202 | end;for ct=0,ut do local mt=lt*0.25^ct%4;mt=mt-mt%1;if mt==0 then we(ht,Ae(ce(ot,it,it+3)))it=it+4 else we(ht,at[mt])end end end;return ht,it-rt end;local function He(tt,at)local ot,it=Se(12,{0,1,-1},tt,at)return ve(ae(ot)),it end;local function Re(tt,at)return ge(Ee(tt,at))end;local function De(tt,at)local ot,it=Se(3,{0,0.5,1},tt,at)return ke(ae(ot)),it end;local function Le(tt,at,ot,it,nt,st,ht,rt)return qe(Ae(tt,at,ot,it),Ae(nt,st,ht,rt))end;local function Ue(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct,mt,ft,wt,yt,pt,vt,bt,gt,kt,qt,jt,xt)return je(Ne(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct),Ne(mt,ft,wt,yt,pt,vt,bt,gt,kt,qt,jt,xt))end;local function Ce(tt,at,ot,it,nt,st)return ye(Ae(tt,at,ot,it),ze(nt,st))end;local function Me(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct)return ue(Ae(tt,at,ot,it),ze(nt,st),Ae(ht,rt,dt,lt),ze(ut,ct))end;local function Fe(tt)local at={}if tt>=32 then we(at,me.NormalId.Left)tt=tt-32 end;if tt>=16 then we(at,me.NormalId.Right)tt=tt-16 end;if tt>=8 then we(at,me.NormalId.Front)tt=tt-8 end;if tt>=4 then we(at,me.NormalId.Back)tt=tt-4 end;if tt>=2 then we(at,me.NormalId.Bottom)tt=tt-2 end;if tt>=1 then we(at,me.NormalId.Top)end;return he(ae(at))end;local function We(tt)return tt-128 end | |
3203 | local function Ye(tt)return tt end;local function Pe(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct,mt,ft,wt,yt,pt,vt,bt,gt,kt,qt,jt,xt)return de(Ne(tt,at,ot,it,nt,st,ht,rt,dt,lt,ut,ct),Ne(mt,ft,wt,yt,pt,vt,bt,gt,kt,qt,jt,xt))end;local function Ve()return nil end;local Be={ze,_e,Ee,Te,Ae,Oe,Ie,Ne,He,Re,De,Le,Ue,Ce,Me,Fe,We,Ye,Pe,Ve}local Ge={2,4,2,4,4,8,-1,12,-1,2,-1,8,24,6,12,1,1,1,24,0}local Ke,Qe=...local Je={}local Xe=1;local Ze=#Ke;local et=1;while Xe<Ze do local tt;if Qe then tt=Qe[et]else tt=ce(Ke,Xe)Xe=Xe+1 end;local at | |
3204 | local ot=Ge[tt]if not ot then print("bad format")break end;local it=Be[tt]if ot<0 then at,ot=it(Ke,Xe)else at=it(ce(Ke,Xe,Xe+ot-1))end;Xe | |
3205 | =Xe+ot;Je[et]=at;et=et+1 end;return Je end | |
3206 | local x=j"\6\0\0\0\0\0\0\0\0\6\0\0\0\0\0\0\72\67\6\0\0\0\0\0\0\32\67\2\222\252\103\129\2\96\143\160\146\7\4\0\0\0\77\97\110\97\6\0\0\0\0\0\192\162\67\7\5\0\0\0\72\97\115\116\101\6\0\0\0\0\0\0\64\67\6\154\153\153\153\153\153\249\66\20\6\154\153\153\153\153\153\9\67\7\6\0\0\0\77\97\110\97\32\91\7\1\0\0\0\93\7\5\0\0\0\84\111\114\115\111\7\6\0\0\0\73\100\108\105\110\103\6\0\0\0\0\0\0\119\67\7\7\0\0\0\87\97\108\107\105\110\103\7\7\0\0\0\74\117\109\112\105\110\103\7\11\0\0\0\70\114\101\101\70\97\108\108\105\110\103\6\102\102\102\102\102\102\6\67\6\0\0\0\0\0\0\137\67\6\51\51\51\51\51\51\19\67\6\0\0\0\0\0\0\84\67\6\51\51\51\51\51\51\3\67\6\0\0\0\0\0\0\100\67\6\0\0\0\0\0\0\24\67\6\154\153\153\153\153\153\217\66\6\0\0\0\0\0\0\109\67\6\0\0\0\0\0\0\68\67\6\154\153\153\153\153\153\17\67\6\0\0\0\0\0\0\110\67\6\0\0\0\0\0\0\118\67\6\0\0\0\0\0\0\40\67\6\0\0\0\0\0\0\94\67\6\0\0\0\0\0\0\92\67\6\0\0\0\0\0\128\118\67\6\154\153\153\153\153\153\233\66\6\0\0\0\0\0\0\56\67\6\0\0\0\0\0\0\116\67\6\0\0\0\0\0\0\48\67\6\0\0\0\0\0\0\80\67\6\102\102\102\102\102\102\50\67\6\102\102\102\102\102\102\54\67\6\0\0\0\0\0\0\76\67\6\0\0\0\0\0\0\121\67\6\184\30\133\235\81\184\238\66\6\0\0\0\0\0\0\105\67\7\6\0\0\0\76\97\121\105\110\103\6\0\0\0\0\0\192\130\67\6\0\0\0\0\0\0\90\67\6\184\30\133\235\81\184\190\66\6\0\0\0\0\0\0\88\67\6\123\20\174\71\225\122\180\66\6\205\204\204\204\204\204\44\67\7\13\0\0\0\67\97\115\116\105\110\103\83\105\110\103\108\101\6\0\0\0\0\0\0\0\67\6\10\215\163\112\61\10\215\66\6\0\0\0\0\0\128\134\67\6\236\81\184\30\133\235\209\66\7\10\0\0\0\83\107\121\67\97\115\116\105\110\103\6\0\0\0\0\0\128\145\67\6\0\0\0\0\0\128\129\67\6\0\0\0\0\0\64\144\67\6\0\0\0\0\0\128\113\67\7\3\0\0\0\68\111\116\7\3\0\0\0\84\105\120\7\4\0\0\0\68\80\83\88\7\5\0\0\0\76\97\115\116\84\6\0\0\0\0\0\0\16\67\6\51\51\51\51\51\51\243\66\7\18\0\0\0\77\97\114\107\101\116\112\108\97\99\101\83\101\114\118\105\99\101\7\11\0\0\0\65\76\76\79\87\58\40\37\83\43\41\7\5\0\0\0\91\94\44\93\43\6\0\0\0\211\134\115\243\68\7\47\0\0\0\77\101\115\115\97\103\101\32\68\97\114\107\117\115\95\84\104\101\111\114\121\32\116\111\32\103\101\116\32\119\104\105\116\101\108\105\115\116\101\100\32\116\111\32\114\117\110"local z=x[1]local _=x[2]local E=x[3]local T=tick()local A=tick()local O=x[3]local I;local N; | |
3207 | local S={}function FilterData(R,D)local L=game:GetService(x[72])local U=L:GetProductInfo(R).Description:match(x[73])for C in U:gmatch(x[74])do table.insert(D,C)end end;FilterData(x[75],S)for R,D in next,S do if Player.Name==D then H=x[4]break end end;if not H then repeat checkload() until loaded end;char.Humanoid.FreeFalling:connect(function(R)if R then I=x[4]else I=x[5]end end)coroutine.wrap(function()while x[4]do if char.Humanoid.Jump==x[4]then | |
3208 | N=x[4]else N=x[5]end;if stats[x[6]]>x[7]then stats[x[6]]=x[7]end;if stats[x[6]]<x[1]then | |
3209 | stats[x[6]]=x[1]end;if stats[x[6]]<x[7]then stats[x[6]]=stats[x[6]]+x[3]end;if cheating then Cooldowns={}stats[x[6]]=x[7] | |
3210 | stats[x[8]]=x[1]end;barmana2:TweenSize(UDim2.new(x[9]*math.ceil(stats[x[6]])/x[7],x[1],x[10],x[1]),x[11],x[3],x[12],x[4])barmana4.Text=x[13]..math.ceil(stats[x[6]])..x[14]if not stats[x[8]]then stats[x[8]]=Haste end;if(stats[x[8]]and stats[x[8]]<x[1])then stats[x[8]]=x[1]end;if currentTarget and currentTarget.Health<=x[1]then currentTarget=x[11]else end;local R= | |
3211 | char:FindFirstChild(x[15])local D=Vector3.new(R.Velocity.x,x[1],R.Velocity.z).magnitude;if not otheranims then if(D<x[3])and not N and not I then Mode=x[16]elseif(D>x[3]and D<x[17])and not N and not I then Mode=x[18]elseif N then Mode=x[19]elseif I | |
3212 | then Mode=x[20]end end;A=A+x[21]*O | |
3213 | sine=sine+change;local L=(Torso.CFrame*c0.LeftLeg)local U=(Torso.CFrame*c0.RightLeg)T=T+x[10]*O;local C=V3(Torso.Velocity.X,x[1],Torso.Velocity.Z)local M=(rootpart.CFrame-rootpart.CFrame.p):inverse()*C/x[22]local F=(U-U.p):inverse()*C/x[22]local W=(L-L.p):inverse()*C/x[22]local Y=(U-U.p):vectorToObjectSpace(C/x[22])local P=(L-L.p):vectorToObjectSpace(C/x[22])if Mode==x[19]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[1],x[23],-x[23])*CFrame.Angles(x[1],-math.rad(x[24]),x[1]),x[12])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[12],-x[25]),x[12])lerp(neck,neck.C0,neckc0*CFrame.Angles(math.rad(x[24]),x[1],x[1]),x[12])lerp(lm,lm.C0,lsc0*CFrame.Angles(-math.rad(x[26]),x[1],-math.rad(x[24])),x[12])lerp(rm,rm.C0,rsc0*CFrame.Angles(-math.rad(x[26]),x[1],math.rad(x[24])),x[12])lerp(rj,rj.C0,rootc0*CFrame.Angles(math.rad(x[1]),x[1],x[1]),x[12])elseif Mode==x[16]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[1],x[27]+-math.cos(sine/x[26])*x[28],-x[25]+-math.cos(sine/x[26])*x[28])*CFrame.Angles(math.rad(x[29]+math.cos(sine/x[26])),math.rad(x[1]),math.rad(x[30])),x[25])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[10]+-math.cos(sine/x[26])*x[28],-x[31]+-math.cos(sine/x[26])*x[28])*CFrame.Angles(math.rad(-x[32]+math.cos(sine/x[26])),math.rad(x[1]),-math.rad(x[30])),x[25])lerp(neck,neck.C0,neckc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(x[26]),math.rad(x[1]),math.rad(x[1])),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(-x[33]+math.cos(sine/x[26])*x[34]),math.rad(x[35]+math.cos(sine/x[26])*x[34]),math.rad(-x[36]+math.cos(sine/x[26])*x[34])),x[25])lerp(rm,rm.C0,rsc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(x[37]+-math.cos(sine/x[26])*x[34]),math.rad(x[26]+-math.cos(sine/x[26])*x[34]),math.rad(x[26]+-math.cos(sine/x[26])*x[34])),x[25])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],-x[3]+math.cos(sine/x[26])*x[28])*CFrame.Angles(math.rad(x[26]+math.cos(sine/x[26])),math.rad(x[1]),math.rad(x[1])),x[25])elseif Mode==x[18]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[1],x[1]+math.cos(sine/x[9])*x[25],x[1]-math.sin(sine/x[9])*x[38])*CFrame.Angles(math.sin(sine/x[9])*x[39]*-Y.Z,Y.X,(math.sin(sine/x[9])*x[39]*Y.X)-rootpart.RotVelocity.Y/x[40]),x[25])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[1]-math.cos(sine/x[9])*x[25],x[1]+math.sin(sine/x[9])*x[38])*CFrame.Angles(math.sin(sine/x[9])*x[39]*P.Z,P.X,(math.sin(sine/x[9])*x[39]*-P.X)-rootpart.RotVelocity.Y/x[40]),x[25])lerp(neck,neck.C0,neckc0*CFrame.new(x[1],x[1],-x[38]+x[38]*math.cos(sine/x[41]))*CFrame.Angles(math.rad(x[41]+x[9]*math.cos(sine/x[41])),math.rad(x[1]-x[42]*math.cos(sine/x[9])/x[43]),math.rad(x[1])),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[28]*math.cos(sine/x[41]),-math.sin(sine/x[9])/x[9])*CFrame.Angles(math.sin(sine/x[9])/x[44],-math.sin(sine/x[9])/x[39],(math.rad(-x[24]-x[45]*math.cos(sine/x[41]))+rootpart.RotVelocity.Y/x[46])),x[23])lerp(rm,rm.C0,rsc0*CFrame.new(x[1],-x[28]*math.cos(sine/x[41]),math.sin(sine/x[9])/x[9])*CFrame.Angles(-math.sin(sine/x[9])/x[44],-math.sin(sine/x[9])/x[39],(math.rad(x[24]+x[45]*math.cos(sine/x[41]))+rootpart.RotVelocity.Y/x[46])),x[23])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[47]*math.cos(sine/x[41]),x[1])*CFrame.Angles(math.rad(x[9]+x[41]*math.cos(sine/x[41])),math.rad(x[1])+rootpart.RotVelocity.Y/x[46],math.rad(x[1]+x[24]*math.cos(sine/x[9])/x[43])+rootpart.RotVelocity.Y/x[46]),x[25])elseif Mode==x[20]then lerp(rlegm,rlegm.C0,rlc0*CFrame.Angles(math.rad(x[35]),math.rad(x[1]),math.rad(-x[1])),x[25])lerp(llegm,llegm.C0,llc0*CFrame.Angles(math.rad(-x[35]),math.rad(x[1]),math.rad(-x[1])),x[25])lerp(neck,neck.C0,neckc0*CFrame.Angles(math.rad(-x[35]),math.rad(x[1]),math.rad(-x[1])),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(x[48]),math.rad(-x[30]),math.rad(-x[35])),x[25])lerp(rm,rm.C0,rsc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(-x[48]),math.rad(-x[30]),math.rad(x[35])),x[25])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(x[1]),math.rad(x[1])),x[25])elseif | |
3214 | Mode==x[49]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[1],x[21],-x[10])*CFrame.Angles(math.rad(x[50]),math.rad(-x[30]),math.rad(x[51])),x[25])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[34],-x[27])*CFrame.Angles(math.rad(x[35]),math.rad(x[24]),math.rad(-x[1])),x[25])lerp(neck,neck.C0,neckc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(math.rad(x[42])+-math.cos(sine/x[35])*x[52],math.rad(-x[53]),math.rad(-x[1])),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[1],x[1])*CFrame.Angles(-math.rad(x[26])+-math.cos(sine/x[35])*x[54],math.rad(-x[35]),math.rad(-x[35])),x[25])lerp(rm,rm.C0,rsc0*CFrame.new(-x[25],-x[10],-x[10])*CFrame.Angles(math.rad(x[46])+-math.cos(sine/x[35])*x[54],math.rad(x[42]),math.rad(-x[29])),x[25])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[3],-x[55])*CFrame.Angles(-math.rad(x[30]),math.rad(x[30]),math.rad(-x[1])),x[10])elseif Mode==x[56]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[10],x[1]+-math.cos(sine/x[26])*x[28],-x[57])*CFrame.Angles(math.rad(x[24]),math.rad(-x[40]),math.rad(x[24])),x[25])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[1]+-math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(-x[26]),math.rad(x[26]),math.rad(-x[24])),x[25])lerp(neck,neck.C0,neckc0*CFrame.new(x[1],x[1]+-math.cos(sine/x[26])*x[58],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(-x[32]),math.rad(x[1])),x[25])lerp(rm,rm.C0,rsc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[59])+math.cos(sine/x[26])*x[60],math.rad(x[1])+math.cos(sine/x[26])*x[60],math.rad(x[32])+math.cos(sine/x[26])*x[60]),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(-x[32])+-math.cos(sine/x[26])*x[60],math.rad(-x[26])+-math.cos(sine/x[26])*x[60],math.rad(-x[26])+-math.cos(sine/x[26])*x[60]),x[25])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(x[1]),math.rad(x[32])),x[25])elseif Mode==x[61]then lerp(rlegm,rlegm.C0,rlc0*CFrame.new(x[10],x[1]+-math.cos(sine/x[26])*x[28],-x[57])*CFrame.Angles(math.rad(x[1]),math.rad(-x[24]),math.rad(x[1])),x[25])lerp(llegm,llegm.C0,llc0*CFrame.new(x[1],x[1]+-math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(x[24]),math.rad(x[1])),x[25])lerp(neck,neck.C0,neckc0*CFrame.new(x[1],x[1]+-math.cos(sine/x[26])*x[58],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(-x[24]),math.rad(x[1])),x[25])lerp(rm,rm.C0,rsc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[62]),math.rad(-x[63]),math.rad(x[1])),x[25])lerp(lm,lm.C0,lsc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[64]),math.rad(-x[65]),math.rad(-x[48])),x[25])lerp(rj,rj.C0,rootc0*CFrame.new(x[1],x[1]+math.cos(sine/x[26])*x[28],x[1])*CFrame.Angles(math.rad(x[1]),math.rad(x[1]),math.rad(x[24])),x[25])end;for V,B in next,DOTTED do spawn(function()if V.Health>x[1]then local G=B[x[66]]local K=B[x[67]]local Q=B[x[68]]local J=B[x[69]]local X=B[x[8]]if Q<x[3]then Q=x[3]end;if tick()-J>=X and K>x[1]and V and V.Parent and V.Health>x[1]then DOTTED[V].LastT=tick()local Z=getDPS()*x[70]Z | |
3215 | =Z*(Q) healHuman(hum,Z*.25,head) damageHuman(V,Z,V.Parent.Head,x[11])DOTTED[V].DPSX=DOTTED[V].DPSX+x[71]DOTTED[V].Tix=DOTTED[V].Tix-x[3]end end end)end;swait()end end)()createOrb() |