View difference between Paste ID: TxVNjqx2 and C2gNR9nX
SHOW: | | - or go back to the newest paste.
1-
--[[KillerDarkness0105's/Codex's Sonic script]]--
1+
2
-- This script has been converted to FE by iPxter
3
4
5
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
6-
Player=game:GetService("Players").LocalPlayer
6+
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
7
do
8
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
9
	script.Parent = Player.Character
10
11
	--RemoteEvent for communicating
12
	local Event = Instance.new("RemoteEvent")
13
	Event.Name = "UserInput_Event"
14
15
	--Fake event to make stuff like Mouse.KeyDown work
16
	local function fakeEvent()
17
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
18
		t.connect = t.Connect
19
		return t
20
	end
21
22
	--Creating fake input objects with fake variables
23
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
24
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
25
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
26
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
27
	end}
28
	--Merged 2 functions into one by checking amount of arguments
29
	CAS.UnbindAction = CAS.BindAction
30
31
	--This function will trigger the events that have been :Connect()'ed
32
	local function te(self,ev,...)
33
		local t = m[ev]
34
		if t and t._fakeEvent and t.Function then
35
			t.Function(...)
36
		end
37
	end
38
	m.TrigEvent = te
39
	UIS.TrigEvent = te
40
41
	Event.OnServerEvent:Connect(function(plr,io)
42
	    if plr~=Player then return end
43
		if io.isMouse then
44
			m.Target = io.Target
45
			m.Hit = io.Hit
46
		else
47
			local b = io.UserInputState == Enum.UserInputState.Begin
48
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
49
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
50
			end
51
			for _,t in pairs(CAS.Actions) do
52
				for _,k in pairs(t.Keys) do
53
					if k==io.KeyCode then
54
						t.Function(t.Name,io.UserInputState,io)
55
					end
56
				end
57
			end
58
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
59
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
60
	    end
61
	end)
62
	Event.Parent = NLS([==[
63
	local Player = game:GetService("Players").LocalPlayer
64
	local Event = script:WaitForChild("UserInput_Event")
65
66
	local UIS = game:GetService("UserInputService")
67
	local input = function(io,a)
68
		if a then return end
69
		--Since InputObject is a client-side instance, we create and pass table instead
70
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
71
	end
72
	UIS.InputBegan:Connect(input)
73
	UIS.InputEnded:Connect(input)
74
75
	local Mouse = Player:GetMouse()
76
	local h,t
77
	--Give the server mouse data 30 times every second, but only if the values changed
78
	--If player is not moving their mouse, client won't fire events
79
	while wait(1/30) do
80
		if h~=Mouse.Hit or t~=Mouse.Target then
81
			h,t=Mouse.Hit,Mouse.Target
82
			Event:FireServer({isMouse=true,Target=t,Hit=h})
83
		end
84
	end]==],Player.Character)
85
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
86
end
87
88
local Players = game:GetService("Players")
89
local MainCmd = "script"
90
local CmdSub = #MainCmd + 1
91
92
for _, Child in pairs(script:GetChildren()) do
93
	if Child:IsA("Script") then
94
		Child.Disabled = true
95
	end
96
end
97
98
function OnChatted(owner, message)
99
	if message:sub(1, CmdSub) == MainCmd .."/" then
100
		local scriptChildren = script:GetChildren()
101
		for _, Child in pairs(scriptChildren) do
102
			if message:sub(CmdSub + 1) == Child.Name:lower() then
103
				local New = Child:Clone()
104
				New.Parent = owner.Backpack or owner.PlayerGui
105
				New.Disabled = false
106
			end
107
		end
108
	end 
109
end
110
111
function ConnectPlr(name)
112
	for _, PossiblePlayer in pairs(Players:GetChildren()) do
113
		if PossiblePlayer:IsA("Player") then
114
			local Player = PossiblePlayer
115
			if Player.Name == name then
116
				Player.Chatted:Connect(function(MESSAGE)
117
					OnChatted(Player, MESSAGE:lower())
118
				end)
119
			else
120
				error("No player found!")
121
			end
122
		end
123
	end
124
end
125
126
return ConnectPlr
127
wait(0.07)
128
Player=owner
129
Character=Player.Character
130
PlayerGui=Player.PlayerGui
131
Backpack=Player.Backpack
132
Torso=Character.Torso
133
Head=Character.Head
134
Humanoid=Character.Humanoid
135
LeftArm=Character["Left Arm"]
136
LeftLeg=Character["Left Leg"]
137
RightArm=Character["Right Arm"]
138
RightLeg=Character["Right Leg"]
139
LS=Torso["Left Shoulder"]
140
LH=Torso["Left Hip"]
141
RS=Torso["Right Shoulder"]
142
RH=Torso["Right Hip"]
143
Face = Head.face
144
Neck=Torso.Neck
145
it=Instance.new
146
attacktype=1
147
attacktype2=1
148
vt=Vector3.new
149
cf=CFrame.new
150
cn=CFrame.new
151
euler=CFrame.fromEulerAnglesXYZ
152
angles=CFrame.Angles
153
combo = 0
154
necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
155
necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
156
LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
157
LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
158
RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
159
RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
160
RootPart=Character.HumanoidRootPart
161
RootJoint=RootPart.RootJoint
162
RootCF=euler(-1.57,0,3.14)
163
attack = false
164
attackdebounce = false
165
trispeed=.2
166
attackmode='none'
167
local idle=0
168
local Anim="Idle"
169
stance = false
170
local ff = 2
171
noleg = false
172
evadecooldown = false
173
Humanoid.Animator.Parent = nil
174
equip = false
175
local Effects = {}
176-
		    Player=game:GetService('Players').LocalPlayer
176+
177
 df = false
178-
		    mouse=Player:GetMouse()
178+
179
local sine = 0
180
local change = 1
181
local val = 0
182
local speed = 0
183
local rs = game:GetService("RunService").RenderStepped
184
cam = workspace.CurrentCamera
185
local RbxUtility = LoadLibrary("RbxUtility")
186
local Create = RbxUtility.Create
187
deb = game:GetService("Debris")
188
Face.Transparency = 0
189
--Face.Texture = "rbxassetid://176217905" --176217905
190
Humanoid.WalkSpeed = 64
191
local freefall = 0
192
Head.Running.SoundId = "rbxassetid://758199523"
193
Head.Running.Volume = 2
194
local boost = false
195
Humanoid.JumpPower = 88
196
local musicnum = 1
197
    
198
     local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
199
local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
200
 local GravPoint = RootPart.Velocity.y
201
 local NV = Vector3.new(0,0,0)
202
print("Move list")
203
print("---------")
204
print("Shift = Boost")
205
print("Ctrl = Mach Speed Boost")
206
print("Q = Left QuickStep, E  = Right QuickStep")
207
print("C = Slide, in air to stomp")
208
print("Jump Then Hold B near a wall to wallrun")
209
print("M to change music, if you're standing still you'll do a special animation!")
210
print("Space near a wall to walljump, away from a wall homing attack")
211
		music = Instance.new("Sound",PlayerGui)
212
		music.Volume = 1
213
		music.TimePosition = 0
214
		music.Pitch = 1
215
		music.SoundId = "rbxassetid://1251555494"
216
		music.Looped = true
217
		music:Play()
218
		
219
220
		boostsound = Instance.new("Sound",PlayerGui)
221
		boostsound.Volume = .6
222
		boostsound.TimePosition = 0
223
		boostsound.Pitch = 1
224
		boostsound.SoundId = "rbxassetid://924922553"
225
		boostsound.Looped = false
226
227
228
229
		stompsound = Instance.new("Sound",PlayerGui)
230
		stompsound.Volume = 2
231
		stompsound.TimePosition = 0
232
		stompsound.Pitch = 1
233
		stompsound.SoundId = "rbxassetid://1295424184"
234
		stompsound.Looped = false
235
236
237
238
			       so = function(id,par,vol,pit)
239
		coroutine.resume(coroutine.create(function()
240
		local sou = Instance.new("Sound",par or workspace)
241
		sou.Volume=vol
242
		sou.Pitch=pit or 1
243
		sou.SoundId=id
244
		sou:play()
245
		game:GetService("Debris"):AddItem(sou,8)
246
		end))
247
		end
248
		
249
		--save shoulders
250
		RSH, LSH=nil, nil
251
		--welds
252
		RW, LW=Instance.new("Weld"), Instance.new("Weld")
253
		RW.Name="Right Shoulder" LW.Name="Left Shoulder"
