View difference between Paste ID: pVKDkX1u and wc1Yy2fg
SHOW: | | - or go back to the newest paste.
1
-- that's right get no scoped ^^
2-
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2+
3-
local Player,game,owner = owner,game
3+
4-
local RealPlayer = Player
4+
5-
do
5+
6-
	print("FE Compatibility code by Mokiros")
6+
7-
	local rp = RealPlayer
7+
8-
	script.Parent = rp.Character
8+
9-
	
9+
10-
	--RemoteEvent for communicating
10+
11-
	local Event = Instance.new("RemoteEvent")
11+
12-
	Event.Name = "UserInput_Event"
12+
13
shirt.Name = "Shirt"
14-
	--Fake event to make stuff like Mouse.KeyDown work
14+
15-
	local function fakeEvent()
15+
16-
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
16+
17-
		t.connect = t.Connect
17+
18-
		return t
18+
19
tp = true
20
shoot = true
21-
	--Creating fake input objects with fake variables
21+
22-
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
22+
23-
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
23+
24-
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
24+
25-
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
25+
26-
	end}
26+
27-
	--Merged 2 functions into one by checking amount of arguments
27+
28-
	CAS.UnbindAction = CAS.BindAction
28+
29
root=char.HumanoidRootPart
30-
	--This function will trigger the events that have been :Connect()'ed
30+
31-
	local function te(self,ev,...)
31+
32-
		local t = m[ev]
32+
33-
		if t and t._fakeEvent then
33+
34-
			for _,f in pairs(t.Functions) do
34+
35-
				f(...)
35+
36
m=player:GetMouse()
37
bb = Instance.new("BillboardGui",player.Character.Head)
38
bb.Enabled = true
39-
	m.TrigEvent = te
39+
40-
	UIS.TrigEvent = te
40+
41
        hit,pos=Workspace:FindPartOnRayWithIgnoreList(rey,wat)
42-
	Event.OnServerEvent:Connect(function(plr,io)
42+
43-
	    if plr~=rp then return end
43+
44-
		m.Target = io.Target
44+
45-
		m.Hit = io.Hit
45+
46-
		if not io.isMouse then
46+
47-
			local b = io.UserInputState == Enum.UserInputState.Begin
47+
48-
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48+
49-
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49+
50
    Vec1 = Vec1+Vector3.new(0,1,0)
51-
			for _,t in pairs(CAS.Actions) do
51+
52-
				for _,k in pairs(t.Keys) do
52+
53-
					if k==io.KeyCode then
53+
54-
						t.Function(t.Name,io.UserInputState,io)
54+
55-
					end
55+
56-
				end
56+
57
    return CFrame.new(Orig.X,Orig.Y,Orig.Z,Right.X,Up.X,Forward.X,Right.Y,Up.Y,Forward.Y,Right.Z,Up.Z,Forward.Z)
58-
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58+
59-
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59+
60-
	    end
60+
61-
	end)
61+
62-
	Event.Parent = NLS([==[
62+
63-
	local Player = game:GetService("Players").LocalPlayer
63+
64-
	local Event = script:WaitForChild("UserInput_Event")
64+
65
        CF = CFr*(CF*CFrame.Angles(0,0,math.pi))
66-
	local Mouse = Player:GetMouse()
66+
67-
	local UIS = game:GetService("UserInputService")
67+
68-
	local input = function(io,a)
68+
69-
		if a then return end
69+
70-
		--Since InputObject is a client-side instance, we create and pass table instead
70+
71-
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
71+
72
            CF = CFr
73-
	UIS.InputBegan:Connect(input)
73+
74-
	UIS.InputEnded:Connect(input)
74+
75
    local _,_,_,_,X,_,_,Y,_,_,Z,_ = CF:components()
76-
	local h,t
76+
77-
	--Give the server mouse data 30 times every second, but only if the values changed
77+
78-
	--If player is not moving their mouse, client won't fire events
78+
79-
	while wait(1/30) do
79+
80-
		if h~=Mouse.Hit or t~=Mouse.Target then
80+
81-
			h,t=Mouse.Hit,Mouse.Target
81+
82-
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82+
83
84-
	end]==],Player.Character)
84+
85
        local joint = j
86-
	----Sandboxed game object that allows the usage of client-side methods and services
86+
87-
	--Real game object
87+
88-
	local _rg = game
88+
89
                        if i > 1 then joint = t[i-1][1].CFrame*CFrame.new(0,0,d*.5) end
90-
	--Metatable for fake service
90+
91-
	local fsmt = {
91+
92-
		__index = function(self,k)
92+
93-
			local s = rawget(self,"_RealService")
93+
94-
			if s then return s[k] end
94+
95-
		end,
95+
96-
		__newindex = function(self,k,v)
96+
97-
			local s = rawget(self,"_RealService")
97+
98-
			if s then s[k]=v end
98+
99-
		end,
99+
100-
		__call = function(self,...)
100+
101-
			local s = rawget(self,"_RealService")
101+
102-
			if s then return s(...) end
102+
103
end
104-
	}
