View difference between Paste ID: quwtKKQA and 43QheH3T
SHOW: | | - or go back to the newest paste.
1
if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
141
 
142
-----------------------
143
--[[ Name : Ņ̢̨͢͟ó͢ ̧͢ơ̶̶̶̢n͜͏ę̶̡͠'͏́́͞҉ş̨͏ ͜a͝҉r̵̷̛̛͟o̶̡͟͝ų̶̸̵͝ń͡͡͏̷d̀͜͟ ̵̡́́͜t̡̀͘o͏̀̕͡ ͢h͠͏e̵͢͜ļ̡͢͡ṕ̛͏.̷̧̨ ]]--
144
-------------------------------------------------------
145
--A script By makhail07
146
147
--Discord Creterisk#2958 
148
149
--NOTE THIS SCRIPT WAS PURELY MADE FROM MY FUCKING IMAGINATION
150
--IF IT HAPPENS TO LOOK LIKE ANOTHER SCRIPT
151
--DONT CALL IT A FUCKING BOOTLEG THANK YOU AND ENJOY THE SCRIPT
152
--YOU FUCKING SKIDS,
153
--For Those who log/decompile this, If you sell or trade this,
154
--and I find out who you are, i will take massive action.
155
-------------------------------------------------------
156
157
local FavIDs = {
158
	340106355, --Nefl Crystals
159
	927529620, --Dimension
160
	876981900, --Fantasy
161
	398987889, --Ordinary Days
162
	1117396305, --Oh wait, it's you.
163
	885996042, --Action Winter Journey
164
	919231299, --Sprawling Idiot Effigy
165
	743466274, --Good Day Sunshine
166
	727411183, --Knife Fight
167
	1402748531, --The Earth Is Counting On You!
168
	595230126 --Robot Language
169
	}
170
171
172
173
--The reality of my life isn't real but a Universe -makhail07
174
wait()
175
local plr = game:service'Players'.LocalPlayer
176
print('Local User is '..plr.Name)
177
local char = plr.Character
178
local hum = char.Humanoid
179
local hed = char.Head
180
local root = char.HumanoidRootPart
181
local rootj = root.RootJoint
182
local tors = char.Torso
183
local ra = char["Right Arm"]
184
local la = char["Left Arm"]
185
local rl = char["Right Leg"]
186
local ll = char["Left Leg"]
187
local neck = tors["Neck"]
188
local mouse = plr:GetMouse()
189
local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
190
local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
191
local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
192
local maincolor = BrickColor.new("Institutional white")
193
194
-------------------------------------------------------
195
--Start Good Stuff--
196
-------------------------------------------------------
197
cam = game.Workspace.CurrentCamera
198
CF = CFrame.new
199
angles = CFrame.Angles
200
attack = false
201
Euler = CFrame.fromEulerAnglesXYZ
202
Rad = math.rad
203
IT = Instance.new
204
BrickC = BrickColor.new
205
Cos = math.cos
206
Acos = math.acos
207
Sin = math.sin
208
Asin = math.asin
209
Abs = math.abs
210
Mrandom = math.random
211
Floor = math.floor
212
-------------------------------------------------------
213
--End Good Stuff--
214
-------------------------------------------------------
215
necko = CF(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
216
RSH, LSH = nil, nil 
217
RW = Instance.new("Weld") 
218
LW = Instance.new("Weld")
219
RH = tors["Right Hip"]
220
LH = tors["Left Hip"]
221
RSH = tors["Right Shoulder"] 
222
LSH = tors["Left Shoulder"] 
223
RSH.Parent = nil 
224
LSH.Parent = nil 
225
RW.Name = "RW"
226
RW.Part0 = tors 
227
RW.C0 = CF(1.5, 0.5, 0)
228
RW.C1 = CF(0, 0.5, 0) 
229
RW.Part1 = ra
230
RW.Parent = tors 
231
LW.Name = "LW"
232
LW.Part0 = tors 
233
LW.C0 = CF(-1.5, 0.5, 0)
234
LW.C1 = CF(0, 0.5, 0) 
235
LW.Part1 = la
236
LW.Parent = tors
237
Effects = {}
238
-------------------------------------------------------
239
--Start HeartBeat--
240
-------------------------------------------------------
241
ArtificialHB = Instance.new("BindableEvent", script)
242
ArtificialHB.Name = "Heartbeat"
243
script:WaitForChild("Heartbeat")
244
245
frame = 1 / 60
246
tf = 0
247
allowframeloss = false
248
tossremainder = false
249
250
251
lastframe = tick()
252
script.Heartbeat:Fire()
253
254
255
game:GetService("RunService").Heartbeat:connect(function(s, p)
256
	tf = tf + s
257
	if tf >= frame then
258
		if allowframeloss then
259
			script.Heartbeat:Fire()
260
			lastframe = tick()
261
		else
262
			for i = 1, math.floor(tf / frame) do
263
				script.Heartbeat:Fire()
264
			end
265
			lastframe = tick()
266
		end
267
		if tossremainder then
268
			tf = 0
269
		else
270
			tf = tf - frame * math.floor(tf / frame)
271
		end
272
	end
273
end)
274
-------------------------------------------------------
275
--End HeartBeat--
276
-------------------------------------------------------
277
278
-------------------------------------------------------
279
--Start Important Functions--
280
-------------------------------------------------------
281
function swait(num)
282
	if num == 0 or num == nil then
283
		game:service("RunService").Stepped:wait(0)
284
	else
285
		for i = 0, num do
286
			game:service("RunService").Stepped:wait(0)
287
		end
288
	end
289
end
290
function thread(f)
291
	coroutine.resume(coroutine.create(f))
292
end
293
function clerp(a, b, t)
294
	local qa = {
295
		QuaternionFromCFrame(a)
296
	}
297
	local qb = {
298
		QuaternionFromCFrame(b)
299
	}
300
	local ax, ay, az = a.x, a.y, a.z
301
	local bx, by, bz = b.x, b.y, b.z
302
	local _t = 1 - t
303
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
304
end
305
function QuaternionFromCFrame(cf)
306
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
307
	local trace = m00 + m11 + m22
308
	if trace > 0 then
309
		local s = math.sqrt(1 + trace)
310
		local recip = 0.5 / s
311
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
312
	else
313
		local i = 0
314
		if m00 < m11 then
315
			i = 1
316
		end
317
		if m22 > (i == 0 and m00 or m11) then
318
			i = 2
319
		end
320
		if i == 0 then
321
			local s = math.sqrt(m00 - m11 - m22 + 1)
322
			local recip = 0.5 / s
323
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
324
		elseif i == 1 then
325
			local s = math.sqrt(m11 - m22 - m00 + 1)
326
			local recip = 0.5 / s
327
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
328
		elseif i == 2 then
329
			local s = math.sqrt(m22 - m00 - m11 + 1)
330
			local recip = 0.5 / s
331
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
332
		end
333
	end
334
end
335
function QuaternionToCFrame(px, py, pz, x, y, z, w)
336
	local xs, ys, zs = x + x, y + y, z + z
337
	local wx, wy, wz = w * xs, w * ys, w * zs
338
	local xx = x * xs
339
	local xy = x * ys
340
	local xz = x * zs
341
	local yy = y * ys
342
	local yz = y * zs
343
	local zz = z * zs
344
	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))
345
end
346
function QuaternionSlerp(a, b, t)
347
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
348
	local startInterp, finishInterp
349
	if cosTheta >= 1.0E-4 then
350
		if 1 - cosTheta > 1.0E-4 then
351
			local theta = math.acos(cosTheta)
352
			local invSinTheta = 1 / Sin(theta)
353
			startInterp = Sin((1 - t) * theta) * invSinTheta
354
			finishInterp = Sin(t * theta) * invSinTheta
355
		else
356
			startInterp = 1 - t
357
			finishInterp = t
358
		end
359
	elseif 1 + cosTheta > 1.0E-4 then
360
		local theta = math.acos(-cosTheta)
361
		local invSinTheta = 1 / Sin(theta)
362
		startInterp = Sin((t - 1) * theta) * invSinTheta
363
		finishInterp = Sin(t * theta) * invSinTheta
364
	else
365
		startInterp = t - 1
366
		finishInterp = t
367
	end
368
	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
369
end
370
function rayCast(Position, Direction, Range, Ignore)
371
	return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
372
end
373
local RbxUtility = LoadLibrary("RbxUtility")
374
local Create = RbxUtility.Create
375
376
-------------------------------------------------------
377
--Start Damage Function--
378
-------------------------------------------------------
379
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
380
	if hit.Parent == nil then
381
		return
382
	end
383
	local h = hit.Parent:FindFirstChildOfClass("Humanoid")
384
	for _, v in pairs(hit.Parent:children()) do
385
		if v:IsA("Humanoid") then
386
			h = v
387
		end
388
	end
389
         if h ~= nil and hit.Parent.Name ~= char.Name and hit.Parent:FindFirstChild("UpperTorso") ~= nil then
390
	
391
         hit.Parent:FindFirstChild("Head"):BreakJoints()
392
         end
393
394
	if h ~= nil and hit.Parent.Name ~= char.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
395
		if hit.Parent:findFirstChild("DebounceHit") ~= nil then
396
			if hit.Parent.DebounceHit.Value == true then
397
				return
398
			end
399
		end
400
         if insta == true then
401
         hit.Parent:FindFirstChild("Head"):BreakJoints()
402
         end
403
		local c = Create("ObjectValue"){
404
			Name = "creator",
405
			Value = game:service("Players").LocalPlayer,
406
			Parent = h,
407
		}
408
		game:GetService("Debris"):AddItem(c, .5)
409
		if HitSound ~= nil and HitPitch ~= nil then
410
			CFuncs.Sound.Create(HitSound, hit, 1, HitPitch) 
411
		end
412
		local Damage = math.random(minim, maxim)
413
		local blocked = false
414
		local block = hit.Parent:findFirstChild("Block")
415
		if block ~= nil then
416
			if block.className == "IntValue" then
417
				if block.Value > 0 then
418
					blocked = true
419
					block.Value = block.Value - 1
420
					print(block.Value)
421
				end
422
			end
423
		end
424
		if blocked == false then
425
			h.Health = h.Health - Damage
426
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, tors.BrickColor.Color)
427
		else