254
		LH=Torso["Left Hip"]
255
		RH=Torso["Right Hip"]
256
		TorsoColor=Torso.BrickColor
257
		function NoOutline(Part)
258
		Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
259
		end
260
		player=Player
261
		ch=Character
262
		RSH=ch.Torso["Right Shoulder"]
263
		LSH=ch.Torso["Left Shoulder"]
264
		--
265
		RSH.Parent=nil
266
		LSH.Parent=nil
267
		--
268
		RW.Name="Right Shoulder"
269
		RW.Part0=ch.Torso
270
		RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
271
		RW.C1=cf(0, 0.5, 0)
272
		RW.Part1=ch["Right Arm"]
273
		RW.Parent=ch.Torso
274
		--
275
		LW.Name="Left Shoulder"
276
		LW.Part0=ch.Torso
277
		LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
278
		LW.C1=cf(0, 0.5, 0)
279
		LW.Part1=ch["Left Arm"]
280
		LW.Parent=ch.Torso
281
		 
282
		 
283
		newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
284
		    local wld = Instance.new("Weld", wp1)
285
		    wld.Part0 = wp0
286
		    wld.Part1 = wp1
287
		    wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
288
		end
289
		 local rs = game:GetService("RunService").RenderStepped
290
		 
291
		newWeld(RootPart, Torso, 0, -1, 0)
292
		Torso.Weld.C1 = CFrame.new(0, -1, 0)
293
		newWeld(Torso, LeftLeg, -0.5, -1, 0)
294
		LeftLeg.Weld.C1 = CFrame.new(0, 1, 0)
295
		newWeld(Torso, RightLeg, 0.5, -1, 0)
296
		RightLeg.Weld.C1 = CFrame.new(0, 1, 0)
297
		
298
		    Player=owner
299
		    Character=Player.Character
300
		    m=Instance.new('Model',Character)
301
		 
302
		 
303
		    local function weldBetween(a, b)
304
		        local weldd = Instance.new("ManualWeld")
305
		        weldd.Part0 = a
306
		        weldd.Part1 = b
307
		        weldd.C0 = CFrame.new()
308
		        weldd.C1 = b.CFrame:inverse() * a.CFrame
309
		        weldd.Parent = a
310
		        return weldd
311
		    end
312
		   
313
		    ArtificialHB = Instance.new("BindableEvent", script)
314
		ArtificialHB.Name = "Heartbeat"
315
		 
316
		script:WaitForChild("Heartbeat")
317
		 
318
		frame = 1 / 80
319
		tf = 0
320
		allowframeloss = false
321
		tossremainder = false
322
		lastframe = tick()
323
		script.Heartbeat:Fire()
324
		game:GetService("RunService").Heartbeat:connect(function(s, p)
325
		    tf = tf + s
326
		    if tf >= frame then
327
		        if allowframeloss then
328
		            script.Heartbeat:Fire()
329
		            lastframe = tick()
330
		        else
331
		            for i = 1, math.floor(tf / frame) do
332
		                script.Heartbeat:Fire()
333
		            end
334
		            lastframe = tick()
335
		        end
336
		        if tossremainder then
337
		            tf = 0
338
		        else
339
		            tf = tf - frame * math.floor(tf / frame)
340
		        end
341
		    end
342
		end)
343
		 
344
--[[]
345
		function swait(num)
346
		    if num == 0 or num == nil then
347
		        ArtificialHB.Event:wait()
348
		    else
349
		        for i = 0, num do
350
		            ArtificialHB.Event:wait()
351
		        end
352
		    end
353
	end
354
355
	]]
356
	
357
358
359
360
	function swait(num)
361
	if num == 0 or num == nil then
362
		game:service("RunService").Stepped:wait()
363
	else
364
		for i = 0, num do
365
			game:service("RunService").Stepped:wait()
366
		end
367
	end
368
end
369
370
		function RemoveOutlines(part)
371
		    part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
372
		end
373
		   
374
		
375
		part = function(formfactor, parent, reflectance, transparency, brickcolor, name, size)
376
		  local fp = it("Part")
377
		  fp.formFactor = formfactor
378
		  fp.Parent = parent
379
		  fp.Reflectance = reflectance
380
		  fp.Transparency = transparency
381
		  fp.CanCollide = false
382
		  fp.Locked = true
383
		  fp.BrickColor = brickcolor
384
		  fp.Name = name
385
		  fp.Size = size
386
		  fp.Position = Torso.Position
387
		  NoOutline(fp)
388
		  if fp.BrickColor == BrickColor.new("Dark indigo") then
389
		    fp.Material = "Neon"
390
		  else
391
		    if fp.BrickColor == BrickColor.new("Really black") then
392
		      fp.BrickColor = BrickColor.new("Really black")
393
		      fp.Material = "Metal"
394
		    else
395
		      fp.Material = "Neon"
396
		    end
397
		  end
398
		  fp:BreakJoints()
399
		  return fp
400
		end
401
		
402
		mesh = function(Mesh, part, meshtype, meshid, offset, scale)
403
		  local mesh = it(Mesh)
404
		  mesh.Parent = part
405
		  if Mesh == "SpecialMesh" then
406
		    mesh.MeshType = meshtype
407
		    mesh.MeshId = meshid
408
		  end
409
		  mesh.Offset = offset
410
		  mesh.Scale = scale
411
		  return mesh
412
		end
413
		
414
		weld = function(parent, part0, part1, c0)
415
		  local weld = it("Weld")
416
		  weld.Parent = parent
417
		  weld.Part0 = part0
418
		  weld.Part1 = part1
419
		  weld.C0 = c0
420
		  return weld
421
		end
422
		
423
		F1 = Instance.new("Folder", Character)
424
		F1.Name = "Effects Folder"
425
		F2 = Instance.new("Folder", F1)
426
		F2.Name = "Effects"
427
		Triangle = function(a, b, c)
428
		end
429
		
430
		MagicBlock = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
431
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
432
		  prt.Anchored = true
433
		  prt.CanCollide = false
434
		  prt.CFrame = cframe
435
		  prt.Name = "prt"
436
		  msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
437
		  game:GetService("Debris"):AddItem(prt, 5)
438
		  table.insert(Effects, {prt, "Block1", delay, x3, y3, z3})
439
		end
440
		
441
		
442
		
443
		MagicCircle = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
444
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
445
		  prt.Anchored = true
446
		  prt.CanCollide = false
447
		  prt.CFrame = cframe
448
		  prt.Name = "prt"
449
		  local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
450
		  game:GetService("Debris"):AddItem(prt, 5)
451
		  table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3})
452
		end
453
		
454
		MagicWave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
455
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
456
		  prt.Anchored = true
457
		  prt.CFrame = cframe
458
		  local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, 0), vt(x1, y1, z1))
459
		  game:GetService("Debris"):AddItem(prt, 5)
460
		  table.insert(Effects, {prt, "Cylinder", delay, x3, y3, z3})
461
		end
462
		
463
		MagicCylinder = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
464
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt(0.2, 0.2, 0.2))
465
		  prt.Anchored = true
466
		  prt.CFrame = cframe
467
		  msh = mesh("SpecialMesh", prt, "Head", "", vt(0, 0, 0), vt(x1, y1, z1))
468
		  game:GetService("Debris"):AddItem(prt, 5)
469
		  Effects[#Effects + 1] = {prt, "Cylinder", delay, x3, y3, z3}
470
		end
471
		
472
		MagicCylinder2 = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
473
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt(0.2, 0.2, 0.2))
474
		  prt.Anchored = true
475
		  prt.CFrame = cframe
476
		  msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
477
		  game:GetService("Debris"):AddItem(prt, 5)
478
		  Effects[#Effects + 1] = {prt, "Cylinder", delay, x3, y3, z3}
479
		end
480
		
481
		MagicBlood = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
482
		  local prt = part(3, F2, 0, 0, brickcolor, "Effect", vt())
483
		  prt.Anchored = true
484
		  prt.CFrame = cframe
485
		  local msh = mesh("SpecialMesh", prt, "Sphere", "", vt(0, 0, 0), vt(x1, y1, z1))
486
		  game:GetService("Debris"):AddItem(prt, 5)
487
		  table.insert(Effects, {prt, "Blood", delay, x3, y3, z3})
488
		end
489
		
490
		ElecEffect = function(cff, x, y, z)
491
		  local prt = part(3, F2, 0, 0, BrickColor.new("Dark indigo"), "Part", vt(1, 1, 1))
492
		  prt.Anchored = true
493
		  prt.CFrame = cff * cf(math.random(-x, x), math.random(-y, y), math.random(-z, z))
494
		  prt.CFrame = cf(prt.Position)
495
		  game:GetService("Debris"):AddItem(prt, 2)
496
		  xval = math.random() / 2
497
		  yval = math.random() / 2
498
		  zval = math.random() / 2
499
		  msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(xval, yval, zval))