104+
105-
	local function FakeService(t,RealService)
105+
106-
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
106+
107-
		return setmetatable(t,fsmt)
107+
108
bb.AlwaysOnTop = true
109
bb.Size = UDim2.new(0,200,0,50)
110-
	--Fake game object
110+
111-
	local g = {
111+
112-
		GetService = function(self,s)
112+
113-
			return self[s]
113+
114-
		end,
114+
115-
		Players = FakeService({
115+
116-
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
116+
117-
		},"Players"),
117+
118-
		UserInputService = FakeService(UIS,"UserInputService"),
118+
119-
		ContextActionService = FakeService(CAS,"ContextActionService"),
119+
120-
	}
120+
121-
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
121+
122-
	g.service = g.GetService
122+
123-
	
123+
124-
	g.RunService = FakeService({
124+
125-
		RenderStepped = _rg:GetService("RunService").Heartbeat,
125+
126-
		BindToRenderStep = function(self,name,_,fun)
126+
127-
			self._btrs[name] = self.Heartbeat:Connect(fun)
127+
128-
		end,
128+
129-
		UnbindFromRenderStep = function(self,name)
129+
130-
			self._btrs[name]:Disconnect()
130+
131-
		end,
131+
132-
	},"RunService")
132+
133
img.Size = UDim2.new(0,46,0,47)
134-
	setmetatable(g,{
134+
135-
		__index=function(self,s)
135+
136-
			return _rg:GetService(s) or typeof(_rg[s])=="function"
136+
137-
			and function(_,...)return _rg[s](_rg,...)end or _rg[s]
137+
138-
		end,
138+
139-
		__newindex = fsmt.__newindex,
139+
140-
		__call = fsmt.__call
140+
141-
	})
141+
142-
	--Changing owner to fake player object to support owner:GetMouse()
142+
143-
	game,owner = g,g.Players.LocalPlayer
143+
144
boom2 = Instance.new("Sound",char)
145
boom2.SoundId = "http://www.roblox.com/asset/?id = 449025737"
146
boom2.Volume = 1
147
boom3 = Instance.new("Sound",char)
148
boom3.SoundId = "http://www.roblox.com/asset/?id = 450719019"
149
boom3.Volume = 1
150
tps = Instance.new("Sound",char)
151
tps.SoundId = "http://www.roblox.com/asset/?id = 449860746"
152
tps.Volume = 1
153
asd = Instance.new("Sound",char)
154
asd.SoundId = "http://www.roblox.com/asset/?id = 447310433"
155
asd.Volume =1 
156
asd1 = Instance.new("Sound",char)
157
asd1.SoundId = "http://www.roblox.com/asset/?id = 358280695"
158
159
asd2 = Instance.new("Sound",char)
160
asd2.SoundId = "http://www.roblox.com/asset/?id = 386713054"
161
asd2.Looped = true
162
asd2.Volume = 5
163
asd3 = Instance.new("Sound",char)
164
asd3.SoundId = "http://www.roblox.com/asset/?id = 339250412"
165
asd3.Looped = true
166
asd4 = Instance.new("Sound",char)
167
asd4.SoundId = "http://www.roblox.com/asset/?id = 401258325"
168
asd4.Looped = true
169
asd5 = Instance.new("Sound",char)
170
asd5.SoundId = "http://www.roblox.com/asset/?id = 362252261"
171
asd5.Looped = true
172
gas = Instance.new("Sound",char)
173
gas.SoundId = "http://www.roblox.com/asset/?id = 345052019"
174
asd6 = Instance.new("Sound",char)
175
asd6.SoundId = "http://www.roblox.com/asset/?id = 401258325"
176
asd6.Looped = true
177
function play(play)
178
asd:Play()
179
wait(0.05)
180
--asd1:Play()
181
end
182
183
184
185
------------
186
-------------------------
187
188
function stream(origin,dir,length,size)
189
        local parts = {}
190
        for i = 1,length do
191
                local p = Instance.new("Part",char)
192
                p.Anchored = true
193
                p.Transparency = 0.5
194
                p.TopSurface = 0
195
                p.BottomSurface = 0
196
                p.CanCollide = false
197
                p.BrickColor = BrickColor.new("Institutional white")
198
                p.Size = Vector3.new(10,30,10) -- for now
199
                p.CFrame = CFrame.new(origin+dir*i*size)*CFrame.Angles(math.random()*math.pi,math.random()*math.pi,math.random()*math.pi)
200
                parts[i] = {p,CFrame.Angles(math.random()*math.pi/5,math.random()*math.pi/5,math.random()*math.pi/5)}
