View difference between Paste ID: 4xBkyL39 and gmUFVwjY
SHOW: | | - or go back to the newest paste.
1
local asin = math.asin
2
local atan2 = math.atan2
3
local rad = math.rad
4
local sin = math.sin
5
local abs = math.abs
6
local ceil = math.ceil
7
local cos = math.cos
8
local pi = math.pi
9
local rclcount = 0
10
local rcl = 0
11
local rclcounttime = 50
12
local rclcountspeed = 1
13-
local player = game.Players.LocalPlayer
13+
local player = game.Players.basstracker1970
14
local pchar = player.Character
15
local torso = pchar.Torso
16
local mouse = player:GetMouse()
17
local attack = false
18
local combo = 0
19
pchar.Archivable=true
20
Cols={"Black","Really black","Royal purple","Alder","Magenta"}
21
22
23
function stick(x, y)
24
	weld = Instance.new("Motor") 
25
	weld.Name='mot'
26
	weld.Part0 = x
27
	weld.Part1 = y
28
	local HitPos = x.Position
29
	local CJ = CFrame.new(HitPos) 
30
	local C0 = x.CFrame:inverse() *CJ 
31
	local C1 = y.CFrame:inverse() * CJ 
32
	weld.C0 = C0 
33
	weld.C1 = C1 
34
	weld.Parent = x
35
end
36
37
do
38
    local function QuaternionFromCFrame(cf) local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components() local trace = m00 + m11 + m22 if trace > 0 then local s = math.sqrt(1 + trace) local recip = 0.5/s return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5 else local i = 0 if m11 > m00 then i = 1 end if m22 > (i == 0 and m00 or m11) then i = 2 end if i == 0 then local s = math.sqrt(m00-m11-m22+1) local recip = 0.5/s return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip elseif i == 1 then local s = math.sqrt(m11-m22-m00+1) local recip = 0.5/s return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip elseif i == 2 then local s = math.sqrt(m22-m00-m11+1) local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip end end end
39
    local function QuaternionToCFrame(px, py, pz, x, y, z, w) local xs, ys, zs = x + x, y + y, z + z local wx, wy, wz = w*xs, w*ys, w*zs local xx = x*xs local xy = x*ys local xz = x*zs local yy = y*ys local yz = y*zs local zz = z*zs return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy)) end
40
    local function QuaternionSlerp(a, b, t) local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4] local startInterp, finishInterp; if cosTheta >= 0.0001 then if (1 - cosTheta) > 0.0001 then local theta = math.acos(cosTheta) local invSinTheta = 1/math.sin(theta) startInterp = math.sin((1-t)*theta)*invSinTheta finishInterp = math.sin(t*theta)*invSinTheta  else startInterp = 1-t finishInterp = t end else if (1+cosTheta) > 0.0001 then local theta = math.acos(-cosTheta) local invSinTheta = 1/math.sin(theta) startInterp = math.sin((t-1)*theta)*invSinTheta finishInterp = math.sin(t*theta)*invSinTheta else startInterp = t-1 finishInterp = t end end return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp        end
41
42
    function clerp(a,b,t)
43
        local qa = {QuaternionFromCFrame(a)}
44
        local qb = {QuaternionFromCFrame(b)}
45
        local ax, ay, az = a.x, a.y, a.z
46
        local bx, by, bz = b.x, b.y, b.z
47
48
        local _t = 1-t
49
        return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
50
    end
51
end    
52
53
Part = function(x,y,z,color,tr,cc,an,parent)
54
    local p = Instance.new('Part',parent or Weapon)
55
    p.formFactor = 'Custom'
56
    p.Size = Vector3.new(x,y,z)
57
    p.BrickColor = BrickColor.new(color)
58
    p.CanCollide = cc
59
    p.Transparency = tr
60
    p.Anchored = an
61
    p.TopSurface,p.BottomSurface = 0,0
62
    p.Locked=true
63
    p:BreakJoints()
64
    return p
65
end
66
67
wPart = function(x,y,z,color,tr,cc,an,parent)
68
    local wp = Instance.new('WedgePart',parent or Weapon)
69
    wp.formFactor = 'Custom'
70
    wp.Size = Vector3.new(x,y,z)
71
    wp.BrickColor = BrickColor.new(color)
72
    wp.CanCollide = cc
73
    wp.Transparency = tr
74
    wp.Anchored = an
75
    wp.TopSurface,wp.BottomSurface = 0,0
76
    return wp
77
end
78
79
local function CFrameFromTopBack(at, top, back)
80
    local right = top:Cross(back)
81
    return CFrame.new(at.x, at.y, at.z,
82
    right.x, top.x, back.x,
83
    right.y, top.y, back.y,
84
    right.z, top.z, back.z)
85
end
86
87
function Triangle(a, b, c)
88
    local edg1 = (c-a):Dot((b-a).unit)
89
    local edg2 = (a-b):Dot((c-b).unit)
90
    local edg3 = (b-c):Dot((a-c).unit)
91
    if edg1 <= (b-a).magnitude and edg1 >= 0 then
92
        a, b, c = a, b, c
93
    elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
94
        a, b, c = b, c, a
95
    elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
96
        a, b, c = c, a, b
97
    else 
98
        print("unreachable")
99
    end
100
    local len1 = (c-a):Dot((b-a).unit)
101
    local len2 = (b-a).magnitude - len1
102
    local width = (a + (b-a).unit*len1 - c).magnitude
103
    local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
104
    local list = {}
105
    if len1 > 0.01 then
106
        local w1 = wPart(0,0,0,'Really black',0.5,false,true,pchar)
107
        local sz = Vector3.new(0.2, width, len1)
108
        w1.Size = sz
109
        local sp = Mesh(w1,2,0,0,0)
110
        sp.MeshType='Wedge'
111
        sp.Scale=Vector3.new(0,1,1)*sz/w1.Size
112
        w1:BreakJoints()
113
        w1.Anchored = true
114
        w1.Transparency = 0.7
115
        Spawn(function()
116
            for i=0,1,0.1 do
117
                wait()
118
                w1.Transparency=w1.Transparency+0.03
119
            end
120
        end)
121
        w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
122
        table.insert(list,w1)
123
    end
124
    if len2 > 0.01 then
125
        local w2 = wPart(0,0,0,'Really black',0.5,false,true,pchar)
126
        local sz = Vector3.new(0.2, width, len2) 
127
        w2.Size = sz
128
        local sp = Mesh(w2,2,0,0,0)
129
        sp.MeshType='Wedge'
130
        sp.Scale=Vector3.new(0,1,1)*sz/w2.Size
131
        w2:BreakJoints()
132
        w2.Anchored = true
133
        w2.Transparency = 0.7
134
        Spawn(function()
135
            for i=0,1,0.1 do
136
                wait()
137
                w2.Transparency=w2.Transparency+0.03
138
            end
139
        end)
140
        w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
141
        table.insert(list,w2)
142
    end
143
    return unpack(list)
144
end
145
146
function mgblock(pa,cfr,tm,col1,col2,sz,wa)
147
    local cols={col1,col2}
148
    Spawn(function()
149
        for i=1,tm do
150
            local a= Part(1,1,1,cols[math.random(1,2)],0,false,true,pchar)
151
            curre=a
152
            v1,v2,v3=sz.x,sz.y,sz.z
153
            local m= Mesh(a,3,v1,v2,v3)
154
            a.CFrame=pa.CFrame*cfr*CFrame.Angles(math.random(),math.random(),math.random())
155
            Spawn(function()
156
                while wait() do
157
                    if a.Transparency >= 1 then a:Destroy() break end
158
                    m.Scale=m.Scale-Vector3.new(.1,0.1,0.1)
159
                    a.CFrame=a.CFrame*CFrame.Angles(math.rad(2),math.rad(2),math.rad(2))+Vector3.new(0,0.1,0)
160
                    a.Transparency=a.Transparency+0.05
161
                end
162
            end)
163
            wait(wa)
164
        end
165
    end)
166
    return curre
167
end
168
169
function trail(p,t,h)
170
    Spawn(function()
171
        local blcf = p.CFrame
172
        local scfr = blcf
173
        for i=1,t do
174
            local blcf = p.CFrame
175
            if scfr and (p.Position-scfr.p).magnitude > .1 then
176
                local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
177
                if a then game.Debris:AddItem(a,1) end 
178
                if b then game.Debris:AddItem(b,1) end
179
                local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
180
                if a then game.Debris:AddItem(a,1) end 
181
                if b then game.Debris:AddItem(b,1) end
182
                scfr = blcf
183
            elseif not scfr then
184
                scfr = blcf
185
            end
186
            game:service'RunService'.RenderStepped:wait()
187
        end
188
        scfr=nil
189
    end)
190
end
191
192
function cloneefx()
193
    for _,v in pairs(pchar:GetChildren()) do
194
        if v.ClassName=="Part" then
195
            local efx=v:Clone()
196
            efx.CanCollide=true
197
            efx.Anchored=true
198
            efx.Parent=workspace
199
            efx.BrickColor=BrickColor.new("Really black")
200
            efx:BreakJoints()
201
            Spawn(function()
202
                for i=1,10 do wait(.05)
203
                    efx.Transparency=efx.Transparency+.1
204
                end
205
                efx:Destroy()
206
            end)
207
        end
208
    end
209
end
210
211
so = function(id,par,lo,pi,tm)
212
    local s = Instance.new("Sound",par)
213
    s.Looped=lo
214
    s.Pitch=pi
215
    s.SoundId = "http://roblox.com/asset/?id="..id
216
    s:play()
217
    s.Volume=10
218
    game.Debris:AddItem(s,tm)
219
    return s
