View difference between Paste ID: 7aTPfGwq and iZqZM9ri
SHOW: | | - or go back to the newest paste.
1
-- This script has been converted to FE by iPxter
2
3
4
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
5
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
6
do
7
	print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
8
	script.Parent = Player.Character
9
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16-
local plr = game:service'Players'.LocalPlayer
16+
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
17-
print('Local User is '..plr.Name)
17+
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent and t.Function then
34
			t.Function(...)
35
		end
36
	end
37
	m.TrigEvent = te
38
	UIS.TrigEvent = te
39-
local mouse = plr:GetMouse()
39+
40
	Event.OnServerEvent:Connect(function(plr,io)
41
	    if plr~=Player then return end
42
		if io.isMouse then
43
			m.Target = io.Target
44
			m.Hit = io.Hit
45
		else
46
			local b = io.UserInputState == Enum.UserInputState.Begin
47
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
48
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
49
			end
50
			for _,t in pairs(CAS.Actions) do
51
				for _,k in pairs(t.Keys) do
52
					if k==io.KeyCode then
53
						t.Function(t.Name,io.UserInputState,io)
54
					end
55
				end
56
			end
57
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
58
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
59
	    end
60
	end)
61
	Event.Parent = NLS([==[
62
	local Player = game:GetService("Players").LocalPlayer
63
	local Event = script:WaitForChild("UserInput_Event")
64
65
	local UIS = game:GetService("UserInputService")
66
	local input = function(io,a)
67
		if a then return end
68
		--Since InputObject is a client-side instance, we create and pass table instead
69
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
70
	end
71
	UIS.InputBegan:Connect(input)
72
	UIS.InputEnded:Connect(input)
73
74
	local Mouse = Player:GetMouse()
75
	local h,t
76
	--Give the server mouse data 30 times every second, but only if the values changed
77
	--If player is not moving their mouse, client won't fire events
78
	while wait(1/30) do
79
		if h~=Mouse.Hit or t~=Mouse.Target then
80
			h,t=Mouse.Hit,Mouse.Target
81
			Event:FireServer({isMouse=true,Target=t,Hit=h})
82
		end
83
	end]==],Player.Character)
84
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
85
end
86
-----------------------
87
--[[ Name : TeaCopter ]]--
88
--[[ Description : Truly British. ]]--
89
--[[ Original By : Creterisk/makhail07]]--
90
--[[ Edited By : TheGuestToBlame]]--
91
--[[ \ None / ]]--
92
-------------------------------------------------------
93
--A script By TheGuestToBlame
94
--Discord 4NDAYY#7540
95
-------------------------------------------------------
96
97
--A cup of tea, anyone?
98
99
wait(1 / 60)
100
101
local plr = Owner
102
print('TeaCopter Loaded')
103
print([[
104
	I honestly, don't know why I edited this,
105
	but it's a simple meme, so you've gotta appreciate it.
106
	
107
	Controls : 
108
	T - Taunt ( Random Sentences )
109
	Q - Sitt
110
	Click - Sipp
111
]])
112
local char = plr.Character
113
local hum = char:FindFirstChildOfClass'Humanoid'
114
local hed = char.Head
115
local root = char:FindFirstChild'HumanoidRootPart'
116
local rootj = root.RootJoint
117
local tors = char.Torso
118
local ra = char["Right Arm"]
119
local la = char["Left Arm"]
120
local rl = char["Right Leg"]
121
local ll = char["Left Leg"]
122
local neck = tors["Neck"]
123
local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
124
local RHCF = CFrame.fromEulerAnglesXYZ(0, 1.6, 0)
125
local LHCF = CFrame.fromEulerAnglesXYZ(0, -1.6, 0)
126
local maincolor = BrickColor.new("Institutional white")
127
-------------------------------------------------------
128
--Start Good Stuff--
129
-------------------------------------------------------
130
cam = game.Workspace.CurrentCamera
131
CF = CFrame.new
132
angles = CFrame.Angles
133
attack = false
134
Euler = CFrame.fromEulerAnglesXYZ
135
Rad = math.rad
136
IT = Instance.new
137
BrickC = BrickColor.new
138
Cos = math.cos
139
Acos = math.acos
140
Sin = math.sin
141
Asin = math.asin
142
Abs = math.abs
143
Mrandom = math.random
144
Floor = math.floor
145
-------------------------------------------------------
146
--End Good Stuff--
147
-------------------------------------------------------
148
necko = CF(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
149
RSH, LSH = nil, nil 
150
RW = Instance.new("Weld") 
151
LW = Instance.new("Weld")
152
RH = tors["Right Hip"]
153
LH = tors["Left Hip"]
154
RSH = tors["Right Shoulder"] 
155
LSH = tors["Left Shoulder"] 
156
RSH.Parent = nil 
157
LSH.Parent = nil 
158
RW.Name = "RW"
159
RW.Part0 = tors 
160
RW.C0 = CF(1.5, 0.5, 0)
161
RW.C1 = CF(0, 0.5, 0) 
162
RW.Part1 = ra
163
RW.Parent = tors 
164
LW.Name = "LW"
165
LW.Part0 = tors 
166
LW.C0 = CF(-1.5, 0.5, 0)
167
LW.C1 = CF(0, 0.5, 0) 
168
LW.Part1 = la
169
LW.Parent = tors
170
Effects = {}
171
newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
172
    local wld = Instance.new("Weld", wp1)
173
    wld.Part0 = wp0
174
    wld.Part1 = wp1
175
    wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
176
end
177
newWeld(tors, ll, -0.5, -1, 0)
178
ll.Weld.C1 = CFrame.new(0, 1, 0)
179
newWeld(tors, rl, 0.5, -1, 0)
180
rl.Weld.C1 = CFrame.new(0, 1, 0)
181
-------------------------------------------------------
182
--Start HeartBeat--
183
-------------------------------------------------------
184
ArtificialHB = Instance.new("BindableEvent", script)
185
ArtificialHB.Name = "Heartbeat"
186
script:WaitForChild("Heartbeat")
187
188
frame = 1 / 60
189
tf = 0
190
allowframeloss = false
191
tossremainder = false
192
193
194
lastframe = tick()
195
script.Heartbeat:Fire()
196
197
198
game:GetService("RunService").Heartbeat:connect(function(s, p)
199
	tf = tf + s
200
	if tf >= frame then
201
		if allowframeloss then
202
			script.Heartbeat:Fire()
203
			lastframe = tick()
204
		else
205
			for i = 1, math.floor(tf / frame) do
206
				script.Heartbeat:Fire()
207
			end
208
			lastframe = tick()
209
		end
210
		if tossremainder then
211
			tf = 0
212
		else
213
			tf = tf - frame * math.floor(tf / frame)
214
		end
215
	end
216
end)
217
-------------------------------------------------------
218
--End HeartBeat--
219
-------------------------------------------------------
220
221
-------------------------------------------------------
222
--Start Important Functions--
223
-------------------------------------------------------
224
function swait(num)
225
	if num == 0 or num == nil then
226
		game:service("RunService").Stepped:wait(0)
227
	else
228
		for i = 0, num do
229
			game:service("RunService").Stepped:wait(0)
230
		end
231
	end
232
end
233
function thread(f)
234
	coroutine.resume(coroutine.create(f))
235
end
236
function clerp(a, b, t)
237
	local qa = {
238
		QuaternionFromCFrame(a)
239
	}
240
	local qb = {
241
		QuaternionFromCFrame(b)
242
	}
243
	local ax, ay, az = a.x, a.y, a.z
244
	local bx, by, bz = b.x, b.y, b.z
245
	local _t = 1 - t
246
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
247
end
248
function QuaternionFromCFrame(cf)
249
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
250
	local trace = m00 + m11 + m22
251
	if trace > 0 then
252
		local s = math.sqrt(1 + trace)
253
		local recip = 0.5 / s
254
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
255
	else
256
		local i = 0
257
		if m00 < m11 then
258
			i = 1
259
		end
260
		if m22 > (i == 0 and m00 or m11) then
261
			i = 2
262
		end
263
		if i == 0 then
264
			local s = math.sqrt(m00 - m11 - m22 + 1)
265
			local recip = 0.5 / s
266
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
267
		elseif i == 1 then
268
			local s = math.sqrt(m11 - m22 - m00 + 1)
269
			local recip = 0.5 / s
270
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
271
		elseif i == 2 then
272
			local s = math.sqrt(m22 - m00 - m11 + 1)
273
			local recip = 0.5 / s
274
			return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
275
		end
276
	end
277
end
278
function QuaternionToCFrame(px, py, pz, x, y, z, w)
279
	local xs, ys, zs = x + x, y + y, z + z
280
	local wx, wy, wz = w * xs, w * ys, w * zs
281
	local xx = x * xs
282
	local xy = x * ys
283
	local xz = x * zs
284
	local yy = y * ys
285
	local yz = y * zs
286
	local zz = z * zs
287
	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))
288
end
289
function QuaternionSlerp(a, b, t)
290
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
291
	local startInterp, finishInterp
292
	if cosTheta >= 1.0E-4 then
293
		if 1 - cosTheta > 1.0E-4 then
294
			local theta = math.acos(cosTheta)
295
			local invSinTheta = 1 / Sin(theta)
296
			startInterp = Sin((1 - t) * theta) * invSinTheta
297
			finishInterp = Sin(t * theta) * invSinTheta