201
                game:GetService("Debris"):AddItem(p,3)
202
        end
203
        Spawn(function()
204
                while parts do
205
                        for i,v in pairs(parts) do
206
                                if v[1].Parent == char then
207
                                        v[1].CFrame = v[1].CFrame*v[2]
208
                                else
209
                                        parts = nil
210
                                        break
211
                                end
212
                        end
213
                        wait(0.02)
214
                end
215
        end)
216
end
217
218
--[[-- listen for their chatting
219
player.Chatted:connect(function(message)
220
a = string.len(message)
221
gui.Text = ""
222
gui.Visible = true
223
gui1.Visible = true
224
des = false
225
img.Visible = true
226
print(a)
227
if dot == false then
228
gui.Text = ""
229
for i = 1,string.len(message) do 
230
gui.Text =gui.Text..message:sub(i,i)
231
play()
232
233
end
234
end
235
236
237
des = true
238
end)]]--
239
m.KeyDown:connect(function(k)
240
if k == "g" then
241
asd2:Play()
242
243
244
end
245
end)
246
247
m.KeyDown:connect(function(k)
248
if k == "r" then
249
250
asd4:Play()
251
end
252
end)
253
m.KeyDown:connect(function(k)
254
if k == "q" then
255
256
asd3:Play()
257
end
258
end)
259
m.KeyDown:connect(function(k)
260
if k == "z" then
261
img.Image = "rbxassetid://332766052"
262
263
end
264
end)
265
m.KeyDown:connect(function(k)
266
if k == "c" then
267
img.Image = "rbxassetid://447301252"
268
269
end
270
end)
271
m.KeyDown:connect(function(k)
272
if k == "b" then
273
274
asd6:Play()
275
end
276
end)
277
mouse = p:GetMouse()
278
m.KeyDown:connect(function(k)
279
if k:byte() == 48 then
280
281
hum.WalkSpeed = 100
282
end
283
end)
284
m.KeyDown:connect(function(k)
285
if k:byte() == 50 then
286
287
soka:Play()
288
end
289
end)
290
m.KeyDown:connect(function(k)
291
if k:byte() == 52 then
292
293
char.Head.face.Texture = "rbxassetid://444037452"
294
end
295
end)
296
m.KeyDown:connect(function(k)
297
if k:byte() == 51 then
298
299
char.Head.face.Texture = "rbxassetid://332768867"
300
end
301
end)
302
m.KeyUp:connect(function(k)
303
if k:byte() == 48 then
304
305
hum.WalkSpeed = 50
306
end
307
end)
308
p.Chatted:connect(function(m)
309
if m == "Okay." then
310
soka:Play()
311
end
312
end)
313
m.KeyDown:connect(function(k)
314
if k == "x" then
315
if des == true then
316
gui.Visible = false
317
gui.Text = "* "
318
gui1.Visible = false
319
img.Visible = false
320
end
321
end
322
end)
323
m.KeyDown:connect(function(key)
324
if key == "j" then
325
if tp == true then
326
tp = false
327
tps:Play()
328
char.Head.face.Parent = game.Lighting
329
for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 1
330
end
331
332
end
333
   wait(0.5)
334
for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 0          
335
end
336
337
end
338
char.HumanoidRootPart.CFrame = mouse.Hit * CFrame.new(0, 3, 0)
339
char.HumanoidRootPart.Transparency =  1
340
game.Lighting.face.Parent = char.Head
341
    wait(0.2)
342
343
tp = true
344
 
345
346
end
347
end
348
end)
349
350
351
m.KeyDown:connect(function(key)
352
    if key == "t" then
353
if punch2 == true then
354
punch2 = false
355
punch = false
356
357
local ChatService = game:GetService("Chat")
358
359
 neck.C0 = neck.C0 * CFrame.Angles(0.3,0,0)
360
ChatService:Chat(char.Head, "Mind if I get Serious?")
361
wait(1)
362
local ChatService = game:GetService("Chat")
363
364
 
365
ChatService:Chat(char.Head ,"Killer Move: Serious Series...")
366
wait(1)
367
local ChatService = game:GetService("Chat")
368
369
 
370
ChatService:Chat(char.Head, "SERIOUS PUNCH.")
371
neck.C0 = neckp
372
wait(0.6)
373
org = char.Torso["Left Shoulder"].C0
374
char.Torso["Left Shoulder"].C0 = char.Torso["Left Shoulder"].C0 * CFrame.new(-0.3,0,0) * CFrame.Angles(0,0,math.rad(-90))
375
wait()
376
killbrick2 = Instance.new("Part",char)
377
killbrick2.Size = Vector3.new(300,160,5800)
378
killbrick2.Transparency = 1
379
380
killbrick2.CanCollide = true
381
wait(0.1)
382
killbrick2.CanCollide = false
383
384
killbrick2.Anchored = true
385
386
killbrick2.CFrame = char.Torso.CFrame * CFrame.new(0,0,-1005)
387
388
killbrick2.Touched:connect(function(h)
389
local x = h.Parent:FindFirstChild("Humanoid")
390
if x then
391
if x.Parent.Name == game.Players.LocalPlayer.Name then
392
safe = true
393
else safe = false
394
end
395
if x then
396
if safe == false then
397
h.Parent.Torso.Velocity = CFrame.new(char.Torso.Position,h.Parent.Torso.Position).lookVector * 900
398
local bodyforc = Instance.new("BodyForce", h.Parent.Torso)
399
boom:Play()
400
bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0)
401
402
403
wait(0.2)
404
x.Parent:BreakJoints()
405
wait()
406
safe = true
407
end
408
end
409
end
410
end)
411
412
413
414
415
416
417
418
419
  local rng = Instance.new("Part", char)
