View difference between Paste ID: 0RRPtCYX and x4RL2wxj
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
515
516-
char2.Humanoid.MaxHealth = 350
516+
517
w2.Part1 = sw2
518
w2.Part0 = hed2
519
w2.Parent = char2
520
w2.C0 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0),math.pi,0)
521
pcall(function()
522
sc2 = game:GetService("Players"):FindFirstChild(v.Name).PlayerGui
523
local sc = Instance.new("ScreenGui",sc2)
524
sc.Name = "kek"
525
526
local f = Instance.new("TextLabel",sc)
527
f.Size = UDim2.new(1, 0, 0.25, 0)
528
f.Position = UDim2.new(-1.5, 0, 0.5, 0)
529
530
coroutine.wrap(function()
531
for i = 1, 20 do
532
f.Position = f.Position + UDim2.new(1.5/20, 0, 0, 0)
533
wait()
534
end
535
end)()
536
end)
537
538
sc3 =p.PlayerGui
539
local sc4 = Instance.new("ScreenGui",sc3)
540
sc4.Name = "kek"
541
542
local f2 = Instance.new("TextLabel",sc4)
543
f2.Size = UDim2.new(1, 0, 0.25, 0)
544
f2.Position = UDim2.new(-1.5, 0, 0.5, 0)
545
546
coroutine.wrap(function()
547
for i = 1, 20 do
548
f2.Position = f2.Position + UDim2.new(1.5/20, 0, 0, 0)
549
wait()
550
end
551
end)()
552
553
f2.FontSize = "Size32"
554
f2.Text = "Congrats! You're now the psycopatch stalker that stalks "..char2.Name.."!"
555
f2.TextColor3 = Color3.new(1,1,1)
556
f2.BackgroundTransparency = 0.3
557
558
coroutine.wrap(function()
559
wait(2.5)
560
for i = 1, 20 do
561
f2.Position = f2.Position - UDim2.new(1.5/20, 0, 0, 0)
562
wait()
563
end
564
f2:Destroy()
565
end)()
566
567
568
pcall(function()
569
f.FontSize = "Size32"
570
f.Text = "Congrats! You're now the boyfriend of a psycopatch stalker!"
571
f.TextColor3 = Color3.new(1,1,1)
572
f.BackgroundTransparency = 0.3
573
574
coroutine.wrap(function()
575
wait(2.5)
576
for i = 1, 20 do
577
f.Position = f.Position - UDim2.new(1.5/20, 0, 0, 0)
578
wait()
579
end
580
f:Destroy()
581
end)()
582
end)
583
584
585
----------------------------------------------------------------
586
587
local sw2 = Instance.new("Part",hed)
588
sw2.CanCollide = false
589
sw2.BrickColor = BrickColor.new("Hot pink")
590
591
local m2 = Instance.new("SpecialMesh",sw2)
592
m2.MeshId = "rbxassetid://430440803"
593
m2.Scale = Vector3.new(0.006,0.006,0.006)
594
local w2 = Instance.new("Weld")
595
596
w2.Part1 = sw2
597
w2.Part0 = hed
598
w2.Parent = char
599
w2.C0 = CFrame.new(0,-0.9,0)*CFrame.Angles(math.rad(0),math.pi/2,0)
600
601
local sw = Instance.new("Part",torso)
602
sw.CanCollide = false
603
sw.BrickColor = BrickColor.new("Institutional white")
604
605
local m = Instance.new("SpecialMesh",sw)
606
m.MeshId = "rbxassetid://11442510"
607
m.TextureId = "rbxassetid://11442524"
608
m.Scale = Vector3.new(2.1,2.1,2.1)
609
local w1 = Instance.new("Weld")
610
611
w1.Part1 = sw
612
w1.Part0 = lleg
613
w1.Parent = char
614
w1.C0 = CFrame.new(0,-2,0)
615
616
NoSwordAnims = false
617
618
coroutine.wrap(function()
619
while true do
620
wait()
621
if NoSwordAnims == false then
622
if stance == "Normal" then
623
w1.Part0 = lleg
624
w1.C0 = Lerp(w1.C0,CFrame.new(-0.5,0.5,0) * CFrame.Angles(math.rad(-155),math.pi,math.pi/2),0.3)
625
elseif stance == "Katana" then
626
w1.Part0 = larm
627
w1.C0 = Lerp(w1.C0,CFrame.new(0,-0.7,-2.3) * CFrame.Angles(math.rad(180),0,-20),0.1)
628
end
629
end
630
end
631
end)()
632
633
634
----------------------------------------------------
635
newWeld(torso, larm, -1.5, 0.5, 0)
636
larm.Weld.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0,0,0)
637
newWeld(torso, rarm, 1.5, 0.5, 0)
638
rarm.Weld.C1 = CFrame.new(0, 0.5, 0) * CFrame.Angles(0,0,0)
639
newWeld(torso, hed, 0, 1.5, 0)
640
newWeld(torso, lleg, -0.5, -1, 0)
641
lleg.Weld.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0,0,0)
642
newWeld(torso, rleg, 0.5, -1, 0)
643
rleg.Weld.C1 = CFrame.new(0, 1, 0) * CFrame.Angles(0,0,0)
644
newWeld(root, torso, 0, -1, 0)
645
torso.Weld.C1 = CFrame.new(0, -1, 0) * CFrame.Angles(0,0,0)
646
local Touche = {char.Name, }
647
----------------------------------------------------
648
649
attack = false
650
attackhit = false
651
attacknumber = 0
652
coroutine.wrap(function()
653
while true do
654
rs:wait()
655
if attacknumber >= 2 then
656
attacknumber = 0
657
end
658
end
659
end)()
660
cooldown = 0
661
stance = "Normal"
662
local attacking = false
663
NoAnims = false
664
665
local ammo = 300
666
local maxammo = 300
667
668
coroutine.wrap(function()
669
while wait() do
670
if ammo > maxammo then
671
ammo = maxammo
672
elseif ammo < maxammo then
673
ammo = ammo + 1
674
end
675
end
676
end)()
677
678
attacking = false
679
local hedattack2 = false
680
local hedattack = false
681
682
sw.Touched:connect(function(ht)
683
if hedattack == true then
684
    hit = ht.Parent
685
    if ht and hit:IsA("Model") then
686
            if hit:FindFirstChild("Humanoid") then
687
                if hit.Name ~= p.Name then
688
                                hit:FindFirstChild("Humanoid"):TakeDamage(math.random(hit.Humanoid.MaxHealth/2,hit.Humanoid.MaxHealth))
689
                                    z = Instance.new("Sound",hed)
690
                                    z.SoundId = "rbxassetid://592306650"
691
                                                                        z.Pitch = ptz[math.random(1,#ptz)]
692
                                    z.Volume = 1
693
                                    z:Play()
694
                                    hedattack2 = false
695
                                    hedattack = false
696
                                    decals = {263033191,189728908,178269340,181477718,498948943,485362831,360385366,144325140}
697
decals2 = {284846352,191089587}
698
699
                                    local e = Instance.new("Decal",sw)
700
                                    e.Texture = "rbxassetid://"..decals[math.random(1,#decals)]
701
                                    e.Face = "Left"
702
                                    
703
                                    local e2 = Instance.new("Decal",sw)
704
                                    e2.Texture = e.Texture
705
                                    e2.Face = "Right"
706
                end
707
            end
708
    elseif ht and hit:IsA("Hat") then
709
        if hit.Parent.Name ~= p.Name then
710
            if hit.Parent:FindFirstChild("Humanoid") then
711
                            hit.Parent:FindFirstChild("Humanoid"):TakeDamage(math.random(hit.Parent.Humanoid.MaxHealth/2,hit.Parent.Humanoid.MaxHealth))
712
                                    z = Instance.new("Sound",hed)
713
                                    z.SoundId = "rbxassetid://592306650"
714
                                    hedattack2 = false
715
                                    hedattack = false
716
                                                                        z.Pitch = ptz[math.random(1,#ptz)]
717
                                    z.Volume = 1
718
                                    z:Play()
719
                                    decals = {263033191,189728908,178269340,181477718,498948943,485362831,360385366,144325140}
720
decals2 = {284846352,191089587}
721
722
                                    local e = Instance.new("Decal",sw)
723
                                    e.Texture = "rbxassetid://"..decals[math.random(1,#decals)]
724
                                    e.Face = "Left"
725
                                    
726
                                    local e2 = Instance.new("Decal",sw)
727
                                    e2.Texture = e.Texture
728
                                    e2.Face = "Right"
729
            end
730
        end
731
    end
732
    end
733
end)
734
735
--------------------attacks------------------
736
737
mouse.KeyDown:connect(function(key)
738
if key == "x" then
739
if cooldown == 0 and attacking == false then
740
NoAnims = true
741
attacking = true
742
cooldown = 1
743
744
coroutine.wrap(function()
745
while true do
746
747
rarm.Weld.C0 = Lerp(rarm.Weld.C0, CFrame.new(1.5 ,0.6,0)*CFrame.Angles(math.rad(90),0,.005), 0.2)
748
749
larm.Weld.C0 = Lerp(larm.Weld.C0, CFrame.new(-1.5,0.6,0)*CFrame.Angles(math.rad(90),0,-.005), 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
759
if cooldown == 0 then break end
760
761
rs:wait()
762
end
763
end)()
764
765
end
766
end
767
end)
768
769
mouse.KeyUp:connect(function(key)
770
if key == "x" then
771
NoAnims = false
772
cooldown = 0
773
attacking = false
774
end
775
end)
776
777
778
function onclick(mouses)
779
if attacking == false and cooldown == 0 then
780
if stance == "Katana" then
781
attacking = true
782
cooldown = 1
783
NoAnims = true
784
785
StartEffect(sw,0.01,4)
786
787
for i = 1, 20 do
788
789
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)
790
791
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)
792
793
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)
794
795
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.1)
796
797
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .1)
798
799
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .1)
800
end
801
802
StartEffect(sw,0.01,4)
803
hedattack = true
804
so("rbxassetid://553461718")
805
806
for i = 1, 3 do
807
808
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)
809
810
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)
811
812
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)
813
814
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.1)
815
816
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .1)
817
818
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .1)
819
820
rs:wait()
821
end
822
823
EndEffect()
824
NoAnims = false
825
cooldown = 0
826
attacking = false
827
hedattack = false
828
829
end
830
end
831
end
832
833
mouse.Button1Down:connect(onclick)
834
835
mouse.KeyDown:connect(function(key)
836
if key == "f" then
837
if attacking == false and cooldown == 0 then
838
if stance == "Normal" then
839
attacking = true
840
cooldown = 1
841
NoAnims = true
842
stance = "Katana"
843
844
StartEffect(sw,0.01,4)
845
846
for i = 1, 20 do
847
848
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)
849
850
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)
851
852
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)
853
854
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
855
856
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .4)
857
858
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .4)
859
end
860
861
so("rbxassetid://152052659")
862
863
for i = 1, 20 do
864
865
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)
866
867
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)
868
869
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)
870
871
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
872
873
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, -0.05), .4)
874
875
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(0.5, -1, 0) * CFrame.Angles(math.rad(0), 0, 0.05), .4)
876
877
rs:wait()
878
end
879
880
EndEffect()
881
NoAnims = false
882
cooldown = 0
883
attacking = false
884
elseif stance == "Katana" then
885
886
attacking = true
887
cooldown = 1
888
NoAnims = true
889
NoSwordAnims = true
890
stance = "Normal"
891
for i = 1, 20 do
892
end
893
894
NoSwordAnims = false
895
NoAnims = false
896
cooldown = 0
897
attacking = false
898
899
end
900
end
901
end
902
end)
903
904
905
-----------GUI creation--------------------
906
907
local pg = p.PlayerGui
908
909
local sg = Instance.new("ScreenGui",pg)
910
sg.Name = "rage"
911
912
local txt = Instance.new("TextLabel",sg)
913
txt.Position = UDim2.new(0.9, 0, 0.9, 0)
914
txt.BackgroundTransparency = 1
915
txt.FontSize = "Size24"
916
917
coroutine.wrap(function()
918
while true do
919
wait()
920
txt.TextColor3 = Color3.new(ammo,ammo,ammo)
921
end
922
end)()
923
924
coroutine.wrap(function()
925
while true do
926
wait()
927
txt.Text = ammo.."/"..maxammo
928
end
929
end)()
930
931
----------------------------------------------
932
-------------------------------
933
local animpose = "Idle"
934
local lastanimpose = "Idle"
935
local sine = 0
936
local change = 1
937
local val = 0
938
local ffing = false
939
local jump = false
940
-------------------------------
941
local x = Instance.new("Sound", char)
942
x.SoundId = "http://www.roblox.com/asset/?id=429617891"
943
x.Looped = true
944
x.Volume = 1
945
x.Pitch = 1
946
local footsteps = false
947
-------------------------------
948
game:GetService("RunService").RenderStepped:connect(function()
949
--[[if char.Humanoid.Jump == true then
950
jump = true
951
else
952
jump = false
953
end]]
954
char.Humanoid.FreeFalling:connect(function(f)
955
if f then
956
ffing = true
957
else
958
ffing = false
959
end
960
end)
961
sine = sine + change
962
if jump == true then
963
animpose = "Jumping"
964
elseif ffing == true then
965
animpose = "Freefalling"
966
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 2 then
967
animpose = "Idle"
968
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude < 20 then
969
animpose = "Walking"
970
elseif (torso.Velocity*Vector3.new(1, 0, 1)).magnitude > 20 then
971
animpose = "Running"
972
end
973
if animpose ~= lastanimpose then
974
sine = 0
975
if NoAnims == false then
976
if animpose == "Idle" then
977
for i = 1, 0.5 do
978
979
if NoAnims == false then
980
981
if stance == "Normal"  then
982
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)
983
984
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)
985
986
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)
987
988
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
989
990
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)
991
992
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)
993
994
elseif stance == "Katana" then
995
996
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)
997
998
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)
999
1000
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)
1001
1002
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1003
1004
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)
1005
1006
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)
1007
1008
end
1009
1010
wait()
1011
end
1012
end
1013
1014
1015
elseif animpose == "Running" then
1016
change = 1
1017
if NoAnims == false then
1018
1019
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)
1020
1021
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)
1022
1023
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5 * sizem,0)*CFrame.Angles(math.rad(0),0,0),0.2)
1024
1025
torso.Weld.C0 =Lerp(torso.Weld.C0, CFrame.new(0,1,0)*CFrame.Angles(math.rad(-30),0,0),0.2)
1026
1027
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)
1028
1029
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1030
1031
1032
1033
end
1034
1035
elseif animpose == "Walking" then
1036
for i = 1, 1.5 do
1037
if NoAnims == false then
1038
1039
if stance == "Normal" then
1040
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)
1041
1042
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)
1043
1044
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)
1045
1046
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1047
1048
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)
1049
1050
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)
1051
end
1052
1053
elseif stance == "Katana" then
1054
1055
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)
1056
1057
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)
1058
1059
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)
1060
1061
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1062
1063
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)
1064
1065
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)
1066
1067
wait()
1068
end
1069
end
1070
end
1071
else
1072
end
1073
end
1074
lastanimpose = animpose
1075
if animpose == "Idle" then
1076
change = 0.5
1077
if NoAnims == false then
1078
1079
if stance == "Normal"  then
1080
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)
1081
1082
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)
1083
1084
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)
1085
1086
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1087
1088
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)
1089
1090
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)
1091
1092
elseif stance == "Katana" then
1093
1094
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)
1095
1096
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)
1097
1098
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)
1099
1100
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1101
1102
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)
1103
1104
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)
1105
1106
end
1107
end
1108
1109
1110
elseif animpose == "Running" then
1111
change = 1
1112
if NoAnims == false then
1113
1114
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)
1115
1116
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)
1117
1118
hed.Weld.C0 = Lerp(hed.Weld.C0, CFrame.new(0,1.5 * sizem,0)*CFrame.Angles(math.rad(0),0,0),0.2)
1119
1120
torso.Weld.C0 =Lerp(torso.Weld.C0, CFrame.new(0,1,0)*CFrame.Angles(math.rad(-30),0,0),0.2)
1121
1122
lleg.Weld.C0 = Lerp(lleg.Weld.C0, CFrame.new(-.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1123
1124
rleg.Weld.C0 = Lerp(rleg.Weld.C0, CFrame.new(.5 * sizem,-1 * sizem,0 * sizem)*CFrame.Angles(math.rad(-30),0,0),0.2)
1125
1126
end
1127
1128
elseif animpose == "Walking" then
1129
change = 1
1130
1131
    
1132
if NoAnims == false then
1133
1134
if stance == "Normal" then
1135
1136
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)
1137
1138
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)
1139
1140
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)
1141
1142
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1143
1144
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)
1145
1146
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)
1147
1148
elseif stance == "Katana" then
1149
1150
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)
1151
1152
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)
1153
1154
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)
1155
1156
torso.Weld.C0 = Lerp(torso.Weld.C0, CFrame.new(0, -1 , 0) * CFrame.Angles(math.rad(0), 0, math.rad(0)), 0.2)
1157
1158
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)
1159
1160
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)
1161
1162
end
1163
1164
end
1165
end
1166
if animpose == "Walking" then
1167
    if footsteps == false then
1168
        x:Play()
1169
        x.Pitch = ptz[math.random(1,#ptz)]
1170
        footsteps = true
1171
    end
1172
    x.Pitch = 1.1
1173
elseif animpose == "Idle" then
1174
    x:Stop()
1175
    footsteps = false
1176
end
1177
end)