View difference between Paste ID: tVvCXkL2 and LURH8EYP
SHOW: | | - or go back to the newest paste.
1-
--// Animation Base Created by SavageMunkey
1+
if game:GetService("RunService"):IsClient() then error("Please run as a server script. Use h/ instead of hl/.") end
2-
script.Name = 'gtfoh >_>'
2+
print("FE Compatibility: by WaverlyCole & Mokiros")
3
InternalData = {}
4
do
5
    script.Parent = owner.Character
6
    local Event = Instance.new("RemoteEvent")
7
    Event.Name = "UserInput"
8
    local function NewFakeEvent()
9
        local Fake = {fakeEvent=true,Connect=function(self,Func)self.Function=Func end}Fake.connect = Fake.Connect
10
        return Fake
11
    end
12
    local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
13
    local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
14
    local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
15
        self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
16
    end};ContextActionService.UnBindAction = ContextActionService.BindAction
17
    local function TriggerEvent(self,Event,...)
18
        local Trigger = Mouse[Event]
19
        if Trigger and Trigger.fakeEvent and Trigger.Function then
20
            Trigger.Function(...)
21
        end
22
    end
23
    Mouse.TrigEvent = TriggerEvent
24
    UserInputService.TrigEvent = TriggerEvent
25
    Event.OnServerEvent:Connect(function(FiredBy,Input)
26
        if FiredBy.Name ~= owner.Name then end
27
        if Input.MouseEvent then
28
            Mouse.Target = Input.Target
29
            Mouse.Hit = Input.Hit
30
        else
31
            local Begin = Input.UserInputState == Enum.UserInputState.Begin
32
            if Input.UserInputType == Enum.UserInputType.MouseButton1 then
33
                return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up")
34
            end
35
            for _,Action in pairs(ContextActionService.Actions) do
36
                for _,Key in pairs(Action.Keys) do
37
                    if Key==Input.KeyCode then
38
                        Action.Function(Action.Name,Input.UserInputState,Input)
39
                    end
40
                end
41
            end
42
            Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
43
            UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
44
        end
45
    end)
46
    InternalData["Mouse"] = Mouse
47
    InternalData["ContextActionService"] = ContextActionService
48
    InternalData["UserInputService"] = UserInputService
49
    Event.Parent = NLS([[
50
        local Player = owner
51
        local Event = script:WaitForChild("UserInput")
52
        local UserInputService = game:GetService("UserInputService")
53
        local Mouse = Player:GetMouse()
54
        local Input = function(Input,gameProcessedEvent)
55
            if gameProcessedEvent then return end
56
            Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
57
        end
58
        UserInputService.InputBegan:Connect(Input)
59
        UserInputService.InputEnded:Connect(Input)
60
        local Hit,Target
61
        while wait(1/30) do
62
            if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
63
                Hit,Target = Mouse.Hit,Mouse.Target
64
                Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
65
            end
66
        end
67
    ]],owner.Character)
68
end
69
RealGame = game;game = setmetatable({},{
70
    __index = function (self,Index)
71
        local Sandbox = function (Thing)
72
            if Thing:IsA("Player") then
73
                local RealPlayer = Thing
74
                return setmetatable({},{
75
                    __index = function (self,Index)
76
                        local Type = type(RealPlayer[Index])
77
                        if Type == "function" then
78
                            if Index:lower() == "getmouse" or Index:lower() == "mouse" then
79
                                return function (self)
80
                                    return InternalData["Mouse"]
81
                                end
82
                            end
83
                            return function (self,...)
84
                                return RealPlayer[Index](RealPlayer,...)
85
                            end
86
                        else
87
                            return RealPlayer[Index]
88
                        end
89
                    end;
90
                    __tostring = function(self)
91
                        return RealPlayer.Name
92
                    end
93
                })
94
            end
95
        end
96
        if RealGame[Index] then
97
            local Type = type(RealGame[Index])
98
            if Type == "function" then
99
                if Index:lower() == "getservice" or Index:lower() == "service" then
100
                    return function (self,Service)
101
                        if Service:lower() == "players" then
102
                            return setmetatable({},{
103
                                __index = function (self2,Index2)
104
                                    local RealService = RealGame:GetService(Service)
105
                                    local Type2 = type(Index2)
106
                                    if Type2 == "function" then
107
                                        return function (self,...)
108
                                            return RealService[Index2](RealService,...)
109
                                        end
110
                                    else
111
                                        if Index2:lower() == "localplayer" then
112
                                            return Sandbox(owner)
113
                                        end
114
                                        return RealService[Index2]
115
                                    end
116
                                end;
117
                                __tostring = function(self)
118
                                    return RealGame:GetService(Service).Name
119
                                end
120
                            })
121
                        elseif Service:lower() == "contextactionservice" then
122
                            return InternalData["ContextActionService"]
123
                        elseif Service:lower() == "contextactionservice" then
124
                            return InternalData["UserInputService"]
125
                        elseif Service:lower() == "runservice" then
126
                            return setmetatable({},{
127
                                __index = function(self2,Index2)
128
                                    local RealService = RealGame:GetService(Service)
129
                                    local Type2 = type(Index2)
130
                                    if Type2 == "function" then
131
                                        return function (self,...)
132
                                            return RealService[Index2](RealService,...)
133
                                        end
134
                                    else
135
                                        if Index2:lower() == "bindtorenderstep" then
136
                                            return function (self,Name,Priority,Function)
137
                                                return RealGame:GetService("RunService").Stepped:Connect(Function)
138
                                            end
139
                                        end
140
                                        if Index2:lower() == "renderstepped" then
141
                                            return RealService["Stepped"]
142
                                        end
143
                                        return RealService[Index2]
144
                                    end
145
                                end
146
                            })
147
                        else
148
                            return RealGame:GetService(Service)
149
                        end
150
                    end
151
                end
152
                return function (self,...)
153
                    return RealGame[Index](RealGame,...)
154
                end
155
            else
156
                if game:GetService(Index) then
157
                    return game:GetService(Index)
158
                end
159
                return RealGame[Index]
160
            end
161
        else
162
            return nil
163
        end
164
    end
165
});Game = game;owner = game:GetService("Players").LocalPlayer
166
print("Complete! Running... Created by Savangemunkey")
167
168
169
170
script.Name = 'Bruh'
171
wait(.05)
172
local Module_Id = 0 --// Not required, but I use modules somtimes to load union'd models
173
local Player = game:service'Players'.LocalPlayer
174
repeat wait() until Player.Character
175
local Character = Player.Character
176
local Char, Plr = Character, Player
177
local Mouse = Player:GetMouse()
178
local Landed = true
179
local Walking = true
180
181
--// Settings
182
183
local CustomClothes = false
184
local Pants, Shirt  = 'rbxassetid://99312229','rbxassetid://99312212'
185
local CustomColor = 'Eggplant'
186
local CustomMaterial = 'Slate'
187
local NotifyKeyPresses = false
188
local CanRun = false
189
190
--// Limbs and what not
191
192
local Torso = Char:WaitForChild'Torso'
193
local Head = Char:WaitForChild'Head'
194
local Left_Arm = Char:WaitForChild'Left Arm'
195
local Right_Arm = Char:WaitForChild'Right Arm'
196
local Left_Leg = Char:WaitForChild'Left Leg'
197
local Right_Leg = Char:WaitForChild'Right Leg'
198
local HumanoidRootPart = Char:WaitForChild'HumanoidRootPart'
199
local Humanoid = Char:WaitForChild'Humanoid'
200
201
--// Debounces
202
203
local DebounceKeyDown, DebounceState = false, false
204
local DebounceAFKAnimations = false
205
206
--// Other Things
207
208
local State, LastState, Mode = 'Idle', 'Normal'
209
Mode=LastState
210
local AFKAnimSequenceCount,MaxSequenceCount = 0, 200
211
212
--// Abbreiviations
213
214
local rbx = 'rbxassetid://'
215
local char,Char,plr,Plr = Character, Character, Player, Player
216
local mouse,ms = Mouse, Mouse
217
local cam,camera,Camera,Cam=workspace.CurrentCamera,workspace.CurrentCamera,workspace.CurrentCamera,workspace.CurrentCamera
218
local dkd, debkd = DebounceKeyDown, DebounceKeyDown
219
local dst, debst, ds, debs = DebounceState,DebounceState,DebounceState,DebounceState
220
local daa,dafk,debafk = DebounceAFKAnimations,DebounceAFKAnimations,DebounceAFKAnimations
221
local rs = game:service'RunService'
222
local lrs = rs.Stepped
223
local srs = rs.Heartbeat
224
local lleg,rleg = Left_Leg, Right_Leg
225
local larm,rarm = Left_Arm, Right_Arm
226
local hed,torr,torso = Head, Torso, Torso
227
local hum, root = Humanoid, HumanoidRootPart
228
local vec3,vec2 = Vector3.new, Vector2.new
229
local sin, cos, atan, rad, rand, rands = math.sin, math.cos, math.atan, math.rad, math.random, math.randomseed
230
local cf, ang, eu = CFrame.new, CFrame.Angles, CFrame.fromEulerAnglesXYZ
231
local bc,bcr,c3 = BrickColor.new,BrickColor.Random,Color3.new
232
233
--// Removals and error prevention
234
235
if hed:FindFirstChild'Running' then
236
    hed:WaitForChild'Running'.Volume = 0
