View difference between Paste ID: 94ATGHXs and xFF8P4Hr
SHOW: | | - or go back to the newest paste.
1
--//====================================================\\--
2
--||                       POTATO
3
--\\====================================================//--
4
5
--//=========================================================\\--
6
--|| WARNING: THIS SCRIPT HAS BEEN EDITED TO ADD MORE ATTACKS.
7
--\\=========================================================//--
8
9
local MODULE = script
10
local CHARACTER = owner.Character
11
local PLAYER = game:GetService("Players"):GetPlayerFromCharacter(CHARACTER)
12
local HUM = CHARACTER.Humanoid
13
local EVENT = Instance.new("RemoteEvent",MODULE)
14
EVENT.Name = "Event"
15
local REMOTE = MODULE.Event
16
17
local ROOT = HUM.Torso
18
local HEAD = CHARACTER.Head
19
local TORSO = CHARACTER.Torso
20
local RIGHTARM = CHARACTER["Right Arm"]
21
local LEFTARM = CHARACTER["Left Arm"]
22
local RIGHTLEG = CHARACTER["Right Leg"]
23
local LEFTLEG = CHARACTER["Left Leg"]
24
local ROOTJOINT = ROOT["RootJoint"]
25
local NECK = TORSO["Neck"]
26
local RIGHTSHOULDER = TORSO["Right Shoulder"]
27
local LEFTSHOULDER = TORSO["Left Shoulder"]
28
local RIGHTHIP = TORSO["Right Hip"]
29
local LEFTHIP = TORSO["Left Hip"]
30
local MOUSEPOS = ROOT.Position
31
32
IT = Instance.new
33
CF = CFrame.new
34
VT = Vector3.new
35
RAD = math.rad
36
C3 = Color3.new
37
UD2 = UDim2.new
38
BRICKC = BrickColor.new
39
ANGLES = CFrame.Angles
40
EULER = CFrame.fromEulerAnglesXYZ
41
COS = math.cos
42
ACOS = math.acos
43
SIN = math.sin
44
ASIN = math.asin
45
ABS = math.abs
46
MRANDOM = math.random
47
FLOOR = math.floor
48
49
--//====================================================\\--
50
--||                       FE CODE
51
--\\====================================================//--
52
53
if game:GetService("RunService"):IsClient()then error("RUN SCRIPT AS R/ AND NOT RL/.")end;print("FE CODE BY WAVERLYCOLE");InternalData = {}
54
do
55
	script.Parent = owner.Character
56
	local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
57
	local function NewFakeEvent()
58
		local Bind = Instance.new("BindableEvent")
59
		local Fake;Fake = {Connections = {},
60
		fakeEvent=true;
61
		Connect=function(self,Func)
62
			Bind.Event:connect(Func)
63
			self.Connections[Bind] = true
64
			return setmetatable({Connected = true},{
65
			__index = function (self,Index)
66
				if Index:lower() == "disconnect" then
67
					return function() Fake.Connections[Bind] = false;self.Connected = false end
68
				end
69
				return Fake[Index]
70
			end;
71
			__tostring = function() return "Connection" end;
72
		})
73
		end}
74
		Fake.connect = Fake.Connect;return Fake;
75
	end
76
	local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
77
	local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
78
	local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
79
		self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
80
	end};ContextActionService.UnBindAction = ContextActionService.BindAction
81
	local function TriggerEvent(self,Event,...)
82
		local Trigger = Mouse[Event]
83
		if Trigger and Trigger.fakeEvent and Trigger.Connections then
84
			for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
85
		end
86
	end
87
	Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
88
	Event.OnServerEvent:Connect(function(FiredBy,Input)
89
		if FiredBy.Name ~= owner.Name then return end
90
		if Input.MouseEvent then
91
			Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
92
		else
93
			local Begin = Input.UserInputState == Enum.UserInputState.Begin
94
			if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
95
			for _,Action in pairs(ContextActionService.Actions) do
96
				for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
97
			end
98
			Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
99
			UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
100
		end
101
	end)
102
	InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
103
	Event.Parent = NLS([[
104
		local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
105
		local Input = function(Input,gameProcessedEvent)
106
			if gameProcessedEvent then return end
107
			Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
108
		end
109
		UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
110
		local Hit,Target
111
		while wait(1/30) do
112
			if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
113
				Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
114
			end
115
		end
116
	]],owner.Character)
