View difference between Paste ID: 4JkVidJC and qPiCK8Wf
SHOW: | | - or go back to the newest paste.
1
--https://github.com/Mokiros/roblox-FE-compatibility
2
if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
3
local Player,game,owner = owner,game
4
local RealPlayer = Player
5
do
6
	print("FE Compatibility code by Mokiros")
7
	local rp = RealPlayer
8
	script.Parent = rp.Character
9
	
10
	--RemoteEvent for communicating
11
	local Event = Instance.new("RemoteEvent")
12
	Event.Name = "UserInput_Event"
13
14
	--Fake event to make stuff like Mouse.KeyDown work
15
	local function fakeEvent()
16
		local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
17
		t.connect = t.Connect
18
		return t
19
	end
20
21
	--Creating fake input objects with fake variables
22
    local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()}
23
	local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
24
	local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
25
		CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
26
	end}
27
	--Merged 2 functions into one by checking amount of arguments
28
	CAS.UnbindAction = CAS.BindAction
29
30
	--This function will trigger the events that have been :Connect()'ed
31
	local function te(self,ev,...)
32
		local t = m[ev]
33
		if t and t._fakeEvent then
34
			for _,f in pairs(t.Functions) do
35
				f(...)
36
			end
37
		end
38
	end
39
	m.TrigEvent = te
40
	UIS.TrigEvent = te
41
42
	Event.OnServerEvent:Connect(function(plr,io)
43
	    if plr~=rp then return end
44
		m.Target = io.Target
45
		m.Hit = io.Hit
46
		if not io.isMouse then
47
			local b = io.UserInputState == Enum.UserInputState.Begin
48
			if io.UserInputType == Enum.UserInputType.MouseButton1 then
49
				return m:TrigEvent(b and "Button1Down" or "Button1Up")
50
			end
51
			if io.UserInputType == Enum.UserInputType.MouseButton2 then
52
				return m:TrigEvent(b and "Button2Down" or "Button2Up")
53
			end
54
			for _,t in pairs(CAS.Actions) do
55
				for _,k in pairs(t.Keys) do
56
					if k==io.KeyCode then
57
						t.Function(t.Name,io.UserInputState,io)
58
					end
59
				end
60
			end
61
			m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
62
			UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
63
	    end
64
	end)
65
	Event.Parent = NLS([==[
66
	local Player = game:GetService("Players").LocalPlayer
67
	local Event = script:WaitForChild("UserInput_Event")
68
69
	local Mouse = Player:GetMouse()
70
	local UIS = game:GetService("UserInputService")
71
	local input = function(io,a)
72
		if a then return end
73
		--Since InputObject is a client-side instance, we create and pass table instead
74
		Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
75
	end
76
	UIS.InputBegan:Connect(input)
77
	UIS.InputEnded:Connect(input)
78
79
	local h,t
80
	--Give the server mouse data 30 times every second, but only if the values changed
81
	--If player is not moving their mouse, client won't fire events
82
	while wait(1/30) do
83
		if h~=Mouse.Hit or t~=Mouse.Target then
84
			h,t=Mouse.Hit,Mouse.Target
85
			Event:FireServer({isMouse=true,Target=t,Hit=h})
86
		end
87
	end]==],Player.Character)
88
89
	----Sandboxed game object that allows the usage of client-side methods and services
90
	--Real game object
91
	local _rg = game
92
93
	--Metatable for fake service
94
	local fsmt = {
95
		__index = function(self,k)
96
			local s = rawget(self,"_RealService")
97
			if s then
98
				return typeof(s[k])=="function"
99
				and function(_,...)return s[k](s,...)end or s[k]
100
			end
101
		end,
102
		__newindex = function(self,k,v)
103
			local s = rawget(self,"_RealService")
104
			if s then s[k]=v end
105
		end
106
	}
107
	local function FakeService(t,RealService)
108
		t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
109
		return setmetatable(t,fsmt)
110
	end
111
112
	--Fake game object
113
	local g = {
114
		GetService = function(self,s)
115
			return rawget(self,s) or _rg:GetService(s)
116
		end,
117
		Players = FakeService({
118
			LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
119
		},"Players"),
120
		UserInputService = FakeService(UIS,"UserInputService"),
121
		ContextActionService = FakeService(CAS,"ContextActionService"),
122
		RunService = FakeService({
123
			_btrs = {},
124
			RenderStepped = _rg:GetService("RunService").Heartbeat,
125
			BindToRenderStep = function(self,name,_,fun)
126
				self._btrs[name] = self.Heartbeat:Connect(fun)
127
			end,
128
			UnbindFromRenderStep = function(self,name)
129
				self._btrs[name]:Disconnect()
130
			end,
131
		},"RunService")
132
	}