428
			h.Health = h.Health - (Damage / 2)
429
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, tors.BrickColor.Color)
430
		end
431
		if Type == "Knockdown" then
432
			local hum = hit.Parent.Humanoid
433
			hum.PlatformStand = true
434
			coroutine.resume(coroutine.create(function(HHumanoid)
435
				swait(1)
436
				HHumanoid.PlatformStand = false
437
			end), hum)
438
			local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
439
			local bodvol = Create("BodyVelocity"){
440
				velocity = angle * knockback,
441
				P = 5000,
442
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
443
				Parent = hit,
444
			}
445
			local rl = Create("BodyAngularVelocity"){
446
				P = 3000,
447
				maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
448
				angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
449
				Parent = hit,
450
			}
451
			game:GetService("Debris"):AddItem(bodvol, .5)
452
			game:GetService("Debris"):AddItem(rl, .5)
453
		elseif Type == "Normal" then
454
			local vp = Create("BodyVelocity"){
455
				P = 500,
456
				maxForce = Vector3.new(math.huge, 0, math.huge),
457
				velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
458
			}
459
			if knockback > 0 then
460
				vp.Parent = hit.Parent.Torso
461
			end
462
			game:GetService("Debris"):AddItem(vp, .5)
463
		elseif Type == "Up" then
464
			local bodyVelocity = Create("BodyVelocity"){
465
				velocity = Vector3.new(0, 20, 0),
466
				P = 5000,
467
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
468
				Parent = hit,
469
			}
470
			game:GetService("Debris"):AddItem(bodyVelocity, .5)
471
		elseif Type == "DarkUp" then
472
			coroutine.resume(coroutine.create(function()
473
				for i = 0, 1, 0.1 do
474
					swait()
475
					Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
476
				end
477
			end))
478
			local bodyVelocity = Create("BodyVelocity"){
479
				velocity = Vector3.new(0, 20, 0),
480
				P = 5000,
481
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
482
				Parent = hit,
483
			}
484
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
485
		elseif Type == "Snare" then
486
			local bp = Create("BodyPosition"){
487
				P = 2000,
488
				D = 100,
489
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
490
				position = hit.Parent.Torso.Position,
491
				Parent = hit.Parent.Torso,
492
			}
493
			game:GetService("Debris"):AddItem(bp, 1)
494
		elseif Type == "Freeze" then
495
			local BodPos = Create("BodyPosition"){
496
				P = 50000,
497
				D = 1000,
498
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
499
				position = hit.Parent.Torso.Position,
500
				Parent = hit.Parent.Torso,
501
			}
502
			local BodGy = Create("BodyGyro") {
503
				maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
504
				P = 20e+003,
505
				Parent = hit.Parent.Torso,
506
				cframe = hit.Parent.Torso.CFrame,
507
			}
508
			hit.Parent.Torso.Anchored = true
509
			coroutine.resume(coroutine.create(function(Part) 
510
				swait(1.5)
511
				Part.Anchored = false
512
			end), hit.Parent.Torso)