220
end
221
222
function posfix(nom)
223
    Spawn(function()
224
        local bg=Instance.new("BodyGyro",pchar.Torso)
225
        bg.maxTorque=Vector3.new(0,math.huge,0)
226
        bg.P=5000
227
        bg.D=100
228
        bg.cframe=workspace.CurrentCamera.CoordinateFrame*CFrame.Angles(0,nom,0)
229
        wait(.5)
230
        bg:Destroy()
231
    end)
232
end
233
234
Weld = function(p0,p1,x,y,z,rx,ry,rz,par)
235
    local w = Instance.new('Motor',par or p0)
236
    w.Part0 = p0
237
    w.Part1 = p1
238
    w.C1 = CFrame.new(x,y,z)*CFrame.Angles(rx,ry,rz)
239
    return w
240
end
241
242
Mesh = function(par,num,x,y,z)
243
    local msh = _
244
    if num == 1 then
245
        msh = Instance.new("CylinderMesh",par)
246
    elseif num == 2 then
247
        msh = Instance.new("SpecialMesh",par)
248
        msh.MeshType = 3
249
    elseif num == 3 then
250
        msh = Instance.new("BlockMesh",par)
251
    elseif num == 4 then
252
        msh = Instance.new("SpecialMesh",par)
253
        msh.MeshType = "Torso"
254
    elseif type(num) == 'string' then
255
        msh = Instance.new("SpecialMesh",par)
256
        msh.MeshId = num
257
    end 
258
    msh.Scale = Vector3.new(x,y,z)
259
    return msh
260
end
261
262
anglespeed = 1
263
264
angle = 0
265
266
local function getAngles(cf)
267
    local sx,sy,sz,m00,m01,m02,m10,m11,m12,m20,m21,m22 = cf:components()
268
    return atan2(-m12,m22),asin(m02),atan2(-m01,m00)
269
end
270
271
function explosion(col1,col2,cfr,sz,rng,dmg)
272
    local a= Part(1,1,1,col1,.5,false,true,pchar)
273
    local a2= Part(1,1,1,col2,.5,false,true,pchar)
274
    local a3= Part(1,1,1,col2,.5,false,true,pchar)
275
    v1,v2,v3=sz.x,sz.y,sz.z
276
    local m= Mesh(a,'http://www.roblox.com/asset/?id=1185246',v1,v2,v3)
277
    local m2= Mesh(a2,3,v1/3,v2/3,v3/3)
278
    local m3= Mesh(a3,3,v1/3,v2/3,v3/3)
279
    a.CFrame=cfr
280
    a2.CFrame=cfr*CFrame.Angles(math.random(),math.random(),math.random())
281
    a3.CFrame=cfr*CFrame.Angles(math.random(),math.random(),math.random())
282
    for i,v in pairs(workspace:children()) do
283
        if v:IsA("Model") and v:findFirstChild("Humanoid") then
284
            if v:findFirstChild("Head") and v:findFirstChild("Torso") then
285
                if (v:findFirstChild("Torso").Position - a.Position).magnitude < rng and v.Name ~= pchar.Name then
286
                    v.Humanoid.Health=v.Humanoid.Health-dmg
287
                    v.Torso.Velocity=Vector3.new(math.random(-dmg*2,dmg*2),dmg*3,math.random(-dmg*2,dmg*2))
288
                end
289
            end
290
        end
291
    end
292
    Spawn(function()
293
        while true do
294
            wait()
295
            if a.Transparency >= 1 then a:Destroy() a2:Destroy() a3:Destroy() break end
296
            m.Scale=m.Scale+Vector3.new(.1,0.1,0.1)
297
            m2.Scale=m2.Scale+Vector3.new(.1,0.1,0.1)
298
            m3.Scale=m3.Scale+Vector3.new(.1,0.1,0.1)
299
            a2.CFrame=a2.CFrame*CFrame.Angles(math.rad(2),math.rad(2),math.rad(2))
300
            a3.CFrame=a3.CFrame*CFrame.Angles(-math.rad(2),-math.rad(2),-math.rad(2))
301
            a.Transparency=a.Transparency+0.05
302
            a2.Transparency=a2.Transparency+0.05
303
            a3.Transparency=a3.Transparency+0.05
304
        end
305
    end)
306
end
307
308
function tmdmg(tm,pa,dmg,rng)
309
        Spawn(function()
310
        for i=1,tm do wait()
311
            for i,v in pairs(workspace:children()) do
312
                if v:IsA("Model") and v:findFirstChild("Humanoid") then
313
                    if v:findFirstChild("Head") and v:findFirstChild("Torso") then
314
                        if (v:findFirstChild("Torso").Position - pa.Position).magnitude < rng and v.Name ~= pchar.Name then
315
                            v.Humanoid.Health=v.Humanoid.Health-dmg
316
                        end
317
                    end
318
                end
319
            end
320
        end
321
    end)
322
end
323
324
Lerp = {
325
    Number = function(C1,C2,inc)
326
        return C1 + (C2 - C1) * inc
327
    end;
328
    CFrame = function(a,b,m)
329
		local c,d={a:components()},{b:components()}
330
		table.foreach(c,function(a,b)c[a]=c[a]+(d[a]-c[a])*m end)
331
		return CFrame.new(unpack(c))
332
	end;
333
}
334
335
local function genWeld(a,b)
336
    local w = Instance.new("Weld",a)
337
    w.Part0 = a
338
    w.Part1 = b
339
    return w