500
		  Effects[#Effects + 1] = {prt, "Elec", 0.1, x, y, z, xval, yval, zval}
501
		end
502
		
503
		function FindNearestTorso(Position, Distance, SinglePlayer)
504
			if SinglePlayer then
505
				return (SinglePlayer.Torso.CFrame.p - Position).magnitude < Distance
506
			end
507
			local List = {}
508
			for i, v in pairs(workspace:GetChildren()) do
509
				if v:IsA("Model") then
510
					if v:findFirstChild("Torso") then
511
						if v ~= Character then
512
							if (v.Torso.Position - Position).magnitude <= Distance then
513
								table.insert(List, v)
514
							end 
515
						end 
516
					end 
517
				end 
518
			end
519
			return List
520
		end
521
		
522
		
523
		function CreatePart(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
524
	local Part = Create("Part"){
525
		Parent = Parent,
526
		Reflectance = Reflectance,
527
		Transparency = Transparency,
528
		CanCollide = false,
529
		Locked = true,
530
		BrickColor = BrickColor.new(tostring(BColor)),
531
		Name = Name,
532
		Size = Size,
533
		Material = Material,
534
	}
535
	RemoveOutlines(Part)
536
	return Part
537
end
538
	
539
function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
540
	local Msh = Create(Mesh){
541
		Parent = Part,
542
		Offset = OffSet,
543
		Scale = Scale,
544
	}
545
	if Mesh == "SpecialMesh" then
546
		Msh.MeshType = MeshType
547
		Msh.MeshId = MeshId
548
	end
549
	return Msh
550
end
551
		
552
		
553
		
554
function BlockEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
555
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
556
	prt.Anchored = true
557
	prt.CFrame = cframe
558
	local msh = CreateMesh("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
559
	game:GetService("Debris"):AddItem(prt, 10)
560
	if Type == 1 or Type == nil then
561
		table.insert(Effects, {
562
			prt,
563
			"Block1",
564
			delay,
565
			x3,
566
			y3,
567
			z3,
568
			msh
569
		})
570
	elseif Type == 2 then
571
		table.insert(Effects, {
572
			prt,
573
			"Block2",
574
			delay,
575
			x3,
576
			y3,
577
			z3,
578
			msh
579
		})
580
	end
581
end
582
583
function SphereEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
584
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
585
	prt.Anchored = true
586
	prt.CFrame = cframe
587
	local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
588
	game:GetService("Debris"):AddItem(prt, 10)
589
	table.insert(Effects, {
590
		prt,
591
		"Cylinder",
592
		delay,
593
		x3,
594
		y3,
595
		z3,
596
		msh
597
	})
598
end
599
600
function RingEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay,material)
601
local prt=CreatePart(workspace,material,0,0,brickcolor,"Effect",vt(.5,.5,.5))--part(3,workspace,"SmoothPlastic",0,0,brickcolor,"Effect",vt(0.5,0.5,0.5))
602
prt.Anchored=true
603
prt.CFrame=cframe
604
msh=CreateMesh("SpecialMesh",prt,"FileMesh","http://www.roblox.com/asset/?id=3270017",vt(0,0,0),vt(x1,y1,z1))
605
game:GetService("Debris"):AddItem(prt,2)
606
coroutine.resume(coroutine.create(function(Part,Mesh,num) 
607
for i=0,1,delay do
608
swait()
609
Part.Transparency=i
610
Mesh.Scale=Mesh.Scale+vt(x3,y3,z3)
611
end
612
Part.Parent=nil
613
end),prt,msh,(math.random(0,1)+math.random())/5)
614
end
615
616
function CylinderEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
617
	local prt = CreatePart(workspace, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
618
	prt.Anchored = true
619
	prt.CFrame = cframe
620
	local msh = CreateMesh("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
621
	game:GetService("Debris"):AddItem(prt, 10)
622
	table.insert(Effects, {
623
		prt,
624
		"Cylinder",
625
		delay,
626
		x3,
627
		y3,
628
		z3,
629
		msh
630
	})
631
end
632
633
function WaveEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
634
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
635
	prt.Anchored = true
636
	prt.CFrame = cframe
637
	local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
638
	game:GetService("Debris"):AddItem(prt, 10)
639
	table.insert(Effects, {
640
		prt,
641
		"Cylinder",
642
		delay,
643
		x3,
644
		y3,
645
		z3,
646
		msh
647
	})
648
end
649
650
function SpecialEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
651
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
652
	prt.Anchored = true
653
	prt.CFrame = cframe
654
	local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://24388358", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
655
	game:GetService("Debris"):AddItem(prt, 10)
656
	table.insert(Effects, {
657
		prt,
658
		"Cylinder",
659
		delay,
660
		x3,
661
		y3,
662
		z3,
663
		msh
664
	})
665
end
666
667
668
function MoonEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
669
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
670
	prt.Anchored = true
671
	prt.CFrame = cframe
672
	local msh = CreateMesh("SpecialMesh", prt, "FileMesh", "rbxassetid://259403370", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
673
	game:GetService("Debris"):AddItem(prt, 10)
674
	table.insert(Effects, {
675
		prt,
676
		"Cylinder",
677
		delay,
678
		x3,
679
		y3,
680
		z3,
681
		msh
682
	})
683
end
684
685
function HeadEffect(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
686
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
687
	prt.Anchored = true
688
	prt.CFrame = cframe
689
	local msh = CreateMesh("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
690
	game:GetService("Debris"):AddItem(prt, 10)
691
	table.insert(Effects, {
692
		prt,
693
		"Cylinder",
694
		delay,
695
		x3,
696
		y3,
697
		z3,
698
		msh
699
	})
700
end
701
702
function BreakEffect(brickcolor, cframe, x1, y1, z1)
703
	local prt = CreatePart(workspace, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
704
	prt.Anchored = true
705
	prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
706
	local msh = CreateMesh("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
707
	local num = math.random(10, 50) / 1000
708
	game:GetService("Debris"):AddItem(prt, 10)
709
	table.insert(Effects, {
710
		prt,
711
		"Shatter",
712
		num,
713
		prt.CFrame,
714
		math.random() - math.random(),
715
		0,
716
		math.random(50, 100) / 100
717
	})
718
end
719
		
720
		local lerp = function(a, b, t)
721
	return a * (1 - t) + b * t
722
end
723
		
724
		function clerp(a,b,t)
725
		local qa = {QuaternionFromCFrame(a)}
726
		local qb = {QuaternionFromCFrame(b)}
727
		local ax, ay, az = a.x, a.y, a.z
728
		local bx, by, bz = b.x, b.y, b.z
729
		local _t = 1-t
730
		return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
731
		end
732
		 
733
		function QuaternionFromCFrame(cf)
734
		local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
735
		local trace = m00 + m11 + m22
736
		if trace > 0 then
737
		local s = math.sqrt(1 + trace)
738
		local recip = 0.5/s
739
		return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
740
		else
741
		local i = 0
742
		if m11 > m00 then
743
		i = 1
744
		end
745
		if m22 > (i == 0 and m00 or m11) then
746
		i = 2
747
		end
748
		if i == 0 then
749
		local s = math.sqrt(m00-m11-m22+1)
750
		local recip = 0.5/s
751
		return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
752
		elseif i == 1 then
753
		local s = math.sqrt(m11-m22-m00+1)
754
		local recip = 0.5/s
755
		return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
756
		elseif i == 2 then
757
		local s = math.sqrt(m22-m00-m11+1)
758
		local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
759
		end
760
		end
761
		end
762
		
763
764
		function QuaternionToCFrame(px, py, pz, x, y, z, w)
765
		local xs, ys, zs = x + x, y + y, z + z
766
		local wx, wy, wz = w*xs, w*ys, w*zs
767
		local xx = x*xs
768
		local xy = x*ys
769
		local xz = x*zs
770
		local yy = y*ys
771
		local yz = y*zs
772
		local zz = z*zs
773
		return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
774
		end
775
		function QuaternionSlerp(a, b, t)
776
		local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
777
		local startInterp, finishInterp;
778
		if cosTheta >= 0.0001 then
779
		if (1 - cosTheta) > 0.0001 then
780
		local theta = math.acos(cosTheta)
781
		local invSinTheta = 1/math.sin(theta)
782
		startInterp = math.sin((1-t)*theta)*invSinTheta
783
		finishInterp = math.sin(t*theta)*invSinTheta  
784
		else
785
		startInterp = 1-t
786
		finishInterp = t
787
		end
788
		else
789
		if (1+cosTheta) > 0.0001 then
790
		local theta = math.acos(-cosTheta)
791
		local invSinTheta = 1/math.sin(theta)
792
		startInterp = math.sin((t-1)*theta)*invSinTheta
793
		finishInterp = math.sin(t*theta)*invSinTheta
794
		else
795
		startInterp = t-1
796
		finishInterp = t
797
		end
798
		end
799
		return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
800
		end
801
		 
802
		function weld5(part0, part1, c0, c1)
803
		    weeld=Instance.new("Weld", part0)
804
		    weeld.Part0=part0
805
		    weeld.Part1=part1
806
		    weeld.C0=c0
807
		    weeld.C1=c1
808
		    return weeld
809
		end
810
		 
811
		--Example: Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.4)
812
		 
813
		function rayCast(Pos, Dir, Max, Ignore)  -- Origin Position , Direction, MaxDistance , IgnoreDescendants
814
		return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
815
	end
816
	
817
	
818
	
819
820
821
822
Character.Humanoid.MaxHealth = 120
823
Character.Humanoid.Health = 120
824
 
825
 local f = 0
826
 local b = Instance.new("BlurEffect",cam)
827
local    c = Instance.new('PointLight', Torso)
828
c.Range = 16
829
c.Color = Color3.new(0, 1,1)
830
c.Brightness = 1.5
831
 game:GetService("RunService"):BindToRenderStep("W0tT", 0, function()
832
833
b.Size = b.Size - 4
834
if boost == true then
835
c.Enabled = true
836
    cam.FieldOfView = lerp(cam.FieldOfView, 110, 0.5)
837
   -- cam.FieldOfView = 110
838
    freefall = 0
839
    Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,3),0.25)
840
 SphereEffect(BrickColor.new("Cyan"),RightLeg.CFrame*CFrame.new(0,-1,0)*angles(math.random(-180,180),math.random(-180,180),math.random(-180,180)),1.4,12,1.4,2.8,26,2.8,0.07)
841
  SphereEffect(BrickColor.new("Cyan"),LeftLeg.CFrame*CFrame.new(0,-1,0)*angles(math.random(-180,180),math.random(-180,180),math.random(-180,180)),1.4,12,1.4,2.8,26,2.8,0.07)
842
  if hitfloor ~= nil and Anim ~= "runIdle" then
843
  SpecialEffect(BrickColor.new("Cyan"),RootPart.CFrame*CFrame.new(0,-3.4,.78) ,2,2,2, 1.5,1.5,1.5,.09)
844
  end
845
end
846
if boost == false then
847
    cam.FieldOfView = lerp(cam.FieldOfView, 70, 0.076)
848
    --cam.FieldOfView = 70
849
    c.Enabled = false
850
end
851
end)
852
853
854
855
						 mouse.KeyDown:connect(function(key)
856
    if string.byte(key) == 48 then
857
        b.Size = 40
858
		Swing = 2
859
		freefall = 0
860
		
861
coroutine.resume(coroutine.create(function()
862
    for i = 0,1,0.1 do
863
        swait()
864
        Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8),math.random(-0.35*1.8,0.35*1.8)),0.24)
865
end
866
end))
867
        Humanoid.WalkSpeed = 180
868
        RootPart.Velocity = RootPart.CFrame.lookVector*150
869
        RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-9.2) , 1, 1, 1, 8, 8, 8, 0.14,"Neon") 
870
        boost = true
871
        boostsound:Play()
872
end
873
end)
874
875
mouse.KeyUp:connect(function(key)
876
    if string.byte(key) == 48 then
877
		Swing = 1
878
        Humanoid.WalkSpeed = 64
879
        boost = false
880
        boostsound:Stop()
881
882
end
883
end)
884
885
886
887
888
						 mouse.KeyDown:connect(function(key)
889
    if string.byte(key) == 50 then
890
        b.Size = 40
891
        freefall = 0
892
		Swing = 2
893
		
894
coroutine.resume(coroutine.create(function()
895
    for i = 0,1,0.1 do
896
        swait()
897
        Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.35*2.8,0.35*2.8),math.random(-0.35*2.8,0.35*2.8),math.random(-0.35*2.8,0.35*2.8)),0.48)
898
end
899
end))
900
		