513
			game:GetService("Debris"):AddItem(BodPos, 3)
514
			game:GetService("Debris"):AddItem(BodGy, 3)
515
		end
516
		local debounce = Create("BoolValue"){
517
			Name = "DebounceHit",
518
			Parent = hit.Parent,
519
			Value = true,
520
		}
521
		game:GetService("Debris"):AddItem(debounce, Delay)
522
		c = Create("ObjectValue"){
523
			Name = "creator",
524
			Value = Player,
525
			Parent = h,
526
		}
527
		game:GetService("Debris"):AddItem(c, .5)
528
	end
529
end
530
-------------------------------------------------------
531
--End Damage Function--
532
-------------------------------------------------------
533
534
-------------------------------------------------------
535
--Start Damage Function Customization--
536
-------------------------------------------------------
537
function ShowDamage(Pos, Text, Time, Color)
538
	local Rate = (1 / 30)
539
	local Pos = (Pos or Vector3.new(0, 0, 0))
540
	local Text = (Text or "")
541
	local Time = (Time or 2)
542
	local Color = (Color or Color3.new(1, 0, 1))
543
	local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
544
	EffectPart.Anchored = true
545
	local BillboardGui = Create("BillboardGui"){
546
		Size = UDim2.new(3, 0, 3, 0),
547
		Adornee = EffectPart,
548
		Parent = EffectPart,
549
	}
550
	local TextLabel = Create("TextLabel"){
551
		BackgroundTransparency = 1,
552
		Size = UDim2.new(1, 0, 1, 0),
553
		Text = Text,
554
		Font = "Bodoni",
555
		TextColor3 = Color,
556
		TextScaled = true,
557
		TextStrokeColor3 = Color3.fromRGB(0,0,0),
558
		Parent = BillboardGui,
559
	}
560
	game.Debris:AddItem(EffectPart, (Time))
561
	EffectPart.Parent = game:GetService("Workspace")
562
	delay(0, function()
563
		local Frames = (Time / Rate)
564
		for Frame = 1, Frames do
565
			wait(Rate)
566
			local Percent = (Frame / Frames)
567
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
568
			TextLabel.TextTransparency = Percent
569
		end
570
		if EffectPart and EffectPart.Parent then
571
			EffectPart:Destroy()
572
		end
573
	end)
574
end
575
-------------------------------------------------------
576
--End Damage Function Customization--
577
-------------------------------------------------------
578
579
function MagniDamage(Part, magni, mindam, maxdam, knock, Type)
580
  for _, c in pairs(workspace:children()) do
581
    local hum = c:findFirstChild("Humanoid")
582
    if hum ~= nil then
583
      local head = c:findFirstChild("Head")
584
      if head ~= nil then
585
        local targ = head.Position - Part.Position
586
        local mag = targ.magnitude
587
        if magni >= mag and c.Name ~= plr.Name then
588
          Damage(head, head, mindam, maxdam, knock, Type, root, 0.1, "http://www.roblox.com/asset/?id=0", 1.2)
589
        end
590
      end
591
    end
592
  end
593
end
594
595
596
CFuncs = {
597
	Part = {
598
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
599
			local Part = Create("Part")({
600
				Parent = Parent,
601
				Reflectance = Reflectance,
602
				Transparency = Transparency,
603
				CanCollide = false,
604
				Locked = true,
605
				BrickColor = BrickColor.new(tostring(BColor)),
606
				Name = Name,
607
				Size = Size,
608
				Material = Material
609
			})
610
			RemoveOutlines(Part)
611
			return Part
612
		end
613
	},
614
	Mesh = {
615
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
616
			local Msh = Create(Mesh)({
617
				Parent = Part,
618
				Offset = OffSet,
619
				Scale = Scale
620
			})
621
			if Mesh == "SpecialMesh" then
622
				Msh.MeshType = MeshType
623
				Msh.MeshId = MeshId
624
			end
625
			return Msh
626
		end
627
	},
628
	Mesh = {
629
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
630
			local Msh = Create(Mesh)({
631
				Parent = Part,
632
				Offset = OffSet,
633
				Scale = Scale
634
			})
635
			if Mesh == "SpecialMesh" then
636
				Msh.MeshType = MeshType
637
				Msh.MeshId = MeshId
638
			end
639
			return Msh
640
		end
641
	},
642
	Weld = {
643
		Create = function(Parent, Part0, Part1, C0, C1)
644
			local Weld = Create("Weld")({
645
				Parent = Parent,
646
				Part0 = Part0,
647
				Part1 = Part1,
648
				C0 = C0,
649
				C1 = C1
650
			})
651
			return Weld
652
		end
653
	},
654
	Sound = {
655
		Create = function(id, par, vol, pit)
656
			coroutine.resume(coroutine.create(function()
657
				local S = Create("Sound")({
658
					Volume = vol,
659
					Pitch = pit or 1,
660
					SoundId = id,
661
					Parent = par or workspace
662
				})
663
				wait()
664
				S:play()
665
				game:GetService("Debris"):AddItem(S, 6)
666
			end))
667
		end
668
	},
669
	ParticleEmitter = {
670
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
671
			local fp = Create("ParticleEmitter")({
672
				Parent = Parent,
673
				Color = ColorSequence.new(Color1, Color2),
674
				LightEmission = LightEmission,
675
				Size = Size,
676
				Texture = Texture,
677
				Transparency = Transparency,
678
				ZOffset = ZOffset,
679
				Acceleration = Accel,
680
				Drag = Drag,
681
				LockedToPart = LockedToPart,
682
				VelocityInheritance = VelocityInheritance,
683
				EmissionDirection = EmissionDirection,
684
				Enabled = Enabled,
685
				Lifetime = LifeTime,
686
				Rate = Rate,
687
				Rotation = Rotation,
688
				RotSpeed = RotSpeed,
689
				Speed = Speed,
690
				VelocitySpread = VelocitySpread
691
			})
692
			return fp
693
		end
694
	}
695
}
696
function RemoveOutlines(part)
697
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
698
end
699
function CreatePart(FormFactor, Parent, Material, Reflectance, Transparency, BColor, Name, Size)
700
	local Part = Create("Part")({
701
		formFactor = FormFactor,
702
		Parent = Parent,
703
		Reflectance = Reflectance,
704
		Transparency = Transparency,
705
		CanCollide = false,
706
		Locked = true,
707
		BrickColor = BrickColor.new(tostring(BColor)),
708
		Name = Name,
709
		Size = Size,
710
		Material = Material
711
	})
712
	RemoveOutlines(Part)
713
	return Part
714
end
715
function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
716
	local Msh = Create(Mesh)({
717
		Parent = Part,
718
		Offset = OffSet,
719
		Scale = Scale
720
	})