340
end
341
342
local Neck = genWeld(pchar.Torso,pchar.Head)
343
Neck.C0 = CFrame.new(0,1,0)
344
Neck.C1 = CFrame.new(0,-0.5,0)
345
local LeftShoulder = genWeld(pchar.Torso,pchar['Left Arm'])
346
LeftShoulder.C0 = CFrame.new(-1,0.5,0)
347
LeftShoulder.C1 = CFrame.new(0.5,0.5,0)
348
local RightShoulder = genWeld(pchar.Torso,pchar['Right Arm'])
349
RightShoulder.C0 = CFrame.new(1,0.5,0)
350
RightShoulder.C1 = CFrame.new(-0.5,0.5,0)
351
local LeftHip = genWeld(pchar.Torso,pchar['Left Leg'])
352
LeftHip.C0 = CFrame.new(-1,-1,0)
353
LeftHip.C1 = CFrame.new(-0.5,1,0)
354
local RightHip = genWeld(pchar.Torso,pchar['Right Leg'])
355
RightHip.C0 = CFrame.new(1,-1,0)
356
RightHip.C1 = CFrame.new(0.5,1,0)
357
local RootJoint = genWeld(pchar.HumanoidRootPart,pchar.Torso)
358
RootJoint.C0 = CFrame.new(0,0,0) * CFrame.Angles(-math.pi/2,0,math.pi)
359
RootJoint.C1 = CFrame.new(0,0,0) * CFrame.Angles(-math.pi/2,0,math.pi)
360
361
local m = Instance.new("Model")
362
m.Name = "Model"
363
p1 = Instance.new("Part", m)
364
p1.BrickColor = BrickColor.new("Royal purple")
365
p1.FormFactor = Enum.FormFactor.Custom
366
p1.Size = Vector3.new(0.200000003, 0.400000006, 0.400000006)
367
p1.CFrame = CFrame.new(-4.38250017, 5.90899992, 11.0679998, -3.24902021e-006, 9.58114477e-010, -0.999992907, -7.26728331e-006, -0.999994278, -8.0171958e-010, -0.999992251, 7.50569825e-006, 3.24877897e-006)
368
p1.Anchored = true
369
p1.CanCollide = false
370
b1 = Instance.new("SpecialMesh", p1)
371
b1.MeshId = "http://www.roblox.com/Asset/?id=9756362"
372
b1.TextureId = ""
373
b1.MeshType = Enum.MeshType.FileMesh
374
b1.Name = "Mesh"
375
b1.Scale = Vector3.new(0.0900000036, 1.5, 0.200000003)
376
p2 = Instance.new("Part", m)
377
p2.BrickColor = BrickColor.new("Really black")
378
p2.FormFactor = Enum.FormFactor.Custom
379
p2.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
380
p2.CFrame = CFrame.new(-4.78348494, 1.20046949, 11.0674896, 2.03024854e-007, 0.999994814, 2.68895456e-005, -6.45878536e-005, -2.68897929e-005, 0.999998271, 0.999994814, -2.04498548e-007, 6.45876353e-005)
381
p2.Anchored = true
382
p2.CanCollide = false
383
b2 = Instance.new("SpecialMesh", p2)
384
b2.MeshId = "http://www.roblox.com/Asset/?id=9756362"
385
b2.TextureId = ""
386
b2.MeshType = Enum.MeshType.FileMesh
387
b2.Name = "Mesh"
388
b2.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
389
p3 = Instance.new("Part", m)
390
p3.BrickColor = BrickColor.new("Royal purple")
391
p3.FormFactor = Enum.FormFactor.Custom
392
p3.Size = Vector3.new(0.200000003, 0.400000006, 0.400000006)
393
p3.CFrame = CFrame.new(-4.78348494, 1.20046949, 11.0674896, 1.35292976e-005, 0.999994814, 2.33750106e-005, 0.499945492, -2.70082237e-005, 0.866054654, 0.866051197, -3.0624193e-008, -0.499943763)
394
p3.Anchored = true
395
p3.CanCollide = false
396
b3 = Instance.new("SpecialMesh", p3)
397
b3.MeshId = "http://www.roblox.com/Asset/?id=9756362"
398
b3.TextureId = ""
399
b3.MeshType = Enum.MeshType.FileMesh
400
b3.Name = "Mesh"
401
b3.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
402
p4 = Instance.new("Part", m)
403
p4.BrickColor = BrickColor.new("Royal purple")
404
p4.FormFactor = Enum.FormFactor.Custom
405
p4.Size = Vector3.new(0.200000003, 0.200000003, 0.400000006)
406
p4.CFrame = CFrame.new(-3.9834733, 1.20044112, 11.0675144, 1.90376704e-005, 0.999994814, 1.91206054e-005, 0.707060516, -2.69822558e-005, 0.707149625, 0.707147956, 5.72263765e-008, -0.707058728)
407
p4.Anchored = true
408
p4.CanCollide = false
409
b4 = Instance.new("SpecialMesh", p4)
410
b4.MeshId = "http://www.roblox.com/Asset/?id=9756362"
411
b4.TextureId = ""
412
b4.MeshType = Enum.MeshType.FileMesh
413
b4.Name = "Mesh"
414
b4.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
415
p5 = Instance.new("Part", m)
416
p5.BrickColor = BrickColor.new("Really black")
417
p5.FormFactor = Enum.FormFactor.Custom
418
p5.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
419
p5.CFrame = CFrame.new(-3.9834733, 1.20044112, 11.0675144, 2.03024854e-007, 0.999994814, 2.68895456e-005, -6.45878536e-005, -2.68897929e-005, 0.999998271, 0.999994814, -2.04498548e-007, 6.45876353e-005)
420
p5.Anchored = true
421
p5.CanCollide = false
422
b5 = Instance.new("SpecialMesh", p5)
423
b5.MeshId = "http://www.roblox.com/Asset/?id=9756362"
424
b5.TextureId = ""
425
b5.MeshType = Enum.MeshType.FileMesh
426
b5.Name = "Mesh"
427
b5.Scale = Vector3.new(0.100000001, 0.25999999, 0.100000001)
428
p6 = Instance.new("Part", m)
429
p6.BrickColor = BrickColor.new("Royal purple")
430
p6.Material = Enum.Material.SmoothPlastic
431
p6.FormFactor = Enum.FormFactor.Custom
432
p6.Size = Vector3.new(0.200000003, 0.600000143, 1)
433
p6.CFrame = CFrame.new(-4.38349676, 0.700476408, 11.0674639, 2.03024811e-007, 2.68621734e-005, -0.999994993, -6.45878681e-005, 0.999998331, 2.68624135e-005, 0.999994993, 6.45876644e-005, 2.04505866e-007)
434
p6.Anchored = true
435
p6.CanCollide = false
436
b6 = Instance.new("CylinderMesh", p6)
437
b6.Name = "Mesh"
438
b6.Scale = Vector3.new(1, 1.5, 0.100000001)
439
p7 = Instance.new("Part", m)
440
p7.BrickColor = BrickColor.new("Royal purple")
441
p7.Material = Enum.Material.SmoothPlastic
442
p7.FormFactor = Enum.FormFactor.Custom
443
p7.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
444
p7.CFrame = CFrame.new(-4.38347578, 0.100488186, 11.0674219, 0.999994993, 2.68598014e-005, -2.10421803e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, 2.08939497e-007, 6.46425033e-005, 0.999994993)
445
p7.Anchored = true
446
p7.CanCollide = false
447
b7 = Instance.new("SpecialMesh", p7)
448
b7.MeshId = "http://www.roblox.com/asset/?id=3270017"
449
b7.TextureId = ""
450
b7.MeshType = Enum.MeshType.FileMesh
451
b7.Name = "Mesh"
452
b7.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
453
p8 = Instance.new("Part", m)
454
p8.BrickColor = BrickColor.new("Really black")
455
p8.Material = Enum.Material.SmoothPlastic
456
p8.FormFactor = Enum.FormFactor.Custom
457
p8.Size = Vector3.new(0.200000003, 0.80000037, 0.200000003)
458
p8.CFrame = CFrame.new(-4.44335222, 6.31963682, 11.0678616, -2.03024811e-007, 2.68621734e-005, 0.999994993, 6.45878681e-005, 0.999998331, -2.68624135e-005, -0.999994993, 6.45876644e-005, -2.04505866e-007)
459
p8.Anchored = true
460
p8.CanCollide = false
461
b8 = Instance.new("SpecialMesh", p8)
462
b8.MeshType = Enum.MeshType.Wedge
463
b8.Name = "Mesh"
464
b8.Scale = Vector3.new(0.400000006, 1, 0.600000024)
465
p9 = Instance.new("Part", m)
466
p9.BrickColor = BrickColor.new("Really black")
467
p9.Material = Enum.Material.SmoothPlastic
468
p9.FormFactor = Enum.FormFactor.Custom
469
p9.Size = Vector3.new(0.200000003, 0.600000024, 0.200000003)
470
p9.CFrame = CFrame.new(-4.38343573, 1.70038664, 11.0675249, 2.03024811e-007, 2.68621734e-005, -0.999994993, -6.45878681e-005, 0.999998331, 2.68624135e-005, 0.999994993, 6.45876644e-005, 2.04505866e-007)
471
p9.Anchored = true
472
p9.CanCollide = false
473
b9 = Instance.new("BlockMesh", p9)
474
b9.Name = "Mesh"
475
b9.Scale = Vector3.new(0.449999988, 1.10000002, 0.150000006)
476
handl = Instance.new("Part", m)
477
handl.BrickColor = BrickColor.new("Really black")
478
handl.Material = Enum.Material.SmoothPlastic
479
handl.Name = "handle"
480
handl.FormFactor = Enum.FormFactor.Custom
481
handl.Size = Vector3.new(0.200000003, 0.600000024, 0.200000003)
482
handl.CFrame = CFrame.new(-4.38349676, 0.700476408, 11.0674639, 2.03024811e-007, 2.68621734e-005, -0.999994993, -6.45878681e-005, 0.999998331, 2.68624135e-005, 0.999994993, 6.45876644e-005, 2.04505866e-007)
483
handl.Anchored = true
484
handl.CanCollide = false
485
b10 = Instance.new("BlockMesh", handl)
486
b10.Name = "Mesh"
487
b10.Scale = Vector3.new(0.5, 1.5, 0.150000006)
488
p11 = Instance.new("Part", m)
489
p11.BrickColor = BrickColor.new("Really black")
490
p11.Material = Enum.Material.SmoothPlastic
491
p11.FormFactor = Enum.FormFactor.Custom
492
p11.Size = Vector3.new(0.400000006, 0.200000003, 0.200000003)
493
p11.CFrame = CFrame.new(-4.3834815, 1.20045376, 11.0674934, 0.000361636019, 0.000304358749, -0.999994814, -0.999998271, -0.000127056977, -0.000361675629, -0.000127166844, 0.999994755, 0.000304312387)
494
p11.Anchored = true
495
p11.CanCollide = false
496
p11.BottomSurface = Enum.SurfaceType.Smooth
497
p11.TopSurface = Enum.SurfaceType.Smooth
498
b11 = Instance.new("SpecialMesh", p11)
499
b11.MeshId = "http://www.roblox.com/asset/?id=16606212"
500
b11.TextureId = ""
501
b11.MeshType = Enum.MeshType.FileMesh
502
b11.Name = "Mesh"
503
b11.Scale = Vector3.new(0.0500000007, 0.0599999987, 0.219999999)
504
p12 = Instance.new("Part", m)
505
p12.BrickColor = BrickColor.new("Royal purple")
506
p12.Material = Enum.Material.SmoothPlastic
507
p12.FormFactor = Enum.FormFactor.Custom
508
p12.Size = Vector3.new(0.600000024, 0.400000036, 0.400000006)
509
p12.CFrame = CFrame.new(-4.38352394, 0.900473356, 11.0674744, 0.999994993, -2.10422286e-007, -2.68598014e-005, -2.68600634e-005, -6.46624612e-005, -0.999998331, 2.08939497e-007, 0.999994993, -6.46621702e-005)
510
p12.Anchored = true
511
p12.CanCollide = false
512
b12 = Instance.new("SpecialMesh", p12)
513
b12.MeshId = "http://www.roblox.com/asset/?id=3270017"
514
b12.TextureId = ""
515
b12.MeshType = Enum.MeshType.FileMesh
516
b12.Name = "Mesh"
517
b12.Scale = Vector3.new(0.200000003, 0.200000003, 0.400000006)
518
p13 = Instance.new("Part", m)
519
p13.BrickColor = BrickColor.new("Really black")
520
p13.Material = Enum.Material.SmoothPlastic
521
p13.FormFactor = Enum.FormFactor.Custom
522
p13.Size = Vector3.new(0.200000003, 1.79999995, 0.200000003)
523
p13.CFrame = CFrame.new(-4.38342142, 3.50038433, 11.0676756, 2.03024811e-007, 2.68621734e-005, -0.999994993, -6.45878681e-005, 0.999998331, 2.68624135e-005, 0.999994993, 6.45876644e-005, 2.04505866e-007)
524
p13.Anchored = true
525
p13.CanCollide = false
526
b13 = Instance.new("BlockMesh", p13)
527
b13.Name = "Mesh"
528
b13.Scale = Vector3.new(0.400000006, 2.70000005, 1.25)
529
p14 = Instance.new("Part", m)
530
p14.BrickColor = BrickColor.new("Royal purple")
531
p14.Material = Enum.Material.SmoothPlastic
532
p14.FormFactor = Enum.FormFactor.Custom
533
p14.Size = Vector3.new(0.200000003, 0.800000012, 0.200000003)
534
p14.CFrame = CFrame.new(-4.3834815, 1.20045376, 11.0674934, 2.03024854e-007, 0.999994814, 2.68895456e-005, -6.45878536e-005, -2.68897929e-005, 0.999998271, 0.999994814, -2.04498548e-007, 6.45876353e-005)
535
p14.Anchored = true
536
p14.CanCollide = false
537
b14 = Instance.new("CylinderMesh", p14)
538
b14.Name = "Mesh"
539
b14.Scale = Vector3.new(1, 0.860000014, 0.349999994)
540
p15 = Instance.new("Part", m)
541
p15.BrickColor = BrickColor.new("Royal purple")
542
p15.Material = Enum.Material.SmoothPlastic
543
p15.FormFactor = Enum.FormFactor.Custom
544
p15.Size = Vector3.new(0.200000003, 0.400000006, 0.200000003)
545
p15.CFrame = CFrame.new(-4.38351488, 1.00045681, 11.067482, 0.999994993, -2.10422286e-007, -2.68598014e-005, -2.68600634e-005, -6.46624612e-005, -0.999998331, 2.08939497e-007, 0.999994993, -6.46621702e-005)
546
p15.Anchored = true
547
p15.CanCollide = false
548
b15 = Instance.new("SpecialMesh", p15)
549
b15.MeshId = "http://www.roblox.com/asset/?id=3270017"
550
b15.TextureId = ""
551
b15.MeshType = Enum.MeshType.FileMesh
552
b15.Name = "Mesh"
553
b15.Scale = Vector3.new(0.200000003, 0.200000003, 0.400000006)
554
p16 = Instance.new("Part", m)
555
p16.BrickColor = BrickColor.new("Royal purple")
556
p16.Material = Enum.Material.SmoothPlastic
557
p16.FormFactor = Enum.FormFactor.Custom
558
p16.Size = Vector3.new(1, 0.200000003, 0.400000036)
559
p16.CFrame = CFrame.new(-4.3834815, 1.20045376, 11.0674934, 0.999994993, 2.10420296e-007, 2.68598014e-005, -2.68600634e-005, 6.45879554e-005, 0.999998331, 2.08939497e-007, -0.999994993, 6.45876644e-005)
560
p16.Anchored = true
561
p16.CanCollide = false
562
b16 = Instance.new("CylinderMesh", p16)
563
b16.Name = "Mesh"
564
b16.Scale = Vector3.new(1, 0.899999976, 0.899999976)
565
p17 = Instance.new("Part", m)
566
p17.BrickColor = BrickColor.new("Royal purple")
567
p17.Material = Enum.Material.SmoothPlastic
568
p17.FormFactor = Enum.FormFactor.Custom
569
p17.Size = Vector3.new(0.200000033, 0.200000003, 0.400000006)
570
p17.CFrame = CFrame.new(-4.3834815, 1.20045376, 11.0674934, 0.999994993, 1.22376412e-006, 2.79684682e-005, -2.79687956e-005, 6.45115288e-005, 0.999998331, 1.22221331e-006, -0.999994993, 6.45113687e-005)
571
p17.Anchored = true
572
p17.CanCollide = false
573
b17 = Instance.new("CylinderMesh", p17)
574
b17.Name = "Mesh"
575
b17.Scale = Vector3.new(1, 1.10000002, 0.25)
576
p18 = Instance.new("Part", m)
577
p18.BrickColor = BrickColor.new("Really black")
578
p18.Material = Enum.Material.SmoothPlastic
579
p18.FormFactor = Enum.FormFactor.Custom
580
p18.Size = Vector3.new(0.600000024, 0.200000003, 0.400000006)
581
p18.CFrame = CFrame.new(-4.3834815, 1.20045376, 11.0674934, 0.999994993, 2.10420296e-007, 2.68598014e-005, -2.68600634e-005, 6.45879554e-005, 0.999998331, 2.08939497e-007, -0.999994993, 6.45876644e-005)
582
p18.Anchored = true
583
p18.CanCollide = false
584
b18 = Instance.new("CylinderMesh", p18)
585
b18.Name = "Mesh"
586
b18.Scale = Vector3.new(1, 1, 0.5)
587
p19 = Instance.new("Part", m)
588
p19.BrickColor = BrickColor.new("Really black")
589
p19.Material = Enum.Material.SmoothPlastic
590
p19.FormFactor = Enum.FormFactor.Custom
591
p19.Size = Vector3.new(0.200000003, 0.80000037, 0.200000003)
592
p19.CFrame = CFrame.new(-4.32335329, 6.31963253, 11.0678616, 1.78813934e-007, 2.67998621e-005, -0.999994993, -6.46066765e-005, 0.999998331, 2.68001022e-005, 0.999994993, 6.46064655e-005, 1.78813934e-007)
593
p19.Anchored = true
594
p19.CanCollide = false
595
b19 = Instance.new("SpecialMesh", p19)
596
b19.MeshType = Enum.MeshType.Wedge
597
b19.Name = "Mesh"
598
b19.Scale = Vector3.new(0.400000006, 1, 0.600000024)
599
blade = Instance.new("Part", m)
600
blade.BrickColor = BrickColor.new("Royal purple")
601
blade.Material = Enum.Material.SmoothPlastic
602
blade.Name = "blade"
603
blade.FormFactor = Enum.FormFactor.Custom
604
blade.Size = Vector3.new(0.200000003, 1.79999995, 0.200000003)
605
blade.CFrame = CFrame.new(-4.38342142, 3.50038433, 11.0676756, 2.03024811e-007, 2.68621734e-005, -0.999994993, -6.45878681e-005, 0.999998331, 2.68624135e-005, 0.999994993, 6.45876644e-005, 2.04505866e-007)
606
blade.Anchored = true
607
blade.CanCollide = false
608
b20 = Instance.new("BlockMesh", blade)
609
b20.Name = "Mesh"
610
b20.Scale = Vector3.new(0.419999987, 2.70000005, 0.5)
611
p21 = Instance.new("Part", m)
612
p21.BrickColor = BrickColor.new("Royal purple")
613
p21.Material = Enum.Material.SmoothPlastic
614
p21.FormFactor = Enum.FormFactor.Custom
615
p21.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
616
p21.CFrame = CFrame.new(-4.87347412, 1.20048833, 11.067421, 0.999994993, 2.68597978e-005, -1.63912773e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, 1.63912773e-007, 6.46424742e-005, 0.999994993)
617
p21.Anchored = true
618
p21.CanCollide = false
619
b21 = Instance.new("SpecialMesh", p21)
620
b21.MeshId = "http://www.roblox.com/asset/?id=3270017"
621
b21.TextureId = ""
622
b21.MeshType = Enum.MeshType.FileMesh
623
b21.Name = "Mesh"
624
b21.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
625
p22 = Instance.new("Part", m)
626
p22.BrickColor = BrickColor.new("Really black")
627
p22.Material = Enum.Material.SmoothPlastic
628
p22.FormFactor = Enum.FormFactor.Custom
629
p22.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
630
p22.CFrame = CFrame.new(-4.6434741, 1.36048794, 11.0674219, 0.999994993, 2.68597978e-005, -1.63912773e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, 1.63912773e-007, 6.46424742e-005, 0.999994993)
631
p22.Anchored = true
632
p22.CanCollide = false
633
b22 = Instance.new("SpecialMesh", p22)
634
b22.MeshId = "http://www.roblox.com/asset/?id=3270017"
635
b22.TextureId = ""
636
b22.MeshType = Enum.MeshType.FileMesh
637
b22.Name = "Mesh"
638
b22.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
639
p23 = Instance.new("Part", m)
640
p23.BrickColor = BrickColor.new("Really black")
641
p23.Material = Enum.Material.SmoothPlastic
642
p23.FormFactor = Enum.FormFactor.Custom
643
p23.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
644
p23.CFrame = CFrame.new(-4.6434741, 1.05048847, 11.0674219, 0.999994993, 2.68597978e-005, -1.63912773e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, 1.63912773e-007, 6.46424742e-005, 0.999994993)
645
p23.Anchored = true
646
p23.CanCollide = false
647
b23 = Instance.new("SpecialMesh", p23)
648
b23.MeshId = "http://www.roblox.com/asset/?id=3270017"
649
b23.TextureId = ""
650
b23.MeshType = Enum.MeshType.FileMesh
651
b23.Name = "Mesh"
652
b23.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
653
p24 = Instance.new("Part", m)
654
p24.BrickColor = BrickColor.new("Really black")
655
p24.FormFactor = Enum.FormFactor.Custom
656
p24.Size = Vector3.new(0.200000003, 0.400000006, 0.400000006)
657
p24.CFrame = CFrame.new(-4.38800001, 3.43899989, 11.0679998, -3.24902021e-006, 9.58114477e-010, -0.999992907, -7.26728331e-006, -0.999994278, -8.0171958e-010, -0.999992251, 7.50569825e-006, 3.24877897e-006)
658
p24.Anchored = true
659
p24.CanCollide = false
660
b24 = Instance.new("SpecialMesh", p24)
661
b24.MeshId = "http://www.roblox.com/Asset/?id=9756362"
662
b24.TextureId = ""
663
b24.MeshType = Enum.MeshType.FileMesh
664
b24.Name = "Mesh"
665
b24.Scale = Vector3.new(0.100000001, 1.5, 0.100000001)
666
p25 = Instance.new("Part", m)
667
p25.BrickColor = BrickColor.new("Really black")
668
p25.Material = Enum.Material.SmoothPlastic
669
p25.FormFactor = Enum.FormFactor.Custom
670
p25.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
671
p25.CFrame = CFrame.new(-4.12346935, 1.36048794, 11.0674219, -0.999994993, -2.6859796e-005, 1.78813934e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, -1.78813934e-007, -6.46425033e-005, -0.999994993)
672
p25.Anchored = true
673
p25.CanCollide = false
674
b25 = Instance.new("SpecialMesh", p25)
675
b25.MeshId = "http://www.roblox.com/asset/?id=3270017"
676
b25.TextureId = ""
677
b25.MeshType = Enum.MeshType.FileMesh
678
b25.Name = "Mesh"
679
b25.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
680
p26 = Instance.new("Part", m)
681
p26.BrickColor = BrickColor.new("Royal purple")
682
p26.Material = Enum.Material.SmoothPlastic
683
p26.FormFactor = Enum.FormFactor.Custom
684
p26.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
685
p26.CFrame = CFrame.new(-3.89346814, 1.20048833, 11.0674229, -0.999994993, -2.6859796e-005, 1.78813934e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, -1.78813934e-007, -6.46425033e-005, -0.999994993)
686
p26.Anchored = true
687
p26.CanCollide = false
688
b26 = Instance.new("SpecialMesh", p26)
689
b26.MeshId = "http://www.roblox.com/asset/?id=3270017"
690
b26.TextureId = ""
691
b26.MeshType = Enum.MeshType.FileMesh
692
b26.Name = "Mesh"
693
b26.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
694
p27 = Instance.new("Part", m)
695
p27.BrickColor = BrickColor.new("Really black")
696
p27.Material = Enum.Material.SmoothPlastic
697
p27.FormFactor = Enum.FormFactor.Custom
698
p27.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
699
p27.CFrame = CFrame.new(-4.12346935, 1.05048847, 11.0674219, -0.999994993, -2.6859796e-005, 1.78813934e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, -1.78813934e-007, -6.46425033e-005, -0.999994993)
700
p27.Anchored = true
701
p27.CanCollide = false
702
b27 = Instance.new("SpecialMesh", p27)
703
b27.MeshId = "http://www.roblox.com/asset/?id=3270017"
704
b27.TextureId = ""
705
b27.MeshType = Enum.MeshType.FileMesh
706
b27.Name = "Mesh"
707
b27.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
708
p28 = Instance.new("Part", m)
709
p28.BrickColor = BrickColor.new("Really black")
710
p28.Material = Enum.Material.SmoothPlastic
711
p28.FormFactor = Enum.FormFactor.Custom
712
p28.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003)
713
p28.CFrame = CFrame.new(-4.12346935, 1.36048794, 11.0674219, -0.999994993, -2.6859796e-005, 1.78813934e-007, -2.68600634e-005, 0.999998331, -6.46428016e-005, -1.78813934e-007, -6.46425033e-005, -0.999994993)
714
p28.Anchored = true
715
p28.CanCollide = false
716
b28 = Instance.new("SpecialMesh", p28)
717
b28.MeshId = "http://www.roblox.com/asset/?id=3270017"
718
b28.TextureId = ""
719
b28.MeshType = Enum.MeshType.FileMesh
720
b28.Name = "Mesh"
721
b28.Scale = Vector3.new(0.280000001, 0.280000001, 0.5)
722
c = m:children()
723
for n = 1, #c do
724
	if (c[n].className == "Part") then