420
        rng.Anchored = true
421
    rng.BrickColor = BrickColor.new("Institutional white")
422
        rng.CanCollide = false
423
    rng.FormFactor = 3
424
        rng.Name = "Ring"
425
     rng.Size = Vector3.new(1, 1, 1)
426
        rng.Transparency = 0.8
427
     rng.TopSurface = 0
428
     rng.BottomSurface = 0
429
rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0)
430
--rng.Rotation = Vector3.new(math.pi/2,0,0)
431
        rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
432
        local rngm = Instance.new("SpecialMesh", rng)
433
     rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
434
        rngm.Scale = Vector3.new(1, 1.3, 2)
435
local rng1 = Instance.new("Part", char)
436
        rng1.Anchored = true
437
    rng1.BrickColor = BrickColor.new("Institutional white")
438
        rng1.CanCollide = false
439
    rng1.FormFactor = 3
440
        rng1.Name = "Ring"
441
     rng1.Size = Vector3.new(1, 1, 1)
442
        rng1.Transparency = 0.8
443
     rng1.TopSurface = 0
444
     rng1.BottomSurface = 0
445
rng1.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0)
446
--rng1.Rotation = Vector3.new(math.pi/2,0,0)
447
        rng1.CFrame = rng1.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
448
        local rngm1 = Instance.new("SpecialMesh", rng1)
449
     rngm1.MeshId = "http://www.roblox.com/asset/?id=3270017"
450
        rngm1.Scale = Vector3.new(1, 1.3, 2)
451
        
452
        local p = (torso.CFrame*CFrame.new(-20,0,3))
453
        stream(p.p,((p*Vector3.new(-0.7,0,1))-p.p).unit,90,5) -- 20 is number of parts, 6 is distance between each one
454
        local p = (torso.CFrame*CFrame.new(20,0,3))
455
        stream(p.p,((p*Vector3.new(0.7,0,1))-p.p).unit,90,5) -- same here
456
457
local rng2 = Instance.new("Part", char)
458
        rng2.Anchored = true
459
    rng2.BrickColor = BrickColor.new("Institutional white")
460
        rng2.CanCollide = false
461
    rng2.FormFactor = 3
462
        rng2.Name = "Ring"
463
     rng2.Size = Vector3.new(1, 1, 1)
464
        rng2.Transparency = 0.8
465
     rng2.TopSurface = 0
466
     rng2.BottomSurface = 0
467
rng2.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0)
468
--rng1.Rotation = Vector3.new(math.pi/2,0,0)
469
        rng2.CFrame = rng2.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
470
        local rngm2 = Instance.new("SpecialMesh", rng2)
471
     rngm2.MeshId = "http://www.roblox.com/asset/?id=3270017"
472
        rngm2.Scale = Vector3.new(1, 1.3, 2)
473
wait(0.1)
474
           
475
boom3:Play()
476
     coroutine.wrap(function()
477
      for i = 1, 35, 0.5 do
478
479
480
481
482
483
        rngm.Scale = Vector3.new(50 + i*2, 10 + i*2, 2.5+ i*4)
484
rngm1.Scale = Vector3.new(50 + i*2, 1.4 + i*2, 1.4+ i*4)
485
rngm2.Scale = Vector3.new(50 + i*2, 10 + i*2, 1.2+ i*4)
486
    
487
          wait()
488
            end
489
              wait()
490
            rng:Destroy()
491
rng1:Destroy()
492
rng2:Destroy()
493
              killbrick2:Remove()
494
       wait(0.5)
495
char.Torso["Left Shoulder"].C0 = org
496
    wait(1)
497
punch2 = true
498
punch = true
499
 wait()
500
501
502
end)()
503
504
505
506
 end