721
	if Mesh == "SpecialMesh" then
722
		Msh.MeshType = MeshType
723
		Msh.MeshId = MeshId
724
	end
725
	return Msh
726
end
727
function CreateWeld(Parent, Part0, Part1, C0, C1)
728
	local Weld = Create("Weld")({
729
		Parent = Parent,
730
		Part0 = Part0,
731
		Part1 = Part1,
732
		C0 = C0,
733
		C1 = C1
734
	})
735
	return Weld
736
end
737
738
739
-------------------------------------------------------
740
--Start Effect Function--
741
-------------------------------------------------------
742
EffectModel = Instance.new("Model", char)
743
Effects = {
744
  Block = {
745
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
746
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
747
      prt.Anchored = true
748
      prt.CFrame = cframe
749
      local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
750
      game:GetService("Debris"):AddItem(prt, 10)
751
      if Type == 1 or Type == nil then
752
        table.insert(Effects, {
753
          prt,
754
          "Block1",
755
          delay,
756
          x3,
757
          y3,
758
          z3,
759
          msh
760
        })
761
      elseif Type == 2 then
762
        table.insert(Effects, {
763
          prt,
764
          "Block2",
765
          delay,
766
          x3,
767
          y3,
768
          z3,
769
          msh
770
        })
771
      else
772
        table.insert(Effects, {
773
          prt,
774
          "Block3",
775
          delay,
776
          x3,
777
          y3,
778
          z3,
779
          msh
780
        })
781
      end
782
    end
783
  },
784
  Sphere = {
785
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
786
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
787
      prt.Anchored = true
788
      prt.CFrame = cframe
789
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
790
      game:GetService("Debris"):AddItem(prt, 10)
791
      table.insert(Effects, {
792
        prt,
793
        "Cylinder",
794
        delay,
795
        x3,
796
        y3,
797
        z3,
798
        msh
799
      })
800
    end
801
  },
802
  Cylinder = {
803
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
804
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
805
      prt.Anchored = true
806
      prt.CFrame = cframe
807
      local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
808
      game:GetService("Debris"):AddItem(prt, 10)
809
      table.insert(Effects, {
810
        prt,
811
        "Cylinder",
812
        delay,
813
        x3,
814
        y3,
815
        z3,
816
        msh
817
      })
818
    end
819
  },
820
  Wave = {
821
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
822
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
823
      prt.Anchored = true
824
      prt.CFrame = cframe
825
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1 / 60, y1 / 60, z1 / 60))
826
      game:GetService("Debris"):AddItem(prt, 10)
827
      table.insert(Effects, {
828
        prt,
829
        "Cylinder",
830
        delay,
831
        x3 / 60,
832
        y3 / 60,
833
        z3 / 60,
834
        msh
835
      })
836
    end
837
  },
838
  Ring = {
839
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
840
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
841
      prt.Anchored = true
842
      prt.CFrame = cframe
843
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
844
      game:GetService("Debris"):AddItem(prt, 10)
845
      table.insert(Effects, {
846
        prt,
847
        "Cylinder",
848
        delay,
849
        x3,
850
        y3,
851
        z3,
852
        msh
853
      })
854
    end
855
  },
856
  Break = {
857
    Create = function(brickcolor, cframe, x1, y1, z1)
858
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
859
      prt.Anchored = true
860
      prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
861
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
862
      local num = math.random(10, 50) / 1000
863
      game:GetService("Debris"):AddItem(prt, 10)
864
      table.insert(Effects, {
865
        prt,
866
        "Shatter",
867
        num,
868
        prt.CFrame,
869
        math.random() - math.random(),
870
        0,
871
        math.random(50, 100) / 100
872
      })
873
    end
874
  },
875
Spiral = {
876
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
877
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
878
      prt.Anchored = true
879
      prt.CFrame = cframe
880
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://1051557", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
881
      game:GetService("Debris"):AddItem(prt, 10)
882
      table.insert(Effects, {
883
        prt,
884
        "Cylinder",
885
        delay,
886
        x3,
887
        y3,
888
        z3,
889
        msh
890
      })
891
    end
892
  },
893
Push = {
894
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
895
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
896
      prt.Anchored = true
897
      prt.CFrame = cframe
898
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://437347603", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
899
      game:GetService("Debris"):AddItem(prt, 10)
900
      table.insert(Effects, {
901
        prt,
902
        "Cylinder",
903
        delay,
904
        x3,
905
        y3,
906
        z3,
907
        msh
908
      })
909
    end
910
  }
911
}
912
function part(formfactor ,parent, reflectance, transparency, brickcolor, name, size)
913
	local fp = IT("Part")
914
	fp.formFactor = formfactor 
915
	fp.Parent = parent
916
	fp.Reflectance = reflectance
917
	fp.Transparency = transparency
918
	fp.CanCollide = false 
919
	fp.Locked = true
920
	fp.BrickColor = brickcolor
921
	fp.Name = name
922
	fp.Size = size
923
	fp.Position = tors.Position 
924
	RemoveOutlines(fp)
925
	fp.Material = "SmoothPlastic"
926
	fp:BreakJoints()
927
	return fp 
928
end 
929
 
930
function mesh(Mesh,part,meshtype,meshid,offset,scale)
931
	local mesh = IT(Mesh) 
932
	mesh.Parent = part
933
	if Mesh == "SpecialMesh" then
934
		mesh.MeshType = meshtype
935
	if meshid ~= "nil" then
936
		mesh.MeshId = "http://www.roblox.com/asset/?id="..meshid
937
		end
938
	end
939
	mesh.Offset = offset
940
	mesh.Scale = scale
941
	return mesh
942
end
943
944
function Magic(bonuspeed, type, pos, scale, value, color, MType)
945
	local type = type
946
	local rng = Instance.new("Part", char)
947
	rng.Anchored = true
948
	rng.BrickColor = color
949
	rng.CanCollide = false
950
	rng.FormFactor = 3
951
	rng.Name = "Ring"
952
	rng.Material = "Neon"
953
	rng.Size = Vector3.new(1, 1, 1)
954
	rng.Transparency = 0
955
	rng.TopSurface = 0
956
	rng.BottomSurface = 0
957
	rng.CFrame = pos
958
	local rngm = Instance.new("SpecialMesh", rng)
959
	rngm.MeshType = MType
960
	rngm.Scale = scale
961
	local scaler2 = 1
962
	if type == "Add" then
963
		scaler2 = 1 * value
964
	elseif type == "Divide" then
965
		scaler2 = 1 / value
966
	end