298
		else
299
			startInterp = 1 - t
300
			finishInterp = t
301
		end
302
	elseif 1 + cosTheta > 1.0E-4 then
303
		local theta = math.acos(-cosTheta)
304
		local invSinTheta = 1 / Sin(theta)
305
		startInterp = Sin((t - 1) * theta) * invSinTheta
306
		finishInterp = Sin(t * theta) * invSinTheta
307
	else
308
		startInterp = t - 1
309
		finishInterp = t
310
	end
311
	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
312
end
313
function rayCast(Position, Direction, Range, Ignore)
314
	return game:service("Workspace"):FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore)
315
end
316
local RbxUtility = LoadLibrary("RbxUtility")
317
local Create = RbxUtility.Create
318
319
-------------------------------------------------------
320
--Start Damage Function--
321
-------------------------------------------------------
322
function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
323
	if hit.Parent == nil then
324
		return
325
	end
326
	local h = hit.Parent:FindFirstChildOfClass("Humanoid")
327
	for _, v in pairs(hit.Parent:children()) do
328
		if v:IsA("Humanoid") then
329
			h = v
330
		end
331
	end
332
         if h ~= nil and hit.Parent.Name ~= char.Name and hit.Parent:FindFirstChild("UpperTorso") ~= nil then
333
	
334
         hit.Parent:FindFirstChild("Head"):BreakJoints()
335
         end
336
337
	if h ~= nil and hit.Parent.Name ~= char.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
338
		if hit.Parent:findFirstChild("DebounceHit") ~= nil then
339
			if hit.Parent.DebounceHit.Value == true then
340
				return
341
			end
342
		end
343
         if insta == true then
344
         hit.Parent:FindFirstChild("Head"):BreakJoints()
345
         end
346
		local c = Create("ObjectValue"){
347
			Name = "creator",
348
			Value = game:service("Players").LocalPlayer,
349
			Parent = h,
350
		}
351
		game:GetService("Debris"):AddItem(c, .5)
352
		if HitSound ~= nil and HitPitch ~= nil then
353
			CFuncs.Sound.Create(HitSound, hit, 1, HitPitch) 
354
		end
355
		local Damage = math.random(minim, maxim)
356
		local blocked = false
357
		local block = hit.Parent:findFirstChild("Block")
358
		if block ~= nil then
359
			if block.className == "IntValue" then
360
				if block.Value > 0 then
361
					blocked = true
362
					block.Value = block.Value - 1
363
					print(block.Value)
364
				end
365
			end
366
		end
367
		if blocked == false then
368
			h.Health = h.Health - Damage
369
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, tors.BrickColor.Color)
370
		else
371
			h.Health = h.Health - (Damage / 2)
372
			ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, tors.BrickColor.Color)
373
		end
374
		if Type == "Knockdown" then
375
			local hum = hit.Parent.Humanoid
376
			hum.PlatformStand = true
377
			coroutine.resume(coroutine.create(function(HHumanoid)
378
				swait(1)
379
				HHumanoid.PlatformStand = false
380
			end), hum)
381
			local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
382
			local bodvol = Create("BodyVelocity"){
383
				velocity = angle * knockback,
384
				P = 5000,
385
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
386
				Parent = hit,
387
			}
388
			local rl = Create("BodyAngularVelocity"){
389
				P = 3000,
390
				maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
391
				angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
392
				Parent = hit,
393
			}
394
			game:GetService("Debris"):AddItem(bodvol, .5)
395
			game:GetService("Debris"):AddItem(rl, .5)
396
		elseif Type == "Normal" then
397
			local vp = Create("BodyVelocity"){
398
				P = 500,
399
				maxForce = Vector3.new(math.huge, 0, math.huge),
400
				velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05,
401
			}
402
			if knockback > 0 then
403
				vp.Parent = hit.Parent.Torso
404
			end
405
			game:GetService("Debris"):AddItem(vp, .5)
406
		elseif Type == "Up" then
407
			local bodyVelocity = Create("BodyVelocity"){
408
				velocity = Vector3.new(0, 20, 0),
409
				P = 5000,
410
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
411
				Parent = hit,
412
			}
413
			game:GetService("Debris"):AddItem(bodyVelocity, .5)
414
		elseif Type == "DarkUp" then
415
			coroutine.resume(coroutine.create(function()
416
				for i = 0, 1, 0.1 do
417
					swait()
418
					Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1)
419
				end
420
			end))
421
			local bodyVelocity = Create("BodyVelocity"){
422
				velocity = Vector3.new(0, 20, 0),
423
				P = 5000,
424
				maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
425
				Parent = hit,
426
			}
427
			game:GetService("Debris"):AddItem(bodyVelocity, 1)
428
		elseif Type == "Snare" then
429
			local bp = Create("BodyPosition"){
430
				P = 2000,
431
				D = 100,
432
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
433
				position = hit.Parent.Torso.Position,
434
				Parent = hit.Parent.Torso,
435
			}
436
			game:GetService("Debris"):AddItem(bp, 1)
437
		elseif Type == "Freeze" then
438
			local BodPos = Create("BodyPosition"){
439
				P = 50000,
440
				D = 1000,
441
				maxForce = Vector3.new(math.huge, math.huge, math.huge),
442
				position = hit.Parent.Torso.Position,
443
				Parent = hit.Parent.Torso,
444
			}
445
			local BodGy = Create("BodyGyro") {
446
				maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge ,
447
				P = 20e+003,
448
				Parent = hit.Parent.Torso,
449
				cframe = hit.Parent.Torso.CFrame,
450
			}
451
			hit.Parent.Torso.Anchored = true
452
			coroutine.resume(coroutine.create(function(Part) 
453
				swait(1.5)
454
				Part.Anchored = false
455
			end), hit.Parent.Torso)
456
			game:GetService("Debris"):AddItem(BodPos, 3)
457
			game:GetService("Debris"):AddItem(BodGy, 3)
458
		end
459
		local debounce = Create("BoolValue"){
460
			Name = "DebounceHit",
461
			Parent = hit.Parent,
462
			Value = true,
463
		}
464
		game:GetService("Debris"):AddItem(debounce, Delay)
465
		c = Create("ObjectValue"){
466
			Name = "creator",
467
			Value = Player,
468
			Parent = h,
469
		}
470
		game:GetService("Debris"):AddItem(c, .5)
471
	end
472
end
473
-------------------------------------------------------
474
--End Damage Function--
475
-------------------------------------------------------
476
477
-------------------------------------------------------
478
--Start Damage Function Customization--
479
-------------------------------------------------------
480
function ShowDamage(Pos, Text, Time, Color)
481
	local Rate = (1 / 30)
482
	local Pos = (Pos or Vector3.new(0, 0, 0))
483
	local Text = (Text or "")
484
	local Time = (Time or 2)
485
	local Color = (Color or Color3.new(1, 0, 1))
486
	local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0))
487
	EffectPart.Anchored = true
488
	local BillboardGui = Create("BillboardGui"){
489
		Size = UDim2.new(3, 0, 3, 0),
490
		Adornee = EffectPart,
491
		Parent = EffectPart,
492
	}
493
	local TextLabel = Create("TextLabel"){
494
		BackgroundTransparency = 1,
495
		Size = UDim2.new(1, 0, 1, 0),
496
		Text = Text,
497
		Font = "Bodoni",
498
		TextColor3 = Color,
499
		TextScaled = true,
500
		TextStrokeColor3 = Color3.fromRGB(0,0,0),
501
		Parent = BillboardGui,
502
	}
503
	game.Debris:AddItem(EffectPart, (Time))
504
	EffectPart.Parent = game:GetService("Workspace")
505
	delay(0, function()
506
		local Frames = (Time / Rate)
507
		for Frame = 1, Frames do
508
			wait(Rate)
509
			local Percent = (Frame / Frames)
510
			EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0)
511
			TextLabel.TextTransparency = Percent
512
		end
513
		if EffectPart and EffectPart.Parent then
514
			EffectPart:Destroy()
515
		end
516
	end)
517
end
518
-------------------------------------------------------
519
--End Damage Function Customization--
520
-------------------------------------------------------
521
522
function MagniDamage(Part, magni, mindam, maxdam, knock, Type)
523
  for _, c in pairs(workspace:children()) do
524
    local hum = c:findFirstChild("Humanoid")
525
    if hum ~= nil then
526
      local head = c:findFirstChild("Head")
527
      if head ~= nil then
528
        local targ = head.Position - Part.Position
529
        local mag = targ.magnitude
530
        if magni >= mag and c.Name ~= plr.Name then
531
          Damage(head, head, mindam, maxdam, knock, Type, root, 0.1, "http://www.roblox.com/asset/?id=0", 1.2)
532
        end
533
      end
534
    end
535
  end