237
end
238
if Char:FindFirstChild'Animate' then
239
    local Anim = Char:WaitForChild'Animate'
240
    local Anim_2 = Anim:Clone()
241
    Anim_2.Disabled = true
242
    Anim_2.Parent = Char
243
    Anim.Disabled = true
244
    Anim_2.Disabled = false
245
end
246
if Char:FindFirstChild'Health' then
247
	ypcall(game.Destroy, Char.Health)
248
end
249
if CustomClothes then
250
	if Char:FindFirstChild'Shirt' then
251
		Char.Shirt.ShirtTemplate=Shirt
252
	else
253
		Instance.new('Shirt',Character).ShirtTemplate=Shirt
254
	end
255
	
256
	if Char:FindFirstChild'Pants' then
257
		Char.Pants.PantsTemplate=Pants
258
	else
259
		Instance.new('Pants',Character).PantsTemplate=Pants
260
	end
261
end
262
263
--// Base Functions
264
265
Weld = function(to, from, c1)
266
    local New_Weld = Instance.new('Weld', to)
267
    New_Weld.Part0 = from
268
    New_Weld.Part1 = to
269
    New_Weld.C1 = c1
270
    return New_Weld
271
end
272
273
clerp = function(c1,c2,al)
274
	local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
275
	local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
276
	for i,v in pairs(com1) do 
277
		com1[i] = v+(com2[i]-v)*al
278
	end
279
	 return cf(com1[1],com1[2],com1[3]) * ang(select(4,unpack(com1)))--]]
280
end
281
282
lerp = function(c1,c2,al)
283
    return c1:lerp(c2,al)
284
end
285
286
snd = function(Id, Parent)
287
    local Sound = Instance.new('Sound')
288
    Sound.Pitch = 1
289
    Sound.Volume = .5
290
    Sound.Looped = false
291
    Sound.SoundId=rbx..Id
292
    if Parent:IsA'BasePart' then
293
    	local p=Instance.new('Part',Character)
294
    	p.Anchored=true
295
    	p.Transparency=1
296
    	p.CanCollide=false
297
    	p.Size=vec3(.2,.2,.2)
298
    	p.CFrame=Parent.CFrame
299
    	Sound.Parent = p
300
    	Parent.Changed:connect(function()
301
    		if Parent.Parent == nil then
302
    			delay(4,function()
303
    				p:Destroy() 
304
    				Sound:Destroy()
305
    			end)
306
    		end
307
    	end)
308
    else
309
    	Sound.Parent = Head
310
    end
311
    return Sound
312
end
313
314
FacePos = function(pos)
315
    local torso, torsoPos = torso, HumanoidRootPart.CFrame.p
316
    local torso = Char:FindFirstChild'Torso'
317
    if pos == 'mouse' then
318
        pos = CFrame.new(torsoPos,Vector3.new(mouse.Hit.X,torsoPos.Y,mouse.Hit.Z))
319
    elseif not pos or pos==nil then
320
        pos = CFrame.new(torsoPos,Vector3.new(mouse.Hit.X,torsoPos.Y,mouse.Hit.Z))
321
    else
322
        pos = CFrame.new(torsoPos, pos.p)
323
    end
324
    if torso then
325
        HumanoidRootPart.CFrame = lerp(HumanoidRootPart.CFrame,pos,.3)
326
    end
