View difference between Paste ID: SD2j9GBq and xhEQKusi
SHOW: | | - or go back to the newest paste.
1
-------------------------------------------------------------------------------------------------------------------
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,Mouse,mouse,UserInputService,ContextActionService = owner
4
do
5
	print("FE Compatibility code by Mokiros")
6
	script.Parent = Player.Character
7
8
	--RemoteEvent for communicating
9
	local Event = Instance.new("RemoteEvent")
10
	Event.Name = "UserInput_Event"
11
12
	--Fake event to make stuff like Mouse.KeyDown work
13
	local function fakeEvent()
14
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
15
		t.connect = t.Connect
16
		return t
17
	end
18
19
	--Creating fake input objects with fake variables
20
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
21
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
22
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
23
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
24
	end}
25
	--Merged 2 functions into one by checking amount of arguments
26
	CAS.UnbindAction = CAS.BindAction
27
28
	--This function will trigger the events that have been :Connect()'ed
29
	local function te(self,ev,...)
30
		local t = m[ev]
31
		if t and t._fakeEvent and t.Function then
32
			t.Function(...)
33
		end
34
	end
35
	m.TrigEvent = te
36
	UIS.TrigEvent = te
37
38
	Event.OnServerEvent:Connect(function(plr,io)
39
	    if plr~=Player then return end
40
		if io.isMouse then
41
			m.Target = io.Target
42
			m.Hit = io.Hit
43
		else
44
			local b = io.UserInputState == Enum.UserInputState.Begin
45
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
46
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
47
			end
48
			for _,t in pairs(CAS.Actions) do
49
				for _,k in pairs(t.Keys) do
50
					if k==io.KeyCode then
51
						t.Function(t.Name,io.UserInputState,io)
52
					end
53
				end
54
			end
55
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
56
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
57
	    end
58
	end)
59
	Event.Parent = NLS([==[
60
	local Player = game:GetService("Players").LocalPlayer
61
	local Event = script:WaitForChild("UserInput_Event")
62
63
	local UIS = game:GetService("UserInputService")
64
	local input = function(io,a)
65
		if a then return end
66
		--Since InputObject is a client-side instance, we create and pass table instead
67
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
68
	end
69
	UIS.InputBegan:Connect(input)
70
	UIS.InputEnded:Connect(input)
71
72
	local Mouse = Player:GetMouse()
73
	local h,t
74
	--Give the server mouse data 30 times every second, but only if the values changed
75
	--If player is not moving their mouse, client won't fire events
76
	while wait(1/30) do
77
		if h~=Mouse.Hit or t~=Mouse.Target then
78
			h,t=Mouse.Hit,Mouse.Target
79
			Event:FireServer({isMouse=true,Target=t,Hit=h})
80
		end
81
	end]==],Player.Character)
82
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
83
end
84
-------------------------------------------------------------------------------------------------------------------
85
86
local part = nil
87
local Hit = nil
88
89
function rayCast(Position, Direction, Range, Ignore)
90
return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) 
91
end 
92
93
local plr = owner
94
local good = true
95
local R15 = false
96
while plr.Character == nil or plr.Character:FindFirstChildOfClass('Humanoid') == nil do
97
	wait()
98
end
99
if plr.Character:FindFirstChildOfClass('Humanoid').RigType == Enum.HumanoidRigType.R15 then
100
	R15 = true
101
end
102
103
function makegui()
104
	-- Objects