536
end
537
538
539
CFuncs = {
540
	Part = {
541
		Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
542
			local Part = Create("Part")({
543
				Parent = Parent,
544
				Reflectance = Reflectance,
545
				Transparency = Transparency,
546
				CanCollide = false,
547
				Locked = true,
548
				BrickColor = BrickColor.new(tostring(BColor)),
549
				Name = Name,
550
				Size = Size,
551
				Material = Material
552
			})
553
			RemoveOutlines(Part)
554
			return Part
555
		end
556
	},
557
	Mesh = {
558
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
559
			local Msh = Create(Mesh)({
560
				Parent = Part,
561
				Offset = OffSet,
562
				Scale = Scale
563
			})
564
			if Mesh == "SpecialMesh" then
565
				Msh.MeshType = MeshType
566
				Msh.MeshId = MeshId
567
			end
568
			return Msh
569
		end
570
	},
571
	Mesh = {
572
		Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
573
			local Msh = Create(Mesh)({
574
				Parent = Part,
575
				Offset = OffSet,
576
				Scale = Scale
577
			})
578
			if Mesh == "SpecialMesh" then
579
				Msh.MeshType = MeshType
580
				Msh.MeshId = MeshId
581
			end
582
			return Msh
583
		end
584
	},
585
	Weld = {
586
		Create = function(Parent, Part0, Part1, C0, C1)
587
			local Weld = Create("Weld")({
588
				Parent = Parent,
589
				Part0 = Part0,
590
				Part1 = Part1,
591
				C0 = C0,
592
				C1 = C1
593
			})
594
			return Weld
595
		end
596
	},
597
	Sound = {
598
		Create = function(id, par, vol, pit)
599
			coroutine.resume(coroutine.create(function()
600
				local S = Create("Sound")({
601
					Volume = vol,
602
					Pitch = pit or 1,
603
					SoundId = id,
604
					Parent = par or workspace
605
				})
606
				wait()
607
				S:play()
608
				game:GetService("Debris"):AddItem(S, 6)
609
			end))
610
		end
611
	},
612
	ParticleEmitter = {
613
		Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
614
			local fp = Create("ParticleEmitter")({
615
				Parent = Parent,
616
				Color = ColorSequence.new(Color1, Color2),
617
				LightEmission = LightEmission,
618
				Size = Size,
619
				Texture = Texture,
620
				Transparency = Transparency,
621
				ZOffset = ZOffset,
622
				Acceleration = Accel,
623
				Drag = Drag,
624
				LockedToPart = LockedToPart,
625
				VelocityInheritance = VelocityInheritance,
626
				EmissionDirection = EmissionDirection,
627
				Enabled = Enabled,
628
				Lifetime = LifeTime,
629
				Rate = Rate,
630
				Rotation = Rotation,
631
				RotSpeed = RotSpeed,
632
				Speed = Speed,
633
				VelocitySpread = VelocitySpread
634
			})
635
			return fp
636
		end
637
	}
638
}
639
function RemoveOutlines(part)
640
	part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
641
end
642
function CreatePart(FormFactor, Parent, Material, Reflectance, Transparency, BColor, Name, Size)
643
	local Part = Create("Part")({
644
		formFactor = FormFactor,
645
		Parent = Parent,
646
		Reflectance = Reflectance,
647
		Transparency = Transparency,
648
		CanCollide = false,
649
		Locked = true,
650
		BrickColor = BrickColor.new(tostring(BColor)),
651
		Name = Name,
652
		Size = Size,
653
		Material = Material
654
	})
655
	RemoveOutlines(Part)
656
	return Part
657
end
658
function CreateMesh(Mesh, Part, MeshType, MeshId, OffSet, Scale)
659
	local Msh = Create(Mesh)({
660
		Parent = Part,
661
		Offset = OffSet,
662
		Scale = Scale
663
	})
664
	if Mesh == "SpecialMesh" then
665
		Msh.MeshType = MeshType
666
		Msh.MeshId = MeshId
667
	end
668
	return Msh
669
end
670
function CreateWeld(Parent, Part0, Part1, C0, C1)
671
	local Weld = Create("Weld")({
672
		Parent = Parent,
673
		Part0 = Part0,
674
		Part1 = Part1,
675
		C0 = C0,
676
		C1 = C1
677
	})
678
	return Weld
679
end
680
681
682
-------------------------------------------------------
683
--Start Effect Function--
684
-------------------------------------------------------
685
EffectModel = Instance.new("Model", char)
686
Effects = {
687
  Block = {
688
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type)
689
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
690
      prt.Anchored = true
691
      prt.CFrame = cframe
692
      local msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
693
      game:GetService("Debris"):AddItem(prt, 10)
694
      if Type == 1 or Type == nil then
695
        table.insert(Effects, {
696
          prt,
697
          "Block1",
698
          delay,
699
          x3,
700
          y3,
701
          z3,
702
          msh
703
        })
704
      elseif Type == 2 then
705
        table.insert(Effects, {
706
          prt,
707
          "Block2",
708
          delay,
709
          x3,
710
          y3,
711
          z3,
712
          msh
713
        })
714
      else
715
        table.insert(Effects, {
716
          prt,
717
          "Block3",
718
          delay,
719
          x3,
720
          y3,
721
          z3,
722
          msh
723
        })
724
      end
725
    end
726
  },
727
  Sphere = {
728
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
729
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
730
      prt.Anchored = true
731
      prt.CFrame = cframe
732
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
733
      game:GetService("Debris"):AddItem(prt, 10)
734
      table.insert(Effects, {
735
        prt,
736
        "Cylinder",
737
        delay,
738
        x3,
739
        y3,
740
        z3,
741
        msh
742
      })
743
    end
744
  },
745
  Cylinder = {
746
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
747
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
748
      prt.Anchored = true
749
      prt.CFrame = cframe
750
      local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
751
      game:GetService("Debris"):AddItem(prt, 10)
752
      table.insert(Effects, {
753
        prt,
754
        "Cylinder",
755
        delay,
756
        x3,
757
        y3,
758
        z3,
759
        msh
760
      })
761
    end
762
  },
763
  Wave = {
764
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
765
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new())
766
      prt.Anchored = true
767
      prt.CFrame = cframe
768
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://20329976", Vector3.new(0, 0, 0), Vector3.new(x1 / 60, y1 / 60, z1 / 60))
769
      game:GetService("Debris"):AddItem(prt, 10)
770
      table.insert(Effects, {
771
        prt,
772
        "Cylinder",
773
        delay,
774
        x3 / 60,
775
        y3 / 60,
776
        z3 / 60,
777
        msh
778
      })
779
    end
780
  },
781
  Ring = {
782
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
783
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
784
      prt.Anchored = true
785
      prt.CFrame = cframe
786
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
787
      game:GetService("Debris"):AddItem(prt, 10)
788
      table.insert(Effects, {
789
        prt,
790
        "Cylinder",
791
        delay,
792
        x3,
793
        y3,
794
        z3,
795
        msh
796
      })
797
    end
798
  },
799
  Break = {
800
    Create = function(brickcolor, cframe, x1, y1, z1)
801
      local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5))
802
      prt.Anchored = true
803
      prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
804
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
805
      local num = math.random(10, 50) / 1000
806
      game:GetService("Debris"):AddItem(prt, 10)
807
      table.insert(Effects, {
808
        prt,
809
        "Shatter",
810
        num,
811
        prt.CFrame,
812
        math.random() - math.random(),
813
        0,
814
        math.random(50, 100) / 100
815
      })
816
    end
817
  },
818
Spiral = {
819
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
820
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
821
      prt.Anchored = true
822
      prt.CFrame = cframe
823
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://1051557", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
824
      game:GetService("Debris"):AddItem(prt, 10)
825
      table.insert(Effects, {
826
        prt,
827
        "Cylinder",
828
        delay,
829
        x3,
830
        y3,
831
        z3,
832
        msh
833
      })
834
    end
835
  },
836
Push = {
837
    Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
838
      local prt = CFuncs.Part.Create(EffectModel, "SmoothPlastic", 0, 0, brickcolor, "Effect", Vector3.new())
839
      prt.Anchored = true
840
      prt.CFrame = cframe
841
      local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "rbxassetid://437347603", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1))
842
      game:GetService("Debris"):AddItem(prt, 10)
843
      table.insert(Effects, {
844
        prt,
845
        "Cylinder",
846
        delay,
847
        x3,
848
        y3,
849
        z3,
850
        msh
851
      })
852
    end
853
  }
854
}
855
function part(formfactor ,parent, reflectance, transparency, brickcolor, name, size)
856
	local fp = IT("Part")
857
	fp.formFactor = formfactor 
858
	fp.Parent = parent
859
	fp.Reflectance = reflectance
860
	fp.Transparency = transparency
861
	fp.CanCollide = false 
862
	fp.Locked = true
863
	fp.BrickColor = brickcolor
864
	fp.Name = name
865
	fp.Size = size
866
	fp.Position = tors.Position 
867
	RemoveOutlines(fp)
868
	fp.Material = "SmoothPlastic"
869
	fp:BreakJoints()
870
	return fp 
871
end 
872
 
873
function mesh(Mesh,part,meshtype,meshid,offset,scale)
874
	local mesh = IT(Mesh) 
875
	mesh.Parent = part
876
	if Mesh == "SpecialMesh" then
877
		mesh.MeshType = meshtype
878
	if meshid ~= "nil" then
879
		mesh.MeshId = "http://www.roblox.com/asset/?id="..meshid
880
		end
881
	end
882
	mesh.Offset = offset
883
	mesh.Scale = scale
884
	return mesh
885
end
886
887
function Magic(bonuspeed, type, pos, scale, value, color, MType)
888
	local type = type
889
	local rng = Instance.new("Part", char)
890
	rng.Anchored = true
891
	rng.BrickColor = color
892
	rng.CanCollide = false
893
	rng.FormFactor = 3
