View difference between Paste ID: jtbkEBue and E8d847f5
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2-
--Converted with ttyyuu12345's model to script plugin v4
2+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do print("FE Compatibility code V2 by Mokiros")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end --Converted with ttyyuu12345's model to script plugin v4
6
function sandbox(var,func)
7
	local env = getfenv(func)
8
	local newenv = setmetatable({},{
9
		__index = function(self,k)
10
			if k=="script" then
11
				return var
12
			else
13
				return env[k]
14
			end
15
		end,
16
	})
17
	setfenv(func,newenv)
18
	return func
19
end
20
cors = {}
21
mas = Instance.new("Model",game:GetService("Lighting"))
22
Tool0 = Instance.new("Tool")
23
Part1 = Instance.new("Part")
24
SpecialMesh2 = Instance.new("SpecialMesh")
25
Sound3 = Instance.new("Sound")
26
Sound4 = Instance.new("Sound")
27
Sound5 = Instance.new("Sound")
28
Sound6 = Instance.new("Sound")
29
Sound7 = Instance.new("Sound")
30
Sound8 = Instance.new("Sound")
31
Script9 = Instance.new("Script")
32
Script10 = Instance.new("Script")
33
Script11 = Instance.new("Script")
34
Sound12 = Instance.new("Sound")
35
Decal13 = Instance.new("Decal")
36
Sound14 = Instance.new("Sound")
37
Sound15 = Instance.new("Sound")
38
Sound16 = Instance.new("Sound")
39
Sound17 = Instance.new("Sound")
40
Attachment18 = Instance.new("Attachment")
41
Attachment19 = Instance.new("Attachment")
42
LocalScript20 = Instance.new("LocalScript")
43
Sound21 = Instance.new("Sound")
44
Animation22 = Instance.new("Animation")
45
Animation23 = Instance.new("Animation")
46
Animation24 = Instance.new("Animation")
47
Script25 = Instance.new("Script")
48
Animation26 = Instance.new("Animation")
49
Script27 = Instance.new("Script")
50
Script28 = Instance.new("Script")
51
LocalScript29 = Instance.new("LocalScript")
52
LocalScript30 = Instance.new("LocalScript")
53
Folder31 = Instance.new("Folder")
54
NumberValue32 = Instance.new("NumberValue")
55
Script33 = Instance.new("Script")
56
BindableEvent34 = Instance.new("BindableEvent")
57
LocalScript35 = Instance.new("LocalScript")
58
RemoteFunction36 = Instance.new("RemoteFunction")
59
Animation37 = Instance.new("Animation")
60
Animation38 = Instance.new("Animation")
61
Animation39 = Instance.new("Animation")
62
LocalScript40 = Instance.new("LocalScript")
63
Script41 = Instance.new("Script")
64
Sound42 = Instance.new("Sound")
65
LocalScript43 = Instance.new("LocalScript")
66
Tool0.Name = "Scythe Of Infinte Singularity"
67
Tool0.Parent = mas
68
Tool0.GripForward = Vector3.new(-1, -0, -0)
69
Tool0.GripPos = Vector3.new(0.600000024, 0, -2)
70
Tool0.GripRight = Vector3.new(0, 1, 0)
71
Tool0.GripUp = Vector3.new(0, 0, 1)
72
Tool0.ToolTip = "RAINBOW"
73
Part1.Name = "Handle"
74
Part1.Parent = Tool0
75
Part1.BrickColor = BrickColor.new("Bright bluish green")
76
Part1.Rotation = Vector3.new(-90, 0, 0)
77
Part1.FormFactor = Enum.FormFactor.Custom
78
Part1.Size = Vector3.new(2.51999784, 0.200000003, 6.0600009)
79
Part1.CFrame = CFrame.new(4.00994921, 3.03003311, -18.1099739, 1, -2.86932411e-18, -1.03679744e-17, 1.03679761e-17, 5.36441803e-07, 0.999999881, -2.86931956e-18, -0.999999881, 5.36441803e-07)
80
Part1.Color = Color3.new(0, 0.560784, 0.611765)
81
Part1.Position = Vector3.new(4.00994921, 3.03003311, -18.1099739)
82
Part1.Orientation = Vector3.new(-89.9700012, 0, 0)
83
Part1.Color = Color3.new(0, 0.560784, 0.611765)
84
SpecialMesh2.Parent = Part1
85
SpecialMesh2.MeshId = "http://www.roblox.com/asset/?id=50880202 "
86
SpecialMesh2.Scale = Vector3.new(2.5, 2.5, 2.5)
87
SpecialMesh2.MeshType = Enum.MeshType.FileMesh
88
SpecialMesh2.Scale = Vector3.new(2.5, 2.5, 2.5)
89
Sound3.Name = "BigSlash"
90
Sound3.Parent = Part1
91
Sound3.Pitch = 0.69999998807907
92
Sound3.SoundId = "rbxassetid://186936370"
93
Sound3.Volume = 1
94
Sound4.Name = "Blood"
95
Sound4.Parent = Part1
96
Sound4.Pitch = 0.5
97
Sound4.SoundId = "rbxassetid://96667969"
98
Sound4.TimePosition = 0.05
99
Sound4.Volume = 1
100
Sound5.Name = "Hit"
101
Sound5.Parent = Part1
102
Sound5.Pitch = 0.5
103
Sound5.SoundId = "rbxassetid://96667969"
104
Sound5.TimePosition = 0.05
105
Sound5.Volume = 2
106
Sound6.Parent = Part1
107
Sound6.SoundId = "rbxasset://sounds/SwordSlash.wav"
108
Sound6.Volume = 1
109
Sound7.Name = "Swing"
110
Sound7.Parent = Part1
111
Sound7.SoundId = "rbxassetid://169310429"
112
Sound7.Volume = 1
113
Sound8.Name = "SwingSpecial"
114
Sound8.Parent = Part1
115
Sound8.Pitch = 1.0759999752045
116
Sound8.SoundId = "rbxassetid://821439273"
117
Sound8.Volume = 3
118
Script9.Name = "SpecialDamage"
119
Script9.Parent = Part1
120
Script9.Disabled = true
121
table.insert(cors,sandbox(Script9,function()
122
function onTouched(part)
123
	local h = part.Parent:findFirstChild("Humanoid")
124
	if h~=nil then
125
		h.Health = h.Health -30 -- plus 10 damage
126
		script.Disabled = true
127
		script.Parent.Hit:Play()
128
	--	script.Parent.Fire.Enabled = false
129
		if h.Health == 0 then
130
			print("Killed Player")
131
			end
132
local m = math.random(1,11)
133
134
if m == 1 then -- bleeding effect
135
	
136
	script.Parent.Blood:Play()
137
	print("Blood")
138
	h.Health = h.Health -5
139
	wait(1)
140
	print("-3 health")
141
	h.Health = h.Health -3
142
	wait(0.5)
143
	print("-3 health")
144
	h.Health = h.Health -3
145
	wait(0.5)
146
	print("-3 health")
147
	h.Health = h.Health -3
148
	wait(0.5)
149
	print("-3 health")
150
	h.Health = h.Health -3
151
	wait(0.5)
152
	print("-3 health")
153
	h.Health = h.Health -3
154
	wait(0.5)
155
	print("-3 health")
156
	h.Health = h.Health -3
157
end
158
if m == 2 then
159
print("*Critical Hit*")
160
h.Health = h.Health -40 -- Gives a damage boost
161
script.Parent.BigSlash:Play()
162
163
end
164
if m == 3 then
165
print("Clean Cut")
166
h.Health = h.Health -20
167
h.PlatformStand = true
168
h.WalkSpeed = 12
169
h.JumpPower = 0
170
wait(0.5)
171
h.PlatformStand = false
172
wait(9.5)
173
h.JumpPower = 50
174
h.WalkSpeed = 16
175
end
176
if m == 4 then
177
print("Broken Armor")
178
h.MaxHealth = 50
179
wait()
180
h.Health = h.Health -20
181
wait(10)
182
h.MaxHealth = 100
183
184
end
185
if m == 5 then
186
print("Hit")
187
h.Health = h.Health -15
188
end
189
if m == 6 then
190
	h.Health = h.Health -10
191
print("Hit")
192
end
193
if m == 7 then
194
print("Hit")
195
h.Health = h.Health -25
196
end
197
if m == 8 then
198
print("Hit")
199
h.Health = h.Health -20
200
end
201
if m == 9 then
202
print("Broken Armor")
203
h.MaxHealth = 50
204
wait()
205
h.Health = h.Health -20
206
wait(10)
207
h.MaxHealth = 100
208
209
end
210
if m == 10 then
211
script.Parent.Blood:Play()
212
	print("Blood")
213
	h.Health = h.Health -5
214
	wait(1)
215
	print("-3 health")
216
	h.Health = h.Health -3
217
	wait(0.5)
218
	print("-3 health")
219
	h.Health = h.Health -3
220
	wait(0.5)
221
	print("-3 health")
222
	h.Health = h.Health -3
223
	wait(0.5)
224
	print("-3 health")
225
	h.Health = h.Health -3
226
	wait(0.5)
227
	print("-3 health")
228
	h.Health = h.Health -3
229
	wait(0.5)
230
	print("-3 health")
231
	h.Health = h.Health -3
232
	end
233
	if m == 11 then
234
print("Hit")
235
h.Health = h.Health -15
236
end
237
238
239
			
240
	end
241
end
242
243
script.Parent.Touched:connect(onTouched)
244
end))
245
Script10.Name = "SwordEffect"
246
Script10.Parent = Part1
247
table.insert(cors,sandbox(Script10,function()
248
function onTouched(part)
249
	local h = part.Parent:findFirstChild("Humanoid")
250
	if h~=nil then
251
		h.Health = h.Health -20 -- plus 10 damage
252
		script.Disabled = true
253
		script.Parent.Hit:Play()
254
	--	script.Parent.Fire.Enabled = false
255
		if h.Health == 0 then
256
			print("Killed Player")
257
			end
258
local m = math.random(1,11)
259
260
if m == 1 then -- bleeding effect
261
	
262
	script.Parent.Blood:Play()
263
	print("Blood")
264
	h.Health = h.Health -5123
265
	wait(1)
266
	print("-3 health")
267
	h.Health = h.Health -3132
268
	wait(0.5)
269
	print("-3 health")
270
	h.Health = h.Health -3123
271
	wait(0.5)
272
	print("-3 health")
273
	h.Health = h.Health -3324
274
	wait(0.5)
275
	print("-3 health")
276
	h.Health = h.Health -3768
277
	wait(0.5)
278
	print("-3 health")
279
	h.Health = h.Health -3345
280
	wait(0.5)
281
	print("-3 health")
282
	h.Health = h.Health -38980
283
end
284
if m == 2 then
285
print("*Critical Hit*")
286
h.Health = h.Health -402343 -- Gives a damage boost
287
script.Parent.BigSlash:Play()
288
289
end
290
if m == 3 then
291
print("Clean Cut")
292
h.Health = h.Health -34
293
h.PlatformStand = true
294
h.WalkSpeed = 0
295
h.JumpPower = 0
296
wait(0.5)
297
h.PlatformStand = false
298
wait(9.5)
299
h.JumpPower = 30
300
h.WalkSpeed = 12
301
end
302
if m == 4 then
303
print("Broken Armor")
304
h.MaxHealth = 21
305
wait()
306
h.Health = h.Health -20
307
wait(10)
308
h.MaxHealth = 34
309
310
end
311
if m == 5 then
312
print("Hit")
313
h.Health = h.Health -15
314
end
315
if m == 6 then
316
	h.Health = h.Health -10
317
print("Hit")
318
end
319
if m == 7 then
320
print("Hit")
321
h.Health = h.Health -25
322
end
323
if m == 8 then
324
print("Hit")
325
h.Health = h.Health -20
326
end
327
if m == 9 then
328
print("Broken Armor")
329
h.MaxHealth = 50
330
wait()
331
h.Health = h.Health -20
332
wait(10)
333
h.MaxHealth = 100
334
335
end
336
if m == 10 then
337
script.Parent.Blood:Play()
338
	print("Blood")
339
	h.Health = h.Health -5
340
	wait(1)
341
	print("-3 health")
342
	h.Health = h.Health -3
343
	wait(0.5)
344
	print("-3 health")
345
	h.Health = h.Health -3
346
	wait(0.5)
347
	print("-3 health")
348
	h.Health = h.Health -3
349
	wait(0.5)
350
	print("-3 health")
351
	h.Health = h.Health -3
352
	wait(0.5)
353
	print("-3 health")
354
	h.Health = h.Health -3
355
	wait(0.5)
356
	print("-3 health")
357
	h.Health = h.Health -3
358
	end
359
	if m == 11 then
360
print("Hit")
361
h.Health = h.Health -15
362
end
363
364
365
			
366
	end
367
end
368
369
script.Parent.Touched:connect(onTouched)
370
end))
371
Script11.Parent = Part1
372
table.insert(cors,sandbox(Script11,function()
373
while true do
374
script.Parent.Color = Color3.new(math.random(), math.random(), math.random())
375
wait(0.4)
376
end
377
378
end))
379
Sound12.Name = "BOOM"
380
Sound12.Parent = Part1
381
Sound12.SoundId = "rbxassetid://156677028"
382
Sound12.Volume = 0.69999998807907
383
Sound12.Looped = true
384
Decal13.Parent = Part1
385
Decal13.Transparency = 0.64999997615814
386
Decal13.Texture = "http://www.roblox.com/asset/?id=381637861"
387
Decal13.Face = Enum.NormalId.Bottom
388
Sound14.Name = "dash"
389
Sound14.Parent = Part1
390
Sound14.SoundId = "rbxassetid://25256253"
391
Sound15.Name = "lunge"
392
Sound15.Parent = Part1
393
Sound15.SoundId = "rbxassetid://220833976"
394
Sound15.Volume = 1
395
Sound16.Name = "overhead"
396
Sound16.Parent = Part1
397
Sound16.SoundId = "rbxassetid://220834000"
398
Sound16.Volume = 1
399
Sound17.Name = "slash"
400
Sound17.Parent = Part1
401
Sound17.SoundId = "rbxassetid://220833967"
402
Sound17.Volume = 1
403
Attachment18.Parent = Part1
404
Attachment18.Rotation = Vector3.new(0, 0, 90)
405
Attachment18.CFrame = CFrame.new(0.199999988, 0.100000001, 2.12999988, 0, -1, 0, 1, 0, -0, 0, 0, 1)
406
Attachment18.Position = Vector3.new(0.199999988, 0.100000001, 2.12999988)
407
Attachment18.Axis = Vector3.new(0, 1, 0)
408
Attachment18.Orientation = Vector3.new(0, 0, 90)
409
Attachment19.Parent = Part1
410
Attachment19.Rotation = Vector3.new(0, 0, 90)
411
Attachment19.CFrame = CFrame.new(0.579999983, 0.100000001, 0.0599999987, 0, -1, 0, 1, 0, -0, 0, 0, 1)
412
Attachment19.Position = Vector3.new(0.579999983, 0.100000001, 0.0599999987)
413
Attachment19.Axis = Vector3.new(0, 1, 0)
414
Attachment19.Orientation = Vector3.new(0, 0, 90)
415
LocalScript20.Name = "Local Gui"
416
LocalScript20.Parent = Tool0
417
table.insert(cors,sandbox(LocalScript20,function()
418
Tool = script.Parent
419
420
local stillEquipped = false
421
422
function onEquippedLocal(mouse)
423
	stillEquipped = true
424
	if mouse == nil then 
425
		print("Mouse not found")
426
		return
427
	end
428
	while stillEquipped do 
429
		print("Setting Mouse to go")
430
		mouse.Icon = "rbxasset://textures\\GunCursor.png"
431
		while Tool.Enabled and stillEquipped do 
432
			wait(0.01)
433
		end
434
		print("Setting Mouse to wait")
435
		mouse.Icon = "rbxasset://textures\\GunWaitCursor.png"
436
		while not Tool.Enabled and stillEquipped do 
437
			wait(0.01)
438
		end	
439
	end
440
end
441
442
443
function onUnequippedLocal()
444
	stillEquipped = false
445
end
446
447
Tool.Equipped:connect(onEquippedLocal)
448
Tool.Unequipped:connect(onUnequippedLocal)
449
end))
450
Sound21.Name = "EvilLaugh"
451
Sound21.Parent = Tool0
452
Sound21.Pitch = 1.1000000238419
453
Sound21.SoundId = "rbxassetid://177528044"
454
Sound21.Volume = 1
455
Animation22.Name = "SlashAnim"
456
Animation22.Parent = Tool0
457
Animation22.AnimationId = "http://www.roblox.com/Asset?ID=27763344"
458
Animation23.Name = "TwoHandAnim"
459
Animation23.Parent = Tool0
460
Animation23.AnimationId = "http://www.roblox.com/Asset?ID=27758613"
461
Animation24.Name = "Slash"
462
Animation24.Parent = Tool0
463
Animation24.AnimationId = "rbxassetid://74897796"
464
Script25.Name = "All animations"
465
Script25.Parent = Animation24
466
table.insert(cors,sandbox(Script25,function()
467
while true do
468
	script.Parent.AnimationId="http://www.roblox.com/Asset?ID=74894663"
469
	wait(0.001)--Default swing1
470
	script.Parent.AnimationId="http://www.roblox.com/Asset?ID=74813494"
471
	wait(0.001)--Default swing2
472
end
473
end))
474
Animation26.Name = "SwingAnim2"
475
Animation26.Parent = Tool0
476
Animation26.AnimationId = "rbxassetid://74897796"
477
Script27.Name = "All animations"
478
Script27.Parent = Animation26
479
table.insert(cors,sandbox(Script27,function()
480
while true do
481
	script.Parent.AnimationId="http://www.roblox.com/Asset?ID=86313418"
482
	wait(0.001)--Default swing1
483
	script.Parent.AnimationId="http://www.roblox.com/Asset?ID=86313260"
484
	wait(0.001)--Default swing2
485
end
486
end))
487
Script28.Parent = Tool0
488
table.insert(cors,sandbox(Script28,function()
489
local Tool = script.Parent
490
local Sword = Tool.Handle
491
492
local SlashV = script.Parent.Handle.Sound
493
494
495
local myCharacter
496
local myPlayer
497
local myHumanoid
498
local myTorso
499
local myRightArm
500
local myRightGrip
501
502
local debris = game:GetService("Debris")
503
local runServ = game:GetService("RunService")
504
505
--local SlashSound = Instance.new("Sound")
506
--.SoundId = "rbxasset://sounds\\SwordSlash.wav"
507
--SlashSound.EmitterSize = 10
508
--SlashSound.MaxDistance = 10000
509
--SlashSound.Parent = Tool
510
--SlashSound.Volume = 1
511
--SlashSound.Pitch = 1
512
local Whoosh1Sound
513
local Whoosh2Sound
514
515
local SlashAnim
516
local SpecialAnim
517
518
local lastAttackTime = 0
519
local thisAttackTime
520
521
local TOUCH_DAMAGE = 0
522
local SLASH_DAMAGE = 0
523
--local SPECIAL_DAMAGE = 10
524
525
local damage = TOUCH_DAMAGE
526
527
local damageCo	--Coroutine to ensure that slash damage actually gets applied sometimes.
528
529
Tool.Enabled = true
530
531
function tagHumanoid(humanoid, player)
532
	if humanoid ~= nil then 
533
		creator = Instance.new("ObjectValue")
534
		creator.Name = "creator"
535
		creator.Value = player
536
		creator.Parent = humanoid
537
		debris:addItem(creator, 1)
538
	end	
539
end
540
541
function untagHumanoid(humanoid)
542
	if humanoid ~= nil then
543
		local creatorTag = humanoid:FindFirstChild("creator")
544
		if creatorTag then creatorTag:Remove() end
545
	end
546
end
547
548
function blow(hit)
549
	if hit.Parent then 
550
		local hitHumanoid = hit.Parent:FindFirstChild("Zombie")
551
		myCharacter = Tool.Parent
552
		myHumanoid = myCharacter:FindFirstChild("Zombie")
553
		myPlayer = game.Players:GetPlayerFromCharacter(myCharacter)
554
		if hitHumanoid ~= nil and myHumanoid ~= nil and myHumanoid ~= hitHumanoid then
555
			myRightArm = myCharacter:FindFirstChild("Right Arm")
556
			if myRightArm then 
557
				myRightGrip = myRightArm:FindFirstChild("RightGrip")
558
				if myRightGrip and (myRightGrip.Part0 == Sword or myRightGrip.Part1 == Sword) then 
559
					tagHumanoid(hitHumanoid, myPlayer)
560
					hitHumanoid:TakeDamage(damage)
561
					wait(1)
562
					untagHumanoid(hitHumanoid)
563
				end
564
			end
565
		end
566
	end
567
end
568
569
function damageChanger()
570
	damage = SLASH_DAMAGE
571
	script.Parent.Handle.Sounds.Disabled = false
572
	wait(1)
573
	damage = TOUCH_DAMAGE
574
	script.Parent.Handle.Sounds.Disabled = true
575
end
576
577
function slash()
578
	-- We actually want to recreate the coroutine every time, since otherwise we'd have multiple functions
579
	--   trying to switch back and forth between the different damages constantly if we slashed multiple
580
	--   times.
581
	damageCo = coroutine.create(damageChanger)
582
	coroutine.resume(damageCo)
583
584
	--if Whoosh1Sound then Whoosh1Sound:Stop() end
585
	--if Whoosh2Sound then Whoosh2Sound:Stop() end
586
	--if SpecialAnim then SpecialAnim:Stop() end
587
	
588
	if SlashV then SlashV:Play() end
589
	if SlashAnim then SlashAnim:Play() end
590
--	script.Parent.Handle.Fire.Enabled = true
591
592
	--Tool.GripUp = Vector3.new(0.707, 0, 0.707)
593
594
	script.Parent.Handle.SwordEffect.Disabled = false
595
	script.Parent.Handle.Swing:Play()
596
	
597
	wait(0.6)
598
	--script.Parent.Handle.Fire.Enabled = false
599
	Tool.GripUp = Vector3.new(0, 0, 1)
600
	script.Parent.Handle.SwordEffect.Disabled = true
601
	wait(0.5)
602
end
603
604
--function special()
605
	--damageCo = nil
606
	--damage = SPECIAL_DAMAGE
607
608
	--if SlashSound then SlashSound:Stop() end
609
	--if SlashAnim then SlashAnim:Stop() end
610
	
611
	--if SpecialAnim then SpecialAnim:Play() end
612
	
613
614
	--wait(0.00001)
615
	--if Whoosh1Sound then Whoosh1Sound:Play() end
616
	--wait(.2)
617
	--if Whoosh2Sound then Whoosh2Sound:Play() end
618
	--wait(2)
619
	
620
	--damage = TOUCH_DAMAGE
621
	
622
--end
623
624
function onActivated()
625
	-- Checking for double clicks is based on the sword standard.
626
627
	-- Check that tool is enabled,
628
	if not Tool.Enabled then return end
629
	Tool.Enabled = false
630
	-- And that character has use of his right arm.
631
	myCharacter = Tool.Parent
632
	if not myCharacter then return end
633
	myHumanoid = myCharacter:FindFirstChild("Humanoid")
634
	if not myHumanoid then return end
635
	RightArm = myCharacter:FindFirstChild("Right Arm")
636
	if not RightArm then return end
637
638
	-- Get the time, to determine whether it was a double click or not.
639
	thisAttackTime = runServ.Stepped:wait()
640
641
	if (thisAttackTime - lastAttackTime < 0) then	-- It was a double click.
642
		--SpecialAnim = myHumanoid:LoadAnimation(Tool.SlashNStabAttempt2)
643
		--Whoosh1Sound = Tool:FindFirstChild("Whoosh1")
644
		--Whoosh2Sound = Tool:FindFirstChild("Whoosh2")
645
		--special()
646
	else	-- It was a single click.
647
		SlashAnim = myHumanoid:LoadAnimation(Tool.Slash)
648
		slash()
649
	end
650
	
651
	lastAttackTime = thisAttackTime
652
	Tool.Enabled = true
653
end
654
655
function onUnequipped()	
656
	if SlashV then SlashV:Stop() end
657
	if SlashAnim then SlashAnim:Stop() end
658
	--if Whoosh1Sound then Whoosh1Sound:Stop() end
659
	--if Whoosh2Sound then Whoosh2Sound:Stop() end
660
	--if SpecialAnim then SpecialAnim:Stop() end
661
end
662
663
Tool.Activated:connect(onActivated)
664
Tool.Unequipped:connect(onUnequipped)
665
666
Sword.Touched:connect(blow)
667
668
669
local down = Tool:WaitForChild("MouseDown")
670
down.Event:connect(onActivated)
671
672
end))
673
LocalScript29.Name = "Local Gui"
674
LocalScript29.Parent = Tool0
675
table.insert(cors,sandbox(LocalScript29,function()
676
Tool = script.Parent
677
678
local stillEquipped = false
679
680
function onEquippedLocal(mouse)
681
	stillEquipped = true
682
	if mouse == nil then 
683
		print("Mouse not found")
684
		return
685
	end
686
	while stillEquipped do 
687
		print("Setting Mouse to go")
688
		mouse.Icon = "rbxasset://textures\\GunCursor.png"
689
		while Tool.Enabled and stillEquipped do 
690
			wait(0.01)
691
		end
692
		print("Setting Mouse to wait")
693
		mouse.Icon = "rbxasset://textures\\GunWaitCursor.png"
694
		while not Tool.Enabled and stillEquipped do 
695
			wait(0.01)
696
		end	
697
	end
698
end
699
700
701
function onUnequippedLocal()
702
	stillEquipped = false
703
end
704
705
Tool.Equipped:connect(onEquippedLocal)
706
Tool.Unequipped:connect(onUnequippedLocal)
707
end))
708
LocalScript30.Name = "Special"
709
LocalScript30.Parent = Tool0
710
LocalScript30.Disabled = true
711
table.insert(cors,sandbox(LocalScript30,function()
712
local Tool = script.Parent
713
local Staff = Tool.Handle
714
715
local vCharacter
716
local myHumanoid
717
718
719
local animate
720
721
local slamAnim
722
local swingAnim2
723
function onEquipped(mouse)
724
	vCharacter = Tool.Parent
725
	myHumanoid = vCharacter:FindFirstChild("Humanoid")
726
	
727
	if mouse then 
728
		mouse.KeyDown:connect(function(key) 
729
			if key:lower() == "q" and myHumanoid then
730
				animate = Tool:FindFirstChild("Animate")
731
				swingAnim2 = myHumanoid:LoadAnimation(Tool.SwingAnim2)				
732
				if swingAnim2 then swingAnim2:Play() end
733
				Staff.SwingSpecial:Play()
734
				script.Settings.CoolDown.Value = script.Settings.CoolDown.Value -1
735
				
736
				script.Timer.Disabled = false
737
				script.Disabled = true
738
				script.Parent.Handle.SpecialDamage.Disabled = false
739
			
740
	
741
				
742
	lol = script.Parent.Parent.Torso
743
	lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 200 -- Foward Dash
744
	wait(0.1)
745
	lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 250 -- Foward Dash
746
	wait(0.1)
747
	lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 130 -- Foward Dash
748
	wait(0.1)
749
lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 320 -- Foward Dash
750
	wait(0.1)
751
	lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 123 -- Foward Dash
752
	wait(0.1)
753
	lol.Velocity = script.Parent.Parent.Head.CFrame.lookVector * 200 -- Foward Dash
754
	wait(0.1)
755
	script.Parent.Handle.SpecialDamage.Disabled = true
756
	
757
				
758
759
			end
760
		end)
761
	end
762
end
763
764
function onUnequipped()
765
	if slamAnim then slamAnim:Stop() end
766
	if swingAnim2 then swingAnim2:Stop() end
767
end
768
769
Tool.Equipped:connect(onEquipped)
770
Tool.Unequipped:connect(onUnequipped)
771
772
animate = Tool:FindFirstChild("Animate")
773
while animate == nil do 
774
	animate = Tool:FindFirstChild("Animate")
775
	wait()
776
end
777
778
animate.Changed:connect(function()
779
	animate = Tool:FindFirstChild("Animate")
780
	if animate and animate.Value == 1 and myHumanoid then 
781
		slamAnim = myHumanoid:LoadAnimation(Tool.SlamAnim)		
782
		if slamAnim then slamAnim:Play() end
783
		myHumanoid.Jump = true
784
		wait(2.2)	
785
		animate.Value = 0
786
	end
787
end)
788
				
789
				--Tool.GripUp = Vector3.new(0, 0.2, -0.8)	
790
				--wait(0.0001)
791
				--Tool.GripUp = Vector3.new(0, 0.4, -0.6)
792
				--wait(0.0001)
793
				--Tool.GripUp = Vector3.new(0, 0.6, -0.4)
794
				--wait(0.0001)
795
				--Tool.GripUp = Vector3.new(0, 0.8, -0.2)	
796
				--wait(0.0001)
797
				--Tool.GripUp = Vector3.new(0, 1, -0.0)
798
				--wait(0.0001)
799
				--Tool.GripUp = Vector3.new(0, 0.8, 0.2)
800
				--wait(0.0001)
801
				--Tool.GripUp = Vector3.new(0, 0.6, 0.4)
802
				--wait(0.0001)
803
				--Tool.GripUp = Vector3.new(0, 0.4, 0.6)
804
			--	wait(0.0001)
805
			--	Tool.GripUp = Vector3.new(0, 0.2, 0.8)
806
			--	wait(0.0001)
807
			--	Tool.GripUp = Vector3.new(0, 0.0, 1)
808
			--	wait(0.0001)
809
			--	Tool.GripUp = Vector3.new(0.0, -0.2, 0.8)
810
			--	wait(0.0001)
811
			--	Tool.GripUp = Vector3.new(0, -0.4, 0.6)
812
			--	wait(0.0001)
813
			--	Tool.GripUp = Vector3.new(0.0, -0.6, 0.4)
814
			--	wait(0.0001)
815
			--	Tool.GripUp = Vector3.new(0, -0.8, 0.2)
816
			--	wait(0.0001)
817
			--	Tool.GripUp = Vector3.new(0.0, -1, 0.0)
818
			--	wait(0.0001)
819
			--	Tool.GripUp = Vector3.new(0, -0.8, -0.2)
820
			--	wait(0.0001)
821
			--	Tool.GripUp = Vector3.new(0, -0.6, -0.4)
822
			--	wait(0.0001)
823
			--	Tool.GripUp = Vector3.new(0, -0.4, -0.6)
824
			--	wait(0.0001)
825
			--	Tool.GripUp = Vector3.new(0, -0.2, -0.8)
826
			--	wait(0.0001)
827
			--	Tool.GripUp = Vector3.new(0, 0, -1)
828
			--	wait(0.0001)
829
				
830
				--Full loop around
831
832
end))
833
Folder31.Name = "Settings"
834
Folder31.Parent = LocalScript30
835
NumberValue32.Name = "CoolDown"
836
NumberValue32.Parent = Folder31
837
Script33.Name = "Timer"
838
Script33.Parent = LocalScript30
839
table.insert(cors,sandbox(Script33,function()
840
while true do
841
	wait(1)
842
	script.Parent.Parent.Special.Disabled = false
843
	script.Parent.Settings.CoolDown.Value = script.Parent.Settings.CoolDown.Value +1
844
	
845
	wait(6)
846
end
847
848
849
end))
850
BindableEvent34.Name = "MouseDown"
851
BindableEvent34.Parent = Tool0
852
LocalScript35.Name = "DestinyScript"
853
LocalScript35.Parent = Tool0
854
table.insert(cors,sandbox(LocalScript35,function()
855
-- Judgement -- 
856
-- Grim Repear FTW --
857
local Tool = script.Parent
858
local Scythe = Tool.Handle
859
860
r = game:GetService("RunService")
861
862
Tool.Enabled = true 
863
864
local vCharacter
865
866
local damage = 546
867
868
local scytheAOE = Vector3.new(22.5, 22.5, 22.5)
869
870
local chars = {}
871
local foundChar
872
local slashAnim
873
874
local lastKeyDown = 0
875
local dashTime = 0
876
local lastSlash = 0
877
878
local keyConnection = nil
879
880
local laughSound
881
882
local torsoFrame = {}
883
884
local co = nil
885
886
math.randomseed(1234)
887
888
local SlashSound = Instance.new("Sound")
889
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
890
SlashSound.Parent = Scythe
891
SlashSound.Volume = 1.0
892
893
894
function tagHumanoid(humanoid, player)
895
	if humanoid ~= nil then 
896
		creatorTag = Instance.new("ObjectValue")
897
		creatorTag.Name = "creator"
898
		creatorTag.Value = player
899
		creatorTag.Parent =  humanoid
900
	end
901
end
902
903
function untagHumanoid(humanoid)
904
	if humanoid ~= nil then 
905
		tag = humanoid:FindFirstChild("creator")
906
		if tag ~= nil then 
907
			tag:Remove() 
908
		end
909
	end
910
end
911
912
function blow(hit)
913
	tempDamage = lunge_damage
914
	local humanoid = hit.Parent:findFirstChild("Humanoid")
915
	local vCharacter = Tool.Parent
916
	local vPlayer = game.Players:playerFromCharacter(vCharacter)
917
	local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
918
	if humanoid~=nil and humanoid ~= hum and hum ~= nil then		
919
		-- final check, make sure sword is in-hand
920
		local right_arm = vCharacter:FindFirstChild("Right Arm")
921
		if (right_arm ~= nil) then
922
			local joint = right_arm:FindFirstChild("RightGrip")
923
			if (joint ~= nil and (joint.Part0 == Scythe or joint.Part1 == Scythe)) then
924
				tagHumanoid(humanoid, vPlayer)					
925
				humanoid:TakeDamage(damage)
926
				wait(1)
927
				untagHumanoid(humanoid)				
928
			end
929
		end
930
	end
931
end
932
933
function slashIt(myHumanoid, myTorso)	
934
935
	damage = 15
936
937
	laughSound = Tool:FindFirstChild("EvilLaugh")
938
	if laughSound then laughSound:Play() end 
939
940
	
941
	myHumanoid.WalkSpeed = 0.0
942
943
	Tool.GripForward = Vector3.new(-0.5977, -0.6567, 0.4599)
944
	Tool.GripRight = Vector3.new(-0.7395, 0.6731, 0)
945
	Tool.GripUp = Vector3.new(0.3096, 0.3041, 0.888)
946
	
947
	parts = game.Workspace:FindPartsInRegion3(Region3.new(myTorso.Position - scytheAOE, myTorso.Position + scytheAOE), vCharacter, 100)
948
	for i = 1, #parts do 
949
		tempChar = parts[i].Parent
950
		tempTorso = tempChar:FindFirstChild("Torso")
951
		if tempTorso then 
952
			if tempTorso:FindFirstChild("scytheBV") == nil then 
953
				newBV = Instance.new("BodyVelocity")
954
				newBV.Name = "scytheBV"
955
				newBV.P = 100000
956
				newBV.maxForce = Vector3.new(newBV.P, newBV.P, newBV.P)
957
				distance = (tempTorso.Position - myTorso.Position).magnitude
958
				print(distance)
959
				newBV.velocity = (myTorso.Position -  tempTorso.Position).unit * 30/distance
960
				newBV.Parent = tempTorso			
961
			end
962
		end
963
	end
964
965
	bg = Instance.new("BodyGyro")
966
	bg.P = 100000
967
	bg.maxTorque = Vector3.new(bg.P, bg.P, bg.P)
968
	bg.Name = "BG"
969
970
	torsoFrame[1] = myTorso.CFrame * CFrame.Angles(0, 1*math.pi/3, 0) 
971
	torsoFrame[2] = myTorso.CFrame * CFrame.Angles(0, 2*math.pi/3, 0) 
972
	torsoFrame[3] = myTorso.CFrame * CFrame.Angles(0, math.pi, 0) 
973
	torsoFrame[4] = myTorso.CFrame * CFrame.Angles(0, 4*math.pi/3, 0) 
974
	torsoFrame[5] = myTorso.CFrame * CFrame.Angles(0, 5*math.pi/3, 0) 
975
	torsoFrame[6] = myTorso.CFrame 
976
977
	bg.Parent = myTorso
978
979
	for i = 1, 84 do 
980
		c = i%6 + 1
981
		bg.cframe = torsoFrame[c]
982
		wait(0.025)
983
	end	
984
985
	for i = 1, #parts do 
986
		sBV = parts[i]:FindFirstChild("scytheBV")
987
		if sBV then sBV:Remove() end
988
	end
989
990
	Tool.GripForward = Vector3.new(-1, 0, 0)
991
	Tool.GripRight = Vector3.new(0, 1, 0)
992
	Tool.GripUp = Vector3.new(0, 0, 1)
993
994
	bg:Remove()
995
	myHumanoid.WalkSpeed = 16.0
996
997
	wait(5.5)
998
	damage = 22.0
999
	
1000
end
1001
1002
function initiateScythe(key)
1003
	key = key:lower()
1004
	if key == "p" then 
1005
		print("CHECKING")
1006
		t = r.Stepped:wait()
1007
		if (t - lastKeyDown < 0.2) then dashTime = t end 
1008
		lastKeyDown = t		
1009
	end
1010
end
1011
1012
1013
function onActivated()
1014
	if Tool.Enabled == false then 
1015
		return
1016
	end
1017
1018
	Tool.Enabled = false
1019
	vCharacter = Tool.Parent
1020
	myTorso = vCharacter:FindFirstChild("Torso")
1021
	if myTorso == nil then
1022
		return
1023
	end
1024
	
1025
	myHumanoid = vCharacter:FindFirstChild("Humanoid")
1026
	if myHumanoid == nil then 
1027
		return
1028
	end	
1029
1030
	slashAnim = myHumanoid:LoadAnimation(Tool.SlashAnim)
1031
	
1032
1033
	children = vCharacter:GetChildren() 
1034
	for i =1, #children do 
1035
		if children[i].className == "Part" then 
1036
			children[i].Transparency = 0.5
1037
		end
1038
		if children[i].className == "Hat" then 
1039
			children[i].Handle.Transparency = 0.5
1040
		
1041
      end
1042
	end	
1043
1044
	t = r.Stepped:wait()
1045
	if t - dashTime < 0.2 then 			
1046
			print("Slashing")
1047
			slashIt(myHumanoid, myTorso)			
1048
	else		
1049
		if slashAnim then slashAnim:Play() end
1050
		if SlashSound then SlashSound:Play() end
1051
	end
1052
1053
	wait(1.0)
1054
1055
	Tool.Enabled = true 
1056
1057
end
1058
1059
function onEquipped(mouse)
1060
	vCharacter = Tool.Parent	
1061
	myHumanoid = vCharacter:FindFirstChild("Humanoid")
1062
	if myHumanoid then 
1063
		twoHandAnim = myHumanoid:LoadAnimation(Tool.TwoHandAnim)
1064
		if twoHandAnim then twoHandAnim:Play() end
1065
	end
1066
1067
	if mouse then 
1068
		keyConnection = mouse.KeyDown:connect(initiateScythe) 		
1069
	else 
1070
		print("No Mouse") 
1071
	end
1072
script.Parent.EvilLaugh:Play()
1073
script.Parent.Handle.BOOM:Play()
1074
end
1075
1076
function onUnequipped()
1077
1078
	Tool.Enabled = true
1079
1080
	if slashAnim then slashAnim:Stop() end
1081
	if laughSound then laughSound:Stop() end
1082
	if SlashSound then SlashSound:Stop() end
1083
1084
	if twoHandAnim then twoHandAnim:Stop() end
1085
1086
	myHumanoid = vCharacter:FindFirstChild("Humanoid")
1087
script.Parent.Handle.BOOM:Stop()
1088
	script.Parent.EvilLaugh:Stop()
1089
myTorso = vCharacter:FindFirstChild("Torso")
1090
	if myTorso then 
1091
		bg = myTorso:FindFirstChild("BG")
1092
		bv = myTorso:FindFirstChild("BV")
1093
		if bg then bg:Remove() end
1094
		if bv then bv:Remove() end
1095
	end
1096
1097
	if myHumanoid then myHumanoid.WalkSpeed = 16.0 end
1098
	
1099
end
1100
1101
Tool.Activated:connect(onActivated)
1102
Tool.Equipped:connect(onEquipped)
1103
Tool.Unequipped:connect(onUnequipped)
1104
1105
Scythe.Touched:connect(blow)
1106
1107
1108
1109
1110
end))
1111
RemoteFunction36.Parent = Tool0
1112
Animation37.Name = "thrustAnim"
1113
Animation37.Parent = Tool0
1114
Animation37.AnimationId = "rbxassetid://94161333"
1115
Animation38.Name = "slashAnim"
1116
Animation38.Parent = Tool0
1117
Animation38.AnimationId = "rbxassetid://94161088"
1118
Animation39.Name = "overheadAnim"
1119
Animation39.Parent = Tool0
1120
Animation39.AnimationId = "http://www.roblox.com/Asset?ID=94160738"
1121
LocalScript40.Name = "SwordControl"
1122
LocalScript40.Parent = Tool0
1123
table.insert(cors,sandbox(LocalScript40,function()
1124
wait()
1125
local player=game.Players.LocalPlayer
1126
local character=player.Character
1127
local mouse=player:GetMouse()
1128
local myhum=character.Humanoid
1129
1130
local tool=script.Parent
1131
local handle=tool.Handle
1132
1133
local sword=handle:Clone()
1134
1135
local event=tool:WaitForChild("RemoteFunction")
1136
local damage=42000 --damage dealt
1137
local speed=2 --how fast the weapon is
1138
local charge=false --can the weapon charge??
1139
local auto=true --can the weapon swing automatically?
1140
1141
local equipped=false
1142
local clicked=false
1143
local animations={}
1144
local sounds={}
1145
1146
local debris=game:GetService("Debris")
1147
1148
tool.Equipped:connect(function()
1149
	animations[1]=myhum:LoadAnimation(tool.slashAnim)
1150
	animations[2]=myhum:LoadAnimation(tool.thrustAnim)
1151
	animations[3]=myhum:LoadAnimation(tool.overheadAnim)
1152
	sounds[1]=handle.slash
1153
	sounds[2]=handle.lunge
1154
	sounds[3]=handle.overhead
1155
	equipped=true
1156
end)
1157
1158
tool.Unequipped:connect(function()
1159
	for i,animation in pairs(animations) do
1160
		animation:Stop()
1161
	end
1162
	equipped=false
1163
end)
1164
1165
handle.Touched:connect(function(part)
1166
	local hum=part.Parent:FindFirstChild("Humanoid")
1167
	local head=part.Parent:FindFirstChild("Head")
1168
	local hitplayer=game.Players:GetPlayerFromCharacter(part.Parent)
1169
	if clicked and hum~=nil and head~=nil then
1170
		if hum.Health>0 then
1171
			if hitplayer~=nil then
1172
				if hitplayer.TeamColor~=player.TeamColor and hitplayer:FindFirstChild("nopvp")==nil and player:FindFirstChild("nopvp")==nil then
1173
					event:InvokeServer("hit",{hum,damage})
1174
				end
1175
			else
1176
				event:InvokeServer("hit",{hum,damage})
1177
			end
1178
		end
1179
	end
1180
end)
1181
1182
local soundstage=1
1183
local animstage=1
1184
local chargeready=true
1185
local down=false
1186
local ready=true
1187
1188
mouse.Button1Down:connect(function()
1189
	down=true
1190
	while down and tool.Parent.ClassName=="Model" do
1191
		local mytorso=character:FindFirstChild("Torso")
1192
		if mytorso then
1193
			delay(0,function()
1194
				if clicked then
1195
					if chargeready and charge then
1196
						chargeready=false
1197
						--charging
1198
						local chargeforce=Instance.new('BodyVelocity',mytorso)
1199
						chargeforce.Name="ChargeVelocity"
1200
						chargeforce.maxForce=Vector3.new(100000, 100000, 100000)
1201
						chargeforce.velocity=(mouse.Hit.p*Vector3.new(1,0,1)-mytorso.CFrame.p*Vector3.new(1,0,1)).unit*150
1202
						mytorso.CFrame=CFrame.new(mytorso.CFrame.p,mytorso.CFrame.p+chargeforce.velocity)	
1203
						debris:AddItem(chargeforce,0.2)	
1204
						wait(1/speed)
1205
						chargeready=true
1206
						if clicked then
1207
							handle.dash:Play()
1208
						end
1209
					end
1210
				end
1211
			end)
1212
			wait()
1213
			if clicked==false then
1214
				sounds[soundstage]:Play()
1215
				animations[animstage]:Play()
1216
				animations[animstage]:AdjustSpeed(speed)
1217
				clicked=true
1218
				
1219
				spawn(function() 
1220
					local target
1221
					local closest=120
1222
					for _,instance in pairs(workspace:GetChildren()) do
1223
						local hum=instance:FindFirstChild("Humanoid")
1224
						local head=instance:FindFirstChild("Head")
1225
						if hum and head and instance~=character then
1226
							local dist=(head.Position-handle.Position).magnitude
1227
							if hum.Health>0 and dist<closest then
1228
								local hitplayer=game.Players:GetPlayerFromCharacter(instance)
1229
								if hitplayer~=nil then
1230
									if hitplayer.TeamColor~=player.TeamColor and hitplayer:FindFirstChild("nopvp")==nil and player:FindFirstChild("nopvp")==nil then
1231
										target=head
1232
										closest=dist
1233
									end
1234
								else
1235
									target=head
1236
									closest=dist
1237
								end	
1238
							end
1239
						end
1240
					end
1241
					
1242
					if target then
1243
						for i=10,20 do
1244
							spawn(function() event:InvokeServer("meteor",{damage,target}) end)
1245
							wait(.5/speed)
1246
						end
1247
					end
1248
				end)
1249
				
1250
				wait(1/speed)
1251
				if soundstage==3 then soundstage=1 else soundstage=soundstage+1 end
1252
				clicked=false
1253
				if animstage==3 then animstage=1 else animstage=animstage+1 end
1254
			else
1255
				break
1256
			end
1257
		end
1258
		if not auto then break end
1259
	end
1260
end)
1261
1262
mouse.Button1Up:connect(function()
1263
	down=false
1264
end)
1265
end))
1266
Script41.Name = "ServerMain"
1267
Script41.Parent = Tool0
1268
table.insert(cors,sandbox(Script41,function()
1269
local tool=script.Parent
1270
local handle=tool.Handle
1271
1272
local remotefunction=tool.RemoteFunction
1273
local debris=game:GetService("Debris")
1274
1275
function hit(humanoid,damage,player)
1276
	humanoid:TakeDamage(damage)
1277
	local hitmark=Instance.new("Decal")
1278
	hitmark.Texture="rbxassetid://263842702"
1279
	script.Hit:Play()
1280
	wait(0.6)
1281
	hitmark:Destroy()
1282
	for _,instance in pairs(humanoid:GetChildren()) do
1283
		if instance.Name=="creator" then
1284
			instance:Destroy()
1285
		end
1286
	end
1287
	local creator=Instance.new("ObjectValue",humanoid)
1288
	creator.Name="creator"
1289
	creator.Value=player	
1290
end
1291
1292
function remotefunction.OnServerInvoke(player,command,value)	
1293
	if command=="hit" then
1294
		hit(value[1],value[2],player)
1295
	elseif command=="trip" then
1296
		value.CFrame=value.CFrame*CFrame.Angles(0,0,math.rad(180))+Vector3.new(0,3,0)
1297
	elseif command=="meteor" then
1298
		local meteor=Instance.new("Part")
1299
		meteor.Name="meteor"
1300
		meteor.TopSurface="Smooth"
1301
		meteor.BottomSurface="Smooth"
1302
		meteor.Size=Vector3.new(4,4,4)
1303
		meteor.CanCollide=false
1304
		meteor.Shape="Ball"
1305
		meteor.BrickColor=BrickColor.Random()
1306
		meteor.Material="Neon"
1307
		meteor.CFrame=CFrame.new(handle.Position+Vector3.new(math.random(-10,10),20,math.random(-10,10)))
1308
		meteor.Parent=workspace	
1309
		
1310
		local rocketpropulsion=Instance.new("RocketPropulsion",meteor)
1311
		rocketpropulsion.TargetRadius=5
1312
		rocketpropulsion.MaxSpeed=1500
1313
		rocketpropulsion.MaxTorque=Vector3.new(40,40,0)
1314
		rocketpropulsion.MaxThrust=5000
1315
		rocketpropulsion.ThrustP=100
1316
		rocketpropulsion.ThrustD=5
1317
		rocketpropulsion.Target=value[2]	
1318
		rocketpropulsion:Fire()	
1319
		
1320
		rocketpropulsion.ReachedTarget:connect(function(part)
1321
			if value[2].Parent then
1322
				local hum=value[2].Parent:FindFirstChild("Humanoid")
1323
				local hitplayer=game.Players:GetPlayerFromCharacter(value[2].Parent)
1324
				if hum~=nil then
1325
					if hum.Health>0 then
1326
						if hitplayer~=nil then
1327
							if hitplayer.TeamColor~=player.TeamColor and hitplayer:FindFirstChild("nopvp")==nil and player:FindFirstChild("nopvp")==nil then
1328
								hit(hum,value[1],player)
1329
							end
1330
						else
1331
							hit(hum,value[1],player)
1332
						end
1333
					end
1334
					meteor:Destroy()
1335
				end
1336
			end
1337
		end)
1338
1339
		debris:AddItem(meteor,999999999999999999)	
1340
	end
1341
end
1342
1343
end))
1344
Sound42.Name = "Hit"
1345
Sound42.Parent = Script41
1346
Sound42.SoundId = "rbxassetid://160432334"
1347
LocalScript43.Name = "MouseIcon"
1348
LocalScript43.Parent = Tool0
1349
table.insert(cors,sandbox(LocalScript43,function()
1350
local MOUSE_ICON = 'rbxasset://textures/GunCursor.png'
1351
local RELOADING_ICON = 'rbxasset://textures/GunWaitCursor.png'
1352
1353
local Tool = script.Parent
1354
1355
local Mouse = nil
1356
1357
local function UpdateIcon()
1358
	if Mouse then
1359
		Mouse.Icon = Tool.Enabled and MOUSE_ICON or RELOADING_ICON
1360
	end
1361
end
1362
1363
local function OnEquipped(mouse)
1364
	Mouse = mouse
1365
	UpdateIcon()
1366
end
1367
1368
local function OnChanged(property)
1369
	if property == 'Enabled' then
1370
		UpdateIcon()
1371
	end
1372
end
1373
1374
Tool.Equipped:connect(OnEquipped)
1375
Tool.Changed:connect(OnChanged)
1376
1377
end))
1378
for i,v in pairs(mas:GetChildren()) do
1379
	v.Parent = game:GetService("Players").LocalPlayer.Backpack
1380
	pcall(function() v:MakeJoints() end)
1381
end
1382
mas:Destroy()
1383
for i,v in pairs(cors) do
1384
	spawn(function()
1385
		pcall(v)
1386
	end)
1387
end