117
end
118
RealGame = game;game = setmetatable({},{
119
	__index = function (self,Index)
120
		local Sandbox = function (Thing)
121
			if Thing:IsA("Player") then
122
				local RealPlayer = Thing
123
				return setmetatable({},{
124
					__index = function (self,Index)
125
						local Type = type(RealPlayer[Index])
126
						if Type == "function" then
127
							if Index:lower() == "getmouse" or Index:lower() == "mouse" then
128
								return function (self)return InternalData["Mouse"] end
129
							end
130
							return function (self,...)return RealPlayer[Index](RealPlayer,...) end
131
						end
132
						return RealPlayer[Index]
133
					end;
134
					__tostring = function(self) return RealPlayer.Name end
135
				})
136
			end
137
		end
138
		if RealGame[Index] then
139
			local Type = type(RealGame[Index])
140
			if Type == "function" then
141
				if Index:lower() == "getservice" or Index:lower() == "service" then
142
					return function (self,Service)
143
						local FakeServices = {
144
							["players"] = function()
145
								return setmetatable({},{
146
									__index = function (self2,Index2)
147
										local RealService = RealGame:GetService(Service)
148
										local Type2 = type(Index2)
149
										if Type2 == "function" then
150
											return function (self,...) return RealService[Index2](RealService,...)end
151
										else
152
											if Index2:lower() == "localplayer" then return Sandbox(owner) end
153
											return RealService[Index2]
154
										end
155
									end;
156
									__tostring = function(self) return RealGame:GetService(Service).Name end
157
								})
158
							end;
159
							["contextactionservice"] = function() return InternalData["ContextActionService"] end;
160
							["userinputservice"] = function() return InternalData["UserInputService"] end;
161
							["runservice"] = function()
162
								return setmetatable({},{
163
									__index = function(self2,Index2)
164
										local RealService = RealGame:GetService(Service)
165
										local Type2 = type(Index2)
166
										if Type2 == "function" then
167
											return function (self,...) return RealService[Index2](RealService,...) end
168
										else
169
											local RunServices = {
170
												["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
171
												["renderstepped"] = function() return RealService["Stepped"] end
172
											}
173
											if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
174
											return RealService[Index2]
175
										end
176
									end
177
								})
178
							end
179
						}
180
						if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
181
						return RealGame:GetService(Service)
182
					end
183
				end
184
				return function (self,...) return RealGame[Index](RealGame,...) end
185
			else
186
				if game:GetService(Index) then return game:GetService(Index) end
187
				return RealGame[Index]
188
			end
189
		end
190
		return nil
191
	end
192
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
193
194
195
--//====================================================\\--
196
--||                  BACKGROUND VALUES
197
--\\====================================================//--
198
199
local ANIM_SPEED = 3
200
local MOUSE = owner:GetMouse()
201
local FRAME_SPEED = 1 / 60 -- (1 / 30) OR (1 / 60)
202
local CHANGE = 2 / ANIM_SPEED
203
local DAMAGEMULTIPLIER = 1
204
local ANIM = "Idle"
205
local KEYHOLD = false
206
local MOUSEHOLD = false
207
local ATTACKING = false
208
local Debris = game:GetService("Debris")
209
local Effects = IT("Folder",CHARACTER)
210
Effects.Name = "FXFolder"
211
local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
212
local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
213
local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
214
local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
215
local ANIMATE = CHARACTER:FindFirstChild("Animate")
216
local CROUCHED = false
217
local POTATOMODEL= Instance.new("Part",MODULE)
218
POTATOMODEL.Name = "Potato"
219
POTATOMODEL.CanCollide = false
220
POTATOMODEL.Size = Vector3.new(0.992, 1.288, 0.993)
221
MESHPOTATO = Instance.new("SpecialMesh",POTATOMODEL)
222
MESHPOTATO.MeshId = "rbxassetid://477543051"
223
MESHPOTATO.TextureId = "rbxassetid://477543054"
224
local POTATO = MODULE.Potato
225
POTATO.Parent = nil
226
local DEAD = false
227
228
--//====================================================\\--
229
--||                     HEARTBEAT
230
--\\====================================================//--
231
232
ArtificialHB = Instance.new("BindableEvent", script)
233
ArtificialHB.Name = "ArtificialHB"
234
235
script:WaitForChild("ArtificialHB")
236
237
frame = FRAME_SPEED
238
tf = 0
239
allowframeloss = false
240
tossremainder = false
241
lastframe = tick()
242
script.ArtificialHB:Fire()
243
244
game:GetService("RunService").Heartbeat:connect(function(s, p)
245
	tf = tf + s
246
	if tf >= frame then
247
		if allowframeloss then
248
			ArtificialHB:Fire()
249
			lastframe = tick()
250
		else
251
			for i = 1, math.floor(tf / frame) do
252
				ArtificialHB:Fire()
253
			end
254
			lastframe = tick()
255
		end
256
		if tossremainder then
257
			tf = 0
258
		else
259
			tf = tf - frame * math.floor(tf / frame)
260
		end
261
	end
262
end)
263
264
function PositiveAngle(NUMBER)
265
	if NUMBER >= 0 then
266
		NUMBER = 0
267
	end
268
	return NUMBER
269
end
270
271
function NegativeAngle(NUMBER)
272
	if NUMBER <= 0 then
273
		NUMBER = 0
274
	end
275
	return NUMBER
276
end
277
278
function Swait(NUMBER)
279
	if NUMBER == 0 or NUMBER == nil then
280
		ArtificialHB.Event:wait()
281
	else
282
		for i = 1, NUMBER do
283
			ArtificialHB.Event:wait()
284
		end
285
	end
286
end
287
288
--//====================================================\\--
289
--||                       CLERP
290
--\\====================================================//--
291
292
function QuaternionFromCFrame(cf)
293
	local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
294
	local trace = m00 + m11 + m22
295
	if trace > 0 then 
296
		local s = math.sqrt(1 + trace)
297
		local recip = 0.5 / s
298
		return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
299
	else
300
		local i = 0
301
		if m11 > m00 then
302
			i = 1
303
		end
304
		if m22 > (i == 0 and m00 or m11) then
305
			i = 2
306
		end
307
		if i == 0 then
308
			local s = math.sqrt(m00 - m11 - m22 + 1)
309
			local recip = 0.5 / s
310
			return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
311
		elseif i == 1 then
312
			local s = math.sqrt(m11 - m22 - m00 + 1)
313
			local recip = 0.5 / s
314
			return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
315
		elseif i == 2 then
316
			local s = math.sqrt(m22 - m00 - m11 + 1)
317
			local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
318
		end
319
	end
320
end
321
 
322
function QuaternionToCFrame(px, py, pz, x, y, z, w)
323
	local xs, ys, zs = x + x, y + y, z + z
324
	local wx, wy, wz = w * xs, w * ys, w * zs
325
	local xx = x * xs
326
	local xy = x * ys
327
	local xz = x * zs
328
	local yy = y * ys
329
	local yz = y * zs
330
	local zz = z * zs
331
	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))
332
end
333
 
334
function QuaternionSlerp(a, b, t)
335
	local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
336
	local startInterp, finishInterp;
337
	if cosTheta >= 0.0001 then
338
		if (1 - cosTheta) > 0.0001 then
339
			local theta = ACOS(cosTheta)
340
			local invSinTheta = 1 / SIN(theta)
341
			startInterp = SIN((1 - t) * theta) * invSinTheta
342
			finishInterp = SIN(t * theta) * invSinTheta
343
		else
344
			startInterp = 1 - t
345
			finishInterp = t
346
		end
347
	else
348
		if (1 + cosTheta) > 0.0001 then
349
			local theta = ACOS(-cosTheta)
350
			local invSinTheta = 1 / SIN(theta)
351
			startInterp = SIN((t - 1) * theta) * invSinTheta
352
			finishInterp = SIN(t * theta) * invSinTheta
353
		else
354
			startInterp = t - 1
355
			finishInterp = t
356
		end
357
	end
358
	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
359
end
360
361
function Clerp(a, b, t)
362
	local qa = {QuaternionFromCFrame(a)}
363
	local qb = {QuaternionFromCFrame(b)}
364
	local ax, ay, az = a.x, a.y, a.z
365
	local bx, by, bz = b.x, b.y, b.z
366
	local _t = 1 - t
367
	return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
368
end
369
370
--//====================================================\\--
371
--||                     FUNCTIONS
372
--\\====================================================//--
373
374
function Animate(INOUT)
375
	if INOUT == "In" then
376
		ANIMATE.Parent = CHARACTER
377
		ROOTJOINT.C0 = ROOTC0
378
		NECK.C0 = NECKC0
379
		RIGHTSHOULDER.C0 = CF(1.5, 0.5, 0) * RIGHTSHOULDERC0
380
		LEFTSHOULDER.C0 = CF(-1.5, 0.5, 0) * LEFTSHOULDERC0
381
		RIGHTHIP.C0 = CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
382
		LEFTHIP.C0 = CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
383
	elseif INOUT == "Out" then
384
		for _,v in next, HUM:GetPlayingAnimationTracks() do
385
			v:Stop();
386
		end
387
		ANIMATE.Parent = nil
388
	end
389
end
390
391
function WeldParts(A,B)
392
	local WLD = IT("ManualWeld")
393
	WLD.Part0 = A
394
	WLD.Part1 = B
395
	WLD.C1 = B.CFrame:inverse() * A.CFrame
396
	WLD.Parent = A
397
	return WLD
398
end
399
400
--NewSound({ID = 0,PARENT = ROOT,VOLUME = 0.5,PITCH = 1,LOOP = false,MAXDISTANCE = 1000,EMITTERSIZE = 10,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
401
function NewSound(TABLE)
402
	local ID = "rbxassetid://"..(TABLE.ID or 0)
403
	local PARENT = (TABLE.PARENT or ROOT)
404
	local VOLUME = (TABLE.VOLUME or 0.5)
405
	local PITCH = (TABLE.PITCH or 1)
406
	local LOOP = (TABLE.LOOP or false)
407
	local MAXDISTANCE = (TABLE.MAXDISTANCE or 100)
408
	local EMITTERSIZE = (TABLE.EMITTERSIZE or 10)
409
	local PLAYING = (TABLE.PLAYING or true)
410
	local PLAYONREMOVE = (TABLE.PLAYONREMOVE or false)
411
	local DOESDEBRIS = (TABLE.DOESDEBRIS or true)
412
	if ID ~= "rbxassetid://0" then
413
		local SOUND = IT("Sound",PARENT)
414
		SOUND.SoundId = ID
415
		SOUND.Volume = VOLUME
416
		SOUND.Pitch = PITCH
417
		SOUND.Looped = LOOP
418
		SOUND.MaxDistance = MAXDISTANCE
419
		SOUND.EmitterSize = EMITTERSIZE
420
		SOUND.PlayOnRemove = PLAYONREMOVE
421
		if DOESDEBRIS == true and PLAYING == true and LOOP == false then
422
			Debris:AddItem(SOUND,SOUND.TimeLength+5)
423
		end
424
		if PLAYING == true then
425
			SOUND:Play()
426
		end
427
		return SOUND
428
	end
429
end
430
431
function AttachmentCFrame(A)
432
	return A.Parent.CFrame*CF(A.Position)
433
end
434
435
function CastProperRay(StartPos, EndPos, Distance, Ignore)
436
	local DIRECTION = CF(StartPos,EndPos).lookVector
437
	return Raycast(StartPos, DIRECTION, Distance, Ignore)
438
end
439
440
function ApplyDamageTo(HUM,DAMAGE)
441
	if HUM.Health >= 0 then
442
		HUM.Health = HUM.Health - DAMAGE
443
		if HUM.Health <= 0 then
444
			HUM.Parent:Destroy()
445
		end
446
	end
447
end
448
449
function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
450
	return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
451
end
452
453
function Chatter(Text,Timer)
454
	local chat = coroutine.wrap(function()
455
		if CHARACTER:FindFirstChild("SpeechBoard")~= nil then
456
			CHARACTER:FindFirstChild("SpeechBoard"):destroy()
457
		end
458
		local naeeym2 = IT("BillboardGui",CHARACTER)
459
		naeeym2.Size = UD2(0,100,0,40)
460
		naeeym2.StudsOffset = Vector3.new(0,2,0)
461
		naeeym2.Adornee = HEAD
462
		naeeym2.Name = "SpeechBoard"
463
		naeeym2.AlwaysOnTop = true
464
		local tecks2 = IT("TextLabel",naeeym2)
465
		tecks2.BackgroundTransparency = 1
466
		tecks2.BorderSizePixel = 0
467
		tecks2.Text = ""
468
		tecks2.Font = "Legacy"
469
		tecks2.TextSize = 15
470
		tecks2.TextStrokeTransparency = 0
471
		tecks2.TextColor3 = Color3.new(1,1,1)
472
		tecks2.TextStrokeColor3 = Color3.new(0,0,0)
473
		tecks2.Size = UDim2.new(1,0,0.5,0)
474
		for i = 1,string.len(Text),1 do
475
			if naeeym2.Parent ~= CHARACTER then 
476
				break
477
			end
478
			tecks2.Text = string.sub(Text,1,i)
479
			wait(Timer)
480
		end
481
		wait(1)
482
		naeeym2:Destroy()
483
	end)
484
	chat()
485
end
486
487
--//====================================================\\--
488
--||                     ABILITIES
489
--\\====================================================//--
490
491
function Potato()
492
	if CROUCHED == false then
493
		Animate("Out")
494
		ATTACKING = true
495
		local TARGET = nil
496
		local POTAT = POTATO:Clone()
497
		POTAT.Parent = Effects
498
		POTAT.CFrame = RIGHTARM.CFrame*CF(0,-1.1,0) * ANGLES(RAD(90), RAD(0), RAD(0))
499
		local WLD = WeldParts(RIGHTARM,POTAT)
500-
		Chatter("GRIFFIIIIINNNN",0)
500+
501-
		NewSound({ID = 1526471893,PARENT = HEAD,VOLUME = 5,PITCH = MRANDOM(9,11)/5,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
501+
		NewSound({ID = 2174934221,PARENT = HEAD,VOLUME = 5,PITCH = MRANDOM(9,11)/5,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
502
		for i=0, 0.5, 0.1 / ANIM_SPEED do
503
			Swait()
504
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-35)), 2 / ANIM_SPEED)
505
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)), 2 / ANIM_SPEED)
506
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 1, 0.2) * ANGLES(RAD(170), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
507
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(15), RAD(-45)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
508
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
509
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 2 / ANIM_SPEED)
510
		end