725
		if (c[n].Name ~= "handle") then
726
			stick(c[n], m.handle)
727
			wait()
728
			c[n].Anchored = false
729
		end
730
	end
731
end
732
for _,v in pairs(pchar:GetChildren()) do if v.ClassName=="Hat" then v:remove() end end
733
handl.Anchored=false
734
mwl= Weld(handl,pchar.Torso,-1,0,-1,rad(120),0,0,m)
735
m.Parent = pchar
736
hp=Instance.new('HopperBin',player.Backpack)
737
hp.Name='Despira'
738
739
local hat=Part(.5,1,1.02,'Really black',0,false,false,pchar)
740
Mesh(hat,'http://www.roblox.com/asset/?id=16952952',1.05,1.05,1.05)
741
Weld(pchar.Head,hat,0,-.25,0,0,0,0,p)
742
-- cape mesh cause lazy :p
743
local cpw=Part(.2,.2,.2,'White',1,false,false,pchar)
744
Weld(torso,cpw,0,-1,-.5,0,0,0,p)
745
local cp=Part(.1,.1,.1,'Really black',0,false,false,pchar)
746
Mesh(cp,'http://www.roblox.com/asset/?id=114046169',1.3,1.3,1.3)
747
cape = Weld(cpw,cp,0,1.2,0,0,0,0,p)
748
749
local function newLerpTo(weld)
750
        return {
751
                Weld = weld;
752
                To = weld.C0; 
753
                Cache = weld.C0; 
754
                Speed = 0.2; 
755
        }
