SHOW:
|
|
- or go back to the newest paste.
1 | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end | |
2 | local Player,game,owner = owner,game | |
3 | local RealPlayer = Player | |
4 | do | |
5 | print("FE Compatibility code by Mokiros") | |
6 | local rp = RealPlayer | |
7 | script.Parent = rp.Character | |
8 | ||
9 | --RemoteEvent for communicating | |
10 | local Event = Instance.new("RemoteEvent") | |
11 | Event.Name = "UserInput_Event" | |
12 | ||
13 | --Fake event to make stuff like Mouse.KeyDown work | |
14 | local function fakeEvent() | |
15 | local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end} | |
16 | t.connect = t.Connect | |
17 | return t | |
18 | end | |
19 | ||
20 | --Creating fake input objects with fake variables | |
21 | local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()} | |
22 | local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} | |
23 | local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) | |
24 | CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil | |
25 | end} | |
26 | --Merged 2 functions into one by checking amount of arguments | |
27 | CAS.UnbindAction = CAS.BindAction | |
28 | ||
29 | --This function will trigger the events that have been :Connect()'ed | |
30 | local function te(self,ev,...) | |
31 | local t = m[ev] | |
32 | if t and t._fakeEvent then | |
33 | for _,f in pairs(t.Functions) do | |
34 | f(...) | |
35 | end | |
36 | end | |
37 | end | |
38 | m.TrigEvent = te | |
39 | UIS.TrigEvent = te | |
40 | ||
41 | Event.OnServerEvent:Connect(function(plr,io) | |
42 | if plr~=rp then return end | |
43 | m.Target = io.Target | |
44 | m.Hit = io.Hit | |
45 | if not io.isMouse then | |
46 | local b = io.UserInputState == Enum.UserInputState.Begin | |
47 | if io.UserInputType == Enum.UserInputType.MouseButton1 then | |
48 | return m:TrigEvent(b and "Button1Down" or "Button1Up") | |
49 | end | |
50 | for _,t in pairs(CAS.Actions) do | |
51 | for _,k in pairs(t.Keys) do | |
52 | if k==io.KeyCode then | |
53 | t.Function(t.Name,io.UserInputState,io) | |
54 | end | |
55 | end | |
56 | end | |
57 | m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) | |
58 | UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false) | |
59 | end | |
60 | end) | |
61 | Event.Parent = NLS([==[ | |
62 | local Player = game:GetService("Players").LocalPlayer | |
63 | local Event = script:WaitForChild("UserInput_Event") | |
64 | ||
65 | local Mouse = Player:GetMouse() | |
66 | local UIS = game:GetService("UserInputService") | |
67 | local input = function(io,a) | |
68 | if a then return end | |
69 | --Since InputObject is a client-side instance, we create and pass table instead | |
70 | Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) | |
71 | end | |
72 | UIS.InputBegan:Connect(input) | |
73 | UIS.InputEnded:Connect(input) | |
74 | ||
75 | local h,t | |
76 | --Give the server mouse data 30 times every second, but only if the values changed | |
77 | --If player is not moving their mouse, client won't fire events | |
78 | while wait(1/30) do | |
79 | if h~=Mouse.Hit or t~=Mouse.Target then | |
80 | h,t=Mouse.Hit,Mouse.Target | |
81 | Event:FireServer({isMouse=true,Target=t,Hit=h}) | |
82 | end | |
83 | end]==],Player.Character) | |
84 | ||
85 | ----Sandboxed game object that allows the usage of client-side methods and services | |
86 | --Real game object | |
87 | local _rg = game | |
88 | ||
89 | --Metatable for fake service | |
90 | local fsmt = { | |
91 | __index = function(self,k) | |
92 | local s = rawget(self,"_RealService") | |
93 | if s then return s[k] end | |
94 | end, | |
95 | __newindex = function(self,k,v) | |
96 | local s = rawget(self,"_RealService") | |
97 | if s then s[k]=v end | |
98 | end, | |
99 | __call = function(self,...) | |
100 | local s = rawget(self,"_RealService") | |
101 | if s then return s(...) end | |
102 | end | |
103 | } | |
104 | local function FakeService(t,RealService) | |
105 | t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService | |
106 | return setmetatable(t,fsmt) | |
107 | end | |
108 | ||
109 | --Fake game object | |
110 | local g = { | |
111 | GetService = function(self,s) | |
112 | return self[s] | |
113 | end, | |
114 | Players = FakeService({ | |
115 | LocalPlayer = FakeService({GetMouse=function(self)return m end},Player) | |
116 | },"Players"), | |
117 | UserInputService = FakeService(UIS,"UserInputService"), | |
118 | ContextActionService = FakeService(CAS,"ContextActionService"), | |
119 | } | |
120 | rawset(g.Players,"localPlayer",g.Players.LocalPlayer) | |
121 | g.service = g.GetService | |
122 | ||
123 | g.RunService = FakeService({ | |
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 | setmetatable(g,{ | |
134 | __index=function(self,s) | |
135 | return _rg:GetService(s) or typeof(_rg[s])=="function" | |
136 | and function(_,...)return _rg[s](_rg,...)end or _rg[s] | |
137 | end, | |
138 | __newindex = fsmt.__newindex, | |
139 | __call = fsmt.__call | |
140 | }) | |
141 | --Changing owner to fake player object to support owner:GetMouse() | |
142 | game,owner = g,g.Players.LocalPlayer | |
143 | end | |
144 | plr = game.Players.LocalPlayer | |
145 | repeat wait() until plr.Character | |
146 | char = plr.Character | |
147 | ||
148 | local music = Instance.new("Sound",char) | |
149 | music.Looped = true | |
150 | music.Volume = 4 | |
151 | music.SoundId = "rbxassetid://182755167" | |
152 | music:Play() | |
153 | ||
154 | local player = game.Players.LocalPlayer | |
155 | ||
156 | ||
157 | local chara = player.Character | |
158 | local human = chara.Humanoid | |
159 | local neck = Instance.new("Weld",char) | |
160 | neck.Part0 = char.Torso | |
161 | neck.Part1 = char.Head | |
162 | neck.C0 = CFrame.new(0, 1.5, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
163 | local human2 = Instance.new("Weld",char) | |
164 | human2.Part0 = char.HumanoidRootPart | |
165 | human2.Part1 = char.Torso | |
166 | human2co = CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
167 | necc = CFrame.new(0, 1.5, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) | |
168 | local rhandclone = game.Players.LocalPlayer.Character.Torso["Right Shoulder"]:Clone() | |
169 | local rhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso) | |
170 | rhandweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
171 | rhandweld.Part1 = game.Players.LocalPlayer.Character["Right Arm"] | |
172 | rhandweld.C0 = CFrame.new(1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1) | |
173 | local lhandclone = game.Players.LocalPlayer.Character.Torso["Left Shoulder"]:Clone() | |
174 | local lhandweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso) | |
175 | lhandweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
176 | lhandweld.Part1 = game.Players.LocalPlayer.Character["Left Arm"] | |
177 | lhandweld.C0 = CFrame.new(-1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1) | |
178 | local llegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso) | |
179 | llegweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
180 | llegweld.Part1 = game.Players.LocalPlayer.Character["Left Leg"] | |
181 | llegweld.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) * CFrame.new(0,-1,0) | |
182 | local rlegclone = game.Players.LocalPlayer.Character.Torso["Right Hip"]:Clone() | |
183 | game.Players.LocalPlayer.Character.Torso["Right Hip"]:Remove() | |
184 | local rlegweld = Instance.new("Weld", game.Players.LocalPlayer.Character.Torso) | |
185 | rlegweld.Part0 = game.Players.LocalPlayer.Character.Torso | |
186 | rlegweld.Part1 = game.Players.LocalPlayer.Character["Right Leg"] | |
187 | rlegweld.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) * CFrame.new(0,-1,0) | |
188 | ||
189 | ||
190 | ||
191 | effect = Instance.new("Model",char) | |
192 | ||
193 | for i,v in pairs(char:GetChildren()) do | |
194 | if v.ClassName == "Part" and v.Name ~= "HumanoidRootPart" then | |
195 | local cp = v:Clone() | |
196 | cp.Parent = effect | |
197 | cp.BrickColor = BrickColor.new("New Yeller") | |
198 | cp.Transparency = 0.7 | |
199 | cp.CanCollide = false | |
200 | cp.Material = Enum.Material.Neon | |
201 | cp.Name = "Forcefield" .. v.Name | |
202 | if cp.Name == "ForcefieldHead" then | |
203 | cp.face:Destroy() | |
204 | end | |
205 | if v ~= char.Head then | |
206 | cp.Size = v.Size+(Vector3.new(1,1,1)*0.2) | |
207 | else | |
208 | cp.Size = (Vector3.new(1,1,1)*v.Size.Y)+(Vector3.new(1,1,1)*0.2) | |
209 | end | |
210 | local weld = Instance.new("Weld",cp) | |
211 | weld.Part0 = v | |
212 | weld.Part1 = cp | |
213 | end | |
214 | end | |
215 | ||
216 | ||
217 | ||
218 | function remakemusic(PARENT, VOLUME, LOOPED) | |
219 | local music = music:Clone() | |
220 | music.Parent = PARENT | |
221 | music.Volume = VOLUME | |
222 | music.Looped = LOOPED | |
223 | music:Resume() | |
224 | end | |
225 | ||
226 | coroutine.wrap(function() | |
227 | while true do | |
228 | wait() | |
229 | if char:FindFirstChildOfClass("Sound") == nil then | |
230 | remakemusic(char, 4, true) | |
231 | end | |
232 | end | |
233 | end)() | |
234 | ||
235 | S = Instance.new("Sound") | |
236 | ||
237 | function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP) | |
238 | local NEWSOUND = nil | |
239 | coroutine.resume(coroutine.create(function() | |
240 | NEWSOUND = S:Clone() | |
241 | NEWSOUND.Parent = PARENT | |
242 | NEWSOUND.Volume = VOLUME | |
243 | NEWSOUND.Pitch = PITCH | |
244 | NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID | |
245 | NEWSOUND:play() | |
246 | NEWSOUND.Name = "Audio" | |
247 | if DOESLOOP == true then | |
248 | NEWSOUND.Looped = true | |
249 | else | |
250 | repeat wait() until NEWSOUND.Playing == false | |
251 | NEWSOUND:remove() | |
252 | end | |
253 | end)) | |
254 | return NEWSOUND | |
255 | end | |
256 | function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR) | |
257 | local NEWPART = Instance.new("Part") | |
258 | NEWPART.formFactor = FORMFACTOR | |
259 | NEWPART.Reflectance = REFLECTANCE | |
260 | NEWPART.Transparency = TRANSPARENCY | |
261 | NEWPART.CanCollide = false | |
262 | NEWPART.Locked = true | |
263 | NEWPART.Anchored = true | |
264 | if ANCHOR == false then | |
265 | NEWPART.Anchored = false | |
266 | end | |
267 | NEWPART.BrickColor = BrickColor.new(tostring(BRICKCOLOR)) | |
268 | NEWPART.Name = NAME | |
269 | NEWPART.Size = SIZE | |
270 | NEWPART.Position = char.HumanoidRootPart.Position | |
271 | NEWPART.Material = MATERIAL | |
272 | NEWPART:BreakJoints() | |
273 | NEWPART.Parent = PARENT | |
274 | return NEWPART | |
275 | end | |
276 | MRANDOM = math.random | |
277 | VT = Vector3.new | |
278 | Effect = Instance.new("Model",char) | |
279 | CF = CFrame.new | |
280 | ||
281 | function Shatter(Part) | |
282 | if Part.Transparency == 0 then | |
283 | local SOUNDPART = CreatePart(3, char, "Neon", 0, 1, Part.BrickColor, "OOF", VT(0,0,0)) | |
284 | game:GetService("Debris"):AddItem(SOUNDPART,5) | |
285 | local SIZE = Part.Size.X + Part.Size.Y + Part.Size.Z | |
286 | local SIZESET = SIZE/4 | |
287 | local XOffset = Part.Size.X*1.5/SIZESET | |
288 | local YOffset = Part.Size.Y*1.5/SIZESET | |
289 | local ZOffset = Part.Size.Z*1.5/SIZESET | |
290 | for x = 1, math.ceil(XOffset) do | |
291 | for y = 1, math.ceil(YOffset) do | |
292 | for z = 1, math.ceil(ZOffset) do | |
293 | local SHARD = CreatePart(3, Effect, "Neon", 0, 0, Part.BrickColor, "Shard", VT(SIZE,SIZE,SIZE)/10, false) | |
294 | SHARD.CanCollide = true | |
295 | SHARD.CFrame = Part.CFrame*CF((Part.Size.X/2-x/4),(Part.Size.Y/2-y/4),(Part.Size.Z/2-z/4)) | |
296 | SHARD.Velocity = VT(MRANDOM(-15,15),MRANDOM(-15,15),MRANDOM(-15,15))*3 | |
297 | game:GetService("Debris"):AddItem(SHARD,MRANDOM(10,25)/3) | |
298 | end | |
299 | end | |
300 | end | |
301 | end | |
302 | Part:remove() | |
303 | end | |
304 | ||
305 | char.Torso.Touched:connect(function(part) | |
306 | local human = part.Parent:FindFirstChildOfClass("Humanoid") | |
307 | if human and human.Parent.Name ~= char.Name then | |
308 | for i,v in pairs(human.Parent:GetChildren()) do | |
309 | if v.ClassName == "Part" or v.ClassName == "MeshPart" then | |
310 | Shatter(v) | |
311 | end | |
312 | end | |
313 | end | |
314 | end) | |
315 | pose = "Standing" | |
316 | ||
317 | ||
318 | cananimate = true | |
319 | abletolongjump = false | |
320 | crouching = false | |
321 | longjumping = false | |
322 | walking = false | |
323 | ||
324 | local speed = 0 | |
325 | ||
326 | char.Humanoid.Running:connect(function(s) | |
327 | speed = s | |
328 | end) | |
329 | ||
330 | char.Humanoid.JumpPower = 70 | |
331 | ||
332 | local BODY = {} | |
333 | LeftArm = char["Left Arm"] | |
334 | RightLeg = char["Right Leg"] | |
335 | LeftLeg = char["Left Leg"] | |
336 | for _, c in pairs(char:GetDescendants()) do | |
337 | if c:IsA("BasePart") and c.Name ~= "Handle" then | |
338 | if c ~= char.HumanoidRootPart and c ~= char.Torso and c ~= char.Head and c ~= char["Right Arm"] and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then | |
339 | c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0) | |
340 | end | |
341 | table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency}) | |
342 | elseif c:IsA("JointInstance") then | |
343 | table.insert(BODY,{c,c.Parent,nil,nil,nil}) | |
344 | end | |
345 | end | |
346 | for e = 1, #BODY do | |
347 | if BODY[e] ~= nil then | |
348 | local STUFF = BODY[e] | |
349 | local PART = STUFF[1] | |
350 | local PARENT = STUFF[2] | |
351 | local MATERIAL = STUFF[3] | |
352 | local COLOR = STUFF[4] | |
353 | local TRANSPARENCY = STUFF[5] | |
354 | if PART.ClassName == "Part" and PART ~= char.HumanoidRootPart then | |
355 | PART.Material = MATERIAL | |
356 | PART.Color = COLOR | |
357 | PART.Transparency = TRANSPARENCY | |
358 | end | |
359 | PART.AncestryChanged:Connect(function() | |
360 | PART.Parent = PARENT | |
361 | end) | |
362 | end | |
363 | end | |
364 | function refit() | |
365 | char.Parent = workspace | |
366 | for e = 1, #BODY do | |
367 | if BODY[e] ~= nil then | |
368 | local STUFF = BODY[e] | |
369 | local PART = STUFF[1] | |
370 | local PARENT = STUFF[2] | |
371 | local MATERIAL = STUFF[3] | |
372 | local COLOR = STUFF[4] | |
373 | local TRANSPARENCY = STUFF[5] | |
374 | if PART.ClassName == "Part" and PART ~= char.HumanoidRootPart then | |
375 | PART.Material = MATERIAL | |
376 | PART.Color = COLOR | |
377 | PART.Transparency = TRANSPARENCY | |
378 | end | |
379 | if PART.Parent ~= PARENT then | |
380 | char:FindFirstChildOfClass("Humanoid"):remove() | |
381 | PART.Parent = PARENT | |
382 | Humanoid = Instance.new("Humanoid",char) | |
383 | end | |
384 | end | |
385 | end | |
386 | end | |
387 | char.Humanoid.Died:connect(function() | |
388 | refit() | |
389 | end) | |
390 | ||
391 | local update = game:GetService("RunService") | |
392 | update.RenderStepped:connect(function() | |
393 | local ray = Ray.new(chara.Torso.Position, (chara.Torso.Position - Vector3.new(0,9999999,0)).unit * 300) | |
394 | local p, position = game.Workspace:FindPartOnRay(ray, char, true, false) | |
395 | local dis = (chara.Torso.Position - position).magnitude | |
396 | if dis > 3.8 and chara.Torso.Velocity.Y > 0 then | |
397 | pose = "Jumping" | |
398 | char.Humanoid.WalkSpeed = 50 | |
399 | end | |
400 | if dis> 3.8 and chara.Torso.Velocity.Y < 0 then | |
401 | pose = "Falling" | |
402 | char.Humanoid.WalkSpeed = 50 | |
403 | end | |
404 | if dis < 3.8 and speed == 0 then | |
405 | pose = "Standing" | |
406 | char.Humanoid.WalkSpeed = 50 | |
407 | end | |
408 | if dis < 3.8 and speed > 0 then | |
409 | pose = "Walking" | |
410 | char.Humanoid.WalkSpeed = 50 | |
411 | end | |
412 | end) | |
413 | coroutine.wrap(function() | |
414 | while true do | |
415 | if char.Humanoid.Health > 1 then | |
416 | refit() | |
417 | end | |
418 | effect.Parent = char | |
419 | update.RenderStepped:wait() | |
420 | end | |
421 | end)() | |
422 | while true do | |
423 | wait() | |
424 | if pose == "Standing" and cananimate then | |
425 | walking = false | |
426 | for i = 0,1 , 0.05 do | |
427 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1),i) | |
428 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0, 0, 1, -1.6395192e-43, 0, -1.6395192e-43, 1, 0, 0, 0, 1),i) | |
429 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.499999523, -2.00000048, -9.53674316e-07, 0.970465422, 0, -0.241240621, 0, 1, 0, 0.241240621, 0, 0.970465422),i) | |
430 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499999523, -2.00000048, 0, 0.825716197, -3.35415825e-06, -0.564085841, -0.00202200096, 0.999993622, -0.00296577741, 0.564082265, 0.00358947273, 0.825710893),i) | |
431 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 0.779511273, 0, 0.626388252, 0, 0.999997616, 0, -0.626388252, 0, 0.779511273):inverse(),i) | |
432 | neck.C0 = neck.C0:lerp(CFrame.new(0, 1.5, 0, 0.726146579, 0, 0.687539995, 0, 1, 0, -0.687539995, 0, 0.726146579),i) | |
433 | update.RenderStepped:wait() | |
434 | end | |
435 | end | |
436 | if pose == "Walking" and cananimate then | |
437 | walking = true | |
438 | for i = 0,1 ,0.05 do | |
439 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.369194984, 0.541806221, 1, -1.04308128e-07, 1.63912773e-07, -1.49011612e-07, 0.0614573658, 0.998109818, -7.4505806e-08, -0.998109758, 0.0614573658),i) | |
440 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.46131897, 0.351869583, 1, -1.04308128e-07, 1.34110451e-07, -1.49011612e-07, 0.059670981, 0.998218119, -7.4505806e-08, -0.998218179, 0.0596710257),i) | |
441 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.67391682, -0.738807678, 0.99999994, 0, 0, 0, 0.673916757, -0.738807261, 0, 0.738807321, 0.673916817),i) | |
442 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.67705727, 0.735931396, 1, 0, 0, 0, 0.677056909, 0.735930681, 0, -0.735930741, 0.677056968),i) | |
443 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.707106829, 0.707106829, 0, -0.707106829, 0.707106829):inverse(),i) | |
444 | neck.C0 = neck.C0:lerp(CFrame.new(-9.53674316e-07, 1.42333794, -0.394411087, 1, 2.44219436e-08, 1.78813934e-07, -1.49011612e-07, 0.70710665, 0.707106948, -7.4505806e-08, -0.707106888, 0.707106709),i) | |
445 | game:GetService("RunService").RenderStepped:wait() | |
446 | end | |
447 | walking = true | |
448 | for i = 0,1 ,0.05 do | |
449 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.69855976, 0.715551376, 1, 0, 0, 0, 0.698559642, 0.715551734, 0, -0.715551794, 0.698559701),i) | |
450 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.80723953, -0.590223312, 1, 0, 0, 0, 0.807239354, -0.590224087, 0, 0.590224147, 0.807239413),i) | |
451 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.369194984, 0.541806221, 1, -1.04308128e-07, 1.63912773e-07, -1.49011612e-07, 0.0614573658, 0.998109818, -7.4505806e-08, -0.998109758, 0.0614573658),i) | |
452 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.5, 0.46131897, 0.351869583, 1, -1.04308128e-07, 1.34110451e-07, -1.49011612e-07, 0.059670981, 0.998218119, -7.4505806e-08, -0.998218179, 0.0596710257),i) | |
453 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.707106829, 0.707106829, 0, -0.707106829, 0.707106829):inverse(),i) | |
454 | neck.C0 = neck.C0:lerp(CFrame.new(-9.53674316e-07, 1.42333794, -0.394411087, 1, 2.44219436e-08, 1.78813934e-07, -1.49011612e-07, 0.70710665, 0.707106948, -7.4505806e-08, -0.707106888, 0.707106709),i) | |
455 | game:GetService("RunService").RenderStepped:wait() | |
456 | end | |
457 | walking = true | |
458 | end | |
459 | if pose == "Jumping" and cananimate then | |
460 | walking = false | |
461 | for i = 0,1 ,0.03 do | |
462 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.499996185, -0.302403927, -1.00209022, 0.998795688, 1.07394217e-05, 0.0490646139, 0.0144870952, 0.955350697, -0.295119137, -0.0468770824, 0.295474499, 0.954199851),i) | |
463 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(0.999998093, 0.401779056, -0.300704479, 0.995004237, 0.0998337567, 2.21675634e-07, -8.0173304e-05, 0.000801276532, -0.999999762, -0.0998337343, 0.995003879, 0.000805277436),i) | |
464 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-0.999984741, 0.403417826, -0.400689125, 0.978886008, -0.198669523, -0.0480909608, -0.0489091128, 0.000789985002, -0.99880302, 0.198469713, 0.98006618, -0.00894344598),i) | |
465 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499996185, -0.299546242, -1.00121045, 0.999991715, 1.10380352e-05, -3.05008143e-06, -1.13286078e-05, 0.955351293, -0.295472056, -2.51282472e-07, 0.295474589, 0.955343246),i) | |
466 | human2.C0 = human2.C0 * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(0)) | |
467 | neck.C0 = neck.C0:lerp(necc,i) | |
468 | game:GetService("RunService").RenderStepped:wait() | |
469 | end | |
470 | end | |
471 | if pose == "Falling" and cananimate then | |
472 | walking = false | |
473 | for i = 0,1 ,0.03 do | |
474 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.499996185, -0.302403927, -1.00209022, 0.998795688, 1.07394217e-05, 0.0490646139, 0.0144870952, 0.955350697, -0.295119137, -0.0468770824, 0.295474499, 0.954199851),i) | |
475 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(0.999998093, 0.401779056, -0.300704479, 0.995004237, 0.0998337567, 2.21675634e-07, -8.0173304e-05, 0.000801276532, -0.999999762, -0.0998337343, 0.995003879, 0.000805277436),i) | |
476 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-0.999984741, 0.403417826, -0.400689125, 0.978886008, -0.198669523, -0.0480909608, -0.0489091128, 0.000789985002, -0.99880302, 0.198469713, 0.98006618, -0.00894344598),i) | |
477 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499996185, -0.299546242, -1.00121045, 0.999991715, 1.10380352e-05, -3.05008143e-06, -1.13286078e-05, 0.955351293, -0.295472056, -2.51282472e-07, 0.295474589, 0.955343246),i) | |
478 | human2.C0 = human2.C0 * CFrame.Angles(math.rad(-20), math.rad(0), math.rad(0)) | |
479 | neck.C0 = neck.C0:lerp(necc,i) | |
480 | game:GetService("RunService").RenderStepped:wait() | |
481 | end | |
482 | end | |
483 | if pose == "LongJump" and cananimate then | |
484 | for i = 0,1 ,0.05 do | |
485 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-1.5, 0.268796921, 0.378599167, 1, 0, 0, 0, 0.479244441, 0.877675295, 0, -0.877680123, 0.479247063),i) | |
486 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.3865062, -0.938074112, 1, 0, 0, 0, 0.285262436, -0.958443761, 0, 0.958449006, 0.285263985),i) | |
487 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.49999988, 0.223083735, 0.169561386, 1, 0, 0, 0, 0.60511744, 0.796129346, 0, -0.796133697, 0.605120778),i) | |
488 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.5, -1.53550446, -0.961566925, 1, 0, 0, 0, 0.407492548, -0.913202584, 0, 0.913207591, 0.407494754),i) | |
489 | human2.C0 = human2.C0:lerp(human2co,i) | |
490 | neck.C0 = neck.C0:lerp(necc,i) | |
491 | update.RenderStepped:wait() | |
492 | end | |
493 | end | |
494 | if pose == "CrouchIdle" and cananimate then | |
495 | walking = false | |
496 | for i = 0,1 ,0.05 do | |
497 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.0382479317, -0.999268353, 0, 0.999266207, 0.0382480137):inverse(),i) | |
498 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-0.836666107, 1.21547508, 0.497126102, 0.782464266, -0.619657576, 0.0614301562, -0.106479198, -0.0359476209, 0.993664801, -0.61352396, -0.784048676, -0.0941083729),i) | |
499 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.500001907, -0.912134171, -1.33790898, 0.999999821, 4.32133675e-07, 2.32458115e-06, 2.38418579e-06, 0.0123845953, -0.999923229, -4.60073352e-07, 0.999923527, 0.0123845842),i) | |
500 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.06795311, 1.25440025, 0.391194582, -0.887933075, 0.459972352, -1.25467777e-05, -0.0143302083, -0.0276902169, -0.999513805, -0.459749311, -0.887501359, 0.0311785322),i) | |
501 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499998093, -0.951980591, -1.32859886, 0.999999762, 3.56696546e-07, -6.85453415e-07, -6.85453415e-07, 0.0145149324, -0.999894559, -3.42726707e-07, 0.999894857, 0.0145149129),i) | |
502 | neck.C0 = neck.C0:lerp(necc,i) | |
503 | update.RenderStepped:wait() | |
504 | end | |
505 | end | |
506 | if pose == "CrouchWalk" and cananimate then | |
507 | walking = true | |
508 | for i = 0,1, 0.05 do | |
509 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.0382479317, -0.999268353, 0, 0.999266207, 0.0382480137):inverse(),i) | |
510 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.5, -1.08789825, -1.2466166, 0.999999821, -6.70552254e-07, 2.29477882e-06, 2.38418579e-06, 0.460938156, -0.887432218, -4.60073352e-07, 0.887432396, 0.460938305),i) | |
511 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.499999046, 0.152124405, -1.14450228, 0.999999881, -5.96046448e-07, -1.16229057e-06, -1.22189522e-06, -0.641044497, -0.76750356, -3.22237611e-07, 0.767503738, -0.641044617),i) | |
512 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.06795311, 1.25440025, 0.391194582, -0.887933075, 0.459972352, -1.25467777e-05, -0.0143302083, -0.0276902169, -0.999513805, -0.459749311, -0.887501359, 0.0311785322),i) | |
513 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-0.836666107, 1.21547508, 0.497126102, 0.782464266, -0.619657576, 0.0614301562, -0.106479198, -0.0359476209, 0.993664801, -0.61352396, -0.784048676, -0.0941083729),i) | |
514 | neck.C0 = neck.C0:lerp(necc,i) | |
515 | update.RenderStepped:wait() | |
516 | end | |
517 | for i = 0,1, 0.05 do | |
518 | human2.C0 = human2.C0:lerp(CFrame.new(0, 0, 0, 1, 0, 0, 0, 0.0382479317, -0.999268353, 0, 0.999266207, 0.0382480137):inverse(),i) | |
519 | llegweld.C0 = llegweld.C0:lerp(CFrame.new(-0.500027657, -0.210391998, -1.34505367, 0.999999762, 1.38282776e-05, 2.73883343e-05, 3.06665897e-05, -0.405213743, -0.914221942, -1.54413283e-06, 0.914222181, -0.405213833),i) | |
520 | rlegweld.C0 = rlegweld.C0:lerp(CFrame.new(0.500020981, -1.04758263, -1.2475245, 0.999999821, -2.4586916e-05, 5.15282154e-05, 5.70416451e-05, 0.470286787, -0.882513642, -2.55182385e-06, 0.882513881, 0.470286816),i) | |
521 | rhandweld.C0 = rhandweld.C0:lerp(CFrame.new(1.06795311, 1.25440025, 0.391194582, -0.887933075, 0.459972352, -1.25467777e-05, -0.0143302083, -0.0276902169, -0.999513805, -0.459749311, -0.887501359, 0.0311785322),i) | |
522 | lhandweld.C0 = lhandweld.C0:lerp(CFrame.new(-0.836666107, 1.21547508, 0.497126102, 0.782464266, -0.619657576, 0.0614301562, -0.106479198, -0.0359476209, 0.993664801, -0.61352396, -0.784048676, -0.0941083729),i) | |
523 | neck.C0 = neck.C0:lerp(necc,i) | |
524 | update.RenderStepped:wait() | |
525 | end | |
526 | end | |
527 | end |