967
	coroutine.resume(coroutine.create(function()
968
		for i = 0, 10 / bonuspeed, 0.1 do
969
			swait()
970
			if type == "Add" then
971
				scaler2 = scaler2 - 0.01 * value / bonuspeed
972
			elseif type == "Divide" then
973
				scaler2 = scaler2 - 0.01 / value * bonuspeed
974
			end
975
			rng.Transparency = rng.Transparency + 0.01 * bonuspeed
976
			rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, scaler2 * bonuspeed)
977
		end
978
		rng:Destroy()
979
	end))
980
end
981
982
function Eviscerate(dude)
983
	if dude.Name ~= char then
984
		local bgf = IT("BodyGyro", dude.Head)
985
		bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
986
		local val = IT("BoolValue", dude)
987
		val.Name = "IsHit"
988
		local ds = coroutine.wrap(function()
989
			dude:WaitForChild("Head"):BreakJoints()
990
			wait(0.5)
991
			target = nil
992
			coroutine.resume(coroutine.create(function()
993
				for i, v in pairs(dude:GetChildren()) do
994
					if v:IsA("Accessory") then
995
						v:Destroy()
996
					end
997
					if v:IsA("Humanoid") then
998
						v:Destroy()
999
					end
1000
					if v:IsA("CharacterMesh") then
1001
						v:Destroy()
1002
					end
1003
					if v:IsA("Model") then
1004
						v:Destroy()
1005
					end
1006
					if v:IsA("Part") or v:IsA("MeshPart") then
1007
						for x, o in pairs(v:GetChildren()) do
1008
							if o:IsA("Decal") then
1009
								o:Destroy()
1010
							end
1011
						end
1012
						coroutine.resume(coroutine.create(function()
1013
							v.Material = "Neon"
1014
							v.CanCollide = false
1015
							local PartEmmit1 = IT("ParticleEmitter", v)
1016
							PartEmmit1.LightEmission = 1
1017
							PartEmmit1.Texture = "rbxassetid://284205403"
1018
							PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1019
							PartEmmit1.Rate = 150
1020
							PartEmmit1.Lifetime = NumberRange.new(1)
1021
							PartEmmit1.Size = NumberSequence.new({
1022
								NumberSequenceKeypoint.new(0, 0.75, 0),
1023
								NumberSequenceKeypoint.new(1, 0, 0)
1024
							})
1025
							PartEmmit1.Transparency = NumberSequence.new({
1026
								NumberSequenceKeypoint.new(0, 0, 0),
1027
								NumberSequenceKeypoint.new(1, 1, 0)
1028
							})
1029
							PartEmmit1.Speed = NumberRange.new(0, 0)
1030
							PartEmmit1.VelocitySpread = 30000
1031
							PartEmmit1.Rotation = NumberRange.new(-500, 500)
1032
							PartEmmit1.RotSpeed = NumberRange.new(-500, 500)
1033
							local BodPoss = IT("BodyPosition", v)
1034
							BodPoss.P = 3000
1035
							BodPoss.D = 1000
1036
							BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
1037
							BodPoss.position = v.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
1038
							v.Color = maincolor.Color
1039
							coroutine.resume(coroutine.create(function()
1040
								for i = 0, 49 do
1041
									swait(1)
1042
									v.Transparency = v.Transparency + 0.08
1043
								end
1044
								wait(0.5)
1045
								PartEmmit1.Enabled = false
1046
								wait(3)
1047
								v:Destroy()
1048
								dude:Destroy()
1049
							end))
1050
						end))
1051
					end
1052
				end
1053
			end))
1054
		end)
1055
		ds()
1056
	end
1057
end
1058
1059
function FindNearestHead(Position, Distance, SinglePlayer)
1060
	if SinglePlayer then
1061
		return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
1062
	end
1063
	local List = {}
1064
	for i, v in pairs(workspace:GetChildren()) do
1065
		if v:IsA("Model") and v:findFirstChild("Head") and v ~= char and Distance >= (v.Head.Position - Position).magnitude then
1066
			table.insert(List, v)
1067
		end
1068
	end
1069
	return List
1070
end
1071
1072
function Aura(bonuspeed, FastSpeed, type, pos, x1, y1, z1, value, color, outerpos, MType)
1073
	local type = type
1074
	local rng = Instance.new("Part", char)
1075
	rng.Anchored = true
1076
	rng.BrickColor = color
1077
	rng.CanCollide = false
1078
	rng.FormFactor = 3
1079
	rng.Name = "Ring"
1080
	rng.Material = "Neon"
1081
	rng.Size = Vector3.new(1, 1, 1)
1082
	rng.Transparency = 0
1083
	rng.TopSurface = 0
1084
	rng.BottomSurface = 0
1085
	rng.CFrame = pos
1086
	rng.CFrame = rng.CFrame + rng.CFrame.lookVector * outerpos
1087
	local rngm = Instance.new("SpecialMesh", rng)
1088
	rngm.MeshType = MType
1089
	rngm.Scale = Vector3.new(x1, y1, z1)
1090
	local scaler2 = 1
1091
	local speeder = FastSpeed
1092
	if type == "Add" then
1093
		scaler2 = 1 * value
1094
	elseif type == "Divide" then
1095
		scaler2 = 1 / value
1096
	end
1097
	coroutine.resume(coroutine.create(function()
1098
		for i = 0, 10 / bonuspeed, 0.1 do
1099
			swait()
1100
			if type == "Add" then
1101
				scaler2 = scaler2 - 0.01 * value / bonuspeed
1102
			elseif type == "Divide" then
1103
				scaler2 = scaler2 - 0.01 / value * bonuspeed
1104
			end
1105
			speeder = speeder - 0.01 * FastSpeed * bonuspeed
1106
			rng.CFrame = rng.CFrame + rng.CFrame.lookVector * speeder * bonuspeed
1107
			rng.Transparency = rng.Transparency + 0.01 * bonuspeed
1108
			rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, 0)
1109
		end
1110
		rng:Destroy()
1111
	end))