894
	rng.Name = "Ring"
895
	rng.Material = "Neon"
896
	rng.Size = Vector3.new(1, 1, 1)
897
	rng.Transparency = 0
898
	rng.TopSurface = 0
899
	rng.BottomSurface = 0
900
	rng.CFrame = pos
901
	local rngm = Instance.new("SpecialMesh", rng)
902
	rngm.MeshType = MType
903
	rngm.Scale = scale
904
	local scaler2 = 1
905
	if type == "Add" then
906
		scaler2 = 1 * value
907
	elseif type == "Divide" then
908
		scaler2 = 1 / value
909
	end
910
	coroutine.resume(coroutine.create(function()
911
		for i = 0, 10 / bonuspeed, 0.1 do
912
			swait()
913
			if type == "Add" then
914
				scaler2 = scaler2 - 0.01 * value / bonuspeed
915
			elseif type == "Divide" then
916
				scaler2 = scaler2 - 0.01 / value * bonuspeed
917
			end
918
			rng.Transparency = rng.Transparency + 0.01 * bonuspeed
919
			rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, scaler2 * bonuspeed)
920
		end
921
		rng:Destroy()
922
	end))
923
end
924
925
function Eviscerate(dude)
926
	if dude.Name ~= char then
927
		local bgf = IT("BodyGyro", dude.Head)
928
		bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
929
		local val = IT("BoolValue", dude)
930
		val.Name = "IsHit"
931
		local ds = coroutine.wrap(function()
932
			dude:WaitForChild("Head"):BreakJoints()
933
			wait(0.5)
934
			target = nil
935
			coroutine.resume(coroutine.create(function()
936
				for i, v in pairs(dude:GetChildren()) do
937
					if v:IsA("Accessory") then
938
						v:Destroy()
939
					end
940
					if v:IsA("Humanoid") then
941
						v:Destroy()
942
					end
943
					if v:IsA("CharacterMesh") then
944
						v:Destroy()
945
					end
946
					if v:IsA("Model") then
947
						v:Destroy()
948
					end
949
					if v:IsA("Part") or v:IsA("MeshPart") then
950
						for x, o in pairs(v:GetChildren()) do
951
							if o:IsA("Decal") then
952
								o:Destroy()
953
							end
954
						end
955
						coroutine.resume(coroutine.create(function()
956
							v.Material = "Neon"
957
							v.CanCollide = false
958
							local PartEmmit1 = IT("ParticleEmitter", v)
959
							PartEmmit1.LightEmission = 1
960
							PartEmmit1.Texture = "rbxassetid://284205403"
961
							PartEmmit1.Color = ColorSequence.new(maincolor.Color)
962
							PartEmmit1.Rate = 150
963
							PartEmmit1.Lifetime = NumberRange.new(1)
964
							PartEmmit1.Size = NumberSequence.new({
965
								NumberSequenceKeypoint.new(0, 0.75, 0),
966
								NumberSequenceKeypoint.new(1, 0, 0)
967
							})
968
							PartEmmit1.Transparency = NumberSequence.new({
969
								NumberSequenceKeypoint.new(0, 0, 0),
970
								NumberSequenceKeypoint.new(1, 1, 0)
971
							})
972
							PartEmmit1.Speed = NumberRange.new(0, 0)
973
							PartEmmit1.VelocitySpread = 30000
974
							PartEmmit1.Rotation = NumberRange.new(-500, 500)
975
							PartEmmit1.RotSpeed = NumberRange.new(-500, 500)
976
							local BodPoss = IT("BodyPosition", v)
977
							BodPoss.P = 3000
978
							BodPoss.D = 1000
979
							BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
980
							BodPoss.position = v.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
981
							v.Color = maincolor.Color
982
							coroutine.resume(coroutine.create(function()
983
								for i = 0, 49 do
984
									swait(1)
985
									v.Transparency = v.Transparency + 0.08
986
								end
987
								wait(0.5)
988
								PartEmmit1.Enabled = false
989
								wait(3)
990
								v:Destroy()
991
								dude:Destroy()
992
							end))
993
						end))
994
					end
995
				end
996
			end))
997
		end)
998
		ds()
999
	end
1000
end
1001
1002
function FindNearestHead(Position, Distance, SinglePlayer)
1003
	if SinglePlayer then
1004
		return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
1005
	end
1006
	local List = {}
1007
	for i, v in pairs(workspace:GetChildren()) do
1008
		if v:IsA("Model") and v:findFirstChild("Head") and v ~= char and Distance >= (v.Head.Position - Position).magnitude then
1009
			table.insert(List, v)
1010
		end
1011
	end
1012
	return List
1013
end
1014
1015
function Aura(bonuspeed, FastSpeed, type, pos, x1, y1, z1, value, color, outerpos, MType)
1016
	local type = type
1017
	local rng = Instance.new("Part", char)
1018
	rng.Anchored = true
1019
	rng.BrickColor = color
1020
	rng.CanCollide = false
1021
	rng.FormFactor = 3
1022
	rng.Name = "Ring"
1023
	rng.Material = "Neon"
1024
	rng.Size = Vector3.new(1, 1, 1)
1025
	rng.Transparency = 0
1026
	rng.TopSurface = 0
1027
	rng.BottomSurface = 0
1028
	rng.CFrame = pos
1029
	rng.CFrame = rng.CFrame + rng.CFrame.lookVector * outerpos
1030
	local rngm = Instance.new("SpecialMesh", rng)
1031
	rngm.MeshType = MType
1032
	rngm.Scale = Vector3.new(x1, y1, z1)
1033
	local scaler2 = 1
1034
	local speeder = FastSpeed
1035
	if type == "Add" then
1036
		scaler2 = 1 * value
1037
	elseif type == "Divide" then
1038
		scaler2 = 1 / value
1039
	end
1040
	coroutine.resume(coroutine.create(function()
1041
		for i = 0, 10 / bonuspeed, 0.1 do
1042
			swait()
1043
			if type == "Add" then
1044
				scaler2 = scaler2 - 0.01 * value / bonuspeed
1045
			elseif type == "Divide" then
1046
				scaler2 = scaler2 - 0.01 / value * bonuspeed
1047
			end
1048
			speeder = speeder - 0.01 * FastSpeed * bonuspeed
1049
			rng.CFrame = rng.CFrame + rng.CFrame.lookVector * speeder * bonuspeed
1050
			rng.Transparency = rng.Transparency + 0.01 * bonuspeed
1051
			rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, 0)
1052
		end
1053
		rng:Destroy()
1054
	end))
1055
end
1056
1057
function SoulSteal(dude)
1058
if dude.Name ~= char then
1059
local bgf = IT("BodyGyro", dude.Head)
1060
bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(Rad(-90), 0, 0)
1061
local val = IT("BoolValue", dude)
1062
val.Name = "IsHit"
1063
local torso = (dude:FindFirstChild'Head' or dude:FindFirstChild'Torso' or dude:FindFirstChild'UpperTorso' or dude:FindFirstChild'LowerTorso' or dude:FindFirstChild'HumanoidRootPart')
1064
local soulst = coroutine.wrap(function()
1065
local soul = Instance.new("Part",dude)
1066
soul.Size = Vector3.new(1,1,1)
1067
soul.CanCollide = false
1068
soul.Anchored = false
1069
soul.Position = torso.Position
1070
soul.Transparency = 1
1071
local PartEmmit1 = IT("ParticleEmitter", soul)
1072
PartEmmit1.LightEmission = 1
1073
PartEmmit1.Texture = "rbxassetid://569507414"
1074
PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1075
PartEmmit1.Rate = 250
1076
PartEmmit1.Lifetime = NumberRange.new(1.6)
1077
PartEmmit1.Size = NumberSequence.new({
1078
	NumberSequenceKeypoint.new(0, 1, 0),
1079
	NumberSequenceKeypoint.new(1, 0, 0)
1080
})
1081
PartEmmit1.Transparency = NumberSequence.new({
1082
	NumberSequenceKeypoint.new(0, 0, 0),
1083
	NumberSequenceKeypoint.new(1, 1, 0)
1084
})
1085
PartEmmit1.Speed = NumberRange.new(0, 0)
1086
PartEmmit1.VelocitySpread = 30000
1087
PartEmmit1.Rotation = NumberRange.new(-360, 360)
1088
PartEmmit1.RotSpeed = NumberRange.new(-360, 360)
1089
local BodPoss = IT("BodyPosition", soul)
1090
BodPoss.P = 3000
1091
BodPoss.D = 1000
1092
BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
1093
BodPoss.position = torso.Position + Vector3.new(Mrandom(-15, 15), Mrandom(-15, 15), Mrandom(-15, 15))
1094
wait(1.6)
1095
soul.Touched:connect(function(hit)
1096
	if hit.Parent == char then
1097
	soul:Destroy()
1098
	end
1099
end)
1100
wait(1.2)
1101
while soul do
1102
	swait()
1103
	PartEmmit1.Color = ColorSequence.new(maincolor.Color)
1104
	BodPoss.Position = tors.Position
1105
end
1106
end)
1107
	soulst()
1108
	end
1109
end
1110
function FaceMouse()
1111
local	Cam = workspace.CurrentCamera
1112
	return {
1113
		CFrame.new(char.Torso.Position, Vector3.new(mouse.Hit.p.x, char.Torso.Position.y, mouse.Hit.p.z)),
1114
		Vector3.new(mouse.Hit.p.x, mouse.Hit.p.y, mouse.Hit.p.z)
1115
	}
