View difference between Paste ID: bLgepf50 and CDukHznV
SHOW: | | - or go back to the newest paste.
1-
--edit of this script is a cane? i have no idea what the name is
1+
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
2
local Player,Mouse,mouse,UserInputService,ContextActionService = owner
3-
--Owner of this edit = makhail07.... :)
3+
do
4
	print("FE Compatibility code by Mokiros")
5
	script.Parent = Player.Character
6
7
	--RemoteEvent for communicating
8-
warn('Press q For MAXIMUM OVERDRIVE/SPEEEEEEEEEEDBOOST')
8+
	local Event = Instance.new("RemoteEvent")
9-
warn('Press x For Mr KARBS')
9+
	Event.Name = "UserInput_Event"
10-
warn('Press b For Jelly Fishing')
10+
11-
warn('Press v For BEGONE')
11+
	--Fake event to make stuff like Mouse.KeyDown work
12-
warn('Press c For Catgroove')
12+
	local function fakeEvent()
13-
warn('Press r For Water......')
13+
		local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
14-
warn('Press p To End Your Life,I Dare You')
14+
		t.connect = t.Connect
15
		return t
16
	end
17
18
	--Creating fake input objects with fake variables
19-
p = game.Players.LocalPlayer
19+
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
20
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
21
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
22
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
23
	end}
24
	--Merged 2 functions into one by checking amount of arguments
25
	CAS.UnbindAction = CAS.BindAction
26
27
	--This function will trigger the events that have been :Connect()'ed
28
	local function te(self,ev,...)
29
		local t = m[ev]
30
		if t and t._fakeEvent and t.Function then
31
			t.Function(...)
32
		end
33
	end
34
	m.TrigEvent = te
35
	UIS.TrigEvent = te
36
37
	Event.OnServerEvent:Connect(function(Player,io)
38
	    if Player~=Player then return end
39
		if io.isMouse then
40
			m.Target = io.Target
41
			m.Hit = io.Hit
42
		else
43
			local b = io.UserInputState == Enum.UserInputState.Begin
44
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
45
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
46
			end
47
			for _,t in pairs(CAS.Actions) do
48
				for _,k in pairs(t.Keys) do
49
					if k==io.KeyCode then
50
						t.Function(t.Name,io.UserInputState,io)
51
					end
52
				end
53
			end
54
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
55-
-- Wait for character
55+
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
56-
repeat wait() until game.Players.LocalPlayer.Character ~= nil
56+
	    end
57
	end)
58
	Event.Parent = NLS([==[
59
	local Player = game:GetService("Players").LocalPlayer
60-
local plr = game:GetService("Players").LocalPlayer
60+
	local Event = script:WaitForChild("UserInput_Event")
61-
local char = plr.Character 
61+
62-
local plrgui = plr.PlayerGui 
62+
	local UIS = game:GetService("UserInputService")
63-
local backpack = plr.Backpack 
63+
	local input = function(io,a)
64
		if a then return end
65
		--Since InputObject is a client-side instance, we create and pass table instead
66
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
67
	end
68
	UIS.InputBegan:Connect(input)
69
	UIS.InputEnded:Connect(input)
70
71
	local Mouse = Player:GetMouse()
72
	local h,t
73
	--Give the server mouse data 30 times every second, but only if the values changed
74
	--If player is not moving their mouse, client won't fire events
75
	while wait(1/30) do
76
		if h~=Mouse.Hit or t~=Mouse.Target then
77
			h,t=Mouse.Hit,Mouse.Target
78
			Event:FireServer({isMouse=true,Target=t,Hit=h})
79
		end
80
	end]==],Player.Character)
81
	Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
82
end
83
84
-- Initial stuff
85
math.randomseed(tick())
86
87
p = owner
88
char049 = p.Character
89
90
char049.Shirt:Remove()
91
for i,v in pairs(char049:GetChildren()) do if v:IsA("Pants") then v:Remove() end end
92
wait()shirt = Instance.new("Shirt", char049)
93
shirt.Name = "Shirt"
94
pants = Instance.new("Pants", char049)
95
pants.Name = "Pants"
96
97
char049.Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=95257568"
98
char049.Pants.PantsTemplate = "http://www.roblox.com/asset/?id=95257568"
99
100
101
102
	local BC = char049["Body Colors"]
103
	BC.HeadColor = BrickColor.new("CGA brown")
104
	BC.LeftArmColor = BrickColor.new("CGA brown")
105
	BC.LeftLegColor = BrickColor.new("CGA brown")
106
	BC.RightArmColor = BrickColor.new("CGA brown")
107
	BC.RightLegColor = BrickColor.new("CGA brown")
108
	BC.TorsoColor = BrickColor.new("CGA brown")
109
110
111
112
human = char049:FindFirstChild("Humanoid")
113
human.MaxHealth, human.Health = math.huge,math.huge
114
115
116
sound222223444 = Instance.new("Sound",char049)
117
		sound222223444.SoundId = "rbxassetid://320522646"
118
		sound222223444.Volume = 50
119
120
121
122
123
124
-- Useful shortcuts
125
local Player = game:GetService("Players").LocalPlayer
126
local char = Player.Character 
127
local Playergui = Player.PlayerGui 
128
local backpack = Player.Backpack 
129
local torso = char.Torso 
130
local head = char.Head 
131
local hum = char.Humanoid
132
local larm = char["Left Arm"] 
133
local lleg = char["Left Leg"] 
134
local rarm = char["Right Arm"] 
135
local rleg = char["Right Leg"] 
136
local LS = torso["Left Shoulder"] 
137
local LH = torso["Left Hip"] 
138
local RS = torso["Right Shoulder"] 
139
local RH = torso["Right Hip"] 
140
local neck = torso.Neck
141
local it = Instance.new
142
local vt = Vector3.new
143
local cf = CFrame.new
144
local euler = CFrame.fromEulerAnglesXYZ
145
local angles = CFrame.Angles
146
local neckC0 = cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
147
local neckC1 = cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
148
local LSC0 = cf(-1.5,.5,0)
149
local LSC1 = cf(0,.5,0)
150
local RSC0 = cf(1.5,.5,0)
151
local RSC1 = cf(0,.5,0)
152
local LHC0 = cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
153
local LHC1 = cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
154
local RHC0 = cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
155
local RHC1 = cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
156
local RP = char.HumanoidRootPart
157
local RJ = RP.RootJoint
158
local RJC0 = euler(-1.57,0,3.14)
159
music = Instance.new("Sound",torso)
160
music.SoundId = "rbxassetid://662401724"
161
music.Looped = true
162
music.Volume = 3
163
music:Play()
164
human = char:FindFirstChild("Humanoid")
165
166
167
168
		sound22222243 = Instance.new("Sound",char)
169
		sound22222243.SoundId = "rbxassetid://306410328"
170
		sound22222243.Volume = 30
171
172
173
174
175
176
177
	local har2 = Instance.new("Part", char.Head)
178
		har2.BrickColor = BrickColor.new("Black")
179
		har2.Name = "Hair" 
180
		har2.formFactor = 0
181
		har2.Size = Vector3.new(0,-0.25,0) 
182
		har2.BottomSurface = 0 
183
		har2.TopSurface = 0 
184
		har2.CanCollide = false
185
		Mesh2 = Instance.new("SpecialMesh",har2)
186
        Mesh2.MeshId = "rbxassetid://1017165558"
187
Mesh2.TextureId = "rbxassetid://1017165624"
188
        Mesh2.Scale=Vector3.new(1.01, .99, 1.01)
189
        local bWeld2 = Instance.new("Weld", char.Head)
190
        bWeld2.Part0 = char.Head
191
        bWeld2.Part1 = har2
192
        bWeld2.C1 = CFrame.new(0,-.2,-.2)