901
        Humanoid.WalkSpeed = 320
902
        RootPart.Velocity = RootPart.CFrame.lookVector*550
903
        RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-9.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon") 
904
        RingEffect(BrickColor.new("White"), RootPart.CFrame*CFrame.new(0,0,-11.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon") 
905
        RingEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,-13.2) , 1, 1, 1, 18, 18, 18, 0.14,"Neon") 
906
        boost = true
907
        boostsound:Play()
908
end
909
end)
910
911
mouse.KeyUp:connect(function(key)
912
    if string.byte(key) == 50 then
913
		Swing = 1
914
        Humanoid.WalkSpeed = 64
915
        boost = false
916
        boostsound:Stop()
917
918
end
919
end)
920
921
922
local lastwall = nil
923
local jumped = false
924
925
926
927
		 
928
		 
929
		 
930
		 local vwall = false
931
		 
932
		 		 mouse.KeyDown:connect(function(key)
933
		     if key == 'b' and hitfloor == nil and attack == false then
934
	vrun()
935
end
936
 end)
937
 
938
 
939
 function vrun()
940
     		 	local ray = Ray.new(
941
		RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
942
	)
943
	local hit, position, normal = workspace:FindPartOnRay(ray, character)
944
	
945
	if hit then
946
	    if hit.Parent.Parent ~= Character and hit.Parent ~= Character and hit.Name ~= "prt" and hit.CanCollide == true then
947
	    vwall = true
948
	        local NV = Vector3.new(0,0,0)
949
	             local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
950
local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
951
 local GravPoint = RootPart.Velocity.y
952
		local velo = Instance.new("BodyVelocity",Torso)
953
		velo.MaxForce = Vector3.new(400000,400000,400000)
954
955
		attack = true
956
while vwall == true and ray and hit do
957
swait()
958
change = 0.84+ Humanoid.WalkSpeed/132
959
if Humanoid.WalkSpeed > 40 and Humanoid.WalkSpeed < 70 then
960
velo.Velocity =  Vector3.new(0,40,0)
961
end
962
if Humanoid.WalkSpeed > 70 and Humanoid.WalkSpeed < 200 then
963
		velo.Velocity =  Vector3.new(0,80,0)
964
		end
965
		if Humanoid.WalkSpeed > 200 then
966
		velo.Velocity =  Vector3.new(0,130,0)
967
		end
968
		 ray = Ray.new(
969
		RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
970
	)
971
	hit, position, normal = workspace:FindPartOnRay(ray, character)
972
		Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/2), .6) * angles(math.rad(96), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
973
		Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+20*math.sin(sine/2)),math.rad(0),math.rad(0+5*math.sin(sine/4)) + RootPart.RotVelocity.Y / 13),.1)
974
		RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.1) * angles(math.rad(-90-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(15+2*math.sin(sine/4))- RootPart.RotVelocity.Y / 34),.15)
975
		LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-90-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
976
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3+ Humanoid.WalkSpeed/272)
977
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3+ Humanoid.WalkSpeed/272)
978
end
979
		velo:Destroy()
980
		wait(0.07)
981
982
if vwall == false then
983
984
 RootPart.Velocity = -RootPart.CFrame.lookVector*68 + Vector3.new(0,86,0)
985
986
--[[]
987
		for i = 0,5,0.2 do
988
rs:wait()
989
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
990
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
991
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
992
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
993
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
994
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
995
end
996
]]
997
998
999
for i = 0,4,0.1 do
1000
swait()
1001
Humanoid.CameraOffset = Vector3.new(0,0,0)
1002
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
1003
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
1004
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
1005
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
1006
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1007
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1008
end
1009
1010
 		attack = false
1011
1012
1013
end
1014
1015
1016
		if vwall == true then
1017
 RootPart.Velocity = RootPart.CFrame.lookVector*38 + Vector3.new(0,86,0)