511
		for i=0, 0.1, 0.1 / ANIM_SPEED do
512
			Swait()
513
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, -1, -0.5) * ANGLES(RAD(45), RAD(0), RAD(50)), 2 / ANIM_SPEED)
514
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(-10)), 2 / ANIM_SPEED)
515
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(25))*CF(0,-0.5,0) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
516
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(15), RAD(-15)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
517
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
518
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.7, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(45)), 2 / ANIM_SPEED)
519
		end
520
		local FOES = {}
521
		for index, CHILD in pairs(workspace:GetChildren()) do
522
			if CHILD:FindFirstChildOfClass("Humanoid") and CHILD ~= CHARACTER then
523
				local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
524
				local ROOT2 = HUMAN.Torso
525
				if ROOT2 and CHILD:FindFirstChild("Head") then
526
					if (ROOT2.Position - ROOT.CFrame*CF(0,0,-1.25).p).Magnitude <= 3 then
527
						table.insert(FOES,CHILD.Head)
528
					end
529
				end
530
			end
531
		end
532
		if #FOES > 0 then
533
			local DIST = math.huge
534
			for E = 1, #FOES do
535
				if (FOES[E].Position - ROOT.Position).Magnitude < DIST then
536
					DIST = (FOES[E].Position - ROOT.Position).Magnitude
