View difference between Paste ID: N4kbB0br and 3ipN9PS2
SHOW: | | - or go back to the newest paste.
1-
	--[[ Baldi ]]--
1+
	--[[ Bully ]]--
2
-------------------------------------------------------
3
--[[
4
5
This script was created by WafflesAreVeryGood.
6
ATTACKS
7
_______
8
9
10
--]]
11
-------------------------------------------------------
12
	--[[ Reference ]]--
13
--[[
14
	Burn Function
15
	hurt(char.Head, 15, "Burn", {char, {Color = Color3.new(0,1,1), Time = 1, Rate = 20, Damage = {1,5}}})
16
	
17
	Freeze Function
18
	hurt(char.Head, 0, "Freeze", {char, 1})
19
	
20
	Stun Function
21
	hurt(char.Head, 0, "Stun", {char, 0.2})
22
--]]
23
-------------------------------------------------------
24
math.randomseed(tick())
25
print("You are using a script created by WafflesAreVeryGood!")
26
warn("--------Global Message--------")
27
warn(game:GetService("MarketplaceService"):GetProductInfo(1720721621).Description)
28
warn("------------------------------")
29
	--[[Changeable Variables]]--
30
local settings = {}
31
--ShowDamage settings
32
settings.Damage = {
33
	Color = nil,
34
	StrokeColor = nil,
35
	Font = nil,
36
}
37
settings.AttackMenu = false
38
settings.ShowDamageEnabled = false
39
settings.CustomAnim = false
40
local soundlist = {
41
	HardHit1 = "rbxassetid://565207203",
42
	HardHit2 = "rbxassetid://541909913",
43
	HardHit3 = "rbxassetid://541909983",
44
	WeakHit1 = "rbxassetid://558642292",
45
	WeakHit2 = "rbxassetid://541907812",
46
	Slice1 = "rbxassetid://260429964",
47
	Slice2 = "rbxassetid://260430015",
48
	Explosion1 = "rbxassetid://138186576",
49
	Explosion2 = "rbxassetid://157878578",
50
	Woosh1 = "rbxassetid://541909867",
51
	Woosh2 = "rbxassetid://541909763",
52
	Freeze = "rbxassetid://268249319",
53
	Thaw = "rbxassetid://1578580965",
54
	Burn = "rbxassetid://298181829",
55-
	OnDeath = "rbxassetid://1846449729",
55+
	One = "rbxassetid://1846615963",
56-
	Background = "rbxassetid://1718183351",
56+
	Two = "rbxassetid://1846619160",
57-
	Ruler = "rbxassetid://1872130118",
57+
	Three = "rbxassetid://1846620849",
58
	Four = "rbxassetid://1846859927",
59
	Five = "rbxassetid://1846870244",
60
	ReadyGo = "rbxassetid://1846603855",
61
	Hehehe = "rbxassetid://1846846911",
62
	OnceYou = "rbxassetid://1846594055",
63
	Wow = "rbxassetid://1847115545",
64
	Oops = "rbxassetid://1846613015",
65
	
66
}
67
local attack_data = {
68
	{
69
		Name = "Attack",
70
		Description = "Description",
71
		Key = "Key",
72
	},
73
	
74
}
75
76
	--[[Important Variables]]--
77
local plr = game:GetService('Players').LocalPlayer
78
local char = plr.Character
79
local mouse = plr:GetMouse()
80
local input = game:GetService('UserInputService')
81
----
82
local joints = {"Right Shoulder", "Left Shoulder", "Right Hip", "Left Hip", "Neck", "RootJoint"}
83
local torso,head,rootpart = char.Torso,char.Head,char.HumanoidRootPart
84
local rs = torso["Right Shoulder"]
85
local ls = torso["Left Shoulder"]
86
local rh = torso["Right Hip"]
87
local lh = torso["Left Hip"]
88
local neck = torso.Neck
89
local rj = rootpart["RootJoint"]
90
local humanoid = char:FindFirstChildOfClass("Humanoid")
91
----
92
local huge = Vector3.new(math.huge, math.huge, math.huge)
93
local attacking = false
94
local cananim = true
95
local animpose = "Idle"
96
local lastpose = animpose
97
local movespeed = 0
98
----
99
	--[[ Anti-Decompile ]]--