1112
end
1113
1114
function SoulSteal(dude)
1115
if dude.Name ~= char then
1116
local bgf = IT("BodyGyro", dude.Head)
1117
bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
1118
local val = IT("BoolValue", dude)
1119
val.Name = "IsHit"
1120
local torso = (dude:FindFirstChild'Head' or dude:FindFirstChild'Torso' or dude:FindFirstChild'UpperTorso' or dude:FindFirstChild'LowerTorso' or dude:FindFirstChild'HumanoidRootPart')
1121
local soulst = coroutine.wrap(function()
1122
local soul = Instance.new("Part",dude)
1123
soul.Size = Vector3.new(1,1,1)
1124
soul.CanCollide = false
1125
soul.Anchored = false
1126
soul.Position = torso.Position
1127
soul.Transparency = 1
1128
local PartEmmit1 = IT("ParticleEmitter", soul)
1129
PartEmmit1.LightEmission = 1
1130
PartEmmit1.Texture = "rbxassetid://569507414"
1131
PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1132
PartEmmit1.Rate = 250
1133
PartEmmit1.Lifetime = NumberRange.new(1.6)
1134
PartEmmit1.Size = NumberSequence.new({
1135
	NumberSequenceKeypoint.new(0, 1, 0),
1136
	NumberSequenceKeypoint.new(1, 0, 0)
1137
})
1138
PartEmmit1.Transparency = NumberSequence.new({
1139
	NumberSequenceKeypoint.new(0, 0, 0),
1140
	NumberSequenceKeypoint.new(1, 1, 0)
1141
})
1142
PartEmmit1.Speed = NumberRange.new(0, 0)
1143
PartEmmit1.VelocitySpread = 30000
1144
PartEmmit1.Rotation = NumberRange.new(-360, 360)
1145
PartEmmit1.RotSpeed = NumberRange.new(-360, 360)
1146
local BodPoss = IT("BodyPosition", soul)
1147
BodPoss.P = 3000
1148
BodPoss.D = 1000
1149
BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
1150
BodPoss.position = torso.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
1151
wait(1.6)
1152
soul.Touched:connect(function(hit)
1153
	if hit.Parent == char then
1154
	soul:Destroy()
1155
	end
1156
end)
1157
wait(1.2)
1158
while soul do
1159
	swait()
1160
	PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1161
	BodPoss.Position = tors.Position
1162
end
1163
end)
1164
	soulst()
1165
	end
1166
end
1167
function FaceMouse()
1168
local	Cam = workspace.CurrentCamera
1169
	return {
1170
		CFrame.new(char.Torso.Position, Vector3.new(mouse.Hit.p.x, char.Torso.Position.y, mouse.Hit.p.z)),
1171
		Vector3.new(mouse.Hit.p.x, mouse.Hit.p.y, mouse.Hit.p.z)
1172
	}
1173
end
1174
-------------------------------------------------------
1175
--End Effect Function--
1176
-------------------------------------------------------
1177
function Cso(ID, PARENT, VOLUME, PITCH)
1178
	local NSound = nil
1179
	coroutine.resume(coroutine.create(function()
1180
		NSound = IT("Sound", PARENT)
1181
		NSound.Volume = VOLUME
1182
		NSound.Pitch = PITCH
1183
		NSound.SoundId = "http://www.roblox.com/asset/?id="..ID
1184
		swait()
1185
		NSound:play()
1186
		game:GetService("Debris"):AddItem(NSound, 10)
1187
	end))
1188
	return NSound
1189
end
1190
function CameraEnshaking(Length, Intensity)
1191
	coroutine.resume(coroutine.create(function()
1192
		local intensity = 1 * Intensity
1193
		local rotM = 0.01 * Intensity
1194
		for i = 0, Length, 0.1 do
1195
			swait()
1196
			intensity = intensity - 0.05 * Intensity / Length
1197
			rotM = rotM - 5.0E-4 * Intensity / Length
1198
			hum.CameraOffset = Vector3.new(Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)))
1199
			cam.CFrame = cam.CFrame * CF(Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity))) * Euler(Rad(Mrandom(-intensity, intensity)) * rotM, Rad(Mrandom(-intensity, intensity)) * rotM, Rad(Mrandom(-intensity, intensity)) * rotM)
1200
		end
1201
		hum.CameraOffset = Vector3.new(0, 0, 0)
1202
	end))
