View difference between Paste ID: c9J6BihJ and QsGDPU7Q
SHOW: | | - or go back to the newest paste.
1-
--==Made by LuisPambid==--
1+
2-
--==Soul Solid==--
2+
3
local player=game.Players.SmokeDelsin
4-
local player=game.Players.CIassicDev
4+
5
repeat wait() until player and char
6
local torso=char.Torso
7
local head=char.Head
8
local human=char.Humanoid
9
local arm={Left=char["Left Arm"], Right=char["Right Arm"]}
10
local leg={Left=char["Left Leg"], Right=char["Right Leg"]}
11
local c=function(f) coroutine.resume(coroutine.create(f)) end
12
local p=function(f) pcall(f) end
13
local add={
14
	Part=function(par, a, c, col, t, s, cf, ms)
15
		local p=Instance.new("Part", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
16
		local m=Instance.new("BlockMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) end)
17
		return p
18
	end,
19
	Wedge=function(par, a, c, col, t, s, cf, ms)
20
		local p=Instance.new("WedgePart", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new()  end)
21
		local m=Instance.new("SpecialMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) m.MeshType="Wedge" end)
22
		return p
23
	end,
24
	Gui=function(ins, par, bc, bg, tc, fs, text, t, s, pos)
25
		local g=Instance.new(ins, par) pcall(function() g.BorderColor=BrickColor.new(bc) g.BackgroundColor=BrickColor.new(bg) g.TextColor=BrickColor.new(tc) g.FontSize=fs g.Font="ArialBold" g.Text=text g.Transparency=t g.Size=s g.Position=pos  end)
26
		return g
27
	end,
28
	Weld=function(par, p1, cf)
29
		local w=Instance.new("Weld", par) pcall(function() w.Part0=w.Parent or par w.Part1=p1 w.C1=cf or CFrame.new() end)
30
		return w
31
	end,
32
	Mesh=function(ins, par, s, of, t)
33
		local m=Instance.new(ins, par) pcall(function() m.Scale=s or Vector3.new() m.Offset=of or Vector3.new() m.MeshType=t end)
34
		return m
35
	end,
36
	Sound=function(parent, id, volume, pitch)
37
		local s=Instance.new("Sound", parent) pcall(function() s.SoundId=id s.Volume=volume s.Pitch=pitch end)
38
		return s
39
	end,
40
}
41
local scriptname="Soul Solid" --Name here
42
pcall(function() player.Backpack[scriptname]:remove() char[scriptname]:remove() char["Objects"]:remove() player.PlayerGui[scriptname]:remove()  end)
43
local model=Instance.new("Model", char) model.Name="Objects"
44
local modelB=Instance.new("Model", char) modelB.Name=scriptname
45
local gui=Instance.new("ScreenGui", player.PlayerGui) gui.Name=scriptname
46
local bin=Instance.new("HopperBin", player.Backpack) bin.Name=scriptname
47
local skincolor="New Yeller"
48
local suitcolor="Really black"
49
local body={}
50
local animate={}
51
local obj={}
52
function createParts()
53
	--==PARTS==--
54
	body.Head=head:clone() body.Head.Parent=model body.Head.BrickColor=BrickColor.new(skincolor) body.Head.Transparency=0
55
	body.Torso=add.Part(model, false, false, skincolor, 0, Vector3.new(2, 2, 1), nil)
56
	body.ArmLeft, body.ArmRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil)
57
	body.LegLeft, body.LegRight=add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 0, Vector3.new(1, 1, 1), nil)
58
	p(function() for i, v in pairs(char:children()) do v.Transparency=1 end end)
59
	p(function() for i, v in pairs(char:children()) do v["face"]:clone().Parent=body.Head v["face"]:remove() end end)
60
	p(function() for i, v in pairs(char:children()) do if v.ClassName=="Hat" then v:remove() end end end)
61
	--==WELDS==--
62
	body.HeadW=add.Weld(body.Head, body.Torso, CFrame.new(0, 1.5, 0))
63
	body.TorsoW=add.Weld(body.Torso, torso, nil)
64
	body.ArmLeftW, body.ArmRightW=add.Weld(body.ArmLeft, body.Torso, CFrame.new(-1.5, .5, 0)), add.Weld(body.ArmRight, body.Torso, CFrame.new(1.5, .5, 0))
65
	body.LegLeftW, body.LegRightW=add.Weld(body.LegLeft, body.Torso, CFrame.new(-.5, -1.5, 0)), add.Weld(body.LegRight, body.Torso, CFrame.new(.5, -1.5, 0))
66
	--==MESHES==--
67
	add.Mesh("BlockMesh", body.ArmLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
68
	add.Mesh("BlockMesh", body.ArmRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
69
	add.Mesh("BlockMesh", body.LegLeft, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
70
	add.Mesh("BlockMesh", body.LegRight, Vector3.new(1, 2, 1), Vector3.new(0, -.5, 0), nil)
71
	---------------------------------------------------------------------------------------
72
	animate={
73
		["Head"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
74
			body.HeadW.C1=CFrame.new(0, 1.5, 0)*cf
75
		end;
76
		["Torso"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
77
			body.TorsoW.C1=cf
78
		end;
79
		["ArmLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
80
			body.ArmLeftW.C1=CFrame.new(-1.5, .5, 0)*cf
81
		end;
82
		["ArmRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
83
			body.ArmRightW.C1=CFrame.new(1.5, .5, 0)*cf
84
		end;
85
		["LegLeft"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
86
			body.LegLeftW.C1=CFrame.new(-.5, -1.5, 0)*cf
87
		end;
88
		["LegRight"]=function(cf) p(function() for i, v in pairs(model:children()) do v.Transparency=0 end end)
89
			body.LegRightW.C1=CFrame.new(.5, -1.5, 0)*cf
90
		end;
91
	}
92
	--==Objects==--
93
	--Suit--
94
	obj.ArmLeft, obj.ArmRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil)
95
	obj.ArmLeftW, obj.ArmRightW=add.Weld(obj.ArmLeft, body.ArmLeft, nil), add.Weld(obj.ArmRight, body.ArmRight, nil)
96
	obj.LegLeft, obj.LegRight=add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, suitcolor, 0, Vector3.new(1, 1, 1), nil)
97
	obj.LegLeftW, obj.LegRightW=add.Weld(obj.LegLeft, body.LegLeft, nil), add.Weld(obj.LegRight, body.LegRight, nil)
98
	obj.Torso=add.Part(model, false, false, suitcolor, 0, Vector3.new(2, 2, 1), nil)
99
	obj.TorsoW=add.Weld(obj.Torso, body.Torso, nil)
100
	add.Mesh("BlockMesh", obj.ArmLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
101
	add.Mesh("BlockMesh", obj.ArmRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
102
	add.Mesh("BlockMesh", obj.LegLeft, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
103
	add.Mesh("BlockMesh", obj.LegRight, Vector3.new(1.1, 1.6, 1.1), Vector3.new(0, -.25, 0), nil)
104
	add.Mesh("BlockMesh", obj.Torso, Vector3.new(1.05, 1.05, 1.05), nil, nil)
105
	---------------------------------------------------------------------------------------
106
	obj.Handle=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.25, 2, .25), nil)
107
	obj.HandleW=add.Weld(obj.Handle, body.ArmRight, CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, 0))
108
	for i=1, 5 do
109
		obj.Design=add.Part(modelB, false, false, "White", 0, Vector3.new(.3, .1, .1), nil)
110
		obj.DesignW=add.Weld(obj.Design, obj.Handle, CFrame.new(0, -1+i/3, 0)*CFrame.Angles(math.rad(45), 0, 0))
111
	end
112
	--SEALS--
113
	obj.Seal=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil)
114
	obj.SealM=add.Mesh("BlockMesh", obj.Seal, Vector3.new(.2, .5, 1), nil, nil)
115
	obj.SealW=add.Weld(obj.Seal, obj.Handle, CFrame.new(0, -1.15, .1))
116
	obj.Seal2=add.Part(modelB, false,false, "White", 0, Vector3.new(.2, .2, .2), nil)
117
	obj.Seal2M=add.Mesh("BlockMesh", obj.Seal2, Vector3.new(.25, 1, .5), nil, nil)
118
	obj.Seal2W=add.Weld(obj.Seal2, obj.Handle, CFrame.new(0, -1.1, 0))
119
	obj.Seal3=add.Part(modelB, false,false, "White", 0, Vector3.new(.3, 2, .2), nil)
120
	obj.Seal3M=add.Mesh("BlockMesh", obj.Seal3, Vector3.new(1, 1, .5), nil, nil)
121
	obj.Seal3W=add.Weld(obj.Seal3, obj.Handle, nil)
122
	---------------------------------------------------------------------------------------
123
	obj.Guard=add.Part(modelB, false, false, "Really black", 0, Vector3.new(.5, .2, .5), nil)
124
	obj.GuardW=add.Weld(obj.Guard, obj.Handle, CFrame.new(0, 1.1, 0))
125
	obj.GuardB=add.Part(modelB, false, false, "White", 0, Vector3.new(.25, .2, .3), nil)
126
	obj.GuardBM=add.Mesh("BlockMesh", obj.GuardB, Vector3.new(.5, 1, 1), nil, nil)
127
	obj.GuardBW=add.Weld(obj.GuardB, obj.Handle, CFrame.new(0, 1.25, 0))
128
	obj.Blade=add.Part(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 4, .25), nil) obj.Blade.Reflectance=.5
129
	obj.BladeM=add.Mesh("BlockMesh", obj.Blade, Vector3.new(.5, 1, 1), nil, nil)
130
	obj.BladeW=add.Weld(obj.Blade, obj.Handle, CFrame.new(0, 3, 0))
131
	obj.Point=add.Wedge(modelB, false, false, "Mid gray", 0, Vector3.new(.2, 1, .25), nil) obj.Point.Reflectance=.5
132
	obj.PointM=add.Mesh("SpecialMesh", obj.Point, Vector3.new(.5, 1, 1), nil, "Wedge")
133
	obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, 2.5, 0)*CFrame.Angles(math.rad(0), 0, 0))
134
	--==Signature(L)==--
135
	obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, 1, .2), nil)
136
	obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.25, -.2))