193
194
195
local handee = Instance.new("Part")
196
handee.Parent = char049
197
handee.Size = Vector3.new(0.2,0.2,0.2)
198
handee.Archivable = true
199
handee.Transparency = 1
200
handee.CanCollide = false
201
handee.BrickColor = BrickColor.new("Really red")
202
handee.Material = "Neon"
203
local handeemesh = Instance.new("BlockMesh",handee)
204
handeemesh.Scale = Vector3.new(1,1,1)
205
local handeeweld = Instance.new("Weld")
206
handeeweld.Parent = handee
207
handeeweld.Part0 = larm
208
handeeweld.Part1 = handee
209
handeeweld.C1 = CFrame.new(0, 1.85, 0)*CFrame.Angles(math.rad(0),math.rad(0),math.rad(0))
210
		handeeweld.Part0 = larm
211-
	mouse = plr:GetMouse()
211+
212
213
214
local particleemitter3 = Instance.new("ParticleEmitter", handee)
215
particleemitter3.VelocitySpread = 180
216
particleemitter3.Lifetime = NumberRange.new(2)
217
particleemitter3.Texture = "http://roblox.com/asset/?id=284205403"
218
particleemitter3.Speed = NumberRange.new(0.5)
219
particleemitter3.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(1, 1)})
220
particleemitter3.RotSpeed = NumberRange.new(-45, 45)
221
particleemitter3.Rate = 40
222
particleemitter3.Rotation = NumberRange.new(-45, 45)
223
particleemitter3.Acceleration = Vector3.new(0,3,0)
224
particleemitter3.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(0.701, 0), NumberSequenceKeypoint.new(1, 1)})
225
particleemitter3.LightEmission = 0.8
226
particleemitter3.Color = ColorSequence.new(Color3.new(224, 0, 255), Color3.new(255,0,124))
227
228
particleemitter3.Enabled = true
229
230
231
232
233
	local har3 = Instance.new("Part", char.Head)
234
		har3.BrickColor = BrickColor.new("Black")
235
		har3.Name = "Hair" 
236
		har3.formFactor = 0
237
		har3.Size = Vector3.new(0,-0.25,0) 
238
		har3.BottomSurface = 0 
239
		har3.TopSurface = 0 
240
		har3.CanCollide = false
241
		Mesh3 = Instance.new("SpecialMesh",har3)
242
        Mesh3.MeshId = "rbxassetid://1018860047"
243
        Mesh3.Scale=Vector3.new(1.01, .99, 1.01)
244
        local bWeld = Instance.new("Weld", char.Head)
245
        bWeld.Part0 = char.Head
246
        bWeld.Part1 = har3
247
        bWeld.C1 = CFrame.new(0,-.1,.3)
248
249
250
251
252
253
head.face:Destroy()
254
255
-- Build the weapon
256
local build = function()
257
	local model = Instance.new("Model")
258
	model.Name = "Cane"
259
	local handle = Instance.new("Part", model)
260
	handle.FormFactor = Enum.FormFactor.Symmetric
261
	handle.CanCollide = false
262
	handle.Size = Vector3.new(1,1,3)
263
	handle.Name = "Handle"
264
	local mesh = Instance.new("SpecialMesh",handle)
265
	mesh.Scale = Vector3.new(1,1,0.69999998807907)
266
	mesh.MeshId = "http://www.roblox.com/asset/?id=25628815"
267
	mesh.TextureId = "http://www.roblox.com/asset/?id=25629094"
268
	mesh.MeshType = Enum.MeshType.FileMesh
269
	return model
270
end
271
272
273
-- Wait for mouse
274
local mouse
275
while true do
276
	if mouse then break end
277
	wait(.1)
278
end
279
280
281
		for i,v in pairs(char:children()) do
282
    if v:IsA("Hat") then
283
        v:Destroy()
284
    end
285
for i,v in pairs(char:children()) do
286
    if v:IsA("Accessory") then
287
        v:Destroy()
288
    end
289
end
290
		end
291
292
293
294
		local har1 = Instance.new("Part", char.Head)
295
		har1.BrickColor = BrickColor.new("Black")
296
		har1.Name = "Hair" 
297
		har1.formFactor = 0
298
		har1.Size = Vector3.new(0,-0.25,0) 
299
		har1.BottomSurface = 0 
300
		har1.TopSurface = 0 
301
		har1.CanCollide = false
302
		Mesh = Instance.new("SpecialMesh",har1)
303
        Mesh.MeshId = "rbxassetid://503202422"
304
        Mesh.TextureId = "rbxassetid://503202424"
305
        Mesh.Scale=Vector3.new(1.01, .99, 1.01)
306
        local bWeld = Instance.new("Weld", char.Head)
307
        bWeld.Part0 = char.Head
308
        bWeld.Part1 = har1
309
        bWeld.C1 = CFrame.new(0,-.5,-.1)
310
311
312
313
sound2222233 = Instance.new("Sound",char)
314
sound2222233.SoundId = "rbxassetid://811963661"
315
sound2222233.Volume = 30
316
317
---- [[ Left Eye]] ----
318
319
eye1 = Instance.new("Part", workspace)
320
eye1.Anchored = false
321
eye1.Parent = head
322
eye1.TopSurface = 0
323
eye1.BrickColor = BrickColor.new("Black")
324
eye1.BottomSurface = 0
325
eye1m = Instance.new("SpecialMesh", eye1)
326
eye1m.MeshType = Enum.MeshType.Sphere
327
eye1m.Scale = Vector3.new(0.02,0.12,0.03)
328
ogsize = eye1m.Scale
329
weld = Instance.new("Weld", head)
330
weld.Part0 = eye1
331
weld.Part1 = head
332
weld.C1 = CFrame.new(-.17,.14,-.57)
333
334
335
336
---- [[ Right Eye ]] ----
337
338
339
eye2 = Instance.new("Part", workspace)
340
eye2.Anchored = false
341
eye2.Parent = head
342
eye2.TopSurface = 0
343
eye2.BrickColor = BrickColor.new("Black")
344
eye2.BottomSurface = 0
345
eye2m = Instance.new("SpecialMesh", eye2)
346
eye2m.MeshType = Enum.MeshType.Sphere
347
eye2m.Scale = Vector3.new(0.02,0.12,0.03)
348
ogsize = eye2m.Scale
349
weld = Instance.new("Weld", head)
350
weld.Part0 = eye2
351
weld.Part1 = head
352
weld.C1 = CFrame.new(.17,.14,-.57)
353
354
355
356
-- Create welds 
357
local RW, LW = Instance.new("Weld",torso), Instance.new("Weld",torso)
358
RW.Name = "Right Weld" LW.Name = "Left Weld"
359
RW.Part0 = torso LW.Part0 = torso
360
RW.C0 = RSC0 RW.C1 = RSC1 LW.C0 = LSC0 LW.C1 = LSC1
361
362
363
-- Attach weapon
364
local canemodel = build()
365
local cane = canemodel:FindFirstChild("Handle")
366
canemodel.Parent = char
367
local caneweld = Instance.new("Weld", rarm)
368
caneweld.Part0 = rarm
369
caneweld.Part1 = cane
370
caneweldC0 = caneweld.C0 * CFrame.new(0,-1,1) * CFrame.Angles(math.rad(180),0,math.rad(90))
371
caneweld.C0 = caneweldC0
372
--------------------------------------------------------------------------------------------
373
374
-- Weapon variables
375
local caneEnd = cf(-.225,0,-1.5)
376
377
378
-- Sound effects
379
local sounds = {}
380
sounds.explosion = "http://www.roblox.com/asset/?id=87784452"
381
sounds.bewm = "http://www.roblox.com/asset/?id=2767090"
382
sounds.slice = "http://www.roblox.com/asset/?id=161006195"
383
sounds.charge = "http://roblox.com/asset/?id=2101137"
384
sounds.sharpblast = "http://roblox.com/asset/?id=2248511"
385
sounds.woosh = "http://roblox.com/asset/?id=147722227"
386
sounds.metalhit = "http://roblox.com/asset/?id=153092348"
387
sounds.mechblast = "http://roblox.com/asset/?id=169380505"
388
sounds.chargepulse = "http://roblox.com/asset/?id=10209296"
389
sounds.heal = "http://roblox.com/asset/?id=2101144"
390
sounds.zap = "http://roblox.com/asset/?id=10756104"
391
sounds.powernote = "http://roblox.com/asset/?id=192603389"
392
sounds.swing = "http://roblox.com/asset/?id=10209640"
393
sounds.hit = "http://roblox.com/asset/?id=10209590"
394
395
396
-- Base functions
397
local wait = function(t)
398
    if t ~= nil then