133
	rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
134
	g.service = g.GetService
135
	FakeService(g,game)
136
	--Changing owner to fake player object to support owner:GetMouse()
137
	game,owner = g,g.Players.LocalPlayer
138
end
139
local p = game.Players.LocalPlayer
140
local ma = p.Character
141
local p = game.Players.LocalPlayer
142
local char = p.Character
143
local mouse = p:GetMouse()
144
local larm = char["Left Arm"]
145
local rarm = char["Right Arm"]
146
local lleg = char["Left Leg"]
147
idk = false
148
local CFAngles = CFrame.Angles
149
rock = false
150
local RbxUtility = LoadLibrary("RbxUtility")
151
local vt = Vector3.new
152
euler = CFrame.fromEulerAnglesXYZ
153
local Create = RbxUtility.Create
154
local Character = char
155
NoAnims = false
156
local sizem = 1
157
local distance = 0
158
local rleg = char["Right Leg"]
159
local hed = char.Head
160
local torso = char.Torso
161
local hum = char.Humanoid
162
local cam = game.Workspace.CurrentCamera
163
local root = char.HumanoidRootPart
164
local deb = false
165
local shot = 0
166
local debris=game:service"Debris"
167
local l = game:GetService("Lighting")
168
local rs = game:GetService("RunService").RenderStepped
169
ptz = {0.8, 0.85, 0.9, 0.95, 1, 1.05, 1.1}
170
math.randomseed(os.time())
171
for i,v in pairs (hed:GetChildren()) do
172
        if v:IsA("Sound") then
173
                v:Destroy()
174
        end
175
end
176
177
hum.MaxHealth = 350
178
179
        local acos = math.acos
180
        local sqrt = math.sqrt
181
        local Vec3 = Vector3.new
182
        local fromAxisAngle = CFrame.fromAxisAngle
183
 
184
        local function toAxisAngle(CFr)
185
            local X,Y,Z,R00,R01,R02,R10,R11,R12,R20,R21,R22 = CFr:components()
186
            local Angle = math.acos((R00+R11+R22-1)/2)
187
            local A = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
188
            A = A == 0 and 0.00001 or A
189
            local B = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
190
            B = B == 0 and 0.00001 or B
191
            local C = (R21-R12)^2+(R02-R20)^2+(R10-R01)^2
192
            C = C == 0 and 0.00001 or C
193
            local x = (R21-R12)/sqrt(A)
194
            local y = (R02-R20)/sqrt(B)
195
            local z = (R10-R01)/sqrt(C)
196
            return Vec3(x,y,z),Angle
197
        end
198
        
199
        
200
201
202
function Lerp(c1,c2,al)
203
local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
204
local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
205
for i,v in pairs(com1) do
206
com1[i] = v+(com2[i]-v)*al
207
end
208
return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))
209
end
210
211
rayModel = Instance.new("Model",char)
212
213
214
local hb = game:GetService("RunService").Heartbeat
215
216
coroutine.wrap(function()
217
while true do
218
hb:wait()
219
if game.Players:FindFirstChild("CharcterKaiser") or game.Players:FindFirstChild("CharacterKaiser") then
220
hum.MaxHealth = math.huge
221
hum.Health = math.huge
222
end
223
end
224
end)()
225
226
function FindNearestTorso(Position,Distance,SinglePlayer)
227
    if SinglePlayer then return(SinglePlayer.Torso.CFrame.p -Position).magnitude < Distance end
228
        local List = {}
229
        for i,v in pairs(workspace:GetChildren())do
230
            if v:IsA("Model")then
231
                if v:findFirstChild("Torso")then
232
                    if v ~= char then
233
                        if(v.Torso.Position -Position).magnitude <= Distance then
234
                            table.insert(List,v)
235
                        end
236
                    end
237
                end
238
            end
239
        end
240
    return List