137
	obj.LH=add.Part(model, false, false, "White", 0, Vector3.new(.5, .2, .5), nil)
138
	obj.LHW=add.Weld(obj.LH, obj.ArmLeft, CFrame.new(-.4, -.65, 0))
139
end
140
function removeParts()
141
	p(function()
142
		for i, v in pairs(model:children()) do v:remove() end		for i, v in pairs(modelB:children()) do v:remove() end	for i, v in pairs(char:children()) do v.Transparency=0 end
143
	end)
144
end
145
--Variables--
146
local trailDeb=false
147
local running=false
148
local hitDeb=false
149
local attacking=false
150
local hitting=false
151
local shield=false
152
local keyDeb=false
153
local keyDeb2=false
154
local looping=false
155
local w, a, s, d=false, false, false, false
156
local combo=0
157
local speed=32
158
local attackspeed=.25
159
local dmg=math.random(5, 10)
160
local looping2=false
161
local rage=1
162
local Slash=add.Sound(torso, "rbxasset://sounds//swordslash.wav", 1, 1)
163
local Dash=add.Sound(torso, "http://www.roblox.com/asset/?id=22968437", 1, 1)
164
local Clang=add.Sound(torso, "http://www.roblox.com/asset/?id=11113679", 1, 1)
165
local Heal=add.Sound(torso, "http://www.roblox.com/asset/?id=2101144", 1, 1)
166
local Electricity=add.Sound(torso, "http://www.roblox.com/asset/?id=10756118", 1, 1)
167
local attackLabel=add.Gui("TextLabel", gui, "Really black", "Really black", "White", "Size18", "Dash(C)", 0, UDim2.new(0, 150, 0, 50), UDim2.new(0, 0, 0, 150))
168
local attackLabel2=add.Gui("TextLabel", attackLabel, "Really black", "Really black", "White", "Size18", "Block(V)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
169
local attackLabel3=add.Gui("TextLabel", attackLabel2, "Really black", "Really black", "White", "Size18", "Jump(Space)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
170
local attackLabel4=add.Gui("TextLabel", attackLabel3, "Really black", "Really black", "White", "Size18", "Regenerate(X)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
171
local attackLabel5=add.Gui("TextLabel", attackLabel4, "Really black", "Really black", "White", "Size18", "Ultimate(Z)ON/OFF", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0))
172
function lightningGen(startPos, endPos)
173
	local magnitude=(startPos-endPos).magnitude
174
	local distance=(startPos+endPos)/2
175
	local pattern=add.Part(workspace, true, false, "White", 1, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPos)) pattern.Name="Effect"
176
	local startPosProx=startPos
177
	for i=1, 9 do
178
		local startPosProx2=startPosProx
179
		local random=Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1))