399
        return wait(t)
400
    else
401
        local t = tick()
402
        game:GetService("RunService").RenderStepped:wait()
403
        return tick() - t, time()
404
    end
405
end
406
local nolines = function(p)
407
	p.TopSurface, p.BottomSurface, p.LeftSurface, p.RightSurface, p.FrontSurface, p.BackSurface = 10, 10, 10, 10, 10, 10
408
end
409
local part = function(formfactor,parent,reflectance,transparency,brickcolor,name,size)
410
	local fp = it("Part")
411
	fp.formFactor = formfactor 
412
	fp.Parent = parent
413
	fp.Reflectance = reflectance
414
	fp.Transparency = transparency
415
	fp.CanCollide = false 
416
	fp.Locked = true
417
	fp.BrickColor = brickcolor
418
	fp.Name = name
419
	fp.Size = size
420
	fp.Position = torso.Position 
421
	fp.Material = "SmoothPlastic"
422
	fp:BreakJoints()
423
	nolines(fp)
424
	return fp 
425
end 
426
local mesh = function(instance,part,meshtype,meshid,offset,scale)
427
	local mesh = it(instance) 
428
	mesh.Parent = part
429
	if instance == "SpecialMesh" then
430
		mesh.MeshType = meshtype
431
		if meshid ~= nil then
432
			mesh.MeshId = "http://www.roblox.com/asset/?id="..meshid
433
		end
434
	end
435
	mesh.Offset=offset
436
	mesh.Scale=scale
437
	return mesh
438
end
439
local weld = function(parent,part0,part1,c0)
440
	local weld = it("Weld") 
441
	weld.Parent = parent
442
	weld.Part0 = part0 
443
	weld.Part1 = part1 
444
	weld.C0 = c0
445
	return weld
446
end
447
local rayCast = function(Pos, Dir, Max, Ignore)  -- Origin Position , Direction, MaxDistance , IgnoreDescendants
448
	return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore) 
449
end
450
local rad = function(x,y,z)
451
	return euler(math.rad(x or 0),math.rad(y or 0),math.rad(z or 0))
452
end
453
local random = function(a, b)
454
	local num = math.random(a*100, b*100)
455
	return num/100
456
end
457
local randomRot = function()
458
	return rad(random(0,360),random(0,360),random(0,360))
459
end
460
local sound = function(id, par, vol, pit) 
461
	coroutine.resume(coroutine.create(function()
462
		local sou = Instance.new("Sound", par or workspace)
463
		sou.Volume = vol
464
		sou.Pitch = pit or 1
465
		sou.SoundId = id
466
		wait() 
467
		sou:play() 
468
		game:GetService("Debris"):AddItem(sou, 6)
469
	end))
470
end
471
local damage = function(hit, minim, maxim, knockback, Type, Property, Delay, KnockbackType, incstun, stagger, staghit, ranged)
472
	-- Fen's nasty and messy damage function
473
	if hit.Parent == nil then
474
		return
475
	end
476
	local h = hit.Parent:FindFirstChild("Humanoid")
477
	for _, v in pairs(hit.Parent:children()) do
478
		if v:IsA("Humanoid") then
479
			h = v
480
		end
481
	end
482
	if hit.Parent.Parent:FindFirstChild("Torso") ~= nil then
483
		h = hit.Parent.Parent:FindFirstChild("Humanoid")
484
	end
485
	if hit.Parent.className == "Hat" then
486
		hit = hit.Parent.Parent:findFirstChild("Head")
487
	end
488
	if h ~= nil and hit.Parent.Name ~= char.Name and hit.Parent:FindFirstChild("Torso") ~= nil then
489
		if hit.Parent:findFirstChild("DebounceHit") ~= nil then
490
			if hit.Parent.DebounceHit.Value == true then
491
				return
492
			end
493
		end
494
		local c = Instance.new("ObjectValue")
495
		c.Name = "creator"
496
		c.Value = game:service("Players").LocalPlayer
497
		c.Parent = h
498
		game:GetService("Debris"):AddItem(c, .5)
499
		local Damage = random(minim, maxim)
500
		local blocked = false
501
		local enblock = nil
502
		local Stats = hit.Parent:findFirstChild("Stats")
503
		if Stats ~= nil then
504
			enblock = Stats:findFirstChild("Block")
505
			if Stats:findFirstChild("Defense") ~= nil then
506
				Damage = Damage / Stats.Defense.Value
507
			end
508
			if Stats:findFirstChild("Stun") ~= nil then
509
				Stats.Stun.Value = Stats.Stun.Value + incstun
510
			end
511
			if Stats:findFirstChild("Stagger") ~= nil then
512
				if stagger == true then
513
					Stats.Stagger.Value = true
514
				end
515
			end
516
		end
517
		if enblock ~= nil then
518-
		c.Value = plr
518+
519
				blocked = true
520
			end
521
		end
522
		if blocked == true then
523
			if ranged ~= true then
524
				enblock.Value = false
525
			end
526
		else
527
			Damage = math.floor(Damage)
528
			print("dam"..Damage)
529
			sound(sounds.hit, hit, 1, 1)
530
			h.Health = h.Health - Damage
531
			if Type == "Knockdown" then
532
				local hum = hit.Parent.Humanoid
533
				hum.PlatformStand = true
534
				coroutine.resume(coroutine.create(function(HHumanoid)
535
					wait()
536
					HHumanoid.PlatformStand = false
537
				end), hum)
538
				local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
539
				local bodvol = Instance.new("BodyVelocity")
540
				bodvol.velocity = angle * knockback
541
				bodvol.P = 5000
542
				bodvol.maxForce = Vector3.new(math.huge, math.huge, math.huge)
543
				bodvol.Parent = hit
544
				local rl = Instance.new("BodyAngularVelocity")
545
				rl.P = 3000
546
				rl.maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000
547
				rl.angularvelocity = Vector3.new(random(-10, 10), random(-10, 10), random(-10, 10))
548
				rl.Parent = hit
549
				game:GetService("Debris"):AddItem(bodvol, .5)
550
				game:GetService("Debris"):AddItem(rl, .5)
551
			elseif Type == "Knockdown2" then
552
				local hum = hit.Parent.Humanoid
553
				local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit
554
				local bodvol = Instance.new("BodyVelocity")
555
				bodvol.velocity = angle * knockback
556
				bodvol.P = 5000
557
				bodvol.maxForce = Vector3.new(math.huge, math.huge, math.huge)
558
				bodvol.Parent = hit
559
				game:GetService("Debris"):AddItem(bodvol, .5)
560
			elseif Type == "Normal" or Type == "NormalDecreaseMvmt1" then
561
				local vp = Instance.new("BodyVelocity")
562
				vp.P = 500
563
				vp.maxForce = Vector3.new(math.huge, 0, math.huge)
564
				if KnockbackType == 1 then
565
					vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
566
				elseif KnockbackType == 2 then
567
					vp.velocity = Property.CFrame.lookVector * knockback
568
				end
569
				game:GetService("Debris"):AddItem(vp, .5)
570
				if knockback > 0 then
571
					vp.Parent = hit.Parent.HumanoidRootPart,head,larm,rarm,lleg,rleg
572
				end
573
			end
574
		end
575
		local debounce = Instance.new("BoolValue")
576
		debounce.Name = "DebounceHit"
577
		debounce.Parent = hit.Parent
578
		debounce.Value = true
579
		game:GetService("Debris"):AddItem(debounce, Delay)
580
		c = Instance.new("ObjectValue")
581
		c.Name = "creator"
582
		c.Value = Player
583
		c.Parent = h