537
					TARGET = FOES[E]
538
				end
539
			end
540
		end
541
		if TARGET then
542
			NewSound({ID = 2174934221,PARENT = TARGET,VOLUME = 5,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
543
			local BV = IT("BodyVelocity")
544
			BV.MaxForce = BV.MaxForce * 500
545
			BV.Velocity = CF(ROOT.Position,TARGET.Position+VT(0,0.5,0)).lookVector*25
546
			BV.Parent = TARGET
547
			Debris:AddItem(BV,0.05)
548
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
549
			if HUM then
550
				ApplyDamageTo(HUM,25)
551
			end
552
			WLD:Remove()
553
			POTAT.CFrame = CF(TARGET.Position,VT(ROOT.Position.X,TARGET.Position.Y,ROOT.Position.Z))*CF(0,0,-0.75)
554
			WeldParts(POTAT,TARGET)
555
			POTAT.Parent = TARGET.Parent
556
		end
557
		for i=0, 0.9, 0.1 / ANIM_SPEED do
558
			Swait()
559
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, -1, -0.5) * ANGLES(RAD(45), RAD(0), RAD(50)), 2 / ANIM_SPEED)
560
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(-10)), 2 / ANIM_SPEED)
561
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(25))*CF(0,-0.5,0) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
562
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(15), RAD(-15)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
563
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
564
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.7, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(45)), 2 / ANIM_SPEED)
565
		end