756
end
757
758
Used={Head=false,RightArm=false,LeftArm=false,RightLeg=false,LeftLeg=false,Torso=false}
759
760
function SetAnimData(IF_DATA_IS_USED)
761
    Used = IF_DATA_IS_USED
762
end
763
764
function CheckAnimData(ANIM_TAB,DO_ANIM)
765
    anglespeed=Anims[ANIM_TAB][DO_ANIM].speed or 1
766
    if Used.Head == true then
767
        LerpTo.Neck.To = LerpTo.Neck.Cache * Anims[ANIM_TAB][DO_ANIM].Head
768
    end
769
    if Used.RightArm == true then
770
        LerpTo.RightArm.To = LerpTo.RightArm.Cache * Anims[ANIM_TAB][DO_ANIM].RightArm
771
    end
772
    if Used.LeftArm == true then
773
        LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * Anims[ANIM_TAB][DO_ANIM].LeftArm
774
    end
775
    if Used.RightLeg == true then
776
        LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * Anims[ANIM_TAB][DO_ANIM].RightLeg
777
    end
778
    if Used.LeftLeg == true then
779
        LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * Anims[ANIM_TAB][DO_ANIM].LeftLeg
780
    end
781
    if Used.Torso == true then
782
        LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * Anims[ANIM_TAB][DO_ANIM].Torso
783
    end
784
    LerpTo.cape.To = LerpTo.cape.Cache * Anims[ANIM_TAB][DO_ANIM].Cape
785
end
786
787
788
function UpdateAnims()
789
    Anims = {
790
        ["Idle"] = {
791
            ["Stance"] = {
792
                speed=.25,
793
                Head = CFrame.Angles(cos(angle)*0.01,0,0),
794
                RightArm = CFrame.Angles(cos(angle)*0.1,0,0),
795
                LeftArm = CFrame.Angles(-cos(angle)*0.1,0,0),
796
                RightLeg = CFrame.Angles(cos(angle)*0.1,0,0),
797
                LeftLeg = CFrame.Angles(-cos(angle)*0.1,0,0),
798
                Torso = CFrame.Angles(0,0,0),
799
                Cape = CFrame.Angles(0,0,0)
800
                },
801
            ["Walk"] = {
802
                speed=2,
803
                Head = CFrame.Angles(0,0,cos(angle)*0.05),
804
                RightArm = CFrame.Angles(-cos(angle)*1,0,0),
805
                LeftArm = CFrame.Angles(cos(angle)*1,0,0),
806
                RightLeg = CFrame.Angles(cos(angle)*1,0,0),
807
                LeftLeg = CFrame.Angles(-cos(angle)*1,0,0),
808
                Torso = CFrame.Angles(0,0,0),
809
                Cape =CFrame.Angles(-rad(40)+sin(angle)*.1,0,0)
810
                },
811
            ["Jump"] = {
812
                speed=2,
813
                Head = CFrame.Angles(0,0,0),
814
                RightArm = CFrame.Angles(rad(-20),0,0),
815
                LeftArm = CFrame.Angles(rad(-20),0,0),
816
                RightLeg = CFrame.new(0,.5,-.5)*CFrame.Angles(rad(-20),0,0),
817
                LeftLeg = CFrame.Angles(0,0,0), 
818
                Torso = CFrame.Angles(rad(10),0,0),
819
                Cape = CFrame.Angles(-rad(70)+sin(angle)*.4,0,0)
820
                }
821
            },
822
        ["Holding"] = {
823
            ["Stance"] = {
824
                speed=.25,
825
                Head = CFrame.Angles(cos(angle)*0.01,0,0),
826
                RightArm = CFrame.Angles(cos(angle)*0.1,0,rad(10)),
827
                LeftArm = CFrame.Angles(-cos(angle)*0.1,0,-rad(10)),
828
                RightLeg = CFrame.Angles(cos(angle)*0.1,0,0),
829
                LeftLeg = CFrame.Angles(-cos(angle)*0.1,0,0),
830
                Torso = CFrame.Angles(0,0,0),
831
                Cape = CFrame.Angles(0,0,0)
832
                },
833
            ["Walk"] = {
834
                speed=2,
835
                Head = CFrame.Angles(0,0,cos(angle)*0.05),
836
                RightArm = CFrame.Angles(-cos(angle)*.3,0,rad(10)),
837
                LeftArm = CFrame.Angles(cos(angle)*.3,0,-rad(10)),
838
                RightLeg = CFrame.Angles(cos(angle)*1,0,0),
839
                LeftLeg = CFrame.Angles(-cos(angle)*1,0,0),
840
                Torso = CFrame.Angles(0,0,0),
841
                Cape =CFrame.Angles(-rad(40)+sin(angle)*.1,0,0)
842
                },
843
            ["Jump"] = {
844
                speed=2,
845
                Head = CFrame.Angles(0,0,0),
846
                RightArm = CFrame.Angles(rad(-20),0,0),
847
                LeftArm = CFrame.Angles(rad(-20),0,0),
848
                RightLeg = CFrame.new(0,.5,-.5)*CFrame.Angles(rad(-20),0,0),
849
                LeftLeg = CFrame.Angles(0,0,0), 
850
                Torso = CFrame.Angles(rad(10),0,0),
851
                Cape = CFrame.Angles(-rad(70)+sin(angle)*.4,0,0)
852
                }
853
            }
854
        }