507
508
509
wait(.1)
510
511
512
end
513
end)
514
515
516
517
518
519
m.KeyDown:connect(function(key)
520
    if key == "k" then
521
if punch == true then
522
punch = false
523
524
local ChatService = game:GetService("Chat")
525
526
 
527
ChatService:Chat(char.Head ,"Normal Punch")
528
wait(1)
529
org = char.Torso["Left Shoulder"].C0
530
char.Torso["Left Shoulder"].C0 = char.Torso["Left Shoulder"].C0 * CFrame.new(-0.3,0,0) * CFrame.Angles(0,0,math.rad(-90))
531
killbrick = Instance.new("Part",char)
532
killbrick.Size = Vector3.new(5,1,5)
533
killbrick.Transparency = 1
534
killbrick:BreakJoints()
535
killbrick.CanCollide = false
536
local wel = Instance.new("Weld",killbrick)
537
wel.Part0 = killbrick
538
wel.Part1 = char["Left Arm"]
539
wel.C0 = CFrame.new(0,1,0)
540
force = 90
541
542
killbrick.Touched:connect(function(h)
543
local x = h.Parent.Humanoid
544
if x.Health >= 6000 then
545
        fling = false
546
end
547
if x.Health < 6000 then
548
        fling = true
549
end
550
local stop = h.Parent.Torso.Velocity
551
if x.Parent.Name == game.Players.LocalPlayer.Name then
552
safe = true
553
else safe = false
554
end
555
if x then
556
if safe == false then
557
        if fling == true then
558
                force = 900
559
        
560
        end
561
if fling == false then
562
        force = 200
563
end
564
        
565
     
566
h.Parent.Torso.Velocity = CFrame.new(char.Torso.Position,h.Parent.Torso.Position).lookVector * force
567
local bodyforc = Instance.new("BodyForce", h.Parent.Torso)
568
boom:Play()
569
bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0)
570
571
572
wait(0.2)
573
x:TakeDamage(500)
574
wait()
575
safe = true
576
bodyforc:Remove()
577
h.Parent.Torso.Velocity = stop
578
579
end
580
end
581
end)
582
583
584
585
586
587
588
589
590
591
592
  local rng = Instance.new("Part", char)
593
        rng.Anchored = true
594
    rng.BrickColor = BrickColor.new("Institutional white")
595
        rng.CanCollide = false
596
    rng.FormFactor = 3
597
        rng.Name = "Ring"
598
     rng.Size = Vector3.new(1, 1, 1)
599
        rng.Transparency = 0.8
600
     rng.TopSurface = 0
601
     rng.BottomSurface = 0
602
rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0)
603
--rng.Rotation = Vector3.new(math.pi/2,0,0)
604
        rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
605
        local rngm = Instance.new("SpecialMesh", rng)
606
     rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
607
        rngm.Scale = Vector3.new(1, 1.3, 2)
608
wait(0.1)
609
           
610
boom2:Play()
611
     coroutine.wrap(function()
612
      for i = 1, 10, .4 do
613
        rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1)
614
    
615
          wait()
616
            end
617
              wait()
618
            rng:Destroy()
619
              killbrick:Remove()
620
       wait(0.5)
621
char.Torso["Left Shoulder"].C0 = org
622
    wait(1)
623
624
punch = true
625
 wait()
626
end)()
627
628
629
630
 end
631
632
633
wait(.1)
634
635
636
end
637
end)
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
m.KeyDown:connect(function(key)
653
    if key == "m" then
654
if jump == true then
655
jump = false
656
657
658
  local rng = Instance.new("Part", char)
659
        rng.Anchored = true
660
    rng.BrickColor = BrickColor.new("Institutional white")
661
        rng.CanCollide = false
662
    rng.FormFactor = 3
663
        rng.Name = "Ring"
664
     rng.Size = Vector3.new(1, 1, 1)
665
        rng.Transparency = 0.35
666
     rng.TopSurface = 0
667
     rng.BottomSurface = 0
668
     rng.Position = torso.Position - Vector3.new(0,2,0)
669
        rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
670
        local rngm = Instance.new("SpecialMesh", rng)
671
     rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
672
        rngm.Scale = Vector3.new(1, 1.3, 2)
673
wait(0.1)
674
             BV = Instance.new("BodyVelocity", torso)
675
     BV.maxForce = Vector3.new(0,20000,0)
676
       BV.P = 1000
677
     BV.velocity = Vector3.new(0,100,0)
678
boom:Play()
679
     coroutine.wrap(function()
680
        for i = 1, 60, 2 do
681
        rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1)
682
         rng.Transparency = i/60
683
          wait()
684
            end
685
              wait()
686
            rng:Destroy()
687
              
688
        hum.WalkSpeed = 50
689
    wait(1)
690
691
for i,v in pairs(torso:GetChildren()) do if v:IsA("BodyVelocity") then
692
v:Destroy() jumping2 = true falling = true wait(0.3) jumping2 = false falling = false wait(1.7) jump = true hum.WalkSpeed = 16  falling = false
693
 end end
694
 wait()
695
end)()
696
697
698
699
 end