1116
end
1117
Effects = {
1118
	Block = function(cf,partsize,meshstart,meshadd,matr,colour,spin,inverse,factor)
1119
	local p = Instance.new("Part",EffectModel)
1120
	p.BrickColor = BrickColor.new(colour)
1121
	p.Size = partsize
1122
	p.Anchored = true
1123
	p.CanCollide = false
1124
	p.Material = matr
1125
	p.CFrame = cf
1126
	if inverse == true then
1127
		p.Transparency = 1
1128
	else
1129
		p.Transparency = 0
1130
	end
1131
	local m = Instance.new("BlockMesh",p)
1132
	m.Scale = meshstart
1133
	coroutine.wrap(function()
1134
		for i = 0, 1, factor do
1135
			swait()
1136
			if inverse == true then
1137
				p.Transparency = 1-i
1138
			else
1139
				p.Transparency = i
1140
			end
1141
			m.Scale = m.Scale + meshadd
1142
			if spin == true then
1143
				p.CFrame = p.CFrame * CFrame.Angles(math.random(-50,50),math.random(-50,50),math.random(-50,50))
1144
			end
1145
		end
1146
		p:Destroy()
1147
	end)()
1148
return p
1149
	end,
1150
	Sphere = function(cf,partsize,meshstart,meshadd,matr,colour,inverse,factor)
1151
	local p = Instance.new("Part",EffectModel)
1152
	p.BrickColor = BrickColor.new(colour)
1153
	p.Size = partsize
1154
	p.Anchored = true
1155
	p.CanCollide = false
1156
	p.Material = matr
1157
	p.CFrame = cf
1158
	if inverse == true then
1159
		p.Transparency = 1
1160
	else
1161
		p.Transparency = 0
1162
	end
1163
	local m = Instance.new("SpecialMesh",p)
1164
	m.MeshType = "Sphere"
1165
	m.Scale = meshstart
1166
	coroutine.wrap(function()
1167
		for i=0,1,factor do
1168
			swait()
1169
			if inverse == true then
1170
				p.Transparency = 1-i
1171
			else
1172
				p.Transparency = i
1173
			end
1174
			m.Scale = m.Scale + meshadd
1175
		end
1176
	p:Destroy()
1177
end)()
1178
return p
1179
	end,
1180
1181
	Cylinder = function(cf,partsize,meshstart,meshadd,matr,colour,inverse,factor)
1182
	local p = Instance.new("Part",EffectModel)
1183
	p.BrickColor = BrickColor.new(colour)
1184
	p.Size = partsize
1185
	p.Anchored = true
1186
	p.CanCollide = false
1187
	p.Material = matr
1188
	p.CFrame = cf
1189
	if inverse == true then
1190
		p.Transparency = 1
1191
	else
1192
		p.Transparency = 0
1193
	end
1194
	local m = Instance.new("CylinderMesh",p)
1195
	m.Scale = meshstart
1196
	coroutine.wrap(function()
1197
		for i=0,1,factor do
1198
			swait()
1199
			if inverse == true then
1200
				p.Transparency = 1-i
1201
			else
1202
				p.Transparency = i
1203
			end
1204
			m.Scale = m.Scale + meshadd
1205
		end
1206
	p:Destroy()
1207
end)()
1208
return p
1209
	end,
1210
1211
Wave = function(cf,meshstart,meshadd,colour,spin,inverse,factor)
1212
local p = Instance.new("Part",EffectModel)
1213
p.BrickColor = BrickColor.new(colour)
1214
p.Size = Vector3.new()
1215
p.Anchored = true
1216
p.CanCollide = false
1217
p.CFrame = cf
1218
if inverse == true then
1219
p.Transparency = 1
1220
else
1221
p.Transparency = 0
1222
end
1223
local m = Instance.new("SpecialMesh",p)
1224
m.MeshId = "rbxassetid://20329976"
1225
m.Scale = meshstart
1226
coroutine.wrap(function()
1227
for i=0,1,factor do
1228
swait()
1229
if inverse == true then
1230
p.Transparency = 1-i
1231
else
1232
p.Transparency = i
1233
end
1234
m.Scale = m.Scale + meshadd
1235
p.CFrame = p.CFrame * CFrame.Angles(0,math.rad(spin),0)
1236
end
1237
p:Destroy()
1238
end)()
1239
return p
1240
end,
1241
1242
Ring = function(cf,meshstart,meshadd,colour,inverse,factor)
1243
local p = Instance.new("Part",EffectModel)
1244
p.BrickColor = BrickColor.new(colour)
1245
p.Size = Vector3.new()
1246
p.Anchored = true
1247
p.CanCollide = false
1248
p.CFrame = cf
1249
if inverse == true then
1250
p.Transparency = 1
1251
else
1252
p.Transparency = 0
1253
end
1254
local m = Instance.new("SpecialMesh",p)
1255
m.MeshId = "rbxassetid://3270017"
1256
m.Scale = meshstart
1257
coroutine.wrap(function()
1258
for i=0,1,factor do
1259
swait()
1260
if inverse == true then
1261
p.Transparency = 1-i
1262
else
1263
p.Transparency = i
1264
end
1265
m.Scale = m.Scale + meshadd
1266
end
1267
p:Destroy()
1268
end)()
1269
return p
1270
end,
1271
1272
Meshed = function(cf,meshstart,meshadd,colour,meshid,textid,spin,inverse,factor)
1273
local p = Instance.new("Part",EffectModel)
1274
p.BrickColor = BrickColor.new(colour)
1275
p.Size = Vector3.new()
1276
p.Anchored = true
1277
p.CanCollide = false
1278
p.CFrame = cf
1279
if inverse == true then
1280
p.Transparency = 1
1281
else
1282
p.Transparency = 0
1283
end
1284
local m = Instance.new("SpecialMesh",p)
1285
m.MeshId = meshid
1286
m.TextureId = textid
1287
m.Scale = meshstart
1288
coroutine.wrap(function()
1289
for i=0,1,factor do
1290
swait()
1291
if inverse == true then
1292
p.Transparency = 1-i
1293
else
1294
p.Transparency = i
1295
end
1296
m.Scale = m.Scale + meshadd
1297
p.CFrame = p.CFrame * CFrame.Angles(0,math.rad(spin),0)
1298
end
1299
p:Destroy()
1300
end)()
1301
return p
1302
end,
1303
1304
Explode = function(cf,partsize,meshstart,meshadd,matr,colour,move,inverse,factor)
1305
local p = Instance.new("Part",EffectModel)
1306
p.BrickColor = BrickColor.new(colour)
1307
p.Size = partsize
1308
p.Anchored = true
1309
p.CanCollide = false
1310
p.Material = matr
1311
p.CFrame = cf * CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
1312
if inverse == true then
1313
p.Transparency = 1
1314
else
1315
p.Transparency = 0
1316
end
1317
local m = Instance.new("SpecialMesh",p)
1318
m.MeshType = "Sphere"
1319
m.Scale = meshstart
1320
coroutine.wrap(function()
1321
for i=0,1,factor do
1322
swait()
1323
if inverse == true then
1324
p.Transparency = 1-i
1325
else
1326
p.Transparency = i
1327
end
1328
m.Scale = m.Scale + meshadd
1329
p.CFrame = p.CFrame * CFrame.new(0,move,0)
1330
end
1331
p:Destroy()
1332
end)()
1333
return p
1334
end,
1335
1336
}
1337
-------------------------------------------------------
1338
--End Effect Function--
1339
-------------------------------------------------------
1340
function Cso(ID, PARENT, VOLUME, PITCH)
1341
	local NSound = nil
1342
	coroutine.resume(coroutine.create(function()
1343
		NSound = IT("Sound", PARENT)
1344
		NSound.Volume = VOLUME
1345
		NSound.Pitch = PITCH
1346
		NSound.SoundId = "http://www.roblox.com/asset/?id="..ID
1347
		swait()
1348
		NSound:play()
1349
		game:GetService("Debris"):AddItem(NSound, 10)
1350
	end))
1351
	return NSound
1352
end
1353
function CamShake(Length, Intensity)
1354
	coroutine.resume(coroutine.create(function()
1355
		local intensity = 1 * Intensity
1356
		local rotM = 0.01 * Intensity
1357
		for i = 0, Length, 0.1 do
1358
			swait()
1359
			intensity = intensity - 0.05 * Intensity / Length
1360
			rotM = rotM - 5.0E-4 * Intensity / Length
1361
			hum.CameraOffset = Vector3.new(Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)), Rad(Mrandom(-intensity, intensity)))
1362
			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)
1363
		end
1364
		hum.CameraOffset = Vector3.new(0, 0, 0)
1365
	end))
1366
end
1367
NewInstance = function(instance,parent,properties)
1368
	local inst = Instance.new(instance)
1369
	inst.Parent = parent
1370
	if(properties)then
1371
		for i,v in next, properties do
1372
			pcall(function() inst[i] = v end)
1373
		end
1374
	end
1375
	return inst;