1018
1019
--[[]
1020
		for i = 0,5,0.2 do
1021
rs:wait()
1022
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -0.79, 0) * CFrame.Angles(math.rad(0+100*i), math.rad(0), math.rad(0)), 0.2)
1023
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(20),math.rad(0),math.rad(0)),.2)
1024
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(180), math.rad(-60), math.rad(40)),.2)
1025
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(180), math.rad(60), math.rad(-40)),.2)
1026
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
1027
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
1028
end
1029
]]
1030
1031
1032
for i = 0,4,0.15 do
1033
swait()
1034
Humanoid.CameraOffset = Vector3.new(0,0,0)
1035
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
1036
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
1037
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
1038
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
1039
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1040
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1041
end
1042
1043
 		attack = false
1044
1045
end
1046
1047
1048
end
1049
end
1050
end
1051
 
1052
 
1053
1054
 
1055
 	 mouse.KeyUp:connect(function(key)
1056
		     if key == 'b' and vwall == true then
1057
	         vwall = false
1058
	         end
1059
	         end)
1060
		 
1061
1062
1063
		 
1064
		 
1065
function Ldash()
1066
    
1067
    
1068
1069
evadecooldown = true
1070
attack = true
1071
k = math.random(1,2) 
1072
if k == 1 then
1073
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
1074
else
1075
 so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
1076
 end
1077
 
1078
 
1079
 
1080
1081
1082
 --+173.8*i
1083
for i = 0,.7,0.1 do
1084
swait()
1085
Head.Velocity = Head.CFrame.rightVector * -135
1086
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(32)), 0.2)
1087
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(-9),math.rad(-14)),.2)
1088
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(30)),.2)
1089
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(30)),.2)
1090
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(12)), 0.2)
1091
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(8)), 0.2)
1092
end
1093
1094
attack = false
1095
wait(0.08)
1096
evadecooldown = false
1097
 
1098
 
1099
end
1100
1101
1102
1103
1104
1105
function Rdash()
1106
    
1107
    
1108
1109
evadecooldown = true
1110
attack = true
1111
k = math.random(1,2) 
1112
if k == 1 then
1113
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
1114
else
1115
 so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
1116
 end
1117
 
1118
 
1119
 
1120
 
1121
1122
 --+173.8*i
1123
for i = 0,.7,0.1 do
1124
swait()
1125
Head.Velocity = Head.CFrame.rightVector * 135
1126
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-32)), 0.2)
1127
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0),math.rad(9),math.rad(14)),.2)
1128
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(30), math.rad(0), math.rad(-30)),.2)
1129
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(27), math.rad(0), math.rad(-30)),.2)
1130
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-8)), 0.2)
1131
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(-12)), 0.2)
1132
end
1133
1134
attack = false
1135
wait(0.08)
1136
evadecooldown = false
1137
 
1138
 
1139
end
1140
local sliding = false
1141
1142
1143
function Slide()
1144
    
1145
     local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude + 10
1146
     spd = spd + 30
1147
local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
1148
 local GravPoint = RootPart.Velocity.y
1149
 if spd > 40 and hitfloor ~= nil then
1150
noleg = true
1151
1152
attack = true
1153
k = math.random(1,2) 
1154
if k == 1 then
1155
so("http://www.roblox.com/asset/?id=807766310", Head, 2.5, 1)
1156
else
1157
 so("http://www.roblox.com/asset/?id=807768137", Head, 2.5, 1)
1158
 end
1159
 
1160
 
1161
 
1162
1163
 
1164
 
1165
 
1166
1167
 
1168
 
1169
 local NV = Vector3.new(0,0,0)
1170
local bv = Instance.new("BodyVelocity", Torso)
1171
bv.maxForce = Vector3.new(1/0,1/0,1/0)
1172
bv.velocity = dir*spd
1173
	        local bg = Instance.new("BodyGyro", Torso)
1174
bg.maxTorque = Vector3.new(1/0,1/0,1/0)
1175
bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
1176
Head.Running.SoundId = "rbxassetid://1295468446"
1177
Head.Running.TimePosition = 0
1178
1179
Humanoid.PlatformStand = true
1180
while spd > 2 and hitfloor ~= nil and sliding == true do
1181
swait()
1182
spd = spd - 0.95
1183
bv.velocity = dir*spd + Vector3.new(0,0,0)
1184
bg.cframe = CFrame.new(NV, dir) * CFrame.Angles(math.pi/2.2,0.24,0)
1185
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2.3, 0) * CFrame.Angles(math.rad(90), math.rad(0), math.rad(12)), 0.2)
1186
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(34),math.rad(0),math.rad(12)),.2)
1187
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(110), math.rad(0), math.rad(70)),.2)
1188
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0.2) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
1189
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.2)
1190
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -0.56, -0.2) * CFrame.Angles(math.rad(-24), math.rad(0), math.rad(0)), 0.2)
1191
end
1192
bv:Destroy()
1193
bg:Destroy()
1194
Head.Running.SoundId = "rbxassetid://758199523"
1195
Head.Running.TimePosition = 0
1196
Humanoid.PlatformStand = false
1197
attack = false
1198
sliding = false
1199
wait(0.05)
1200
evadecooldown = false
1201
 
1202
 
1203
end
1204
end
1205
1206
function land()
1207
    attack = true
1208
   RootPart.Velocity = Vector3.new(0,0,0)
1209
    WaveEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,-1,0) , 1, 1, 1, 3, 0.8, 3, 0.06) 
1210
     so("http://www.roblox.com/asset/?id=1295424585", Torso, 3.5, 1)
1211
1212
coroutine.resume(coroutine.create(function()
1213
    for i = 0,1,0.1 do
1214
        swait()
1215
        Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8),math.random(-0.55*2.8,0.55*2.8)),0.44)
1216
        Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -2, 0) * CFrame.Angles(math.rad(-16), math.rad(0), math.rad(0)), 0.5)
1217
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(0)),.5)
1218
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(87)),.5)
1219
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, -0) * angles(math.rad(0), math.rad(0), math.rad(-87)),.5)
1220
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, 0, -0.5) * CFrame.Angles(math.rad(16), math.rad(0), math.rad(0)), 0.5)
1221
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1.14, 0.2) * CFrame.Angles(math.rad(-17), math.rad(0), math.rad(0)), 0.5)
1222
       
1223
end
1224
attack = false
1225
1226
1227
end))
1228
1229
1230
1231
end
1232
1233
1234
1235
1236
function stomp()
1237
    attack = true
1238
    stompsound:Play()
1239
    
1240
   while hitfloor == nil do 
1241
       swait()
1242
       b.Size = 12
1243
        WaveEffect(BrickColor.new("Cyan"), LeftLeg.CFrame*CFrame.new(0,-2.4,0) , 1, 1, 1, 0.8, 0.8, 0.8, 0.14) 
1244
       RootPart.Velocity = Vector3.new(0,RootPart.Velocity.y/1.6,0) +Vector3.new(0,-150,0)
1245
			       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