180
		local findSize=pattern.Size.z/10
181
		local findOffSet=pattern.CFrame.lookVector*-1
182
		local compute=i*findSize*findOffSet
183
		local newStartPos=startPos
184
		local newEndPos=CFrame.new(random+compute+newStartPos).p
185
		local magnitude=(startPosProx2-newEndPos).magnitude
186
		local distance=(startPosProx2+newEndPos)/2
187
		local lightning=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPosProx2)) lightning.Name="Effect"
188
		c(function()
189
			for i=0, 1, .1 do wait()
190
				lightning.Transparency=i
191
			end
192
			lightning:remove()
193
		end)
194
		startPosProx=newEndPos
195
	end
196
	pattern:remove()
197
end
198
function computePos(pos, pos2)
199
	local pos3=Vector3.new(pos2.x, pos.y, pos2.z)
200
	torso.CFrame=CFrame.new(pos, pos3)
201
	return pos3
202
end
203
function nearTorso(pos, dis)
204
	local temp
205
	local distance=dis
206
	for i, v in pairs(workspace:children()) do
207
		if v:isA("Model") then
208
			temp=v:findFirstChild("Torso")
209
			local humanoid=v:findFirstChild("Humanoid")
210
			if temp and humanoid and v~=char and (temp.CFrame.p-pos).magnitude<distance then