1376
end
1377
hum.MaxHealth = 1.0E298
1378
hum.Health = 1.0E298
1379
game:GetService("RunService"):BindToRenderStep("HOT", 0, function()
1380
  if hum.Health > 0.1 and hum.Health < 1.0E298 then
1381
    hum.MaxHealth = 1.0E298
1382
    hum.Health = 1.0E298
1383
  end
1384
end)
1385
function chatfunc(text, color)
1386
	local chat = coroutine.wrap(function()
1387
		if char:FindFirstChild("TalkingBillBoard") ~= nil then
1388
			char:FindFirstChild("TalkingBillBoard"):destroy()
1389
		end
1390
		local naeeym2 = Instance.new("BillboardGui", char)
1391
		naeeym2.Size = UDim2.new(0, 100, 0, 40)
1392
		naeeym2.StudsOffset = Vector3.new(0, 1.5, 0)
1393
		naeeym2.Adornee = hed
1394
		naeeym2.Name = "TalkingBillBoard"
1395
		local tecks2 = Instance.new("TextLabel", naeeym2)
1396-
local SONG = 1845463533
1396+
1397
		tecks2.BorderSizePixel = 0
1398
		tecks2.Text = ""
1399
		tecks2.Font = "Fantasy"
1400
		tecks2.TextSize = 30
1401
		tecks2.TextStrokeTransparency = 0
1402
		tecks2.TextColor3 = color
1403
		tecks2.TextStrokeColor3 = Color3.new(0, 0, 0)
1404
		tecks2.Size = UDim2.new(1, 0, 0.5, 0)
1405
		for i = 1, string.len(text) do
1406
			CFuncs.Sound.Create("rbxassetid://418252437", hed, 1, Mrandom(8,12)/15)
1407
			tecks2.Text = string.sub(text, 1, i)
1408
			swait(1)
1409
		end
1410
		wait(1)
1411
		naeeym2:Destroy()
1412
	end)
1413
	chat()
1414
end
1415
New = function(Object, Parent, Name, Data)
1416
	local Object = Instance.new(Object)
1417
	for Index, Value in pairs(Data or {}) do
1418
		Object[Index] = Value
1419
	end
1420
	Object.Parent = Parent
1421
	Object.Name = Name
1422
	return Object
1423
end
1424
	
1425
Cupo = New("Model",char,"Cupo",{})
1426
Handle = New("Part",Cupo,"Handle",{BrickColor = BrickColor.new("Institutional white"),Reflectance = 0.10000000149012,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(1, 1, 1),CFrame = CFrame.new(-132.232986, 1.05098712, -175.132965, -2.66358597e-06, 0.50003612, -0.866004288, 0.999999762, 3.72325388e-08, -3.4009206e-06, -2.13981866e-06, -0.866004527, -0.500036418),BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.972549, 0.972549, 0.972549),})
1427
Mesh = New("SpecialMesh",Handle,"Mesh",{Scale = Vector3.new(0.600000024, 0.600000024, 1),MeshId = "http://www.roblox.com/asset/?id=3270017",MeshType = Enum.MeshType.FileMesh,})
1428
Part = New("Part",Cupo,"Part",{BrickColor = BrickColor.new("Institutional white"),Reflectance = 0.10000000149012,FormFactor = Enum.FormFactor.Symmetric,Size = Vector3.new(1, 1, 1),CFrame = CFrame.new(-132.482986, 1.05098701, -174.699982, 0.866004169, -0.500036061, 4.80877497e-06, 3.40900579e-06, -4.61425361e-06, -0.999999642, 0.500036597, 0.866004586, -1.59157071e-06),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.972549, 0.972549, 0.972549),})
1429
Mesh = New("SpecialMesh",Part,"Mesh",{Scale = Vector3.new(1, 1, 6),MeshId = "http://www.roblox.com/asset/?id=3270017",MeshType = Enum.MeshType.FileMesh,})
1430
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.866004348, 3.3928352e-06, 0.500036359, -0.500036299, -4.34130516e-06, 0.866004407, 4.95926542e-06, -0.999999881, -1.81985979e-06),C1 = CFrame.new(-1.1920929e-07, -0.499977112, 0, -2.81334178e-06, 1, -1.89662967e-06, 0.50003624, -2.4825286e-07, -0.866004586, -0.866004467, -3.39283588e-06, -0.500036418),})
1431
Part = New("Part",Cupo,"Part",{BrickColor = BrickColor.new("Institutional white"),Reflectance = 0.10000000149012,FormFactor = Enum.FormFactor.Plate,Size = Vector3.new(1, 0.400000006, 1),CFrame = CFrame.new(-132.482986, 0.75998807, -174.699982, 0.500036061, -4.80877497e-06, 0.866004169, 4.61425361e-06, 0.999999642, 3.40900579e-06, -0.866004586, 1.59157071e-06, 0.500036597),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.972549, 0.972549, 0.972549),})
1432
Mesh = New("CylinderMesh",Part,"Mesh",{Offset = Vector3.new(0, -0.200000003, 0),Scale = Vector3.new(1, 0.100000001, 1),})
1433
mot = New("Motor",Part,"mot",{Part0 = Part,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.500036299, 4.34130516e-06, -0.866004407, -4.95926542e-06, 0.999999881, 1.81985979e-06, 0.866004348, 3.3928352e-06, 0.500036359),C1 = CFrame.new(-0.290999115, -0.499977112, 0, -2.81334178e-06, 1, -1.89662967e-06, 0.50003624, -2.4825286e-07, -0.866004586, -0.866004467, -3.39283588e-06, -0.500036418),})
1434
Coffee = New("Part",Cupo,"Coffee",{BrickColor = BrickColor.new("Light yellow"),FormFactor = Enum.FormFactor.Plate,Size = Vector3.new(1, 0.400000006, 1),CFrame = CFrame.new(-132.482986, 1.15998101, -174.699982, 0.500036299, -4.95926542e-06, 0.866004348, 4.34130516e-06, 0.999999881, 3.3928352e-06, -0.866004407, 1.81985979e-06, 0.500036359),CanCollide = false,BottomSurface = Enum.SurfaceType.Smooth,TopSurface = Enum.SurfaceType.Smooth,Color = Color3.new(0.411765, 0.25098, 0.156863),})
1435
Mesh = New("CylinderMesh",Coffee,"Mesh",{Scale = Vector3.new(1, 1.20000005, 1),})
1436
mot = New("Motor",Coffee,"mot",{Part0 = Coffee,Part1 = Handle,C0 = CFrame.new(0, 0, 0, 0.500036299, 4.34130516e-06, -0.866004407, -4.95926542e-06, 0.999999881, 1.81985979e-06, 0.866004348, 3.3928352e-06, 0.500036359),C1 = CFrame.new(0.108993888, -0.499977112, -1.52587891e-05, -2.81334178e-06, 1, -1.89662967e-06, 0.50003624, -2.4825286e-07, -0.866004586, -0.866004467, -3.39283588e-06, -0.500036418),})
1437
1438
local HW = NewInstance('Weld',char,{Part0 = ra, Part1 = Handle, C0 = CFrame.new(0, -1.1, -0.1) * CFrame.Angles(Rad(0), Rad(90), Rad(0))})
1439
1440
-------------------------------------------------------
1441
--End Important Functions--
1442
-------------------------------------------------------
1443
1444
1445
-------------------------------------------------------
1446
--Start Customization--
1447
-------------------------------------------------------
1448
local Player_Size = 1
1449
if Player_Size ~= 1 then
1450
root.Size = root.Size * Player_Size
1451
tors.Size = tors.Size * Player_Size
1452
hed.Size = hed.Size * Player_Size
1453
ra.Size = ra.Size * Player_Size
1454
la.Size = la.Size * Player_Size
1455
rl.Size = rl.Size * Player_Size
1456
ll.Size = ll.Size * Player_Size
1457
----------------------------------------------------------------------------------
1458
rootj.Parent = root
1459
neck.Parent = tors
1460
RW.Parent = tors
1461
LW.Parent = tors
1462
RH.Parent = tors
1463
LH.Parent = tors
1464
----------------------------------------------------------------------------------
1465
rootj.C0 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
1466
rootj.C1 = RootCF * CF(0 * Player_Size, 0 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0))
1467
neck.C0 = necko * CF(0 * Player_Size, 0 * Player_Size, 0 + ((1 * Player_Size) - 1)) * angles(Rad(0), Rad(0), Rad(0))
1468
neck.C1 = CF(0 * Player_Size, -0.5 * Player_Size, 0 * Player_Size) * angles(Rad(-90), Rad(0), Rad(180))
1469
RW.C0 = CF(1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* RIGHTSHOULDERC0
1470
LW.C0 = CF(-1.5 * Player_Size, 0.5 * Player_Size, 0 * Player_Size) * angles(Rad(0), Rad(0), Rad(0)) --* LEFTSHOULDERC0
1471
----------------------------------------------------------------------------------
1472
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))
1473
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))
1474
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))
1475
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))
1476
--hat.Parent = Character
1477
end
1478
----------------------------------------------------------------------------------
1479
local SONG = 937258314 
1480
local SONG2 = 0
1481
local Music = Instance.new("Sound",tors)
1482
Music.Volume = 2.5
1483
Music.Looped = true
1484
Music.Pitch = 1 --Pitcher
1485
----------------------------------------------------------------------------------
1486
local equipped = false
1487
local idle = 0
1488
local change = 1
1489
local val = 0
1490
local toim = 0
1491
local idleanim = 0.4
1492
local sine = 0
1493
local Sit = 1
1494
local WasAir = false
1495
local InAir = false
1496
local LandTick = 0
1497
local movelegs = false
1498
local FF = Instance.new("ForceField",char)
1499
FF.Visible = false
1500
local Speed = 16
1501
local Sitt = false
1502
local VALUE1 = false
1503
----------------------------------------------------------------------------------
1504
hum.JumpPower = 55
1505
hum.Animator.Parent = nil
1506
-------------------------------------------------------
1507
--End Customization--
1508
-------------------------------------------------------
1509
1510
1511
-------------------------------------------------------
1512
--Start Attacks N Stuff--
1513
-------------------------------------------------------
1514
function AttackTemplate()
1515
	attack = true
