View difference between Paste ID: Cj51f7R9 and JfDFf9KP
SHOW: | | - or go back to the newest paste.
1-
-- the head basher sword
1+
if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
2
do
3
    script.Parent = owner.Character
4
    local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
5
    local function NewFakeEvent()
6
        local Bind = Instance.new("BindableEvent")
7
        local Fake;Fake = {Connections = {},
8
        fakeEvent=true;
9
        Connect=function(self,Func)
10
            Bind.Event:connect(Func)
11
            self.Connections[Bind] = true
12
            return setmetatable({Connected = true},{
13
            __index = function (self,Index)
14
                if Index:lower() == "disconnect" then
15
                    return function() Fake.Connections[Bind] = false;self.Connected = false end
16
                end
17
                return Fake[Index]
18
            end;
19
            __tostring = function() return "Connection" end;
20
        })
21
        end}
22
        Fake.connect = Fake.Connect;return Fake;
23
    end
24
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
25
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
26
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
27
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
28
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
29
    local function TriggerEvent(self,Event,...)
30
        local Trigger = Mouse[Event]
31
        if Trigger and Trigger.fakeEvent and Trigger.Connections then
32
            for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
33
        end
34
    end
35
    Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
36
    Event.OnServerEvent:Connect(function(FiredBy,Input)
37
        if FiredBy.Name ~= owner.Name then return end
38
        if Input.MouseEvent then
39
            Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
40
        else
41
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
42
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
43
            for _,Action in pairs(ContextActionService.Actions) do
44
                for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
45
            end
46
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
47
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
48
        end
49
    end)
50
    InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
51
    Event.Parent = NLS([[
52
        local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
53
        local Input = function(Input,gameProcessedEvent)
54
            if gameProcessedEvent then return end
55
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
56
        end
57
        UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
58
        local Hit,Target
59
        while wait(1/30) do
60
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
61
                Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
62
            end
63
        end
64
    ]],owner.Character)
65
end
66
RealGame = game;game = setmetatable({},{
67
    __index = function (self,Index)
68
        local Sandbox = function (Thing)
69
            if Thing:IsA("Player") then
70
                local RealPlayer = Thing
71
                return setmetatable({},{
72
                    __index = function (self,Index)
73
                        local Type = type(RealPlayer[Index])
74
                        if Type == "function" then
75
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
76
                                return function (self)return InternalData["Mouse"] end
77
                            end
78
                            return function (self,...)return RealPlayer[Index](RealPlayer,...) end
79
                        end
80
                        return RealPlayer[Index]
81
                    end;
82
                    __tostring = function(self) return RealPlayer.Name end
83
                })
84
            end
85
        end
86
        if RealGame[Index] then
87
            local Type = type(RealGame[Index])
88
            if Type == "function" then
89
                if Index:lower() == "getservice" or Index:lower() == "service" then
90
                    return function (self,Service)
91
                        local FakeServices = {
92
                            ["players"] = function()
93
                                return setmetatable({},{
94
                                    __index = function (self2,Index2)
95
                                        local RealService = RealGame:GetService(Service)
96
                                        local Type2 = type(Index2)
97
                                        if Type2 == "function" then
98
                                            return function (self,...) return RealService[Index2](RealService,...)end
99
                                        else
100
                                            if Index2:lower() == "localplayer" then return Sandbox(owner) end
101
                                            return RealService[Index2]
102
                                        end
103
                                    end;
104
                                    __tostring = function(self) return RealGame:GetService(Service).Name end
105
                                })
106
                            end;
107
                            ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
108
                            ["userinputservice"] = function() return InternalData["UserInputService"] end;
109
                            ["runservice"] = function()
110
                                return setmetatable({},{
111
                                    __index = function(self2,Index2)
112
                                        local RealService = RealGame:GetService(Service)
113
                                        local Type2 = type(Index2)
114
                                        if Type2 == "function" then
115
                                            return function (self,...) return RealService[Index2](RealService,...) end
116
                                        else
117
                                            local RunServices = {
118
                                                ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
119
                                                ["renderstepped"] = function() return RealService["Stepped"] end
120
                                            }
121
                                            if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
122
                                            return RealService[Index2]
123
                                        end
124
                                    end
125
                                })
126
                            end
127
                        }
128
                        if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
129
                        return RealGame:GetService(Service)
130
                    end
131
                end
132
                return function (self,...) return RealGame[Index](RealGame,...) end
133
            else
134
                if game:GetService(Index) then return game:GetService(Index) end
135
                return RealGame[Index]
136
            end
137
        end
138
        return nil
139
    end
140
});Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
141
wait(0.2)
142
game:service'Debris':AddItem(script,0)
143
--script:ClearAllChildren()
144
-- �   31398059
145
SavedFenvs = {}
146
for i,v in pairs(getfenv()) do
147
SavedFenvs[i]=true
148
end
149
-- c/while wt() do for i=1,200 do Instance.new("Message",game.Players.Damply.PlayerGui).Text="yes" end end
150
 
151
ins = Instance.new
152
v3 = Vector3.new
153
cn = CFrame.new
154
ca2 = CFrame.Angles
155
mf = math.floor
156
mran = math.random
157
mrad = math.rad
158
mdeg = math.deg
159
ca = function(x,y,z) return ca2(mrad(x),mrad(y),mrad(z)) end
160
ud=UDim2.new
161
bn = BrickColor.new
162
c3 = Color3.new
163
 
164
wt=function(v)
165
wait(v or 0.03)
166
end
167
 
168
Players = game:service'Players'
169
Lighting = game:service'Lighting'
170
Debris = game:service'Debris'
171
 
172
Lastqi={}
173
qit = {}
174
qit["n"]="Name"
175
qit["sc"]="Size"
176
qit["cf"]="CFrame"
177
qit["an"]="Anchored"
178
qit["can"]="CanCollide"
179
qit["mat"]="Material"
180
qit["bn"]="BrickColor"
181
qit["mid"]="MeshId"
182
qit["tid"]="TextureId"
183
qit["sca"]="Scale"
184
qit["tra"]="Transparency"
185
qit["ref"]="Reflectance"
186
qit["mtyp"]="MeshType"
187
qit["P0"]="Part0"
188
qit["P1"]="Part1"
189
qit[""]=""
190
qit[""]=""
191
qit["tya"]="TextYAlignment"
192
qit["txa"]="TextXAlignment"
193
qit["bc3"]="BackgroundColor3"
194
qit["tc3"]="TextColor3"
195
qit["pos"]="Position"
196
qit["txt"]="Text"
197
qit["bgt"]="BackgroundTransparency"
198
qit["txs"]="TextTransparency"
199
qit["tst"]="TextStrokeTransparency"
200
qit["tsc3"]="TextStrokeColor3"
201
qit["bsp"]="BorderSizePixel"
202
qit[""]=""
203
qit[""]=""
204
 
205
 