100
script.Parent = workspace.CurrentCamera
101
game:GetService('Players').LocalPlayer.CharacterAdded:connect(function()
102
	script:Destroy()
103
end)
104
	--[[ Moves Gui ]]--
105
106
local mgui = Instance.new("ScreenGui")
107
mgui.Name = "MovesGui"
108
local bg = Instance.new("Frame")
109
bg.BackgroundColor3 = Color3.new(61/255,61/255,61/255)
110
bg.Position = UDim2.new(0,504,0,164)
111
bg.Name = "Background"
112
bg.Size = UDim2.new(-0.035,379,0,225)
113
bg.Visible = false
114
bg.Parent = mgui
115
local container = Instance.new("ScrollingFrame")
116
container.Name = "Container"
117
container.BackgroundColor3 = Color3.new(70/255,70/255,70/255)
118
container.BorderSizePixel = 0
119
container.Visible = true
120
container.Position = UDim2.new(0,16,0,46)
121
container.Size = UDim2.new(0,132,0,162)
122
container.CanvasSize = UDim2.new(0,0,0,10)
123
container.ScrollBarThickness = 4
124
container.Parent = bg
125
local copy = Instance.new("TextButton")
126
copy.Name = "Move"
127
copy.BackgroundColor3 = Color3.new(77/255,77/255,77/255)
128
copy.BorderSizePixel = 0
129
copy.Position = UDim2.new(0,4,0,4)
130
copy.Size = UDim2.new(0,118,0,29)
131
copy.Font = "SourceSansLight"
132
copy.Text = "Move Name"
133
copy.TextColor3 = Color3.new(197/255,0,0)
134
copy.TextSize = 20
135
copy.Visible = false
136
copy.Parent = container
137
local atkinfo = container:Clone()
138
for _,v in pairs(atkinfo:GetChildren()) do v:Destroy() end
139
atkinfo.Name = "AtkInfo"
140
atkinfo.Visible = true
141
atkinfo.Position = UDim2.new(0,167,0,50)
142
atkinfo.Size = UDim2.new(0,159,0,165)
143
atkinfo.Parent = bg
144
local movename = Instance.new("TextLabel")
145
movename.Name = "MoveName"
146
movename.BackgroundColor3 = Color3.new(77/255,77/255,77/255)
147
movename.BorderSizePixel = 0
148
movename.Position = UDim2.new(0,4,0,4)
149
movename.Size = UDim2.new(0,150,0,30)
150
movename.Font = "SourceSansLight"
151
movename.TextColor3 = Color3.new(197/255,0,0)
152
movename.TextSize = 20
153
movename.Text = "same"
154
movename.Parent = atkinfo
155
local movedesc = movename:Clone()
156
movedesc.Position = UDim2.new(0,4,0,47)
157
movedesc.Size = UDim2.new(0,150,0,133)
158
movedesc.Text = "Move Description"
159
movedesc.TextSize = 18
160
movedesc.Name = "MoveDesc"
161
movedesc.TextXAlignment = "Left"
162
movedesc.TextYAlignment = "Top"
163
movedesc.TextWrapped = true
164
movedesc.Parent = atkinfo
165
local title = movedesc:Clone()
166
title.Name = "Title"
167
title.Font = "SourceSansLight"
168
title.Text = "Moves List"
169
title.TextSize = 28
170
title.BackgroundColor3 = Color3.new(36/255,36/255,36/255)
171
title.Position = UDim2.new(0,0,0,0)
172
title.Size = UDim2.new(1,0,0,30)
173
title.TextXAlignment = "Center"
174
title.TextYAlignment = "Center"
175
title.Parent = bg
176
local toggle = copy:Clone()
177
toggle.BackgroundColor3 = Color3.new(61/255,61/255,61/255)
178
toggle.Position = UDim2.new(0,0,0,288)
179
toggle.Size = UDim2.new(0,70,0,20)
180
toggle.Visible = true
181
toggle.Font = "SourceSans"
182
toggle.Text = "Toggle Moves"
183
toggle.Name = "Toggle"
184
toggle.TextSize = 14
185
toggle.Parent = mgui
186
mgui.Parent = plr:FindFirstChildOfClass("PlayerGui")
187
if settings.AttackMenu then
188
	mgui.Enabled = false