584
		game:GetService("Debris"):AddItem(c, .5)
585
	end
586
end
587
local fade = function(prt, t) 
588
	coroutine.resume(coroutine.create(function()
589
		for i = 0, 1, t do
590
			wait(0)
591
			prt.Transparency = i
592
		end
593
		wait(0)
594
		prt:destroy()
595
	end))
596
end
597
local block1 = function(prt, delay, x, y, z, msh)
598
	coroutine.resume(coroutine.create(function()
599
		for i = 0, 1, delay do
600
			wait(0)
601
			prt.CFrame = prt.CFrame * euler(random(-50, 50), random(-50, 50), random(-50, 50))
602
			local Mesh = msh
603
			Mesh.Scale = Mesh.Scale + vt(x, y, z)
604
			prt.Transparency = i
605
		end
606
		wait(0)
607
		prt:destroy()
608
	end))
609
end
610
local block2 = function(prt, delay, x, y, z, msh)
611
	coroutine.resume(coroutine.create(function()
612
		for i = 0, 1, delay do
613
			wait(0)
614
			local Mesh = msh
615
			Mesh.Scale = Mesh.Scale + vt(x, y, z)
616
			prt.Transparency = i
617
		end
618
		wait(0)
619
		prt:destroy()
620
	end))
621
end
622
local cyleffect = function(prt, delay, x, y, z, msh)
623
	coroutine.resume(coroutine.create(function()
624
		for i = 0, 1, delay do
625
			wait(0)
626
			local Mesh = msh
627
			Mesh.Scale = Mesh.Scale + vt(x, y, z)
628
			prt.Transparency = i
629
		end
630
		wait(0)
631
		prt:destroy()
632
	end))
633
end
634
local CFrameFromTopBack = function(at, top, back)
635
	local right = top:Cross(back)
636
	return CFrame.new(at.x, at.y, at.z,
637
		right.x, top.x, back.x,
638
		right.y, top.y, back.y,
639
		right.z, top.z, back.z)
640
end
641
local triangle = function(a, b, c)
642
	local edg1 = (c - a):Dot((b - a).unit)
643
	local edg2 = (a - b):Dot((c - b).unit)
644
	local edg3 = (b - c):Dot((a - c).unit)
645
	if edg1 <= (b - a).magnitude and edg1 >= 0 then
646
		a, b, c = a, b, c
647
	elseif edg2 <= (c - b).magnitude and edg2 >= 0 then
648
		a, b, c = b, c, a
649
	elseif edg3 <= (a - c).magnitude and edg3 >= 0 then
650
		a, b, c = c, a, b
651
	else 
652
		assert(false, "unreachable")
653
	end
654
	local len1 = (c - a):Dot((b - a).unit)
655
	local len2 = (b - a).magnitude - len1
656
	local width = (a + (b - a).unit * len1 - c).magnitude
657
	local maincf = CFrameFromTopBack(a, (b - a):Cross(c - b).unit, -(b - a).unit)
658
	local list = {}
659
	if len1 > 0.01 then
660
		local w1 = Instance.new('WedgePart', m)
661
		game:GetService("Debris"):AddItem(w1, 5)
662
		w1.Material = "SmoothPlastic"
663
		w1.FormFactor = 'Custom'
664
		w1.BrickColor = BrickColor.new("Bright red")
665
		w1.Transparency = 0
666
		w1.Reflectance = 0
667
		w1.Material = "SmoothPlastic"
668
		w1.CanCollide = false
669
		nolines(w1)
670
		local sz = Vector3.new(0.2, width, len1)
671
		w1.Size = sz
672
		local sp = Instance.new("SpecialMesh", w1)
673
		sp.MeshType = "Wedge"
674
		sp.Scale = Vector3.new(0, 1, 1) * sz / w1.Size
675
		w1:BreakJoints()
676
		w1.Anchored = true
677
		w1.Parent = workspace
678
		w1.Transparency = 0.7
679
		fade(w1)
680
		w1.CFrame = maincf * CFrame.Angles(math.pi, 0, math.pi / 2) * CFrame.new(0, width / 2, len1 / 2)
681
		table.insert(list, w1)
682
	end
683
	if len2 > 0.01 then
684
		local w2 = Instance.new('WedgePart', m)
685
		game:GetService("Debris"):AddItem(w2, 5)
686
		w2.Material = "SmoothPlastic"
687
		w2.FormFactor = 'Custom'
688
		w2.BrickColor = BrickColor.new("Bright red")
689
		w2.Transparency = 0
690
		w2.Reflectance = 0
691
		w2.Material = "SmoothPlastic"
692
		w2.CanCollide = false
693
		nolines(w2)
694
		local sz = Vector3.new(0.2, width, len2)
695
		w2.Size = sz
696
		local sp = Instance.new("SpecialMesh", w2)
697
		sp.MeshType = "Wedge"
698
		sp.Scale = Vector3.new(0, 1, 1) * sz / w2.Size
699
		w2:BreakJoints()
700
		w2.Anchored = true
701
		w2.Parent = workspace
702
		w2.Transparency = 0.7
703
		fade(w2)
704
		w2.CFrame = maincf * CFrame.Angles(math.pi, math.pi, -math.pi / 2) * CFrame.new(0, width / 2, -len1 - len2 / 2)
705
		table.insert(list, w2)
706
	end
707
	return unpack(list)
708
end
709
710
sound2222224 = Instance.new("Sound",char)
711
		sound2222224.SoundId = "rbxassetid://670444721"
712
		sound2222224.Volume = 30
713
-- Magic effects
714
local magic = {}
715
magic.stravant = function(brickcolor, cframe, x, y, z, x1, y1, z1, delay)
716
	local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt(0.5, 0.5, 0.5))
717
	prt.Anchored = true
718
	prt.CFrame = cframe * cf(x, y, z)
719
	local msh = mesh("SpecialMesh", prt, "FileMesh", "rbxassetid://168892363", vt(0, 0, 0), vt(x1, y1, z1))
720
	game:GetService("Debris"):AddItem(prt, 5)
721
	coroutine.resume(coroutine.create(function(Part, Mesh, ex, why, zee) 
722
		local num = random()
723
		local num2 = random(-3, 2) + random()
724
		local numm = 0
725
		for i = 0, 1, delay * 2 do
726
			wait()
727
			Part.CFrame = cframe * euler(0, numm * num * 10, 0) * cf(ex, why, zee) * cf(-i * 10, num2, 0)
728
			Part.Transparency = i
729
			numm = numm + 0.01
730
		end
731
		Part.Parent = nil
732
		Mesh.Parent = nil
733
	end), prt, msh, x, y, z)
734
end
735
magic.block = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type, par)
736
	local prt = part(3, par or workspace, 0, 0, brickcolor, "Effect", vt())
737
	prt.Anchored = true
738
	prt.CFrame = cframe
739
	local msh = mesh("BlockMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
740
	game:GetService("Debris"):AddItem(prt, 5)
741
	if Type == 1 or Type == nil then
742
		block1(prt, delay, x3, y3, z3, msh)
743
	elseif Type == 2 then
744
		block2(prt, delay, x3, y3, z3, msh)
745
	end
746
end
747
magic.circle = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, par)
748
	local prt = part(3, par or workspace, 0, 0, brickcolor, "Effect", vt())
749
	prt.Anchored = true
750
	prt.CFrame = cframe
751
	local msh = mesh("SpecialMesh", prt, "Sphere", nil, vt(0, 0, 0), vt(x1, y1, z1))
752
	game:GetService("Debris"):AddItem(prt, 2)
753
	cyleffect(prt, delay, x3, y3, z3, msh)
754
end
755
magic.cylinder = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
756
	local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
757
	prt.Anchored = true
758
	prt.CFrame = cframe
759
	local msh = mesh("CylinderMesh", prt, "", "", vt(0, 0, 0), vt(x1, y1, z1))
760
	game:GetService("Debris"):AddItem(prt, 2)
761
	cyleffect(prt, delay, x3, y3, z3, msh)