1246
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(0+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
1247
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
1248
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
1249
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(60+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
1250
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(0+4*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
1251
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, .27+0.17*math.cos(sine/1.3), -0.56) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
1252
1253
end
1254
 stompsound:Stop()
1255
land()
1256
1257
1258
end
1259
1260
1261
function changemusic()
1262
    musicnum = musicnum + 1
1263
    music.TimePosition = 0
1264
    local osix = false
1265
    local spd = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).magnitude
1266
    if musicnum > 14 then
1267
        musicnum = 1
1268
    end
1269
    if musicnum == 1 then
1270
        music.SoundId = "rbxassetid://179029173"
1271
    end
1272
    if musicnum == 2 then
1273
        music.SoundId = "rbxassetid://146443855"
1274
        end
1275
        if musicnum == 3 then
1276
           music.SoundId = "rbxassetid://1342408291" 
1277
          end
1278
          if musicnum == 4 then
1279
            music.SoundId = "rbxassetid://201219416"  
1280
        end
1281
        if musicnum == 5 then
1282
music.SoundId = "rbxassetid://1390472571" 
1283
end
1284
        if musicnum == 6 then
1285
            osix = true
1286
music.SoundId = "rbxassetid://249974783" 
1287
end
1288
if musicnum == 7 then
1289
    music.SoundId = "rbxassetid://1851880603"
1290
end
1291
if musicnum == 8 then
1292
 music.SoundId = "rbxassetid://412034984"
1293
end
1294
if musicnum == 9 then
1295
   music.SoundId = "rbxassetid://536915629"
1296
end
1297
if musicnum == 10 then
1298
music.SoundId = "rbxassetid://1200005861"
1299
end
1300
if musicnum == 11 then
1301
    music.SoundId = "rbxassetid://1055930631"
1302
end
1303
if musicnum == 12 then
1304
    music.SoundId = "rbxassetid://300269553"
1305
end
1306
if musicnum == 13 then
1307
    music.SoundId = "rbxassetid://199897052"
1308
end
1309
if musicnum == 14 then
1310
  music.SoundId = "rbxassetid://638115895"  
1311
end
1312
1313
if spd < 14 then
1314
Humanoid.Jump = true
1315
1316
if osix == false then
1317
so("rbxassetid://537371462",PlayerGui,2,1)
1318
end
1319
1320
1321
RootPart.Velocity = Vector3.new(0,102,0)
1322
attack = true
1323
wait(0.08)
1324
for i = 0,7,0.1 do
1325
    swait()
1326
    RootPart.Velocity = Vector3.new(0,2,0)
1327
Humanoid.CameraOffset = Vector3.new(0,0,0)
1328
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0-260*i), math.rad(0), math.rad(0)), 0.6)
1329
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
1330
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
1331
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
1332
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1333
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1334
1335
end
1336
b.Size = 40
1337
MoonEffect(BrickColor.new("Cyan"), RootPart.CFrame*CFrame.new(0,0,0) , 1, 1, 1, 8, 8, 8, 0.06) 
1338
1339
if osix == true then
1340
osix = false
1341
so("rbxassetid://156821036",PlayerGui,2,1)
1342
end
1343
1344
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -3, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 1)
1345
for i = 0,5,0.1 do
1346
    swait()
1347
RootPart.Velocity = Vector3.new(0,3.5,0)
1348
Humanoid.CameraOffset = Vector3.new(0,0,0)
1349
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
1350
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
1351
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
1352
LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
1353
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
1354
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
1355
end
1356
attack = false
1357
end
1358
end
1359
1360
1361
  mouse.KeyDown:connect(function(key)
1362
if key == 'q' and attack == false and evadecooldown == false then
1363
Ldash()
1364
end
1365
end)
1366
 
1367
 
1368
 
1369
   mouse.KeyDown:connect(function(key)
1370
if key == 'e' and attack == false and evadecooldown == false then
1371
Rdash()
1372
end
1373
end)
1374
1375
   mouse.KeyDown:connect(function(key)
1376
if key == 'c' and attack == false and evadecooldown == false and hitfloor ~= nil then
1377
     sliding = true
1378
Slide()
1379
end
1380
end)
1381
1382
   mouse.KeyDown:connect(function(key)
1383
if key == 'c' and attack == false and hitfloor == nil then
1384
     stomp()
1385
end
1386
end)
1387
1388
1389
local walljump = false
1390
1391
1392
function walljumpp()
1393
    	local ray = Ray.new(
1394
		Torso.CFrame.p, RootPart.CFrame.lookVector *5
1395
	)
1396
	local hit, position, normal = workspace:FindPartOnRay(ray, character)
1397
	
1398
	if hit then
1399
	    if  hit.Parent.Parent ~= Character and hit.Parent ~= Character then
1400
	    local dir = Vector3.new(RootPart.Velocity.x,0,RootPart.Velocity.z).unit
1401
	    GravPoint = 0
1402
 	    freefall = 0
1403
	    walljump = true 
1404
	    Humanoid.AutoRotate = false
1405
		local velo = Instance.new("BodyVelocity",Torso)
1406
		velo.MaxForce = Vector3.new(400000,400000,400000)
1407
		--game.Debris:AddItem(velo,0.1)
1408
		attack = true
1409
while hitfloor == nil and walljump == true and ray and hit  do
1410
swait()
1411
freefall = 0
1412
GravPoint = GravPoint - 0.36
1413
		 ray = Ray.new(
1414
		RootPart.CFrame.p, RootPart.CFrame.lookVector *2.5
1415
	)
1416
	hit, position, normal = workspace:FindPartOnRay(ray, character)
1417
velo.Velocity = vt(0,GravPoint,0)
1418
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.9) * CFrame.Angles(math.rad(5), math.rad(90), math.rad(8)), 0.2)
1419
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(7),math.rad(0),math.rad(86)),.2)
1420
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(120)),.2)
1421
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(0), math.rad(0), math.rad(-60)),.2)
1422
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(-6), math.rad(14), math.rad(-12)), 0.2)
1423
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(23)), 0.2)
1424
end
1425
if walljump == false then
1426
    k = math.random(1,3) 
1427
if k == 1 then
1428
so("http://www.roblox.com/asset/?id=800121776", Head, 2.5, 1)
1429
else if k == 2 then
1430
 so("http://www.roblox.com/asset/?id=804889329", Head, 2.5, 1)
1431
else if k == 3 then
1432
     so("http://www.roblox.com/asset/?id=804907617", Head, 2.5, 1)
1433
     end
1434
     end
1435
end
1436
 
1437
    velo:Destroy()
1438
        attack = false
1439
    coroutine.resume(coroutine.create(function()
1440
    for i = 0,1,0.1 do
1441
        swait()
1442
Humanoid.CameraOffset = Vector3.new(0,0,0)
1443
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+260*i), math.rad(0), math.rad(0)), 0.6)
1444
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
1445
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
1446
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
1447
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1448
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1449
end
1450
end))
1451
    
1452
    Humanoid.AutoRotate = true
1453
    RootPart.Velocity = RootPart.CFrame.lookVector * -137 + Vector3.new(0,136,0)
1454
    wait(0.07)
1455
     RootPart.CFrame = CFrame.new(RootPart.CFrame.p,-RootPart.CFrame.lookVector)
1456
end
1457
if walljump == true then
1458
 		attack = false
1459
walljump = false
1460
Humanoid.AutoRotate = true
1461
velo:Destroy()
1462
end
1463
end
1464
end
1465
end
1466
1467
    
1468
    local homed = nil
1469
    function home()
1470
        if walljump ~= true then
1471
        		    	for i, v in pairs(FindNearestTorso(Torso.CFrame.p, 80)) do
1472
				if v:FindFirstChild('Head') then
1473
					Grabbed = true
1474
					homed = v
1475
				end
1476
			end
1477
    
1478
    if homed ~= nil and homed:FindFirstChildOfClass("Humanoid").Health > 1 and walljump == false then
1479
        					    so("http://www.roblox.com/asset/?id=162460823", Head, 1, .8)
1480
        					    	   local SBall = Instance.new("Part",Character)
1481
	SBall.Name = "Homing Ball"
1482
	SBall.CanCollide = false
1483
	SBall.Anchored = false
1484
	SBall.Transparency = 0.64
1485
	SBall.CFrame = CFrame.new(RootPart.CFrame.p)
1486
	SBall.BrickColor = BrickColor.new("Toothpaste")
1487
	SBall.Size = Vector3.new(1,1,1)
1488
	SBall.Material = "Neon"
1489
	SBallweld = Instance.new("Weld")
1490
SBallweld.Parent = SBall
1491
SBallweld.Part0 = RootPart
1492
SBallweld.Part1 = SBall
1493
SBallweld.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
1494
        SBallweld.Part0 = RootPart
1495
	local SBallmesh = Instance.new("SpecialMesh",SBall)
1496
	SBallmesh.MeshType = "Sphere"
1497
	SBallmesh.Scale = Vector3.new(6,6,6)
1498
        	trail = Instance.new("Trail", Character)
1499
a2 = Instance.new("Attachment", Torso) a2.Position = Vector3.new(0,2,0)
1500
a3 = Instance.new("Attachment", Torso)a3.Position = Vector3.new(0,-2.5,0)
1501
trail.Texture = "rbxassetid://0"
1502
trail.Attachment0 = a2
1503
trail.Attachment1 = a3
1504
trail.Lifetime  =  0.353
1505
trail.MinLength = 0.03
1506
trail.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,1)})
1507
trail.Color = ColorSequence.new(Color3.new(0,1,1), Color3.new(0, 0,0))
1508
trail.LightEmission = 4.8
1509
trail.TextureLength = 0.034
1510
        trail.Enabled = true
1511
 attack = true
1512
	local position = Instance.new("BodyPosition",Torso)
1513
	position.P = 68350
1514
	position.maxForce = Vector3.new(math.huge,math.huge,math.huge)
1515
	
1516
        while homed ~= nil and (homed.Torso.Position-RootPart.Position).magnitude > 8 do
1517
        swait()