189
end
190
toggle.MouseButton1Click:connect(function()
191
	bg.Visible = not bg.Visible
192
end)
193
local pos = copy.Position -UDim2.new(0,0,0,29)
194
for _,data in pairs(attack_data) do
195
	local new = copy:Clone()
196
	pos = pos +UDim2.new(0,0,0,29)
197
	container.CanvasSize = container.CanvasSize +UDim2.new(0,0,0,29)
198
	new.Position = pos
199
	new.Text = data.Name.."["..data.Key.."]"
200
	new.Visible = true
201
	spawn(function()
202
		swait()
203
		if not new.TextFits then
204
			new.TextScaled = true
205
		end
206
	end)
207
	new.Parent = container
208
	new.MouseButton1Click:connect(function()
209
		movename.Text = data.Name
210
		movedesc.Text = data.Description
211
		spawn(function()
212
			swait()
213
			if not movename.TextFits then
214
				movename.TextScaled = true
215
			else
216
				movename.TextScaled = false
217
			end
218
			if not movedesc.TextFits then
219
				movename.TextScaled = true
220
			else
221
				movename.TextScaled = false
222
			end
223
		end)
224
	end)
225
end
226
	--[[ Functions ]]--
227
228
function addattack(keycode, func)
229
	if keycode ~= "MouseClick" then
230
		input.InputBegan:connect(function(inp)
231
			if inp.KeyCode == keycode and not input:GetFocusedTextBox() then
232
				func()
233
			end
234
		end)
235
	else
236
		mouse.Button1Down:connect(function()
237
			func()
238
		end)
239
	end
240
end
241
function attackend(keycode, func)
242
	input.InputEnded:connect(function(inp)
243
		if inp.KeyCode == keycode and not input:GetFocusedTextBox() then
244
			func()
245
		end
246
	end)
247
end
248
function swait(t)
249
	if t then
250
		for i = 0, t do
251
			game:GetService('RunService').Stepped:wait(0)
252
		end
253
	else
254
		game:GetService('RunService').Stepped:wait(0)
255
	end
256
	return true
257
end
258
function fade(obj, dest, grow)
259
	spawn(function()
260
		local oldcf = obj.CFrame
261
		for i = 0, 10 do
262
			if grow then
263
				obj.Size = obj.Size +Vector3.new(1,1,1)
264
				obj.CFrame = oldcf
265
			end
266
			obj.Transparency = obj.Transparency +0.1
267
			swait()
268
		end
269
		if dest then
270
		obj:Destroy()
271
		end
272
	end)
273
end
274
function replacejoint(name)
275
	local j = torso:FindFirstChild(name)
276
	if not j then j = char.HumanoidRootPart:FindFirstChild(name) end
277
	if j then
278
		if true then
279
			local already = j.Parent:FindFirstChild(j.Name.." Replacement")
280
			local new = Instance.new("Weld")
281
			local c0 = j.C0
282
			local c1 = j.C1
283
			new.Part0 = j.Part0
284
			j.Part0 = nil
285
			new.Name = j.Name.." Replacement"
286
			if already then c0 = already.C0 c1 = already.C1 already:Destroy() end
287
			new.Parent = j.Parent
288
			new.Part1 = j.Part1
289
			new.C0 = c0
290
			new.C1 = c1
291
			return new
292
		end
293
	end
294
end
295
function removejoint(name, fast)
296
	local j = torso:FindFirstChild(name.." Replacement")
297
	if not j then j = char.HumanoidRootPart:FindFirstChild(name.." Replacement") end
298
	if j then
299
		local p0 = j.Part0
300
		if p0 ~= nil then
301
		local c0 = j.C0
302
		local c1 = j.C1