566
		if TARGET == nil then
567
			POTAT:Remove()
568
		end
569
		Animate("In")
570
		ATTACKING = false
571
	end
572
end
573
574
function PotatoTwo()
575
	if CROUCHED == false then
576
		Animate("Out")
577
		ATTACKING = true
578
		local TARGET = nil
579
		local POTAT = POTATO:Clone()
580
		POTAT.Parent = Effects
581
		POTAT.Transparency = 1
582
		POTAT.CFrame = RIGHTARM.CFrame*CF(0,-1.1,0) * ANGLES(RAD(90), RAD(0), RAD(0))
583
		local WLD = WeldParts(RIGHTARM,POTAT)
584
effect = Instance.new("Part",owner.Character)
585
effect.Anchored = true
586
effect.CanCollide = false
587
effect.Position = RIGHTARM.Position
588
effect.Orientation = RIGHTARM.Orientation
589
effect.BrickColor = BrickColor.new("White")
590
effect.Transparency = 1
591
meshefct = Instance.new("SpecialMesh",effect)
592
meshefct.Scale = Vector3.new(0.25, 0.25, 0.25)
593
meshefct.MeshId = "rbxassetid://0"
594
		Chatter(":)",0)
595
		NewSound({ID = 2174934221,PARENT = HEAD,VOLUME = 5,PITCH = MRANDOM(11,18)/5,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
596
		for i=0, 0.5, 0.1 / ANIM_SPEED do
597
			Swait()
598
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-35)), 2 / ANIM_SPEED)
599
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(35)), 2 / ANIM_SPEED)
600
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 1, 0.2) * ANGLES(RAD(170), RAD(0), RAD(-90)) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
601
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(15), RAD(-90)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
602
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
603
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.5, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-20)), 2 / ANIM_SPEED)
604
meshefct.Scale = meshefct.Scale + Vector3.new(0.15, 0.15, 0.15)
605
effect.Orientation = RIGHTARM.Orientation
606
		end
607
		for i=0, 0.1, 0.1 / ANIM_SPEED do
608
			Swait()
609
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, -1, -0.5) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
610
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(45), RAD(0), RAD(-10)), 2 / ANIM_SPEED)
611
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(25), RAD(0), RAD(90))*CF(0,-0.5,0) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
612
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(15), RAD(90)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
613
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
614
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.7, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(45)), 2 / ANIM_SPEED)
615
meshefct.Scale = meshefct.Scale + Vector3.new(0.15, 0.15, 0.15)
616
effect.Orientation = RIGHTARM.Orientation
617
effect.Transparency = effect.Transparency + 0.005
618
effect.Transparency = 0.5
619
		end
620
		local FOES = {}
621
		for index, CHILD in pairs(workspace:GetChildren()) do
622
			if CHILD:FindFirstChildOfClass("Humanoid") and CHILD ~= CHARACTER then
623
				local HUMAN = CHILD:FindFirstChildOfClass("Humanoid")
624
				local ROOT2 = HUMAN.Torso
625
				if ROOT2 and CHILD:FindFirstChild("Head") then
626
					if (ROOT2.Position - ROOT.CFrame*CF(0,0,-1.25).p).Magnitude <= 3 then
627
						table.insert(FOES,CHILD.Head)
628
					end
629
				end
630
			end