762
end
763
magic.head = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
764
	local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
765
	prt.Anchored = true
766
	prt.CFrame = cframe
767
	local msh = mesh("SpecialMesh", prt, "Head", nil, vt(0, 0, 0), vt(x1, y1, z1))
768
	game:GetService("Debris"):AddItem(prt, 2)
769
	cyleffect(prt, delay, x3, y3, z3, msh)
770
end
771
magic.wave = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay)
772
	local prt = part(3, workspace, 0, 0, brickcolor, "Effect", vt())
773
	prt.Anchored = true
774
	prt.CFrame = cframe
775
	local msh = mesh("SpecialMesh", prt, "FileMesh", "http://www.roblox.com/asset/?id=20329976", vt(0, 0, 0), vt(x1, y1, z1))
776
	game:GetService("Debris"):AddItem(prt, 5)
777
	cyleffect(prt, delay, x3, y3, z3, msh)
778
end
779
magic.lightning = function(p0, p1, tym, ofs, col, th, tra, last, par)
780
	local magz = (p0 - p1).magnitude
781
	local curpos = p0
782
	local trz = {
783
		-ofs,
784
		ofs
785
	}
786
	for i = 1, tym do 
787
		local li = Instance.new("Part", par or workspace)
788
		li.TopSurface = 0
789
		li.BottomSurface = 0
790
		li.Anchored = true
791
		li.Transparency = tra or 0.4
792
		li.BrickColor = BrickColor.new(col)
793
		li.Material = "Neon"
794
		li.formFactor = "Custom"
795
		li.CanCollide = false
796
		li.Size = Vector3.new(th, th, magz / tym)
797
		local ofz = Vector3.new(random(trz[1],trz[2]), random(trz[1],trz[2]), random(trz[1],trz[2])) 
798
		local trolpos = CFrame.new(curpos, p1) * CFrame.new(0, 0, magz / tym).p + ofz
799
		if tym == i then 
800
			local magz2 = (curpos - p1).magnitude
801
			li.Size = Vector3.new(th, th, magz2)
802
			li.CFrame = CFrame.new(curpos, p1) * CFrame.new(0, 0, -magz2 / 2)
803
		else
804
			li.CFrame = CFrame.new(curpos, trolpos) * CFrame.new(0, 0, magz / tym / 2)
805
		end
806
		curpos = li.CFrame * CFrame.new(0, 0, magz / tym / 2).p
807
		game.Debris:AddItem(li, last)
808
	end
809
end
810
811
812
-- Logic variables
813
local equipped = false
814
local attacking = false
815
816
-- Effect handling
817
local charfx = Instance.new("Model", char)
818
charfx.Name = "Effects"
819
local toggles = {
820
	snow = false;
821
	lmagic = false;
822
	rmagic = false;
823
	canemagic = false;
824
}
825
local snowTick = 0
826
local lmagicTick = 0
827
local rmagicTick = 0
828
local canemagicTick = 0
829
local snowMeshes = {
830
	"rbxassetid://434057826";
831
	"rbxassetid://434057826";
832
	"rbxassetid://434057826";
833
	
834
}
835
836
-- Pose system
837
local poses = {
838
	none = {
839
		larm = euler(0, 0, 0);
840
		rarm = euler(0, 0, 0);
841
		lleg = euler(0, 0, 0);
842
		rleg = euler(0, 0, 0);
843
		torso = euler(0, 0, 0);
844
		head = euler(0, 0, 0);
845
		cane = euler(0, 0, 0);
846
	}
847
}
848
local pose = "none"
849
local posespeed = .1
850
local newpose = function(name, larm, rarm, torso, head, lleg, rleg, cane)
851
	poses[name] = {
852
		larm = larm or rad();
853
		rarm = rarm or rad();
854
		lleg = lleg or rad();
855
		rleg = rleg or rad();
856
		torso = torso or rad();
857
		head = head or rad();
858
		cane = cane or rad();
859
	}
860
end
861
local setpose = function(name, speed)
862
	posespeed = speed or 1
863
	pose = name or "none"