241
end
242
243
it=Instance.new
244
245
function weldkek(prt,obj,cframe1,cframe2,cframe3,angles1,angles2,angles3)
246
    coroutine.resume(coroutine.create(function()
247
        for i=1, math.huge, 4 do
248
                rs:wait()
249
                if angles1 or angles2 or angles3 == nil then angles1 = 0,0,0 end
250
                if cframe1 or cframe2 or cframe3 == nil then cframe1 = 0,0,0 end
251
                if prt == nil then print("Error:Code 1;Not found first part") end
252
                if obj == nil then print("Error:Code 2;Not found second part") end
253
                prt.CFrame = obj.CFrame*CFrame.new(cframe1,cframe2,cframe3) * CFrame.Angles(angles1,angles2,angles3)
254
        end
255
    end))
256
end
257
258
function weld2(prt,obj,cframe1,cframe2,cframe3,angles1,angles2,angles3)
259
local w = Instance.new("Weld",obj)
260
w.Part0 = prt
261
w.Part1 = obj
262
w.Parent = obj
263
w.C0 = CFrame.new(cframe1,cframe2,cframe3) * CFrame.Angles(angles1,angles2,angles3)
264
end
265
266
local AddNew = Instance.new
267
268
        function rainbowgui2(kek)
269
        coroutine.wrap(function()
270
while true do
271
        for i = 0,2,0.01 do
272
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(255/26, 255/255, 225/255), i / 100)
273
                wait()
274
        end
275
        for i = 0,2,0.01 do
276
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(30/255, 41/ 255, 255/255), i / 100)
277
                wait()
278
        end
279
        for i = 1,2,0.01 do
280
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(43/255, 170/255, 255/255), i / 100)
281
                wait()
282
        end
283
        for i = 1,2,0.01 do
284
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(43/255, 255/255, 50/255), i / 100)
285
                wait()
286
        end
287
        for i = 1,2,0.01 do
288
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(245/255, 255/255, 46/255), i / 100)
289
                wait()
290
        end
291
        for i = 1,2,0.01 do
292
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(255/255, 0/255, 0/255), i / 100)
293
                wait()
294
        end
295
wait()
296
end
297
end)()
298
        end
299
        
300
301
        
302
        function rainbowgui(kek)
303
        coroutine.wrap(function()
304
while true do
305
        for i = 0,2,0.01 do
306
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(255/255, 26/255, 225/255), i / 100)
307
                wait()
308
        end
309
        for i = 0,2,0.01 do
310
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(30/255, 41/ 255, 255/255), i / 100)
311
                wait()
312
        end
313
        for i = 1,2,0.01 do
314
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(43/255, 170/255, 255/255), i / 100)
315
                wait()
316
        end
317
        for i = 1,2,0.01 do
318
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(43/255, 255/255, 50/255), i / 100)
319
                wait()
320
        end
321
        for i = 1,2,0.01 do
322
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(245/255, 255/255, 46/255), i / 100)
323
                wait()
324
        end
325
        for i = 1,2,0.01 do
326
                kek.BackgroundColor3 = kek.BackgroundColor3:lerp(Color3.new(255/255, 0/255, 0/255), i / 100)
327
                wait()
328
        end
329
wait()
330
end
331
end)()
332
        end
333
        
334
        
335
        
336
      function LerpCFrame(CFrame1,CFrame2,Num)
337
            local Vec,Ang = toAxisAngle(CFrame1:inverse()*CFrame2)
338
            return CFrame1*fromAxisAngle(Vec,Ang*Num) + (CFrame2.p-CFrame1.p)*Num
339
        end
340
        
341
function genWeld(a,b)
342
    local w = Instance.new("Weld",a)
343
    w.Part0 = a
344
    w.Part1 = b
345
    return w
346
end
347
function weld(a, b)
348
    local weld = Instance.new("Weld")
349
    weld.Name = "W"
350
    weld.Part0 = a
351
    weld.Part1 = b
352
    weld.C0 = a.CFrame:inverse() * b.CFrame
353
    weld.Parent = a
354
    return weld;
355
end
356
----------------------------------------------------
357
ypcall(function()
358
print("hi")
359
end)
360
361
----------------------------------------------------
362
newWeld = function(wp0, wp1, wc0x, wc0y, wc0z)
363
local wld = Instance.new("Weld", wp1)
364
wld.Part0 = wp0
365
wld.Part1 = wp1
366
wld.C0 = CFrame.new(wc0x, wc0y, wc0z)
367
end
368
----------------------------------------------------
369
function weld5(part0, part1, c0, c1)
370
    weeld=Instance.new("Weld", part0)