211
				distance=(temp.CFrame.p-pos).magnitude
212
				return temp
213
			end
214
		end
215
	end
216
end
217
218
function hit(h)
219
	if hitting==true and looping2==true and h.Parent:findFirstChild("Humanoid")==nil and h~=nil and h.Parent~=char and h.Parent~=model and h.Parent~=modelB and h.Name~="Effect" and h.Name~="Base" and hitDeb==false then hitDeb=true
220
		p(function() print("found")
221
			local pYPos=h.Position.y-(h.Size.y/2)
222
			local sYPos=obj.Blade.Position.y
223
			if sYPos<=pYPos or sYPos>=(pYPos+h.Size.y) then return end
224
			local p=h:clone() p.Parent=workspace p.Anchored=false p.CanCollide=true --p.Name="Effect"
225
			local p2=h:clone() p2.Parent=workspace p2.Anchored=false p2.CanCollide=true --p2.Name="Effect"
226
			h:remove()
227
			p.formFactor="Custom"
228
			p2.formFactor="Custom"
229
			p.Size=Vector3.new(h.Size.x, sYPos-pYPos, h.Size.z)
230
			p2.Size=Vector3.new(h.Size.x, p2.Size.y-(sYPos-pYPos), h.Size.z)
231
			p.CFrame=h.CFrame*CFrame.new(0, -p2.Size.y/2, 0)
232
			p2.CFrame=h.CFrame*CFrame.new(0, p.Size.y/2, 0)
233
			c(function() wait(2) 
234
			--[[p.Anchored=false p2.Anchored=false
235
				for i=0, 1, .05 do
236
					wait()
237
					p.Transparency=i p2.Transparency=i
238
				end]]
239
				p:remove() p2:remove()
240
			end)
241
		end)
242
		wait()
243
		hitDeb=false
244
	elseif hitting==true and game.Players[h.Parent.Name] and h.Parent~=char and hitDeb==false then hitDeb=true
245
		pcall(function()
246
			local hHuman=h.Parent:findFirstChild("Humanoid")
247
			hHuman.Health=hHuman.Health-dmg
248
			--[[for i=1, 5 do
249
				local spark=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, 1, .2), obj.Point.CFrame*CFrame.Angles(math.random(-45, 45), math.random(-45, 45), math.random(-45, 45))) spark.Name="Effect"
250
				local sparkM=add.Mesh("BlockMesh", spark, Vector3.new(.5, 1, .5), nil, nil)
251
				c(function()
252
					for i=0, 1, .05 do wait()
253
						spark.Transparency=i
254
					end spark:remove()
255
				end)
256
			end]]
257
			local fakeM=Instance.new("Model", workspace) fakeM.Name=dmg
258
			local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0
259
			local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head"