700
701
702
wait(.1)
703
704
705
end
706
end)
707
708
709
710
711
712
713
m.KeyDown:connect(function(key)
714
    if key == "n" then
715
716
if falling == true then
717
falling = false
718
if jumping2 == true then
719
jumping2 = false
720
jump = false
721
BV = Instance.new("BodyVelocity", torso)
722
     BV.maxForce = Vector3.new(0,-20000,0)
723
       BV.P = -1000
724
     BV.velocity = Vector3.new(0,-70,0)
725
wait(0.6)
726
  local rng = Instance.new("Part", char)
727
        rng.Anchored = true
728
    rng.BrickColor = BrickColor.new("Institutional white")
729
        rng.CanCollide = false
730
    rng.FormFactor = 3
731
        rng.Name = "Ring"
732
     rng.Size = Vector3.new(1, 1, 1)
733
        rng.Transparency = 0.35
734
     rng.TopSurface = 0
735
     rng.BottomSurface = 0
736
     rng.Position = torso.Position - Vector3.new(0,2,0)
737
        rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0))
738
        local rngm = Instance.new("SpecialMesh", rng)
739
     rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
740
        rngm.Scale = Vector3.new(1, 1.3, 2)
741
742
             
743
boom:Play()
744
     coroutine.wrap(function()
745
        for i = 1, 60, 2 do
746
        rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1)
747
         rng.Transparency = i/60
748
          wait()
749
            end
750
              wait()
751
            rng:Destroy()
752
              
753
       
754
755
756
for i,v in pairs(torso:GetChildren()) do if v:IsA("BodyVelocity") then
757
v:Destroy()  wait(2)  jumping2 = true hum.WalkSpeed = 16 
758
 end end
759
 wait()
760
end)()
761
762
763
764
 end
765
766
767
wait(.1)
768
769
end
770
end
771
end)
772
m.KeyDown:connect(function(k)
773
if k == "f" then
774
asd3:Stop()
775
asd2:Stop()
776
asd4:Stop()
777
asd6:Stop()
778
asd5:Stop()
779
end
780
end) 
781
------------
782
783
local verlet = {}
784
verlet.step_time = 1 / 50
785
verlet.gravity = Vector3.new(0, -10, 0)
786
787
local char = game.Players.LocalPlayer.Character
788
local torso = char:WaitForChild("Torso")
789
local parts = {}
790
local render = game:GetService("RunService").RenderStepped
791
792
wait(2)
793
794
local point = {}
795
local link = {}
796
local rope = {}
797
798
local function ccw(A,B,C)
799
    return (C.y-A.y) * (B.x-A.x) > (B.y-A.y) * (C.x-A.x)
800
end
801
802
local function intersect(A,B,C,D)
803
    return ccw(A,C,D) ~= ccw(B,C,D) and ccw(A,B,C) ~= ccw(A,B,D)
804
end
805
806
local function vec2(v)
807
	return Vector2.new(v.x, v.z)
808
end
809
810
function point:step()
811
	if not self.fixed then
812
		local derivative = (self.position - self.last_position) * 0.95
813
		self.last_position = self.position
814
		self.position = self.position + derivative + (self.velocity * verlet.step_time ^ 2)
815
		--[[local torsoP = torso.CFrame * CFrame.new(-1, 0, 0.5)
816
		local torsoE = torso.CFrame * CFrame.new(1, 0, 0.5)
817
		local pointE = self.position + torso.CFrame.lookVector * 100
818
		local doIntersect = intersect(vec2(torsoP.p), vec2(torsoE.p), vec2(self.position), vec2(pointE))
819
		if not doIntersect then
820
			self.postition = self.position - torso.CFrame.lookVector * 10
821
		end]]
822
	end
823
end
824
825
function link:step()
826
	for i = 1, 1 do
827
		local distance = self.point1.position - self.point2.position
828
		local magnitude = distance.magnitude
829
		local differance = (self.length - magnitude) / magnitude
830
		local translation = ((self.point1.fixed or self.point2.fixed) and 1 or 0.6) * distance * differance
831
		if not self.point1.fixed then
832
			self.point1.position = self.point1.position + translation
833
		end
834
		if not self.point2.fixed then
835
			self.point2.position = self.point2.position - translation
836
		end
837
	end
838
end
839
840
function verlet.new(class, a, b, c)
841
	if class == "Point" then
842
		local new = {}
843
		setmetatable(new, {__index = point})
844
		new.class = class
845
		new.position = a or Vector3.new()
846
		new.last_position = new.position
847
		new.velocity = verlet.gravity
848
		new.fixed = false