1203
end
1204
-------------------------------------------------------
1205
--End Important Functions--
1206
-------------------------------------------------------
1207
1208
1209
-------------------------------------------------------
1210
--Start Customization--
1211
-------------------------------------------------------
1212
local Player_Size = 1
1213
if Player_Size ~= 1 then
1214
root.Size = root.Size * Player_Size
1215
tors.Size = tors.Size * Player_Size
1216
hed.Size = hed.Size * Player_Size
1217
ra.Size = ra.Size * Player_Size
1218
la.Size = la.Size * Player_Size
1219
rl.Size = rl.Size * Player_Size
1220
ll.Size = ll.Size * Player_Size
1221
----------------------------------------------------------------------------------
1222
rootj.Parent = root
1223
neck.Parent = tors
1224
RW.Parent = tors
1225
LW.Parent = tors
1226
RH.Parent = tors
1227
LH.Parent = tors
1228
----------------------------------------------------------------------------------
1229
rootj.C0 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
1230
rootj.C1 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
1231
neck.C0 = necko * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * angles(Rad(0), Rad(0), Rad(0))
1232
neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * angles(Rad(-90), Rad(0), Rad(180))
1233
RW.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* RIGHTSHOULDERC0
1234
LW.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* LEFTSHOULDERC0
1235
----------------------------------------------------------------------------------
1236
RH.C0 = CF(1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
1237
LH.C0 = CF(-1 * Player_Size, -1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(-90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
1238
RH.C1 = CF(0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
1239
LH.C1 = CF(-0.5 * Player_Size, 1 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(-90), Rad(0)) * angles(Rad(0), Rad(0), Rad(0))
1240
--hat.Parent = Character
1241
end
1242
----------------------------------------------------------------------------------
1243
local SONG = 1280408510
1244
local SONG2 = 0
1245
local Music = Instance.new("Sound",tors)
1246
Music.Volume = 2.5
1247
Music.Looped = true
1248
Music.Pitch = 1 --Pitcher
1249
----------------------------------------------------------------------------------
1250
local equipped = false
1251
local idle = 0
1252
local change = 1
1253
local val = 0
1254
local toim = 0
1255
local idleanim = 0.4
1256
local sine = 0
1257
local Sit = 1
1258
----------------------------------------------------------------------------------
1259
hum.WalkSpeed = 8
1260
hum.JumpPower = 57
1261
hum.Animator.Parent = nil
1262
----------------------------------------------------------------------------------
1263
local r = 255
1264
local g = 0
1265
local b = 0
1266
coroutine.resume(coroutine.create(function()
1267
	while wait() do
1268
		for i = 0, 50.8 do
1269
			swait()
1270
			g = g + 5
1271
		end
1272
		for i = 0, 50.8 do
1273
			swait()
1274
			r = r - 5
1275
		end
1276
		for i = 0, 50.8 do
1277
			swait()
1278
			b = b + 5
1279
		end
1280
		for i = 0, 50.8 do
1281
			swait()
1282
			g = g - 5
1283
		end
1284
		for i = 0, 50.8 do
1285
			swait()
1286
			r = r + 5
1287
		end
1288
		for i = 0, 50.8 do
1289
			swait()
1290
			b = b - 5
1291
		end
1292
	end
1293
end))
1294
----------------------------------------------------------------------------------
1295
local naeeym2 = IT("BillboardGui",char)
1296
naeeym2.AlwaysOnTop = true
1297
naeeym2.Size = UDim2.new(5,35,2,15)
1298
naeeym2.StudsOffset = Vector3.new(0,2,0)
1299
naeeym2.MaxDistance = 75
1300
naeeym2.Adornee = hed
1301
naeeym2.Name = "Name"
1302
local tecks2 = IT("TextLabel",naeeym2)
1303
tecks2.BackgroundTransparency = 1
1304
tecks2.TextScaled = true
1305
tecks2.BorderSizePixel = 0
1306
tecks2.Text = " "
1307
--tecks2.Font = "Fantasy"
1308
tecks2.TextSize = 30
1309
tecks2.TextStrokeTransparency = 0
1310
tecks2.TextColor3 = Color3.new(1,1,1)
1311
tecks2.TextStrokeColor3 = Color3.fromRGB(0, 0, 0)
1312
tecks2.Size = UDim2.new(1,0,0.5,0)
1313
tecks2.Parent = naeeym2
1314
----------------------------------------------------------------------------------
1315
 for i, v in pairs(dude:GetChildren()) do
1316
                    if v:IsA("Accessory") then
1317
                        v:Destroy()
1318
Reaper = IT("Model")
1319
Reaper.Parent = char
1320
Reaper.Name = "Reaper"
1321
RHe = IT("Part")
1322
RHe.Parent = Reaper
1323
RHe.BrickColor = BrickC("Really black")
1324
RHe.Locked = true
1325
RHe.CanCollide = false
1326
RHe.Transparency = 0
1327
PMesh = IT("SpecialMesh")
1328
RHe.formFactor =  "Symmetric"
1329
PMesh.MeshType = "FileMesh"
1330
PMesh.MeshId = "rbxassetid://1374148"
1331
PMesh.TextureId = "rbxassetid://185703978"
1332
PMesh.Scale = Vector3.new(1, 1, 1)
1333
PMesh.Parent = RHe
1334
local RWeld = IT("Weld")
1335
RWeld.Parent = RHe
1336
RWeld.Part0 = RHe
1337
RWeld.Part1 = hed
1338
RWeld.C0 = CF(0, -.7, 0) * angles(0, 0, 0)
1339
-------------------------------------------------------
1340
--End Customization--
1341
-------------------------------------------------------
1342
1343
1344
-------------------------------------------------------
1345
--Start Attacks N Stuff--
1346
-------------------------------------------------------
1347
1348
-------------------------------------------------------
1349
--End Attacks N Stuff--
1350
-------------------------------------------------------
1351
mouse.KeyDown:connect(function(key)
1352
    if string.byte(key) == 48 then
1353
        Swing = 2
1354
        hum.WalkSpeed = 38.82
1355
	end
1356
end)
1357
mouse.KeyUp:connect(function(key)
1358
    if string.byte(key) == 48 then
1359
        Swing = 1
1360
        hum.WalkSpeed = 8
1361
	end
1362
end)
1363
1364
 
1365
1366
1367
1368
1369
1370
1371
-------------------------------------------------------
1372
--Start Animations--
1373
-------------------------------------------------------
1374
while true do
1375
	swait()
1376
	sine = sine + change
1377
	local torvel = (root.Velocity * Vector3.new(1, 0, 1)).magnitude
1378
	local velderp = root.Velocity.y
1379
	hitfloor, posfloor = rayCast(root.Position, CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0)).lookVector, 4* Player_Size, char)
1380
	if equipped == true or equipped == false then
1381
		if attack == false then
1382
			idle = idle + 1
1383
		else
1384
			idle = 0
1385
		end
1386
		tecks2.TextStrokeColor3 = Color3.new(r / 255, g / 255, b / 255)
1387
		if 1 < root.Velocity.y and hitfloor == nil then
1388
			Anim = "Jump"
1389
			if attack == false then
1390
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(-16), Rad(0), Rad(0)), 0.15)
1391
				neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(10 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.3)
1392
				RH.C0 = clerp(RH.C0, CF(1* Player_Size, -.2 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * RHCF * angles(Rad(-2.5), Rad(0), Rad(0)), 0.15)
1393
				LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -.9 - 0.1 * Cos(sine / 20), -.5* Player_Size) * LHCF * angles(Rad(-2.5), Rad(0), Rad(0)), 0.15)
1394
				RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(25), Rad(-.6), Rad(13 + 4.5 * Sin(sine / 20))), 0.1)
1395
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(25), Rad(-.6), Rad(-13 - 4.5 * Sin(sine / 20))), 0.1)
1396
			end
1397
		elseif -1 > root.Velocity.y and hitfloor == nil then
1398
			Anim = "Fall"
1399
			if attack == false then
1400
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(24), Rad(0), Rad(0)), 0.15)
1401
				neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(10 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.3)
1402
				RH.C0 = clerp(RH.C0, CF(1* Player_Size, -1 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * RHCF * angles(Rad(-3.5), Rad(0), Rad(0)), 0.15)
1403
				LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -.8 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * LHCF * angles(Rad(-3.5), Rad(0), Rad(0)), 0.15)
1404
				RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(65), Rad(-.6), Rad(45 + 4.5 * Sin(sine / 20))), 0.1)
1405
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(55), Rad(-.6), Rad(-45 - 4.5 * Sin(sine / 20))), 0.1)
1406
			end
1407
		elseif torvel < 1 and hitfloor ~= nil then
1408
			Anim = "Idle"
1409
			change = .5
1410
			if attack == false then
1411
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.1 + 0.05 * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(0)), 0.15)
1412
				tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(Rad(-4.5 * Sin(sine / 3)), Rad(-4.5 * Sin(sine / 3)), Rad(0)), 0.3)
1413
				RH.C0 = clerp(RH.C0, CF(1* Player_Size, -0.8 + 0.1 * Cos(sine / 3)* Player_Size, -.3* Player_Size) * angles(Rad(0), Rad(74), Rad(0)) * angles(Rad(-2.5), Rad(0), Rad(-5)), 0.15)
1414
				LH.C0 = clerp(LH.C0, CF(-1* Player_Size, -0.9 - 0.05 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(-87), Rad(0)) * angles(Rad(-2.5), Rad(0), Rad(0)), 0.15)
1415
				RW.C0 = clerp(RW.C0, CF(1* Player_Size, 0.3 + 0.05 * Sin(sine / 20)* Player_Size, .6* Player_Size) * angles(Rad(-35), Rad(-25 + 2.5 * Sin(sine / 20)), Rad(-55 + 2.5 * Sin(sine / 20))), 0.12)