105
106
local ScreenGui = Instance.new("ScreenGui")
107
local Frame = Instance.new("Frame")
108
local TextBox = Instance.new("TextLabel")
109
110
-- Properties
111
112
ScreenGui.Parent = plr.PlayerGui
113
114
Frame.Parent = ScreenGui
115
Frame.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
116
Frame.BackgroundTransparency = 0.5
117
Frame.BorderSizePixel = 0
118
Frame.Size = UDim2.new(1, 0, 0, 0)
119
120
TextBox.Parent = Frame
121
TextBox.BackgroundColor3 = Color3.new(1, 1, 1)
122
TextBox.BackgroundTransparency = 1
123
TextBox.Position = UDim2.new(0.05, 0, 0.05, 0)
124
TextBox.Size = UDim2.new(0.899999976, 0, 0.899999976, 0)
125
TextBox.Font = Enum.Font.Code
126
TextBox.FontSize = Enum.FontSize.Size14
127
TextBox.Text = ""
128
TextBox.TextColor3 = Color3.new(1, 1, 1)
129
TextBox.TextScaled = true
130
TextBox.TextSize = 14
131
TextBox.TextWrapped = true
132
Frame:TweenSize(UDim2.new(1, 0, 0.2, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
133
wait(1.5)
134
local text = "This script doesn't work in R15, sorry!"
135
for i=1,string.len(text) do
136
	TextBox.Text = string.sub(text,1,i)
137
	wait()
138
end
139
wait(2)
140
TextBox.Text = ""
141
Frame:TweenSize(UDim2.new(1, 0, 0, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
142
end
143
function makegui2()
144
	-- Objects
145
146
local ScreenGui = Instance.new("ScreenGui")
147
local Frame = Instance.new("Frame")
148
local TextBox = Instance.new("TextLabel")
149
150
-- Properties
151
152
ScreenGui.Parent = plr.PlayerGui
153
154
Frame.Parent = ScreenGui
155
Frame.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
156
Frame.BackgroundTransparency = 0.5
157
Frame.BorderSizePixel = 0
158
Frame.Size = UDim2.new(1, 0, 0, 0)
159
160
TextBox.Parent = Frame
161
TextBox.BackgroundColor3 = Color3.new(1, 1, 1)
162
TextBox.BackgroundTransparency = 1
163
TextBox.Position = UDim2.new(0.05, 0, 0.05, 0)
164
TextBox.Size = UDim2.new(0.899999976, 0, 0.899999976, 0)
165
TextBox.Font = Enum.Font.Code
166
TextBox.FontSize = Enum.FontSize.Size14
167
TextBox.Text = ""
168
TextBox.TextColor3 = Color3.new(1, 1, 1)
169
TextBox.TextScaled = true
170
TextBox.TextSize = 14
171
TextBox.TextWrapped = true
172
Frame:TweenSize(UDim2.new(1, 0, 0.2, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
173
wait(1.5)
174
local text = "This script doesn't work in non Filtering Enabled, sorry!"
175
for i=1,string.len(text) do
176
	TextBox.Text = string.sub(text,1,i)
177
	wait()
178
end
179
wait(2)
180
TextBox.Text = ""
181
Frame:TweenSize(UDim2.new(1, 0, 0, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
182
end
183
function makegui3()
184
	-- Objects
185
186
local ScreenGui = Instance.new("ScreenGui")
187
local Frame = Instance.new("Frame")
188
local TextBox = Instance.new("TextLabel")
189
190
-- Properties
191
192
ScreenGui.Parent = plr.PlayerGui
193
194
Frame.Parent = ScreenGui
195
Frame.BackgroundColor3 = Color3.new(0.117647, 0.117647, 0.117647)
196
Frame.BackgroundTransparency = 0.5
197
Frame.BorderSizePixel = 0
198
Frame.Size = UDim2.new(1, 0, 0, 0)
199
200
TextBox.Parent = Frame
201
TextBox.BackgroundColor3 = Color3.new(1, 1, 1)
202
TextBox.BackgroundTransparency = 1
203
TextBox.Position = UDim2.new(0.05, 0, 0.05, 0)
204
TextBox.Size = UDim2.new(0.899999976, 0, 0.899999976, 0)
205
TextBox.Font = Enum.Font.Code
206
TextBox.FontSize = Enum.FontSize.Size14
207
TextBox.Text = ""
208
TextBox.TextColor3 = Color3.new(1, 1, 1)
209
TextBox.TextScaled = true
210
TextBox.TextSize = 14
211
TextBox.TextWrapped = true
212
Frame:TweenSize(UDim2.new(1, 0, 0.2, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
213
wait(1.5)
214
local text = "Press F on a player to force choke them, and hold G to use force lightning."
215
for i=1,string.len(text) do
216
	TextBox.Text = string.sub(text,1,i)
217
	wait()
218
end
219
wait(2)
220
TextBox.Text = ""
221
Frame:TweenSize(UDim2.new(1, 0, 0, 0),Enum.EasingDirection.Out,Enum.EasingStyle.Bounce,1,false)
222
end
223
224
225
local coru = coroutine.wrap(function()
226
if R15 then
227
	good = false
228
	makegui()
229
elseif workspace.FilteringEnabled then
230
	good = true
231
	makegui3()
232
else
233
	makegui2()
234
end
235
end)
236
coru()
237
238
239
if good then
240
local choking = false
241
local zapping = false
242
local target = nil
243
local lastzap = nil
244
local oldHit = nil
245
local startpos = CFrame.new(0,0,0)
246
local beforehealth = 100
247
local timez = 0
248
249
Gibs = workspace
250
 
251
function Kill(Character,yee,oh)
252
if Character:FindFirstChildOfClass('Humanoid') then
253
Character:FindFirstChildOfClass('Humanoid').Health = 0
254
    local svch = Character
255
    local hum = Character:findFirstChild("Humanoid")
256
    Character.Archivable = true
257
    local chrclone = Character:clone()
258
    Character.Archivable = false
259
 
260
    local ch = chrclone:GetChildren()
261
    local i
262
    for i = 1,#ch do
263
        if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" or ch[i].ClassName == "Script" then
264
            ch[i]:remove()
265
        end
266
    end
267
    local function Scan(ch)
268
        local e
269
        for e = 1,#ch do
270
            Scan(ch[e]:GetChildren())
271
            if ch[e].ClassName == "Weld" or ch[e].ClassName == "Motor6D" then
272
                ch[e]:remove()
273
            end
274
        end
275
    end
276
    Scan(chrclone:GetChildren())
277
 
278
    local hum2 = chrclone:findFirstChild("Humanoid")
279
 
280
 
281
    if hum2 ~= nil then
282
        hum2.Name = "Humanoid2"
283
        hum2.PlatformStand = true
284
        hum2.Sit = true
285
        hum2.MaxHealth = 0
286
        hum2.Health = 0
287
    end
288
 
289
    local ch = Character:GetChildren()
290
    local i
291
    for i = 1,#ch do
292
        if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
293
            ch[i]:remove()
294
        end
295
    end
296
 
297
    wait(0.2)
298
 
299
    local ch = Character:GetChildren()
300
    local i
301
    for i = 1,#ch do
302
        if ch[i].ClassName == "Part" or ch[i].ClassName == "Hat" or ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then
303
            ch[i]:remove()
304
        end
305
    end
306
    Character = chrclone
307
    local Torso = Character.Torso
308
    local movevector = Vector3.new()
309
 	if Character.Torso ~= nil then
310
                local killtors = Character:findFirstChild("Torso")
311
                if killtors ~= nil then
312
                    movevector = CFrame.new(plr.Character["Right Arm"].Position,Torso.Position).lookVector
313
                end
314
            end
315
    if Torso then
316
        local Head = Character:FindFirstChild("Head")
317
        if Head and yee == false then
318
            local Neck = Instance.new("Weld")
319
            Neck.Name = "Neck"
320
            Neck.Part0 = Torso
321
            Neck.Part1 = Head
322
            Neck.C0 = CFrame.new(0, 1.5, 0)
323
            Neck.C1 = CFrame.new()
324
            Neck.Parent = Torso
325
        end
326
        local Limb = Character:FindFirstChild("Right Arm")
327
        if Limb then  
328
        Limb.CFrame = Torso.CFrame * CFrame.new(1.5, 0, 0)
329
            local Joint = Instance.new("Glue")
330
            Joint.Name = "RightShoulder"
331
            Joint.Part0 = Torso
332
            Joint.Part1 = Limb
333
            Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
334
            Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
335
            Joint.Parent = Torso
336
            local B = Instance.new("Part")
337
            B.TopSurface = 0
338
            B.BottomSurface = 0
339
            B.formFactor = "Symmetric"
340
            B.Size = Vector3.new(1, 1, 1)
341
            B.Transparency = 1
342
            B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
343
            B.Parent = Character
344
            local W = Instance.new("Weld")
345
            W.Part0 = Limb
346
            W.Part1 = B
347
            W.C0 = CFrame.new(0, -0.5, 0)
348
            W.Parent = Limb
349
        end
350
        local Limb = Character:FindFirstChild("Left Arm")
351
        if Limb then
352
            Limb.CFrame = Torso.CFrame * CFrame.new(-1.5, 0, 0)
353
            local Joint = Instance.new("Glue")
354
            Joint.Name = "LeftShoulder"
355
            Joint.Part0 = Torso
356
            Joint.Part1 = Limb
357
            Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
358
            Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
359
            Joint.Parent = Torso
360
 
361
            local B = Instance.new("Part")
362
            B.TopSurface = 0
363
            B.BottomSurface = 0
364
            B.formFactor = "Symmetric"
365
            B.Size = Vector3.new(1, 1, 1)
366
            B.Transparency = 1
367
            B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
368
            B.Parent = Character
369
            local W = Instance.new("Weld")
370
            W.Part0 = Limb
371
            W.Part1 = B
372
            W.C0 = CFrame.new(0, -0.5, 0)
373
            W.Parent = Limb
374
        end
375
        local Limb = Character:FindFirstChild("Right Leg")
376
        if Limb then
377
 
378
            Limb.CFrame = Torso.CFrame * CFrame.new(0.5, -2, 0)
379
            local Joint = Instance.new("Glue")
380
            Joint.Name = "RightHip"
381
            Joint.Part0 = Torso
382
            Joint.Part1 = Limb
383
            Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
384
            Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
385
            Joint.Parent = Torso
386
 
387
            local B = Instance.new("Part")
388
            B.TopSurface = 0
389
            B.BottomSurface = 0
390
            B.formFactor = "Symmetric"
391
            B.Size = Vector3.new(1, 1, 1)
392
            B.Transparency = 1
393
            B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
394
            B.Parent = Character
395
            local W = Instance.new("Weld")
396
            W.Part0 = Limb
397
            W.Part1 = B
398
            W.C0 = CFrame.new(0, -0.5, 0)
399
            W.Parent = Limb
400
 
401
        end
402
        local Limb = Character:FindFirstChild("Left Leg")
403
        if Limb then
404
 
405
            Limb.CFrame = Torso.CFrame * CFrame.new(-0.5, -2, 0)
406
            local Joint = Instance.new("Glue")
407
            Joint.Name = "LeftHip"
408
            Joint.Part0 = Torso
409
            Joint.Part1 = Limb
410
            Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
411
            Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
412
            Joint.Parent = Torso
413
 
414
            local B = Instance.new("Part")
415
            B.TopSurface = 0
416
            B.BottomSurface = 0
417
            B.formFactor = "Symmetric"
418
            B.Size = Vector3.new(1, 1, 1)
419
            B.Transparency = 1
420
            B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0)
421
            B.Parent = Character
422
            local W = Instance.new("Weld")
423
            W.Part0 = Limb
424
            W.Part1 = B
425
            W.C0 = CFrame.new(0, -0.5, 0)
426
            W.Parent = Limb
427
 
428
        end
429
        --[
430
        local Bar = Instance.new("Part")
431
        Bar.TopSurface = 0
432
        Bar.BottomSurface = 0
433
        Bar.formFactor = "Symmetric"
434
        Bar.Size = Vector3.new(1, 1, 1)
435
        Bar.Transparency = 1
436
        Bar.CFrame = Torso.CFrame * CFrame.new(0, 0.5, 0)
437
        Bar.Parent = Character
438
        local Weld = Instance.new("Weld")
439
        Weld.Part0 = Torso
440
        Weld.Part1 = Bar
441
        Weld.C0 = CFrame.new(0, 0.5, 0)
442
        Weld.Parent = Torso
443
        --]]
444
    end
445
    Character.Parent = Gibs
446
    game.Debris:AddItem(Character, 12)
447
    Character.Torso.Velocity = plr.Character.Torso.CFrame.lookVector*10
448
    Character.Head.Velocity = plr.Character.Torso.CFrame.lookVector*10
449
	if oh then
450
		local repulse = Instance.new('BodyForce',Torso)
451
      		repulse.Force = movevector*10000 + Vector3.new(0,1000,0)
452
       		game.Debris:AddItem(repulse,0.05)
453
		for i,v in pairs(chrclone:GetChildren()) do
454
			if v:IsA('BasePart') then
455
				v.BrickColor = BrickColor.Black()
456
			end
457
		end
458
		local sound = Instance.new('Sound',Torso)
459
		sound.EmitterSize = 50
460
		sound.MaxDistance = 100
461
		sound.Volume = 6
462
		sound.SoundId = 'rbxassetid://157325701'
463
		sound:Play()
464
		sound.Ended:connect(function()
465
			sound:Destroy()
466
		end)
467
	end
468
    local duh = Torso
469
if yee == true then
470
ee = Instance.new("Part")
471
ee.Anchored = false
472
ee.CanCollide = false
473
ee.Parent = duh
474
ee.Transparency =1
475
ee.Size = Vector3.new(0.15, 0.15, 0.15)
476
wee = Instance.new("Weld")
477
wee.Parent = duh
478
wee.Part0 = duh
479
wee.Part1 = ee
480
wee.C0 = CFrame.new(0, 1, 0)
481
ge = Instance.new('ParticleEmitter')
482
ge.Parent = ee
483
ge.Texture = "rbxassetid://29712167"
484
ge.Size = NumberSequence.new(0.2,0.05)
485
ge.Acceleration = Vector3.new(0, -20, 0)
486
ge.Rate = 100000
487
ge.Speed = NumberRange.new(7,8)
488
ge.Lifetime = NumberRange.new(3,4)
489
ge.VelocitySpread = 10
490
ge.VelocityInheritance = 0.3
491
ea = Instance.new("Part")
492
ea.Anchored = false
493
ea.CanCollide = false
494
ea.Parent = Character.Head
495
ea.Transparency =1
496
ea.Size = Vector3.new(0.15, 0.15, 0.15)
497
wea = Instance.new("Weld")
498
wea.Parent = Character.Head
499
wea.Part0 = Character.Head
500
wea.Part1 = ea
501
wea.C0 = CFrame.new(0, -0.7, 0)
502
ga = Instance.new('ParticleEmitter')
503
ga.Parent = ea
504
ga.Texture = "rbxassetid://29712167"
505
ga.Size = NumberSequence.new(0.2,0.05)
506
ga.Acceleration = Vector3.new(0, -20, 0)
507
ga.Rate = 100000
508
ga.Speed = NumberRange.new(7,8)
509
ga.Lifetime = NumberRange.new(3,4)
510
ga.VelocitySpread = 10
511
ga.VelocityInheritance = 0.3
512
ga.EmissionDirection = Enum.NormalId.Bottom
513
end
514
end
515
end
516
517
function gettouching(startpos,endpos,dont)
518
	local ray = Ray.new(startpos,(endpos-startpos).unit*300)
519
	local ignore = {}
520
	for i,v in pairs(game:GetService('Players'):GetChildren()) do
521
		if v.Character and v ~= plr then
522
			table.insert(ignore,v.Character)
523
		end
524
	end
525
	local part,pos = workspace:FindPartOnRayWithWhitelist(ray,ignore,false)
526
	if part then
527
		if part.Parent:FindFirstChildOfClass('Humanoid') and part.Parent:FindFirstChildOfClass('Humanoid').Health > 0 then
528
			local coru = coroutine.wrap(function()
529
				Kill(part.Parent,false,true)
530
			end)
531
			coru()
532
		end
533
	end
534
	table.insert(ignore,dont)
535
	local part2,pos2 = workspace:FindPartOnRayWithIgnoreList(ray,ignore,false,true)
536
	if part2 and part2.Parent and part2.Parent ~= plr.Character and part2.Parent:FindFirstChildOfClass('Humanoid') and part2.Parent:FindFirstChildOfClass('Humanoid').Health > 0 then
537
		local coru = coroutine.wrap(function()
538
			Kill(part2.Parent,false,true)
539
		end)
540
		coru()
541
	end
542
end
543
544
function GetDudesTorso(c)
545
local torsy = (c:findFirstChild("Torso") or c:findFirstChild("UpperTorso"))
546
if torsy ~= nil then
547
return torsy
548
end
549
end
550
551
function MagnitudeDmg(par,magni)
552
for _, c in pairs(workspace:GetDescendants()) do
553
local hum = c:FindFirstChildOfClass("Humanoid")
554
if hum ~= nil and c:FindFirstChild("IsTeamMateOfCK")==nil then
555
local head = GetDudesTorso(c)
556
if head ~= nil then
557
local targ = head.Position - par.Position
558
local mag = targ.magnitude
559
if magni >= mag and c ~= owner.Character then
560
Dmg(c)
561
end
562
end
563
end
564
end
565
end
566
567
function makelaser(parent)
568
	part = Instance.new('Part',parent)
569
	part.Size = Vector3.new(0.2,0.2,0.2)
570
	part.Transparency = 0
571
	part.CanCollide = false
572
	local weld = Instance.new('Weld',part)
573
	weld.Part0 = part
574
	weld.Part1 = plr.Character["Right Arm"]
575
	weld.C0 = CFrame.new(0,1.25,0)
576
	for i=1,5 do
577
	targ = Instance.new("Part",owner.Character)
578
targ.CFrame = Mouse.Hit
579
targ.Size = Vector3.new(0,0,0)
580
targ.Anchored = true
581
targ.CanCollide = false
582
targ.Transparency = 1
583
MagnitudeDmg(targ,2)
584
game.Debris:AddItem(targ,1)
585
	end
586
end
587
588
589
function Dmg(dude)
590
if dude:FindFirstChildOfClass("Humanoid") then
591
	hum = dude.Parent:findFirstChild("Humanoid")
592
	Hit = Mouse.hit
593
	local P = Instance.new("Part") 
594
	P.Name = "Guideline" 
595
	P.Material = Enum.Material.Neon
596
	local Place0 = part.CFrame
597
	P.formFactor = 0 
598
	P.Size = Vector3.new(1,1,(Place0.p - Mouse.Hit.p).magnitude) 
599
	if plr.Character:FindFirstChild('Right Arm') then
600
		for i,v in pairs(plr.Character:FindFirstChild('Right Arm'):GetChildren()) do
601
			if v:IsA('Sound') and v.Name == "Electricity" then
602
				if Place0 and Hit and (Place0.p - Mouse.Hit.p).magnitude >= 20 then
603
					v.MaxDistance = (Place0.p - Mouse.Hit.p).magnitude
604
					v.EmitterSize = (Place0.p - Mouse.Hit.p).magnitude
605
				elseif Place0 and Hit then
606
					v.MaxDistance = 20
607
					v.EmitterSize = 20
608
				end
609
			end
610
		end
611
	end
612
	P.CFrame = CFrame.new((Place0.p + Mouse.Hit.p)/2,Place0.p) 
613
	P.Parent = parent
614
	P.BrickColor = BrickColor.Yellow()
615
	P.Anchored = true 
616
	P.CanCollide = false
617
	P.Transparency = 1
618
	local m = Instance.new("BlockMesh")
619
	m.Scale = Vector3.new(0.1,0.1,1)
620
	m.Parent = P
621
	local mh = mouse.Hit
622
	for c1 = 1, 1 do
623
		oldHit = part.CFrame
624
		for count = 1, 9 do
625
			local val1 = Vector3.new(math.random(-1,1),math.random(-1,1),math.random(-1,1))
626
			local val2 = P.Size.z / 10
627
			local val3 = P.CFrame.lookVector * -1
628
			local val4 = count * val2
629
			local val5 = val4 * val3
630
			local val6 = part.CFrame.p
631
			Hit = CFrame.new(val5 + val1 + val6)
632
			local s = Instance.new("Part") 
633
			s.Name = "Spark" 
634
			s.Material = Enum.Material.Neon
635
			local Place0 = oldHit
636
			s.formFactor = 0 
637
			s.Size = Vector3.new(1,1,(Place0.p - Mouse.Hit.p).magnitude)
638
			s.CFrame = CFrame.new((Place0.p + Mouse.Hit.p)/2,Place0.p) 
639
			s.Parent = parent
640
			s.BrickColor = BrickColor.new('Instatutional white')
641
			s.Anchored = true 
642
			s.CanCollide = false
643
			m = Instance.new("BlockMesh")
644
			m.Scale = Vector3.new(0.1,0.1,1)
645
			m.Parent = s
646
			local clone = s:clone()
647
			clone.Mesh.Scale = Vector3.new(0.3,0.3,1.1)
648
			clone.BrickColor = BrickColor.new('Electric blue')
649
			clone.Transparency = 0.8
650
			clone.Parent = s.Parent
651
			oldHit = Hit
652
		end
653
		Hit = oldHit
654
		local s = Instance.new("Part") 
655
		s.Name = "Spark" 
656
		s.Material = Enum.Material.Neon
657
		local Place0 = mh
658
		s.formFactor = 0 
659
		s.Size = Vector3.new(1,1,(Place0.p - Mouse.Hit.p).magnitude) 
660
		s.CFrame = CFrame.new((Place0.p + Mouse.Hit.p)/2,Place0.p) 
661
		s.Parent = parent
662
		s.BrickColor = BrickColor.new('Instatutional white')
663
		s.Anchored = true 
664
		s.CanCollide = false
665
		m = Instance.new("BlockMesh")
666
		m.Scale = Vector3.new(0.1,0.1,1)
667
		m.Parent = s
668
		local clone = s:clone()
669
		clone.Mesh.Scale = Vector3.new(0.3,0.3,1.1)
670
        clone.BrickColor = BrickColor.new('Electric blue')
671
		clone.Transparency = 0.8
672
		clone.Parent = s.Parent
673
		gettouching(part.Position,Mouse.Hit.p,parent)
674
	end
675
	P:remove()
676
	end
677
end
678
679
function chokearms(chr)
680
	if chr:FindFirstChild('Torso') then
681
		if chr:FindFirstChild('Right Arm') then
682
			if chr.Torso:FindFirstChild('Right Shoulder') then
683
				chr.Torso["Right Shoulder"]:Destroy()
684
			end
685
			local thing = Instance.new('Weld',chr.Torso)
686
			thing.Name = "Right Shoulder"
687
			thing.Part0 = chr.Torso
688
			thing.Part1 = chr["Right Arm"]
689
			thing.C0 = CFrame.new(0.811074257, 0.835914135, -0.381313324, 0.27563563, 0.961260796, 2.0569455e-06, 0.488285512, -0.140010983, -0.861379266, -0.828009903, 0.237427771, -0.50796169)		
690
		end
691
		if chr:FindFirstChild('Left Arm') then
692
			if chr.Torso:FindFirstChild('Left Shoulder') then
693
				chr.Torso["Left Shoulder"]:Destroy()
694
			end
695
			local thing = Instance.new('Weld',chr.Torso)
696
			thing.Name = "Left Shoulder"
697
			thing.Part0 = chr["Left Arm"]
698
			thing.Part1 = chr.Torso
699
			thing.C0 = CFrame.new(0.962814331, -0.457080841, 0.306755066, 0.309041202, -0.579310298, 0.754249752, -0.951046288, -0.188228443, 0.245104745, -2.09111568e-05, -0.793076754, -0.609121859)		
700
		end
701
	end
702
end
703
704
function fixarms(chr)
705
	if chr:FindFirstChild('Torso') then
706
		for i,v in pairs(chr.Torso:GetChildren()) do
707
			if v.Name == "Right Shoulder" or v.Name == "Left Shoulder" then
708
				v:Destroy()
709
			end
710
		end
711
		if chr:FindFirstChild('Right Arm') then
712
			local rs = Instance.new('Motor6D',chr.Torso)
713
			rs.Name = "Right Shoulder"
714
			rs.Part0 = chr.Torso
715
			rs.Part1 = chr:FindFirstChild('Right Arm')
716
			rs.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
717
			rs.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
718
		end
719
		if chr:FindFirstChild('Left Arm') then
720
			local ls = Instance.new('Motor6D',chr.Torso)
721
			ls.Name = "Left Shoulder"
722
			ls.Part0 = chr.Torso
723
			ls.Part1 = chr:FindFirstChild('Left Arm')
724
			ls.C0 = CFrame.new(-1, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
725
			ls.C1 = CFrame.new(0.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
726
		end
727
	end
728
end
729
730
Mouse.KeyDown:connect(function(key)
731
	if key == "f" and Mouse.Target and zapping == false then
732
		if choking == false then
733
			local hum = Mouse.Target.Parent:FindFirstChildOfClass('Humanoid')
734
		
735
			if hum == nil then
736
				hum = Mouse.Target.Parent.Parent:FindFirstChildOfClass('Humanoid')
737
			end
738
		
739
			if hum and hum.Parent:FindFirstChild('Torso') and hum.Health > 0 then
740
				beforehealth = hum.Health
741
				choking = true
742
				target = hum.Parent.Torso
743
				local sound = Instance.new('Sound',target)
744
				sound.Volume = 5
745
				sound.EmitterSize = 50
746
				sound.MaxDistance = 100
747
				sound.SoundId = 'rbxassetid://418658161'
748
				sound.Looped = false
749
				sound.PlaybackSpeed = 0.75
750
				sound.Name = "Choking"
751
				sound:Play()
752
				startpos = target.CFrame
753
				chokearms(target.Parent)
754
				local bod = Instance.new('BodyPosition',hum.Parent.Torso)
755
				bod.Position = target.Position+Vector3.new(0,12,0)
756
				bod.MaxForce = Vector3.new(100000,100000,100000)
757
				bod.P = 1000
758
				bod.D = 500
759
			end
760
			if target and target:FindFirstChild('Breathing') then
761
				target.Breathing:Destroy()
762
			end
763
			local coru = coroutine.wrap(function()
764
				while timez < 5 and choking do
765
					timez = timez + 0.1
766
					if target.Parent:FindFirstChildOfClass('Humanoid') then
767
						if target.Parent:FindFirstChildOfClass('Humanoid').Health - (beforehealth/49) > 0 then
768
							target.Parent:FindFirstChildOfClass('Humanoid').Health = target.Parent:FindFirstChildOfClass('Humanoid').Health - (beforehealth/49)
769
						end
770
					end
771
					wait(0.1)				
772
				end
773
				if timez >= 5 then
774
					if target and target.Parent and target.Parent:FindFirstChildOfClass('Humanoid') and target.Parent:FindFirstChildOfClass('Humanoid').Health > 0 then
775
						if target and target:FindFirstChild('Choking') then
776
							target.Choking:Stop()
777
							target.Choking:Destroy()
778
						end
779
						if target then
780
							for i,v in pairs(target:GetChildren()) do
781
								if v:IsA("BodyPosition") then
782
									v:Destroy()
783
								end
784
							end
785
						end
786
						Kill(target.Parent,false,false)
787
					end
788
				end
789
				target = nil
790
				choking = false
791
				startpos = CFrame.new(0,0,0)
792
				timez = 0
793
				for i,v in pairs(plr.Character.Torso:GetChildren()) do
794
					if v.Name == "Right Shoulder" and v:IsA('Weld') then
795
						v:Destroy()
796
					end
797
				end
798
				if plr.Character.Torso:FindFirstChild('Right Shoulder') == nil then
799
					local rs = Instance.new('Motor6D',plr.Character.Torso)
800
					rs.Name = "Right Shoulder"
801
					rs.Part0 = plr.Character.Torso
802
					rs.Part1 = plr.Character:FindFirstChild('Right Arm')
803
					rs.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
804
					rs.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
805
				end
806
			end)
807
			coru()
808
		else
809
			if target and target:FindFirstChild('Choking') then
810
				fixarms(target.Parent)
811
				target.Choking:Stop()
812
				target.Choking:Destroy()
813
				local sound = Instance.new('Sound',target)
814
				sound.Volume = 5
815
				sound.EmitterSize = 50
816
				sound.MaxDistance = 100
817
				sound.SoundId = 'rbxassetid://304511128'
818
				sound.Looped = true
819
				sound.PlaybackSpeed = 1
820
				sound.Name = "Breathing"
821
				sound:Play()
822
				game:GetService('Debris'):AddItem(sound,timez)
823
				for i,v in pairs(target:GetChildren()) do
824
					if v:IsA("BodyPosition") then
825
						v:Destroy()
826
					end
827
				end
828
			end
829
			if target.Parent:FindFirstChildOfClass('Humanoid') then
830
				target.Parent:FindFirstChildOfClass('Humanoid').Health = beforehealth
831
			end
832
			target = nil
833
			choking = false
834
			startpos = CFrame.new(0,0,0)
835
			timez = 0
836
		end
837
	elseif key == "g" and choking == false then
838
		zapping = true
839
		local electricity = Instance.new("Sound",plr.Character:FindFirstChild('Right Arm'))
840
		electricity.Name = "Electricity"
841
		electricity.SoundId = "rbxassetid://379557765"
842
		electricity.Volume = 5
843
		electricity.EmitterSize = 100
844
		electricity.MaxDistance = 100
845
		electricity.Looped = true
846
		electricity:Play()
847
	end
848
end)
849
850
Mouse.KeyUp:connect(function(key)
851
	if key == "g" then
852
		zapping = false
853
		if plr.Character:FindFirstChild('Right Arm') then
854
			for i,v in pairs(plr.Character:FindFirstChild('Right Arm'):GetChildren()) do
855
				if v:IsA('Sound') and v.Name == "Electricity" then
856
					v:Destroy()
857
				end
858
			end
859
		end
860
	end
861
end)
862
863
864
while true do
865
	if choking and plr.Character and target and target.Parent and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') then
866
		for i,v in pairs(plr.Character.Torso:GetChildren()) do
867
			if v.Name == "Right Shoulder" then
868
				v:Destroy()
869
			end
870
		end
871
        local Head = plr.Character.Head
872
        local RightArm = plr.Character["Right Arm"]
873
		local RightShoulder = Instance.new('Weld',plr.Character.Torso)
874
		RightShoulder.Name = "Right Shoulder"
875
		RightShoulder.Part0 = plr.Character.Torso
876
		RightShoulder.Part1 = RightArm
877
		RightShoulder.C0 = CFrame.new(1,1,-0.75)
878
        local MousePosition = target.Position+(target.Size/2)
879
        local ToMouse = (MousePosition - Head.Position).unit
880
        local Angle = math.acos(ToMouse:Dot(Vector3.new(0, 1, 0)))
881
        local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (RightArm.Size.X / 2)), ((Head.Size.Y / 2) - (RightArm.Size.Z / 2)), 0)))
882
        local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(1 ,0, 1)).unit
883
        local Look = (Head.CFrame.lookVector * Vector3.new(1, 0, 1)).unit
884
        local LateralAngle = math.acos(ToMouseRightArm:Dot(Look))
885
        if tostring(LateralAngle) == "-1.#IND" then
886
            LateralAngle = 0
887
        end
888
        local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm)
889
		local change = false
890
        if LateralAngle > (math.pi / 2) then
891
            LateralAngle = (math.pi / 2)
892
			change = true
893
        end
894
        if Cross.Y < 0 then
895
            LateralAngle = -LateralAngle
896
        end
897
        RightShoulder.C0 = CFrame.new(RightShoulder.C0.p) * CFrame.Angles(((math.pi / 2) - Angle), ((math.pi / 2) + LateralAngle), math.pi/2)
898
		for i,v in pairs(target.Parent:GetChildren()) do
899
			if v:IsA('Tool') then
900
				v.ManualActivationOnly = true
901
			end
902
		end
903
	elseif zapping == false and plr and plr.Character and plr.Character:FindFirstChild("Torso") and plr.Character:FindFirstChild('Right Arm') then
904
		for i,v in pairs(plr.Character.Torso:GetChildren()) do
905
			if v.Name == "Right Shoulder" and v:IsA('Weld') then
906
				v:Destroy()
907
			end
908
		end
909
		if target then
910
		for i,v in pairs(target:GetChildren()) do
911
			if v:IsA("BodyPosition") then
912
				v:Destroy()
913
			end
914
		end
915
		if plr.Character.Torso:FindFirstChild('Right Shoulder') == nil then
916
			local rs = Instance.new('Motor6D',plr.Character.Torso)
917
			rs.Name = "Right Shoulder"
918
			rs.Part0 = plr.Character.Torso
919
			rs.Part1 = plr.Character:FindFirstChild('Right Arm')
920
			rs.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
921
			rs.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
922
		end
923
		if target.Parent then
924
			for i,v in pairs(target.Parent:GetChildren()) do
925
				if v:IsA('Tool') then
926
					v.ManualActivationOnly = false
927
				end
928
			end
929
		end
930
		end
931
		target = nil
932
		choking = false
933
		startpos = CFrame.new(0,0,0)
934
		timez = 0
935
	end
936
	if zapping and plr.Character and Mouse.Hit and plr.Character:FindFirstChild('Head') and plr.Character:FindFirstChild('Right Arm') and plr.Character:FindFirstChild('Torso') then
937
		if lastzap then
938
			lastzap:Destroy()
939
			lastzap = nil
940
		end
941
		for i,v in pairs(plr.Character.Torso:GetChildren()) do
942
			if v.Name == "Right Shoulder" then
943
				v:Destroy()
944
			end
945
		end
946
        local Head = plr.Character.Head
947
        local RightArm = plr.Character["Right Arm"]
948
		local RightShoulder = Instance.new('Weld',plr.Character.Torso)
949
		RightShoulder.Name = "Right Shoulder"
950
		RightShoulder.Part0 = plr.Character.Torso
951
		RightShoulder.Part1 = RightArm
952
		RightShoulder.C0 = CFrame.new(1,1,-0.75)
953
        local MousePosition = Mouse.Hit.Position
954
        local ToMouse = (MousePosition - Head.Position).unit
955
        local Angle = math.acos(ToMouse:Dot(Vector3.new(0, 1, 0)))
956
        local FromRightArmPos = (Head.Position + Head.CFrame:vectorToWorldSpace(Vector3.new(((Head.Size.X / 2) + (RightArm.Size.X / 2)), ((Head.Size.Y / 2) - (RightArm.Size.Z / 2)), 0)))
957
        local ToMouseRightArm = ((MousePosition - FromRightArmPos) * Vector3.new(1 ,0, 1)).unit
958
        local Look = (Head.CFrame.lookVector * Vector3.new(1, 0, 1)).unit
959
        local LateralAngle = math.acos(ToMouseRightArm:Dot(Look))
960
        if tostring(LateralAngle) == "-1.#IND" then
961
            LateralAngle = 0
962
        end
963
        local Cross = Head.CFrame.lookVector:Cross(ToMouseRightArm)
964
		local change = false
965
        if LateralAngle > (math.pi / 2) then
966
            LateralAngle = (math.pi / 2)
967
			change = true
968
        end
969
        if Cross.Y < 0 then
970
            LateralAngle = -LateralAngle
971
        end
972
        RightShoulder.C0 = CFrame.new(RightShoulder.C0.p) * CFrame.Angles(((math.pi / 2) - Angle), ((math.pi / 2) + LateralAngle), math.pi/2)
973
		local thing = Instance.new('Model',workspace)
974
		thing.Name = "Zap"
975
		lastzap = thing
976
		makelaser(thing)
977
	elseif choking == false and zapping == false then
978
		if lastzap then
979
			lastzap:Destroy()
980
			lastzap = nil
981
		end
982
		if plr.Character:FindFirstChild('Torso') then
983
		for i,v in pairs(plr.Character.Torso:GetChildren()) do
984
			if v.Name == "Right Shoulder" and v:IsA('Weld') then
985
				v:Destroy()
986
			end
987
		end
988
		if plr.Character.Torso:FindFirstChild('Right Shoulder') == nil then
989
			local rs = Instance.new('Motor6D',plr.Character.Torso)
990
			rs.Name = "Right Shoulder"
991
			rs.Part0 = plr.Character.Torso
992
			rs.Part1 = plr.Character:FindFirstChild('Right Arm')
993
			rs.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
994
			rs.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
995
		end
996
		end
997
	end
998
wait()
999
end
1000
end