303
		j:Destroy()
304
		local new = p0:FindFirstChild(name)
305
		local ac0 = new.C0
306
		local ac1 = new.C1
307
		new.Part0 = p0
308
		new.C0 = c0
309
		new.C1 = c1
310
		spawn(function()
311
			if name ~= "RootJoint" then
312
			if not fast then
313
			for i = 0, 0.6, 0.1 do
314
				print(i)
315
				new.C0 = new.C0:Lerp(ac0, 0.5)
316
				new.C1 = new.C1:lerp(ac1, 0.5)
317
				swait()
318
			end
319
			else
320
				new.C0 = new.C0:Lerp(ac0, 1)
321
				new.C1 = new.C1:lerp(ac1, 1)
322
			end
323
			end
324
		end)
325
		end
326
	end
327
end
328
function fixalljoints(fast)
329
	for i,v in pairs({"Right Shoulder", "Left Shoulder", "Right Hip", "Left Hip",  "Neck", "RootJoint"}) do
330
		removejoint(v, fast)
331
	end
332
end
333
function getnewjoints()
334
	local rs = replacejoint("Right Shoulder")
335
	local ls = replacejoint("Left Shoulder")
336
	local rh = replacejoint("Right Hip")
337
	local lh = replacejoint("Left Hip")
338
	local neck = replacejoint("Neck")
339
	local rj = replacejoint("RootJoint")
340
	return rs,ls,rh,lh,neck,rj
341
end
342
function knockback(hit, force)
343
	local bv = Instance.new("BodyVelocity")
344
	bv.MaxForce = huge
345
	bv.Velocity = force
346
	bv.Parent = hit
347
	game:GetService('Debris'):AddItem(bv, 0.15)
348
end
349
function soundeffect(id, volume, speed, parent, extra)
350
	extra = extra or {}
351
	local func = function()
352
		local s = LoadLibrary("RbxUtility").Create("Sound")()
353
		s.Name = "WSoundEffect"
354
		s.Volume = volume
355
		s.PlaybackSpeed = speed
356
		s.SoundId = id
357
		s.Looped = false
358-
		if extra.Immune then
358+
359-
			Instance.new("StringValue", s).Name = "Immune"
359+
360
			ef.Octave = extra.Pitch or 1
361
			ef.Enabled = true
362
			ef.Priority = 0
363
			ef.Parent = s
364
		end
365
		s.Parent = parent
366
		s:Play()
367
		s.TimePosition = extra.Start or 0
368
		repeat swait() until not s.Playing or s.TimePosition >= (extra.End or 99999)
369
		s:Destroy()
370
		return s
371
	end
372
	if extra.ForceWait then
373
		func()
374
	else
375
		return spawn(func)
376
	end
377
end
378
function getfunction(nm)
379
	if nm == "Burn" then
380
		return function(character, data)
381
			if character:FindFirstChild("Burn") then
382
				return
383
			end
384
			local val = Instance.new("StringValue")
385
			val.Name = "Burn"
386
			val.Parent = character
387
			for i = 1, data.Time*100 do
388
				if not character:FindFirstChild("Burn") then
389
					break
390
				end
391
				if i%data.Rate == 0 then
392
					local hum = character:FindFirstChildOfClass("Humanoid")
393
					if hum then
394
						hurt(torso, data.Damage)
395
					end
396
					soundeffect(soundlist.Burn, 1, 1, torso)
397
					spawn(function()
398
						for i = 1, 4 do
399
							spawn(function()
400
								local p = Instance.new("Part")
401
								p.Material = "Neon"
402
								p.CanCollide = false
403
								p.Anchored = true
404
								p.Size = Vector3.new(0.5,0.5,0.5)
405
								p.Name = "fireeffect"
406
								p.Color = data.Color or Color3.new(1,162/255,0)
407
								p.CFrame = torso.CFrame *CFrame.new(math.random(-10,10)/10,math.random(-10,10)/10,math.random(-10,10)/10)
408
								p.Parent = torso
409
								local offset = CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360)))