1416
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.05 * Sin(sine / 20* Player_Size), 0* Player_Size) * angles(Rad(-30 * Sin(sine / 10)), Rad(0), Rad(-5 - 4.5 * Sin(sine / 20))), 0.1)
1417
			end
1418
		elseif torvel > 2 and torvel < 25 and hitfloor ~= nil then
1419
			Anim = "Walk"
1420
			change = .9
1421
			if attack == false then
1422
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.175 + 0.025 * Cos(sine / 3.5) + -Sin(sine / 3.5) / 7) * angles(Rad(3 - 2.5 * Cos(sine / 3.5)), Rad(0) - root.RotVelocity.Y / 75, Rad(8 * Cos(sine / 7))), 0.15)
1423
				tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(Rad(6 - 2.5 * Sin(sine / 7)), Rad(0), Rad(0) - hed.RotVelocity.Y / 15), 0.3)
1424
				RH.C0 = clerp(RH.C0, CF(1, -0.8 - 0.5 * Cos(sine / 7) / 2, 0.6 * Cos(sine / 7) / 2)  * angles(Rad(-15 - 5 * Cos(sine / 7)) - rl.RotVelocity.Y / 75 + -Sin(sine / 7) / 2.5, Rad(90 - 3 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
1425
         		LH.C0 = clerp(LH.C0, CF(-1, -0.8 + 0.5 * Cos(sine / 7) / 2, -0.6 * Cos(sine / 7) / 2) * angles(Rad(-15 + 5 * Cos(sine / 7)) + ll.RotVelocity.Y / 75 + Sin(sine / 7) / 2.5, Rad(-90 - 3 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
1426
				RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.05 * Sin(sine / 7), 0) * angles(Rad(37)  * Cos(sine / 7) , Rad(0), Rad(-.6) - ra.RotVelocity.Y / 75), 0.1)
1427
				LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.05 * Sin(sine / 7), 0) * angles(Rad(-37)  * Cos(sine / 7) , Rad(0) ,	Rad(.6) + la.RotVelocity.Y / 75), 0.1)
1428
			end
1429
		elseif torvel >= 25 and hitfloor ~= nil then
1430
			Anim = "Sprint"
1431
			change = 1.35
1432
			if attack == false then
1433
			rootj.C0 = clerp(rootj.C0, RootCF * CF(0, 0, -0.175 + 0.025 * Cos(sine / 3.5) + -Sin(sine / 3.5) / 7) * angles(Rad(26 - 4.5 * Cos(sine / 3.5)), Rad(0) - root.RotVelocity.Y / 75, Rad(15 * Cos(sine / 7))), 0.15)
1434
			tors.Neck.C0 = clerp(tors.Neck.C0, necko * angles(Rad(-2.5 * Sin(sine / 20)), Rad(0), Rad(0) - hed.RotVelocity.Y / 15), 0.3)
1435
			RH.C0 = clerp(RH.C0, CF(1, -0.925 - 0.5 * Cos(sine / 7) / 2, 0.7 * Cos(sine / 7) / 2) * angles(Rad(-15 - 55 * Cos(sine / 7)) - rl.RotVelocity.Y / 75 + -Sin(sine / 7) / 2.5, Rad(90 - 0.1 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 + 0.1 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
1436
         	LH.C0 = clerp(LH.C0, CF(-1, -0.925 + 0.5 * Cos(sine / 7) / 2, -0.7 * Cos(sine / 7) / 2) * angles(Rad(-15 + 55 * Cos(sine / 7)) + ll.RotVelocity.Y / 75 + Sin(sine / 7) / 2.5, Rad(-90 - 0.1 * Cos(sine / 7)), Rad(0)) * angles(Rad(0 - 0.1 * Cos(sine / 7)), Rad(0), Rad(0)), 0.3)
1437
			RW.C0 = clerp(RW.C0, CF(1.5, 0.5 + 0.05 * Sin(sine / 30), 0.34 * Cos(sine / 7)) * angles(Rad(110)  * Cos(sine / 7) , Rad(0), Rad(13) - ra.RotVelocity.Y / 75), 0.15)
1438
			LW.C0 = clerp(LW.C0, CF(-1.5, 0.5 + 0.05 * Sin(sine / 30), -0.34 * Cos(sine / 7)) * angles(Rad(-110)  * Cos(sine / 7) , Rad(0) ,	Rad(-13) + la.RotVelocity.Y / 75), 0.15)
1439
			end
1440
		end
1441
	end
1442
	Music.SoundId = "rbxassetid://"..SONG
1443
	Music.Looped = true
1444
	Music.Pitch = 1
1445
	Music.Volume = 5
1446
	Music.Parent = tors
1447
	Music:Resume()
1448
	if 0 < #Effects then
1449
		for e = 1, #Effects do
1450
			if Effects[e] ~= nil then
1451
				local Thing = Effects[e]
1452
				if Thing ~= nil then
1453
					local Part = Thing[1]
1454
					local Mode = Thing[2]
1455
					local Delay = Thing[3]
1456
					local IncX = Thing[4]
1457
					local IncY = Thing[5]
1458
					local IncZ = Thing[6]
1459
					if 1 >= Thing[1].Transparency then
1460
						if Thing[2] == "Block1" then
1461
							Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1462
							local Mesh = Thing[1].Mesh
1463
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1464
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1465
						elseif Thing[2] == "Block2" then
1466
							Thing[1].CFrame = Thing[1].CFrame + Vector3.new(0, 0, 0)
1467
							local Mesh = Thing[7]
1468
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1469
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1470
						elseif Thing[2] == "Block3" then
1471
							Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) + Vector3.new(0, 0.15, 0)
1472
							local Mesh = Thing[7]
1473
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1474
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1475
						elseif Thing[2] == "Cylinder" then
1476
							local Mesh = Thing[1].Mesh
1477
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1478
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1479
						elseif Thing[2] == "Blood" then
1480
							local Mesh = Thing[7]
1481
							Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
1482
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1483
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1484
						elseif Thing[2] == "Elec" then
1485
							local Mesh = Thing[1].Mesh
1486
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
1487
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1488
						elseif Thing[2] == "Disappear" then
1489
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1490
						elseif Thing[2] == "Shatter" then
1491
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1492
							Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
1493
							Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
1494
							Thing[6] = Thing[6] + Thing[5]
1495
						end
1496
					else
1497
						Part.Parent = nil
1498
						table.remove(Effects, e)
1499
					end
1500
				end
1501
			end
1502
		end
1503
	end
1504
end
1505
-------------------------------------------------------
1506
--End Animations And Script--
1507
-------------------------------------------------------