864
end
865
game:GetService("RunService").RenderStepped:connect(function()
866
	local vel = (RP.Velocity*Vector3.new(1,0,1)).magnitude
867
	local yvel = RP.Velocity.y
868
	local hitfloor,posfloor=rayCast(RP.Position,(CFrame.new(RP.Position,RP.Position - Vector3.new(0,1,0))).lookVector,4,char)
869
	if yvel > 1 and hitfloor == nil and equipped and not attacking then 
870
		setpose("jumping",.2)
871
	elseif yvel < -1 and hitfloor == nil and equipped and not attacking then
872
		setpose ("falling",.075)
873
	elseif vel < 1 and hitfloor ~= nil and equipped and not attacking then
874
		setpose("idle",.1)
875
	elseif vel > 2 and vel < 22 and hitfloor ~= nil and equipped and not attacking then
876
		setpose("walking",.1)
877
	end
878
	if poses[pose] ~= nil then
879
		local pose = poses[pose]
880
		LW.C0 = LW.C0:lerp(LSC0 * pose.larm, posespeed)
881
		RW.C0 = RW.C0:lerp(RSC0 * pose.rarm, posespeed)
882
		LH.C0 = LH.C0:lerp(LHC0 * pose.lleg, posespeed)
883
		RH.C0 = RH.C0:lerp(RHC0 * pose.rleg, posespeed)
884
		RJ.C0 = RJ.C0:lerp(RJC0 * pose.torso, posespeed)
885
		neck.C0 = neck.C0:lerp(neckC0 * pose.head, posespeed)
886
		caneweld.C0 = caneweld.C0:lerp(caneweldC0 * pose.cane, posespeed)
887
	end
888
	if toggles.snow == true then
889
		if snowTick % 15 == 0 then
890
			local p = Instance.new("Part")
891
			local m = Instance.new("SpecialMesh", p)
892
			m.MeshId = snowMeshes[math.random(1, #snowMeshes)]
893
			m.TextureId = "rbxassetid://434057827"
894
			m.Scale = Vector3.new(2,2,2)
895
		    local q = Instance.new("BodyVelocity")
896
			p.BrickColor = BrickColor.new("Hot pink")
897
			p.Parent = charfx
898
			p.Shape = 1
899
			p.Size = Vector3.new(.5, .5, .5)
900
			p.Transparency = .3
901
			p.Locked = true
902
			p.Anchored = false
903
			p.CanCollide = false
904
			p.formFactor = "Plate"
905
			p.CFrame = torso.CFrame * cf(Vector3.new((random(-75, 75)),50,(random(-75,75)))) * randomRot()
906
		    q.velocity = Vector3.new(0, -10, 0)
907
		    q.Parent = p
908
			p.Touched:connect(function()
909
				p:destroy()
910
			end)
911
		end
912
		snowTick = snowTick + 1
913
	end
914
	if toggles.lmagic then
915
		if lmagicTick % 15 == 0 then
916
			magic.block(BrickColor.new("Hot pink"),larm.CFrame*cf(0,-1,0),1,1,1,.5,.5,.5,.065,nil,charfx)
917
		end
918
		lmagicTick = lmagicTick + 1
919
	end
920
	if toggles.rmagic then
921
		if rmagicTick % 15 == 0 then
922
			magic.block(BrickColor.new("Hot pink"),rarm.CFrame*cf(0,-1,0),1,1,1,.5,.5,.5,.065,nil,charfx)
923
		end
924
		rmagicTick = rmagicTick + 1
925
	end
926
	if toggles.canemagic then
927
		if canemagicTick % 15 == 0 then
928
			magic.block(BrickColor.new("Hot pink"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
929
		end
930
		canemagicTick = canemagicTick + 1
931
	end
932
end)
933
human = char:FindFirstChild("Humanoid")
934
human.MaxHealth, human.Health = math.huge,math.huge
935
936
m=Instance.new("ForceField", char)
937
m.Visible = false
938
939
940
941
local HBill = Instance.new("BillboardGui", head)
942
local HMain, HBarBack, HBar = Instance.new("Frame", HBill), Instance.new("Frame"), Instance.new("Frame")
943
local HHealth, HName = Instance.new("TextLabel", HBarBack), Instance.new("TextLabel")
944
HBill.Size = UDim2.new(15,0,2.2,0)
945
HBill.Name = "Health Display"
946
HBill.StudsOffset = Vector3.new(0,4,0)
947
HBill.AlwaysOnTop = true
948
HBill.Enabled = true
949
HMain.BackgroundColor3 = Color3.new(255,255,255  )
950
HMain.BackgroundTransparency = 0.6
951
HMain.Size = UDim2.new(1,0,1,0)
952
HBarBack.Parent = HMain
953
HBarBack.BackgroundColor3 = Color3.new(137,137,137)
954
HBarBack.BorderColor3 = Color3.new(0,0,0)
955
HBarBack.BorderSizePixel = 2
956
HBarBack.Position = UDim2.new(.025, 0, .55, 0)
957
HBarBack.Size = UDim2.new(.95, 0, .3, 0)
958
HHealth.BackgroundTransparency = 1
959
HHealth.Size = UDim2.new(1,0,1,0)
960
HHealth.Font = "Bodoni"
961
HHealth.Text = "Script by xdielivex"
962
HHealth.TextScaled = true
963
HHealth.TextColor3 = Color3.new(1,1,1)
964
HHealth.TextStrokeColor3 = BrickColor.new("Hot pink").Color
965
HHealth.TextStrokeTransparency = 0
966
HName.Parent = HMain
967
HName.BackgroundTransparency = 1
968
HName.Size = UDim2.new(1,0,.5,0)
969
HName.Font = "Code"
970
HName.Text = "THE TRUE JELLYFISHER"
971
HName.TextScaled = true
972
HName.TextColor3 = BrickColor.new("Toothpaste").Color
973
HName.TextStrokeColor3 = Color3.new(255,0,124)
974
HName.TextStrokeTransparency = 0
975
HName.TextYAlignment = "Top"
976
-- Weapon setup
977
local bin = Instance.new("HopperBin",backpack)
978
bin.Name = "Cane"
979
script.Parent = bin
980
981
-- Weapon poses
982
newpose("idle", rad(-5,5,0), rad(0,0,50), rad(0,-2,-15), rad(0,-3,15), rad(0,15,0), rad(0,15,0), rad(90,-45,170)*CFrame.new(0,-1,-1.5))
983
newpose("jumping", rad(-20, 0, -10), rad(-20, 0, 10), rad(-10, 0, 0), rad(0, 0, 0), rad(0, 0, 15), rad(0, 0, 0)*CFrame.new(.35,.35,0))
984
newpose("falling", rad(0, 0, -50), rad(0, 0, 50), rad(0, 0, 0), rad(20, 0, 0), rad(0, 0, 0), rad(0, 0, 0)*CFrame.new(.15,.15,0))
985
newpose("walking", rad(-5,5,-15), rad(-20,0,20), rad(5,0,0), rad(0,0,0), rad(0,0,0), rad(0,0,0))
986
987
-- Attack poses
988
newpose("larmcharge", rad(0,-15,-135), rad(0,0,50), rad(0,-2,-15), rad(-15,-15,50), rad(0,15,0), rad(0,15,0), rad(90,-45,170)*CFrame.new(0,-1,-1.5))
989
newpose("canecharge", rad(45,0,30), rad(0,0,150), rad(0,0,-35), rad(-20,0,0), rad(0,35,0), rad(0,35,0), rad(90,-135,170)*CFrame.new(0,-1,-1.5))
990
newpose("clickattack1_1", rad(20,0,15), rad(0,-15,125), rad(0,-2,-35), rad(0,-3,35), rad(0,35,0), rad(0,35,0), rad(90,-165,180)*CFrame.new(0,-1,-1.5))
991
newpose("clickattack1_2", rad(-20,0,-15), rad(0,100,65), rad(0,-2,45), rad(10,-10,-25), rad(0,-45,0), rad(0,-45,0), rad(90,-110,180)*CFrame.new(0,-1,-1.5))
992
newpose("clickattack2_1", rad(-45,0,-45), rad(0,150,65), rad(0,-2,65), rad(10,-10,-45), rad(0,-65,0), rad(0,-65,0), rad(90,-135,180)*CFrame.new(0,-1,-1.5))
993
newpose("clickattack2_2", rad(-15,0,-60), rad(0,-15,70), rad(0,-2,-35), rad(0,-3,35), rad(0,35,0), rad(0,35,0), rad(90,-110,180)*CFrame.new(0,-1,-1.5))
994
newpose("clickattack3_1", rad(-15,0,-60), rad(0,-15,125), rad(0,-2,-45), rad(0,-3,45), rad(0,45,0), rad(0,45,0), rad(90,-165,180)*CFrame.new(0,-1,-1.5))
995
newpose("clickattack3_2", rad(-20,0,-75), rad(-90,0,110), rad(0,0,75), rad(10,-10,-60), rad(0,-80,30), rad(0,-80,0), rad(90,-90,180)*CFrame.new(0,-1,-1.5))
996
newpose("clickattack4_1", rad(0,0,-90), rad(0,0,125), rad(0,0,-90), rad(0,0,90), rad(0,35,0), rad(0,35,0), rad(90,-165,180)*CFrame.new(0,-1,-1.5))
997
newpose("clickattack4_2", rad(0,0,-135), rad(0,0,125), rad(0,0,-90), rad(0,0,90), rad(0,35,0), rad(0,35,0), rad(90,-165,180)*CFrame.new(0,-1,-1.5))
998
999
-- Weapon usage (edit to liking)
1000
local equip = function()
1001
	equipped = true
1002
	if attacking then
1003
		repeat
1004
			wait()
1005
		until not attacking
1006
	end
1007
	attacking = true
1008
	if not equipped then
1009
		attacking = false
1010
		return
1011
	end
1012
	LW.Part1 = larm
1013
	RW.Part1 = rarm
1014
	LS.Part1 = nil
1015
	RS.Part1 = nil
1016
	attacking = false
1017
	setpose("idle", .085)
1018
end
1019
local unequip = function()
1020
	equipped = false
1021
	if attacking then
1022
		repeat
1023
			wait()
1024
		until not attacking
1025
	end
1026
	if equipped then
1027
		return
1028
	end
1029
	setpose("none", .1)
1030
	wait(.65)
1031
	if equipped then
1032
		return
1033
	end
1034
	LS.Part1 = larm
1035
	RS.Part1 = rarm
1036
	LW.Part1 = nil
1037
	RW.Part1 = nil
1038
end
1039
local keypress = function(key)
1040
	if attacking or not equipped then return end
1041
	if key == "b" then
1042
		music:Stop()
1043
		sound222223 = Instance.new("Sound",char)
1044
		sound222223.SoundId = "rbxassetid://138082524"
1045
		sound222223.Volume = 30
1046
		sound222223:Play()
1047
		attacking = true
1048
		print("B for welp....nothing?")
1049
		hum.WalkSpeed = 16
1050
		setpose("larmcharge", .1)
1051
		wait(.3)
1052
		toggles.lmagic = true
1053
		wait(1.5)
1054
		toggles.lmagic = false
1055
		particleemitter3.Color = ColorSequence.new(Color3.new(224, 0, 255), Color3.new(255,0,124))
1056
		magic.circle(BrickColor.new("Hot pink"), larm.CFrame*CFrame.new(0,-1,0), 1, 1, 1, 1.2, 1.2, 1.2, .04, charfx)
1057
		toggles.snow = not toggles.snow
1058
		print(""..(toggles.snow and "JELLYFISHING???" or "No? okay....B"))
1059
		wait(.5)
1060
		hum.WalkSpeed = 16
1061
		attacking = false
1062
		music:Resume()
1063
		sound2222224:Stop()
1064
		sound2222233:Stop()
1065
		sound222223444:Stop()
1066
		sound22222243:Stop()
1067
		end
1068
	if key == "x" then
1069
		music:Stop()
1070
		sound22222 = Instance.new("Sound",char)
1071
		sound22222.SoundId = "rbxassetid://345287845"
1072
		sound22222.Volume = 30
1073
		sound22222:Play()
1074
		attacking = true
1075
		print("JELLYFISHING?")
1076
		hum.WalkSpeed = 12
1077
		toggles.canemagic = true
1078
		setpose("canecharge", .1)
1079
		wait(.5)
1080
		setpose("clickattack3_2", .175)
1081
		wait(.3)
1082
		particleemitter3.Color = ColorSequence.new(Color3.new(224, 0, 255), Color3.new(255,0,124))
1083
		magic.circle(BrickColor.new("Hot pink"), cane.CFrame*caneEnd, .2, .2, .3, 6, 6, 0, .075)
1084
		hum.WalkSpeed = 16
1085
		print("JELLYFISH ZAP")
1086
		for i = 1, 50 do
1087
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1088
			magic.lightning((cane.CFrame*caneEnd).p, hit, 20, 1, "Hot pink", .1, .2, .15, charfx)
1089
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1090
				damage(prt, 50, 70, 100, "Knockdown", RP, 0, 0, random(0, 1), nil, true)
1091
			end
1092
			wait(.02)
1093
		end
1094
		toggles.canemagic = false
1095
		hum.WalkSpeed = 16
1096
		attacking = false
1097
		music:Resume()
1098
		sound2222233:Stop()
1099
		sound2222224:Stop()
1100
		sound222223444:Stop()
1101
		sound22222243:Stop()
1102
		end
1103
	if key == "v" then
1104
		music:Stop()
1105
		sound222222 = Instance.new("Sound",char)
1106
		sound222222.SoundId = "rbxassetid://949916584"
1107
		sound222222.Volume = 30
1108
		sound222222:Play()
1109
		attacking = true
1110
		print("They Shall Go...")
1111
		hum.WalkSpeed = 12
1112
		toggles.canemagic = true
1113
		setpose("canecharge", .1)
1114
		wait(.5)
1115
		setpose("clickattack3_2", .175)
1116
		wait(.3)
1117
		particleemitter3.Color = ColorSequence.new(Color3.new(255, 0, 0), Color3.new(255,0,0))
1118
		magic.block(BrickColor.new("Really red"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
1119
		magic.circle(BrickColor.new("Really red"), cane.CFrame*caneEnd, 500, 500, 500, 500, 500, 500, 500)
1120
		hum.WalkSpeed = 16
1121
		print("Begone...Thot")
1122
		for i = 1, 10 do
1123
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1124
			magic.lightning((cane.CFrame*caneEnd).p, hit, 20, 1, "Really red", .1, .2, .15, charfx)
1125
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1126
				damage(prt, math.huge, math.huge, math.huge, "Knockdown", RP, math.huge, math.huge, random(math.huge, math.huge), nil, true)
1127
			end
1128
			wait(.02)
1129
		end
1130
		toggles.canemagic = false
1131
		hum.WalkSpeed = 16
1132
		attacking = false
1133
		music:Resume()
1134
		sound2222233:Stop()
1135
		sound2222224:Stop()
1136
		sound222223444:Stop()
1137
		sound22222243:Stop()
1138
		end
1139
	if key == "q" then
1140
		music:Stop()
1141
		sound2222233:Play()
1142
		attacking = true
1143
		print("Q for queer")
1144
		hum.WalkSpeed = 500
1145
		toggles.canemagic = true
1146
		setpose("canecharge", .1)
1147
		wait(.5)
1148
		setpose("clickattack3_2", .175)
1149
		wait(.3)
1150
		particleemitter3.Color = ColorSequence.new(Color3.new(0, 255, 232), Color3.new(0,255,232))
1151
		magic.block(BrickColor.new("Cyan"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
1152
		magic.circle(BrickColor.new("Cyan"), cane.CFrame*caneEnd, .2, .2, .3, 6, 6, 0, .075)
1153
		hum.WalkSpeed = 500
1154
		print("MAXIMUM OVERDRIVE VU")
1155
		for i = 1, 50 do
1156
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1157
			magic.lightning((cane.CFrame*caneEnd).p, hit, 10, 10, "Cyan", 10, 10, 10, charfx)
1158
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1159
				damage(prt, 50, 70, 100, "Knockdown", RP, 0, 0, random(0, 1), nil, true)
1160
			end
1161
			toggles.canemagic = false
1162
		hum.WalkSpeed = 500
1163
		attacking = false
1164
		sound2222224:Stop()
1165
		sound22222243:Stop()
1166
		end
1167
		elseif key == "p" then
1168
	music:Stop()
1169
		sound2222224:Play()
1170
		attacking = true
1171
		print("Why did you press this????")
1172
		hum.WalkSpeed = 12
1173
		toggles.canemagic = true
1174
		setpose("canecharge", .1)
1175
		wait(.5)
1176
		setpose("clickattack4_2", .175)
1177
		wait(.3)
1178
		particleemitter3.Color = ColorSequence.new(Color3.new(255, 255, 0), Color3.new(255,255,0))
1179
		magic.block(BrickColor.new("New Yeller"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
1180
		magic.block(BrickColor.new("New Yeller"),larm.CFrame*cf(0,-1,0),1,1,1,.5,.5,.5,.065,nil,charfx)
1181
		magic.circle(BrickColor.new("New Yeller"), cane.CFrame*caneEnd, 500, 500, 500, 500, 500, 500, 500)
1182
		hum.WalkSpeed = 16
1183
		print("e.e My life")
1184
		for i = 1, 10 do
1185
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1186
			magic.lightning((cane.CFrame*caneEnd).p, hit, 20, 1, "New Yeller", .1, .2, .15, charfx)
1187
			sound(sounds.zap,cane,random(.75,1),random(.75,1.25))
1188
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1189
				damage(prt, math.huge, math.huge, math.huge, "Knockdown", RP, math.huge, math.huge, random(math.huge, math.huge), nil, true)
1190
			end
1191
			wait(.02)
1192
		end
1193
		toggles.canemagic = false
1194
		hum.WalkSpeed = 16
1195
		attacking = false
1196
		sound2222233:Stop()
1197
		sound222223444:Stop()
1198
		sound22222243:Stop()
1199
		wait(10)
1200
human.MaxHealth, human.Health = 0,0
1201
print('ded')
1202
end
1203
if key == "c" then
1204
	music:Stop()
1205
		sound222223444:Play()
1206
	attacking = true
1207
		print("CATGROOVY")
1208
		hum.WalkSpeed = 12
1209
		toggles.canemagic = true
1210
		setpose("canecharge", .1)
1211
		wait(.5)
1212
		setpose("clickattack1_2", .175)
1213
		wait(.3)
1214
		particleemitter3.Color = ColorSequence.new(Color3.new(137, 137, 137), Color3.new(137,137,137))
1215
		magic.block(BrickColor.new("Dark stone grey"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
1216
		magic.circle(BrickColor.new("Dark stone grey"), cane.CFrame*caneEnd, .2, .2, .3, 6, 6, 0, .075)
1217
		hum.WalkSpeed = 16
1218
		print("Seems legit")
1219
		for i = 1, 50 do
1220
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1221
			magic.lightning((cane.CFrame*caneEnd).p, hit, 10, 10, "Dark stone grey", 10, 10, 10, charfx)
1222
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1223
				damage(prt, 50, 70, 100, "Knockdown", RP, 0, 0, random(0, 1), nil, true)
1224
			end
1225
			toggles.canemagic = false
1226
		hum.WalkSpeed = 16
1227
		attacking = false
1228
		sound2222224:Stop()
1229
		sound2222233:Stop()
1230
		end
1231
end
1232
1233
if key == "r" then
1234
			music:Stop()
1235
		sound22222243:Play()
1236
			attacking = true
1237
		print("Water THOSE!")
1238
		hum.WalkSpeed = 12
1239
		toggles.canemagic = true
1240
		setpose("canecharge", .1)
1241
		wait(.5)
1242
		setpose("clickattack3_2", .175)
1243
		wait(.3)
1244
		particleemitter3.Color = ColorSequence.new(Color3.new(0, 0, 255), Color3.new(0,0,255))
1245
		magic.block(BrickColor.new("Really blue"),cane.CFrame*caneEnd,1,1,1,.5,.5,.5,.065,nil,charfx)
1246
		magic.circle(BrickColor.new("Really blue"), cane.CFrame*caneEnd, .2, .2, .3, 6, 6, 0, .075)
1247
		hum.WalkSpeed = 16
1248
		print("But I don't want t00")
1249
		for i = 1, 50 do
1250
			local prt,hit = rayCast(cane.CFrame*caneEnd.p,((cane.CFrame*caneEnd).p - (cane.CFrame*(caneEnd*CFrame.new(0,0,1))).p).unit, 100, char)
1251
			magic.lightning((cane.CFrame*caneEnd).p, hit, 0.1, 5, "Really blue", 1, 2, 4, charfx)
1252
			if prt and prt.Parent:FindFirstChild("Humanoid") then
1253
				damage(prt, 50, 70, 100, "Knockdown", RP, 0, 0, random(0, 1), nil, true)
1254
			end
1255
			toggles.canemagic = false
1256
		hum.WalkSpeed = 16
1257
		attacking = false
1258
		sound2222224:Stop()
1259
		sound2222233:Stop()
1260
		sound222223444:Stop()
1261
		end
1262
end
1263
end
1264
local combo = 0
1265
local clicked = function(hit)
1266
	if attacking or not equipped then return end
1267
	if combo == 0 then
1268
		attacking = true
1269
		combo = combo + 1
1270
		print("swing"..combo)
1271
		setpose("clickattack1_1", .165)
1272
		wait(.125)
1273
		local dam1 = cane.Touched:connect(function(hit)
1274
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1275
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1276
			end
1277
		end)
1278
		local dam2 = rarm.Touched:connect(function(hit)
1279
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1280
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1281
			end
1282
		end)
1283
		setpose("clickattack1_2", .185)
1284
		sound(sounds.swing,cane,.5,random(1,1.5))
1285
		wait(.35)
1286
		dam1:disconnect()
1287
		dam2:disconnect()
1288
		attacking = false
1289
		wait(1)
1290
		if combo == 1 then
1291
			combo = 0
1292
			print("ded")
1293
		end
1294
	elseif combo == 1 then
1295
		attacking = true
1296
		combo = combo + 1
1297
		print("swing"..combo)
1298
		setpose("clickattack2_1", .15)
1299
		wait(.125)
1300
		local dam1 = cane.Touched:connect(function(hit)
1301
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1302
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1303
			end
1304
		end)
1305
		local dam2 = rarm.Touched:connect(function(hit)
1306
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1307
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1308
			end
1309
		end)
1310
		setpose("clickattack2_2", .14)
1311
		sound(sounds.swing,cane,.5,random(1,1.5))
1312
		for i = 1, 5 do
1313
			torso.Velocity = RP.CFrame.lookVector * 45
1314
			wait()
1315
		end
1316
		wait(.25)
1317
		dam1:disconnect()
1318
		dam2:disconnect()
1319
		attacking = false
1320
		wait(1)
1321
		if combo == 2 then
1322
			combo = 0
1323
			print("ded")
1324
		end
1325
	elseif combo == 2 then
1326
		attacking = true
1327
		combo = combo + 1
1328
		print("swing"..combo)
1329
		setpose("clickattack3_1", .15)
1330
		wait(.2)
1331
		local dam1 = cane.Touched:connect(function(hit)
1332
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1333
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1334
			end
1335
		end)
1336
		local dam2 = rarm.Touched:connect(function(hit)
1337
			if hit.Parent:FindFirstChild("Humanoid") and hit.Parent ~= char then
1338
				damage(hit, 10, 15, .25, "Normal", RP, .5, 1, random(3, 10), nil, true)
1339
			end
1340
		end)
1341
		setpose("clickattack3_2", .2)
1342
		sound(sounds.swing,cane,.5,random(.5,1))
1343
		for i = 1, 5 do
1344
			torso.Velocity = RP.CFrame.lookVector * 55
1345
			wait()
1346
		end
1347
		wait(.3)
1348
		dam1:disconnect()
1349
		dam2:disconnect()
1350
		attacking = false
1351
		wait(.5)
1352
		if combo == 3 then
1353
			combo = 0
1354
			print("ded")
1355
		end
1356
	elseif combo == 3 then
1357
		attacking = true
1358
		combo = combo + 1
1359
		print("swing"..combo)
1360
		setpose("clickattack4_1", .18)
1361
		sound(sounds.swing,cane,.5,random(1,1.5))
1362
		wait(.3)
1363
		local bewmcf = larm.CFrame*cf(0,-3,0)
1364
		local bewmrange = 7.5
1365
		for i = 1, 2 do
1366
			particleemitter3.Color = ColorSequence.new(Color3.new(255, 255, 0), Color3.new(255,255,0))
1367
			magic.block(BrickColor.new("New Yeller"), bewmcf, 1, 1, 1, 2, 2, 2, .075)
1368
		end
1369
		for _,v in pairs(game.Workspace:GetChildren()) do
1370
			if v:FindFirstChild("Torso") and v.Torso:IsA("Part") then
1371
				local vtor = v.Torso
1372
				local dist = (bewmcf.p - vtor.Position).magnitude
1373
				if dist <= bewmrange then
1374
					damage(vtor, 20, 30, .5, "Normal", RP, .5, 1, random(3, 10), nil, true)
1375
				end
1376
			end
1377
		end
1378
		sound(sounds.bewm,rarm,1,random(1,2))
1379
		print("bewm")
1380
		setpose("clickattack4_2", .165)
1381
		wait(.175)
1382
		attacking = false
1383
		wait(.5)
1384
		if combo == 4 then
1385
			combo = 0
1386
			print("ded")
1387
		end
1388
	end
1389
end
1390
bin.Selected:connect(equip)
1391
bin.Deselected:connect(unequip)
1392
mouse.Button1Down:connect(clicked)
1393
mouse.KeyDown:connect(keypress)
1394
1395
1396
1397
1398
1399
local scrn = Instance.new("ScreenGui", p.PlayerGui)
1400
ud = UDim2.new
1401
c3 = Color3.new
1402
1403
makeframe = function(par, trans, pos, size, color)
1404
  local frame = Instance.new("Frame", par)
1405
  frame.BackgroundTransparency = trans
1406
  frame.BorderSizePixel = 1
1407
  frame.BorderColor3 = BrickColor.Black().Color
1408
  frame.Position = pos
1409
  frame.Size = size
1410
  frame.BackgroundColor3 = BrickColor.new("Hot pink").Color
1411
  frame.ZIndex = 5
1412
  return frame
1413
end
1414
1415
makelabel = function(par, text)
1416
  local label = Instance.new("TextLabel", par)
1417
  label.BackgroundTransparency = 1
1418
  label.Size = ud(1, 0, 1, 0)
1419
  label.Position = ud(0, 0, 0, 0)
1420
  label.TextColor3 = c3(1,1,1)
1421
  label.TextStrokeTransparency = 0
1422
  label.FontSize = Enum.FontSize.Size24
1423
  label.Font = Enum.Font.SciFi
1424
  label.BorderSizePixel = 0
1425
  label.TextScaled = true
1426
  label.Text = text
1427
end
1428
1429
1430
Manabar = makeframe(scrn, 0.5, ud(0.8125,0,0.470,0), ud(0.19, 0, 0.17, 0), c3(0,0,0))
1431
Manacover = makeframe(Manabar, 0.5, ud(0, 0, 0, 0), ud(1, 0, 1, 0), c3(0, 0, 0))
1432
Manatext = makelabel(Manabar, "This script is way broken oml s0 if you get caught abusing RIP you. Never giving anyone the finished version >:)")