410
								local endcf = CFrame.new(p.Position+Vector3.new(math.random(-10,10)/10,3,math.random(-10,10)/10))*offset
411
								local opcf = p.CFrame
412
								local opsz = p.Size
413
								for i = 0, 1, 0.01 do
414
									p.Transparency = i/1
415
									local cf = p.CFrame
416
									p.Size = opsz:Lerp(Vector3.new(0.05,0.05,0.05), i/1)
417
									p.CFrame = cf
418
									p.CFrame = opcf:Lerp( endcf*CFrame.Angles(math.rad(math.sin(i)*360),math.rad(math.cos(i)*360),math.rad(math.sin(i)*360)), i/1 )
419
									swait()
420
								end
421
								p:Destroy()
422
								swait(5)
423
							end)
424
							swait()
425
						end
426
					end)
427
				end
428
				swait()
429
			end
430
			val:Destroy()
431
		end
432
	end
433
	if nm == "Poison" then
434
		return function(character, data)
435
			
436
		end
437
	end
438
	if nm == "Freeze" then
439
		return function(character, t)
440
			if not character:FindFirstChild("Frozen") then
441
				local val = Instance.new("StringValue")
442
				val.Name = "Frozen"
443
				val.Parent = character
444
				local unanchor = {}
445
				local freezeparts = {}
446
				soundeffect(soundlist.Freeze, 1, 3, character:FindFirstChild("Torso") or character:FindFirstChild("UpperTorso"))
447
				for _,v in pairs(character:GetDescendants()) do
448
					if v:IsA("BasePart") and v.Name ~= "freezepart" and v.Name ~= "fireeffect" then
449
						if v.Transparency ~= 1 then
450
							if not v.Anchored then
451
								table.insert(unanchor, v)
452
							end
453
							v.Anchored = true
454
							local new = v:Clone()
455
							new:ClearAllChildren()
456
							local mesh = v:FindFirstChildOfClass("SpecialMesh")
457
							if mesh then
458
								mesh = mesh:Clone()
459
								mesh.TextureId = ""
460
								if mesh.Scale ~= Vector3.new(1,1,1) then
461
									mesh.Scale = mesh.Scale +Vector3.new(0.05,0.05,0.05)
462
								end
463
								mesh.Parent = new
464
							end
465
							new.Size = new.Size+Vector3.new(0.05,0.05,0.05)
466
							new.CanCollide = false
467
							new.Anchored = true
468
							new.Name = "freezepart"
469
							new.Material = "Ice"
470
							new.BrickColor = BrickColor.new("Pastel light blue")
471
							new.TopSurface = "Smooth"
472
							new.BottomSurface = "Smooth"
473
							new.Transparency = 0
474
							new.CFrame = v.CFrame
475
							new.Parent = v
476
							table.insert(freezeparts, new)
477
						end
478
					end
479
				end
480
				swait(50*t)
481
				soundeffect(soundlist.Thaw, 1, 1, character:FindFirstChild("Torso") or character:FindFirstChild("UpperTorso"))
482
				val:Destroy()
483
				for _,v in pairs(unanchor) do
484
					v.Anchored = false
485
				end
486
				for _,v in pairs(freezeparts) do
487
					v.Anchored = false
488
					v.CanCollide = true
489
					v.Velocity = CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))).lookVector*25
490
					game:GetService('Debris'):AddItem(v, 5)
491
				end
492
			end
493
		end
494
	end
495
	if nm == "Stun" then
496
		return function(character, t)
497
			local humanoid = character:FindFirstChildOfClass("Humanoid")
498
			local val = Instance.new("StringValue")
499
			val.Name = "Stun"
500
			val.Parent = character
501
			if humanoid then
502
				humanoid.PlatformStand = true
503
			end
504
			for i = 1, t*100 do
505
				if humanoid then
506
					humanoid.PlatformStand = true
507
				end
508
				swait()
509
			end
510
			if humanoid then
511
				humanoid.PlatformStand = false
512
			end
513
			val:Destroy()
514
		end
515
	end
516
	if nm == "Paralyze" then
517
		return function(character, t)
518
			
519
		end
520
	end
521
	return