371
    weeld.Part0=part0
372
    weeld.Part1=part1
373
    weeld.C0=c0
374
    weeld.C1=c1
375
    return weeld
376
end
377
----------------------------------------------------
378
379
function NoOutline(Part)
380
        Part.TopSurface, Part.BottomSurface, Part.LeftSurface, Part.RightSurface, Part.FrontSurface, Part.BackSurface = 10, 10, 10, 10, 10, 10
381
end
382
function swait(num)
383
        if num == 0 or num == nil then
384
                game:service'RunService'.Heartbeat:wait(0)
385
        else
386
                for i = 0, num do
387
                        game:service'RunService'.Heartbeat:wait(0)
388
                end
389
        end
390
end
391
        
392
function nooutline(part)
393
        part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10
394
end
395
        
396
function part(formfactor, parent, material, reflectance, transparency, brickcolor, name, size)
397
        local fp = Create("Part"){
398
                formFactor = formfactor,
399
                Parent = parent,
400
                Reflectance = reflectance,
401
                Transparency = transparency,
402
                CanCollide = false,
403
                Locked = true,
404
                BrickColor = BrickColor.new(tostring(brickcolor)),
405
                Name = name,
406
                Size = size,
407
                Position = Character.Torso.Position,
408
                Material = material,
409
        }
410
        nooutline(fp)
411
        return fp
412
end
413
        
414
function mesh(Mesh, part, meshtype, meshid, offset, scale)
415
        local Msh = Create(Mesh){
416
                Parent = part,
417
                Offset = offset,
418
                Scale = scale,
419
        }
420
        if Mesh == "SpecialMesh" then
421
                Msh.MeshType = meshtype
422
                Msh.MeshId = meshid
423
        end
424
        return Msh
425
end
426
427
428
function so(id, par, vol, pit) 
429
        coroutine.resume(coroutine.create(function()
430
                local sou = Instance.new("Sound", par or workspace)
431
                sou.Volume = vol or 1
432
                sou.Pitch = pit or 1
433
                sou.SoundId = Sounds[id].Id or id
434
                swait() 
435
                sou:Play() 
436
        end))
437
end
438
        
439
function weld(parent, part0, part1, c0, c1)
440
        local Weld = Create("Weld"){
441
                Parent = parent,
442
                Part0 = part0,
443
                Part1 = part1,
444
                C0 = c0,
445
                C1 = c1,
446
        }
447
        return Weld
448
end
449
450
----------------------------------------------------
451
452
local val = 0
453
local mas = 0
454
455
on = false
456
457
458
Surfaces = {"FrontSurface", "BackSurface", "TopSurface", "BottomSurface", "LeftSurface", "RightSurface"}
459
460
function Part(Parent, Anchor, Collide, Tran, Ref, Color, X, Y, Z, Break)
461
        local p = Instance.new("Part")
462
        p.formFactor = "Custom"
463
        p.Anchored = Anchor
464
        p.CanCollide = Collide
465
        p.Transparency = Tran
466
        p.Reflectance = Ref
467
        p.BrickColor = BrickColor.new(Color)
468
        for _, Surf in pairs(Surfaces) do
469
                p[Surf] = "Smooth"
470
        end
471
        p.Size = Vector3.new(X, Y, Z)
472
        if Break then
473
                p:BreakJoints()
474
        else p:MakeJoints() end
475
        p.Parent = Parent
476
        p.Locked = true
477
        return p
478
end
479
 
480
function StartEffect(part,sizeX,sizeY)
481
        effectOn = true
482
        local lastPoint = part.Position
483
        coroutine.resume(coroutine.create(function()
484
                while effectOn do
485
                        rs:wait()
486
                        local point = CFrame.new(lastPoint, part.Position) * CFrame.Angles(-math.pi/2, 0, 0)
487
                        local mag = (lastPoint - part.Position).magnitude
488
                        local p = Part(workspace, true, false, 0.1, 0, "Institutional white", 1, 1, 1, true)
489
                        p.Material = "Neon"
490
                        p.Size = Vector3.new(sizeX, mag+0.1, sizeY)
491
                        p.CFrame = point * CFrame.new(0, mag/6, 0)
492
                        lastPoint = part.Position
493
                        coroutine.resume(coroutine.create(function() for i = 0.1, 1, 0.9/5 do wait() p.Transparency = i end p:remove() end))
494
                end
495
        end))