855
end
856
857
858
859
860
LerpTo = {
861
        Neck = newLerpTo(Neck);
862
        LeftArm = newLerpTo(LeftShoulder);
863
        RightArm = newLerpTo(RightShoulder);
864
        LeftLeg = newLerpTo(LeftHip);
865
        RightLeg = newLerpTo(RightHip);
866
        RootJoint = newLerpTo(RootJoint);
867
        hndl = newLerpTo(mwl);
868
        cape = newLerpTo(cape);
869
}
870
LerpTo.hndl.Cache=CFrame.new(0,-0.3,0)*CFrame.Angles(0,0,rad(90))
871
hitdeb=false
872
hp.Selected:connect(function(mouse)
873
	local jmptimer = 0
874
	mouse.Button1Down:connect(function()
875
		if attack == true then return end 
876
	    if combo==0 then
877
	    	attack=true
878
            tmdmg(10,blade,5,3)
879
	        SetAnimData({Head=false,RightArm=false,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=false})
880
			LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(120),rad(40),-rad(50))*CFrame.new(0,-.5,0)
881
			LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(30))
882
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(30),0)
883
			wait(.1)
884
			trail(blade,10,5)
885
			so('161006212',torso,false,1)
886
			LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(0,0,rad(50))*CFrame.new(0,-.5,0)
887
			LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
888
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
889
			wait(.2)
890
			attack=false
891
	        combo=1
892
	    elseif combo==1 then
893
	    	attack=true
894
            tmdmg(10,blade,5,3)
895
	    	SetAnimData({Head=false,RightArm=false,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=false})
896
	        LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(150),0,rad(120))*CFrame.new(-.5,0,0)
897
			LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
898
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
899
			wait(.1)
900
			trail(blade,10,5)
901
			so('161006212',torso,false,.8)
902
			LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(70),0,-rad(50))*CFrame.new(.5,0,-0.5)*CFrame.Angles(0,-rad(90),0)
903
			LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(70))
904
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(70),0)
905
			wait(.2)
906
			attack=false
907
	        combo=2
908
	    elseif combo==2 then
909
	    	attack=true
910
	    	trail(blade,35,5)
911
            tmdmg(10,blade,5,3)
912
			so('160069154',torso,false,1)
913
			SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=false})
914
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
915
			LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,-rad(40))*CFrame.new(0,-.5,0)
916
			LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(40))*CFrame.new(0,-.5,0)
917
			LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(rad(90),0,0)
918
			local spn=0
919
			for i=1,15 do
920
	            spn=spn+30
921
	            wait(i/1000)
922
	            LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(spn)+rad(70))
923
	        end
924
	        attack=false
925
	        combo=3
926
	    end
927
	    Spawn(function()
928
	        wait(0.6)
929
	        if attack==false then
930
	            attack=true
931
	            SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
932
        		LerpTo.hndl.To = LerpTo.hndl.Cache
933
	            wait(.2)
934
	            attack=false
935
	            combo=0
936
	        end
937
	    end)
938
	end)
939
	mouse.KeyDown:connect(function(ke)
940
		if attack==true then return end
941
	    key=ke:lower()
942
	    if key=="e" then attack=true
943
	    	SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=false})
944
            posfix(-rad(90))
945
            LerpTo.hndl.To = CFrame.new(0,-0.3,0)
946
	    	LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(30))
947
            LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(90))*CFrame.new(0.5,-.5,0)
948
			LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(90))
949
			LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(90),0)
950
            wait(.3)
951
            mgblock(pchar['Left Arm'],CFrame.new(0,-1,0),7,'Really black','Royal purple',Vector3.new(1.5,1.5,1.5),.1)
952
            so('28257433',pchar.Torso,false,.8)
953
            local efx= Part(1,1,1,'Black',0,false,true,pchar)
954
            local m= Mesh(efx,'http://www.roblox.com/asset/?id=51177741',2,2,2)
955
            efx.CFrame=pchar['Left Arm'].CFrame*CFrame.Angles(-rad(90),0,rad(90))
956
            local cb=Part(1,1,1,'Black',0,false,true,pchar)
957
            Mesh(cb,1,1,1,1)
958
            for i=1,20 do wait()
959
                efx.CFrame=clerp(efx.CFrame,efx.CFrame*CFrame.new(0,0,-50),.1)
960
                local p=Part(1,1,1,Cols[math.random(1,#Cols)],0,false,true,pchar)
961
                Mesh(p,3,1.5,1.5,1.5)
962
                p.CFrame=efx.CFrame
963
                cb.Size = Vector3.new(.5, (pchar['Left Arm'].Position - efx.Position).magnitude, .5)
964
                cb.CFrame = CFrame.new((pchar['Left Arm'].Position + efx.Position)/2, pchar['Left Arm'].Position) * CFrame.Angles(math.pi/2, 0, 0)
965
                coroutine.resume(coroutine.create(function(part,spin)
966
                    for i=1, 15 do
967
                        part.Mesh.Scale=part.Mesh.Scale+Vector3.new(.3,.3,.3)
968
                        part.Transparency=i/15
969
                        part.CFrame=part.CFrame*CFrame.new(math.random(-10,10)/3,math.random(-10,10)/3,math.random(-10,10)/3)*spin
970
                        wait()
971
                    end
972
                    part.Parent=nil
973
                end),p,CFrame.fromEulerAnglesXYZ(math.random(-50,50)/500,math.random(-50,50)/500,math.random(-50,50)/500))
974
                if hitdeb==false then
975
                    for i,v in pairs(workspace:children()) do
976
                        if v:IsA("Model") and v:findFirstChild("Humanoid") then
977
                            if v:findFirstChild("Head") and v:findFirstChild("Torso") then
978
                                if (v:findFirstChild("Torso").Position - efx.Position).magnitude < 7 and v.Name ~= pchar.Name then
979
                                    damg=math.random(5,10)
980
                                    v.Humanoid:TakeDamage(damg)
981
                                    v.Humanoid.PlatformStand=true
982
                                    local lock=Weld(efx,v.Torso,0,0,0,0,0,0,v)
983
                                    local asd=true
984
                                    Spawn(function()
985
                                        while asd do wait()
986
                                            efx.CFrame=clerp(efx.CFrame,pchar.HumanoidRootPart.CFrame*CFrame.new(0,0,-7),.2)
987
                                            cb.Size = Vector3.new(.5, (pchar['Left Arm'].Position - efx.Position).magnitude, .5)
988
                                            cb.CFrame = CFrame.new((pchar['Left Arm'].Position + efx.Position)/2, pchar['Left Arm'].Position) * CFrame.Angles(math.pi/2, 0, 0)
989
                                        end
990
                                    end)
991
                                    wait(.1)
992
                                    for i=1,10 do wait()
993
                                        efx.Transparency=efx.Transparency+.1
994
                                    end
995
                                    trail(blade,35,5)
996
                                    tmdmg(10,blade,5,3)
997
                                    so('160069154',torso,false,1.1)
998
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(45))
999
                                    LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(90))
1000
                                    LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(90),0)
1001
                                    LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(90))*CFrame.new(-0.5,-.5,0)
1002
                                    LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(rad(90),0,rad(90))
1003
                                    wait(.05)
1004
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(90))*CFrame.new(0.5,-.5,0)
1005
                                    mgblock(pchar['Left Arm'],CFrame.new(0,-1,0),7,'Really black','Royal purple',Vector3.new(1.5,1.5,1.5),.1)
1006
                                    local spn=0
1007
                                    for i=1,12 do
1008
                                        spn=spn+30
1009
                                        wait()
1010
                                        LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(spn)-rad(90))
1011
                                        LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(spn)+rad(90),0)
1012
                                    end
1013
                                    wait(.3)
1014
                                    asd=false
1015
                                    so('28144425',torso,false,.265)
1016
                                    so('2697431',torso,false,.2)
1017
                                    local splos= Part(1,1,1,'Really black',.5,false,true,pchar)
1018
                                    local m= Mesh(splos,'http://www.roblox.com/asset/?id=20329976',3,1,3)
1019
                                    splos.CFrame=torso.CFrame*CFrame.new(-3,0,0)*CFrame.Angles(0,0,-pi/2)
1020
                                    Spawn(function()
1021
                                        for i=1,10 do wait(.01)
1022
                                            m.Scale=m.Scale+Vector3.new(1,.2,1)
1023
                                            splos.Transparency=splos.Transparency+.1
1024
                                        end
1025
                                        splos:Destroy()
1026
                                    end)
1027
                                    for i=1,3 do
1028
                                        for i=1,3 do
1029
                                            mgblock(v.Torso,CFrame.new(math.random(-3,3)/2,math.random(-3,3)/2,math.random(-3,3)/2),2,'Really black','Royal purple',Vector3.new(.1,.1,.1),0)
1030
                                        end
1031
                                    end
1032
                                    efx:Destroy()
1033
                                    cb:Destroy()
1034
                                    lock:Destroy()
1035
                                    mgblock(v.Torso,CFrame.new(math.random(-3,3)/2,math.random(-3,3)/2,math.random(-3,3)/2),20,'Really black','Royal purple',Vector3.new(.1,.1,.1),0)
1036
                                    local vs = Instance.new("BodyVelocity",v.Torso)
1037
                                    vs.maxForce = Vector3.new(1,1,1)*9e9
1038
                                    vs.P = 2000
1039
                                    vs.velocity = pchar.HumanoidRootPart.CFrame.lookVector*60+Vector3.new(0,150,0)
1040
                                    wait(.05)
1041
                                    vs:Destroy()