849
		return new
850
	elseif class == "Link" then
851
		local new = {}
852
		setmetatable(new, {__index = link})
853
		new.class = class
854
		new.point1 = a
855
		new.point2 = b
856
		new.length = c or (a.position - b.position).magnitude
857
		return new
858
	elseif class == "Rope" then
859
		local new = {}
860
		setmetatable(new, {__index = link})
861
		new.class = class
862
		new.start_point = a
863
		new.finish_point = b
864
		new.points = {}
865
		new.links = {}
866
		local inc = (b - a) / 10
867
		for i = 0, 10 do
868
			table.insert(new.points, verlet.new("Point", a + (i * inc)))
869
		end
870
		for i = 2, #new.points do
871
			table.insert(new.links, verlet.new("Link", new.points[i - 1], new.points[i]))
872
		end
873
		return new
874
	end
875
end
876
877
local tris = {}
878
local triParts = {}
879
880
local function GetDiscoColor(hue)
881
 local section = hue % 1 * 3
882
 local secondary = 0.5 * math.pi * (section % 1)
883
 if section < 1 then
884
  return Color3.new(255, 255, 255)
885
 elseif section < 2 then
886
  return Color3.new(255, 255, 255)
887
 else
888
  return Color3.new(255, 255, 255)
889
 end
890
end
891
892
local function setupPart(part)
893
	part.Anchored = true
894
	part.FormFactor = 3
895
	part.CanCollide = false
896
	part.TopSurface = 10
897
	part.BottomSurface = 10
898
	part.LeftSurface = 10
899
	part.RightSurface = 10
900
	part.FrontSurface = 10
901
	part.BackSurface = 10
902
	part.Material = "Plastic"
903
	local m = Instance.new("SpecialMesh", part)
904
	m.MeshType = "Wedge"
905
	m.Scale = Vector3.new(0.2, 1, 1)
906
	return part
907
end
908
909
local function CFrameFromTopBack(at, top, back)
910
	local right = top:Cross(back)
911
	return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x,  right.y, top.y, back.y, right.z, top.z, back.z)
912
end
913
914
local function drawTri(parent, a, b, c)
915
	local this = {}
916
	local mPart1 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
917
	local mPart2 = table.remove(triParts, 1) or setupPart(Instance.new("Part"))
918
	function this:Set(a, b, c)
919
		local ab, bc, ca = b-a, c-b, a-c
920
		local abm, bcm, cam = ab.magnitude, bc.magnitude, ca.magnitude
921
		local edg1 = math.abs(0.5 + ca:Dot(ab)/(abm*abm))
922
		local edg2 = math.abs(0.5 + ab:Dot(bc)/(bcm*bcm))
923
		local edg3 = math.abs(0.5 + bc:Dot(ca)/(cam*cam))
924
		if edg1 < edg2 then
925
			if edg1 >= edg3 then		
926
				a, b, c = c, a, b
927
				ab, bc, ca = ca, ab, bc
928
				abm = cam
929
			end
930
		else
931
			if edg2 < edg3 then
932
				a, b, c = b, c, a
933
				ab, bc, ca = bc, ca, ab
934
				abm = bcm
935
			else
936
				a, b, c = c, a, b
937
				ab, bc, ca = ca, ab, bc
938
				abm = cam
939
			end
940
		end
941
	 
942
		local len1 = -ca:Dot(ab)/abm
943
		local len2 = abm - len1
944
		local width = (ca + ab.unit*len1).magnitude
945
	 
946
		local maincf = CFrameFromTopBack(a, ab:Cross(bc).unit, -ab.unit)
947
	 
948
		if len1 > 0.2 then
949
			mPart1.Parent = parent
950
			mPart1.Size = Vector3.new(0.2, width, len1)
951
			mPart1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
952
		else
953
			mPart1.Parent = nil
954
		end
955
		
956
		if len2 > 0.2 then
957
			mPart2.Parent = parent
958
			mPart2.Size = Vector3.new(0.2, width, len2)
959
			mPart2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
960
		else
961
			mPart2.Parent = nil
962
		end	
963
	end
964
	function this:SetProperty(prop, value)
965
		mPart1[prop] = value
966
		mPart2[prop] = value
967
	end
968
	this:Set(a, b, c)
969
	function this:Destroy()
970
		mPart1:Destroy()
971
		mPart2:Destroy()
972
	end
973
	this.p1 = mPart1
974
	this.p2 = mPart2
975
	this.p1.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p1.CFrame.Y * 0.5 + time())))
976
	this.p2.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p2.CFrame.Y * 0.5 + time())))
977
	return this
978
end
979
980
function verlet.draw(object, id)
981
	if object.class == "Point" then
982
		local part = parts[id]
983
		part.BrickColor = BrickColor.new(255, 0, 0)