327
end
328
329
local sine, change = 0, 1
330
331
--// Model Optional
332
333
--// Welds
334
335
local llw = Weld(Left_Leg, Torso, cf(.5,2,0))
336
local rlw = Weld(Right_Leg, Torso, cf(-.5,2,0))
337
local raw = Weld(Right_Arm, Torso, cf(-1.5,0,0))
338
local law = Weld(Left_Arm, Torso, cf(1.5,0,0))
339
local torw = Weld(Torso, HumanoidRootPart, cf(0,0,0))
340
local hedw = Weld(Head, Torso, cf(0,-1.5,0))
341
342
--[[ State Example: Arms Out
343
	raw.C0 = clerp(raw.C0, cf(0,.5,-.5)*ang(rad(90),0,0),.1)
344
	law.C0 = clerp(law.C0, cf(0,.5,-.5)*ang(rad(90),0,0),.1)
345
--]]
346
347
local keyz={};
348
local Used = {
349
	Executed={};
350
	Failed={};
351
};
352
353
local BindKey = function(Name, Key, Function)
354
	local keydown
355
	keyz[Key:upper()]=Name
356
	keydown = mouse.KeyDown:connect(function(key)
357
		if Key:lower() == key:lower() then
358
			local detect=dkd
359
			if dkd then
360
				table.insert(Used.Failed, {Name, Key, Function})        
361
			elseif not dkd and Walking then
362
				if NotifyKeyPresses then
363
					warn('executed('..Name..', "'..tostring(Key:upper())..'")')
364
				end
365
				Function(Name, Key)
366
				if NotifyKeyPresses then
367
					warn('ended('..Name..')')
368
				end
369
				table.insert(Used.Executed, {Name, Key, Function})
370
			elseif Walking then
371
				warn('You must Walking enabled to use this key')
372
			end
373
		end
374
	end)        
375
end
376
377
local pitches = {}
378
for i = -.1,.1,.01 do table.insert(pitches,1.5+i) end
379
function summonsound()
380
	local sfx = {588697230};