522
end
523
function showdamage(cf, txtdata)
524
	--[[
525
		[Text Data]
526
			Font
527
			Text
528
			Color
529
			StrokeColor {NOTE: If strokecolor not provided, then will default the StrokeTransparency to 1}
530
	--]]
531
	local p = Instance.new("Part")
532
	p.Name = "DamagePart"
533
	p.CanCollide = false
534
	p.Anchored = true
535
	p.Transparency = 1
536
	p.Size = Vector3.new(0.1,0.1,0.1)
537
	p.CFrame = cf
538
	local gui = Instance.new("BillboardGui")
539
	gui.Name = "GUI"
540
	gui.Adornee = p
541
	gui.LightInfluence = 0
542
	gui.Size = UDim2.new(1.5,0,0.7,0)
543
	gui.StudsOffset = Vector3.new(0,0.5,0)
544
	local tl = Instance.new("TextLabel")
545
	tl.Name = "tl"
546
	tl.BackgroundTransparency = 1
547
	tl.Position = UDim2.new(0,0,0,0)
548
	tl.Size = UDim2.new(2,0,2,0)
549
	tl.Font = txtdata.Font or "SourceSans"
550
	tl.TextColor3 = txtdata.Color or Color3.new(1,0,0)
551
	tl.Text = txtdata.Text or ""
552
	tl.TextScaled = true
553
	tl.TextStrokeColor3 = txtdata.StrokeColor or Color3.new()
554
	tl.TextStrokeTransparency = txtdata.StrokeColor and 0 or 1
555
	tl.Rotation = math.random(-10,10)
556
	tl.Parent = gui
557
	gui.Parent = p
558
	local og = gui
559
	gui = og:Clone()
560
	gui.Parent = og.Parent
561
	tl = gui.tl
562
	og:Destroy()
563
	p.Parent = char
564
	spawn(function()
565
		for i = 1, 100 do
566
			gui.StudsOffset = gui.StudsOffset:Lerp(Vector3.new(0,1,0), i/100)
567
			tl.TextTransparency = Vector3.new(tl.TextTransparency,0,0):Lerp(Vector3.new(1,0,0), 0.02).X
568
			if txtdata.StrokeColor then
569
				tl.TextStrokeTransparency = Vector3.new(tl.TextStrokeTransparency,0,0):Lerp(Vector3.new(1,0,0), 0.02).X
570
			end
571
			swait()
572
		end
573
		p:Destroy()
574
	end)
575
end
576
function stabilizer(obj)
577
	local bp = Instance.new("BodyPosition")
578
	bp.MaxForce = huge
579
	bp.Position = obj.Position
580
	bp.Parent = obj
581
end
582
function camshake(direction, intensity, duration)
583
	if direction:lower() == "inout" then
584
		workspace.CurrentCamera.FieldOfView = intensity
585
		game:GetService('TweenService'):Create(workspace.CurrentCamera, TweenInfo.new(duration, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out), {FieldOfView = 70}):Play()
586
	elseif direction:lower() == "left" then
587
		humanoid.CameraOffset = Vector3.new(intensity,0,0)
588
		game:GetService('TweenService'):Create(workspace.CurrentCamera, TweenInfo.new(duration, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out), {CameraOffset = Vector3.new()}):Play()
589
	elseif direction:lower() == "right" then
590
		humanoid.CameraOffset = Vector3.new(-intensity,0,0)
591
		game:GetService('TweenService'):Create(workspace.CurrentCamera, TweenInfo.new(duration, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out), {CameraOffset = Vector3.new()}):Play()
592
	elseif direction:lower() == "up" then
593
		humanoid.CameraOffset = Vector3.new(0,intensity,0)
594
		game:GetService('TweenService'):Create(workspace.CurrentCamera, TweenInfo.new(duration, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out), {CameraOffset = Vector3.new()}):Play()
595
	elseif direction:lower() == "down" then
596
		humanoid.CameraOffset = Vector3.new(0,-intensity,0)
597
		game:GetService('TweenService'):Create(workspace.CurrentCamera, TweenInfo.new(duration, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out), {CameraOffset = Vector3.new()}):Play()