631
		end
632
		if #FOES > 0 then
633
			local DIST = math.huge
634
			for E = 1, #FOES do
635
				if (FOES[E].Position - ROOT.Position).Magnitude < DIST then
636
					DIST = (FOES[E].Position - ROOT.Position).Magnitude
637
					TARGET = FOES[E]
638
				end
639
			end
640
		end
641
		if TARGET then
642
			NewSound({ID = 2174934221,PARENT = TARGET,VOLUME = 5,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
643
			local BV = IT("BodyVelocity")
644
			BV.MaxForce = BV.MaxForce * 500
645
			BV.Velocity = CF(ROOT.Position,TARGET.Position+VT(0,0.5,0)).lookVector*25
646
			BV.Parent = TARGET
647
			Debris:AddItem(BV,0.05)
648
			local HUM = TARGET.Parent:FindFirstChildOfClass("Humanoid")
649
			if HUM then
650
				ApplyDamageTo(HUM,34)
651
			end
652
			WLD:Remove()
653
			POTAT.CFrame = CF(TARGET.Position,VT(ROOT.Position.X,TARGET.Position.Y,ROOT.Position.Z))*CF(0,0,-0.75)
654
			WeldParts(POTAT,TARGET)
655
			POTAT.Parent = TARGET.Parent
656
		end
657
		for i=0, 0.9, 0.1 / ANIM_SPEED do
658
			Swait()
659
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, -1, -0.5) * ANGLES(RAD(15), RAD(0), RAD(50)), 2 / ANIM_SPEED)
660
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(-10)), 2 / ANIM_SPEED)
661
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(90), RAD(0), RAD(25))*CF(0,-0.5,0) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
662
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-25), RAD(15), RAD(-15)) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
663
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
664
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.7, -0.5) * ANGLES(RAD(0), RAD(-80), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(45)), 2 / ANIM_SPEED)
665
meshefct.Scale = meshefct.Scale + Vector3.new(0.15, 0.15, 0.15)
666
effect.Orientation = RIGHTARM.Orientation
667
effect.Transparency = effect.Transparency + 0.05
668
		end
669
		if TARGET == nil then
670
			POTAT:Remove()
671
		end
672
		Animate("In")
673
		ATTACKING = false
674
effect:Destroy()
675
	end
676
end
677
678
function Dance()
679
if CROUCHED == false then
680
		local SONGS = {322621962,569026863,502771070,408862087,1471935327,236336857,2280063143,334259331,344685843,1479420512,297754476,591661590,1571736139,2988953773,130768805,2516100492,580535766,213546066}
681
		local SONG = SONGS[MRANDOM(1,#SONGS)]
682
		Animate("Out")
683
		HUM.WalkSpeed = 0
684
		HUM.JumpPower = 0
685
		ATTACKING = true
686
		local REMOVETRACK = false
687
		local TRACK = nil
688
		if ROOT:FindFirstChild("BGM_MUSIC") then
689
			TRACK = ROOT:FindFirstChild("BGM_MUSIC")
690
		else
691
			TRACK = NewSound({ID = SONG,PARENT = ROOT,VOLUME = 1.5,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
692
			REMOVETRACK = true
693
		end
694
		TRACK.SoundId = "rbxassetid://"..SONG
695
		TRACK:Play()
696
		local DONEWITHDANCING = false
697
MOUSE.KeyDown:connect(function(Press)
698
Press=Press:lower()
699
if Press=="m" and TRACK.Playing==true then
700
				DONEWITHDANCING = true
701
TRACK.Playing = false
702
end
703
if Press=="t" and TRACK.Playing==true then
704
text()
705
end
706
end)
707
		local LOOP = 0
708
		local RAVE = IT("PointLight",ROOT)
709
		RAVE.Brightness = 100
710
		repeat
711
			LOOP = LOOP + 5
712
			RAVE.Color = BrickColor.random().Color
713
			ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(-0.25 * COS(LOOP / 50), 0, -0.5 - 0.5 * COS(LOOP / 25)) * ANGLES(RAD(0), RAD(0), RAD(45 * SIN(LOOP / 50))) * ANGLES(RAD(45 + 22.5 * COS(LOOP / 25)), RAD(0), RAD(0)), 2 / ANIM_SPEED)
714
			NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-45 - 22.5 * COS(LOOP / 25)), RAD(0), RAD(-45 * SIN(LOOP / 50))), 2 / ANIM_SPEED)
715
			RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(175+65 * SIN(LOOP / 25)), RAD(0), RAD(-45 * SIN(LOOP / 12.5))) * CF(0,-0.5,0) * RIGHTSHOULDERC0, 1 / ANIM_SPEED)
716
			LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(175+65 * SIN(LOOP / 25)), RAD(0), RAD(45 * SIN(LOOP / 12.5))) * CF(0,-0.5,0) * LEFTSHOULDERC0, 1 / ANIM_SPEED)