1516
	for i = 0, 2, 0.1 do
1517
		swait()
1518
		rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1* Player_Size * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(0)), 0.1)
1519
		neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(0 - 5 * Sin(sine / 20)), Rad(0), Rad(0)), 0.1)
1520
		rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(-10), Rad(0)) * angles(Rad(0), Rad(0), Rad(5)), 0.1)
1521
		ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(0), Rad(0), Rad(-5)), 0.1)
1522
		RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 + 5 * Sin(sine / 20)), Rad(10 + 5 * Sin(sine / 20))), 0.1)
1523
		LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 - 5 * Sin(sine / 20)), Rad(-10 - 5 * Sin(sine / 20))), 0.1)
1524
	end
1525
	attack = false
1526
end
1527
function Taunt()
1528
	attack = true
1529
	movelegs = true
1530
	Speed = 12
1531
	local Chatty = Mrandom(1,5)
1532
	if Chatty == 1 then
1533
		chatfunc("Would anyone like a cup?", maincolor.Color)
1534
	elseif Chatty == 2 then
1535
		chatfunc("God bless the Queen.", maincolor.Color)
1536
	elseif Chatty == 3 then
1537
		chatfunc("God forbid.", maincolor.Color)
1538
	elseif Chatty == 4 then
1539
		chatfunc("Crumpets, anyone?", maincolor.Color)
1540
	elseif Chatty == 5 then
1541
		chatfunc("*Slurp*", maincolor.Color)
1542
	end
1543
	if Chatty ~= 5 then
1544
		for i = 0, 9, 0.1 do
1545
			swait()
1546
			rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1* Player_Size * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(-10)), 0.1)
1547
			neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(25), Rad(0), Rad(10 - 5 * Cos(sine / 3))), 0.1)
1548
			rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0), Rad(0)) * angles(Rad(0), Rad(0), Rad(5)), 0.1)
1549
			ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0), Rad(0)) * angles(Rad(0), Rad(0), Rad(-5)), 0.1)
1550
			RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(70), Rad(0 + 5 * Sin(sine / 20)), Rad(-30 + 5 * Sin(sine / 20))), 0.1)
1551
			LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 - 5 * Sin(sine / 20)), Rad(-10 - 5 * Sin(sine / 20))), 0.1)
1552
		end
1553
	else
1554
		for i = 0, 9, 0.1 do
1555
			swait()
1556
			rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 24) * Player_Size) * angles(Rad(0 - 4 * Sin(sine / 24)), Rad(0 + 1 * Cos(sine / 24)), Rad(-10)), 0.1)
1557
			neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(-15 - 2 * Sin(sine / 20)), Rad(0), Rad(10)), 0.1)
1558
			rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 * Player_Size - 0.1 * Cos(sine / 24) - Rad(0 + 1 * Cos(sine / 24)) * Player_Size, 0* Player_Size) * angles(Rad(0 - 6 * Sin(sine / 24)), Rad(0 + 1 * Cos(sine / 24)), Rad(0)) * angles(Rad(0 + 1 * Cos(sine / 24)), Rad(0), Rad(5)), 0.1)
1559
			ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 * Player_Size - 0.1 * Cos(sine / 24) + Rad(0 + 1 * Cos(sine / 24)) * Player_Size, 0* Player_Size) * angles(Rad(0 - 6 * Sin(sine / 24)), Rad(-0 + 1 * Cos(sine / 24)), Rad(0)) * angles(Rad(0 - 1 * Cos(sine / 24)), Rad(0), Rad(-5)), 0.1)
1560
			RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(70), Rad(0 + 5 * Sin(sine / 20)), Rad(-30 + 5 * Sin(sine / 20))), 0.1)
1561
			LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 - 5 * Sin(sine / 20)), Rad(-10 - 5 * Sin(sine / 20))), 0.1)
1562
		end
1563
	end
1564
	movelegs = false
1565
	attack = false
1566
	Speed = 16
1567
end
1568
function Sippy()
1569
	attack = true
1570
	Speed = 0
1571
	local Sip = Cso("1420260652", hed, 1.2, 1)
1572
	swait()
1573
	repeat
1574
		swait()
1575
		rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1* Player_Size * Cos(sine / 20)) * angles(Rad(0), Rad(0), Rad(-10)), 0.1)
1576
		neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(-10 - 5 * Sin(sine / 20)), Rad(0), Rad(10)), 0.1)
1577
		rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0), Rad(0)) * angles(Rad(0), Rad(0), Rad(5)), 0.1)
1578
		ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0), Rad(0)) * angles(Rad(0), Rad(0), Rad(-5)), 0.1)
1579
		RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.4 + 0.05 * Sin(sine / 20)* Player_Size, 0.1* Player_Size) * angles(Rad(125), Rad(0), Rad(-45)), 0.1)
1580
		LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 - 5 * Sin(sine / 20)), Rad(10 - 5 * Sin(sine / 20))), 0.1)
1581
	until Sip.Playing == false
1582
	Speed = 16
1583
	attack = false
1584
end
1585
function SittyBoi()
1586
	attack = true
1587
	Sitt = true
1588
	Speed = 0
1589
	repeat
1590
		swait()
1591
		for i = 0, 1, 0.1 do
1592
			swait()
1593
			rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -1.6 + 0.1 * Player_Size * Cos(sine / 20)) * angles(Rad(-15), Rad(0), Rad(0)), 0.1)
1594
			neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(25 - 2.5 * Sin(sine / 20)), Rad(0), Rad(0)), 0.1)
1595
			rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(-10), Rad(0)) * angles(Rad(75), Rad(0), Rad(5)), 0.1)
1596
			ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(75), Rad(0), Rad(-5)), 0.1)
1597
			RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(70), Rad(0 + 5 * Sin(sine / 20)), Rad(-30 + 5 * Sin(sine / 20))), 0.1)
1598
			LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.2 - 0.1 * Cos(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(-15), Rad(20), Rad(-15)), 0.1)
1599
		end
1600
	until Sitt == false
1601
	attack = false
1602
	Speed = 16
1603
end
1604
-------------------------------------------------------
1605
--End Attacks N Stuff--
1606
-------------------------------------------------------
1607
mouse.Button1Down:connect(function(key)
1608
	if attack == false then
1609
		Sippy()
1610
	end
1611
end)
1612
mouse.KeyDown:connect(function(key)
1613
	if (VALUE1 == false and attack == false) or Sitt == true then
1614
		if key == "q" then
1615
			if Sitt == false then
1616
				SittyBoi()
1617
			elseif Sitt == true then
1618
				Sitt = false
1619
			end
1620
		end
1621
	end
1622
	if attack == false then
1623
		if key == "t" then
1624
			Taunt()
1625
		end
1626
	end
1627
end)
1628
1629
 
1630
1631
1632
1633
1634
1635
1636
-------------------------------------------------------
1637
--Start Animations--
1638
-------------------------------------------------------
1639
print("By Makhail07")
1640
while true do
1641
	swait()
1642
	sine = sine + change
1643
	local torvel = (root.Velocity * Vector3.new(1, 0, 1)).magnitude
1644
	local velderp = root.Velocity.y
1645
	hitfloor, posfloor = rayCast(root.Position, CFrame.new(root.Position, root.Position - Vector3.new(0, 1, 0)).lookVector, 4* Player_Size, char)
1646
	if equipped == true or equipped == false then
1647
		if attack == false then
1648
			idle = idle + 1
1649
		else
1650
			idle = 0
1651
		end
1652
		local Landed = false
1653
		if(hitfloor)then
1654
			WasAir = false
1655
		else
1656
			WasAir = true
1657
		end
1658
		if(WasAir == false)then
1659
			if(InAir == true)then
1660
				LandTick = time()
1661
				Landed = true
1662
			end
1663
		end
1664
		if(time()-LandTick < .3)then
1665
			Landed = true
1666
		end
1667
		if(hitfloor)then
1668
			InAir = false
1669
		else
1670
			InAir = true
1671
		end
1672
		local Walking = (math.abs(root.Velocity.x) > 1 or math.abs(root.Velocity.z) > 1)
1673
		local State = (hum.PlatformStand and 'Paralyzed' or hum.Sit and 'Sit' or Landed and 'Land' or not hitfloor and root.Velocity.y < -1 and "Fall" or not hitfloor and root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
1674
		local WALKSPEEDVALUE = 6 / (hum.WalkSpeed / 16)
1675
		if(State == 'Jump')then
1676
			hum.JumpPower = 55
1677
			if attack == false then
1678
				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.1)
1679
				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)
1680
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -.2 - 0.1 * Cos(sine / 20), -.3* Player_Size) * angles(Rad(0), Rad(-10), Rad(0)) * angles(Rad(-2.5), Rad(0), Rad(0)), 0.1)
1681
				ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -.9 - 0.1 * Cos(sine / 20), -.5* Player_Size) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(-2.5), Rad(0), Rad(0)), 0.1)
