SHOW:
|
|
- or go back to the newest paste.
1 | - | me = game.Players.djface203 |
1 | + | me = game.Players.SmokeDelsin |
2 | char = me.Character | |
3 | selected = false | |
4 | selanim = false | |
5 | attacking = false | |
6 | hurt = false | |
7 | normaldmg = 25 | |
8 | jumpdmg = 30 | |
9 | jumpdist = 7 | |
10 | flipdist = 7 | |
11 | linedist = 30 | |
12 | splashdmg = 15 | |
13 | - | linecolors = {"Bright blue", "Light blue", "Medium blue", "Tr. Blue"} |
13 | + | linecolors = {"Bright purple", "Light magenta", "Medium purple", "Dark magenta"} |
14 | dmg = normaldmg | |
15 | function getnoobs(pos,dist) | |
16 | local stoof = {} | |
17 | for _,v in pairs(workspace:children()) do | |
18 | local h,t = v:findFirstChild("Humanoid"), v:findFirstChild("Torso") | |
19 | if h ~= nil and t ~= nil and v:IsA("Model") and v ~= char then | |
20 | if (t.Position - pos).magnitude < dist then | |
21 | table.insert(stoof,v) | |
22 | end | |
23 | end | |
24 | end | |
25 | return stoof | |
26 | end | |
27 | function prop(part, parent, collide, tran, ref, x, y, z, color, anchor, form) | |
28 | part.Parent = parent | |
29 | part.formFactor = form | |
30 | part.CanCollide = collide | |
31 | part.Transparency = tran | |
32 | part.Reflectance = ref | |
33 | part.Size = Vector3.new(x,y,z) | |
34 | part.BrickColor = BrickColor.new(color) | |
35 | part.TopSurface = 0 | |
36 | part.BottomSurface = 0 | |
37 | part.Anchored = anchor | |
38 | part.Locked = true | |
39 | part:BreakJoints() | |
40 | end | |
41 | function weld(w, p, p1, a, b, c, x, y, z) | |
42 | w.Parent = p | |
43 | w.Part0 = p | |
44 | w.Part1 = p1 | |
45 | w.C1 = CFrame.fromEulerAnglesXYZ(a,b,c) * CFrame.new(x,y,z) | |
46 | end | |
47 | rarm = char:findFirstChild("Right Arm") | |
48 | larm = char:findFirstChild("Left Arm") | |
49 | torso = char:findFirstChild("Torso") | |
50 | hum = char:findFirstChild("Humanoid") | |
51 | slash = Instance.new("Sound",torso) | |
52 | slash.Volume = 1 | |
53 | slash.Pitch = 1 | |
54 | slash.SoundId = "rbxasset://sounds\\swordslash.wav" | |
55 | charge = Instance.new("Sound",torso) | |
56 | charge.Volume = 1 | |
57 | charge.Pitch = 0.5 | |
58 | charge.SoundId = "http://www.roblox.com/asset/?id=2101137" | |
59 | brek = Instance.new("Sound",torso) | |
60 | brek.Volume = 1 | |
61 | brek.Pitch = 0.5 | |
62 | brek.SoundId = "http://www.roblox.com/asset/?id=2974249" | |
63 | uns = Instance.new("Sound",torso) | |
64 | uns.Volume = 1 | |
65 | uns.Pitch = 1 | |
66 | uns.SoundId = "rbxasset://sounds\\unsheath.wav" | |
67 | absc = Instance.new("Sound",torso) | |
68 | absc.Volume = 1 | |
69 | absc.Pitch = 0.34 | |
70 | absc.SoundId = "http://www.roblox.com/asset/?id=13775494" | |
71 | jump = Instance.new("Sound",torso) | |
72 | jump.Volume = 1 | |
73 | jump.Pitch = 2.4 | |
74 | jump.SoundId = "http://www.roblox.com/asset/?id=12222124" | |
75 | pwns = Instance.new("Sound",torso) | |
76 | pwns.Volume = 1 | |
77 | pwns.Pitch = 1.6 | |
78 | pwns.SoundId = "http://www.roblox.com/asset/?id=2974000" | |
79 | bg = Instance.new("BodyGyro",nil) | |
80 | bg.maxTorque = Vector3.new(math.huge,math.huge,math.huge) | |
81 | bg.P = 15000 | |
82 | bp = Instance.new("BodyPosition",nil) | |
83 | bp.maxForce = Vector3.new(math.huge,math.huge,math.huge) | |
84 | bp.P = 15000 | |
85 | pcall(function() char.Sword:remove() end) | |
86 | mod = Instance.new("Model",char) | |
87 | mod.Name = "Sword" | |
88 | hold = Instance.new("Part") | |
89 | prop(hold,mod,false,1,0,0.5,0.5,0.5,1,false,"Custom") | |
90 | hw = Instance.new("Weld") | |
91 | weld(hw,rarm,hold,0,0,0,0,1,0) | |
92 | main = Instance.new("Part") | |
93 | prop(main,mod,false,0,0.04,0.44,1.7,0.44,"Dark grey",false,"Custom") | |
94 | Instance.new("CylinderMesh",main) | |
95 | wewe = Instance.new("Weld") | |
96 | weld(wewe,hold,nil,math.pi/2,0,math.pi/2,0,0,0) | |
97 | torsohold = Instance.new("Weld") | |
98 | weld(torsohold,torso,main,0,0,math.rad(36)+math.pi,-1.1,-1.65,-0.8) | |
99 | sp = Instance.new("Part") | |
100 | prop(sp,mod,false,0,0,0.6,0.4,0.6,"Navy blue",false,"Custom") | |
101 | Instance.new("SpecialMesh",sp).MeshType = "Sphere" | |
102 | w1 = Instance.new("Weld") | |
103 | weld(w1,main,sp,0,0,0,0,0.8,0) | |
104 | heh = Instance.new("Part") | |
105 | prop(heh,mod,false,0,0.12,0.9,0.3,0.5,"Navy blue",false,"Custom") | |
106 | w2 = Instance.new("Weld") | |
107 | weld(w2,main,heh,0,0,0,0,-0.9,0) | |
108 | Instance.new("BlockMesh",heh) | |
109 | blade = Instance.new("Part") | |
110 | prop(blade,mod,false,0,0.1,0.65,4,0.15,"Medium grey",false,"Custom") | |
111 | w3 = Instance.new("Weld") | |
112 | weld(w3,heh,blade,0,0,0,0,-blade.Size.Y/2,0) | |
113 | Instance.new("BlockMesh",blade) | |
114 | tip = Instance.new("Part") | |
115 | prop(tip,mod,false,0,0.1,0.46,0.46,0.12,"Medium grey",false,"Custom") | |
116 | w4 = Instance.new("Weld") | |
117 | weld(w4,blade,tip,0,0,math.pi/4,0,-blade.Size.Y/2,0) | |
118 | Instance.new("BlockMesh",tip) | |
119 | lols = {} | |
120 | touchs = {} | |
121 | table.insert(lols,blade) | |
122 | table.insert(lols,tip) | |
123 | table.insert(touchs,blade) | |
124 | table.insert(touchs,tip) | |
125 | for i=blade.Size.Y/2,-blade.Size.Y/2,-0.2 do | |
126 | local pf = Instance.new("Part") | |
127 | prop(pf,mod,false,1,0,0.65,0.1,0.15,1,false,"Custom") | |
128 | local wa = Instance.new("Weld") | |
129 | weld(wa,blade,pf,0,0,0,0,i,0) | |
130 | table.insert(touchs,pf) | |
131 | end | |
132 | rb = Instance.new("Part") | |
133 | prop(rb,mod,false,1,0,0.5,0.5,0.5,1,false,"Custom") | |
134 | rbw = Instance.new("Weld") | |
135 | weld(rbw,torso,rb,0,0,0,-1.5,-0.5,0) | |
136 | lb = Instance.new("Part") | |
137 | prop(lb,mod,false,1,0,0.5,0.5,0.5,1,false,"Custom") | |
138 | lbw = Instance.new("Weld") | |
139 | weld(lbw,torso,lb,0,0,0,1.5,-0.5,0) | |
140 | rw = Instance.new("Weld") | |
141 | weld(rw,rb,nil,0,0,0,0,0.5,0) | |
142 | lw = Instance.new("Weld") | |
143 | weld(lw,lb,nil,0,0,0,0,0.5,0) | |
144 | function showdmg(d) | |
145 | local pa = Instance.new("Part") | |
146 | prop(pa,mod,false,1,0,1,1,1,1,true,"Symmetric") | |
147 | pa.CFrame = CFrame.new(blade.Position) | |
148 | local bill = Instance.new("BillboardGui",pa) | |
149 | bill.Size = UDim2.new(0,50,0,35) | |
150 | bill.Adornee = pa | |
151 | local tx = Instance.new("TextLabel",bill) | |
152 | tx.Size = bill.Size | |
153 | tx.Position = UDim2.new(0,0,0,-30) | |
154 | tx.BackgroundTransparency = 1 | |
155 | tx.Text = d | |
156 | tx.FontSize = "Size24" | |
157 | tx.TextColor3 = Color3.new(0,0,0) | |
158 | local poz = pa.Position | |
159 | for i=0,7,0.4 do | |
160 | wait() | |
161 | pa.CFrame = CFrame.new(poz.X, poz.Y+i, poz.Z) | |
162 | end | |
163 | pa:remove() | |
164 | end | |
165 | deb = true | |
166 | function kill(h) | |
167 | if hurt and deb then | |
168 | local hu, to = h.Parent:findFirstChild("Humanoid"), h.Parent:findFirstChild("Torso") | |
169 | if hu ~= nil and to ~= nil and h.Parent ~= char then | |
170 | if hu.Health > 0 then | |
171 | deb = false | |
172 | local damg = math.random(dmg/4,dmg) | |
173 | local chance = math.random(1,5) | |
174 | if chance > 2 then | |
175 | hu.PlatformStand = true | |
176 | coroutine.resume(coroutine.create(function() | |
177 | wait() | |
178 | to.Velocity = CFrame.new(torso.Position, to.Position).lookVector * damg*2 | |
179 | wait(0.1) | |
180 | hu.PlatformStand = false | |
181 | end)) | |
182 | else | |
183 | damg = 0 | |
184 | end | |
185 | hu.Health = hu.Health - damg | |
186 | coroutine.resume(coroutine.create(function() | |
187 | showdmg(damg) | |
188 | end)) | |
189 | wait(0.25) | |
190 | deb = true | |
191 | end | |
192 | end | |
193 | end | |
194 | end | |
195 | for _,v in pairs(touchs) do | |
196 | v.Touched:connect(kill) | |
197 | end | |
198 | if script.Parent.className ~= "HopperBin" then | |
199 | h = Instance.new("HopperBin",me.Backpack) | |
200 | h.Name = "Sword" | |
201 | script.Parent = h | |
202 | end | |
203 | bin = script.Parent | |
204 | local mw = nil | |
205 | local meow = nil | |
206 | local tsah = nil | |
207 | battleright = nil | |
208 | battleleft = nil | |
209 | battlewep = nil | |
210 | function eff() | |
211 | for _,v in pairs(lols) do | |
212 | local ah = v:clone() | |
213 | ah.Parent = mod | |
214 | ah.Anchored = true | |
215 | ah.CFrame = v.CFrame | |
216 | ah.Transparency = 0.3 | |
217 | ah.Reflectance = 0.3 | |
218 | coroutine.resume(coroutine.create(function() | |
219 | wait(0.15) | |
220 | for i=0.3,1,0.12 do | |
221 | ah.Transparency = i | |
222 | wait() | |
223 | end | |
224 | ah:remove() | |
225 | end)) | |
226 | end | |
227 | end | |
228 | function eff2() | |
229 | local pa = Instance.new("Part") | |
230 | prop(pa,mod,false,0.1,0,1,1,1,"Institutional white",true,"Custom") | |
231 | pa.CFrame = CFrame.new(torso.Position) * CFrame.new(0,-2.9,0) * CFrame.Angles(0,math.random(-320,320)/100,0) | |
232 | local md = Instance.new("SpecialMesh",pa) | |
233 | md.Scale = Vector3.new(5.5,4,5.5) | |
234 | md.MeshId = "http://www.roblox.com/asset/?id=20329976" | |
235 | coroutine.resume(coroutine.create(function() | |
236 | for i=5.5,0,-0.6 do | |
237 | md.Scale = Vector3.new(i,i/1.4,i) | |
238 | pa.Transparency = pa.Transparency + 0.1 | |
239 | wait() | |
240 | end | |
241 | pa:remove() | |
242 | end)) | |
243 | end | |
244 | function selmot() | |
245 | rw.Part1 = rarm | |
246 | for i=0,140,14 do | |
247 | rw.C0 = CFrame.Angles(-math.rad(i/1.1),math.rad(i/2.5),math.rad(-i/6)) | |
248 | wait() | |
249 | end | |
250 | lo = rw.C0 | |
251 | meow = lo | |
252 | torsohold.Part1 = nil | |
253 | wewe.Part1 = main | |
254 | uns:play() | |
255 | for i=0,140,17 do | |
256 | rw.C0 = lo * CFrame.Angles(math.rad(-i),0,0) | |
257 | wewe.C0 = CFrame.Angles(math.rad(-i/2),0,0) | |
258 | wait() | |
259 | end | |
260 | lo = rw.C0 | |
261 | mw = lo | |
262 | local hih = wewe.C0 | |
263 | tsah = hih | |
264 | lw.Part1 = larm | |
265 | wait() | |
266 | for i=0,130,17 do | |
267 | rw.C0 = lo * CFrame.Angles(math.rad(i/4),math.rad(i/4),math.rad(-i/1.8)) * CFrame.new(-i/220,-i/500,0) | |
268 | lw.C0 = CFrame.new(i/130,-i/600,-i/160) * CFrame.Angles(math.rad(i/1.4),0,math.rad(i/2.6)) | |
269 | wewe.C0 = hih * CFrame.Angles(math.rad(i/1.8),0,0) | |
270 | wait() | |
271 | end | |
272 | if battleright == nil then | |
273 | battleright = rw.C0 | |
274 | battleleft = lw.C0 | |
275 | battlewep = wewe.C0 | |
276 | end | |
277 | selected = true | |
278 | end | |
279 | function deselmot() | |
280 | for i=130,0,-17 do | |
281 | rw.C0 = mw * CFrame.Angles(math.rad(i/4),math.rad(i/4),math.rad(-i/1.8)) * CFrame.new(-i/220,-i/500,0) | |
282 | lw.C0 = CFrame.new(i/130,-i/600,-i/160) * CFrame.Angles(math.rad(i/1.4),0,math.rad(i/2.6)) | |
283 | wewe.C0 = tsah * CFrame.Angles(math.rad(i/1.8),0,0) | |
284 | wait() | |
285 | end | |
286 | lw.Part1 = nil | |
287 | for i=140,0,-17 do | |
288 | rw.C0 = meow * CFrame.Angles(math.rad(-i),0,0) | |
289 | wewe.C0 = CFrame.Angles(math.rad(-i/2),0,0) | |
290 | wait() | |
291 | end | |
292 | wewe.Part1 = nil | |
293 | torsohold.Part1 = main | |
294 | for i=140,0,-14 do | |
295 | rw.C0 = CFrame.Angles(-math.rad(i/1.1),math.rad(i/2.5),math.rad(-i/6)) | |
296 | wait() | |
297 | end | |
298 | rw.Part1 = nil | |
299 | rw.C0 = CFrame.new(0,0,0) | |
300 | lw.C0 = CFrame.new(0,0,0) | |
301 | selected = false | |
302 | end | |
303 | function attack() | |
304 | if attacking == false then | |
305 | attacking = true | |
306 | slash.Pitch = 1 | |
307 | slash:play() | |
308 | for i=0,100,18 do | |
309 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.5),0,0) | |
310 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.5),0,0) | |
311 | wait() | |
312 | end | |
313 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
314 | hurt = true | |
315 | for i=0,120,20 do | |
316 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i),0,0) | |
317 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.4),0,0) | |
318 | wewe.C0 = lo3 * CFrame.Angles(math.rad(-i/2.8),0,0) | |
319 | eff() | |
320 | wait() | |
321 | end | |
322 | hurt = false | |
323 | lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
324 | for i=0,70,15 do | |
325 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.2),0,0) | |
326 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.9),0,0) | |
327 | wewe.C0 = lo3 * CFrame.Angles(math.rad(i/2),0,0) | |
328 | wait() | |
329 | end | |
330 | rw.C0 = battleright | |
331 | lw.C0 = battleleft | |
332 | wewe.C0 = battlewep | |
333 | attacking = false | |
334 | end | |
335 | end | |
336 | function stab() | |
337 | if attacking == false then | |
338 | attacking = true | |
339 | for i=0,100,15 do | |
340 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.1),math.rad(-i/7),math.rad(-i/2.6)) | |
341 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.1),0,0) | |
342 | wewe.C0 = battlewep * CFrame.Angles(math.rad(i/2.2),0,0) | |
343 | wait() | |
344 | end | |
345 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
346 | hurt = true | |
347 | slash.Pitch = 1.1 | |
348 | slash:play() | |
349 | for i=0,100,18 do | |
350 | rw.C0 = lo * CFrame.new(-i/150,0,-i/150) * CFrame.Angles(math.rad(i/1.4),0,0) | |
351 | lw.C0 = lo2 * CFrame.new(-i/240,0,i/400) * CFrame.Angles(math.rad(i/1.4),0,0) | |
352 | wewe.C0 = lo3 * CFrame.Angles(math.rad(-i*1.3),0,0) | |
353 | eff() | |
354 | wait() | |
355 | end | |
356 | hurt = false | |
357 | lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
358 | for i=0,90,12 do | |
359 | rw.C0 = lo * CFrame.new(i/150,i/170,i/240) * CFrame.Angles(math.rad(i/5.4),math.rad(i/2.3),0) | |
360 | lw.C0 = lo2 * CFrame.new(i/240,-i/280,0) * CFrame.Angles(math.rad(i/4),0,0) | |
361 | wewe.C0 = lo3 * CFrame.Angles(math.rad(i/1.2),0,0) | |
362 | wait() | |
363 | end | |
364 | rw.C0 = battleright | |
365 | lw.C0 = battleleft | |
366 | wewe.C0 = battlewep | |
367 | attacking = false | |
368 | end | |
369 | end | |
370 | function spin() | |
371 | if attacking == false then | |
372 | attacking = true | |
373 | for i=0,90,10 do | |
374 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
375 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
376 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
377 | wait() | |
378 | end | |
379 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
380 | bp.position = torso.Position | |
381 | bp.Parent = torso | |
382 | bg.Parent = torso | |
383 | local cf = torso.CFrame | |
384 | local ef = Instance.new("Part") | |
385 | prop(ef,mod,false,1,0,1,1,1,"Light blue",true,"Custom") | |
386 | ef.CFrame = cf | |
387 | local mc = Instance.new("SpecialMesh",ef) | |
388 | mc.MeshType = "Sphere" | |
389 | local spin = true | |
390 | charge:play() | |
391 | coroutine.resume(coroutine.create(function() | |
392 | while spin do | |
393 | local d = Instance.new("Part") | |
394 | prop(d,mod,false,1,0,1,1,1,"Medium blue",true,"Custom") | |
395 | local poa = cf * CFrame.new(0,-2.3,0) | |
396 | d.CFrame = poa | |
397 | local r = Instance.new("SpecialMesh",d) | |
398 | r.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
399 | r.Scale = Vector3.new(1,1,1) | |
400 | coroutine.resume(coroutine.create(function() | |
401 | for i=3,20,1 do | |
402 | wait() | |
403 | r.Scale = Vector3.new(i,i,i/3) | |
404 | d.CFrame = poa * CFrame.new(0,i/4,0) * CFrame.Angles(math.pi/2,0,0) | |
405 | d.Transparency = (i/14)-0.5 | |
406 | end | |
407 | d:remove() | |
408 | end)) | |
409 | wait(0.4) | |
410 | end | |
411 | end)) | |
412 | coroutine.resume(coroutine.create(function() | |
413 | for o=1,14,0.25 do | |
414 | wait() | |
415 | mc.Scale = Vector3.new(o/1.18,o,o/1.18) | |
416 | ef.Transparency = ef.Transparency - 0.014 | |
417 | ef.CFrame = cf * CFrame.Angles(0,o,0) | |
418 | end | |
419 | wait(0.15) | |
420 | for o=12,0,-1.2 do | |
421 | wait() | |
422 | mc.Scale = Vector3.new(o/1.1,o,o/1.1) | |
423 | end | |
424 | local e = Instance.new("Part") | |
425 | prop(e,mod,false,0,0.05,1,1,1,"Medium blue",true,"Custom") | |
426 | e.CFrame = cf | |
427 | local ha = Instance.new("SpecialMesh",e) | |
428 | ha.Scale = Vector3.new(1,1,1) | |
429 | ha.MeshId = "http://www.roblox.com/asset/?id=20329976" | |
430 | local nubs = getnoobs(cf.p,10) | |
431 | brek:play() | |
432 | for _,v in pairs(nubs) do | |
433 | v.Humanoid.Health = v.Humanoid.Health - math.random(40,60) | |
434 | v.Humanoid.PlatformStand = true | |
435 | coroutine.resume(coroutine.create(function() | |
436 | wait(0.06) | |
437 | v.Torso.Velocity = CFrame.new(torso.Position, v.Torso.Position).lookVector * 70 | |
438 | v.Torso.RotVelocity = Vector3.new(math.random(-25,25),math.random(-25,25),math.random(-25,25)) | |
439 | wait(0.6) | |
440 | v.Humanoid.PlatformStand = false | |
441 | end)) | |
442 | end | |
443 | for o=1,18,0.95 do | |
444 | ha.Scale = Vector3.new(o,o/1.4,o) | |
445 | e.Transparency = o/15 | |
446 | e.CFrame = cf * CFrame.Angles(0,o/3,0) | |
447 | ef.Transparency = o/17 | |
448 | mc.Scale = Vector3.new(o*1.2,o/1.4,o*1.2) | |
449 | wait() | |
450 | end | |
451 | spin = false | |
452 | ef:remove() | |
453 | e:remove() | |
454 | end)) | |
455 | local i = 0 | |
456 | repeat | |
457 | local hj = cf * CFrame.Angles(0,math.rad(i),0) * CFrame.new(0,0,-30) | |
458 | bg.cframe = CFrame.new(cf.p,hj.p) | |
459 | i = i + 40 | |
460 | wait() | |
461 | until spin == false | |
462 | for i=90,0,-10 do | |
463 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
464 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
465 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
466 | wait() | |
467 | end | |
468 | bg.Parent = nil | |
469 | bp.Parent = nil | |
470 | wait() | |
471 | rw.C0 = battleright | |
472 | lw.C0 = battleleft | |
473 | wewe.C0 = battlewep | |
474 | attacking = false | |
475 | end | |
476 | end | |
477 | function stoof() | |
478 | if attacking == false then | |
479 | attacking = true | |
480 | bg.cframe = CFrame.new(torso.Position, torso.CFrame * CFrame.new(0,0,-20).p) | |
481 | bg.Parent = torso | |
482 | bp.position = torso.Position | |
483 | bp.Parent = torso | |
484 | local norm = torso.CFrame | |
485 | local center = norm * CFrame.new(0,0,-jumpdist) | |
486 | for i=0,60,15 do | |
487 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
488 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
489 | wewe.C0 = battlewep * CFrame.Angles(0,0,0) | |
490 | wait() | |
491 | end | |
492 | slash.Pitch = 1.7 | |
493 | slash:play() | |
494 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
495 | for i=180,0,-16 do | |
496 | bp.position = center * CFrame.Angles(math.rad(i),0,0) * CFrame.new(0,0,-jumpdist).p | |
497 | wait() | |
498 | end | |
499 | hurt = true | |
500 | dmg = jumpdmg | |
501 | slash.Pitch = 1 | |
502 | slash:play() | |
503 | for i=0,150,24 do | |
504 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.1),0,0) | |
505 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.2),0,0) | |
506 | wewe.C0 = lo3 * CFrame.Angles(math.rad(-i/2.5),0,0) | |
507 | eff() | |
508 | wait() | |
509 | end | |
510 | lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
511 | slash.Pitch = 1.8 | |
512 | slash:play() | |
513 | hurt = false | |
514 | dmg = normaldmg | |
515 | bp.position = norm.p | |
516 | for i=0,150,24 do | |
517 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.75),0,0) | |
518 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.9),0,0) | |
519 | wewe.C0 = lo3 * CFrame.Angles(math.rad(i/2.5),0,0) | |
520 | eff() | |
521 | wait() | |
522 | end | |
523 | rw.C0 = battleright | |
524 | lw.C0 = battleleft | |
525 | wewe.C0 = battlewep | |
526 | wait(0.15) | |
527 | bp.Parent = nil | |
528 | bg.Parent = nil | |
529 | wait(0.1) | |
530 | attacking = false | |
531 | end | |
532 | end | |
533 | function flip() | |
534 | if attacking == false then | |
535 | attacking = true | |
536 | local c = CFrame.new(torso.Position, torso.CFrame * CFrame.new(0,0,-20).p) | |
537 | bg.cframe = c | |
538 | bg.Parent = torso | |
539 | bp.position = torso.Position | |
540 | bp.Parent = torso | |
541 | local norm = torso.CFrame | |
542 | local center = norm * CFrame.new(0,0,-flipdist) | |
543 | for i=0,60,15 do | |
544 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
545 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
546 | wewe.C0 = battlewep * CFrame.Angles(0,0,0) | |
547 | wait() | |
548 | end | |
549 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
550 | hum.PlatformStand = true | |
551 | hurt = true | |
552 | jump:play() | |
553 | for i=180,0,-10 do | |
554 | bp.position = center * CFrame.Angles(math.rad(i),0,0) * CFrame.new(0,0,-flipdist).p | |
555 | bg.cframe = c * CFrame.Angles(math.rad(i*2),0,0) | |
556 | eff() | |
557 | wait() | |
558 | end | |
559 | hum.PlatformStand = false | |
560 | for i=0,120,20 do | |
561 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.1),0,0) | |
562 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.5),0,0) | |
563 | wewe.C0 = lo3 * CFrame.Angles(math.rad(-i/1.6),0,0) | |
564 | eff() | |
565 | wait() | |
566 | end | |
567 | lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
568 | local po = torso.CFrame * CFrame.new(0,-5,0) | |
569 | local now = 4 | |
570 | dmg = normaldmg*2 | |
571 | absc:play() | |
572 | coroutine.resume(coroutine.create(function() | |
573 | repeat | |
574 | local pa = Instance.new("Part") | |
575 | prop(pa,mod,false,0.2,0,2,4,2,linecolors[math.random(1,#linecolors)],true,"Custom") | |
576 | pa.CFrame = po * CFrame.new(math.random(-40,40)/10,0,-now) * CFrame.Angles(math.random(-60,60)/100,math.random(-60,60)/100,math.random(-60,60)/100) | |
577 | local m = Instance.new("SpecialMesh",pa) | |
578 | m.MeshType = "Sphere" | |
579 | m.Scale = Vector3.new(3.5,3,3.5) | |
580 | local pk = pa.CFrame | |
581 | local nubs = getnoobs(pa.Position, 5) | |
582 | for _,v in pairs(nubs) do | |
583 | v.Humanoid.PlatformStand = true | |
584 | v.Humanoid.Health = v.Humanoid.Health - math.random(dmg/3,dmg) | |
585 | v.Torso.Velocity = CFrame.new(pa.Position, v.Torso.Position).lookVector * 60 | |
586 | v.Torso.RotVelocity = Vector3.new(math.random(-30,30),math.random(-30,30),math.random(-30,30)) | |
587 | coroutine.resume(coroutine.create(function() | |
588 | wait(0.2) | |
589 | v.Humanoid.PlatformStand = false | |
590 | end)) | |
591 | end | |
592 | coroutine.resume(coroutine.create(function() | |
593 | for i=0,12,1.5 do | |
594 | wait() | |
595 | pa.CFrame = pk * CFrame.new(0,i,0) | |
596 | pa.Transparency = i/10 | |
597 | end | |
598 | pa:remove() | |
599 | end)) | |
600 | now = now + 4 | |
601 | wait(0.1) | |
602 | until now >= linedist | |
603 | end)) | |
604 | dmg = normaldmg | |
605 | hurt = false | |
606 | for i=0,70,15 do | |
607 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.2),0,0) | |
608 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/2.7),0,0) | |
609 | wewe.C0 = lo3 * CFrame.Angles(math.rad(i*1.25),0,0) | |
610 | wait() | |
611 | end | |
612 | wait(0.1) | |
613 | rw.C0 = battleright | |
614 | lw.C0 = battleleft | |
615 | wewe.C0 = battlewep | |
616 | wait(0.2) | |
617 | bp.Parent = nil | |
618 | bg.Parent = nil | |
619 | wait(0.15) | |
620 | attacking = false | |
621 | end | |
622 | end | |
623 | function pwn() | |
624 | if attacking == false then | |
625 | attacking = true | |
626 | local c = CFrame.new(torso.Position, torso.CFrame * CFrame.new(0,0,-20).p) | |
627 | bg.cframe = c | |
628 | bg.Parent = torso | |
629 | bp.position = torso.Position | |
630 | bp.Parent = torso | |
631 | local norm = torso.CFrame | |
632 | dmg = normaldmg/1.3 | |
633 | for i=0,60,20 do | |
634 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
635 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
636 | wewe.C0 = battlewep * CFrame.Angles(0,0,0) | |
637 | wait() | |
638 | end | |
639 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
640 | wait(0.3) | |
641 | pwns:play() | |
642 | local poz = norm * CFrame.new(0,0,-18).p | |
643 | local pa = Instance.new("Part") | |
644 | prop(pa,mod,false,0.1,0.03,0.9,0.9,(norm.p - torso.Position).magnitude,"Black",true,"Custom") | |
645 | pa.CFrame = CFrame.new(norm.p, poz) * CFrame.new(0,0,-(norm.p - poz).magnitude/2) | |
646 | coroutine.resume(coroutine.create(function() | |
647 | coroutine.resume(coroutine.create(function() | |
648 | for i=1,20 do | |
649 | wait() | |
650 | pa.Size = Vector3.new(0.9,0.9,(norm.p - torso.Position).magnitude) | |
651 | pa.CFrame = CFrame.new(norm.p, torso.Position) * CFrame.new(0,0,-(norm.p - torso.Position).magnitude/2) | |
652 | end | |
653 | end)) | |
654 | wait(0.25) | |
655 | for i=0.1,1,0.15 do | |
656 | pa.Transparency = i | |
657 | wait() | |
658 | end | |
659 | pa:remove() | |
660 | end)) | |
661 | hum.PlatformStand = true | |
662 | hurt = true | |
663 | bp.position = poz | |
664 | for i=60,-80,-40 do | |
665 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
666 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/2),0,0) | |
667 | wewe.C0 = battlewep * CFrame.Angles(0,0,0) | |
668 | eff2() | |
669 | wait() | |
670 | end | |
671 | wait(0.1) | |
672 | hurt = false | |
673 | hum.PlatformStand = false | |
674 | for i = -80,0,20 do | |
675 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
676 | lw.C0 = battleleft * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/2),0,0) | |
677 | wewe.C0 = battlewep * CFrame.Angles(0,0,0) | |
678 | wait() | |
679 | end | |
680 | rw.C0 = battleright | |
681 | lw.C0 = battleleft | |
682 | wewe.C0 = battlewep | |
683 | dmg = normaldmg | |
684 | wait(0.2) | |
685 | bp.Parent = nil | |
686 | bg.Parent = nil | |
687 | wait(0.15) | |
688 | attacking = false | |
689 | end | |
690 | end | |
691 | function spinattack() | |
692 | if attacking == false then | |
693 | attacking = true | |
694 | coroutine.resume(coroutine.create(function() | |
695 | bp.position = torso.Position | |
696 | bp.Parent = torso | |
697 | bg.Parent = torso | |
698 | for i=0,90,10 do | |
699 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
700 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
701 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
702 | wait() | |
703 | end | |
704 | end)) | |
705 | local cf = torso.CFrame | |
706 | local spin = true | |
707 | charge:play() | |
708 | coroutine.resume(coroutine.create(function() | |
709 | while spin do | |
710 | local d = Instance.new("Part") | |
711 | prop(d,mod,false,1,0,1,1,1,"Medium blue",true,"Custom") | |
712 | local poa = cf | |
713 | d.CFrame = poa | |
714 | local r = Instance.new("SpecialMesh",d) | |
715 | r.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
716 | r.Scale = Vector3.new(1,1,1) | |
717 | coroutine.resume(coroutine.create(function() | |
718 | for i=3,20,1 do | |
719 | wait() | |
720 | r.Scale = Vector3.new(i,i,i/3) | |
721 | d.CFrame = poa * CFrame.new(0,i/10,0) * CFrame.Angles(math.pi/2,0,0) | |
722 | d.Transparency = (i/14)-0.5 | |
723 | end | |
724 | d:remove() | |
725 | end)) | |
726 | wait(0.4) | |
727 | end | |
728 | end)) | |
729 | hurt = true | |
730 | for i=0,360*5, 40 do | |
731 | local hj = cf * CFrame.Angles(0,math.rad(i),0) * CFrame.new(0,0,-30) | |
732 | bg.cframe = CFrame.new(cf.p,hj.p) | |
733 | wait() | |
734 | end | |
735 | hurt = false | |
736 | spin = false | |
737 | for i=90,0,-10 do | |
738 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
739 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
740 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
741 | wait() | |
742 | end | |
743 | bg.Parent = nil | |
744 | bp.Parent = nil | |
745 | wait() | |
746 | rw.C0 = battleright | |
747 | lw.C0 = battleleft | |
748 | wewe.C0 = battlewep | |
749 | attacking = false | |
750 | end | |
751 | end | |
752 | function side() | |
753 | if attacking == false then | |
754 | attacking = true | |
755 | for i=0,90,9 do | |
756 | rw.C0 = battleright * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),math.rad(-i),math.rad(i)) | |
757 | lw.C0 = battleleft * CFrame.new(i/270,i/230,0) * CFrame.Angles(0,0,math.rad(i/2.1)) | |
758 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i/3),0,0) | |
759 | wait() | |
760 | end | |
761 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
762 | hurt = true | |
763 | slash.Pitch = 1.2 | |
764 | slash:play() | |
765 | for i=0,90,10 do | |
766 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(-i/1.5),0,0) | |
767 | lw.C0 = lo2 * CFrame.new(0,i/230,0) * CFrame.Angles(0,0,math.rad(-i*1.2)) | |
768 | wewe.C0 = lo3 * CFrame.Angles(math.rad(-i/1.8),0,0) | |
769 | eff() | |
770 | wait() | |
771 | end | |
772 | lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
773 | hurt = false | |
774 | for i=0,90,10 do | |
775 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i/1.5),math.rad(i/1),0) | |
776 | lw.C0 = lo2 * CFrame.new(math.rad(i/2),math.rad(-i/6.5),0) * CFrame.Angles(0,0,math.rad(i/1.3)) | |
777 | wewe.C0 = lo3 * CFrame.Angles(math.rad(i/1.1),0,0) | |
778 | wait() | |
779 | end | |
780 | rw.C0 = battleright | |
781 | lw.C0 = battleleft | |
782 | wewe.C0 = battlewep | |
783 | attacking = false | |
784 | end | |
785 | end | |
786 | function pow() | |
787 | if attacking == false then | |
788 | attacking = true | |
789 | for i=0,90,15 do | |
790 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
791 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
792 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
793 | wait() | |
794 | end | |
795 | local lo, lo2, lo3 = rw.C0, lw.C0, wewe.C0 | |
796 | local poz = CFrame.new(torso.Position) | |
797 | bp.position = poz.p | |
798 | bp.Parent = torso | |
799 | bg.cframe = CFrame.new(torso.Position, torso.CFrame * CFrame.new(0,0,-10).p) | |
800 | bg.Parent = torso | |
801 | coroutine.resume(coroutine.create(function() | |
802 | local ma = Instance.new("Part") | |
803 | prop(ma,mod,false,0,0,1,1,1,"White",true,"Custom") | |
804 | ma.CFrame = poz * CFrame.new(0,45,0) | |
805 | local mam = Instance.new("CylinderMesh",ma) | |
806 | mam.Scale = Vector3.new(3,1,3) | |
807 | for i=1,50,5 do | |
808 | mam.Scale = Vector3.new(i/9,i*1.3,i/9) | |
809 | ma.CFrame = poz * CFrame.new(0,-mam.Scale.Y/2+45,0) | |
810 | wait() | |
811 | end | |
812 | brek:play() | |
813 | local p = Instance.new("Part") | |
814 | prop(p,mod,false,0,0,1,1,1,"White",true,"Custom") | |
815 | p.CFrame = poz | |
816 | local a = Instance.new("SpecialMesh",p) | |
817 | a.MeshId = "http://www.roblox.com/asset/?id=20329976" | |
818 | a.Scale = Vector3.new(2,2,2) | |
819 | local p2 = p:clone() | |
820 | p2.Parent = mod | |
821 | local nubs = getnoobs(poz.p,7) | |
822 | for _,v in pairs(nubs) do | |
823 | v.Humanoid.PlatformStand = true | |
824 | v.Humanoid.Health = v.Humanoid.Health - math.random(splashdmg/2, splashdmg) | |
825 | v.Torso.Velocity = CFrame.new(poz.p,v.Torso.Position).lookVector * 25 | |
826 | v.Torso.RotVelocity = Vector3.new(math.random(-20,20),math.random(-20,20),math.random(-20,20)) | |
827 | coroutine.resume(coroutine.create(function() wait(0.6) v.Humanoid.PlatformStand = false end)) | |
828 | end | |
829 | for i=2,12,0.8 do | |
830 | wait() | |
831 | p.CFrame = poz * CFrame.Angles(0,math.rad(i*10),0) | |
832 | a.Scale = Vector3.new(i,i/1.25,i) | |
833 | p.Transparency = (i/10)-0.2 | |
834 | p2.Transparency = p.Transparency | |
835 | p2.Mesh.Scale = Vector3.new(i/1.6,i/2.2,i/1.6) | |
836 | p2.CFrame = poz * CFrame.Angles(0,math.rad(-i*10),0) | |
837 | ma.Transparency = (i/10)-0.2 | |
838 | end | |
839 | p:remove() | |
840 | p2:remove() | |
841 | ma:remove() | |
842 | end)) | |
843 | for i=0,60,20 do | |
844 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
845 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
846 | wait() | |
847 | end | |
848 | wait(0.8) | |
849 | bg.Parent = nil | |
850 | bp.Parent = nil | |
851 | for i=60,0,-20 do | |
852 | rw.C0 = lo * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
853 | lw.C0 = lo2 * CFrame.new(0,0,0) * CFrame.Angles(math.rad(i),0,0) | |
854 | wait() | |
855 | end | |
856 | for i=90,0,-15 do | |
857 | rw.C0 = battleright * CFrame.new(i/140,0,0) * CFrame.Angles(math.rad(-i/4),0,math.rad(i)) | |
858 | lw.C0 = battleleft * CFrame.new(0,i/90,0) * CFrame.Angles(0,0,math.rad(-i*1.5)) | |
859 | wewe.C0 = battlewep * CFrame.Angles(math.rad(-i),0,math.rad(-i)) | |
860 | wait() | |
861 | end | |
862 | rw.C0 = battleright | |
863 | lw.C0 = battleleft | |
864 | wewe.C0 = battlewep | |
865 | wait(0.4) | |
866 | attacking = false | |
867 | end | |
868 | end | |
869 | function keys(k) | |
870 | if hum.Health > 0 and bin.Parent ~= nil and selected then | |
871 | local key = k:lower() | |
872 | if key == "q" then | |
873 | stab() | |
874 | elseif key == "r" then | |
875 | spin() | |
876 | elseif key == "e" then | |
877 | stoof() | |
878 | elseif key == "f" then | |
879 | flip() | |
880 | elseif key == "t" then | |
881 | pwn() | |
882 | elseif key == "z" then | |
883 | spinattack() | |
884 | elseif key == "x" then | |
885 | pow() | |
886 | elseif key == "g" then | |
887 | side() | |
888 | end | |
889 | end | |
890 | end | |
891 | function select(mouse) | |
892 | if bin.Parent ~= nil then | |
893 | repeat wait() until selected == false and attacking == false | |
894 | selmot() | |
895 | mouse.Button1Down:connect(function() | |
896 | if hum.Health > 0 and bin.Parent ~= nil then | |
897 | attack() | |
898 | end | |
899 | end) | |
900 | mouse.KeyDown:connect(function(key) keys(key) end) | |
901 | end | |
902 | end | |
903 | function desel() | |
904 | repeat wait() until selected == true and attacking == false | |
905 | deselmot() | |
906 | end | |
907 | bin.Selected:connect(select) | |
908 | bin.Deselected:connect(desel) |