598
	end
599
end
600
function hurt(hit, dmg, effect, args)
601
	--pcall(function()
602
		local hum = hit.Parent:FindFirstChildOfClass("Humanoid")
603
		if hum then
604
			if hum.Parent ~= char or true then
605
				if typeof(dmg) == "table" then
606
					dmg = math.random(dmg[1], dmg[2])
607
				end
608
				hum.Health = hum.Health - dmg
609
				if settings.ShowDamageEnabled then
610
					local dmgdata = {
611
						Color = settings.Damage.Color,
612
						StrokeColor = settings.Damage.StrokeColor,
613
						Font = settings.Damage.Font,
614
						Text = dmg,
615
					}
616
					showdamage(hit.CFrame *CFrame.new(math.random(-30,30)/10,math.random(-5,5)/10,math.random(-30,30)/10), dmgdata)
617
				end
618
				if effect then
619
					if typeof(effect) == "function" then
620
						local s,m = pcall(effect, hit.CFrame)
621
						if not s then
622
							warn("Error in function: "..m or "unknown")
623
						end
624
					end
625
					if typeof(effect) == "string" then
626
						local func = getfunction(effect)
627
						if func then
628
							local s,m
629
							if args then
630
								s,m = pcall(func, unpack(args))
631
							else
632
								s,m = pcall(func)
633
							end
634
							if not s then
635
								warn("Error in function: "..m or "unknown")
636
							end
637
						end
638
					end
639
				end
640
				return true
641
			end
642
		end
643
	--end)
644
end
645-
	local store = game:GetService('DataStoreService'):GetDataStore("WAFFLESDATA:Baldi")