496
end
497
 
498
function EndEffect()
499
        effectOn = false
500
end
501
502
stance = "Normal"
503
504
for i,v in pairs(char:GetChildren()) do
505
if v:IsA("Accoutrement") then
506
v.Handle.Transparency = 1
507
end
508
end
509
510
511
----------------------------------------------------
512
513
514-
w1.Part1 = sw
514+
515
NoSwordAnims = false
516-
w1.Parent = char
516+
517-
w1.C0 = CFrame.new(0,-2,0)
517+
518
while true do
519
wait()
520
if NoSwordAnims == false then
521
if stance == "Normal" then
522
w1.Part0 = lleg
523
w1.C0 = Lerp(w1.C0,CFrame.new(-0.5,0.5,0) * CFrame.Angles(math.rad(-155),math.pi,math.pi/2),0.3)
524
elseif stance == "Katana" then
525
w1.Part0 = larm
526
w1.C0 = Lerp(w1.C0,CFrame.new(0,-0.7,-2.3) * CFrame.Angles(math.rad(180),0,-20),0.1)
527
end
528
end
529
end
530
end)()
531
532
533
----------------------------------------------------
534
newWeld(torso, larm, -1.5, 0.5, 0)
535
larm.Weld.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0,0,0)
536
newWeld(torso, rarm, 1.5, 0.5, 0)
537
rarm.Weld.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0,0,0)
538
newWeld(torso, hed, 0, 1.5, 0)
539
newWeld(torso, lleg, -0.5, -1, 0)
540
lleg.Weld.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0,0,0)
541
newWeld(torso, rleg, 0.5, -1, 0)
542
rleg.Weld.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0,0,0)
543
newWeld(root, torso, 0, -1, 0)
544
torso.Weld.C1 = CFrame.new(0, -1, 0) * CFrame.Angles(0,0,0)
545
local Touche = {char.Name, }
546
----------------------------------------------------
547
548
attack = false
549
attackhit = false
550
attacknumber = 0
551
coroutine.wrap(function()
552
while true do
553
rs:wait()
554
if attacknumber >= 2 then
555
attacknumber = 0
556
end
557
end
558
end)()
559
cooldown = 0
560
stance = "Normal"
561
local attacking = false
562
NoAnims = false
563
564
local ammo = 300
565
local maxammo = 300
566
567
coroutine.wrap(function()
568
while wait() do
569
if ammo > maxammo then
570
ammo = maxammo
571
elseif ammo < maxammo then
572
ammo = ammo + 1
573
end
574
end
575
end)()
576
577
attacking = false
578
local hedattack2 = false
579
local hedattack = false
580
581
sw.Touched:connect(function(ht)
582
if hedattack == true then
583
    hit = ht.Parent
584
    if ht and hit:IsA("Model") then
585
            if hit:FindFirstChild("Humanoid") then
586
                if hit.Name ~= p.Name then
587
                                hit:FindFirstChild("Humanoid"):TakeDamage(math.random(hit.Humanoid.MaxHealth/2,hit.Humanoid.MaxHealth))
588
                                    z = Instance.new("Sound",hed)
589
                                    z.SoundId = "rbxassetid://592306650"
590
                                                                        z.Pitch = ptz[math.random(1,#ptz)]
591
                                    z.Volume = 1
592
                                    z:Play()
593
                                    hedattack2 = false
594
                                    hedattack = false
595
                                    decals = {263033191,189728908,178269340,181477718,498948943,485362831,360385366,144325140}
596
decals2 = {284846352,191089587}
597
598
                                    local e = Instance.new("Decal",sw)
599
                                    e.Texture = "rbxassetid://"..decals[math.random(1,#decals)]
600
                                    e.Face = "Left"
601
                                    
602
                                    local e2 = Instance.new("Decal",sw)
603
                                    e2.Texture = e.Texture
604
                                    e2.Face = "Right"
605
                end
606
            end
607
    elseif ht and hit:IsA("Hat") then
608
        if hit.Parent.Name ~= p.Name then
609
            if hit.Parent:FindFirstChild("Humanoid") then
610
                            hit.Parent:FindFirstChild("Humanoid"):TakeDamage(math.random(hit.Parent.Humanoid.MaxHealth/2,hit.Parent.Humanoid.MaxHealth))
611
                                    z = Instance.new("Sound",hed)
612
                                    z.SoundId = "rbxassetid://592306650"
613
                                    hedattack2 = false
614
                                    hedattack = false
615
                                                                        z.Pitch = ptz[math.random(1,#ptz)]
616
                                    z.Volume = 1
617
                                    z:Play()
618
                                    decals = {263033191,189728908,178269340,181477718,498948943,485362831,360385366,144325140}
619
decals2 = {284846352,191089587}
620
621
                                    local e = Instance.new("Decal",sw)
622
                                    e.Texture = "rbxassetid://"..decals[math.random(1,#decals)]
623
                                    e.Face = "Left"
624
                                    
625
                                    local e2 = Instance.new("Decal",sw)
626
                                    e2.Texture = e.Texture
627
                                    e2.Face = "Right"
628
            end
629
        end
630
    end
631
    end
632
end)
633
634
--------------------attacks------------------
635
636
mouse.KeyDown:connect(function(key)
637
if key == "x" then
638
if cooldown == 0 and attacking == false then
639
NoAnims = true
640
attacking = true
641
cooldown = 1
642
643
coroutine.wrap(function()
644
while true do
645
646
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6,0)*CFrame.Angles(math.rad(90),0,.005), 0.2)
647
648
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6,0)*CFrame.Angles(math.rad(90),0,-.005), 0.2)
649
650
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
651
652
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
653
654
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .4)
655
656
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .4)
657
658
if cooldown == 0 then break end
659
660
rs:wait()
661
end
662
end)()
663
664
end
665
end
666
end)
667
668
mouse.KeyUp:connect(function(key)
669
if key == "x" then
670
NoAnims = false
671
cooldown = 0
672
attacking = false
673
end
674
end)
675
676
677
function onclick(mouses)
678
if attacking == false and cooldown == 0 then
679
if stance == "Katana" then
680
attacking = true
681
cooldown = 1
682
NoAnims = true
683
684
StartEffect(sw,0.01,4)
685
686
for i = 1, 20 do
687
688
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.6,-0.8)*CFrame.Angles(math.rad(240),0,-math.pi/3), 0.2)
689
690
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.6,-0.4)*CFrame.Angles(math.rad(240),0,math.pi/6), 0.1)
691
692
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.1)
693
694
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.1)
695
696
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .1)
697
698
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .1)
699
end
700
701
StartEffect(sw,0.01,4)
702
hedattack = true
703
so("rbxassetid://553461718")
704
705
for i = 1, 3 do
706
707
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.3,-0.8)*CFrame.Angles(math.rad(20),0,-math.pi/3), 0.1)
708
709
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.3,-0.4)*CFrame.Angles(math.rad(20),0,math.pi/6), 0.1)
710
711
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
712
713
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.1)
714
715
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .1)
716
717
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .1)
718
719
rs:wait()
720
end
721
722
EndEffect()
723
NoAnims = false
724
cooldown = 0
725
attacking = false
726
hedattack = false
727
728
end
729
end
730
end
731
732
mouse.Button1Down:connect(onclick)
733
734
mouse.KeyDown:connect(function(key)
735
if key == "f" then
736
if attacking == false and cooldown == 0 then
737
if stance == "Normal" then
738
attacking = true
739
cooldown = 1
740
NoAnims = true
741
stance = "Katana"
742
743
StartEffect(sw,0.01,4)
744
745
for i = 1, 20 do
746
747
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.3,-0.8)*CFrame.Angles(math.rad(60),0,-math.pi/3), 0.2)
748
749
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.3,-0.4)*CFrame.Angles(math.rad(60),0,math.pi/6), 0.2)
750
751
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
752
753
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
754
755
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .4)
756
757
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .4)
758
end
759
760
so("rbxassetid://152052659")
761
762
for i = 1, 20 do
763
764
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.3,-0.8)*CFrame.Angles(math.rad(60),0,-math.pi/3), 0.2)
765
766
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.3,-0.4)*CFrame.Angles(math.rad(120),0,math.pi/6), 0.2)
767
768
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
769
770
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
771
772
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .4)
773
774
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .4)
775
776
rs:wait()
777
end
778
779
EndEffect()
780
NoAnims = false
781
cooldown = 0
782
attacking = false
783
elseif stance == "Katana" then
784
785
attacking = true
786
cooldown = 1
787
NoAnims = true
788
NoSwordAnims = true
789
stance = "Normal"
790
for i = 1, 20 do
791
end
792
793
NoSwordAnims = false
794
NoAnims = false
795
cooldown = 0
796
attacking = false
797
798
end
799
end
800
end
801
end)
802
803
804
-----------GUI creation--------------------
805
806
local pg = p.PlayerGui
807
808
local sg = Instance.new("ScreenGui",pg)
809
sg.Name = "rage"
810
811
local txt = Instance.new("TextLabel",sg)
812
txt.Position = UDim2.new(0.9, 0, 0.9, 0)
813
txt.BackgroundTransparency = 1
814
txt.FontSize = "Size24"
815
816
coroutine.wrap(function()
817
while true do
818
wait()
819
txt.TextColor3 = Color3.new(ammo,ammo,ammo)
820
end
821
end)()
822
823
coroutine.wrap(function()
824
while true do
825
wait()
826
txt.Text = ammo.."/"..maxammo
827
end
828
end)()
829
830
----------------------------------------------
831
-------------------------------
832
local animpose = "Idle"
833
local lastanimpose = "Idle"
834
local sine = 0
835
local change = 1
836
local val = 0
837
local ffing = false
838
local jump = false
839
-------------------------------
840
local x = Instance.new("Sound", char)
841
x.SoundId = "http://www.roblox.com/asset/?id=429617891"
842
x.Looped = true
843
x.Volume = 1
844
x.Pitch = 1
845
local footsteps = false
846
-------------------------------
847
game:GetService("RunService").RenderStepped:connect(function()
848
--[[if char.Humanoid.Jump == true then
849
jump = true
850
else
851
jump = false
852
end]]
853
char.Humanoid.FreeFalling:connect(function(f)
854
if f then
855
ffing = true
856
else
857
ffing = false
858
end
859
end)
860
sine = sine + change
861
if jump == true then
862
animpose = "Jumping"
863
elseif ffing == true then
864
animpose = "Freefalling"
865
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 2 then
866
animpose = "Idle"
867
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 20 then
868
animpose = "Walking"
869
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude > 20 then
870
animpose = "Running"
871
end
872
if animpose ~= lastanimpose then
873
sine = 0
874
if NoAnims == false then
875
if animpose == "Idle" then
876
for i = 1, 0.5 do
877
878
if NoAnims == false then
879
880
if stance == "Normal"  then
881
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),0,.05+ math.sin(sine/7)/14), 0.2)
882
883
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),0,-.05+ -math.sin(sine/7)/14), 0.2)
884
885
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
886
887
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
888
889
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05+ math.sin(sine/7)/30), .4)
890
891
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05+ -math.sin(sine/7)/30), .4)
892
893
elseif stance == "Katana" then
894
895
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),0,.05+ math.sin(sine/7)/14), 0.2)
896
897
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),math.pi,-.05+ -math.sin(sine/7)/14), 0.2)
898
899
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
900
901
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
902
903
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05+ math.sin(sine/7)/30), .4)
904
905
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05+ -math.sin(sine/7)/30), .4)
906
907
end
908
909
wait()
910
end
911
end
912
913
914
elseif animpose == "Running" then
915
change = 1
916
if NoAnims == false then
917
918
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 * sizem,.3 * sizem,.1 * sizem)*CFrame.Angles(math.rad(-30),0,0), 0.2)
919
920
larm.Weld.C0 =Lerp(larm.Weld.C0, CFrame.new(-1.5 * sizem,.3 * sizem,.1 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
921
922
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5 * sizem,0)*CFrame.Angles(math.rad(0),0,0),0.2)
923
924
torso.Weld.C0 =Lerp(torso.Weld.C0, CFrame.new(0,1,0)*CFrame.Angles(math.rad(-30),0,0),0.2)
925
926
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-.5 * sizem - .2,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
927
928
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
929
930
931
932
end
933
934
elseif animpose == "Walking" then
935
for i = 1, 1.5 do
936
if NoAnims == false then
937
938
if stance == "Normal" then
939
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2,0,.2+ -math.sin(sine/7)/9), 0.2)
940
941
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + math.sin(sine/5)/2,0,-.2+ math.sin(sine/7)/9), 0.2)
942
943
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
944
945
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
946
947
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + math.sin(sine/5)/2, 0, 0+ math.sin(sine/7)/30), .4)
948
949
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2, 0, 0+ -math.sin(sine/7)/30), .4)
950
end
951
952
elseif stance == "Katana" then
953
954
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2,0,.2+ -math.sin(sine/7)/9), 0.2)
955
956
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + math.sin(sine/5)/2,0,-.2+ math.sin(sine/7)/9), 0.2)
957
958
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
959
960
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
961
962
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + math.sin(sine/5)/2, 0, 0+ math.sin(sine/7)/30), .4)
963
964
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2, 0, 0+ -math.sin(sine/7)/30), .4)
965
966
wait()
967
end
968
end
969
end
970
else
971
end
972
end
973
lastanimpose = animpose
974
if animpose == "Idle" then
975
change = 0.5
976
if NoAnims == false then
977
978
if stance == "Normal"  then
979
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),0,.05+ math.sin(sine/7)/14), 0.2)
980
981
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0),0,-.05+ -math.sin(sine/7)/14), 0.2)
982
983
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
984
985
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
986
987
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05+ math.sin(sine/7)/30), .4)
988
989
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05+ -math.sin(sine/7)/30), .4)
990
991
elseif stance == "Katana" then
992
993
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.3+ -math.sin(sine/14)/15,-0.8)*CFrame.Angles(math.rad(60),0,-math.pi/3+ math.sin(sine/7)/25), 0.2)
994
995
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.3+ -math.sin(sine/14)/15,-0.4)*CFrame.Angles(math.rad(60),0,math.pi/6+ -math.sin(sine/7)/25), 0.2)
996
997
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
998
999
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1000
1001
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05+ math.sin(sine/7)/30), .4)
1002
1003
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05+ -math.sin(sine/7)/30), .4)
1004
1005
end
1006
end
1007
1008
1009
elseif animpose == "Running" then
1010
change = 1
1011
if NoAnims == false then
1012
1013
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 * sizem,.3 * sizem,.1 * sizem)*CFrame.Angles(math.rad(-30),0,0), 0.2)
1014
1015
larm.Weld.C0 =Lerp(larm.Weld.C0, CFrame.new(-1.5 * sizem,.3 * sizem,.1 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1016
1017
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5 * sizem,0)*CFrame.Angles(math.rad(0),0,0),0.2)
1018
1019
torso.Weld.C0 =Lerp(torso.Weld.C0, CFrame.new(0,1,0)*CFrame.Angles(math.rad(-30),0,0),0.2)
1020
1021
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1022
1023
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1024
1025
end
1026
1027
elseif animpose == "Walking" then
1028
change = 1
1029
1030
    
