SHOW:
|
|
- or go back to the newest paste.
1 | - | Player = game:GetService("Players").Jhebi |
1 | + | Player = game:GetService("Players").jassm11 |
2 | Character = Player.Character | |
3 | PlayerGui = Player.PlayerGui | |
4 | Backpack = Player.Backpack | |
5 | Torso = Character.Torso | |
6 | Head = Character.Head | |
7 | LeftArm = Character["Left Arm"] | |
8 | LeftLeg = Character["Left Leg"] | |
9 | RightArm = Character["Right Arm"] | |
10 | RightLeg = Character["Right Leg"] | |
11 | LS = Torso["Left Shoulder"] | |
12 | LH = Torso["Left Hip"] | |
13 | RS = Torso["Right Shoulder"] | |
14 | RH = Torso["Right Hip"] | |
15 | ModelName = "Weapon" | |
16 | attack = false | |
17 | attacktype = 1 | |
18 | Hitdeb = 0 | |
19 | Neck = Torso.Neck | |
20 | local neckcf0 = Neck.C0 | |
21 | ---------------------------- | |
22 | --Customize | |
23 | Ammo = 10000 | |
24 | --if (string.match(Player.Unlocks.Value,"RasAlgethi Ammo+") ~= nil) then | |
25 | MaxAmmo = 10000000 | |
26 | --else | |
27 | --MaxAmmo = 10000000 | |
28 | --end | |
29 | mindamage = 12 | |
30 | maxdamage = 30 | |
31 | crtmaxdamage = 39 | |
32 | omindamage = mindamage | |
33 | omaxdamage = maxdamage | |
34 | ocrtmaxdamage = crtmaxdamage | |
35 | crtrate = 100/5 | |
36 | --100%/critpercentage | |
37 | oblkbrkr = 0 | |
38 | blockbreaker = oblkbrkr | |
39 | spread = 2 | |
40 | spread = spread*100 | |
41 | Ammoregen = 20 | |
42 | --if (string.match(Player.Unlocks.Value,"RasAlgethi Range+") ~= nil) then | |
43 | range = 700 | |
44 | --else | |
45 | --range = 15000 | |
46 | --end | |
47 | rangepower = 50 | |
48 | CurrentAmmo = "Normal" | |
49 | handlecolor = BrickColor.new("Dark gray") | |
50 | bcolor = BrickColor.new("Pastel yellow") | |
51 | gemcolor = BrickColor.new("Black") | |
52 | ammotrail = BrickColor.new("Pastel brown") | |
53 | ToolName = "Ras Algethi" | |
54 | --------------------------------------------------------------------------------------------------------------------------------------- | |
55 | if Character:findFirstChild("EquippedVal",true) ~= nil then | |
56 | Character:findFirstChild("EquippedVal",true).Parent = nil | |
57 | end | |
58 | ev = Instance.new("BoolValue",Character) | |
59 | ev.Name = "EquippedVal" | |
60 | ev.Value = false | |
61 | if Character:findFirstChild("Block",true) ~= nil then | |
62 | Character:findFirstChild("Block",true).Parent = nil | |
63 | end | |
64 | --player | |
65 | player = nil | |
66 | --welds | |
67 | RW, LW , RWL, LWL = Instance.new("Weld"), Instance.new("Weld"), Instance.new("Weld"), Instance.new("Weld") | |
68 | --what anim | |
69 | anim = "none" | |
70 | --other var | |
71 | player = Player | |
72 | ch = Character | |
73 | --save shoulders | |
74 | AoETrue = {} | |
75 | RSH, LSH , RHL, LHL = ch.Torso["Right Shoulder"], ch.Torso["Left Shoulder"] , ch.Torso["Right Hip"] , ch.Torso["Left Hip"] | |
76 | function RWFunc() | |
77 | RW.Part1 = ch["Right Arm"] | |
78 | RSH.Part1 = nil | |
79 | end | |
80 | function LWFunc() | |
81 | LW.Part1 = ch["Left Arm"] | |
82 | LSH.Part1 = nil | |
83 | end | |
84 | function RWLFunc() | |
85 | RWL.Part1 = ch["Right Leg"] | |
86 | RHL.Part1 = nil | |
87 | ch["Right Leg"].Name = "RightLeg" | |
88 | RightLeg.CanCollide = false | |
89 | end | |
90 | function LWLFunc() | |
91 | LWL.Part1 = ch["Left Leg"] | |
92 | LHL.Part1 = nil | |
93 | ch["Left Leg"].Name = "LeftLeg" | |
94 | LeftLeg.CanCollide = true | |
95 | end | |
96 | function RWLRem() | |
97 | RightLeg.Name = "Right Leg" | |
98 | RWL.Part1 = nil | |
99 | RHL.Part1 = ch["Right Leg"] | |
100 | RightLeg.CanCollide = false | |
101 | end | |
102 | function LWLRem() | |
103 | LeftLeg.Name = "Left Leg" | |
104 | LWL.Part1 = nil | |
105 | LHL.Part1 = ch["Left Leg"] | |
106 | LeftLeg.CanCollide = false | |
107 | end | |
108 | function RWRem() | |
109 | RW.Part1 = nil | |
110 | RSH.Part1 = ch["Right Arm"] | |
111 | end | |
112 | function LWRem() | |
113 | LW.Part1 = nil | |
114 | LSH.Part1 = ch["Left Arm"] | |
115 | end | |
116 | if Character:findFirstChild(ModelName,true) ~= nil then | |
117 | Character:findFirstChild(ModelName,true).Parent = nil | |
118 | RHL.Part1 = ch["Right Leg"] | |
119 | LHL.Part1 = ch["Left Leg"] | |
120 | RSH.Part1 = ch["Right Arm"] | |
121 | LSH.Part1 = ch["Left Arm"] | |
122 | end | |
123 | local swordholder = Instance.new("Model") | |
124 | swordholder.Name = ModelName | |
125 | swordholder.Parent = Character | |
126 | --derp | |
127 | RW.Part0 = ch.Torso | |
128 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0) | |
129 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.fromEulerAnglesXYZ(0, 0, 0) | |
130 | RW.Parent = swordholder | |
131 | -- | |
132 | LW.Part0 = ch.Torso | |
133 | LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8) | |
134 | LW.C1 = CFrame.new(0, 0.5, 0) | |
135 | LW.Parent = swordholder | |
136 | -- | |
137 | RWL.Part0 = ch.Torso | |
138 | RWL.C0 = CFrame.new(1, -1, 0) * CFrame.Angles(0, 0, 0) | |
139 | RWL.C1 = CFrame.new(0.5, 1, 0) | |
140 | RWL.Parent = swordholder | |
141 | -- | |
142 | LWL.Part0 = ch.Torso | |
143 | LWL.C0 = CFrame.new(-1, -1, 0) * CFrame.Angles(0, 0, 0) | |
144 | LWL.C1 = CFrame.new(-0.5, 1, 0) | |
145 | LWL.Parent = swordholder | |
146 | local msh1 = Instance.new("CylinderMesh") | |
147 | msh1.Scale = Vector3.new(1,1,1) | |
148 | local msh2 = Instance.new("BlockMesh") | |
149 | msh2.Scale = Vector3.new(1,1,1) | |
150 | local msh3 = Instance.new("CylinderMesh") | |
151 | msh3.Scale = Vector3.new(1,1,1) | |
152 | local msh4 = Instance.new("CylinderMesh") | |
153 | msh4.Scale = Vector3.new(1,1,1) | |
154 | local msh5 = Instance.new("CylinderMesh") | |
155 | msh5.Scale = Vector3.new(1,1,1) | |
156 | local msh6 = Instance.new("BlockMesh") | |
157 | msh6.Scale = Vector3.new(1,1,1) | |
158 | local torsc = false | |
159 | for i,z in pairs(Character:GetChildren()) do | |
160 | if z.className == "CharacterMesh" then | |
161 | if z.BodyPart == Enum.BodyPart.Torso then | |
162 | torsc = true | |
163 | end | |
164 | end | |
165 | end | |
166 | if torsc then | |
167 | msh7 = Instance.new("SpecialMesh") | |
168 | msh7.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
169 | msh7.Scale = Vector3.new(2.01,1,1.01) | |
170 | msh7.Scale = Vector3.new(2.01,1,1.01) | |
171 | else | |
172 | msh7 = Instance.new("BlockMesh") | |
173 | msh7.Scale = Vector3.new(2.01,0.1,1.01) | |
174 | end | |
175 | local msh8 = Instance.new("SpecialMesh") | |
176 | msh8.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
177 | msh8.Scale = Vector3.new(0.5,0.5,7) | |
178 | msh8.Scale = Vector3.new(0.5,0.5,7) | |
179 | local msh9 = Instance.new("BlockMesh") | |
180 | msh9.Scale = Vector3.new(1,1,1) | |
181 | local prt1 = Instance.new("Part") | |
182 | prt1.formFactor = 3 | |
183 | prt1.CanCollide = false | |
184 | prt1.Name = "Handle" | |
185 | prt1.Locked = true | |
186 | prt1.Size = Vector3.new(0.3,1,0.3) | |
187 | prt1.Parent = swordholder | |
188 | msh1.Parent = prt1 | |
189 | prt1.BrickColor = handlecolor | |
190 | local prt2 = Instance.new("Part") | |
191 | prt2.formFactor = 3 | |
192 | prt2.CanCollide = false | |
193 | prt2.Name = "Handle2" | |
194 | prt2.Locked = true | |
195 | prt2.Size = Vector3.new(0.5,0.2,1.5) | |
196 | prt2.Parent = swordholder | |
197 | msh2.Parent = prt2 | |
198 | prt2.BrickColor = handlecolor | |
199 | local prt3 = Instance.new("Part") | |
200 | prt3.formFactor = 3 | |
201 | prt3.CanCollide = false | |
202 | prt3.Name = "Handle3" | |
203 | prt3.Locked = true | |
204 | prt3.Size = Vector3.new(0.7,1.2,0.7) | |
205 | prt3.Parent = swordholder | |
206 | msh3.Parent = prt3 | |
207 | prt3.BrickColor = bcolor | |
208 | local prt4 = Instance.new("Part") | |
209 | prt4.formFactor = 3 | |
210 | prt4.CanCollide = false | |
211 | prt4.Name = "BackBarrel" | |
212 | prt4.Locked = true | |
213 | prt4.Size = Vector3.new(0.5,1.2,0.5) | |
214 | prt4.Parent = swordholder | |
215 | msh4.Parent = prt4 | |
216 | prt4.BrickColor = handlecolor | |
217 | local prt5 = Instance.new("Part") | |
218 | prt5.formFactor = 3 | |
219 | prt5.CanCollide = false | |
220 | prt5.Name = "Barrel" | |
221 | prt5.Locked = true | |
222 | prt5.Size = Vector3.new(0.4,2.5,0.4) | |
223 | prt5.Parent = swordholder | |
224 | msh5.Parent = prt5 | |
225 | prt5.BrickColor = handlecolor | |
226 | local prt6 = Instance.new("Part") | |
227 | prt6.formFactor = 3 | |
228 | prt6.CanCollide = false | |
229 | prt6.Name = "BarrelHandle" | |
230 | prt6.Locked = true | |
231 | prt6.Size = Vector3.new(0.3,1,0.3) | |
232 | prt6.Parent = swordholder | |
233 | msh6.Parent = prt6 | |
234 | prt6.BrickColor = handlecolor | |
235 | local prt7 = Instance.new("Part") | |
236 | prt7.formFactor = 3 | |
237 | prt7.CanCollide = false | |
238 | prt7.Name = "HolsterStrap" | |
239 | prt7.Locked = true | |
240 | prt7.Size = Vector3.new(1,1,1) | |
241 | prt7.Parent = swordholder | |
242 | msh7.Parent = prt7 | |
243 | prt7.BrickColor = handlecolor | |
244 | local prt8 = Instance.new("Part") | |
245 | prt8.formFactor = 3 | |
246 | prt8.CanCollide = false | |
247 | prt8.Name = "Holster" | |
248 | prt8.Locked = true | |
249 | prt8.Size = Vector3.new(1,1,1) | |
250 | prt8.Parent = swordholder | |
251 | msh8.Parent = prt8 | |
252 | prt8.BrickColor = handlecolor | |
253 | local prt9 = Instance.new("Part") | |
254 | prt9.formFactor = 3 | |
255 | prt9.CanCollide = false | |
256 | prt9.Name = "AmmoHolster" | |
257 | prt9.Locked = true | |
258 | prt9.Size = Vector3.new(0.2,1,0.7) | |
259 | prt9.Parent = swordholder | |
260 | msh9.Parent = prt9 | |
261 | prt9.BrickColor = handlecolor | |
262 | local w1 = Instance.new("Weld") | |
263 | w1.Parent = prt1 | |
264 | w1.Part0 = prt1 | |
265 | local w2 = Instance.new("Weld") | |
266 | w2.Parent = prt2 | |
267 | w2.Part0 = prt2 | |
268 | w2.Part1 = prt1 | |
269 | w2.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
270 | w2.C0 = CFrame.Angles(math.rad(0), 0, 0) * CFrame.new(0, 0.6,0.5) | |
271 | local w3 = Instance.new("Weld") | |
272 | w3.Parent = prt3 | |
273 | w3.Part0 = prt3 | |
274 | w3.Part1 = prt2 | |
275 | w3.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
276 | w3.C0 = CFrame.Angles(math.rad(90+45), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
277 | local w4 = Instance.new("Weld") | |
278 | w4.Parent = prt4 | |
279 | w4.Part0 = prt4 | |
280 | w4.Part1 = prt2 | |
281 | w4.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
282 | w4.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,0.5) | |
283 | local w5 = Instance.new("Weld") | |
284 | w5.Parent = prt5 | |
285 | w5.Part0 = prt5 | |
286 | w5.Part1 = prt3 | |
287 | w5.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
288 | w5.C0 = CFrame.Angles(math.rad(0), 0, 0) * CFrame.new(0, 1.5,0) | |
289 | local w6 = Instance.new("Weld") | |
290 | w6.Parent = prt6 | |
291 | w6.Part0 = prt6 | |
292 | w6.Part1 = prt3 | |
293 | w6.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
294 | w6.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 1.5,-0.5) | |
295 | local w7 = Instance.new("Weld") | |
296 | w7.Parent = prt7 | |
297 | w7.Part0 = prt7 | |
298 | w7.Part1 = Torso | |
299 | w7.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
300 | if torsc then | |
301 | w7.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 1,0) | |
302 | else | |
303 | w7.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(0, 1,0) | |
304 | end | |
305 | local w8 = Instance.new("Weld") | |
306 | w8.Parent = prt8 | |
307 | w8.Part0 = prt8 | |
308 | w8.Part1 = Torso | |
309 | w8.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
310 | w8.C0 = CFrame.Angles(math.rad(45), 0, 0) * CFrame.new(-1.1, 1-0.25,0) | |
311 | local w9 = Instance.new("Weld") | |
312 | w9.Parent = prt9 | |
313 | w9.Part0 = prt9 | |
314 | w9.Part1 = Torso | |
315 | w9.C1 = CFrame.new(0, 0,0) * CFrame.Angles(0, 0, 0) | |
316 | w9.C0 = CFrame.Angles(math.rad(45), 0, 0) * CFrame.new(1, 0.75,-0.5) | |
317 | local RAP = Instance.new("Part") | |
318 | RAP.formFactor = 0 | |
319 | RAP.CanCollide = false | |
320 | RAP.Name = "RAPart" | |
321 | RAP.Locked = true | |
322 | RAP.Size = Vector3.new(1,1,1) | |
323 | RAP.Parent = swordholder | |
324 | RAP.Transparency = 1 | |
325 | local w = Instance.new("Weld") | |
326 | w.Parent = RAP | |
327 | w.Part0 = RAP | |
328 | w.Part1 = RightArm | |
329 | w.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0) | |
330 | w.C0 = CFrame.fromEulerAnglesXYZ(math.rad(0), 0, 0) * CFrame.new(0, 1, 0) | |
331 | function unequipweld() | |
332 | w1.Part1 = Torso | |
333 | w1.C1 = CFrame.fromEulerAnglesXYZ(0, math.rad(0), math.rad(0)) * CFrame.new(0, 0,0) | |
334 | w1.C0 = CFrame.fromEulerAnglesXYZ(math.rad(180),math.rad(-0), math.rad(0)) * CFrame.new(-1.15, 1, -0.6) | |
335 | end | |
336 | unequipweld() | |
337 | function equipweld() | |
338 | w1.Part0 = prt1 | |
339 | w1.Part1 = RAP | |
340 | w1.C1 = CFrame.fromEulerAnglesXYZ(0, 0, 0) * CFrame.new(0, 0,0) | |
341 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
342 | end | |
343 | function ss(parent,p) --Slash | |
344 | local SlashSound = Instance.new("Sound") | |
345 | SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav" | |
346 | SlashSound.Parent = parent | |
347 | SlashSound.Volume = .7 | |
348 | SlashSound.Pitch = p | |
349 | SlashSound.PlayOnRemove = true | |
350 | coroutine.resume(coroutine.create(function() | |
351 | wait() | |
352 | SlashSound.Parent = nil | |
353 | end)) | |
354 | end | |
355 | function uss(parent,p) --unsheath | |
356 | local SlashSound = Instance.new("Sound") | |
357 | SlashSound.SoundId = "rbxasset://sounds\\unsheath.wav" | |
358 | SlashSound.Parent = parent | |
359 | SlashSound.Volume = .7 | |
360 | SlashSound.Pitch = p | |
361 | SlashSound.PlayOnRemove = true | |
362 | coroutine.resume(coroutine.create(function() | |
363 | wait() | |
364 | SlashSound.Parent = nil | |
365 | end)) | |
366 | end | |
367 | function cs(parent,p) --Magic Charge | |
368 | local SlashSound = Instance.new("Sound") | |
369 | SlashSound.SoundId = "http://www.roblox.com/asset/?id=2101137" | |
370 | SlashSound.Parent = parent | |
371 | SlashSound.Parent = parent | |
372 | SlashSound.Volume = .7 | |
373 | SlashSound.Pitch = p | |
374 | SlashSound.PlayOnRemove = true | |
375 | coroutine.resume(coroutine.create(function() | |
376 | wait() | |
377 | SlashSound.Parent = nil | |
378 | end)) | |
379 | end | |
380 | function ls(parent,p) --Lazer Sound | |
381 | local SlashSound = Instance.new("Sound") | |
382 | SlashSound.SoundId = "http://www.roblox.com/asset?id=1369158" | |
383 | SlashSound.Parent = parent | |
384 | SlashSound.Parent = parent | |
385 | SlashSound.Volume = .7 | |
386 | SlashSound.Pitch = p | |
387 | SlashSound.PlayOnRemove = true | |
388 | coroutine.resume(coroutine.create(function() | |
389 | wait() | |
390 | SlashSound.Parent = nil | |
391 | end)) | |
392 | end | |
393 | function ts(parent,p) | |
394 | local SlashSound = Instance.new("Sound") | |
395 | SlashSound.SoundId = "http://www.roblox.com/asset/?id=12222030" | |
396 | SlashSound.Parent = parent | |
397 | SlashSound.Parent = parent | |
398 | SlashSound.Volume = .7 | |
399 | SlashSound.Pitch = p | |
400 | SlashSound.PlayOnRemove = true | |
401 | coroutine.resume(coroutine.create(function() | |
402 | wait() | |
403 | SlashSound.Parent = nil | |
404 | end)) | |
405 | end | |
406 | function fs(parent,p) --Fire Sound | |
407 | local SlashSound = Instance.new("Sound") | |
408 | SlashSound.SoundId = "http://www.roblox.com/asset/?id=31758982" | |
409 | SlashSound.Parent = parent | |
410 | SlashSound.Parent = parent | |
411 | SlashSound.Volume = .7 | |
412 | SlashSound.Pitch = p | |
413 | SlashSound.PlayOnRemove = true | |
414 | coroutine.resume(coroutine.create(function() | |
415 | wait() | |
416 | SlashSound.Parent = nil | |
417 | end)) | |
418 | end | |
419 | function ms(parent,p) --Metal Cling Sound | |
420 | local SlashSound = Instance.new("Sound") | |
421 | SlashSound.SoundId = "rbxasset://sounds\\metal.ogg" | |
422 | SlashSound.Parent = parent | |
423 | SlashSound.Volume = 5 | |
424 | SlashSound.Pitch = p | |
425 | SlashSound.PlayOnRemove = true | |
426 | coroutine.resume(coroutine.create(function() | |
427 | wait() | |
428 | SlashSound.Parent = nil | |
429 | end)) | |
430 | end | |
431 | function bs(parent,p) --Berserk Sound | |
432 | local SlashSound = Instance.new("Sound") | |
433 | SlashSound.SoundId = "http://www.roblox.com/asset/?id=2676305" | |
434 | SlashSound.Parent = parent | |
435 | SlashSound.Parent = parent | |
436 | SlashSound.Volume = 1 | |
437 | SlashSound.Pitch = p | |
438 | SlashSound.PlayOnRemove = true | |
439 | coroutine.resume(coroutine.create(function() | |
440 | wait() | |
441 | SlashSound.Parent = nil | |
442 | end)) | |
443 | end | |
444 | function hs(parent,p) --Ammo Hit Sound | |
445 | ms(parent,p) | |
446 | end | |
447 | function as(parent,p) --Gun Shoot Sound | |
448 | local SlashSound = Instance.new("Sound") | |
449 | SlashSound.SoundId = "http://roblox.com/asset/?id=10209257" | |
450 | SlashSound.Parent = parent | |
451 | SlashSound.Volume = 0.5 | |
452 | SlashSound.Pitch = p | |
453 | SlashSound.PlayOnRemove = true | |
454 | coroutine.resume(coroutine.create(function() | |
455 | wait() | |
456 | SlashSound.Parent = nil | |
457 | end)) | |
458 | end | |
459 | function ars(parent,p) --Gun Reload Sound | |
460 | local SlashSound = Instance.new("Sound") | |
461 | SlashSound.SoundId = "http://roblox.com/asset/?id=10209869" | |
462 | SlashSound.Parent = parent | |
463 | SlashSound.Parent = parent | |
464 | SlashSound.Volume = 1 | |
465 | SlashSound.Pitch = p | |
466 | SlashSound.PlayOnRemove = true | |
467 | coroutine.resume(coroutine.create(function() | |
468 | wait() | |
469 | SlashSound.Parent = nil | |
470 | end)) | |
471 | end | |
472 | -- | |
473 | -- | |
474 | function returndmg() | |
475 | mindamage = omindamage | |
476 | maxdamage = omaxdamage | |
477 | crtmaxdamage = ocrtmaxdamage | |
478 | end | |
479 | function subdmg(sub) | |
480 | mindamage = omindamage - sub | |
481 | maxdamage = omaxdamage - sub | |
482 | crtmaxdamage = ocrtmaxdamage - sub | |
483 | end | |
484 | function prcntdmg(sub) | |
485 | mindamage = math.floor(omindamage - (omindamage*(sub/100))) | |
486 | maxdamage = math.floor(omaxdamage - (omaxdamage*(sub/100))) | |
487 | crtmaxdamage = math.floor(ocrtmaxdamage - (ocrtmaxdamage*(sub/100))) | |
488 | end | |
489 | function tagHumanoid(humanoid, player) | |
490 | local creator_tag = Instance.new("ObjectValue") | |
491 | creator_tag.Value = player | |
492 | creator_tag.Name = "creator" | |
493 | creator_tag.Parent = humanoid | |
494 | end | |
495 | function untagHumanoid(humanoid) | |
496 | if humanoid ~= nil then | |
497 | local tag = humanoid:findFirstChild("creator") | |
498 | if tag ~= nil then | |
499 | tag.Parent = nil | |
500 | end | |
501 | end | |
502 | end | |
503 | local function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants | |
504 | return game.Workspace:FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) | |
505 | end | |
506 | function hideanim() | |
507 | attack = true | |
508 | ars(Head,0.85) | |
509 | for i = 0.25 ,1 ,0.25 do | |
510 | wait() | |
511 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
512 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-15*i), 0, 0) | |
513 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(25+10*i)) | |
514 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
515 | w3.C0 = CFrame.Angles(math.rad(90+25*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
516 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5*i),0,math.rad(0)) | |
517 | end | |
518 | for i = 0.1 ,1 ,0.1 do | |
519 | wait() | |
520 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
521 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(10-10*i), 0, 0) | |
522 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(35+10*i)) | |
523 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
524 | w3.C0 = CFrame.Angles(math.rad(115+20*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
525 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5-5*i),0,math.rad(0)) | |
526 | end | |
527 | for i = 0.1 ,1 ,0.1 do | |
528 | wait() | |
529 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90-130*i),math.rad(0),math.rad(-60+60*i)) | |
530 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), 0, 0) | |
531 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(40-20*i),math.rad(0),math.rad(45-22.5*i)) | |
532 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
533 | w3.C0 = CFrame.Angles(math.rad(135), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
534 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-10+40*i),0,math.rad(-30*i)) | |
535 | end | |
536 | unequipweld() | |
537 | for i = 0.1 ,1 ,0.1 do | |
538 | wait() | |
539 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(-20+20*i),math.rad(0),math.rad(0)) | |
540 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(0), 0, 0) | |
541 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25+0.25*i) * CFrame.Angles(math.rad(20-20*i),math.rad(0),math.rad(22.5-22.5*i)) | |
542 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
543 | w3.C0 = CFrame.Angles(math.rad(135), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
544 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(30-30*i),0,math.rad(-30+30*i)) | |
545 | end | |
546 | Neck.C0 = neckcf0 | |
547 | RWRem() | |
548 | LWRem() | |
549 | attack = false | |
550 | end | |
551 | function equipanim() | |
552 | attack = true | |
553 | RWFunc() | |
554 | w3.C0 = CFrame.Angles(math.rad(135), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
555 | for i = 0.1 ,1 ,0.1 do | |
556 | wait() | |
557 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(-20*i),math.rad(0),math.rad(0)) | |
558 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
559 | LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)) | |
560 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
561 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(30*i),0,math.rad(-30*i)) | |
562 | end | |
563 | equipweld() | |
564 | ars(Head,1) | |
565 | for i = 0.1 ,1 ,0.1 do | |
566 | wait() | |
567 | RW.C0 = CFrame.new(1.5, 0.5, -0.25*i) * CFrame.Angles(math.rad(-20+130*i),math.rad(0),math.rad(0)) | |
568 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
569 | LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(0),math.rad(0),math.rad(0)) | |
570 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
571 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(30-35*i),0,math.rad(-30)) | |
572 | end | |
573 | LWFunc() | |
574 | for i = 0.1 ,1 ,0.1 do | |
575 | wait() | |
576 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(110-20*i),math.rad(0),math.rad(-60*i)) | |
577 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25*i), 0, 0) | |
578 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5*i) * CFrame.Angles(math.rad(40*i),math.rad(0),math.rad(25*i)) | |
579 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
580 | w3.C0 = CFrame.Angles(math.rad(135-45*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
581 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5+5*i),0,math.rad(-30+30*i)) | |
582 | end | |
583 | Neck.C0 = neckcf0 | |
584 | attack = false | |
585 | end | |
586 | function faketors() | |
587 | local T = Instance.new("Part") | |
588 | T.formFactor = 0 | |
589 | T.CanCollide = false | |
590 | T.Name = "FakeTorso" | |
591 | T.Locked = true | |
592 | T.Size = Torso.Size | |
593 | T.Parent = swordholder | |
594 | T.Transparency = 1 | |
595 | T.BrickColor = Torso.BrickColor | |
596 | for i,z in pairs(Character:GetChildren()) do | |
597 | if z.className == "CharacterMesh" then | |
598 | if z.BodyPart == Enum.BodyPart.Torso then | |
599 | local SM = Instance.new("SpecialMesh",T) | |
600 | SM.MeshId = "http://www.roblox.com/asset/?id=" .. z.MeshId | |
601 | if z.BaseTextureId ~= 0 then | |
602 | SM.TextureId = z.BaseTextureId | |
603 | elseif z.OverlayTextureId ~= 0 then | |
604 | SM.TextureId = z.OverlayTextureId | |
605 | else | |
606 | SM.TextureId = "" | |
607 | end | |
608 | end | |
609 | end | |
610 | end | |
611 | local wt = Instance.new("Weld") | |
612 | wt.Parent = T | |
613 | wt.Part0 = T | |
614 | wt.Part1 = Torso | |
615 | RW.Part0 = T | |
616 | LW.Part0 = T | |
617 | T.Transparency = 0 | |
618 | Torso.Transparency = 1 | |
619 | RHL.Part0 = T | |
620 | LHL.Part0 = T | |
621 | return wt,T | |
622 | end | |
623 | if (script.Parent.className ~= "HopperBin") then | |
624 | Tool = Instance.new("HopperBin") | |
625 | Tool.Parent = Backpack | |
626 | Tool.Name = ToolName | |
627 | script.Parent = Tool | |
628 | end | |
629 | Bin = script.Parent | |
630 | function damagesplat(dmg,hit,crit,blocked) | |
631 | local mo = Instance.new("Model") | |
632 | mo.Name = dmg | |
633 | local pa = Instance.new("Part",mo) | |
634 | pa.formFactor = 3 | |
635 | pa.Size = Vector3.new(0.8,0.3,0.8) | |
636 | if crit then | |
637 | pa.BrickColor = BrickColor.new("Bright yellow") | |
638 | elseif not crit then | |
639 | pa.BrickColor = BrickColor.new("Bright red") | |
640 | end | |
641 | if blocked then pa.BrickColor = BrickColor.new("Bright blue") end | |
642 | pa.CFrame = CFrame.new(hit.Position) * CFrame.new(0, 3, 0) | |
643 | pa.Name = "Head" | |
644 | local hah = Instance.new("Humanoid") | |
645 | hah.Parent = mo | |
646 | hah.MaxHealth = 0 | |
647 | hah.Health = 0 | |
648 | local bp = Instance.new("BodyPosition") | |
649 | bp.P = 14000 | |
650 | bp.maxForce = Vector3.new(math.huge, math.huge, math.huge) | |
651 | bp.position = hit.Position + Vector3.new(0, 5, 0) | |
652 | coroutine.resume(coroutine.create(function() | |
653 | wait() | |
654 | mo.Parent = workspace | |
655 | bp.Parent = pa | |
656 | wait(1.4) | |
657 | mo:remove() | |
658 | end)) | |
659 | return pa | |
660 | end | |
661 | function damage(hum,dmg,critornot) | |
662 | local pa = damagesplat(dmg,hum.Torso,critornot) | |
663 | hum:TakeDamage(dmg) | |
664 | coroutine.resume(coroutine.create(function() | |
665 | tagHumanoid(hum,Player) | |
666 | wait(1) | |
667 | untagHumanoid(hum) | |
668 | end)) | |
669 | return pa | |
670 | end | |
671 | function AddAmmo(add) | |
672 | Ammo = Ammo + add | |
673 | if Ammo > MaxAmmo then | |
674 | Ammo = MaxAmmo | |
675 | end | |
676 | end | |
677 | function ADmg(humm,hit,pos) | |
678 | if CurrentAmmo == "Normal" then | |
679 | if humm.Parent:findFirstChild("Block") ~= nil then | |
680 | if humm.Parent.Block.Value then | |
681 | damagesplat(0,humm.Torso,false,true) | |
682 | return | |
683 | end | |
684 | end | |
685 | prcntdmg(0) | |
686 | if critrandomizer ~= 1 then | |
687 | local rndmdamage = math.random(mindamage,maxdamage) | |
688 | damage(humm,rndmdamage,false) | |
689 | elseif critrandomizer == 1 then | |
690 | local rndmdamage = math.random(maxdamage,crtmaxdamage) | |
691 | damage(humm,rndmdamage,true) | |
692 | end | |
693 | elseif CurrentAmmo == "Poison" then | |
694 | if humm.Parent:findFirstChild("Block") ~= nil then | |
695 | if humm.Parent.Block.Value then | |
696 | damagesplat(0,humm.Torso,false,true) | |
697 | return | |
698 | end | |
699 | end | |
700 | prcntdmg(25) | |
701 | if critrandomizer ~= 1 then | |
702 | local rndmdamage = math.random(mindamage,maxdamage) | |
703 | damage(humm,rndmdamage,false) | |
704 | elseif critrandomizer == 1 then | |
705 | local rndmdamage = math.random(maxdamage,crtmaxdamage) | |
706 | damage(humm,rndmdamage,true) | |
707 | end | |
708 | if math.random(1,5) == 1 then | |
709 | local poisoncount = math.random(2,10) | |
710 | coroutine.resume(coroutine.create(function() | |
711 | repeat | |
712 | wait(1.5) | |
713 | poisoncount = poisoncount - 1 | |
714 | local rndmdamage = math.floor(math.random(1,5)/2) | |
715 | local pa = damage(humm,rndmdamage,false) | |
716 | pa.BrickColor = BrickColor.new("Alder") | |
717 | until poisoncount <= 0 | |
718 | end)) | |
719 | end | |
720 | elseif CurrentAmmo == "Knockback" then | |
721 | if humm.Parent:findFirstChild("Block") ~= nil then | |
722 | if humm.Parent.Block.Value then | |
723 | damagesplat(0,humm.Torso,false,true) | |
724 | return | |
725 | end | |
726 | end | |
727 | prcntdmg(25) | |
728 | if critrandomizer ~= 1 then | |
729 | local rndmdamage = math.random(mindamage,maxdamage) | |
730 | damage(humm,rndmdamage,false) | |
731 | elseif critrandomizer == 1 then | |
732 | local rndmdamage = math.random(maxdamage,crtmaxdamage) | |
733 | damage(humm,rndmdamage,true) | |
734 | end | |
735 | local vel = Instance.new("BodyVelocity",humm.Torso) | |
736 | vel.maxForce = Vector3.new(1,1,1) * math.huge | |
737 | vel.P = vel.P * 5 | |
738 | vel.velocity = Vector3.new(0,1,0) + CFrame.new(Torso.Position,humm.Torso.Position).lookVector * 10 | |
739 | coroutine.resume(coroutine.create(function() | |
740 | wait() wait() wait() wait() | |
741 | vel.Parent=nil | |
742 | end)) | |
743 | returndmg() | |
744 | end | |
745 | end | |
746 | function OT(hit) --Normal Damage | |
747 | if Hitdeb == 1 then return end | |
748 | if hit.Parent == nil then return end | |
749 | local hum = hit.Parent:findFirstChild("Humanoid") if hum ~= nil and hum ~= Character.Humanoid then | |
750 | if hum.Health <= 0 then return end | |
751 | if hit.Parent:findFirstChild("Block") ~= nil then | |
752 | if hit.Parent.Block.Value then | |
753 | damagesplat(0,hum.Torso,false,true) | |
754 | Hitdeb = 1 | |
755 | if hit.Parent.Block:findFirstChild("BlockPower") ~= nil then | |
756 | if hit.Parent.Block.BlockPower.Value <= 1 then | |
757 | hit.Parent.Block.Value = false | |
758 | elseif hit.Parent.Block.BlockPower.Value > 1 then | |
759 | local critrandomizer = math.random(crtrate) | |
760 | if critrandomizer ~= 1 then | |
761 | hit.Parent.Block.BlockPower.Value = hit.Parent.Block.BlockPower.Value - blockbreaker | |
762 | elseif critrandomizer == 1 then | |
763 | hit.Parent.Block.BlockPower.Value = hit.Parent.Block.BlockPower.Value - blockbreaker + 2 | |
764 | end | |
765 | end | |
766 | end | |
767 | return end end | |
768 | local critrandomizer = math.random(crtrate) | |
769 | if critrandomizer ~= 1 then | |
770 | local rndmdamage = math.random(mindamage,maxdamage) | |
771 | damage(hum,rndmdamage,false) | |
772 | elseif critrandomizer == 1 then | |
773 | local rndmdamage = math.random(maxdamage,crtmaxdamage) | |
774 | damage(hum,rndmdamage,true) | |
775 | end | |
776 | Hitdeb = 1 | |
777 | end | |
778 | end | |
779 | function AoE(p,magnitude) | |
780 | local c = game.Workspace:GetChildren(); | |
781 | for i = 1, #c do | |
782 | local hum = c[i]:findFirstChild("Humanoid") | |
783 | if hum ~= nil and hum.Health ~= 0 then | |
784 | local head = c[i]:findFirstChild("Head"); | |
785 | if head ~= nil then | |
786 | local mag = (head.Position - p).magnitude; | |
787 | if mag <= magnitude and c[i].Name ~= Character.Name then | |
788 | local foundd = false | |
789 | for ii = 1 , #AoETrue do | |
790 | if AoETrue[ii] == c[i].Name then | |
791 | foundd = true | |
792 | end | |
793 | end | |
794 | if foundd then | |
795 | end | |
796 | -- | |
797 | if not foundd then | |
798 | local critrandomizer = math.random(crtrate) | |
799 | if critrandomizer ~= 1 then | |
800 | local rndmdamage = math.random(mindamage,maxdamage) | |
801 | damage(hum,rndmdamage,false) | |
802 | elseif critrandomizer == 1 then | |
803 | local rndmdamage = math.random(maxdamage,crtmaxdamage) | |
804 | damage(hum,rndmdamage,true) | |
805 | end | |
806 | table.insert(AoETrue,c[i].Name) | |
807 | end | |
808 | end | |
809 | end | |
810 | end | |
811 | end | |
812 | for ii = 1 , #AoETrue do | |
813 | table.remove(AoETrue,#AoETrue) | |
814 | end | |
815 | end | |
816 | -- | |
817 | -- | |
818 | function effect(Color,Ref,LP,P1) | |
819 | local effectsmsh = Instance.new("BlockMesh") | |
820 | effectsmsh.Scale = Vector3.new(1,1,1) | |
821 | effectsmsh.Name = "Mesh" | |
822 | local effectsg = Instance.new("Part") | |
823 | effectsg.formFactor = 3 | |
824 | effectsg.CanCollide = false | |
825 | effectsg.Name = "Eff" | |
826 | effectsg.Locked = true | |
827 | effectsg.Anchored = true | |
828 | effectsg.Size = Vector3.new(0.2,1,0.2) | |
829 | effectsg.Parent = swordholder | |
830 | effectsmsh.Parent = effectsg | |
831 | effectsg.BrickColor = BrickColor.new(Color) | |
832 | effectsg.Reflectance = Ref | |
833 | local point1 = P1 | |
834 | local mg = (LP.p - point1.p).magnitude | |
835 | effectsg.Size = Vector3.new(0.2,mg,0.2) | |
836 | effectsg.CFrame = CFrame.new((LP.p+point1.p)/2,point1.p) * CFrame.Angles(math.rad(90),0,0) | |
837 | coroutine.resume(coroutine.create(function() | |
838 | for i = 0 , 1 , 0.1 do | |
839 | wait() | |
840 | effectsg.Transparency = 1*i | |
841 | effectsmsh.Scale = Vector3.new(1-1*i,1,1-1*i) | |
842 | end | |
843 | wait() | |
844 | effectsg.Parent = nil | |
845 | end)) | |
846 | end | |
847 | -- | |
848 | con = nil | |
849 | function dmgcnnct() | |
850 | if con ~= nil then | |
851 | con:disconnect() | |
852 | Hitdeb = 0 | |
853 | end | |
854 | con = prt11.Touched:connect(OT) | |
855 | end | |
856 | function dmgdc() | |
857 | if con ~= nil then | |
858 | con:disconnect() | |
859 | Hitdeb = 0 | |
860 | end | |
861 | end | |
862 | function rptddmg(value,des,inc) | |
863 | coroutine.resume(coroutine.create(function() | |
864 | repeat | |
865 | wait(inc) | |
866 | Hitdeb = 0 | |
867 | until value == des | |
868 | end)) | |
869 | end | |
870 | function atktype(s,e) | |
871 | coroutine.resume(coroutine.create(function () | |
872 | attacktype = e | |
873 | wait(0.25) | |
874 | attacktype = s | |
875 | end)) | |
876 | end | |
877 | function shoottrail(mouse) | |
878 | local p1 = (prt5.CFrame * CFrame.new(0,-prt5.Size.y/2,0)).p | |
879 | local spreadvector = (Vector3.new(math.random(-spread,spread),math.random(-spread,spread),math.random(-spread,spread)) / 100) * (p1-mouse.Hit.p).magnitude/100 | |
880 | local dir = CFrame.new((p1+mouse.Hit.p)/2,mouse.Hit.p+spreadvector) | |
881 | local hit,pos = rayCast(p1,dir.lookVector,10,Character) | |
882 | local rangepos = range | |
883 | local function drawtrail(From,To) | |
884 | local effectsmsh = Instance.new("CylinderMesh") | |
885 | effectsmsh.Scale = Vector3.new(1,1,1) | |
886 | effectsmsh.Name = "Mesh" | |
887 | local effectsg = Instance.new("Part") | |
888 | effectsg.formFactor = 3 | |
889 | effectsg.CanCollide = false | |
890 | effectsg.Name = "Eff" | |
891 | effectsg.Locked = true | |
892 | effectsg.Anchored = true | |
893 | effectsg.Size = Vector3.new(0.2,0.2,0.2) | |
894 | effectsg.Parent = swordholder | |
895 | effectsmsh.Parent = effectsg | |
896 | effectsg.BrickColor = ammotrail | |
897 | effectsg.Reflectance = 0.25 | |
898 | local LP = From | |
899 | local point1 = To | |
900 | local mg = (LP - point1).magnitude | |
901 | effectsmsh.Scale = Vector3.new(1,mg*5,1) | |
902 | effectsg.CFrame = CFrame.new((LP+point1)/2,point1) * CFrame.Angles(math.rad(90),0,0) | |
903 | coroutine.resume(coroutine.create(function() | |
904 | for i = 0 , 1 , 0.1 do | |
905 | wait() | |
906 | effectsg.Transparency = 1*i | |
907 | effectsmsh.Scale = Vector3.new(1-1*i,mg*5,1-1*i) | |
908 | end | |
909 | effectsg.Parent = nil | |
910 | end)) | |
911 | end | |
912 | local newpos = p1 | |
913 | local inc = rangepower | |
914 | repeat | |
915 | wait() | |
916 | rangepos = rangepos - 10 | |
917 | dir = dir * CFrame.Angles(math.rad(-0.1),0,0) | |
918 | hit,pos = rayCast(newpos,dir.lookVector,inc,Character) | |
919 | drawtrail(newpos,pos) | |
920 | newpos = newpos + (dir.lookVector * inc) | |
921 | if inc >= 20 then | |
922 | inc = inc - 10 | |
923 | end | |
924 | if hit ~= nil then | |
925 | rangepos = 0 | |
926 | end | |
927 | until rangepos <= 0 | |
928 | if hit ~= nil then | |
929 | hs(Head,1) | |
930 | if hit.Parent:FindFirstChild("Humanoid") ~= nil then | |
931 | hum = hit.Parent.Humanoid | |
932 | ADmg(hum,hit,pos) | |
933 | elseif hit.Parent.Parent ~= nil and hit.Parent.Parent:FindFirstChild("Humanoid") ~= nil then | |
934 | hum = hit.Parent.Parent.Humanoid | |
935 | ADmg(hum,hit,pos) | |
936 | end | |
937 | end | |
938 | end | |
939 | function Ready(mouse) | |
940 | if Ammo <= 0 then Reload() return end | |
941 | attack = true | |
942 | local wt,t = faketors() | |
943 | w7.Part1 = t | |
944 | w8.Part1 = t | |
945 | w9.Part1 = t | |
946 | Character.Humanoid.WalkSpeed = 5 | |
947 | for i = 0.2 , 1 , 0.2 do | |
948 | wait() | |
949 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
950 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-15*i), 0, 0) | |
951 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(40+35*i),math.rad(0),math.rad(25)) | |
952 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
953 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
954 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
955 | wt.C0 = CFrame.Angles(0, math.rad(50*i), 0) | |
956 | end | |
957 | for i = 0.2 , 1 , 0.2 do | |
958 | wait() | |
959 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
960 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(10-10*i), 0, 0) | |
961 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25+0.25*i) * CFrame.Angles(math.rad(75+20*i),math.rad(0),math.rad(25)) | |
962 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
963 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
964 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
965 | wt.C0 = CFrame.Angles(0, math.rad(50+10*i), 0) | |
966 | end | |
967 | wait() wait() | |
968 | repeat | |
969 | wait() | |
970 | as(Head,1) | |
971 | coroutine.resume(coroutine.create(function() | |
972 | for z = 1 ,2 do | |
973 | coroutine.resume(coroutine.create(function() | |
974 | local meshb1 = Instance.new("BlockMesh") | |
975 | meshb1.Scale = Vector3.new(1,1,1) | |
976 | local shellb1 = Instance.new("Part") | |
977 | meshb1.Parent = shellb1 | |
978 | shellb1.Anchored = true | |
979 | shellb1.formFactor = 3 | |
980 | shellb1.Size = Vector3.new(0.3,0.3,0.3) * (math.random(100,300)/100) | |
981 | shellb1.CFrame = CFrame.new((prt5.CFrame * CFrame.new(0,-prt5.Size.y/2,0)).p) * CFrame.Angles(math.random(-100,100)/100,math.random(-100,100)/100,math.random(-100,100)/100) | |
982 | shellb1.Parent = swordholder | |
983 | shellb1.Transparency = 0 | |
984 | if math.random(1,2) == 1 then | |
985 | shellb1.BrickColor = BrickColor.new("Bright red") | |
986 | else | |
987 | shellb1.BrickColor = BrickColor.new("Bright orange") | |
988 | end | |
989 | shellb1.CanCollide = false | |
990 | local incre = math.random(0,60)/100 | |
991 | for i = 0 , 1 , 0.1 do | |
992 | wait() | |
993 | shellb1.CFrame = shellb1.CFrame + Torso.CFrame.lookVector*incre | |
994 | shellb1.Transparency = 1*i | |
995 | meshb1.Scale = Vector3.new(1+1*i,1+1*i,1+1*i) | |
996 | end | |
997 | shellb1.Parent=nil | |
998 | end)) | |
999 | end | |
1000 | shoottrail(mouse) | |
1001 | end)) | |
1002 | Ammo = Ammo - 1 | |
1003 | for i = 0.5 , 1 , 0.5 do | |
1004 | wait() | |
1005 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1006 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(-5*i), 0, 0) | |
1007 | LW.C0 = CFrame.new(-1.5, 0.5, -0) * CFrame.Angles(math.rad(95+5*i),math.rad(0),math.rad(25)) | |
1008 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1009 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1010 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1011 | wt.C0 = CFrame.Angles(0, math.rad(60), 0) | |
1012 | end | |
1013 | for i = 0.5 , 1 , 0.5 do | |
1014 | wait() | |
1015 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1016 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(-5+5*i), 0, 0) | |
1017 | LW.C0 = CFrame.new(-1.5, 0.5, -0) * CFrame.Angles(math.rad(100-5*i),math.rad(0),math.rad(25)) | |
1018 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1019 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1020 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1021 | wt.C0 = CFrame.Angles(0, math.rad(60), 0) | |
1022 | end | |
1023 | until not keyhold or Ammo <= 0 | |
1024 | for i = 0.2 , 1 , 0.2 do | |
1025 | wait() | |
1026 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1027 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15*i), 0, 0) | |
1028 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25*i) * CFrame.Angles(math.rad(95-25*i),math.rad(0),math.rad(25)) | |
1029 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1030 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1031 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1032 | wt.C0 = CFrame.Angles(0, math.rad(60-60*i), 0) | |
1033 | end | |
1034 | w7.Part1 = Torso | |
1035 | w8.Part1 = Torso | |
1036 | w9.Part1 = Torso | |
1037 | RW.Part0 = Torso | |
1038 | LW.Part0 = Torso | |
1039 | Torso.Transparency = 0 | |
1040 | RHL.Part0 = Torso | |
1041 | LHL.Part0 = Torso | |
1042 | t.Parent = nil | |
1043 | Character.Humanoid.WalkSpeed = 14 | |
1044 | for i = 0.2 , 1 , 0.2 do | |
1045 | wait() | |
1046 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1047 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15+10*i), 0, 0) | |
1048 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25-0.25*i) * CFrame.Angles(math.rad(70-30*i),math.rad(0),math.rad(25)) | |
1049 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1050 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1051 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1052 | end | |
1053 | wait(0.25) | |
1054 | attack = false | |
1055 | end | |
1056 | function Reload() | |
1057 | attack = true | |
1058 | ars(Head,0.75) | |
1059 | for i = 0.1 , 1 , 0.1 do | |
1060 | wait() | |
1061 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60+20*i)) | |
1062 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-45*i), 0, 0) | |
1063 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5+0.5*i) * CFrame.Angles(math.rad(40-60*i),math.rad(0),math.rad(25-15*i)) | |
1064 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1065 | w3.C0 = CFrame.Angles(math.rad(90+90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1066 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-10*i),0,math.rad(-20*i)) | |
1067 | end | |
1068 | for i = 0.2 , 1 , 0.2 do | |
1069 | wait() | |
1070 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-40)) | |
1071 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(-20+20*i), 0, 0) | |
1072 | LW.C0 = CFrame.new(-1.5, 0.5, 0) * CFrame.Angles(math.rad(-20+40*i),math.rad(0),math.rad(10-10*i)) | |
1073 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1074 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1075 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-10+20*i),0,math.rad(-20)) | |
1076 | end | |
1077 | for i = 0.2 , 1 , 0.2 do | |
1078 | wait() | |
1079 | RW.C0 = CFrame.new(1.5-0.5*i, 0.5, -0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-40-5*i)) | |
1080 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(45*i), 0, 0) | |
1081 | LW.C0 = CFrame.new(-1.5+0.5*i, 0.5, -0.5*i) * CFrame.Angles(math.rad(20+80*i),math.rad(0),math.rad(45*i)) | |
1082 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1083 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1084 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(10+10*i),0,math.rad(-20+10*i)) | |
1085 | end | |
1086 | AddAmmo(Ammoregen) | |
1087 | for i = 0.2 , 1 , 0.2 do | |
1088 | wait() | |
1089 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-45)) | |
1090 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(45+5*i), 0, 0) | |
1091 | LW.C0 = CFrame.new(-1, 0.5, -0.5) * CFrame.Angles(math.rad(100-10*i),math.rad(0),math.rad(45)) | |
1092 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1093 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1094 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(20+5*i),0,math.rad(-10+5*i)) | |
1095 | end | |
1096 | for i = 0.1 , 1 , 0.1 do | |
1097 | wait() | |
1098 | RW.C0 = CFrame.new(1+0.5*i, 0.5, -0.5+0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-45-15*i)) | |
1099 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(50-25*i), 0, 0) | |
1100 | LW.C0 = CFrame.new(-1-0.5*i, 0.5, -0.5) * CFrame.Angles(math.rad(90-60*i),math.rad(0),math.rad(45-20*i)) | |
1101 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1102 | w3.C0 = CFrame.Angles(math.rad(180-90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1103 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(25-25*i),0,math.rad(-5+5*i)) | |
1104 | end | |
1105 | Neck.C0 = neckcf0 | |
1106 | attack = false | |
1107 | end | |
1108 | function NormalAmmo() | |
1109 | attack = true | |
1110 | for i = 0.1 , 1 , 0.1 do | |
1111 | wait() | |
1112 | RW.C0 = CFrame.new(1.5-0.5*i, 0.5, -0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1113 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1114 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40+60*i),math.rad(0),math.rad(25+20*i)) | |
1115 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1116 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1117 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5*i),0,0) | |
1118 | end | |
1119 | ars(Head,1) | |
1120 | for i = 0.2 , 1 , 0.2 do | |
1121 | wait() | |
1122 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1123 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1124 | LW.C0 = CFrame.new(-1.5+0.25*i, 0.5, -0.5) * CFrame.Angles(math.rad(100),math.rad(0),math.rad(45)) | |
1125 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1126 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1127 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-2.5*i),0,0) | |
1128 | end | |
1129 | for i = 0.1 , 1 , 0.2 do | |
1130 | wait() | |
1131 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1132 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1133 | LW.C0 = CFrame.new(-1.25-0.25*i, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(100+20*i),math.rad(0),math.rad(45)) | |
1134 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1135 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1136 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(2.5+2.5*i),0,0) | |
1137 | end | |
1138 | for i = 0.1 , 1 , 0.2 do | |
1139 | wait() | |
1140 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1141 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-10*i), 0, 0) | |
1142 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25-0.25*i) * CFrame.Angles(math.rad(120-45*i),math.rad(0),math.rad(45)) | |
1143 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1144 | w3.C0 = CFrame.Angles(math.rad(90+90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1145 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5),0,0) | |
1146 | end | |
1147 | for i = 0.1 , 1 , 0.1 do | |
1148 | wait() | |
1149 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1150 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1151 | LW.C0 = CFrame.new(-1.5, 0.5+0.25*i, -0.5) * CFrame.Angles(math.rad(75+60*i),math.rad(0),math.rad(45)) | |
1152 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1153 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1154 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-10*i),0,0) | |
1155 | end | |
1156 | for i = 0.2 , 1 , 0.1 do | |
1157 | wait() | |
1158 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1159 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1160 | LW.C0 = CFrame.new(-1.5, 0.75, -0.5) * CFrame.Angles(math.rad(135-20*i),math.rad(0),math.rad(45)) | |
1161 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1162 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1163 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5+2.5*i),0,0) | |
1164 | end | |
1165 | CurrentAmmo = "Normal" | |
1166 | ammotrail = BrickColor.new("White") | |
1167 | ars(Head,2) | |
1168 | for i = 0.2 , 1 , 0.1 do | |
1169 | wait() | |
1170 | RW.C0 = CFrame.new(1+0.5*i, 0.5, -0.5+0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1171 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15-15*i), 0, 0) | |
1172 | LW.C0 = CFrame.new(-1.5, 0.75-0.25*i, -0.5) * CFrame.Angles(math.rad(115-75*i),math.rad(0),math.rad(45-20*i)) | |
1173 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1174 | w3.C0 = CFrame.Angles(math.rad(180-90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1175 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-2.5+2.5*i),0,0) | |
1176 | end | |
1177 | for i = 0.2 , 1 , 0.1 do | |
1178 | wait() | |
1179 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1180 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25*i), 0, 0) | |
1181 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(25)) | |
1182 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1183 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1184 | end | |
1185 | attack = false | |
1186 | end | |
1187 | function PoisonAmmo() | |
1188 | attack = true | |
1189 | for i = 0.1 , 1 , 0.1 do | |
1190 | wait() | |
1191 | RW.C0 = CFrame.new(1.5-0.5*i, 0.5, -0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1192 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1193 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40+60*i),math.rad(0),math.rad(25+20*i)) | |
1194 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1195 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1196 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5*i),0,0) | |
1197 | end | |
1198 | ars(Head,1) | |
1199 | for i = 0.2 , 1 , 0.2 do | |
1200 | wait() | |
1201 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1202 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1203 | LW.C0 = CFrame.new(-1.5+0.25*i, 0.5, -0.5) * CFrame.Angles(math.rad(100),math.rad(0),math.rad(45)) | |
1204 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1205 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1206 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-2.5*i),0,0) | |
1207 | end | |
1208 | for i = 0.1 , 1 , 0.2 do | |
1209 | wait() | |
1210 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1211 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1212 | LW.C0 = CFrame.new(-1.25-0.25*i, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(100+20*i),math.rad(0),math.rad(45)) | |
1213 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1214 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1215 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(2.5+2.5*i),0,0) | |
1216 | end | |
1217 | for i = 0.1 , 1 , 0.2 do | |
1218 | wait() | |
1219 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1220 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-10*i), 0, 0) | |
1221 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25-0.25*i) * CFrame.Angles(math.rad(120-45*i),math.rad(0),math.rad(45)) | |
1222 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1223 | w3.C0 = CFrame.Angles(math.rad(90+90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1224 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5),0,0) | |
1225 | end | |
1226 | for i = 0.1 , 1 , 0.1 do | |
1227 | wait() | |
1228 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1229 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1230 | LW.C0 = CFrame.new(-1.5, 0.5+0.25*i, -0.5) * CFrame.Angles(math.rad(75+60*i),math.rad(0),math.rad(45)) | |
1231 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1232 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1233 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-10*i),0,0) | |
1234 | end | |
1235 | for i = 0.2 , 1 , 0.1 do | |
1236 | wait() | |
1237 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1238 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1239 | LW.C0 = CFrame.new(-1.5, 0.75, -0.5) * CFrame.Angles(math.rad(135-20*i),math.rad(0),math.rad(45)) | |
1240 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1241 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1242 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5+2.5*i),0,0) | |
1243 | end | |
1244 | CurrentAmmo = "Poison" | |
1245 | ammotrail = BrickColor.new("Bright violet") | |
1246 | ars(Head,2) | |
1247 | for i = 0.2 , 1 , 0.1 do | |
1248 | wait() | |
1249 | RW.C0 = CFrame.new(1+0.5*i, 0.5, -0.5+0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1250 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15-15*i), 0, 0) | |
1251 | LW.C0 = CFrame.new(-1.5, 0.75-0.25*i, -0.5) * CFrame.Angles(math.rad(115-75*i),math.rad(0),math.rad(45-20*i)) | |
1252 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1253 | w3.C0 = CFrame.Angles(math.rad(180-90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1254 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-2.5+2.5*i),0,0) | |
1255 | end | |
1256 | for i = 0.2 , 1 , 0.1 do | |
1257 | wait() | |
1258 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1259 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25*i), 0, 0) | |
1260 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(25)) | |
1261 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1262 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1263 | end | |
1264 | attack = false | |
1265 | coroutine.resume(coroutine.create(function() | |
1266 | repeat | |
1267 | wait(0.25+0.75*math.random()) | |
1268 | if Ammo ~= 0 then | |
1269 | local meshb1 = Instance.new("SpecialMesh") | |
1270 | meshb1.Scale = Vector3.new(1,1,1) | |
1271 | meshb1.MeshType = "Sphere" | |
1272 | local shellb1 = Instance.new("Part") | |
1273 | meshb1.Parent = shellb1 | |
1274 | shellb1.Anchored = true | |
1275 | shellb1.formFactor = 3 | |
1276 | shellb1.Size = Vector3.new(0.3,0.3,0.3) | |
1277 | shellb1.CFrame = CFrame.new((prt5.CFrame * CFrame.new(0,-prt5.Size.y/2,0)).p) | |
1278 | shellb1.Parent = swordholder | |
1279 | shellb1.Transparency = 0 | |
1280 | shellb1.BrickColor = BrickColor.new("Alder") | |
1281 | shellb1.CanCollide = false | |
1282 | for i = 0 , 1 , 0.1 do | |
1283 | wait() | |
1284 | shellb1.CFrame = shellb1.CFrame + Vector3.new(0,-0.15,0) | |
1285 | shellb1.Transparency = 1*i | |
1286 | meshb1.Scale = Vector3.new(1,1+3*i,1) | |
1287 | end | |
1288 | shellb1.Parent=nil | |
1289 | end | |
1290 | until CurrentAmmo ~= "Poison" | |
1291 | end)) | |
1292 | end | |
1293 | function KBAmmo() | |
1294 | attack = true | |
1295 | for i = 0.1 , 1 , 0.1 do | |
1296 | wait() | |
1297 | RW.C0 = CFrame.new(1.5-0.5*i, 0.5, -0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1298 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1299 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40+60*i),math.rad(0),math.rad(25+20*i)) | |
1300 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1301 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1302 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5*i),0,0) | |
1303 | end | |
1304 | ars(Head,1) | |
1305 | for i = 0.2 , 1 , 0.2 do | |
1306 | wait() | |
1307 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1308 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1309 | LW.C0 = CFrame.new(-1.5+0.25*i, 0.5, -0.5) * CFrame.Angles(math.rad(100),math.rad(0),math.rad(45)) | |
1310 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1311 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1312 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-2.5*i),0,0) | |
1313 | end | |
1314 | for i = 0.1 , 1 , 0.2 do | |
1315 | wait() | |
1316 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1317 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1318 | LW.C0 = CFrame.new(-1.25-0.25*i, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(100+20*i),math.rad(0),math.rad(45)) | |
1319 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1320 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1321 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(2.5+2.5*i),0,0) | |
1322 | end | |
1323 | for i = 0.1 , 1 , 0.2 do | |
1324 | wait() | |
1325 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1326 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-10*i), 0, 0) | |
1327 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25-0.25*i) * CFrame.Angles(math.rad(120-45*i),math.rad(0),math.rad(45)) | |
1328 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1329 | w3.C0 = CFrame.Angles(math.rad(90+90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1330 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5),0,0) | |
1331 | end | |
1332 | for i = 0.1 , 1 , 0.1 do | |
1333 | wait() | |
1334 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1335 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1336 | LW.C0 = CFrame.new(-1.5, 0.5+0.25*i, -0.5) * CFrame.Angles(math.rad(75+60*i),math.rad(0),math.rad(45)) | |
1337 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1338 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1339 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(5-10*i),0,0) | |
1340 | end | |
1341 | for i = 0.2 , 1 , 0.1 do | |
1342 | wait() | |
1343 | RW.C0 = CFrame.new(1, 0.5, -0.5) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1344 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15), 0, 0) | |
1345 | LW.C0 = CFrame.new(-1.5, 0.75, -0.5) * CFrame.Angles(math.rad(135-20*i),math.rad(0),math.rad(45)) | |
1346 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1347 | w3.C0 = CFrame.Angles(math.rad(180), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1348 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-5+2.5*i),0,0) | |
1349 | end | |
1350 | CurrentAmmo = "Knockback" | |
1351 | ammotrail = BrickColor.new("Black") | |
1352 | ars(Head,2) | |
1353 | for i = 0.2 , 1 , 0.1 do | |
1354 | wait() | |
1355 | RW.C0 = CFrame.new(1+0.5*i, 0.5, -0.5+0.5*i) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1356 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15-15*i), 0, 0) | |
1357 | LW.C0 = CFrame.new(-1.5, 0.75-0.25*i, -0.5) * CFrame.Angles(math.rad(115-75*i),math.rad(0),math.rad(45-20*i)) | |
1358 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1359 | w3.C0 = CFrame.Angles(math.rad(180-90*i), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1360 | Neck.C0 = neckcf0 * CFrame.Angles(math.rad(-2.5+2.5*i),0,0) | |
1361 | end | |
1362 | for i = 0.2 , 1 , 0.1 do | |
1363 | wait() | |
1364 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1365 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25*i), 0, 0) | |
1366 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(25)) | |
1367 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1368 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1369 | end | |
1370 | attack = false | |
1371 | end | |
1372 | function AimedReady(mouse) | |
1373 | if Ammo <= 0 then Reload() return end | |
1374 | attack = true | |
1375 | local wt,t = faketors() | |
1376 | w7.Part1 = t | |
1377 | w8.Part1 = t | |
1378 | w9.Part1 = t | |
1379 | Character.Humanoid.WalkSpeed = 5 | |
1380 | for i = 0.2 , 1 , 0.2 do | |
1381 | wait() | |
1382 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1383 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25-15*i), 0, 0) | |
1384 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5+0.25*i) * CFrame.Angles(math.rad(40+35*i),math.rad(0),math.rad(25)) | |
1385 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1386 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1387 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1388 | wt.C0 = CFrame.Angles(0, math.rad(50*i), 0) | |
1389 | Neck.C0 = neckcf0 * CFrame.Angles(0,math.rad(-20*i),0) | |
1390 | end | |
1391 | for i = 0.2 , 1 , 0.2 do | |
1392 | wait() | |
1393 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1394 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(10-10*i), 0, 0) | |
1395 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25+0.25*i) * CFrame.Angles(math.rad(75+20*i),math.rad(0),math.rad(25)) | |
1396 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1397 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1398 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1399 | wt.C0 = CFrame.Angles(0, math.rad(50+10*i), 0) | |
1400 | end | |
1401 | wait() wait() | |
1402 | local orispread = spread | |
1403 | spread = 0 | |
1404 | repeat | |
1405 | wait(0.15) | |
1406 | as(Head,1) | |
1407 | coroutine.resume(coroutine.create(function() | |
1408 | for z = 1 ,2 do | |
1409 | coroutine.resume(coroutine.create(function() | |
1410 | local meshb1 = Instance.new("BlockMesh") | |
1411 | meshb1.Scale = Vector3.new(1,1,1) | |
1412 | local shellb1 = Instance.new("Part") | |
1413 | meshb1.Parent = shellb1 | |
1414 | shellb1.Anchored = true | |
1415 | shellb1.formFactor = 3 | |
1416 | shellb1.Size = Vector3.new(0.3,0.3,0.3) * (math.random(100,300)/100) | |
1417 | shellb1.CFrame = CFrame.new((prt5.CFrame * CFrame.new(0,-prt5.Size.y/2,0)).p) * CFrame.Angles(math.random(-100,100)/100,math.random(-100,100)/100,math.random(-100,100)/100) | |
1418 | shellb1.Parent = swordholder | |
1419 | shellb1.Transparency = 0 | |
1420 | if math.random(1,2) == 1 then | |
1421 | shellb1.BrickColor = BrickColor.new("Bright red") | |
1422 | else | |
1423 | shellb1.BrickColor = BrickColor.new("Bright orange") | |
1424 | end | |
1425 | shellb1.CanCollide = false | |
1426 | local incre = math.random(0,60)/100 | |
1427 | for i = 0 , 1 , 0.1 do | |
1428 | wait() | |
1429 | shellb1.CFrame = shellb1.CFrame + Torso.CFrame.lookVector*incre | |
1430 | shellb1.Transparency = 1*i | |
1431 | meshb1.Scale = Vector3.new(1+1*i,1+1*i,1+1*i) | |
1432 | end | |
1433 | shellb1.Parent=nil | |
1434 | end)) | |
1435 | end | |
1436 | shoottrail(mouse) | |
1437 | end)) | |
1438 | Ammo = Ammo - 1 | |
1439 | for i = 0.5 , 1 , 0.5 do | |
1440 | wait() | |
1441 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1442 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(-5*i), 0, 0) | |
1443 | LW.C0 = CFrame.new(-1.5, 0.5, -0) * CFrame.Angles(math.rad(95+5*i),math.rad(0),math.rad(25)) | |
1444 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1445 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1446 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1447 | wt.C0 = CFrame.Angles(0, math.rad(60), 0) | |
1448 | Neck.C0 = neckcf0 * CFrame.Angles(0,math.rad(-20+5*i),0) | |
1449 | end | |
1450 | for i = 0.5 , 1 , 0.5 do | |
1451 | wait() | |
1452 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1453 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(-5+5*i), 0, 0) | |
1454 | LW.C0 = CFrame.new(-1.5, 0.5, -0) * CFrame.Angles(math.rad(100-5*i),math.rad(0),math.rad(25)) | |
1455 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1456 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1457 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1458 | wt.C0 = CFrame.Angles(0, math.rad(60), 0) | |
1459 | Neck.C0 = neckcf0 * CFrame.Angles(0,math.rad(-15-5*i),0) | |
1460 | end | |
1461 | until not buttonhold or Ammo <= 0 | |
1462 | spread = orispread | |
1463 | for i = 0.2 , 1 , 0.2 do | |
1464 | wait() | |
1465 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1466 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15*i), 0, 0) | |
1467 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25*i) * CFrame.Angles(math.rad(95-25*i),math.rad(0),math.rad(25)) | |
1468 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1469 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1470 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1471 | wt.C0 = CFrame.Angles(0, math.rad(60-60*i), 0) | |
1472 | Neck.C0 = neckcf0 * CFrame.Angles(0,math.rad(-20+20*i),0) | |
1473 | end | |
1474 | w7.Part1 = Torso | |
1475 | w8.Part1 = Torso | |
1476 | w9.Part1 = Torso | |
1477 | RW.Part0 = Torso | |
1478 | LW.Part0 = Torso | |
1479 | Torso.Transparency = 0 | |
1480 | RHL.Part0 = Torso | |
1481 | LHL.Part0 = Torso | |
1482 | t.Parent = nil | |
1483 | Character.Humanoid.WalkSpeed = 14 | |
1484 | for i = 0.2 , 1 , 0.2 do | |
1485 | wait() | |
1486 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1487 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(15+10*i), 0, 0) | |
1488 | LW.C0 = CFrame.new(-1.5, 0.5, -0.25-0.25*i) * CFrame.Angles(math.rad(70-30*i),math.rad(0),math.rad(25)) | |
1489 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1490 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1491 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1492 | end | |
1493 | wait(0.25) | |
1494 | attack = false | |
1495 | end | |
1496 | function returnwelds() | |
1497 | RW.C0 = CFrame.new(1.5, 0.5, 0) * CFrame.Angles(math.rad(90),math.rad(0),math.rad(-60)) | |
1498 | RW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(math.rad(25), 0, 0) | |
1499 | LW.C0 = CFrame.new(-1.5, 0.5, -0.5) * CFrame.Angles(math.rad(40),math.rad(0),math.rad(25)) | |
1500 | LW.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0, 0, 0) | |
1501 | w3.C0 = CFrame.Angles(math.rad(90), 0, 0) * CFrame.new(0, 0.25,-0.5) | |
1502 | w1.C0 = CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)) * CFrame.new(0, 0, 0) | |
1503 | RWL.C0 = CFrame.new(1, -1, 0) * CFrame.Angles(0, 0, 0) | |
1504 | RWL.C1 = CFrame.new(0.5, 1, 0) | |
1505 | LWL.C0 = CFrame.new(-1, -1, 0) * CFrame.Angles(0, 0, 0) | |
1506 | LWL.C1 = CFrame.new(-0.5, 1, 0) | |
1507 | Neck.C0 = neckcf0 | |
1508 | end | |
1509 | keyhold = false | |
1510 | function ob1d(mouse) | |
1511 | hold = true | |
1512 | if attack then return end | |
1513 | keyhold = true | |
1514 | Ready(mouse) | |
1515 | end | |
1516 | function ob1u(mouse) | |
1517 | keyhold = false | |
1518 | end | |
1519 | buttonhold = false | |
1520 | function key(key,mouse) | |
1521 | if attack then return end | |
1522 | if key == "f" then | |
1523 | Reload() | |
1524 | end | |
1525 | if key == "q" then | |
1526 | buttonhold = true | |
1527 | AimedReady(mouse) | |
1528 | end | |
1529 | if key == "e" then | |
1530 | NormalAmmo() | |
1531 | end | |
1532 | if key == "r" then --and (string.match(Player.Unlocks.Value,"Poison Ammo") ~= nil) then | |
1533 | PoisonAmmo() | |
1534 | end | |
1535 | if key == "t" then --and (string.match(Player.Unlocks.Value,"Knockback ammo") ~= nil) then | |
1536 | KBAmmo() | |
1537 | end | |
1538 | end | |
1539 | function key2(key) | |
1540 | if key == "f" or key == "q" then | |
1541 | buttonhold = false | |
1542 | end | |
1543 | end | |
1544 | function s(mouse) | |
1545 | repeat wait() until not attack | |
1546 | repeat wait() until not ev.Value | |
1547 | mouse.Button1Down:connect(function() ob1d(mouse) end) | |
1548 | mouse.Button1Up:connect(function() ob1u(mouse) end) | |
1549 | mouse.KeyDown:connect(function(ke) key(ke,mouse) end) | |
1550 | mouse.KeyUp:connect(key2) | |
1551 | equipanim() | |
1552 | ev.Value = true | |
1553 | end | |
1554 | function ds(mouse) | |
1555 | keyhold = false | |
1556 | repeat wait() until not attack | |
1557 | repeat wait() until ev.Value | |
1558 | hideanim() | |
1559 | wait(0.1) | |
1560 | ev.Value = false | |
1561 | end | |
1562 | Bin.Selected:connect(s) | |
1563 | Bin.Deselected:connect(ds) | |
1564 | if PlayerGui:findFirstChild("AmmoMeter") ~= nil then | |
1565 | PlayerGui:findFirstChild("AmmoMeter").Parent = nil | |
1566 | end | |
1567 | coroutine.resume(coroutine.create(function() | |
1568 | local SG = Instance.new("ScreenGui",PlayerGui) | |
1569 | SG.Name = "AmmoMeter" | |
1570 | local frame = Instance.new("Frame",SG) | |
1571 | frame.Size = UDim2.new(0.2,0,0.1,0) | |
1572 | frame.Position = UDim2.new(0.5-0.1,0,0.05,0) | |
1573 | frame.BackgroundColor3 = BrickColor.new("Brown").Color | |
1574 | local Ammotext = Instance.new("TextLabel",frame) | |
1575 | Ammotext.Size = UDim2.new(1,0,0.35,0) | |
1576 | Ammotext.BackgroundTransparency = 1 | |
1577 | Ammotext.Text = "Ammo" | |
1578 | Ammotext.FontSize = "Size18" | |
1579 | Ammotext.TextColor3 = BrickColor.new("White").Color | |
1580 | local backing = Instance.new("ImageLabel",frame) | |
1581 | backing.Size = UDim2.new(0.8,0,0.45,0) | |
1582 | backing.Image = "http://www.roblox.com/asset/?id=48965808" | |
1583 | backing.Position = UDim2.new(0.1,0,0.45,0) | |
1584 | backing.Position = UDim2.new(0.1,0,0.45,0) | |
1585 | backing.BackgroundColor3 = BrickColor.new("Black").Color | |
1586 | local img = Instance.new("ImageLabel",backing) | |
1587 | img.Size = UDim2.new(1,0,1,0) | |
1588 | img.Image = "http://www.roblox.com/asset/?id=48965808" | |
1589 | img.Position = UDim2.new(0,0,0,0) | |
1590 | img.Position = UDim2.new(0,0,0,0) | |
1591 | img.BackgroundColor3 = BrickColor.new("Brown").Color | |
1592 | local percent = Instance.new("TextLabel",backing) | |
1593 | percent.Size = UDim2.new(1,0,1,0) | |
1594 | percent.BackgroundTransparency = 1 | |
1595 | percent.TextColor3 = BrickColor.new("White").Color | |
1596 | percent.Text = Ammo.."/".. MaxAmmo | |
1597 | percent.FontSize = "Size18" | |
1598 | local currentam = Instance.new("TextLabel",frame) | |
1599 | currentam.Size = UDim2.new(0.5,0,0.25,0) | |
1600 | currentam.Position = UDim2.new(0,0,1,0) | |
1601 | currentam.BackgroundTransparency = 0 | |
1602 | currentam.BackgroundColor3 = BrickColor.new("Brown").Color | |
1603 | currentam.TextColor3 = BrickColor.new("White").Color | |
1604 | currentam.Text = CurrentAmmo | |
1605 | currentam.FontSize = "Size18" | |
1606 | repeat | |
1607 | wait() | |
1608 | pcall(function() | |
1609 | img.Size = UDim2.new(1*(Ammo/MaxAmmo),0,1,0) | |
1610 | percent.Text = Ammo.."/".. MaxAmmo | |
1611 | currentam.Text = CurrentAmmo | |
1612 | end) | |
1613 | until SG.Parent == nil | |
1614 | end)) | |
1615 | Character.Humanoid.WalkSpeed = 50 | |
1616 | --Mediafire |