984
		part.Transparency = 0
985
		part.formFactor = 3
986
		part.Anchored = true
987
		part.CanCollide = false
988
		part.TopSurface = 0
989
		part.BottomSurface = 0
990
		part.Size = Vector3.new(0.35, 0.35, 0.35)
991
		part.Material = "Plastic"
992
		part.CFrame = CFrame.new(object.position)
993
		part.Parent = torso
994
		return part
995
	elseif object.class == "Link" then
996
		local part = parts[id]
997
		local dist = (object.point1.position - object.point2.position).magnitude
998
		part.Size = Vector3.new(0.2, 0.2, dist)
999
		part.CFrame = CFrame.new(object.point1.position, object.point2.position) * CFrame.new(0, 0, dist * -0.5)
1000
		part.Parent = torso
1001
		return part
1002
	end
1003
end
1004
1005
function verlet.clear()
1006
	for _, v in pairs(workspace:GetChildren()) do
1007
		if v.Name == "Part" then
1008
			v:Destroy()
1009
		end
1010
	end
1011
end
1012
1013
local points = {}
1014
local links = {}
1015
1016
for x = 0, 2 do
1017
	points[x] = {}
1018
	for y = 0, 3 do
1019
		points[x][y] = verlet.new("Point", torso.Position + Vector3.new(x * 0.8 - 2, 2 - y * 0.8, 5 + y * 0.4))
1020
		points[x][y].fixed = y == 0
1021
	end
1022
end
1023
1024
for x = 1, 2 do
1025
	for y = 0, 3 do
1026
		links[#links + 1] = verlet.new("Link", points[x][y], points[x - 1][y], 1 + y * 0.08)
1027
	end
1028
end
1029
1030
for x = 0, 2 do
1031
	for y = 1, 3 do
1032
		links[#links + 1] = verlet.new("Link", points[x][y], points[x][y - 1], 1.2 + y * 0.03)
1033
	end
1034
end
1035
1036
render:connect(function()
1037
	for x = 0, 2 do
1038
		for y = 0, 3 do
1039
			if y == 0 then
1040
				points[x][y].position = (torso.CFrame * CFrame.new(x * 1 - 1, 1, 0.5)).p
1041
			else
1042
				points[x][y]:step()
1043
			end
1044
		end
1045
	end
1046
	for i = 1, #links do
1047
		links[i]:step()
1048
	end
1049
	for i = 1, #tris do
1050
		triParts[#triParts + 1] = tris[i].p1
1051
		triParts[#triParts + 1] = tris[i].p2
1052
	end
1053
	tris = {}
1054
	for x = 1, 2 do
1055
		for y = 1, 3 do
1056
			tris[#tris + 1] = drawTri(torso, points[x - 1][y - 1].position, points[x - 1][y].position, points[x][y - 1].position)
1057
			tris[#tris + 1] = drawTri(torso, points[x][y].position, points[x - 1][y].position, points[x][y - 1].position)
1058
		end
1059
	end
1060
end)
1061
1062
--/ edited by the cancerous rocky2u
1063
1064
local plr = game.Players.LocalPlayer
1065
local chr = plr.Character
1066
local mouse = plr:GetMouse()
1067
1068
_G.hotkey = 'e'
1069
1070
mouse.KeyDown:connect(function(key)
1071
	if key == _G.hotkey then
1072
		local chr = game.Players.LocalPlayer.Character
1073
		stopAnimations()
1074
		chr.Animate.Disabled = true
1075
		chr.Torso["Left Shoulder"].C1 = CFrame.new(0, 0.699999988, 0, 0.939692616, 0, -0.342020124, -0.330366075, -0.258819044, -0.907673359, -0.0885213241, 0.965925813, -0.243210346)
1076
		chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.600000024, 0.5, -0.200000003, 0.664462984, 0.241844743, 0.707106769, -0.664462984, -0.241844788, 0.707106769, 0.342020154, -0.939692616, -3.09086197e-008)
1077
		chr.Torso["Neck"].C1 = CFrame.new(0, -0.600000024, 0, -0.866025388, 0.5, 0, -0.171010137, -0.29619807, 0.939692616, 0.469846278, 0.813797653, 0.342020124)
1078
	end
1079
end)
1080
1081
mouse.KeyUp:connect(function(key)
1082
	if key == _G.hotkey then
1083
		local chr = game.Players.LocalPlayer.Character
1084
		chr.Animate.Disabled = false
1085
		chr.Torso["Left Shoulder"].C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1086
		chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
1087
		chr.Torso["Neck"].C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
1088
	end
1089
end)
1090
1091
function stopAnimations()
1092
	for _,v in pairs(game.Players.LocalPlayer.Character.Humanoid:GetPlayingAnimationTracks()) do
1093
		v:Stop()
1094
	end
1095
end