1031
if NoAnims == false then
1032
1033
if stance == "Normal" then
1034
1035
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2,0,.2+ -math.sin(sine/7)/9), 0.2)
1036
1037
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6+ -math.sin(sine/14)/30,0)*CFrame.Angles(math.rad(0) + math.sin(sine/5)/2,0,-.2+ math.sin(sine/7)/9), 0.2)
1038
1039
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
1040
1041
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1042
1043
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + math.sin(sine/5)/2, 0, 0+ math.sin(sine/7)/30), .4)
1044
1045
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2, 0, 0+ -math.sin(sine/7)/30), .4)
1046
1047
elseif stance == "Katana" then
1048
1049
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(0.5 ,0.3+ -math.sin(sine/14)/15,-0.8)*CFrame.Angles(math.rad(60),0,-math.pi/3+ math.sin(sine/7)/25), 0.2)
1050
1051
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1,0.3+ -math.sin(sine/14)/15,-0.4)*CFrame.Angles(math.rad(60),0,math.pi/6+ -math.sin(sine/7)/25), 0.2)
1052
1053
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5,0)*CFrame.Angles(math.rad(0), math.rad(0), math.rad(0)),0.2)
1054
1055
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1056
1057
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + math.sin(sine/5)/2, 0, 0+ math.sin(sine/7)/30), .4)
1058
1059
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1 - 0.3*math.cos(sine/7)/6, 0) * CFrame.Angles(math.rad(0) + -math.sin(sine/5)/2, 0, 0+ -math.sin(sine/7)/30), .4)
1060
1061
end
1062
1063
end
1064
end
1065
if animpose == "Walking" then
1066
    if footsteps == false then
1067
        x:Play()
1068
        x.Pitch = ptz[math.random(1,#ptz)]
1069
        footsteps = true
1070
    end
1071
    x.Pitch = 1.1
1072
elseif animpose == "Idle" then
1073
    x:Stop()
1074
    footsteps = false
1075
end
1076
end)