1682
				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)
1683
				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)
1684
			end
1685
		elseif(State == 'Fall')then
1686
			if attack == false then
1687
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(25), Rad(0), Rad(0)), 0.1)
1688
				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)
1689
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -1 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * angles(Rad(0), Rad(-10), Rad(0)) * angles(Rad(25), Rad(0), Rad(0)), 0.1)
1690
				ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -.8 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(25), Rad(0), Rad(0)), 0.1)
1691
				RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(165), Rad(-.6), Rad(45 + 4.5 * Sin(sine / 20))), 0.1)
1692
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.02 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(165), Rad(-.6), Rad(-45 - 4.5 * Sin(sine / 20))), 0.1)
1693
			end
1694
		elseif(State == 'Land')then
1695
			hum.JumpPower = 0
1696
			if attack == false then
1697
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -1 + 0.1 * Cos(sine / 20)* Player_Size) * angles(Rad(10), Rad(0), Rad(0)), 0.15)
1698
				neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(35 - 2.5 * Sin(sine / 30)), Rad(0), Rad(0)), 0.3)
1699
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, 0.1 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * angles(Rad(0), Rad(-10), Rad(0)) * angles(Rad(-3.5), Rad(0), Rad(5)), 0.15)
1700
				ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, 0.1 - 0.1 * Cos(sine / 20)* Player_Size, -.3* Player_Size) * angles(Rad(0), Rad(10), Rad(0)) * angles(Rad(-3.5), Rad(0), Rad(-5)), 0.15)
1701
				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(0), Rad(25 + 4.5 * Sin(sine / 20))), 0.1)
1702
				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(0), Rad(-25 - 4.5 * Sin(sine / 20))), 0.1)
1703
			end
1704
		elseif(State == 'Idle')then
1705
			change = 0.90
1706
			if attack == false then
1707
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.1 + 0.1 * Cos(sine / 24) * Player_Size) * angles(Rad(0 - 4 * Sin(sine / 24)), Rad(0 + 1 * Cos(sine / 24)), Rad(-10)), 0.1)
1708
				neck.C0 = clerp(tors.Neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(7 - 2 * Sin(sine / 20)), Rad(0), Rad(10)), 0.1)
1709
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.9 * Player_Size - 0.1 * Cos(sine / 24) - Rad(0 + 1 * Cos(sine / 24)) * Player_Size, 0* Player_Size) * angles(Rad(0 - 6 * Sin(sine / 24)), Rad(0 + 1 * Cos(sine / 24)), Rad(0)) * angles(Rad(0 + 1 * Cos(sine / 24)), Rad(0), Rad(5)), 0.1)
1710
				ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.9 * Player_Size - 0.1 * Cos(sine / 24) + Rad(0 + 1 * Cos(sine / 24)) * Player_Size, 0* Player_Size) * angles(Rad(0 - 6 * Sin(sine / 24)), Rad(-0 + 1 * Cos(sine / 24)), Rad(0)) * angles(Rad(0 - 1 * Cos(sine / 24)), Rad(0), Rad(-5)), 0.1)
1711
				RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(70), Rad(0 + 5 * Sin(sine / 20)), Rad(-30 + 5 * Sin(sine / 20))), 0.1)
1712
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.1 * Sin(sine / 20)* Player_Size, 0* Player_Size) * angles(Rad(0), Rad(0 - 5 * Sin(sine / 20)), Rad(10 - 5 * Sin(sine / 20))), 0.1)
1713
			end
1714
		elseif(State == 'Walk')then
1715
			change = 0.76
1716
			hum.JumpPower = 55
1717
			if attack == false then
1718
				rootj.C0 = clerp(rootj.C0, RootCF * CF(0* Player_Size, 0* Player_Size, -0.3 - 0.15 * Cos(sine / (WALKSPEEDVALUE / 2))) * angles(Rad(10), Rad(0), Rad(0 - 0.75 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / 75), 0.1)
1719
				neck.C0 = clerp(neck.C0, necko* CF(0, 0, 0 + ((1* Player_Size) - 1)) * angles(Rad(0 + 5 * Sin(sine / (WALKSPEEDVALUE / 2))), Rad(0), Rad(0 - 0.75 * Cos(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / 13), 0.1)
1720
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.8 - 0.5 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size, 0.6 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size)  * angles(Rad(-10 - 25 * Sin(sine / WALKSPEEDVALUE)) - root.RotVelocity.Y / 75 + -Sin(sine / WALKSPEEDVALUE) / 2.5, Rad(0 - 10 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0)), 0.3)
1721
         		ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.8 + 0.5 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size, -0.6 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size) * angles(Rad(-10 + 25 * Sin(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / -75 + Sin(sine / WALKSPEEDVALUE) / 2.5, Rad(0 - 10 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0)), 0.3)
1722
				RW.C0 = clerp(RW.C0, CF(1.5* Player_Size, 0.5 + 0.1 * Sin(sine / WALKSPEEDVALUE)* Player_Size, 0* Player_Size) * angles(Rad(70), Rad(0 + 5 * Sin(sine / WALKSPEEDVALUE)), Rad(-30 + 5 * Sin(sine / WALKSPEEDVALUE))), 0.1)
1723
				LW.C0 = clerp(LW.C0, CF(-1.5* Player_Size, 0.5 + 0.05 * Sin(sine / WALKSPEEDVALUE)* Player_Size, 0 + 0.5 * Sin(sine / WALKSPEEDVALUE)* Player_Size) * angles(Rad(-45 * Sin(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / 75, Rad(10 * Cos(sine / WALKSPEEDVALUE)), Rad(-10) + root.RotVelocity.Y / -75), 0.1)
1724
			elseif attack == true and movelegs == true then
1725
				rl.Weld.C0 = clerp(rl.Weld.C0, CF(0.5* Player_Size, -0.8 - 0.5 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size, 0.6 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size)  * angles(Rad(-10 - 25 * Sin(sine / WALKSPEEDVALUE)) - root.RotVelocity.Y / 75 + -Sin(sine / WALKSPEEDVALUE) / 2.5, Rad(0 - 10 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 + 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0)), 0.3)
1726
         		ll.Weld.C0 = clerp(ll.Weld.C0, CF(-0.5* Player_Size, -0.8 + 0.5 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size, -0.6 * Cos(sine / WALKSPEEDVALUE) / 2* Player_Size) * angles(Rad(-10 + 25 * Sin(sine / WALKSPEEDVALUE)) + root.RotVelocity.Y / -75 + Sin(sine / WALKSPEEDVALUE) / 2.5, Rad(0 - 10 * Cos(sine / WALKSPEEDVALUE)), Rad(0)) * angles(Rad(0 - 2 * Cos(sine / WALKSPEEDVALUE)), Rad(0), Rad(0)), 0.3)
1727
			end
1728
		end
1729
	end
1730
	hum.Name = "HUM"
1731
	hum.WalkSpeed = Speed
1732
	Music.SoundId = "rbxassetid://"..SONG
1733
	Music.Looped = true
1734
	Music.Pitch = 1
1735
	Music.Volume = 1.5
1736
	Music.Parent = tors
1737
	Music.Playing = true
1738
	if 0 < #Effects then
1739
		for e = 1, #Effects do
1740
			if Effects[e] ~= nil then
1741
				local Thing = Effects[e]
1742
				if Thing ~= nil then
1743
					local Part = Thing[1]
1744
					local Mode = Thing[2]
1745
					local Delay = Thing[3]
1746
					local IncX = Thing[4]
1747
					local IncY = Thing[5]
1748
					local IncZ = Thing[6]
1749
					if 1 >= Thing[1].Transparency then
1750
						if Thing[2] == "Block1" then
1751
							Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50))
1752
							local Mesh = Thing[1].Mesh
1753
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1754
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1755
						elseif Thing[2] == "Block2" then
1756
							Thing[1].CFrame = Thing[1].CFrame + Vector3.new(0, 0, 0)
1757
							local Mesh = Thing[7]
1758
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1759
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1760
						elseif Thing[2] == "Block3" then
1761
							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)
1762
							local Mesh = Thing[7]
1763
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1764
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1765
						elseif Thing[2] == "Cylinder" then
1766
							local Mesh = Thing[1].Mesh
1767
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1768
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1769
						elseif Thing[2] == "Blood" then
1770
							local Mesh = Thing[7]
1771
							Thing[1].CFrame = Thing[1].CFrame * Vector3.new(0, 0.5, 0)
1772
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6])
1773
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1774
						elseif Thing[2] == "Elec" then
1775
							local Mesh = Thing[1].Mesh
1776
							Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9])
1777
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1778
						elseif Thing[2] == "Disappear" then
1779
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1780
						elseif Thing[2] == "Shatter" then
1781
							Thing[1].Transparency = Thing[1].Transparency + Thing[3]
1782
							Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0)
1783
							Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0)
1784
							Thing[6] = Thing[6] + Thing[5]
1785
						end
1786
					else
1787
						Part.Parent = nil
1788
						table.remove(Effects, e)
1789
					end
1790
				end
1791
			end
1792
		end
1793
	end
1794
end
1795
-------------------------------------------------------
1796
--End Animations And Script--
1797
-------------------------------------------------------