1042
                                    Spawn(function()
1043
                                        wait(2)
1044
                                        v.Humanoid.PlatformStand=false
1045
                                    end)
1046
                                    v.Humanoid.Health=v.Humanoid.Health-30
1047
                                    SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1048
                                    LerpTo.hndl.To = LerpTo.hndl.Cache
1049
                                    attack=false
1050
                                    return
1051
                                end
1052
                            end
1053
                        end
1054
                    end
1055
                end
1056
            end
1057
            for i=1,10 do wait()
1058
                efx.CFrame=clerp(efx.CFrame,pchar['Left Arm'].CFrame*CFrame.Angles(-rad(90),0,rad(90)),.2)
1059
                cb.Size = Vector3.new(.5, (pchar['Left Arm'].Position - efx.Position).magnitude, .5)
1060
                cb.CFrame = CFrame.new((pchar['Left Arm'].Position + efx.Position)/2, pchar['Left Arm'].Position) * CFrame.Angles(math.pi/2, 0, 0)
1061
            end
1062
            efx:Destroy()
1063
            cb:Destroy()
1064
            SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1065
            LerpTo.hndl.To = LerpTo.hndl.Cache
1066
            attack=false
1067
        elseif key=="z" then
1068
        elseif key=="x" then
1069
            attack=true
1070
            local tapdeb=false
1071
            for i,x in pairs(workspace:children()) do
1072
                if x:IsA("Model") and x:findFirstChild("Humanoid") then
1073
                    if x:findFirstChild("Head") and x:findFirstChild("Torso") then
1074
                        if (x:findFirstChild("Torso").Position - mouse.Hit.p).magnitude < 4 and x.Name ~= pchar.Name then
1075
                            if tapdeb==false then
1076
                                SetAnimData({Head=false,RightArm=false,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=false})
1077
                                cloneefx()
1078
                                pchar.Torso.CFrame=x.Torso.CFrame*CFrame.new(0,0,-4)*CFrame.Angles(0,pi/1,0)
1079
                                tmdmg(10,blade,3,3)
1080
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(120),rad(40),-rad(50))*CFrame.new(0,-.5,0)
1081
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(30))
1082
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(30),0)
1083
                                wait(.1)
1084
                                trail(blade,3,5)
1085
                                so('161006212',torso,false,1)
1086
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(0,0,rad(50))*CFrame.new(0,-.5,0)
1087
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
1088
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
1089
                                wait(.2)
1090
                                cloneefx()
1091
                                pchar.Torso.CFrame=x.Torso.CFrame*CFrame.new(-4,0,0)*CFrame.Angles(0,-pi/2,0)
1092
                                tmdmg(10,blade,4,3)
1093
                                SetAnimData({Head=false,RightArm=false,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=false})
1094
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(150),0,rad(120))*CFrame.new(-.5,0,0)
1095
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
1096
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
1097
                                wait(.1)
1098
                                trail(blade,3,5)
1099
                                so('161006212',torso,false,.8)
1100
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(70),0,-rad(50))*CFrame.new(.5,0,-0.5)*CFrame.Angles(0,-rad(90),0)
1101
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(70))
1102
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(70),0)
1103
                                wait(.2)
1104
                                cloneefx()
1105
                                pchar.Torso.CFrame=x.Torso.CFrame*CFrame.new(0,0,4)*CFrame.Angles(0,0,0)
1106
                                tmdmg(10,blade,4,3)
1107
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(120),rad(40),-rad(50))*CFrame.new(0,-.5,0)
1108
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(30))
1109
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(30),0)
1110
                                wait(.1)
1111
                                trail(blade,3,5)
1112
                                so('161006212',torso,false,1)
1113
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(0,0,rad(50))*CFrame.new(0,-.5,0)
1114
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
1115
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
1116
                                wait(.2)
1117
                                cloneefx()
1118
                                pchar.Torso.CFrame=x.Torso.CFrame*CFrame.new(4,0,0)*CFrame.Angles(0,pi/2,0)
1119
                                tmdmg(10,blade,4,3)
1120
                                SetAnimData({Head=false,RightArm=false,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=false})
1121
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(150),0,rad(120))*CFrame.new(-.5,0,0)
1122
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(30))
1123
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(30),0)
1124
                                wait(.1)
1125
                                trail(blade,3,5)
1126
                                so('161006212',torso,false,.8)
1127
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(70),0,-rad(50))*CFrame.new(.5,0,-0.5)*CFrame.Angles(0,-rad(90),0)
1128
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(70))
1129
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(70),0)
1130
                                wait(.2)
1131
                                so('161006212',torso,false,.5)
1132
                                cloneefx()
1133
                                tmdmg(10,blade,5,3)
1134
                                trail(blade,3,7)
1135
                                pchar.Torso.CFrame=x.Torso.CFrame*CFrame.new(0,0,-6)*CFrame.Angles(0,pi/1,0)
1136
                                LerpTo.hndl.To = CFrame.new(0,-0.3,0)
1137
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(30))
1138
                                LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(90))*CFrame.new(0.5,-.5,0)
1139
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(90))
1140
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(90),0)
1141
                                wait(.1)
1142
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,0)
1143
                                wait(.1)
1144
                                LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(rad(90),0,rad(90))
1145
                                LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,rad(90))
1146
                                LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(90))*CFrame.new(-.5,-.5,0)
1147
                                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(90),0)
1148
                                wait(.4)
1149
                                SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1150
                                LerpTo.hndl.To = LerpTo.hndl.Cache
1151
                                attack=false
1152
                                return
1153
                            end
1154
                        end
1155
                    end
1156
                end
1157
            end
1158
            attack=false
1159
        elseif key=="c" then
1160
            attack=true
1161
            SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=false})
1162
            posfix(-rad(90))
1163
            LerpTo.hndl.To = CFrame.new(0,-0.3,0)
1164
            LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(30))
1165
            LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(90))*CFrame.new(0.5,-.5,0)
1166
            LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(90))
1167
            LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(90),0)
1168
            wait(.1)
1169
            so('62339698',torso,false,.35)
1170
            Spawn(function()
1171
                for i=1,3 do wait()
1172
                    local efx= Part(1,1,1,'Really black',.5,false,true,m)
1173
                    local m= Mesh(efx,'http://www.roblox.com/asset/?id=20329976',3,1,3)
1174
                    efx.CFrame=torso.CFrame*CFrame.Angles(pi/2,0,-rad(90))
1175
                    Spawn(function()
1176
                        for i=1,7 do wait()
1177
                            m.Scale=m.Scale+Vector3.new(1,.1,1)
1178
                        end
1179
                        efx:Destroy()
1180
                    end)
1181
                end
1182
            end)
1183
            Spawn(function()
1184
                for i=1,4 do wait()
1185
                    mgblock(torso,CFrame.new(0,0,0),4,'Really black','Really black',Vector3.new(2,2,2),.1)
1186
                end
1187
            end)
1188
            local v = Instance.new("BodyVelocity",torso)
1189
            v.maxForce = Vector3.new(1,1,1)*9e9
1190
            v.P = 2000
1191
            local cfx=torso.CFrame*CFrame.Angles(0,rad(90),0)
1192
            v.velocity = cfx.lookVector*60
1193
            local tapdeb=false
1194
            for i=1,10 do wait()
1195
                for i,x in pairs(workspace:children()) do
1196
                    if x:IsA("Model") and x:findFirstChild("Humanoid") then
1197
                        if x:findFirstChild("Head") and x:findFirstChild("Torso") then
1198
                            if (x:findFirstChild("Torso").Position - torso.Position).magnitude < 7 and x.Name ~= pchar.Name then
1199
                                if tapdeb==false then
1200
                                    tmdmg(15,blade,3,5)
1201
                                    v:Destroy()
1202
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(40))*CFrame.new(0.5,-.5,0)
1203
                                    so('10209645',torso,false,.8)
1204
                                    for i=1,3 do wait()
1205
                                        x.Humanoid.PlatformStand=true
1206
                                        x.Torso.CFrame=pchar['Left Arm'].CFrame*CFrame.new(0,-1,0)*CFrame.Angles(rad(90),0,0)
1207
                                    end
1208
                                    so('46153268',torso,false,.5)
1209
                                    wait(.4)
1210
                                    SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=false,LeftLeg=false,Torso=false})
1211
                                    LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
1212
                                    LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,-rad(40))* CFrame.new(-.2,-.25,0)
1213
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(40))* CFrame.new(.2,-.25,0)
1214
                                    LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,0) * CFrame.new(0,0,-1)
1215
                                    LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * CFrame.Angles(0,0,0) * CFrame.new(0,1,-1)
1216
                                    LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * CFrame.Angles(-rad(50),0,0) * CFrame.new(0,0.5,0)
1217
                                    LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(0,0,-rad(90))*CFrame.Angles(-rad(130),0,0)
1218
                                    so('169310515',torso,false,.6)
1219
                                    wait(.4)
1220
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(150),0,0)
1221
                                    mgblock(pchar['Left Arm'],CFrame.new(0,-1,0),30,'Really black','Really black',Vector3.new(2,2,2),.1)
1222
                                    mgblock(x.Torso,CFrame.new(0,0,0),30,'Really black','Really black',Vector3.new(2,2,2),.1)
1223
                                    local vs = Instance.new("BodyVelocity",x.Torso)
1224
                                    vs.maxForce = Vector3.new(1,1,1)*9e9
1225
                                    vs.P = 2000
1226
                                    vs.velocity = Vector3.new(0,6,0)
1227
                                    local efx= Part(1,1,1,'Really black',1,false,true,m)
1228
                                    local m= Mesh(efx,'http://www.roblox.com/asset/?id=1185246',10,10,10)