1518
        SBall.CFrame = CFrame.new(RootPart.CFrame.p)
1519
    Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(0+420*math.abs(sine/3.2)), math.rad(0), math.rad(0)), 0.6)
1520
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(70),math.rad(0),math.rad(0)),.1)
1521
RW.C0 = clerp(RW.C0, CFrame.new(.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(-90)), 0.1)
1522
LW.C0 = clerp(LW.C0, CFrame.new(-.7, -0.22, -0.5) * angles(math.rad(90), math.rad(0), math.rad(90)), 0.1)
1523
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1524
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.34, -0.7) * CFrame.Angles(math.rad(-25), math.rad(0), math.rad(0)), 0.1)
1525
    position.Position = homed.Torso.Position + Vector3.new(0,2,0) 
1526
end
1527
		local bodvol=Instance.new("BodyVelocity")
1528
bodvol.velocity= RootPart.CFrame.lookVector*240 + Vector3.new(0,30,0)
1529
bodvol.P= 35200
1530
bodvol.maxForce=Vector3.new(8e+003, 8e+003, 8e+003)
1531
bodvol.Parent=homed.Head
1532
game:GetService("Debris"):AddItem(bodvol, 0.2)
1533
homed:FindFirstChildOfClass("Humanoid"):TakeDamage(math.random(10,30))
1534
1535
position:Destroy()
1536
trail.Enabled = false
1537
SBall:Destroy()
1538
RootPart.Velocity = Vector3.new(0,93.5,0)
1539
    coroutine.resume(coroutine.create(function()
1540
for i = 0,5,0.26 do
1541
    swait()
1542
Humanoid.CameraOffset = Vector3.new(0,0,0)
1543
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1+0.1*i, 0) * CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)), 0.21)
1544
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(22-2*i),math.rad(0),math.rad(0)),.21)
1545
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5+0.09*i, 0) * angles(math.rad(20-6*i), math.rad(0), math.rad(90+13*i)), 0.21)
1546
LW.C0 = clerp(LW.C0, CFrame.new(-1.0-0.12*i, 0.5, -0.4+0.05*i) * angles(math.rad(20+13*i), math.rad(0), math.rad(20-13*i)), 0.21)
1547
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(-22-4*i)), 0.21)
1548
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(45+6*i), math.rad(0), math.rad(22+4*i)), 0.21)
1549
end
1550
homed = nil
1551
attack = false
1552
end))
1553
1554
end
1555
    
1556
end
1557
1558
1559
end
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
    
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
    
1583
		 		 mouse.KeyDown:connect(function(key)
1584
		 		     wait(0.16)
1585
		     if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
1586
		 walljumpp()
1587
	 end
1588
	 		     if string.byte(key) == 32 and hitfloor == nil and attack == false and walljump == false and Humanoid.Jump == true then
1589
		 home()
1590
	 end
1591
	 
1592
if string.byte(key) == 32 and hitfloor == nil and attack == true and walljump == true then
1593
walljump = false
1594
end
1595
	 end)
1596
		 
1597
1598
1599
1600
   mouse.KeyDown:connect(function(key)
1601
if key == 'm' and attack == false then
1602
changemusic()
1603
end
1604
end)
1605
1606
1607
1608
1609
1610
1611
   mouse.KeyUp:connect(function(key)
1612
       wait(0.05)
1613
if key == 'c' and sliding == true then
1614
     sliding = false
1615
end
1616
end)
1617
local look = 0
1618
1619
1620
1621
				while true do
1622
    swait()
1623
sine = sine + change
1624
--speed = speed + music.PlaybackLoudness/90
1625
local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
1626
local velderp=RootPart.Velocity.y
1627
hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
1628
	
1629
    local TiltVelocity = CFrame.new(RootPart.CFrame:vectorToObjectSpace(RootPart.Velocity))
1630
1631
local rlegray = Ray.new(RightLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
1632
local rlegpart, rlegendPoint = workspace:FindPartOnRay(rlegray, Character)
1633
1634
local llegray = Ray.new(LeftLeg.Position+Vector3.new(0,0.54,0),Vector3.new(0, -1.75, 0))
1635
local llegpart, llegendPoint = workspace:FindPartOnRay(llegray, Character)
1636
1637
    	local waterthing = Ray.new(RootPart.CFrame.p,Vector3.new(0,-1,0))
1638
	local start, position = workspace:FindPartOnRay(waterthing, character)
1639
	
1640
	if start ~= nil and start.Material == "Water" then
1641
	
1642
    RootPart.Velocity = RootPart.Velocity + Vector3.new(0,6,0)
1643
    
1644
    end
1645
1646
Head.Running.Pitch = 0.76 + Humanoid.WalkSpeed/124
1647
if torvel<1  and Swing == 2 then
1648
    boost = false
1649
elseif torvel>1   and Swing == 2 then
1650
    boost = true
1651
    freefall = 0
1652
end
1653
if hitfloor ~= nil and freefall < 150 then
1654
    freefall = 0
1655
end
1656
if freefall > 150 and hitfloor ~= nil then
1657
land()
1658
freefall = 0
1659
end
1660
1661
1662
1663
1664
1665
1666
1667
		if RootPart.Velocity.y > 1 and hitfloor==nil then
1668
Anim="Jump"
1669
1670
1671
1672
1673
1674
if attack==false then
1675
change = 1
1676
look = 0
1677
			       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
1678
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0) * CFrame.Angles(math.rad(4), math.rad(0), math.rad(0)), 0.07)
1679
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-10+2.05*math.cos(sine/5)),math.rad(0),math.rad(0)),0.07)
1680
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(50-2.05*math.cos(sine/5))), 0.07)
1681
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(-20+2.05*math.cos(sine/5)), math.rad(-10), math.rad(-50+2.05*math.cos(sine/5))), 0.07)
1682
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1, -0.6) * CFrame.Angles(math.rad(-25+3.05*math.cos(sine/5)), math.rad(-3), math.rad(0)), 0.1)
1683
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -.47, -0.7) * CFrame.Angles(math.rad(-12+3.05*math.cos(sine/5)), math.rad(0), math.rad(0)), 0.1)
1684
end
1685
1686
elseif RootPart.Velocity.y < -1 and freefall <150 and hitfloor==nil then
1687
Anim="Fall"
1688
change = 1
1689
freefall = freefall +0.77
1690
1691
1692
if attack==false then
1693
			       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
1694
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(7+4*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
1695
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(140+12*math.cos(sine/1.3))), 0.07)
1696
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.65, 0) * angles(math.rad(0), math.rad(0), math.rad(-140+12*math.cos(sine/1.3))), 0.07)
1697
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(40+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
1698
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3), -0.13) * CFrame.Angles(math.rad(18+7*math.cos(sine/1.3)), math.rad(3), math.rad(0)), 0.1)
1699
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -.37+0.17*math.cos(sine/1.3), -0.2) * CFrame.Angles(math.rad(32+7*math.cos(sine/1.3)), math.rad(0), math.rad(0)), 0.1)
1700
end
1701
1702
1703
1704
elseif RootPart.Velocity.y < -1 and freefall > 150 and hitfloor==nil then
1705
Anim="FreeFall"
1706
change = 1
1707
1708
1709
if attack==false then
1710
			       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
1711
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1, 0.2) * CFrame.Angles(math.rad(-90+3*math.sin(sine/1.3)), math.rad(0), math.rad(0)),0.07)
1712
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(110)), 0.07)
1713
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.5, 0) * angles(math.rad(14+12*math.cos(sine/1.3)), math.rad(0), math.rad(-110)), 0.07)
1714
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-12+7*math.sin(sine/1.3)),math.rad(0),math.rad(0)),0.07)
1715
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.17*math.cos(sine/1.3),0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(3), math.rad(-46)), 0.1)
1716
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.17*math.cos(sine/1.3), 0.2) * CFrame.Angles(math.rad(-12+4*math.cos(sine/1.3)), math.rad(0), math.rad(46)), 0.1)
1717
end
1718
1719
elseif torvel<1 and hitfloor~=nil then
1720
Anim="Idle"
1721
change = 1
1722
if attack==false and equip == false then
1723
  
1724
			       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.15)