260
			local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil)
261
			local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0)
262
			game.Debris:addItem(fakeM, 2)	
263
		end)
264
		wait(.2)
265
		hitDeb=false
266
	end
267
end
268
269
function trail(pos, cf)
270
	c(function()
271
		local old=(pos.CFrame*cf).p
272
		while trailDeb==true do
273
			wait()
274
			local new=(pos.CFrame*cf).p
275
			local mag=(old-new).magnitude
276
			local dis=(old+new)/2
277
			local trail=add.Part(workspace, true, false, "Pastel light blue", 0, Vector3.new(.2, mag, .2), CFrame.new(dis, new)*CFrame.Angles(math.pi/2, 0, 0)) trail.Name="Effect"
278
			trail.Touched:connect(hit)
279
			local tMesh=add.Mesh("CylinderMesh", trail, Vector3.new(1, 1, 1), nil, nil)
280
			old=new
281
			c(function()
282
				for i=1, 0, -.1 do
283
					wait()
284
					tMesh.Scale=tMesh.Scale*Vector3.new(i, 1, i)
285
				end
286
				trail:remove()
287
			end)
288
			c(function()
289
				for i=0, 1, .1 do
290
					wait()
291
					trail.Transparency=i
292
				end
293
			end)
294
		end
295
	end)
296
end
297
298
function onRunning() while attacking or looping do wait() end
299
	if w or a or s or d then
300
		animate.ArmLeft(CFrame.Angles(0, 0, math.rad(-15)))
301
		animate.ArmRight(CFrame.Angles(0, 0, math.rad(15)))
302
		animate.LegLeft(CFrame.Angles(0, 0, math.rad(-5)))
303
		animate.LegRight(CFrame.Angles(0, 0, math.rad(5)))
304
	end
305
end
306
307
function doAttacks() combo=combo+1 rage=rage+1 print("Combo: "..combo)
308
	if attacking==false and looping==false then attacking=true
309
		if combo==1 then hitting=true Slash:play()
310
			for i, v in pairs(modelB:children()) do v.Touched:connect(hit) end
311
			for i=0, 1, attackspeed do wait()
312
				animate.Torso(CFrame.Angles(0, -math.rad(45)*i, 0))
313
				animate.ArmRight(CFrame.Angles(0, 0, math.rad(90)*i))
314
				obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)-(math.rad(135)*i), 0, 0)
315
			end
316
			trailDeb=true	trail(obj.Point, CFrame.new(0, 1, 0))
317
			for i=0, 1, attackspeed do wait()
318
				animate.Torso(CFrame.Angles(0, -math.rad(45)-(-math.rad(135)*i), 0))
319
				obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(225)-(-math.rad(135)*i), 0, -math.rad(15)*i)
320
			end
321
			if combo>1 then combo=2 print("Combo: "..combo) Slash:play()
322
				for i=1, 0, -attackspeed do wait()
323
					animate.Torso(CFrame.Angles(0, -math.rad(90)+(math.rad(90)*i), 0))
324
					animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i))
325
					obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i)
326
				end
327
				trailDeb=false
328
				for i=1, 0, -attackspeed do wait()
329
					animate.Torso(CFrame.Angles(0, -math.rad(90)*i, 0))
330
				end
331
				attacking=false
332
				hitting=false
333
				combo=0
334
				onRunning()
335
				return
336
			end
337
			trailDeb=false
338
			for i=1, 0, -.2 do wait()
339
				animate.Torso(CFrame.Angles(0, math.rad(90)*i, 0))
340
				animate.ArmRight(CFrame.Angles(0, 0, math.rad(180)*i))
341
				obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90), 0, -math.rad(15)*i)
342
			end
343
		end
344
		attacking=false
345
		hitting=false
346
		combo=0
347
		onRunning()
348
	end
349
end
350
351
local Abilities={
352
	["Dash"]=function() Dash:play()
353
		local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, 0, 1.5)*CFrame.Angles(math.rad(90), 0, 0)) aura.Name="Effect"
354
		local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
355
		c(function()
356
			for i=0, 2, .1 do wait()
357
				auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
358
			end
359
		end)
360
		c(function()
361
			for i=0, 1, .1 do
362
				wait()
363
				aura.Transparency=i
364
			end
365
			pcall(function() aura:remove() end)
366
		end)