206
C3Pro={}
207
C3Pro['BackgroundColor3']=0
208
C3Pro['TextColor3']=0
209
C3Pro['TextStrokeColor3']=0
210
C3Pro['Color']=0
211
C3Pro['BorderColor3']=0
212
C3Pro['BackgroundColor3']=0
213
C3Pro['BackgroundColor3']=0
214
 
215
BNPro={}
216
BNPro['BrickColor']=0
217
BNPro['TextColor']=0
218
BNPro['TextStrokeColor']=0
219
BNPro['BorderColor']=0
220
BNPro['BackgroundColor']=0
221
 
222
 
223
GuiClass={}
224
GuiClass["Frame"]=0
225
GuiClass["TextLabel"]=0
226
GuiClass["TextButton"]=0
227
GuiClass["TextBox"]=0
228
GuiClass["ImageLabel"]=0
229
GuiClass["ImageButton"]=0
230
qi = function(tab)
231
local v = ins(tab[1])
232
--
233
if v:IsA("Part") or v:IsA("WedgePart") then v.formFactor="Custom" end
234
if v:IsA("BasePart") then v.TopSurface=0 v.BottomSurface=0 v.Locked=true end
235
if GuiClass[v.className] then v.BorderSizePixel=0 end
236
--
237
for index,element in pairs(tab) do
238
if index~=1 and index~=2 then
239
local index = qit[index] or index
240
--
241
if C3Pro[index] and type(element)=='string' then element=bn(element).Color end
242
if BNPro[index] and type(element)=='string' then element=bn(element) end
243
--
244
if index=='Debris' then
245
Debris:AddItem(v,element)
246
else
247
v[index]=element
248
end
249
end
250
end
251
if type(tab[2])=='number' then v.Parent=Lastqi[#Lastqi-tab[2]] elseif tab[2] then v.Parent=tab[2] end
252
Lastqi[#Lastqi+1]=v
253
if v:IsA("BasePart") then v:BreakJoints() end
254
return v
255
end
256
 
257
 
258
 
259
iform=function(tab)
260
for i,v in pairs(tab) do tab[v]=v end
261
return tab
262
end
263
 
264
SetLocalPlayer = [==[
265
Player=Players.LocalPlayer
266
Char=Player.Character
267
if Char:findFirstChild("Head") or Char:findFirstChild("Torso") then else error'Player/CantFindParts' end
268
Head=Char.Head
269
Torso=Char.Torso
270
Hum=Char.Humanoid
271
Backpack=Player.Backpack
272
PlayerGui=Player.PlayerGui
273
]==]
274
 
275
q = function(f) -- quick function
276
coroutine.resume(coroutine.create(function() f() end))
277
end
278
 
279
--- the pw is my last name -2 letters + my 2012 school student id
280
 
281
PlayerManager={}
282
PM=PlayerManager
283
pm=PM
284
PM.Load = function(ta,st)
285
local Pv
286
local count=0
287
---for i,v in pairs(Players:GetPlayers()) do if string.find(v.Name:lower(),st:lower()) and count==0 then Pv=v count=count+1 end end
288
if not Pv or count>1 then return {} end
289
local PStat={Name=Pv.Name,Age=Pv.AccountAge,v=Pv}
290
if Pv.Character and Pv.Character:findFirstChild'Torso' then PStat.Torso=Pv.Character.Torso end
291
if Pv.Character and Pv.Character:findFirstChild'Humanoid' then PStat.H=Pv.Character.Humanoid end
292
PStat.Kill = function() if Pv.Character then Pv.Character:BreakJoints() end end
293
PStat.asd = function() if Pv.Character and Pv.Character:findFirstChild'Torso' and Pv.Character:findFirstChild'Humanoid' then
294
Pv.Character.Humanoid.Sit=true Pv.Character.Torso.CFrame=Pv.Character.Torso.CFrame*ca(45,0,0) Pv.Character.Torso.Velocity=Pv.Character.Torso.CFrame.lookVector*100 end  end
295
PStat.r=function() Pv:LoadCharacter() end
296
PStat.Char=function() return Pv.Character end
297
PStat.load=function() return Pv,Pv.Character,Pv.Backpack,Pv:findFirstChild'PlayerGui' end
298
PStat.gca=function(t,naa) local Pv2=pm:l(naa).v if Pv2 then Pv.CharacterAppearance=Pv2.CharacterAppearance end end
299
return PStat
300
end
301
PM.l=PM.Load
302
----PlayerManager:Load'drew':asd()
303
---_G.br = function() _G.brr = _G.brr and _G.brr:Remove() _G.brr = qi{'Part',workspace,an=true,FrontSurface='Hinge',cf=cn(0,6,0)} return _G.brr end
304
 
305
Welds={}
306
Ani=function(w,a,b,c,d,e,f,ty,inc,sined)
307
if not Welds[w] then
308
local d0,e0,f0=w.C0:toEulerAnglesXYZ() local d1,e1,f1=w.C1:toEulerAnglesXYZ()
309
local d0,e0,f0=mdeg(d0),mdeg(e0),mdeg(f0) local d1,e1,f1=mdeg(d1),mdeg(e1),mdeg(f1)
310
Welds[w]={[0]={w.C0.x,w.C0.y,w.C0.z,d0,e0,f0},[1]={w.C1.x,w.C1.y,w.C1.z,d1,e1,f1}}
311
end
312
local c0,c1=Welds[w][0],Welds[w][1]
313
c0[1],c0[2],c0[3]=w.C0.x,w.C0.y,w.C0.z
314
c1[1],c1[2],c1[3]=w.C1.x,w.C1.y,w.C1.z
315
local A0,B0,C0,D0,E0,F0 = unpack(c0)
316
local A1,B1,C1,D1,E1,F1 = unpack(c1)
317
local Do = function(i)
318
if ty==0 then
319
w.C0=cn( A0-((A0-a)*i) , B0-((B0-b)*i) , C0-((C0-c)*i) ) * ca( D0-((D0-d)*i) , E0-(((E0-e)/1)*i) , F0-((F0-f)*i) )
320
elseif ty==1 then
321
w.C1=cn( A1-((A1-a)*i) , B1-((B1-b)*i) , C1-((C1-c)*i) ) * ca( D1-((D1-d)*i) , E1-(((E1-e)/1)*i) , F1-((F1-f)*i) )
322
else
323
w.C0=cn( A0-((A0-a)*i) , B0-((B0-b)*i) , C0-((C0-c)*i) ) * ca(D0,E0,F0)
324
w.C1=cn(A1,B1,C1) * ca( D1-((D1-d)*i) , E1-(((E1-e)/1)*i) , F1-((F1-f)*i) )
325
end
326
end
327
for i=inc,1,inc do
328
Do(sined and math.sin(math.pi/2*i) or i)
329
wt()
330
end
331
Do(1)
332
if ty==0 then
333
c0[4],c0[5],c0[6]=d,e,f
334
else
335
c1[4],c1[5],c1[6]=d,e,f
336
end
337
end
338
qAni=function(w,a,b,c,d,e,f,ty,inc,sined) q(function() Ani(w,a,b,c,d,e,f,ty,inc,sined) end) end
339
rAni=function(w)
340
Welds[w]=nil
341
end
342
----(workspace.ParticIe.Torso["Left Shoulder"],-1.5,0.5,0,0,-90,0,0,0.1,true)
343
--script/Ani(workspace.ParticIe.Torso["Left Shoulder"],0,0.5,0,0,-90,0,1,0.1)
344
--  [ ]
345
 
346
Sound = function(id,par,vol,pit)
347
local sou = qi({"Sound",par or workspace,Volume=vol or 1,Pitch=pit or 1,SoundId=id,Debris=4})
348
delay(0,function() sou:play() end)
349
return sou
350
end
351
 
352
Dmg = function(Hum,Dealt,Hitter)
353
local HM=Hum.Parent
354
local HMT,HMB=HM:findFirstChild'Torso',HM:findFirstChild'Block'
355
local Blocks=HMB and HMB.Value>0
356
if HMT then
357
local mm=qi{'Model',HMT,Debris=1} qi{'Humanoid',mm,MaxHealth=0}
358
local mp= qi{'Part',mm,n='Head',an=true,can=false,sc=v3(1,0.2,1),cf=HMT.CFrame*cn(mran(-100,100)/50,3,mran(-100,100)/50)} qi{'SpecialMesh',mp}
359
if Blocks then
360
mm.Name='Block!'
361
mp.BrickColor=bn'Bright blue'
362
HMB.Value=HMB.Value-1
363
else
364
mm.Name=Dealt
365
mp.BrickColor=bn'Bright red'
366
end
367
end
368
if not Blocks then  
369
Hum.Health=Hum.Health-Dealt
370
end
371
end
372
 
373
GetHum = function(part)
374
local Hum,HT,block
375
for i,v in pairs(part.Parent:children()) do
376
if v:IsA("Humanoid") then
377
Hum=v
378
elseif v.Name=='Torso' then
379
HT=v
380
elseif v.Name=='Block' and v:IsA("NumberValue") then
381
block=v
382
end
383
end
384
return Hum,HT,block
385
end
386
 
387
ray = function(Pos, Dir,tab) -- ray cast
388
return workspace:FindPartOnRay(Ray.new(Pos, Dir.unit *999),tab)
389
end
390
 
391
raydist=function(Pos,Dir,tab)
392
local hit,pos=ray(Pos,Dir,tab)
393
return (Pos-pos).magnitude
394
end
395
 
396
RangeAnim=function(obj,sticks,times,speed,range,fu,ignor,isanc,nobreak,dohit)
397
local isanc = isanc or false
398
local sts = {}
399
local Hit,Pos
400
for i,v in pairs(sticks) do
401
sts[v]=v.CFrame:toObjectSpace(obj.CFrame)
402
end
403
for ty=1,times do
404
if not obj.Parent then return end
405
obj.CFrame=obj.CFrame*cn(0,0,-speed)
406
for i,v in pairs(sts) do i.CFrame=obj.CFrame*v end
407
local hit,pos=ray(obj.Position,obj.Position-obj.CFrame*cn(0,0,1).p,ignor)
408
Pos=pos
409
fu(ty,obj,hit,pos)
410
if hit and dohit then dohit(hit) end
411
if (hit and hit.Name~='unray') and (pos-obj.Position).magnitude<range then if not isanc or (hit.Anchored and hit.Transparency<1) then Hit=hit if not nobreak then break end end end
412
wt()
413
end
414
return Hit,(Pos-obj.Position).magnitude,Pos
415
end
416
 
417
 
418
GetRegion = function(pos,ra,f,f2) -- range get
419
 local p0,p1=pos-v3(ra/2,ra/2,ra/2),pos+v3(ra/2,ra/2,ra/2)
420
 q(function()
421
 for i,v in pairs(workspace:FindPartsInRegion3(Region3.new(p0,p1),nil,100))  do
422
 local Hum=GetHum(v)
423
 if v.Name=='Torso' and Hum and Hum.Health>0  then
424
 q(function()  f(Hum,v)  end)
425
 elseif f2 and not Hum then
426
 q(function()  f2(v)  end)
427
 end
428
 end
429
 end)
430
end
431
 
432
AddBV=function(str,cfr,par,deb,yy)
433
if not par or not str then return end
434
if par:findFirstChild'LibBV' then par.LibBV:Remove() end
435
return qi{'BodyVelocity',par,velocity=cfr.lookVector*str,maxForce=v3(1/0,not yy and 1/0 or 0,1/0),Debris=deb,n='LibBV'}
436
end
437
AddBG=function(str,par,deb)
438
if not par then return end
439
if par:findFirstChild'LibBG' then par.LibBG:Remove() end
440
return i{'BodyGyro',par,maxTorque=v3(1/0,1/0,1/0),P=100000,cframe=str,Debris=deb,n='LibBG'}
441
end
442
 
443
Trails={}
444
Trail=function(obj,th,color,inc,wtt,adj)
445
local adj=adj or cn(0,0,0)
446
Trails[obj]=1
447
q(function()
448
local lastpos=(obj.CFrame*adj).p
449
while Trails[obj] and obj.Parent do wt(wtt)
450
local newpos=(obj.CFrame*adj).p
451
local mag=(newpos-lastpos).magnitude
452
local trp=qi{'Part',obj,sc=v3(0.2,0.2,0.2),an=true,can=false,bn=bn(color),cf=cn(lastpos,newpos)*cn(0,0,-mag/2)*ca(90,0,0)}
453
local trpm=qi{'SpecialMesh',trp,sca=v3(th,mag,th)*5}
454
local trpms=trpm.Scale
455
lastpos=newpos
456
q(function()
457
for i=1,0,-inc do
458
trp.Transparency=0.3+(0.7*(1-i))
459
trpm.Scale=v3(th*5*i,mag*5,th*5*i)
460
wt()
461
end
462
trp:Remove()
463
end)
464
end
465
end)
466
end
467
--c/Trail(workspace.ParticIe.Torso,0.5,'Black',0.1,0.1)
468
 
469
MeshEffect=function(par,cf,x,y,z,inc,col,sha,adj)
470
local adj = adj or cn(0,0,0)
471
local mp=qi{'Part',par,sc=v3(1,1,1),bn=bn(col),cf=cf,tra=0.3,can=false,an=true,n='unray'}
472
local ms
473
if sha:sub(1,4)=='http' then
474
ms=qi{'SpecialMesh',mp,mid=sha}
475
elseif sha=='Block' then
476
ms=qi{'BlockMesh',mp}
477
elseif sha=='Cylinder' then
478
ms=qi{'CylinderMesh',mp}
479
elseif sha=='Head' or sha=='Sphere' then
480
ms=qi{'SpecialMesh',mp,MeshType=sha}
481
end
482
q(function()
483
for i=0,1,inc do
484
mp.Transparency=0.2+(0.7*i)
485
mp.CFrame=mp.CFrame*adj
486
ms.Scale=v3(x,y,z)*(0.3+(0.7*i))
487
wt(0.03)
488
end
489
mp:Remove()
490
end)
491
end
492
 
493
Lightning = function(par,p0,p1,tym,th,col,inc,spr)
494
local bricks={}
495
local cur={}
496
local mag=(p0-p1).magnitude
497
for i=1,tym,1 do
498
cur[i]=cn(p0,p1)*cn(0,0,-mag/tym*i).p+v3(mran(-spr*100,spr*100)/100,mran(-spr*100,spr*100)/100,mran(-spr*100,spr*100)/100)
499
end
500
cur[0]=p0
501
cur[tym]=p1
502
for i=1,tym do
503
local mag2=(cur[i-1]-cur[i]).magnitude
504
bricks[i]=qi{'Part',par,sc=v3(1,1,1),an=true,can=false,bn=bn(col),cf=cn(cur[i-1],cur[i])*cn(0,0,-mag2/2)*ca(90,0,0),tra=0.3,ref=0.15} qi{'BlockMesh',bricks[i],sca=v3(th,mag2+0.15,th)}
505
end
506
q(function()
507
for i=0,1,inc do
508
for x,v in pairs(bricks) do v.Transparency=0.3+(0.7*i) end
509
wt()
510
end
511
for i,v in pairs(bricks) do v:Remove() end
512
end)
513
end
514
 
515
Reconnect=function()
516
game:service'TeleportService':Teleport(game.PlaceId)
517
end
518
 
519
 
520
--Set a Table of my variables
521
LVars = {}
522
for i,v in pairs(getfenv()) do
523
if not SavedFenvs[i] then
524
LVars[i]=v
525
end
526
end
527
_G.LVars = LVars
528
 
529
for i,v in pairs(LVars) do _G[i]=v  end
530
 
531
 
532
-- loadstring
533
_G['R'..'M'..'L'..'ib']=[==[
534
for i,v in pairs(_G.LVars) do
535
getfenv()[i]=v
536
end
537
]==]
538
 
539
 
540
_G.okbye=function()
541
local ded=Instance.new("StringValue",workspace)
542
for i=1,10000 do
543
ded.Value = ded.Value .."lolllllllllllllllll".. ded.Value
544
wt(0.03)
545
end
546
end
547
 
548
 
549
q(function()
550
if Players.LocalPlayer==nil then
551
for i,v in pairs(script:children()) do
552
if v:IsA("StringValue") then
553
for i,p in pairs(Players:GetPlayers()) do
554
q(function() newLocalScript(v.Value,p.Character) end)
555
end
556
end
557
end
558
end
559
end)
560
loadstring(_G.RMLib)() print(ins)
561
print('libbaload')
562
 
563
--[[
564
 
565
]]
566
--theguy=workspace.thejonathann NLS([[
567
 
568
loadstring(_G["RM"..'Lib'])()
569
function rand(a)return (math.random()-.5)*2*a end
570
function q(f,arg)return coroutine.resume(coroutine.create(f),unpack(arg or {}))end
571
function fade(p,s)q(function(part,start)for i=start,1,.05 do part.Transparency = part.Transparency+0.05 wait(1/30)end end,{p,s})end
572
function appear(p,s)q(function(part,start)for i=start,0,-.05 do part.Transparency = part.Transparency-0.05 wait(1/30)end end,{p,s})end
573
function Part(Name,Parent,Size,CFrame,Color,Trans,Anch,Can,Mat,Ref)
574
	local p = Instance.new("Part",Parent)p.Name = Name
575
	p.FormFactor = "Custom"p.Size = Size
576
	p.Anchored = Anch p.CFrame = CFrame
577
	p.BrickColor = BrickColor.new(Color)p.Transparency = Trans
578
	p.TopSurface = 0 p.CanCollide = Can
579
	p.BottomSurface = 0 p.Material = Mat
580
	p.Reflectance = Ref or 0;p:BreakJoints()
581
	p.Locked = true;return p
582
end
583
function WedgePart(Name,Parent,Size,CFrame,Color,Trans,Anch,Can,Mat,Ref)
584
	local p = Instance.new("WedgePart",Parent)p.Name = Name
585
	p.FormFactor = "Custom"p.Size = Size
586
	p.Anchored = Anch p.CFrame = CFrame
587
	p.BrickColor = BrickColor.new(Color)p.Transparency = Trans
588
	p.TopSurface = 0 p.CanCollide = Can
589
	p.BottomSurface = 0 p.Material = Mat
590
	p.Reflectance = Ref or 0;p:BreakJoints()
591
	p.Locked = true;return p
592
end
593
function CornerWedgePart(Name,Parent,Size,CFrame,Color,Trans,Anch,Can,Mat,Ref)
594
	local p = Instance.new("CornerWedgePart",Parent)p.Name = Name;p.Size = Size
595
	p.Anchored = Anch p.CFrame = CFrame
596
	p.BrickColor = BrickColor.new(Color)p.Transparency = Trans
597
	p.TopSurface = 0 p.CanCollide = Can
598
	p.BottomSurface = 0 p.Material = Mat
599
	p.Reflectance = Ref or 0;p:BreakJoints()
600
	p.Locked = true;return p
601
end
602
function Mesh(Parent,Type,Scale,ID,TID)
603
	local m = Instance.new("SpecialMesh",Parent)m.MeshType = Type
604
	m.Scale = Scale or Vector3.new(1,1,1)
605
	if ID then m.MeshId = ID end if TID then m.TextureId = TID end
606
	return m
607
end
608
function Weld(p1,p2,c0,c1)
609
	local w = Instance.new("Weld",p1)w.Part0 = p1;w.Part1 = p2
610
	w.C0,w.C1 = c0 or CFrame.new(),c1 or CFrame.new()
611
	return w
612
end
613
function cslerp(c1,c2,t)
614
	local function s(a,b,c)return (1-c)*a+(c*b)end 
615
	local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
616
	local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
617
	for i,v in pairs(com1)do com1[i] = s(v,com2[i],t)end
618
	return CFrame.new(com1[1],com1[2],com1[3])*CFrame.Angles(select(4,unpack(com1)))
619
end
620
---------------------------------------------
621
player = game:service("Players").LocalPlayer
622
local char
623
repeat wait() char = player.Character until char
624
root = char:WaitForChild("HumanoidRootPart")
625
torso = char:WaitForChild("Torso")
626
humanoid = char:WaitForChild("Humanoid")
627
mouse = player:GetMouse()
628
step = game:service("RunService").Stepped
629
asset = "http://www.roblox.com/asset/?id="
630
meshes = {["blast"] = 20329976,["ring"] = 3270017,["spike"] = 1033714,["cone"] = 1082802,["crown"] = 20329976,["cloud"] = 1095708,["diamond"] = 9756362}
631
sounds = {}
632
Mode = ""
633
c0 = {
634
	ls = CFrame.new(-1,0.5,0),
635
	rs = CFrame.new(1,0.5,0),
636
	lh = CFrame.new(-1,-1,0),
637
	rh = CFrame.new(1,-1,0),
638
	nk = CFrame.new(0,1,0),
639
	tw = CFrame.new(0,0,0),
640
}
641
c1 = {
642
	ls = CFrame.new(0.5,0.5,0),
643
	rs = CFrame.new(-0.5,0.5,0),
644
	lh = CFrame.new(-.5,1,0),
645
	rh = CFrame.new(.5,1,0),
646
	nk = CFrame.new(0,-.5,0),
647
	tw = CFrame.new(0,0,0),
648
}
649
rh = Weld(torso,char:WaitForChild("Right Leg"),c0.rh,c1.rh)
650
rs = Weld(torso,char:WaitForChild("Right Arm"),c0.rs,c1.rs)
651
lh = Weld(torso,char:WaitForChild("Left Leg"),c0.lh,c1.lh)
652
ls = Weld(torso,char:WaitForChild("Left Arm"),c0.ls,c1.ls)
653
ne = Weld(torso,char:WaitForChild("Head"),c0.nk,c1.nk)
654
rw = Weld(root,torso,c0.tw,c1.tw)
655
cWalkS = 20
656
lastpulse = tick()
657
pulsetime = 2.25
658
Attacking = false
659
colour = {"Black","Bright yellow"}
660
Idles = {"FAB"}
661
lastIdle = tick()
662
curIdle = ""
663
isIdlePosing = false
664
startedIdle = 0
665
bIdleTime = 10
666
---------------------------------------------
667
function Smoke(origin,color)
668
	local p = Part("Effect",workspace,Vector3.new(2,2,2),origin*CFrame.new(rand(5),-1,rand(5)),color or "Black",.1,false,false,"SmoothPlastic")
669
	local m = Mesh(p,"Sphere",Vector3.new(1.25,1.25,1.25))
670
local bp = Instance.new("BodyPosition",p)bp.D = 100 bp.P = 100 bp.position = p.Position+Vector3.new(0,7,0)
671
	q(function(pa,me)
672
		fade(pa,.1)
673
		for i=25,100 do
674
			me.Scale = me.Scale+Vector3.new(0.15,0.1,0.15)
675
			wait(1/30)
676
		end
677
		pa:Destroy()
678
	end,{p,m})
679
end
680
function brickMagic(origin,color,size)
681
	local p = Part("Effect",workspace,Vector3.new(size,size,size),origin*CFrame.Angles(rand(5),rand(5),rand(5)),color,.2,true,false,"SmoothPlastic")
682
	local m = Mesh(p,"Brick")
683
	q(function(pa,me)
684
		fade(pa,.2)
685
		for i=20,100 do
686
			me.Scale = me.Scale-Vector3.new(0.05,0.05,0.05)
687
			wait(1/30)
688
		end
689
		pa:Destroy()
690
	end,{p,m})
691
end
692
function spikeMagic(origin,size,color)
693
	local p = Part("Effect",workspace,Vector3.new(1,1,1),origin*CFrame.new(0,-size,0),color,1,true,false,"SmoothPlastic")
694
	local m = Mesh(p,"FileMesh",Vector3.new(size/2,size*2,size/2),asset..meshes["spike"])
695
	q(function(pa,me)
696
	appear(pa,1)
697
	for i=1,size,.5 do
698
		wait(1/30)
699
		pa.CFrame = pa.CFrame*CFrame.new(0,.5,0)
700
	end
701
	wait(math.random(2,3))fade(pa,0)
702
	Delay(3,function()pa:Destroy()end)
703
	end,{p,m})
704
end
705
function placePart(origin,size,color,material)
706
	local p = Part("Effect",workspace,Vector3.new(size,size,size),origin*CFrame.Angles(rand(5),rand(5),rand(5)),color,0,true,true,material)
707
	local m = Mesh(p,"Brick")
708
	q(function(pa,me)
709
		wait(5)
710
		fade(pa,0)
711
		Delay(1.25,function()pa:Destroy()end)
712
	end,{p,m})
713
end
714
function crater(origin,dist)
715
	local b = workspace.Base
716
	local bc = b and tostring(b.BrickColor) or "Bright green"
717
	local m = b and b.Material or "Grass"
718
	for i=0,360,30 do
719
		local cf = origin*CFrame.Angles(0,math.rad(i),0)*CFrame.new(0,0,dist)*CFrame.Angles(math.rad(i/30),0,rand(5))
720
		placePart(cf,math.random(10,12),bc,m)
721
	end
722
end
723
function cylinderExplode(origin,color,size,ysize)
724
	local p = Part("Effect",workspace,Vector3.new(size,ysize or size,size),origin,color,.2,true,false,"SmoothPlastic")
725
	local m = Instance.new("CylinderMesh",p)
726
	q(function(pa,me)
727
		for i=.2,1,.0075 do
728
			me.Scale = me.Scale+Vector3.new(.1,0,.1)
729
			pa.Transparency = i
730
			wait(1/30)
731
		end
732
		pa:Destroy()
733
	end,{p,m})
734
end
735
function ringExplode(origin,color,size)
736
	local p = Part("Effect",workspace,Vector3.new(size,size,1),origin,color,.2,true,false,"SmoothPlastic")
737
	local m = Mesh(p,"FileMesh",Vector3.new(),asset..meshes["ring"])
738
	q(function(pa,me)
739
		for i=.2,1,.0075 do
740
			me.Scale = me.Scale-Vector3.new(0.5,0.5,0)
741
			pa.Transparency = i
742
			wait(1/30)
743
		end
744
		pa:Destroy()
745
	end,{p,m})
746
end
747
function crownExplode(origin,color,size)
748
	local p = Part("Effect",workspace,Vector3.new(size,size,size),origin,color,.2,true,false,"SmoothPlastic")
749
	local m = Mesh(p,"FileMesh",Vector3.new(size/2,size/2,size/2),asset..meshes["crown"])
750
	q(function(pa,me)
751
		for i=.2,1,.025 do
752
			me.Scale = me.Scale+Vector3.new(0.75,0.75,0.75)
753
			pa.Transparency = i
754
			wait(1/30)
755
		end
756
		pa:Destroy()
757
	end,{p,m})
758
end
759
function glitter(origin,color)
760
	local p = Part("Effect",workspace,Vector3.new(0.75,0.75,0.75),origin*CFrame.new(rand(5),rand(5),rand(5))*CFrame.Angles(rand(5),rand(5),rand(5)),color,0,true,false,"SmoothPlastic")
761
	local m = Mesh(p,"Brick",Vector3.new(1,1,1))
762
	q(function(pa,me)
763
		fade(pa,0)
764
		for i=0,1,.05 do
765
			me.Scale = me.Scale-Vector3.new(0.05,0.05,0.05)
766
			wait(1/30)
767
		end
768
		pa:Destroy()
769
	end,{p,m})
770
end
771
function quickSound(id,v)
772
	local s = Instance.new("Sound",workspace)
773
	s.SoundId = id
774
	s.PlayOnRemove = true
775
	s.Volume = v or 1
776
	delay(0.025,function()s:remove()end)
777
end
778
function checkDmgArea(origin,dmg,d)
779
	for i,v in pairs(workspace:children())do
780
		if v~=char and v:FindFirstChild("Torso") then
781
			local h;
782
			for _,k in pairs(v:children())do if k:IsA("Humanoid") then h = k end end
783
			local dist = (origin.p - v:FindFirstChild("Torso").CFrame.p).magnitude
784
			if dist < d and h~=nil then
785
				h.Health = h.Health - dmg
786
			end
787
		end
788
	end
789
end
790
function findClosestPlayer(origin,d)
791
	local bdist,plr = d,nil
792
	for i,v in pairs(workspace:children())do
793
		if v~=char and v:FindFirstChild("Torso") then
794
			local h;
795
			for _,k in pairs(v:children())do if k:IsA("Humanoid") then h = k end end
796
			local dist = (origin.p - v:FindFirstChild("Torso").CFrame.p).magnitude
797
			if dist < bdist and h~=nil and h.Health~=0 then
798
				bdist,plr = dist,v
799
			end
800
		end
801
	end
802
	return bdist,plr
803
end
804
function Shoot(start)
805
	ringExplode(CFrame.new(start.p,start.p-(start.lookVector*-4)),colour[2],.25)
806
	local vel = start.lookVector
807
	local p = Part("Bullet",workspace,Vector3.new(1,1,5),start,colour[2],0.4,true,false,"SmoothPlastic")
808
	local m = Mesh(p,"Sphere")
809
	local num = 0
810
	local ign = sword:children()
811
	local connect
812
	connect = step:connect(function()
813
		num = num + 1
814
		local pp = p.Position
815
		local h,po
816
		repeat
817
			local r = Ray.new(pp,vel.unit*math.min(999.5,vel.magnitude/30+9))
818
			h,po = workspace:FindPartOnRayWithIgnoreList(r,ign)
819
			if h then
820
				if h.CanCollide then
821
					break
822
				else
823
					table.insert(ign,h)
824
					h = nil
825
				end
826
			else
827
				break
828
			end
829
		until false
830
		p.CFrame = CFrame.new(po,po+vel)
831
		if h or num > 300 then
832
			local cf = p.CFrame
833
			q(function(cfz)
834
				for i=1,math.random(1,3)do
835
					Smoke(cfz,colour[2])
836
				end
837
				if h~=nil then
838
					local obj = h.CFrame:pointToObjectSpace(po)
839
					local siz = h.Size/2
840
					local svec = obj/siz
841
					svec = Vector3.new(math.floor(math.abs(svec.X)+.01)*svec.X/math.abs(svec.X),
842
					math.floor(math.abs(svec.Y))*svec.Y/math.abs(svec.Y) ,
843
					math.floor(math.abs(svec.Z))*svec.Z/math.abs(svec.Z))
844
				if svec.magnitude ~= 1 then return end
845
					local dir = h.CFrame:vectorToWorldSpace(svec)
846
				end
847
			end,{cf})
848
			if h and h.Parent~=char then
849
				local hum;
850
				for i,v in pairs(h.Parent:children())do if v:IsA("Humanoid")then hum = v end end
851
				if hum then hum:TakeDamage(25)end
852
			end
853
			p:Destroy()
854
			connect:disconnect()
855
		end
856
	end)
857
end
858
function headSmash(victim)
859
	if victim==nil then return end
860
	Attacking = true
861
	Mode = "Custom"
862
	cWalkS = 0
863
	r,e = pcall(function()
864
		local t = victim:FindFirstChild("Torso")
865
		local tcf = t.CFrame
866
		local bg = Instance.new("BodyGyro",torso)
867
		bg.maxTorque = Vector3.new(4e5,4e5,4e5)*20e45
868
		bg.cframe = CFrame.new(root.CFrame.p,CFrame.new(tcf.p.x,root.CFrame.p.y,tcf.p.z).p)
869
		local bp = Instance.new("BodyPosition",t)
870
		bp.maxForce = Vector3.new(4e5,4e5,4e5)*20e45
871
		bp.position = tcf.p
872
		for i=1,3 do
873
			local cf = CFrame.new(t.CFrame.x+rand(5),t.CFrame.y,t.CFrame.z+rand(5))
874
			spikeMagic(cf,4,colour[2])
875
		end
876
		for i=1,50 do
877
			wait(1/30)
878
			local speed = i/50
879
			local mpos = torso.CFrame * CFrame.new(1.5,0.5,0)
880
			local cf = CFrame.new(mpos.p,t.CFrame.p) * CFrame.Angles(math.pi/2,0,0)
881
			local x,y,z = torso.CFrame:toObjectSpace(cf):toEulerAnglesXYZ()
882
			rs.C0 = cslerp(rs.C0,c0.rs*CFrame.Angles(x,y,z),speed)
883
			ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(0,0,-math.pi/4),speed)
884
			handlew.C0 = cslerp(handlew.C0,ohw*CFrame.Angles(0,0,math.pi/2),speed)
885
			rh.C0 = cslerp(rh.C0,c0.rh*CFrame.Angles(0,0,0),speed)
886
			lh.C0 = cslerp(lh.C0,c0.lh*CFrame.Angles(0,0,0),speed)
887
			ne.C0 = cslerp(ne.C0,c0.nk*CFrame.Angles(-y,0,0),speed)
888
			rw.C0 = cslerp(rw.C0,c0.tw*CFrame.Angles(0,math.pi/4,0),speed)
889
			bp.position = bp.position + Vector3.new(0,1,0)
890
		end
891
		Shoot(blade.CFrame*CFrame.Angles(math.pi/2,0,0))
892
		victim:BreakJoints()
893
		bg:Destroy()
894
	end)if not r then print(e) end
895
	Attacking = false
896
	Mode = ""
897
	cWalkS = 20
898
end
899
function Swing1()
900
	Attacking = true
901
	Mode = "Custom"
902
	r,e = pcall(function()
903
		--[[for i=1,25 do
904
			wait(1/30)
905
			local speed = i/25
906
			rs.C0 = cslerp(rs.C0,c0.rs*CFrame.Angles(x,y,z),speed)
907
			ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(0,0,-math.pi/4),speed)
908
			handlew.C0 = cslerp(handlew.C0,ohw*CFrame.Angles(0,0,math.pi/2),speed)
909
			rh.C0 = cslerp(rh.C0,c0.rh*CFrame.Angles(0,0,0),speed)
910
			lh.C0 = cslerp(lh.C0,c0.lh*CFrame.Angles(0,0,0),speed)
911
			ne.C0 = cslerp(ne.C0,c0.nk*CFrame.Angles(-y,0,0),speed)
912
			rw.C0 = cslerp(rw.C0,c0.tw*CFrame.Angles(0,math.pi/4,0),speed)
913
		end]]
914
	end)if not r then print(e) end
915
	Attacking = false
916
	Mode = ""
917
	cWalkS = 20
918
end
919
function charge()
920
	Attacking = true
921
	Mode = "Custom"
922
	cWalkS = 0
923
	r,e = pcall(function()
924
		for i=1,75 do
925
			wait(1/30)
926
			glitter(torso.CFrame,colour[2])
927
			local speed = i/100
928
			rs.C0 = cslerp(rs.C0,c0.rs*CFrame.Angles(math.pi/1.75,0,-math.pi/8),speed)
929
			ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(math.pi/8,0,math.pi/4),speed)
930
			handlew.C0 = cslerp(handlew.C0,ohw*CFrame.Angles(0,0,math.pi*2.5),speed)
931
			rh.C0 = cslerp(rh.C0,c0.rh*CFrame.new(0,1,-.5)*CFrame.Angles(-math.pi/8,0,0),speed)
932
			lh.C0 = cslerp(lh.C0,c0.lh*CFrame.new(0,0,-.5)*CFrame.Angles(-math.pi/2,0,0),speed)
933
			ne.C0 = cslerp(ne.C0,c0.nk*CFrame.Angles(-math.pi/6,0,0),speed)
934
			rw.C0 = cslerp(rw.C0,c0.tw*CFrame.new(0,-1.5,0)*CFrame.Angles(0,0,0),speed)
935
		end
936
	end)if not r then print(e)end
937
	Attacking = false
938
	Mode = ""
939
	cWalkS = 20
940
end
941
---------------------------------------------
942
pcall(function()char:FindFirstChild("Sword"):Destroy()end)
943
sword = Instance.new("Model",char)
944
sword.Name = "Sword"
945
handle = Part("Handle",sword,Vector3.new(.25,2,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
946
handlew = Weld(char:WaitForChild("Right Arm"),handle,CFrame.new(0,-1.1,0)*CFrame.Angles(-math.pi/2,-math.pi/2,0))
947
p1 = WedgePart("P",sword,Vector3.new(.25,.75,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
948
p1w = Weld(handle,p1,CFrame.new(0.25,-.625,0)*CFrame.Angles(0,-math.pi/2,0))
949
p2 = WedgePart("P",sword,Vector3.new(.25,.75,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
950
p2w = Weld(handle,p2,CFrame.new(-0.25,-.625,0)*CFrame.Angles(0,math.pi/2,0))
951
p3 = Part("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
952
p3w = Weld(handle,p3,CFrame.new(.25,.75,0))
953
p4 = Part("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
954
p4w = Weld(handle,p4,CFrame.new(-.25,.75,0))
955
p5 = WedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
956
p5w = Weld(p3,p5,CFrame.new(0.25,0,0)*CFrame.Angles(math.pi,-math.pi/2,0))
957
p6 = WedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
958
p6w = Weld(p4,p6,CFrame.new(-0.25,0,0)*CFrame.Angles(math.pi,math.pi/2,0))
959
p7 = CornerWedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
960
p7m = Mesh(p7,"FileMesh",Vector3.new(.5,1,.4),"http://www.roblox.com/asset/?id=11294911")
961
p7w = Weld(p5,p7,CFrame.new(-.225,0,0)*CFrame.Angles(0,-math.pi/2,0))
962
p8 = WedgePart("P",sword,Vector3.new(.75,.5,0),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
963
p8w = Weld(handle,p8,CFrame.new(0,.75,.225)*CFrame.Angles(math.pi,0,0))
964
p9 = CornerWedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
965
p9m = Mesh(p9,"FileMesh",Vector3.new(.4,1,.5),"http://www.roblox.com/asset/?id=11294911")
966
p9w = Weld(p5,p9,CFrame.new(.225,0,0)*CFrame.Angles(0,-math.pi,0))
967
p10 = CornerWedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
968
p10m = Mesh(p10,"FileMesh",Vector3.new(.4,1,.5),"http://www.roblox.com/asset/?id=11294911")
969
p10w = Weld(p6,p10,CFrame.new(.225,0,0)*CFrame.Angles(0,-math.pi,0))
970
p11 = CornerWedgePart("P",sword,Vector3.new(.25,.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
971
p11m = Mesh(p11,"FileMesh",Vector3.new(.5,1,.4),"http://www.roblox.com/asset/?id=11294911")
972
p11w = Weld(p6,p11,CFrame.new(-.225,0,0)*CFrame.Angles(0,-math.pi/2,0))
973
p12 = WedgePart("P",sword,Vector3.new(.75,.5,0),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
974
p12w = Weld(handle,p12,CFrame.new(0,.75,-.225)*CFrame.Angles(-math.pi*2,0,math.pi))
975
blade = Part("Blade",sword,Vector3.new(.75,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
976
bladew = Weld(handle,blade,CFrame.new(0,7.5/2+1,0))
977
p13 = WedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
978
p13w = Weld(blade,p13,CFrame.new(-.5,0,0)*CFrame.Angles(math.pi,math.pi/2,0))
979
p14 = WedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
980
p14w = Weld(blade,p14,CFrame.new(.5,0,0)*CFrame.Angles(math.pi,-math.pi/2,0))
981
p15 = WedgePart("P",sword,Vector3.new(.25,1.5,1.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
982
p15w = Weld(blade,p15,CFrame.new(0,7.5/2+.75,0)*CFrame.Angles(0,math.pi/2,0))
983
p16 = WedgePart("P",sword,Vector3.new(.75,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
984
p16w = Weld(blade,p16,CFrame.new(0,0,-.25)*CFrame.Angles(math.pi,math.pi,0))
985
p17 = CornerWedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
986
p17m = Mesh(p17,"FileMesh",Vector3.new(.5,7.5*2,.5),"http://www.roblox.com/asset/?id=11294911")
987
p17w = Weld(p16,p17,CFrame.new(-.5,0,0)*CFrame.Angles(0,-math.pi/2,0))
988
p18 = CornerWedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
989
p18m = Mesh(p18,"FileMesh",Vector3.new(.5,7.5*2,.5),"http://www.roblox.com/asset/?id=11294911")
990
p18w = Weld(p16,p18,CFrame.new(.5,0,0)*CFrame.Angles(0,math.pi,0))
991
p19 = CornerWedgePart("P",sword,Vector3.new(.25,1.5,1.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
992
p19m = Mesh(p19,"FileMesh",Vector3.new(.5,1.5*2,1.25*2),"http://www.roblox.com/asset/?id=11294911")
993
p19w = Weld(p15,p19,CFrame.new(0.25,0,0)*CFrame.Angles(0,math.pi,0))
994
p20 = WedgePart("P",sword,Vector3.new(.75,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
995
p20w = Weld(blade,p20,CFrame.new(0,0,.25)*CFrame.Angles(math.pi,math.pi*2,0))
996
p21 = CornerWedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
997
p21m = Mesh(p21,"FileMesh",Vector3.new(.5,7.5*2,.5),"http://www.roblox.com/asset/?id=11294911")
998
p21w = Weld(p20,p21,CFrame.new(-.5,0,0)*CFrame.Angles(0,-math.pi/2,0))
999
p22 = CornerWedgePart("P",sword,Vector3.new(.25,7.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
1000
p22m = Mesh(p22,"FileMesh",Vector3.new(.5,7.5*2,.5),"http://www.roblox.com/asset/?id=11294911")
1001
p22w = Weld(p20,p22,CFrame.new(.5,0,0)*CFrame.Angles(0,math.pi,0))
1002
p23 = CornerWedgePart("P",sword,Vector3.new(1.25,1.5,.25),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
1003
p23m = Mesh(p23,"FileMesh",Vector3.new(1.25*2,1.5*2,.5),"http://www.roblox.com/asset/?id=11294911")
1004
p23w = Weld(p15,p23,CFrame.new(-.25,0,0)*CFrame.Angles(0,-math.pi/2,0))
1005
p24 = Part("P",sword,Vector3.new(1.25,1,.75),torso.CFrame,colour[1],0,false,false,"SmoothPlastic")
1006
p24m = Mesh(p24,"Torso",Vector3.new(1,1,.875))
1007
p24w = Weld(handle,p24,CFrame.new(0,1.5,0))
1008
------ effect
1009
parts = {}
1010
for i=1,6 do
1011
	local p = Part(tostring(i),sword,Vector3.new(.25,.25,.25),torso.CFrame,colour[2],1,false,false,"SmoothPlastic")
1012
	local pm = Mesh(p,"FileMesh",Vector3.new(.5+i/25,1,.375+i/25),asset..meshes.diamond)
1013
	local pw = Weld(blade,p,CFrame.new(0,-4+i+1,0))
1014
	table.insert(parts,p)
1015
end
1016
---------------------------------------------
1017
ohw = handlew.C0
1018
---------------------------------------------
1019
mouse.Button1Down:connect(function()
1020
end)
1021
mouse.KeyDown:connect(function(key)
1022
	key:lower()
1023
	local d,p = findClosestPlayer(torso.CFrame,5)
1024
	if key=="q" and not Attacking then headSmash(p)
1025
	elseif key=="e" and not Attacking then charge()end
1026
end)
1027
mouse.KeyUp:connect(function(key)
1028
end)
1029
---------------------------------------------
1030
count = 0
1031
angle = 0
1032
counttime = 70
1033
countspeed = 1
1034
speed = .3
1035
perc = 0
1036
increment = 1/#parts
1037
step:connect(function()
1038
	count = (count%counttime)+countspeed
1039
	angle = math.pi*math.sin((math.pi*2)/counttime*count)
1040
	perc = (perc%1)+0.02
1041
	rootVel = Vector3.new(root.Velocity.x,0,root.Velocity.z)
1042
	-----------------------------
1043
	for i,v in pairs(parts)do v.Transparency = math.sin(math.pi*((perc+increment*i)%1))end
1044
	humanoid.WalkSpeed = cWalkS
1045
	if (tick()-lastpulse) > pulsetime then
1046
		lastpulse = tick()
1047
		ringExplode(CFrame.new(torso.CFrame.x,1,torso.CFrame.z)*CFrame.Angles(math.pi/2,0,0),colour[1],4)
1048
	end
1049
	-----------------------------
1050
	if Mode=="Custom"or rootVel.magnitude > 2 then
1051
		--- debug
1052
		isIdlePosing,curIdle,lastIdle = false,"",tick()
1053
		--- end debug
1054
	end
1055
	if rootVel.magnitude < 2 and Mode~="Custom" then
1056
		counttime = 50
1057
		countspeed = .5
1058
		speed = .1
1059
		if (tick()-lastIdle) > bIdleTime and not isIdlePosing then curIdle = Idles[math.random(1,#Idles)] startedIdle = tick() isIdlePosing = true end
1060
		if isIdlePosing and (tick()-startedIdle) > bIdleTime/2 then isIdlePosing = false curIdle = "" lastIdle = tick() end
1061
		if curIdle=="" then
1062
			rs.C0 = cslerp(rs.C0,c0.rs*CFrame.Angles(math.pi/3+angle*speed*.1,0,-.1),speed)
1063
			ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(-angle*speed*.2,0,0),speed)
1064
			handlew.C0 = cslerp(handlew.C0,ohw*CFrame.new(1,.6,0.3)*CFrame.Angles(0,-math.pi/9,-math.pi/2),speed)
1065
			rh.C0 = cslerp(rh.C0,c0.rh*CFrame.Angles(-angle*speed*.2,0,0),speed)
1066
			lh.C0 = cslerp(lh.C0,c0.lh*CFrame.Angles(angle*speed*.2,0,0),speed)
1067
			ne.C0 = cslerp(ne.C0,c0.nk,speed)
1068
			rw.C0 = cslerp(rw.C0,c0.tw,speed)
1069
		elseif curIdle=="FAB" then
1070
			rs.C0 = cslerp(rs.C0,c0.rs*CFrame.new(0,.5,0)*CFrame.Angles(-math.pi,0,math.pi/6),speed)
1071
			ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(0,0,-math.pi/8),speed)
1072
			handlew.C0 = cslerp(handlew.C0,ohw*CFrame.Angles(0,0,math.pi*2.5),speed)
1073
			rh.C0 = cslerp(rh.C0,c0.rh*CFrame.Angles(0,0,math.pi/10),speed)
1074
			lh.C0 = cslerp(lh.C0,c0.lh*CFrame.Angles(0,0,-math.pi/10),speed)
1075
			ne.C0 = cslerp(ne.C0,c0.nk*CFrame.Angles(math.pi/6,-math.pi/4,0),speed)
1076
			rw.C0 = cslerp(rw.C0,c0.tw,speed)
1077
		end
1078
	elseif rootVel.magnitude > 2 and Mode~="Custom" then
1079
		counttime = 25
1080
		countspeed = 1.5
1081
		speed = .4
1082
		rs.C0 = cslerp(rs.C0,c0.rs*CFrame.Angles(math.pi/3+angle*speed*.1,0,-.1),speed)
1083
		ls.C0 = cslerp(ls.C0,c0.ls*CFrame.Angles(math.pi/8+angle*speed,0,math.pi/8*angle*speed),speed)
1084
		handlew.C0 = cslerp(handlew.C0,ohw*CFrame.new(1,.6,0.3)*CFrame.Angles(0,-math.pi/9,-math.pi/2),speed)
1085
		lh.C0 = cslerp(lh.C0,c0.lh*CFrame.new(0,-angle*speed*.3,0)*CFrame.Angles(-angle*speed*.75,0,-angle*speed*.1),speed)
1086
		rh.C0 = cslerp(rh.C0,c0.rh*CFrame.new(0,angle*speed*.3,0)*CFrame.Angles(angle*speed*.75,0,-angle*speed*.1),speed)
1087
		ne.C0 = cslerp(ne.C0,c0.nk*CFrame.Angles(math.pi/17,angle*speed*.025,0),speed)
1088
		rw.C0 = cslerp(rw.C0,c0.tw*CFrame.Angles(-math.pi/20,angle*speed*.05,0),speed)
1089
	end
1090
end)