1725
Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.04*math.cos(sine/40), -0) * CFrame.Angles(math.rad(0-0.81*math.cos(sine/40)), math.rad(-40), math.rad(0)), 0.1)
1726
Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(0+2.6*math.sin(sine/40)),math.rad(0),math.rad(40)),0.1)
1727
RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(-2+1.3*math.cos(sine/40)), math.rad(0+4*math.sin(sine/40)), math.rad(6.3+2.2*math.cos(sine/40))),0.1)
1728
LW.C0 = clerp(LW.C0, CFrame.new(-1.5, 0.55+0.04*math.sin(sine/40), 0-0.04*math.cos(sine/40)) * angles(math.rad(2+1.3*math.cos(sine/40)), math.rad(0-4*math.sin(sine/40)), math.rad(-6.3-2.2*math.cos(sine/40))),0.1)
1729
LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, llegendPoint.Y-LeftLeg.Position.Y+0.04*math.cos(sine/40), 0) * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(18+0.81*math.cos(sine/40)), math.rad(-2-0.81*math.cos(sine/40))),0.1)
1730
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.57, rlegendPoint.Y-RightLeg.Position.Y+0.04*math.cos(sine/40), 0)  * CFrame.Angles(math.rad(0+0.81*math.cos(sine/40)), math.rad(-2+0.81*math.cos(sine/40)), math.rad(3-0.81*math.cos(sine/40))),0.1)
1731
end
1732
1733
1734
	
1735
elseif torvel>1.5 and torvel<70 and hitfloor~=nil then
1736
Anim="Walk"
1737
change = 0.84+ Character.Humanoid.WalkSpeed/132
1738
look = 0
1739
if attack==false and equip == false then
1740
					       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
1741
		Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/2), -.8) * angles(math.rad(-26), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
1742
		Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+20*math.sin(sine/2)),math.rad(0),math.rad(0+5*math.sin(sine/4)) + RootPart.RotVelocity.Y / 13),.1)
1743
		RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.1) * angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(15+2*math.sin(sine/4))- RootPart.RotVelocity.Y / 34),.15)
1744
		LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.1)*angles(math.rad(-60-7*math.sin(sine/4))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-15+2*math.sin(sine/4))+ RootPart.RotVelocity.Y / -34),.15)
1745
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.28*math.cos(sine/4), 0-0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0+104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.3)
1746
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.28*math.cos(sine/4),0+0.32*math.cos(sine/4)) * CFrame.Angles(math.rad(0-104*math.sin(sine/4)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.3)
1747
end
1748
1749
1750
		elseif torvel>=70 and torvel<200 and hitfloor~=nil then
1751
		Anim="Run"
1752
		change = 0.84+ Character.Humanoid.WalkSpeed/142
1753
		if attack==false and equip == false then
1754
					       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
1755
		Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1.5), -.8) * angles(math.rad(-37), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .1)
1756
		Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1.5)),math.rad(0),math.rad(0+5*math.sin(sine/3)) + RootPart.RotVelocity.Y / 13),.1)
1757
		RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.3) * angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(1+0*math.cos(sine/3))- RootPart.RotVelocity.Y / 34),.25)
1758
		LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.3)*angles(math.rad(-72-8*math.sin(sine/1.5))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(-1+0*math.cos(sine/3))+ RootPart.RotVelocity.Y / -34),.25)
1759
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.32*math.cos(sine/3), 0-0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0+134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.44)
1760
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.32*math.cos(sine/3),0+0.42*math.cos(sine/3)) * CFrame.Angles(math.rad(0-134*math.sin(sine/3)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.44)
1761
		end
1762
		
1763
		--[[
1764
		if attack==false then
1765
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.4*math.cos(sine/5.5)/2, 0 *math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + -math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
1766
		RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.4*math.cos(sine/5.5)/2,0 *-math.sin(sine/6.6)/2) * CFrame.Angles(math.rad(0) + math.sin(sine/5.5)/1.2, math.rad(0), 0), .8)
1767
		end
1768
		]]
1769
		if attack==true and noleg == false then
1770
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1-0.24*math.cos(sine/5), 0.+0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0-74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
1771
		   RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1+0.24*math.cos(sine/5),0.-0.24*math.cos(sine/5)) * CFrame.Angles(math.rad(0+74*math.sin(sine/5)), math.rad(0), math.rad(0)), 0.3)
1772
		end
1773
		
1774
		
1775
		
1776
				elseif torvel>=200 and hitfloor~=nil then
1777
		Anim="MachRun"
1778
		change = 0.84+ Character.Humanoid.WalkSpeed/182
1779
		if attack==false and equip == false then
1780
					       Humanoid.CameraOffset = Humanoid.CameraOffset:lerp(Vector3.new(0,0,0),0.02)
1781
		Torso.Weld.C0 = clerp(Torso.Weld.C0, CFrame.new(0, -1-0.52*math.cos(sine/1), -3.8) * angles(math.rad(-44), math.rad(0), math.rad(0)+ RootPart.RotVelocity.Y / 26), .2)
1782
		Torso.Neck.C0 = clerp(Torso.Neck.C0,necko *angles(math.rad(-11+25*math.sin(sine/1)),math.rad(0),math.rad(0+5*math.sin(sine/2)) + RootPart.RotVelocity.Y / 13),.2)
1783
		RW.C0 = clerp(RW.C0, CFrame.new(1.5, 0.5, 0.5) * angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / -34, math.rad(0), math.rad(-24+0*math.cos(sine/2))- RootPart.RotVelocity.Y / 34),.35)
1784
		LW.C0=clerp(LW.C0,cf(-1.5,0.5,0.5)*angles(math.rad(-78-12*math.sin(sine/1))+ RootPart.RotVelocity.Y / 34,math.rad(0),math.rad(24+0*math.cos(sine/2))+ RootPart.RotVelocity.Y / -34),.35)
1785
		LeftLeg.Weld.C0 = clerp(LeftLeg.Weld.C0, CFrame.new(-0.5, -1+0.42*math.cos(sine/2), 0-0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0+134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)+ RootPart.RotVelocity.Y / -54), 0.52)
1786
RightLeg.Weld.C0 = clerp(RightLeg.Weld.C0, CFrame.new(0.5, -1-0.42*math.cos(sine/2),0+0.62*math.cos(sine/2)) * CFrame.Angles(math.rad(0-134*math.sin(sine/2)), math.rad(0)+ RootPart.RotVelocity.Y / 42, math.rad(0)- RootPart.RotVelocity.Y / 54), 0.52)
1787
		end
1788
		
1789
		
1790
1791
end
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
 if 0 < #Effects then
1802
      for e = 1, #Effects do
1803
        if Effects[e] ~= nil then
1804
          local Thing = Effects[e]
1805
          if Thing ~= nil then
1806
            local Part = Thing[1]
1807
            local Mode = Thing[2]
1808
            local Delay = Thing[3]
1809
            local IncX = Thing[4]
1810
            local IncY = Thing[5]
1811
            local IncZ = Thing[6]
1812
            if Thing[1].Transparency <= 1 then
1813
              if Thing[2] == "Block1" then
1814
                Thing[1].CFrame = Thing[1].CFrame * euler(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1815
                Mesh = Thing[1]:FindFirstChild("Mesh")
1816
                if not Mesh then
1817
                  Mesh = Instance.new("BlockMesh")
1818
                end
1819
                Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
1820
                Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1821
              elseif Thing[2] == "Cylinder" then
1822
                  Mesh = Thing[1]:FindFirstChild("Mesh")
1823
                  if not Mesh then
1824
                    Mesh = Instance.new("BlockMesh")
1825
                  end
1826
                  Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
1827
                  Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1828
                elseif Thing[2] == "Blood" then
1829
                    Mesh = Thing[1]:FindFirstChild("Mesh")
1830
                    if not Mesh then
1831
                      Mesh = Instance.new("BlockMesh")
1832
                    end
1833
                    Thing[1].CFrame = Thing[1].CFrame * cf(0, 0.5, 0)
1834
                    Mesh.Scale = Mesh.Scale + vt(Thing[4], Thing[5], Thing[6])
1835
                    Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1836
                  elseif Thing[2] == "Elec" then
1837
                      Mesh = Thing[1]:FindFirstChild("Mesh")
1838
                      if not Mesh then
1839
                        Mesh = Instance.new("BlockMesh")
1840
                      end
1841
                      Mesh.Scale = Mesh.Scale + vt(Thing[7], Thing[8], Thing[9])
1842
                      Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1843
                    elseif Thing[2] == "Disappear" then
1844
                        Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1845
                      end
1846
            else
1847
              Part.Parent = nil
1848
              game:GetService("Debris"):AddItem(Part, 0)
1849
              table.remove(Effects, e)
1850
            end
1851
          end
1852
        end
1853
      end
1854
    end
1855
1856
end