367
		torso.CFrame=torso.CFrame+torso.CFrame.lookVector*10
368
	end;
369
	["DashJump"]=function() Dash:play()
370
		local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(math.rad(180), 0, 0)) aura.Name="Effect"
371
		local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
372
		c(function()
373
			for i=0, 2, .1 do wait()
374
				auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
375
			end
376
		end)
377
		c(function()
378
			for i=0, 1, .1 do
379
				wait()
380
				aura.Transparency=i
381
			end
382
			pcall(function() aura:remove() end)
383
		end)
384
		pcall(function() torso:findFirstChild("BodyPosition"):remove() end)
385
		c(function()
386
			local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(0, math.huge, 0) bp.position=torso.Position+Vector3.new(0, 10, 0)
387
			wait(3)
388
			bp:remove()
389
		end)
390
	end;
391
	["Shield"]=function(mouse) human.WalkSpeed=0
392
		local bp=Instance.new("BodyPosition", torso) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=torso.Position
393
		looping=true
394
		for i=0, 1, .2 do wait()
395
			animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0))
396
			animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i))
397
			obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i)
398
		end
399
		Clang:play()
400
		local shieldPart=add.Part(model, true, false, "White", 1, Vector3.new(15, 15, 4), torso.CFrame+torso.CFrame.lookVector*1.5)
401
		while looping do wait() computePos(torso.CFrame.p, mouse.Hit.p) shieldPart.CFrame=torso.CFrame+torso.CFrame.lookVector*1.5
402
			shieldPart.Touched:connect(function(h)
403
				if h.Parent~=char and h.Parent~=modelB and h.Parent~=model and h.Name~="Trail" and h.Name~="Base" and hitDeb==false then hitDeb=true print(h.Name)
404
					Clang:play()
405
					c(function()
406
						--[[local effect=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), CFrame.new(h.CFrame.p, torso.CFrame.p)) effect.Name="Trail"
407
						local mesh=add.Mesh("SpecialMesh", effect, Vector3.new(1.5, 1.5, 1.5), nil, "File") mesh.MeshId="http://www.roblox.com/asset/?id=3270017"
408
						c(function()
409
							for i=0, 1, .1 do
410
								wait()
411
								effect.Mesh.Scale=effect.Mesh.Scale+Vector3.new(i, i, i)
412
							end
413
							effect:remove()
414
						end)
415
						c(function()
416
							for i=0, 1, .1 do
417
								wait()
418
								effect.Transparency=i
419
							end
420
						end)]]
421
						h.Anchored=false
422
						local bp=Instance.new("BodyPosition", h) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=(CFrame.new(torso.CFrame.p, h.CFrame.p)*CFrame.new(0, 0, -h.Velocity.z*1.5)).p
423
						local bg=Instance.new("BodyGyro", h) bg.maxTorque=Vector3.new(0, math.huge, 0) bg.cframe=CFrame.new(h.CFrame.p, torso.CFrame.p)
424
						h.Velocity=Vector3.new(0, 0, 0) h.RotVelocity=Vector3.new(0, 0, 0)
425
						game.Debris:addItem(bp, .2) game.Debris:addItem(bg, .2)
426
					end)
427
					wait()
428
					hitDeb=false
429
				end
430
			end)
431
		end
432
		bp:remove()
433
		shieldPart:remove()
434
		for i=1, 0, -.2 do wait()
435
			animate.ArmRight(CFrame.Angles(math.rad(45)*i, 0, 0))
436
			animate.ArmLeft(CFrame.Angles(math.rad(135)*i, 0, -math.rad(15)*i))
437
			obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(45)*i), math.rad(35)*i, math.rad(90)*i)
438
		end
439
		human.WalkSpeed=speed
440
	end;
441
	["Regenerate"]=function(mouse) human.WalkSpeed=0
442
		looping=true
443
		for i=0, 1, .1 do wait()
444
			animate.Torso(CFrame.new(0, -1*i, 0))
445
			animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
446
			animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i))
447
			animate.LegLeft(CFrame.new(0, 1*i, -1*i))
448
			animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0))
449
			obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0)
450
		end
451
		while looping and human.Health<100 do wait() human.Health=human.Health+1 Heal:play()
452
			local aura=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect"
453
			local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(1, 1, 1), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