381
	local s = snd(sfx[rand(1,#sfx)],root)
382
	s.Pitch = pitches[rand(1,#pitches)]
383
	game.Debris:AddItem(s,2)
384
	s:Play()
385
	return s
386
end
387
388
--[[
389
390
BindKey('Attack Name', 'Key{Not case sensative}', function(AttackName, Key)
391
	ds,dkd = true,true
392
	for i = 0,1,.05 do
393
		local animspd = .1
394
		local Right_Arm_ = cf(0,0,0)
395
		local Left_Arm_ = cf(0,0,0)
396
		local Right_Leg_ = cf(0,0,0)
397
		local Left_Leg_ = cf(0,0,0)
398
		local Head_ = cf(0,0,0)
399
		local Torso_ = cf(0,0,0)
400
		
401
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
402
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
403
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
404
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
405
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
406
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
407
		lrs:wait()
408
	end
409
	for i = 0,1,.05 do
410
		local animspd = .1
411
		local Right_Arm_ = cf(0,0,0)
412
		local Left_Arm_ = cf(0,0,0)
413
		local Right_Leg_ = cf(0,0,0)
414
		local Left_Leg_ = cf(0,0,0)
415
		local Head_ = cf(0,0,0)
416
		local Torso_ = cf(0,0,0)
417
		
418
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
419
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
420
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
421
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
422
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
423
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
424
		lrs:wait()
425
	end
426
	ds,dkd = false,false
427
end)
428
429
--]]
430
431
function rainb(hue)
432
    local section = hue % 1 * 3
433
    local secondary = 0.5 * math.pi * (section % 1)
434
    if section < 1 then
435
        return c3(1, 1 - cos(secondary), 1 - sin(secondary))
436
    elseif section < 2 then
437
		return c3(1 - sin(secondary), 1, 1 - cos(secondary))
438
    else
439
        return c3(1 - cos(secondary), 1 - sin(secondary), 1)
440
    end
441
end
442
443
showDmg = function(To, From, Txt, Others)
444
	local bc,c3=BrickColor.new,Color3.new
445
	local vec3,cf=Vector3.new,CFrame.new
446
	local rand=math.random
447
	local n = 2
448
	local lrs=game:service'RunService'.Stepped
449
	local Color = CustomColor
450
	local Clr_Raw = Color
451
	if Clr == nil then Clr = 'Pearl' end
452
	Clr = bc(Color).Color
453
	local Pert = Instance.new('Part', Character)
454
	Pert.Size = vec3(.2,.2,.2)
455
	Pert.Transparency = 1
456
	Pert.CanCollide = false
457
	Pert.Anchored = true
458
	Pert.CFrame = To:FindFirstChild'Head'.CFrame * cf(rand(-n,n),n,rand(-n,n))
459
	Pert.BrickColor = bc('Black')
460
	local Rod = nil
461
	if (Others.Rod ~= nil and Others.Rod == true) then
462
		Rod = Instance.new('Part', Character)
463
		local to,from = Pert.CFrame.p, From:WaitForChild'HumanoidRootPart'.CFrame.p
464
		local dist = (to-from).magnitude
465
		Rod.Size = vec3(.2,.2,dist)
466
		Instance.new('BlockMesh',Rod).Scale=vec3(.1,.1,1)
467
		Rod.CFrame = cf(to,from)*cf(0,0,-dist/2)
468
		Rod.Transparency = .5 or Rod.RodTrans
469
		Rod.CanCollide = false
470
		Rod.Anchored = true
471
		Rod.BrickColor = bc(Clr_Raw)
472
	end
473
	local Gui = Instance.new('BillboardGui',Pert)
474
	Gui.Adornee = Pert
475
	local n2 = 10
476
	Gui.Size = UDim2.new(n2,0,n2,0)
477
	local TextL = Instance.new('TextLabel', Gui)
478
	local r,g,b = Clr.r,Clr.g,Clr.b
479
	local clr = c3(r,g,b)
480
	TextL.BackgroundTransparency = 1
481
	TextL.Font = 'SciFi'
482
	TextL.Size = UDim2.new(1,0,1,0)
483
	TextL.TextTransparency = .1
484
	TextL.TextStrokeTransparency = .2
485
	TextL.TextStrokeColor3 = clr
486
	TextL.Position = UDim2.new(0,0,0,0)
487
	Txt=tostring(Txt):upper()
488
	if string.find(Txt:lower(),'critical') or (Others.Crit ~= nil and Others.Crit == true)then
489
		Txt='(CRITICAL) // '..Txt
490
	end
491
	TextL.Text=Txt
492
	TextL.TextScaled = false
493
	TextL.FontSize = 'Size18'
494
	TextL.TextColor3 = Color3.new(1,1,1)
495
	local sp = Pert.CFrame*cf(rand(n,n*2),rand(n,n*2),rand(n,n*2)) --Pert.CFrame * cf(rand(-n,n),n,rand(-n,n))
496
	delay(.1,function()
497
		repeat lrs:wait()
498
			TextL.TextTransparency=TextL.TextTransparency+.005
499
			TextL.TextStrokeTransparency=TextL.TextStrokeTransparency+.005
500
			if Rod ~= nil then
501
				Rod.Transparency = Rod.Transparency + .0025
502
			end
503
			Pert.CFrame = Pert.CFrame:lerp(sp,.01)
504
			clr = c3(r,g,b)
505
			if Rod ~= nil then
506
				local to,from = Pert.CFrame.p, From:WaitForChild'HumanoidRootPart'.CFrame.p
507
				local dist = (to-from).magnitude
508
				Rod.Size = vec3(.2,.2,dist)
509
				Rod.CFrame = cf(to,from)*cf(0,0,-dist/2)
510
			end
511
			--TextL.TextColor3 = clr
512
		until TextL.TextTransparency>=1
513
		Pert:Destroy()
514
		if Rod ~= nil then
515
			Rod:Destroy()
516
		end
517
	end)
518
end
519
520
--// Example // showDmg(workspace.SavageMunkey, workspace.Base, 'Damage Dealt'..math.random(0,100), {Rod=false,RodTrans=0,Crit=false})
521
522
CheckIfLanded = function()
523
	local Ray = Ray.new(root.Position,vec3(0,-1,0)*3.5)
524
	local Ignore = {Char}
525
	local Hit,Pos,SurfaceNorm = workspace:FindPartOnRayWithIgnoreList(Ray,Ignore)
526
	if Hit == nil then return false,nil end
527
	return true, Hit
528
end;
529
530
FindNearestTorso = function(Position, Distance, SinglePlayer)
531
    if SinglePlayer then return(SinglePlayer.Torso.CFrame.p -Position).magnitude < Distance end
532
        local List = {}
533
        for i,v in pairs(workspace:GetChildren())do
534
            if v:IsA("Model")then
535
                if v:findFirstChild("Torso")then
536
                    if v ~= Char then
537
                        if(v.Torso.Position -Position).magnitude <= Distance then
538
                            table.insert(List,v)
539
                        end 
540
                    end 
541
                end 
542
            end 
543
        end
544
    return List
545
end
546
547
DebounceHit = false
548
549
NewFXBox = function(name,prnt)
550
	if prnt == nil then
551
		prnt = Character
552
	end
553
	local FXBox = Instance.new('Model', prnt)
554
	FXBox.Name = 'FXBox'
555
	if name then
556
		FXBox.Name = name
557
	end
558
	local Count = 0
559
	local Check
560
	Check = FXBox.ChildAdded:connect(function(Object)
561
		if Object:IsA'BasePart' then
562
			FXBox.PrimaryPart = Object
563
			Check:disconnect()
564
		end
565
	end)
566
	return FXBox
567
end
568
569
ReSurface = function(Part, Integer)
570
	if Part ~= nil and Part:IsA'BasePart' then
571
		Part.TopSurface = Integer
572
		Part.BottomSurface = Integer
573
		Part.LeftSurface = Integer
574
		Part.RightSurface = Integer
575
		Part.FrontSurface = Integer
576
		Part.BackSurface = Integer
577
	end
578
end
579
580
function ni(name,prnt)
581
	return Instance.new(tostring(name),prnt)
582
end
583
584
local FX = NewFXBox('FXBox', Character)
585
function NewObject(Type, prnt, others)
586
	if not prnt then prnt = workspace end
587
	local New = ni(Type)
588
	if New:IsA'BasePart' then
589
		ReSurface(New,10)
590
		New.Anchored = true
591
		New.Size = vec3(1,1,1)
592
		New.CanCollide = false
593
	end
594
	for i,v in next, others do
595
		local suc,err = pcall(function()
596
			New[i] = v
597
		end)
598
		if not suc then
599
			print(err)
600
		end
601
	end
602
	New.Parent = prnt
603
	return New
604
end
605
606
function OnHumanoidFind(Detector, Offset, Function, Range, Multi) --// R15 Support
607
    spawn(function()
608
        if not Multi then Multi = false end
609
        local PlayerModels={};
610
        local SearchAndStuff
611
        local First = true
612
        SearchAndStuff=function(Parent)
613
            for Index, Obj in next, Parent:children() do
614
                if Obj:IsA'Model' and Obj:FindFirstChild'Humanoid' then
615
                    if Obj:FindFirstChild'HumanoidRootPart' and (Obj.HumanoidRootPart.CFrame.p-(Detector.CFrame*Offset).p).magnitude <= Range and Obj~=char then
616
                        --print'derp'
617
                        table.insert(PlayerModels, Obj)
618
                        if First then
619
                            if not Multi then
620
                                First = false
621
                            end
622
                            pcall(function()
623
                                Obj.Health.Disabled = true
624
                            end)
625
                            spawn(function()
626
                                Function(Obj:WaitForChild'HumanoidRootPart', Obj:WaitForChild'Humanoid', Obj)
627
                            end)
628
                        end
629
                    end
630
                end
631
                SearchAndStuff(Obj)
632
            end
633
        end
634
        SearchAndStuff(workspace)
635
        return PlayerModels
636
    end)
637
end
638
639
function debri(item,time)
640
	return game:service'Debris':AddItem(item,time)
641
end
642
643
local effects={MagicCircles={};};
644
local trans={};
645
local grows={}
646
647
function effects:MagicCircle(waitt, id, Offset)
648
	local mcPart=NewObject('Part', FX,{Transparency=1,Size=vec3(4.5,4.5,.2)})
649
	debri(mcPart,40)
650
	local mesh=NewObject('BlockMesh',mcPart,{Scale=vec3(1,1,0)})
651
	summonsound()
652
	local backDecal=NewObject('Decal',mcPart,{Color3=bc(CustomColor).Color,Face='Back',Texture=rbx..id})
653
	local frontDecal=NewObject('Decal',mcPart,{Color3=bc(CustomColor).Color,Face='Front',Texture=rbx..id})
654
	local r=rand()
655
	local dir=5
656
	if r>.5 then dir=-5 end
657
	spawn(function()
658
		repeat wait() until frontDecal.Parent==nil mcPart:Destroy()
659
	end)
660
	table.insert(effects.MagicCircles, {mcPart,backDecal,frontDecal,dir})
661
	mcPart.CFrame = Offset
662
	delay(waitt,function() trans[backDecal]={.05,1} trans[frontDecal]={.05,1}end)
663
	return mcPart
664
end
665
666
function effects:particle(waitt,mx,num, shape,Offset, clrz,cancollide)
667
	local sz={};
668
	if not clrz or #clrz < 1 then
669
		clrz={'Royal purple','Pearl',CustomColor}
670
	end
671
	for i = .4,mx,.025 do table.insert(sz,i) end
672
	local tings={};
673
	for i = 1,num do
674
		local val = sz[rand(1,#sz)]
675
		local part=NewObject('Part', FX,{Material=CustomMaterial, CanCollide=cancollide,Shape=shape, Transparency=.6,Size=vec3(val,val,val),Color = bc(clrz[rand(1,#clrz)]).Color, CFrame = Offset*ang(rad(rand(-360,360)),rad(rand(-360,360)),rad(rand(-360,360)))})
676
		tings[i]=part
677
		delay(waitt,function() trans[part]={.05,1} end)
678
	end
679
	return tings
680
end
681
682
function effects:Debris(cancollide, radius, mx, num, pos, waitt,velocitymax)
683
	local Ray = Ray.new(pos+vec3(0,1,0),vec3(0,-1,0)*5)
684
	local Ignore = {FX,Character}
685
	local Hit, Pos, SurfaceNorm = workspace:FindPartOnRayWithIgnoreList(Ray,Ignore)
686
	local tings={};
687
	if Hit then
688
		local sz={};
689
		for i = .2,mx,.025 do table.insert(sz,i) end
690
		for i = 1,num do
691
			local val = sz[rand(1,#sz)]
692
			local y = 45
693
			if not cancollide then y = 65 end
694
			local top,bottom=velocitymax[1],velocitymax[2]
695
			local x,z=rand(bottom,top),rand(bottom,top)
696
			local part=NewObject('Part', FX,{Anchored=false, Velocity = vec3(rand(-x,x),y,rand(-z,z)), Material=Hit.Material, CanCollide=cancollide, Transparency=Hit.Transparency,Size=vec3(val,val,val),Color = Hit.Color, CFrame = cf(pos)*cf(rand(-radius,radius),0,rand(-radius,radius))*ang(rad(rand(-360,360)),rad(rand(-360,360)),rad(rand(-360,360)))})
697
			tings[i]=part
698
			if cancollide then
699
				delay(waitt,function() trans[part]={.05,1} end)
700
			end
701
		end
702
		return tings
703
	else
704
		--// Derp
705
	end
706
end
707
708
function effects:BlastRad(cancollide, radius, num, mx, pos, waitt)
709
	local Ray = Ray.new(pos+vec3(0,1,0),vec3(0,-1,0)*5)
710
	local Ignore = {FX,Character}
711
	local Hit, Pos, SurfaceNorm = workspace:FindPartOnRayWithIgnoreList(Ray,Ignore)
712
	local tings={};
713
	local org=mx/4
714
	mx=mx
715
	if Hit then
716
		local sz={};
717
		for i = .2,num,.025 do table.insert(sz,i) end
718
		for i = 1,360,mx do
719
			local val = sz[rand(1,#sz)]
720
			local function rr()
721
				local vlz={}
722
				for i = .45,1,.025 do table.insert(vlz,i) end
723
				return vlz[rand(1,#vlz)]
724
			end
725
			local part=NewObject('Part', FX,{Material=Hit.Material, CanCollide=cancollide, Transparency=Hit.Transparency,Size=vec3(val/rr(),val/rr(),val/rr()),Color = Hit.Color, CFrame = cf(pos) * ang(0,rad(i),0)*cf(radius,(Hit.CFrame.Y+(Hit.Size.Y/2))-val,0)*ang(rad(rand(-360,360)),rad(rand(-360,360)),rad(rand(-360,360)))})
726
			tings[i]=part
727
			if cancollide then
728
				delay(waitt,function() trans[part]={.05,1} end)
729
			end
730
		end
731
		return tings
732
	else
733
		--// Derp
734
	end
735
end
736
737
--[[ examples
738
	effects:BlastRad(true, 15, 2, 18, pos, .5)
739
	
740
	effects:Debris(true, 2.5, 2, rand(10,20), pos, .5,{50,25})
741
	
742
	effects:MagicCircle(.15,124339738, cf(0,-1.5,0))
743
	
744
	effects:particle(.5,1.2,rand(2,5),'Ball',cf(0,-1.5,0),{CustomColor,'Pearl'})
745
--]]
746
747
BindKey('Ion Beam', 'e', function(AttackName, Key)
748
	ds,dkd = true,true
749
	for i = 0,1,.05 do
750
		FacePos'mouse'
751
		local animspd = .5
752
		Right_Arm_ = CFrame.new(1.63944244, -1.00000119, -0.438468933, 0, -0.866025388, 0.500000238, 1, 0, 0, 0, 0.500000238, 0.866025388)
753
		Left_Arm_ = CFrame.new(-0.21706295, -0.303030014, -0.0192867965, 0.939692855, 0.342019916, -2.08616257e-007, -0.342019856, 0.939692736, 1.5155652e-007, 2.08616257e-007, -8.94069672e-008, 1.00000024)
754
		Right_Leg_ = CFrame.new(0.0669910312, 0, -0.249992311, 0.866025567, 0, -0.499999881, 0, 1, 0, 0.499999881, 0, 0.866025567)
755
		Left_Leg_ = CFrame.new(-3.69548798e-006, 0, -7.62939453e-006, 1.00000024, 0, 0, 0, 1, 0, 0, 0, 1.00000024)
756
		Head_ = CFrame.new(0, 0, 0, 0.500000238, 0, -0.866025388, 0, 1, 0, 0.866025388, 0, 0.500000238)
757
		Torso_ = CFrame.new(-0.349983215, 0, 0, 0.500000238, 0, 0.866025388, 0, 1, 0, -0.866025388, 0, 0.500000238)
758
		
759
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
760
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
761
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
762
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
763
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
764
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
765
		lrs:wait()
766
	end
767
	local mc=effects:MagicCircle(.15,127817121, rarm.CFrame * cf(0,-1.5,0)*ang(rad(90),0,0))
768
	local particles = effects:particle(.5,1.2,rand(2,5),'Ball',rarm.CFrame*cf(0,-1.5,0),{CustomColor,'Pearl'})
769
	spawn(function()
770
		local start=(rarm.CFrame*cf(0,-1.65,0))
771
		local endp = mouse.Hit.p
772
		local dir = cf(start.p,endp)
773
		local dist
774
		local beam = NewObject('Part',FX,{Material=CustomMaterial,Size = vec3(1,1,1), Transparency=.5,BrickColor=bcCustomColor,CFrame=dir*start})
775
		local i,maxi,up=0,800,15
776
		while i<maxi and lrs:wait() do
777
			if beam.Transparency >= 1 then
778
				beam:Destroy()
779
				break
780
			end
781
			i=i+up
782
			beam.Transparency=beam.Transparency+(1/(maxi/up))
783
			local bcf=(beam.CFrame*cf(0,0,-(i/2)))
784
			local Ray = Ray.new(start.p,(start.p-(cf(start.p,endp)*cf(0,0,1)).p).unit*i)
785
			local Hit,Pos,SurfaceNorm = workspace:FindPartOnRayWithIgnoreList(Ray,{Char,FX})
786
			if Hit then
787
				local particles = effects:particle(.001,6,rand(3,7),'Block',cf(Pos),{'Pearl',CustomColor})
788
				spawn(function()
789
					table.insert(grows,{particles,.5})
790
				end)
791
				local hsnd=snd(233856130,particles[1])
792
				hsnd.Volume=4
793
				hsnd.Pitch=pitches[rand(1,#pitches)]
794
				hsnd:Play()
795
				local hsnd2=snd(471882019,particles[1])
796
				hsnd2.Volume=4
797
				hsnd2.Pitch=pitches[rand(1,#pitches)]
798
				hsnd2:Play()
799
				effects:Debris(true, 2.5, 2, rand(10,20), Pos, .5,{50,25})
800
				effects:BlastRad(true, 3, 2, 18, Pos, .5)
801
				OnHumanoidFind(particles[1], cf(0,0,0), function(rootp,human,model)
802
					local Hum = human
803
					local dmg=rand(17,25)
804
					Hum.Health = Hum.Health - dmg
805
					local num=rand()
806
					local derp=false
807
					if num>.45 then
808
						derp=true
809
						dmg=dmg
810
						Hum.PlatformStand = true
811
					end
812
					showDmg(Hum.Parent, Character, dmg, {Rod=true,RodTrans=0,Crit=derp})
813
				end, 15, true)
814
				break
815
			else
816
				beam.Size=beam.Size:lerp(vec3(1,1,i),.5)
817
				beam.CFrame = dir*cf(0,0,-i/2)*ang(0,0,rad(i)) --// cf((beam.CFrame*cf(0,0,-i/2)).p,(beam.CFrame*cf(0,0,-(i/2)+4)).p)
818
			end
819
			lrs:wait()
820
		end
821
		beam:Destroy()
822
		
823
	end)
824
	ds,dkd = false,false
825
end)
826
827
BindKey('Spike Barrage Rise', 'q', function(AttackName, Key)
828
	ds,dkd = true,true
829
	for i = 0,1,.05 do
830
		FacePos'mouse'
831
		local animspd = .4
832
		Right_Arm_ = CFrame.new(0.370960236, 0.770703673, -1.29712296, 0.866025269, -0.500000298, 1.35973167e-007, -0.0950751901, -0.164675236, -0.981755078, 0.490877777, 0.850224674, -0.190150529)
833
		Left_Arm_ = CFrame.new(-0.370960236, 0.770703673, -1.2971077, 0.866025269, 0.500000298, -1.35973167e-007, 0.0950751901, -0.164675236, -0.981755078, -0.490877777, 0.850224674, -0.190150529)
834
		Right_Leg_ = CFrame.new(0, 0.117139697, -0.42620942, 1, 0, 0, 0, 0.990105569, -0.140325084, 0, 0.140325084, 0.990105569)
835
		Left_Leg_ = CFrame.new(0, 0.00440132618, -0.339604199, 1, 0, 0, 0, 0.992687285, 0.120714575, 0, -0.120714575, 0.992687285)
836
		Head_ = CFrame.new(0, 0.0041718483, -0.112817012, 1, 0, 0, 0, 0.997167885, -0.0752087981, 0, 0.0752087981, 0.997167885)
837
		Torso_ = CFrame.new(0, -0.0968499184, -0.0671653748, 1, 0, 0, 0, 0.990105569, 0.140325084, 0, -0.140325084, 0.990105569)
838
		
839
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
840
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
841
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
842
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
843
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
844
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
845
		lrs:wait()
846
	end
847
	local pos
848
	hum.WalkSpeed=0
849
	hum.JumpPower=0
850
	for i = 0,1,.05 do
851
		local animspd = .4
852
		Right_Arm_ = CFrame.new(0, 1.00624561, -0.619987488, 1, 0, 0, 0, -0.655552566, -0.755149782, 0, 0.755149782, -0.655552566)
853
		Left_Arm_ = CFrame.new(0, 1.00623989, -0.619972229, 1, 0, 0, 0, -0.655552566, -0.755149782, 0, 0.755149782, -0.655552566)
854
		Right_Leg_ = CFrame.new(0, 0.0947320461, -0.297110081, 1, 0, 0, 0, 0.981755137, -0.190150023, 0, 0.190150023, 0.981755137)
855
		Left_Leg_ = CFrame.new(0, -0.0276720524, -0.331606507, 1, 0, 0, 0, 0.986158729, 0.165805161, 0, -0.165805161, 0.986158729)
856
		Head_ = CFrame.new(0, 0.00417375565, -0.112819031, 1, 0, 0, 0, 0.997167945, -0.0752075911, 0, 0.0752075985, 0.997167945)
857
		Torso_ = CFrame.new(0, -0.0691239834, -0.0950775146, 1, 0, 0, 0, 0.981755137, 0.190150023, 0, -0.190150023, 0.981755137)
858
		
859
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
860
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
861
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
862
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
863
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
864
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
865
		lrs:wait()
866
	end
867
	ds,dkd = false,false
868
end)
869
870
local mh = 1500
871
hum.MaxHealth = mh
872
wait(.1)
873
hum.Health = mh
874
HumanoidRootPart.Transparency = .9
875
876
local debvals={};
877
debvals['CLEAN']=0
878
debvals['walkparticles']=0
879
local Handle = function()
880
	spawn(function()
881
		for i,v in next, effects.MagicCircles do
882
			if v[1].Parent ~= nil then
883
				v[1].CFrame = lerp(v[1].CFrame, v[1].CFrame * CFrame.Angles(0,0,rad(v[4])), .9)
884
			else
885
				--table.remove(effects.MagicCircles,i)
886
				effects.MagicCircles[i]=nil
887
			end
888
		end
889
	end)
890
	spawn(function()
891
		for ting,data in next, trans do
892
			if ting.Transparency~=nil and ting.Transparency < data[2] then
893
				--print(ting.Transparency,data[2])
894
				ting.Transparency=ting.Transparency+data[1]
895
			elseif ting.Transparency >= tonumber(data[2]) and ting.Parent ~= nil then
896
				--print'ded'
897
				trans[ting]=nil
898
				ting:Destroy()
899
			end
900
		end
901
	end)
902
	spawn(function()
903
		for a,b in next, grows do
904
			if a==grows[15] then
905
				grows={};
906
				for i,v in next, grows do
907
					grows[i]=v
908
				end
909
				print'ded'
910
			else
911
				if #b > 1 then
912
					for __,v in next, b[1] do
913
						if v.Parent ~= nil then
914
							if v.Transparency > 8 then
915
								v:Destroy()
916
							else
917
								local c=v.CFrame
918
								v.Size=v.Size+vec3(b[2],b[2],b[2])
919
								v.CFrame=c*ang(rad(2),rad(2/2),rad(2*3))
920
							end
921
						else
922
							b[1][__]=nil
923
						end
924
					end
925
				else
926
					grows[a]=nil
927
				end
928
			end
929
		end
930
	end)
931
	if not Walking and debvals['walkparticles']>.09 then
932
		debvals['walkparticles']=0
933
		local particles = effects:particle(.1,2.2,1,'Block',torso.CFrame,{CustomColor,'Pearl'})
934
		table.insert(grows,{particles,.5})
935
	else
936
		--print(debvals['walkparticles'])
937
	end
938
	if debvals['CLEAN'] > 40 then
939
		debvals['CLEAN']=0
940
		grows={};
941
		trans={};
942
		effects.MagicCircles={};
943
		FX:ClearAllChildren()
944
	end
945
	for i,v in next,debvals do
946
		debvals[i]=v+.1
947
		--print(i,v)
948
	end
949
end
950
951
Mouse.KeyDown:connect(function(Key)
952
	if Key:byte() == 48 then
953
		Walking = false
954
	end
955
end)
956
957
Mouse.KeyUp:connect(function(Key)
958
	if Key:byte() == 48 then
959
		Walking = true
960
	end
961
end)
962
963
local upv=0
964
lrs:connect(function()
965
	Handle()
966
	Landed = CheckIfLanded()
967
	sine = sine+change/2
968
    hum.PlatformStand = false
969
	if ds then
970
		return
971
	end
972
    hum.JumpPower = 150
973
	hum.WalkSpeed = 9
974
	if Walking then
975
		hum.WalkSpeed=12
976
	else
977
		hum.WalkSpeed = 48
978
	end
979
	local tmag_xz = (torso.Velocity*vec3(1, 0, 1)).magnitude
980
	local tmag_y = torso.Velocity.Y
981
	local trot = torso.RotVelocity.Y/50
982
	local speed = Vector3.new(Torso.Velocity.X,0,Torso.Velocity.Z)
983
	local TiltOnAxis = (root.CFrame-root.CFrame.p):inverse()*speed/200
984
	local Tilt = ang(TiltOnAxis.Z,-TiltOnAxis.X,-TiltOnAxis.X)
985
	if Landed == false then
986
		State, Mode = 'Falling', 'Normal'
987
	elseif tmag_xz < 7 then
988
			State, Mode = 'Idle', 'Normal'
989
	elseif tmag_xz >= 10 then
990
		State = 'Walking'
991
		if tmag_xz > 23 then
992
			Mode = 'Running'
993
		else
994
			Mode = 'Normal'
995
		end
996
	end
997
	local RestoreDefault = function(Current)
998
		Current = Current or State
999
		if LastState ~= Current then
1000
			LastState = Current
1001
			sine = 0
1002
		end
1003
    end
1004
    local Default_Anims = function()
1005
		local animspd = .1
1006
		local Right_Arm_ = cf(0,0,0)
1007
		local Left_Arm_ = cf(0,0,0)
1008
		local Right_Leg_ = cf(0,0,0)
1009
		local Left_Leg_ = cf(0,0,0)
1010
		local Head_ = cf(0,0,0)
1011
		local Torso_ = cf(0,0,0)
1012
		
1013
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
1014
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
1015
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
1016
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
1017
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
1018
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
1019
    end
1020
    if State == 'Falling' and ds == false then
1021
		local animspd = .3
1022
		change=1
1023
		Right_Arm_ = CFrame.new(0.309095025, -0.285505116, -0.0270642117, 0.920238733, -0.384522766, -0.0728211105, 0.386343509, 0.922273397, 0.0122654885, 0.0624446124, -0.0394211262, 0.99726963)
1024
		Left_Arm_ = CFrame.new(-0.340406179, -0.299129426, 0.0357903093, 0.920238614, 0.384522349, -0.0728249624, -0.384691834, 0.922963858, 0.0122471973, 0.0719241202, 0.0167448297, 0.99726963)
1025
		Right_Leg_ = CFrame.new(-6.10351563e-005, 3.81469727e-005, -1.90734863e-006, 1, 0, 0, 0, 1, 0, 0, 0, 1)
1026
		Left_Leg_ = CFrame.new(-6.10351563e-005, 0.361884952, -0.74763912, 1, 0, 0, 0, 0.965925157, 0.258821696, 0, -0.258821696, 0.965925157)
1027
		Head_ = CFrame.new(0, 0.200837851, 0.559991479, 1, 0, 0, 0, 0.866024137, 0.500002325, 0, -0.500002325, 0.866024137)
1028
		Torso_ = CFrame.new(0, 0.0190048218, 0.0427560806, 1, 0, 0, 0, 0.992914736, -0.118828967, 0, 0.118828967, 0.992914736)
1029
1030
		torw.C0 = clerp(torw.C0, cf(-sin(sine/rand(2,8))/15,sin(sine/rand(2,8))/15,0)*Torso_*ang(0,0,0),animspd)
1031
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
1032
		law.C0 = lerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
1033
		raw.C0 = lerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
1034
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
1035
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)         
1036
    elseif State == 'Idle' and ds == false then
1037
		RestoreDefault()
1038
		if Mode == 'Normal' and ds == false then
1039
			local animspd = .2
1040
			change=1
1041
			torw.C0 = lerp(torw.C0, cf(0,-sin(sine/6)/15,.1-sin(sine/6)/41)*CFrame.new(0, 0, 0, 0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994)*ang(-rad(5)+sin(sine/6)/41,-rad(16),0),animspd)
1042
			hedw.C0 = clerp(hedw.C0, cf(0,0,-cos(sine/6)/24)*CFrame.new(0.0443366542, 0.0183815956, 0.154620528, 0.965866625, -0.0431191772, 0.25542587, 0.00273020566, 0.987688363, 0.15641053, -0.259025425, -0.150374338, 0.95409292)*ang(cos(sine/6)/24,0,0),animspd)
1043
			law.C0 = clerp(law.C0, cf(-cos(sine/6)/24,0,0)*CFrame.new(-0.17305398, -0.4023332, -0.290585816, 0.933187842, 0.329444826, -0.143619344, -0.358558774, 0.826312661, -0.434330463, -0.0244134665, 0.456807911, 0.889230251)*ang(0,0,-cos(sine/6)/15),animspd)
1044
			raw.C0 = clerp(raw.C0, cf(cos(sine/6)/24,0,0)*CFrame.new(0.352661252, -0.465409994, 0, 0.866025329, -0.49999997, 0, 0.5, 0.866025388, 0, 0, 0, 0.99999994)*ang(0,0,cos(sine/6)/15),animspd)
1045
			rlw.C0 = clerp(rlw.C0, cf(sin(sine/6)/41,sin(sine/6)/15,-.1+sin(sine/6)/41)*CFrame.new(-0.148569882, -0.0734579563, 0.0426014438, 0.993112504, -0.117148325, 0.0019749701, 0.117148332, 0.992546141, -0.0335917622, 0.0019749403, 0.0335917659, 0.999433637)*ang(-sin(sine/6)/41,0,0),animspd)
1046
			llw.C0 = clerp(llw.C0, cf(sin(sine/6)/41,sin(sine/6)/15,-.1+sin(sine/6)/41)*CFrame.new(0.18119061, -0.113829255, -0.0519562438, 0.985961914, 0.166921332, 0.00402534008, -0.166921332, 0.98480773, 0.0478639491, 0.00402531028, -0.0478639565, 0.998845637)*ang(-sin(sine/6)/41,0,0),animspd)			
1047
		else
1048
			Default_Anims()
1049
			warn'Idle: Unknown Mode Used'
1050
		end
1051
    elseif State == 'Walking' and ds == false then
1052
		RestoreDefault()
1053
		if Mode == 'Normal' and ds == false then
1054
			local animspd = .225
1055
			local Right_Arm_ = cf(0,0,0)
1056
			local Left_Arm_ = cf(0,0,0)
1057
			local Right_Leg_ = cf(0,0,0)
1058
			local Left_Leg_ = cf(0,0,0)
1059
			local Head_ = cf(0,0,0)
1060
			local Torso_ = cf(0,0,0)
1061
			
1062
			local animspd = .2
1063
			change=1.55
1064
			torw.C0 = lerp(torw.C0, cf(0,cos(sine/3)/8,0)*ang(-rad(10)+cos(sine/3)/8,cos(sine/6)/8,0),animspd)
1065
			hedw.C0 = clerp(hedw.C0, cf(0,0,-.2+cos(sine/3)/8)*ang(rad(10)+-cos(sine/3)/8,trot+-cos(sine/6)/8,0),animspd)
1066
			law.C0 = clerp(law.C0, cf(0,0,-cos(sine/6)/2)*CFrame.new(-0.201123714, -0.238223612, 0, 0.965925872, 0.258818984, 0, -0.258818984, 0.965925872, 0, 0, 0, 1)*ang(cos(sine/6)/2,0,0),animspd)
1067
			raw.C0 = clerp(raw.C0, cf(0,0,cos(sine/6)/2)*CFrame.new(0.201123714, -0.238223612, 0, 0.965925872, -0.258818984, 0, -0.258818984, 0.965925872, 0, 0, 0, 1)*ang(-cos(sine/6)/2,0,0),animspd)
1068
			rlw.C0 = clerp(rlw.C0, cf(-.034,-sin(sine/6)/4,-.4+-cos(sine/6)/2+sin(sine/6)/2)*ang(-rad(5)+sin(sine/6)/3,-cos(sine/6)/8,rad(2)),animspd)
1069
			llw.C0 = clerp(llw.C0, cf(.0340,sin(sine/6)/4,-.4+cos(sine/6)/2+-sin(sine/6)/2)*ang(-rad(5)+-sin(sine/6)/3,-cos(sine/6)/8,-rad(2)),animspd)
1070
		elseif Mode == 'Running' and ds == false then
1071
			local animspd = .1
1072
			local Right_Arm_ = cf(0,0,0)
1073
			local Left_Arm_ = cf(0,0,0)
1074
			local Right_Leg_ = cf(0,0,0)
1075
			local Left_Leg_ = cf(0,0,0)
1076
			local Head_ = cf(0,0,0)
1077
			local Torso_ = cf(0,0,0)
1078
			upv=upv+25
1079
			torw.C0 = lerp(torw.C0, cf(cos(sine/3)/8,sin(sine/6)/5,trot)*Torso_*ang(-rad(90),rad(upv),0),.3)
1080
			hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
1081
			law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
1082
			raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
1083
			rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
1084
			llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
1085
		else
1086
			Default_Anims()
1087
			warn'Walking: Unknown Mode Used'
1088
		end
1089
    else --// New Animation Test Stage
1090
		local animspd = .1
1091
		local Right_Arm_ = cf(0,0,0)
1092
		local Left_Arm_ = cf(0,0,0)
1093
		local Right_Leg_ = cf(0,0,0)
1094
		local Left_Leg_ = cf(0,0,0)
1095
		local Head_ = cf(0,0,0)
1096
		local Torso_ = cf(0,0,0)
1097
		
1098
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
1099
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
1100
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
1101
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
1102
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
1103
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
1104
    end
1105
        
1106
end)
1107
1108
--[[ Default Welds
1109
		local animspd = .3
1110
1111
		local Right_Arm_ = cf(0,0,0)
1112
		local Left_Arm_ = cf(0,0,0)
1113
		local Right_Leg_ = cf(0,0,0)
1114
		local Left_Leg_ = cf(0,0,0)
1115
		local Head_ = cf(0,0,0)
1116
		local Torso_ = cf(0,0,0)
1117
1118
		torw.C0 = clerp(torw.C0, cf(0,0,0)*Torso_*ang(0,0,0),animspd)
1119
		hedw.C0 = clerp(hedw.C0, cf(0,0,0)*Head_*ang(0,0,0),animspd)
1120
		law.C0 = clerp(law.C0, cf(0,0,0)*Left_Arm_*ang(0,0,0),animspd)
1121
		raw.C0 = clerp(raw.C0, cf(0,0,0)*Right_Arm_*ang(0,0,0),animspd)
1122
		rlw.C0 = clerp(rlw.C0, cf(0,0,0)*Right_Leg_*ang(0,0,0),animspd)
1123
		llw.C0 = clerp(llw.C0, cf(0,0,0)*Left_Leg_*ang(0,0,0),animspd)
1124
--]]