717
			RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -0.5 + 0.5 * COS(LOOP / 25), -0.5 - 0.5 * COS(LOOP / 25)) * ANGLES(RAD(0), RAD(70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
718
			LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -0.5 + 0.5 * COS(LOOP / 25), -0.5 - 0.5 * COS(LOOP / 25)) * ANGLES(RAD(0), RAD(-70), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / ANIM_SPEED)
719
			Swait()
720
		until TRACK.Playing == false or HUM.Health <= 0
721
TRACK:Destroy()
722
		RAVE:Remove()
723
		ROOTJOINT.C0 = ROOTC0
724
		NECK.C0 = NECKC0
725
		RIGHTSHOULDER.C0 = CF(1.5, 0.5, 0) * RIGHTSHOULDERC0
726
		LEFTSHOULDER.C0 = CF(-1.5, 0.5, 0) * LEFTSHOULDERC0
727
		RIGHTHIP.C0 = CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
728
		LEFTHIP.C0 = CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
729
		if REMOVETRACK == true then
730
			TRACK:Remove()
731
		else
732
			TRACK:Play()
733
			TRACK.SoundId = "rbxassetid://185558852"
734
		end
735
		ATTACKING = false
736
		HUM.WalkSpeed = 20
737
		HUM.JumpPower = 50
738
		Animate("In")
739
	end
740
end
741
742
function Crouch()
743
	if CROUCHED == false then
744
		ROOTJOINT.C0 = ROOTC0 * CF(0, 0, -1) * ANGLES(RAD(45), RAD(0), RAD(0))
745
		NECK.C0 = NECKC0 * ANGLES(RAD(-45), RAD(0), RAD(0))
746
		RIGHTSHOULDER.C0 = CF(1.5, 0.5, 0) * RIGHTSHOULDERC0
747
		LEFTSHOULDER.C0 = CF(-1.5, 0.5, 0) * LEFTSHOULDERC0
748
		RIGHTHIP.C0 = CF(1, 0, -1) * ANGLES(RAD(0), RAD(90), RAD(0))
749
		LEFTHIP.C0 = CF(-1, 0, -1) * ANGLES(RAD(0), RAD(-90), RAD(0))
750
		CROUCHED = true
751
	elseif CROUCHED == true then
752
		ROOTJOINT.C0 = ROOTC0
753
		NECK.C0 = NECKC0
754
		RIGHTSHOULDER.C0 = CF(1.5, 0.5, 0) * RIGHTSHOULDERC0
755
		LEFTSHOULDER.C0 = CF(-1.5, 0.5, 0) * LEFTSHOULDERC0
756
		RIGHTHIP.C0 = CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
757
		LEFTHIP.C0 = CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
758
		CROUCHED = false
759
	end
760
end
761
762
function The_Future_Is_Now()
763
    if CROUCHED == false then
764
        HUM.WalkSpeed = 0
765
        HUM.JumpPower = 0
766
        Animate("Out")
767
        ATTACKING = true
768
        local FACE = HEAD.face
769
        local MESH = function(MESHID,TEXTURE,SIZE)
770
            if MESHID then
771
                for index, CHILD in pairs(CHARACTER:GetDescendants()) do
772
                    if CHILD:IsA("BasePart") then
773
                        CHILD.Transparency = 1
774
                    end
775
                end
776
                FACE.Transparency = 1
777
                ROOT.Transparency = 0
778
                local MESH = ROOT:FindFirstChildOfClass("SpecialMesh") or IT("SpecialMesh",ROOT)
779
                MESH.MeshId = "rbxassetid://"..MESHID
780
                MESH.TextureId = "rbxassetid://"..TEXTURE
781
                MESH.Scale = SIZE
782
                MESH.Offset = VT(0,0.5,0)
783
            else
784
                for index, CHILD in pairs(CHARACTER:GetDescendants()) do
785
                    if CHILD:IsA("BasePart") then
786
                        CHILD.Transparency = 0
787
                    end
788
                end
789
                FACE.Transparency = 0
790
                ROOT.Transparency = 1
791
                if ROOT:FindFirstChildOfClass("SpecialMesh") then
792
                    ROOT:FindFirstChildOfClass("SpecialMesh"):Remove()
793
                end
794
            end
795
        end
796
        local BOOMED = false
797
        local WARIO = NewSound({ID = 2989518230,PARENT = ROOT,VOLUME = 5,PITCH = 1,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
798
        repeat
799
            Swait()
800
            if WARIO.TimePosition <= 2.335 then
801
                ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
802
                NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(-65), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
803
                RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(25)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
804
                LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(150), RAD(0), RAD(-25)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
805
                RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
806
                LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
807
            elseif WARIO.TimePosition > 2.335 and WARIO.TimePosition < 3.35 then
808
                MESH(441220320,441220324,VT(0.4,0.4,0.4))
809
                ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
810
                NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
811
                RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
812
                LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
813
                RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
814
                LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
815
            else
816
                if BOOMED == false then
817
ff = Instance.new("ForceField",owner.Character)
818
ff.Visible = false
819
                    BOOMED = true
820
                    local BOOM = IT("Explosion")
821
                    BOOM.Position = ROOT.Position
822
                    BOOM.BlastRadius = 25
823
                    BOOM.Parent = ROOT
824
                end
825
                MESH(441220320,441220324,VT(0,0,0))
826
                ROOTJOINT.C0 = Clerp(ROOTJOINT.C0,ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
827
                NECK.C0 = Clerp(NECK.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
828
                RIGHTSHOULDER.C0 = Clerp(RIGHTSHOULDER.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * RIGHTSHOULDERC0, 0.5 / ANIM_SPEED)
829
                LEFTSHOULDER.C0 = Clerp(LEFTSHOULDER.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)) * LEFTSHOULDERC0, 0.5 / ANIM_SPEED)
830
                RIGHTHIP.C0 = Clerp(RIGHTHIP.C0, CF(1, -1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
831
                LEFTHIP.C0 = Clerp(LEFTHIP.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.5 / ANIM_SPEED)
832
            end
833
        until WARIO.Playing == false or WARIO.Parent ~= ROOT
834
        MESH()
835
        ATTACKING = false
836
        HUM.WalkSpeed = 20
837
        HUM.JumpPower = 50
838
        Animate("In")
839
ff:Destroy()
840
    end
841
end
842
 
843
function text()
844
    local TEXT = {"I am going to slap a rabbit out of your nose","No it was your mom","Pics or it didnt happen","nein thoust","potato","no u, humans i swear","ok","m","literally a lemon",PLAYER.Name.." is here","literally consumes potatoes","i diagnose you with dead","GJIEUDJGHBEUYDTJGHGESIGUJSHGNUIESJDGTHNSEIUDGJHSEDNGIUKJSEDYHGNISUKEDJGHSNEIDUGJHSENDGUJSEHGNUISEJGM","gsap","toast when","I NEVER LEARNED HOW TO READ","help"}
845
    Chatter(TEXT[MRANDOM(1,#TEXT)],0)
846
end
847
 
848
--//====================================================\\--
849
--||                       WRAP
850
--\\====================================================//--
851
 
852
MOUSE.Button1Down:connect(function()
853
if ATTACKING==false then
854
PotatoTwo()
855
end
856
end)
857
858
MOUSE.KeyDown:connect(function(Press)
859
Press=Press:lower()
860
if Press=="z" and ATTACKING==false then
861
Potato()
862
end
863
if Press=="t" and ATTACKING==false then
864
text()
865
end
866
if Press=="c" and ATTACKING==false then
867
Crouch()
868
end
869
if Press=="m" and ATTACKING==false then
870
Dance()
871
end
872
if Press=="x" and ATTACKING==false then
873
The_Future_Is_Now()
874
end
875
if Press=="e" and ATTACKING==false then
876
					if ROOT:FindFirstChild("BGM_MUSIC") then
877
						ROOT:FindFirstChild("BGM_MUSIC"):Remove()
878
					else
879
						local M = NewSound({ID = 185558852,PARENT = ROOT,VOLUME = 10,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
880
						M.Name = "BGM_MUSIC"
881
					end
882
end
883
end)
884
885
886
REMOTE.OnServerEvent:Connect(function(PLR,V1,V2)
887
	if PLR == PLAYER and DEAD == false then
888
		--if V1 == "MousePositionUpdate" then
889
			--MOUSEPOS = V2
890
		if V1 == "KeyUp" then
891
			KEYHOLD = false
892
		elseif V1 == "MouseUp" then
893
			MOUSEHOLD = false
894
		end
895
		if ATTACKING == false then
896
			if V1 == "MouseDown" then
897
				MOUSEHOLD = true
898
			elseif V1 == "KeyDown" then
899
				KEYHOLD = true
900
				if V2 == "z" then
901
					Potato()
902
				elseif V2 == "c" then
903
					Crouch()
904
				elseif V2 == "t" then
905
					text()
906
				elseif V2 == "m" then
907
					Dance()
908
				elseif V2 == "e" then
909
					if ROOT:FindFirstChild("BGM_MUSIC") then
910
						ROOT:FindFirstChild("BGM_MUSIC"):Remove()
911
					else
912
						local M = NewSound({ID = 185558852,PARENT = ROOT,VOLUME = 10,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
913
						M.Name = "BGM_MUSIC"
914
					end
915
				end
916
			end
917
		end
918
	end
919
end)
920
local M = NewSound({ID = 185558852,PARENT = ROOT,VOLUME = 10,PITCH = 1,LOOP = true,MAXDISTANCE = 300,EMITTERSIZE = 300,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
921
M.Name = "BGM_MUSIC"
922
HUM.WalkSpeed = 20
923
924
HUM.Died:Connect(function()
925
	ApplyDamageTo(HUM,100000)
926
	DEAD = true
927
	Chatter("OW IM DEAD",0)
928
	NewSound({ID = 2542613889,PARENT = HEAD,VOLUME = 10,PITCH = MRANDOM(9,11)/10,LOOP = false,MAXDISTANCE = 200,EMITTERSIZE = 15,PLAYING = true,PLAYONREMOVE = false,DOESDEBRIS = true})
929
end)