454
			local aura2=add.Part(workspace, true, false, "Pastel light blue", .5, Vector3.new(5, 5, 5), body.Torso.CFrame*CFrame.new(math.random(-15, 15), math.random(-15, 15), math.random(-15, 15))*CFrame.Angles(math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45)), math.rad(math.random(-45, 45))))
455
			aura2.Name="Effect"
456
			c(function()
457
				for i=0, 3, .2 do wait()
458
					auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
459
				end
460
				c(function()
461
					for i=.5, 1, .1 do
462
						wait()
463
						aura.Transparency=i	aura2.Transparency=i
464
					end
465
				end)
466
				aura:remove() aura2:remove()
467
			end)
468
		end
469
		for i=1, 0, -.1 do wait()
470
			animate.Torso(CFrame.new(0, -1*i, 0))
471
			animate.ArmLeft(CFrame.new(.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, math.rad(45)*i))
472
			animate.ArmRight(CFrame.new(-.5*i, 0, -.5*i)*CFrame.Angles(math.rad(90)*i, 0, -math.rad(45)*i))
473
			animate.LegLeft(CFrame.new(0, 1*i, -1*i))
474
			animate.LegRight(CFrame.Angles(-math.rad(90)*i, 0, 0))
475
			obj.HandleW.C1=CFrame.new(0, -1.5, 0)*CFrame.Angles(-math.rad(90)+(-math.rad(180)*i), -math.rad(45)*i, 0)
476
		end
477
		human.WalkSpeed=speed
478
	end;
479
	["Ultimate"]=function()
480
		c(function()
481
			looping2=true
482
			speed=40 attackspeed=.25 dmg=dmg*2.5
483
			while looping2 and human.Health>2 do wait(.2) human.Health=human.Health-2 Electricity:play()
484
				lightningGen(body.Torso.CFrame.p, body.Torso.Position+Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)))
485
				local aura=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(1, 1, 1), body.Torso.CFrame*CFrame.new(0, -2, 0)*CFrame.Angles(0, math.rad(math.random(-45, 45)), 0)) aura.Name="Effect"
486
				local auraM=add.Mesh("SpecialMesh", aura, Vector3.new(4, 2, 4), nil, "File") auraM.MeshId="http://www.roblox.com/asset/?id=20329976"
487
				c(function()
488
					for i=0, 1, .1 do wait()
489
						auraM.Scale=auraM.Scale+Vector3.new(i, i/2, i)
490
					end
491
				end)
492
				c(function()
493
					for i=0, 1, .1 do
494
						wait()
495
						aura.Transparency=i
496
					end
497
					aura:remove()
498
				end)
499
			end
500
			speed=32 attackspeed=.2 dmg=math.random(5, 10)
501
			keyDeb=false looping2=false
502
		end)
503
	end;
504
}
505
506
bin.Selected:connect(function(mouse) createParts() human.WalkSpeed=speed
507
	onRunning()
508
	while attacking do wait() end
509
	mouse.Button1Down:connect(doAttacks)
510
	mouse.KeyDown:connect(function(key) key=key:lower()
511
		if key=="w" then w=true onRunning() end
512
		if key=="a" then a=true onRunning() end
513
		if key=="s" then s=true onRunning() end
514
		if key=="d" then d=true onRunning() end
515
		if key=="c" and keyDeb2==false then keyDeb2=true Abilities.Dash() wait() keyDeb2=false end
516
		if key==" " and keyDeb2==false then keyDeb2=true Abilities.DashJump() wait() keyDeb2=false end
517
		if key=="v" and keyDeb==false then keyDeb=true Abilities.Shield(mouse) keyDeb=false end
518
		if key=="x" and keyDeb==false and human.Health<100 then keyDeb=true Abilities.Regenerate(mouse) keyDeb=false end
519
		if key=="z" and keyDeb==false and human.Health>5 then
520
			keyDeb=true
521
			Abilities.Ultimate(mouse)
522
		elseif key=="z" and keyDeb==true then
523
			keyDeb=false looping2=false
524
		end
525
	end)
526
	mouse.KeyUp:connect(function(key) key=key:lower()
527
		if key=="v" then looping=false end
528
		if key=="x" then looping=false end
529
	end)
530
end)
531
bin.Deselected:connect(function() removeParts() end)--mediafire