1229
                                    Spawn(function()
1230
                                        for i=1,7 do wait()
1231
                                            efx.Transparency=efx.Transparency-.1
1232
                                        end
1233
                                    end)
1234
                                    for i=1,100 do
1235
                                        efx.CFrame=x.Torso.CFrame
1236
                                        wait()
1237
                                    end
1238
                                    vs:Destroy()
1239
                                    x.Torso.Anchored=true
1240
                                    local bp=Instance.new("BodyPosition",torso)
1241
                                    bp.maxForce=Vector3.new(10000,10000,10000)
1242
                                    bp.position=x.Torso.Position+Vector3.new(5,0,0)
1243
                                    so('160069154',torso,false,1.1)
1244
                                    LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(45))
1245
                                    LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(90))
1246
                                    LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,-rad(90),0)
1247
                                    LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,rad(90))*CFrame.new(-0.5,-.5,0)
1248
                                    LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(rad(90),0,rad(90))
1249
                                    trail(blade,35,5)
1250
                                    local spn=0
1251
                                    for i=1,12 do
1252
                                        spn=spn+30
1253
                                        wait()
1254
                                        LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,-rad(spn))
1255
                                        LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,rad(spn),0)
1256
                                    end
1257
                                    bp:Destroy()
1258
                                    efx:Destroy()
1259
                                    so('138122923',torso,false,.8)
1260
                                    x.Humanoid.Health=x.Humanoid.Health-20
1261
                                    for i=1,14 do
1262
                                        local efx= Part(1,1,1,'Really black',0,false,false,pchar)
1263
                                        local m= Mesh(efx,3,math.random(1,10)/10,math.random(1,10)/10,math.random(1,10)/10)
1264
                                        efx.CFrame=x.Torso.CFrame
1265
                                        efx.Velocity=Vector3.new(math.random(-20,20),0,math.random(-20,20))
1266
                                        Spawn(function()
1267
                                            for i=1,10 do wait(.1)
1268
                                                efx.Transparency=efx.Transparency+.1
1269
                                            end
1270
                                        end)
1271
                                    end
1272
                                    x.Torso.Anchored=false
1273
                                    x.Humanoid.PlatformStand=false
1274
                                    SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1275
                                    LerpTo.hndl.To = LerpTo.hndl.Cache
1276
                                    attack=false
1277
                                    return
1278
                                end
1279
                            end
1280
                        end
1281
                    end
1282
                end
1283
            end
1284
            SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1285
            LerpTo.hndl.To = LerpTo.hndl.Cache
1286
            v:Destroy()
1287
            attack=false
1288
        elseif key=="v" then
1289
	    elseif key==" " then
1290
			tim = game:service'RunService'.Stepped:wait()
1291
			if (tim - jmptimer < .2) then
1292
				attack=true
1293
				Spawn(function()
1294
			    	for i=1,3 do wait()
1295
		                local efx= Part(1,1,1,'Really black',.5,false,true,m)
1296
		                local m= Mesh(efx,'http://www.roblox.com/asset/?id=20329976',3,1,3)
1297
		                efx.CFrame=torso.CFrame
1298
		                Spawn(function()
1299
		                    for i=1,7 do wait()
1300
		                    	m.Scale=m.Scale+Vector3.new(1,.2,1)
1301
		                    	efx.Transparency=efx.Transparency+.12
1302
		                    end
1303
		                    efx:Destroy()
1304
		                end)
1305
		            end
1306
		        end)
1307
		    	local vs = Instance.new("BodyVelocity",pchar.Torso)
1308
	            vs.maxForce = Vector3.new(1,1,1)*9e9
1309
	            vs.P = 2000
1310
	            vs.velocity = pchar.Torso.CFrame.lookVector*60+Vector3.new(0,150,0)
1311
	            wait(.025)
1312
	            vs:Destroy()
1313
		    	trail(blade,35,5)
1314
				so('160069154',torso,false,.8)
1315
                SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=false})
1316
                LerpTo.Neck.To = LerpTo.Neck.Cache * CFrame.Angles(0,0,0)
1317
				LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,-rad(40))*CFrame.new(0,-.5,0)
1318
				LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(40))*CFrame.new(0,-.5,0)
1319
				LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(0,rad(90),0)*CFrame.Angles(rad(130),0,0)
1320
				local spn=0
1321
				for i=1,14 do
1322
		            spn=spn+30
1323
		            wait(i/1000)
1324
		            LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(rad(spn),0,0)
1325
		        end
1326
		        SetAnimData({Head=false,RightArm=false,LeftArm=false,RightLeg=false,LeftLeg=false,Torso=false})
1327
		        LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(90),0,-rad(40))* CFrame.new(-.2,-.25,0)
1328
	            LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(rad(90),0,rad(40))* CFrame.new(.2,-.25,0)
1329
	            LerpTo.RootJoint.To = LerpTo.RootJoint.Cache * CFrame.Angles(0,0,0) * CFrame.new(0,0,-1)
1330
	            LerpTo.LeftLeg.To = LerpTo.LeftLeg.Cache * CFrame.Angles(0,0,0) * CFrame.new(0,1,-1)
1331
	    	    LerpTo.RightLeg.To = LerpTo.RightLeg.Cache * CFrame.Angles(-rad(50),0,0) * CFrame.new(0,0.5,0)
1332
	    	    LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(0,0,-rad(90))*CFrame.Angles(-rad(130),0,0)
1333
	    	    hitted=false
1334
	    	    local hp=blade.Touched:connect(function(hit)
1335
	    	    	if hitted == true or hit.Parent.Name==pchar.Name then return end
1336
                    so('157878578',torso,false,1)
1337
	    	    	hitted=true
1338
	    	    	explosion('Really black','Royal purple',torso.CFrame,Vector3.new(40,40,40),30,40)
1339
	    	    	for i=1, 30 do
1340
	                    local p= Part(math.random(2,7),math.random(2,7),math.random(2,7),workspace.Base.BrickColor.Color,0,false,false,m)
1341
	                    p.Material=workspace.Base.Material
1342
				        p.CFrame=CFrame.new(torso.CFrame.x+math.random(-i,i),0,torso.CFrame.z+math.random(-i,i))*CFrame.Angles(math.random(-10,10)/30,math.random(-10,10)/30,math.random(-10,10)/30)*CFrame.Angles(pi/2,0,0)
1343
				        p.Velocity=Vector3.new(math.random(-100,100),math.random(30,100),math.random(-100,100))
1344
                        game.Debris:AddItem(p,2)
1345
				        Spawn(function()
1346
				        	for i=1,10 do wait(.01)
1347
				        		p.Transparency=p.Transparency+.1
1348
				        	end
1349
				        end)
1350
			        end
1351
	    	    end)
1352
				repeat wait() until hitted
1353
				hp:disconnect()
1354
	    	    wait(.5)
1355
		        SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1356
		        LerpTo.hndl.To = LerpTo.hndl.Cache
1357
		        attack=false
1358
		    end
1359
		else
1360
			wait(.2)
1361
		end
1362
		jmptimer = tim
1363
	end)
1364
	SetAnimData({Head=true,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=true})
1365
	LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(70),rad(20),-rad(70))*CFrame.new(0,-1,0)
1366
	LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(30))
1367
	wait(.01)
1368
	mwl.Part1=pchar['Right Arm']
1369
	mwl.C1=CFrame.new(0,-1,0)*CFrame.Angles(-rad(90),0,rad(90))
1370
	wait(.2)
1371
	CurrentActiveAnim="Holding"
1372
	LerpTo.hndl.To = LerpTo.hndl.Cache
1373
	SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1374
end)
1375
1376
hp.Deselected:connect(function()
1377
	SetAnimData({Head=true,RightArm=false,LeftArm=false,RightLeg=true,LeftLeg=true,Torso=true})
1378
	LerpTo.RightArm.To = LerpTo.RightArm.Cache * CFrame.Angles(rad(70),rad(20),-rad(70))*CFrame.new(0,-1,0)
1379
	LerpTo.LeftArm.To = LerpTo.LeftArm.Cache * CFrame.Angles(0,0,-rad(30))
1380
	LerpTo.hndl.To = CFrame.new(0,-0.3,0)*CFrame.Angles(0,0,0)
1381
	wait(.1)
1382
	mwl.Part1=pchar.Torso
1383
	mwl.C1=CFrame.new(-1,0,-1)*CFrame.Angles(rad(120),0,0)
1384
	wait(.1)
1385
	CurrentActiveAnim="Idle"
1386
	SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1387
end)
1388
1389
UpdateAnims()
1390
SetAnimData({Head=true,RightArm=true,LeftArm=true,RightLeg=true,LeftLeg=true,Torso=true})
1391
1392
CurrentActiveAnim="Idle"
1393
1394
game:service'RunService'.RenderStepped:connect(function()
1395
    UpdateAnims(angle)
1396
    for _,v in pairs(LerpTo) do
1397
        v.Weld.C0 = Lerp.CFrame(v.Weld.C0,v.To,v.Speed)
1398
    end
1399
    rclcount = (rclcount%rclcounttime)+rclcountspeed
1400
    rcl = math.pi*math.sin((math.pi*2)/rclcounttime*rclcount)
1401
    angle = (angle % 100) + anglespeed/10
1402
    if Vector3.new(0, torso.Velocity.y, 0).magnitude > 2 then
1403
        CheckAnimData(CurrentActiveAnim,"Jump")
1404
    elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude < 2 then
1405
        CheckAnimData(CurrentActiveAnim,"Stance")
1406
    elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude > 2 then
1407
        CheckAnimData(CurrentActiveAnim,"Walk")
1408
    end
1409
end)