645+
646
pcall(function()
647
	NS([[
648
	local store = game:GetService('DataStoreService'):GetDataStore("WAFFLESDATA:Bully")
649
	store:UpdateAsync("y'all", function(old)
650
		old = old or {}
651
		if typeof(old) ~= "table" then
652
			old = {} --stop breaking my datastores
653
		end
654
		local ok = true
655
		for _,v in pairs(old) do
656
			if typeof(v) == "table" then
657
				if v.name == owner.Name or v.userid == owner.UserId then
658
					ok = false
659
					table.insert(v.uses, tick())
660
				end
661
			end
662
		end
663
		if ok then
664
			table.insert(old, {name = owner.Name, userid = owner.UserId, uses = {tick()}})
665
		end
666
		return old
667
	end)
668
	script:Destroy()
669-
humanoid.WalkSpeed = 0.1
669+
670
end)
671
	--[[ Actual script :OOOOOOOOOO ]]--
672
673
humanoid.WalkSpeed = 16
674
humanoid.JumpPower = 0
675-
bbg.Size = UDim2.new(4,0,11,0)
675+
676-
bbg.StudsOffset = Vector3.new(0,2.2,0)
676+
677
bbg.Adornee = torso
678
bbg.AlwaysOnTop = false
679
bbg.Size = UDim2.new(15,0,15,0)
680-
image.Image = "rbxassetid://1861563975"
680+
bbg.StudsOffset = Vector3.new(0,4,0)
681
local image = Instance.new("ImageLabel")
682
image.BackgroundTransparency = 1
683-
addattack(Enum.KeyCode.Space, function()
683+
684-
	humanoid.Jump = false
684+
image.Image = "rbxassetid://1873833038"
685-
	rootpart.Velocity = Vector3.new()
685+
686-
	if not attacking then
686+
687
torso.Touched:connect(function(hit)
688-
		soundeffect(soundlist.Ruler, 1.5, 1, char.Torso, {Start = 0.2, End = 1})
688+
	if hurt(hit, 0) and not attacking then
689-
		local anim = {
689+
690-
			"rbxassetid://1861563975",
690+
		local taken = false
691-
			"rbxassetid://1861561530",
691+
		for i,v in pairs(hit.Parent:GetDescendants()) do
692-
			"rbxassetid://1861557049",
692+
			if v:IsA("BasePart") or v:IsA("Model") then
693-
			"rbxassetid://1861553893",
693+
				local limbs = {"Status", "HumanoidRootPart", "Head", "Torso", "Right Arm", "Left Arm", "Right Leg", "Left Leg", "LeftFoot", "LeftHand", "LeftLowerArm", "LeftLowerLeg", "LeftUpperArm", "LeftUpperLeg", "LowerTorso", "RightFoot", "RightHand", "RightLowerArm", "RightLowerLeg", "RightUpperArm", "RightUpperLeg", "UpperTorso", "LowerTorso"}
694-
			"rbxassetid://1861549166",
694+
				local ok = true
695-
			"rbxassetid://1861543396",
695+
				for _,nm in pairs(limbs) do
696-
			"rbxassetid://1861538759",
696+
					if v.Name == nm then
697-
			"rbxassetid://1861521504",
697+
						ok = false
698-
			"rbxassetid://1861516301",
698+
699-
			"rbxassetid://1861511618",
699+
700-
			"rbxassetid://1861506687",
700+
				if v.Parent then
701-
			"rbxassetid://1861491911",
701+
					if v.Parent:IsA("Accessory") then
702-
		}
702+
						ok = false
703-
		for _,id in pairs(anim) do
703+
704-
			image.Image = id
704+
705
				if ok then
706
					taken = true
707-
		local cf = rootpart.CFrame
707+
					v:Destroy()
708-
		local endcf = cf *CFrame.new(0,0,-10)
708+
709-
		for i = 1, 10 do
709+
710-
			rootpart.CFrame = cf:Lerp(endcf, i/10)
710+
711
		if taken then
712
			local sounds = {1847361832, 1847336300, 1847335241, 1847333723}
713
			soundeffect("rbxassetid://"..sounds[math.random(#sounds)], 1, 1, char.Torso, {ForceWait = true})
714
		else
715
			soundeffect("rbxassetid://1847362948", 1, 1, char.Torso, {ForceWait = true})
716
		end
717
		attacking = false
718
	end
719
end)
720
if settings.CustomAnim or true then
721
	if char:FindFirstChild("Animate") then
722
		char.Animate:Destroy()
723
	end
724
	for _,track in pairs(humanoid:GetPlayingAnimationTracks()) do
725
		track:Stop()
726
	end
727
	humanoid.Running:connect(function(ws)
728
		movespeed = ws
729
	end)
730
end
731
732
spawn(function()
733
repeat swait()
734
	local wall = workspace:FindPartOnRay(Ray.new(rootpart.Position, Vector3.new(0,0,-1).unit * 4), char) == nil
735
	local air = workspace:FindPartOnRay(Ray.new(rootpart.Position, Vector3.new(0,-1,0).unit * 4), char) == nil
736
	local tvel = rootpart.Velocity
737
	if air and tvel.Y > 0 then
738
		animpose = "Jump"
739
	end
740
	if air and tvel.Y < 0 then
741
		animpose = "Fall"
742
	end
743
	if not air and (math.abs(humanoid.MoveDirection.X)+math.abs(humanoid.MoveDirection.Z))>0 then
744
		animpose = "Walking"
745
	end
746
	if not air and animpose == "Walking" and movespeed > 16 then
747
		animpose = "Walking"--or Running
748
	end
749
	if not air and movespeed == 0 then
750
		animpose = "Idle"
751
	end
752
until not settings.CustomAnim
753
end)
754
for i,v in pairs(char:GetDescendants()) do
755
	pcall(function()
756-
	if hurt(hit, 0) then
756+
757-
		hit.Parent:Destroy()
757+
758-
		soundeffect(soundlist.OnDeath, 1, 1, char.Torso)
758+
759
760
local change = 5
761
local cos,rad,ang,cf = math.cos,math.rad,CFrame.Angles,CFrame.new
762
while swait() and settings.CustomAnim do
763
	local num = tick()*change
764
	if animpose == "Walking" then
765
	end
766
	if animpose == "Fall" then
767
	end
768
	if animpose == "Idle" then
769
	end
770
	if animpose == "Jump" then
771
	end
772
end