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,Mouse,mouse,UserInputService,ContextActionService = owner | |
3 | local RealPlayer = Player | |
4 | do print("FE Compatibility code by Mokiros");InternalData = {}InternalData.RealOwner = owner;InternalData.RealObjs = {};InternalData.SoundLoudness = {};local a=RealPlayer;script.Parent=a.Character;local b=Instance.new("RemoteEvent")b.Name="UserInput_Event"local function c()local d={_fakeEvent=true,Functions={},Connect=function(self,e)table.insert(self.Functions,e)end}d.connect=d.Connect;return d end;local f={Target=nil,Hit=CFrame.new(),KeyUp=c(),KeyDown=c(),Button1Up=c(),Button1Down=c()}local g={InputBegan=c(),InputEnded=c()}local CAS={Actions={},BindAction=function(self,h,i,j,...)CAS.Actions[h]=i and{Name=h,Function=i,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function k(self,l,...)local d=f[l]if d and d._fakeEvent then for m,e in pairs(d.Functions)do e(...)end end end;f.TrigEvent=k;g.TrigEvent=k;b.OnServerEvent:Connect(function(n,o)if n~=a then return end;f.Target=o.Target;f.Hit=o.Hit;if not o.isMouse then local p=o.UserInputState==Enum.UserInputState.Begin;if o.UserInputType==Enum.UserInputType.MouseButton1 then return f:TrigEvent(p and"Button1Down"or"Button1Up")end;for m,d in pairs(CAS.Actions)do for m,q in pairs(d.Keys)do if q==o.KeyCode then d.Function(d.Name,o.UserInputState,o)end end end;f:TrigEvent(p and"KeyDown"or"KeyUp",o.KeyCode.Name:lower())g:TrigEvent(p and"InputBegan"or"InputEnded",o,false)end end)b.Parent=NLS([==[local a=game:GetService("Players").LocalPlayer;local b=script:WaitForChild("UserInput_Event")local c=a:GetMouse()local d=game:GetService("UserInputService")local e=function(f,g)if g then return end;b:FireServer({KeyCode=f.KeyCode,UserInputType=f.UserInputType,UserInputState=f.UserInputState,Hit=c.Hit,Target=c.Target})end;d.InputBegan:Connect(e)d.InputEnded:Connect(e)local h,i;while wait(1/30)do if h~=c.Hit or i~=c.Target then h,i=c.Hit,c.Target;b:FireServer({isMouse=true,Target=i,Hit=h})end end]==],Player.Character)local r=game;local s={__index=function(self,q)local t=rawget(self,"_RealService")if t then return t[q]end end,__newindex=function(self,q,u)local t=rawget(self,"_RealService")if t then t[q]=u end end,__call=function(self,...)local t=rawget(self,"_RealService")if t then return t(...)end end}local function v(d,w)d._RealService=typeof(w)=="string"and r:GetService(w)or w;return setmetatable(d,s)end;local x={GetService=function(self,t)return self[t]end,Players=v({LocalPlayer=v({GetMouse=function(self)return f end},Player)},"Players"),UserInputService=v(g,"UserInputService"),ContextActionService=v(CAS,"ContextActionService")}rawset(x.Players,"localPlayer",x.Players.LocalPlayer)x.service=x.GetService;x.RunService=v({RenderStepped=r:GetService("RunService").Heartbeat,BindToRenderStep=function(self,h,m,i)self._btrs[h]=self.Heartbeat:Connect(i)end,UnbindFromRenderStep=function(self,h)self._btrs[h]:Disconnect()end},"RunService")setmetatable(x,{__index=function(self,t)return r:GetService(t)or typeof(r[t])=="function"and function(m,...)return r[t](r,...)end or r[t]end,__newindex=s.__newindex,__call=s.__call})game,owner=x,x.Players.LocalPlayer | |
5 | script.Parent = InternalData.RealOwner.Character | |
6 | local Event = Instance.new("RemoteEvent");Event.Name = "UserInput";InternalData.Event = Event | |
7 | local function createObject (connections, index) | |
8 | local proxy = newproxy (true);local meta = getmetatable (proxy); | |
9 | local runbind = function (self, i, ...) connections[i]:Fire (...); end; | |
10 | while (#connections > 0) do connections[table.remove(connections, 1)] = Instance.new ('BindableEvent');end; | |
11 | meta.__index = function (self, i) | |
12 | if (i == 'TriggerEvent') then return runbind end; | |
13 | return connections[i] and connections[i].Event or index[i]; | |
14 | end; | |
15 | meta.__newindex = index;meta.__metatable = false;return proxy | |
16 | end; | |
17 | local Mouse = createObject({"KeyUp","KeyDown","Button1Down","Button1Up"},{["Target"] = nil;["Hit"] = CFrame.new()}) | |
18 | local UserInputService = createObject({"InputBegan","InputEnded"},{}) | |
19 | local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...) | |
20 | self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil | |
21 | end};ContextActionService.UnBindAction = ContextActionService.BindAction | |
22 | Event.OnServerEvent:Connect(function(FiredBy,Input) | |
23 | if FiredBy ~= InternalData.RealOwner then return end | |
24 | if Input.MouseEvent then | |
25 | Mouse.Target = Input.Target;Mouse.Hit = Input.Hit | |
26 | elseif Input.Sound then | |
27 | if InternalData.SoundLoudness[Input.Sound] then InternalData.SoundLoudness[Input.Sound] = Input.Loudness end | |
28 | else | |
29 | local Begin = Input.UserInputState == Enum.UserInputState.Begin | |
30 | if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TriggerEvent(Begin and "Button1Down" or "Button1Up") end | |
31 | for _,Action in pairs(ContextActionService.Actions) do | |
32 | for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end | |
33 | end | |
34 | Mouse:TriggerEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower());UserInputService:TriggerEvent(Begin and "InputBegan" or "InputEnded",Input,false) | |
35 | end | |
36 | end) | |
37 | InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService | |
38 | Event.Parent = NLS([[ | |
39 | local Player = owner; | |
40 | local Sounds = {}; | |
41 | local Event = script:WaitForChild("UserInput"); | |
42 | local UserInputService = game:GetService("UserInputService"); | |
43 | local Mouse = Player:GetMouse(); | |
44 | local Input = function(Input,gameProcessedEvent) | |
45 | if gameProcessedEvent then return end | |
46 | Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState}) | |
47 | end | |
48 | Event.OnClientEvent:connect(function(Args) | |
49 | if Args[1] == "NewSound" then table.insert(Sounds,Args[2]) end | |
50 | end) | |
51 | UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input) | |
52 | local Hit,Target | |
53 | while wait(1/30) do | |
54 | for x,Sound in pairs(Sounds) do | |
55 | if Sound.Parent then Event:FireServer({["Sound"]=Sound,["Loudness"]=Sound.PlaybackLoudness}) end | |
56 | end | |
57 | if Hit ~= Mouse.Hit or Target ~= Mouse.Target then | |
58 | Hit = Mouse.Hit;Target = Mouse.Target; | |
59 | Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit}) | |
60 | end | |
61 | end | |
62 | ]],InternalData.RealOwner.Character) | |
63 | end | |
64 | InternalData.NewOwner = setmetatable({},{ | |
65 | __index = function (self,Index) | |
66 | local Type = type(InternalData.RealOwner[Index]) | |
67 | if Type == "function" then | |
68 | if Index:lower() == "getmouse" or Index:lower() == "mouse" then | |
69 | return function (self)return InternalData["Mouse"] end | |
70 | end | |
71 | return function (self,...)return InternalData.RealOwner[Index](InternalData.RealOwner,...) end | |
72 | elseif Index == "FakePlayer" then | |
73 | return true | |
74 | end | |
75 | return InternalData.RealOwner[Index] | |
76 | end; | |
77 | __tostring = function(self) return tostring(InternalData.RealOwner) end | |
78 | }) | |
79 | --LoadLibrary("RbxUtility").Create | |
80 | InternalData.LoadLibrary = LoadLibrary;LoadLibrary = function(Library) | |
81 | if Library == "RbxUtility" then | |
82 | return setmetatable({},{ | |
83 | __tostring = function() return "RbxUtility" end; | |
84 | __index = function(self, Index) | |
85 | if Index:lower() == "create" then | |
86 | return function(Type) | |
87 | return function(Data) | |
88 | Data = Data or {} | |
89 | local Inst = Instance.new(Type) | |
90 | for x,y in pairs(Data) do | |
91 | if InternalData.RealObjs[y] then y = InternalData.RealObjs[y] end | |
92 | if y == owner then y = InternalData.RealOwner end | |
93 | Inst[x] = y | |
94 | end | |
95 | return Inst | |
96 | end | |
97 | end | |
98 | end | |
99 | return InternalData.LoadLibrary(Library)[Index] | |
100 | end | |
101 | }) | |
102 | end | |
103 | return InternalData.LoadLibrary(Library) | |
104 | end | |
105 | InternalData.RealInstance = Instance;Instance = setmetatable({},{ | |
106 | __index = function (self,Index) | |
107 | if Index:lower() == 'new' then | |
108 | return function (Type, Parent) | |
109 | if Parent == owner then Parent = InternalData.RealOwner end | |
110 | if InternalData.RealObjs[Parent] then Parent = InternalData.RealObjs[Parent] end | |
111 | local Real = InternalData.RealInstance.new(Type,Parent) | |
112 | if not Type then return end | |
113 | if Type == "BillboardGui" then | |
114 | local ToReturn = setmetatable({},{ | |
115 | __index = function (self,Index) | |
116 | if type(Real[Index]) == "function" then | |
117 | if Index:lower() == "clone" then | |
118 | return function (self) | |
119 | local Real = Real:Clone() | |
120 | local ToReturn = setmetatable({RealObject = Real},{ | |
121 | __index = function (self,Index) | |
122 | if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end | |
123 | return Real[Index] | |
124 | end; | |
125 | __newindex = function (self,Index,Value) | |
126 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
127 | if Value == owner then Value = InternalData.RealOwner end | |
128 | Real[Index] = Value | |
129 | end; | |
130 | __tostring = function(self) return tostring(Real) end; | |
131 | }) | |
132 | InternalData.RealObjs[ToReturn] = Real;return ToReturn; | |
133 | end | |
134 | end | |
135 | return function (self,...) return Real[Index](Real,...)end | |
136 | end | |
137 | return Real[Index] | |
138 | end; | |
139 | __newindex = function (self,Index,Value) | |
140 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
141 | if Value == owner then Value = InternalData.RealOwner end | |
142 | Real[Index] = Value | |
143 | end; | |
144 | __tostring = function(self) return tostring(Real) end; | |
145 | }) | |
146 | InternalData.RealObjs[ToReturn] = Real;return ToReturn; | |
147 | elseif Type:lower() == "sound" then | |
148 | Real.Parent = owner.Character; | |
149 | local ToReturn = setmetatable({RealObject = Real},{ | |
150 | __index = function (self,Index) | |
151 | if Index:lower() == "playbackloudness" then | |
152 | return InternalData.SoundLoudness[Real] or 0 | |
153 | elseif type(Real[Index]) == "function" then | |
154 | if Index:lower() == "clone" then | |
155 | return function (self) | |
156 | local Real = Real:Clone() | |
157 | local ToReturn = setmetatable({},{ | |
158 | __index = function (self,Index) | |
159 | if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end | |
160 | return Real[Index] | |
161 | end; | |
162 | __newindex = function (self,Index,Value) | |
163 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
164 | if Value == owner then Value = InternalData.RealOwner end | |
165 | Real[Index] = Value | |
166 | end; | |
167 | __tostring = function(self) return tostring(Real) end; | |
168 | }) | |
169 | InternalData.RealObjs[ToReturn] = Real;return ToReturn; | |
170 | end | |
171 | end | |
172 | return function (self,...) return Real[Index](Real,...)end | |
173 | end | |
174 | return Real[Index] | |
175 | end; | |
176 | __newindex = function (self,Index,Value) | |
177 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
178 | if Value == owner then Value = InternalData.RealOwner end | |
179 | Real[Index] = Value | |
180 | end; | |
181 | __tostring = function(self) return tostring(Real) end; | |
182 | }) | |
183 | InternalData.RealObjs[ToReturn] = Real;InternalData.SoundLoudness[Real] = 0;repeat wait() until InternalData.Event.Parent InternalData.Event:FireClient(InternalData.RealOwner,{"NewSound",Real}) return ToReturn; | |
184 | else | |
185 | local ToReturn = setmetatable({RealObject = Real},{ | |
186 | __index = function (self,Index) | |
187 | if type(Real[Index]) == "function" then | |
188 | if Index:lower() == "clone" then | |
189 | return function (self) | |
190 | local Real = Real:Clone() | |
191 | local ToReturn = setmetatable({},{ | |
192 | __index = function (self,Index) | |
193 | if type(Real[Index]) == "function" then return function (self,...) return Real[Index](Real,...)end end | |
194 | return Real[Index] | |
195 | end; | |
196 | __newindex = function (self,Index,Value) | |
197 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
198 | if Value == owner then Value = InternalData.RealOwner end | |
199 | Real[Index] = Value | |
200 | end; | |
201 | __tostring = function(self) return tostring(Real) end; | |
202 | }) | |
203 | InternalData.RealObjs[ToReturn] = Real;return ToReturn; | |
204 | end | |
205 | end | |
206 | return function (self,...) return Real[Index](Real,...)end | |
207 | end | |
208 | return Real[Index] | |
209 | end; | |
210 | __newindex = function (self,Index,Value) | |
211 | if InternalData.RealObjs[Value] then Value = InternalData.RealObjs[Value] end | |
212 | if Value == owner then Value = InternalData.RealOwner end | |
213 | Real[Index] = Value | |
214 | end; | |
215 | __tostring = function(self) return tostring(Real) end; | |
216 | }) | |
217 | InternalData.RealObjs[ToReturn] = Real;return ToReturn; | |
218 | end | |
219 | end | |
220 | end | |
221 | return InternalData.RealInstance[Index] | |
222 | end; | |
223 | __tostring = function(self) return tostring(InternalData.RealInstance) end; | |
224 | }); | |
225 | InternalData.RealGame = game;game = setmetatable({},{ | |
226 | __index = function (self,Index) | |
227 | if InternalData.RealGame[Index] then | |
228 | local Type = type(InternalData.RealGame[Index]) | |
229 | if Type == "function" then | |
230 | if Index:lower() == "getservice" or Index:lower() == "service" then | |
231 | return function (self,Service) | |
232 | local FakeServices = { | |
233 | ["players"] = function() | |
234 | return setmetatable({},{ | |
235 | __index = function (self2,Index2) | |
236 | local RealService = InternalData.RealGame:GetService(Service) | |
237 | local Type2 = type(RealService[Index2]) | |
238 | if Type2 == "function" then | |
239 | return function (self,...) return RealService[Index2](RealService,...)end | |
240 | else | |
241 | if Index2:lower() == "localplayer" then return InternalData.NewOwner end | |
242 | return RealService[Index2] | |
243 | end | |
244 | end; | |
245 | __tostring = function(self) return tostring(InternalData.RealGame:GetService(Service)) end | |
246 | }) | |
247 | end; | |
248 | ["contextactionservice"] = function() return InternalData["ContextActionService"] end; | |
249 | ["userinputservice"] = function() return InternalData["UserInputService"] end; | |
250 | ["debris"] = function() | |
251 | return setmetatable({},{ | |
252 | __index = function(self2,Index2) | |
253 | local RealService = InternalData.RealGame:GetService(Service) | |
254 | local Type2 = type(RealService[Index2]) | |
255 | if Type2 == "function" then | |
256 | if Index2:lower() == "additem" then | |
257 | return function (self,Item,Time) | |
258 | if InternalData.RealObjs[Item] then Item = InternalData.RealObjs[Item] end | |
259 | return RealService:AddItem(Item,Time) | |
260 | end | |
261 | end | |
262 | return function (self,...) return RealService[Index2](RealService,...) end | |
263 | end | |
264 | return RealService[Index2] | |
265 | end; | |
266 | __tostring = function(self) return tostring(InternalData.RealGame:GetService("Debris")) end | |
267 | }) | |
268 | end; | |
269 | ["runservice"] = function() | |
270 | return setmetatable({},{ | |
271 | __index = function(self2,Index2) | |
272 | local RealService = InternalData.RealGame:GetService(Service) | |
273 | local Type2 = type(RealService[Index2]) | |
274 | if Type2 == "function" then | |
275 | return function (self,...) return RealService[Index2](RealService,...) end | |
276 | else | |
277 | local RunServices = { | |
278 | ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return InternalData.RealGame:GetService("RunService").Stepped:Connect(Function) end end; | |
279 | ["renderstepped"] = function() return RealService["Stepped"] end | |
280 | } | |
281 | if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end | |
282 | return RealService[Index2] | |
283 | end | |
284 | end; | |
285 | __tostring = function(self) return tostring(InternalData.RealGame:GetService("RunService")) end | |
286 | }) | |
287 | end | |
288 | } | |
289 | if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end | |
290 | return InternalData.RealGame:GetService(Service) | |
291 | end | |
292 | end | |
293 | return function (self,...) return InternalData.RealGame[Index](InternalData.RealGame,...) end | |
294 | else | |
295 | if game:GetService(Index) then return game:GetService(Index) end | |
296 | return InternalData.RealGame[Index] | |
297 | end | |
298 | end | |
299 | return nil | |
300 | end; | |
301 | __tostring = function(self) return tostring(InternalData.game) end | |
302 | });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete!") | |
303 | ||
304 | --[wip]-- | |
305 | ||
306 | --[[ The Brutal Furry (DEMO .1), by SezHu and Nebula_Zorua ]]-- | |
307 | --[[ Animation work by SezHu, attacks by Nebula_Zorua ]]-- | |
308 | ||
309 | --[[ I also made some things less stiff ~Nebula ]]-- | |
310 | ||
311 | wait(1 / 60) | |
312 | Effects = { } | |
313 | local Player = game:service'Players'.localPlayer | |
314 | local Mouse = Player:GetMouse() | |
315 | local Character = Player.Character | |
316 | local Humanoid = Character.Humanoid | |
317 | local Head = Character.Head | |
318 | local RootPart = Character.HumanoidRootPart | |
319 | local Torso = Character.Torso | |
320 | local LeftArm = Character["Left Arm"] | |
321 | local RightArm = Character["Right Arm"] | |
322 | local LeftLeg = Character["Left Leg"] | |
323 | local RightLeg = Character["Right Leg"] | |
324 | local Camera = game.Workspace.CurrentCamera | |
325 | local RootJoint = RootPart.RootJoint | |
326 | local Equipped = false | |
327 | local Attack = false | |
328 | local Anim = 'Idle' | |
329 | local Idle = 0 | |
330 | local Combo = 1 | |
331 | local TorsoVelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude | |
332 | local Velocity = RootPart.Velocity.y | |
333 | local Sine = 0 | |
334 | local Change = 1 | |
335 | local UIS = game:GetService("UserInputService") | |
336 | ||
337 | local Climbing = false | |
338 | local ClimbPos; | |
339 | ||
340 | spawn(function() | |
341 | while true do | |
342 | swait() | |
343 | Sine = Sine + Change | |
344 | end | |
345 | end) | |
346 | ||
347 | local RbxUtility = LoadLibrary("RbxUtility") | |
348 | local Create = RbxUtility.Create | |
349 | ||
350 | Humanoid.WalkSpeed = 35 | |
351 | Humanoid.JumpPower = 70 | |
352 | Humanoid.Animator.Parent = nil | |
353 | Character.Animate.Parent = nil | |
354 | ||
355 | local newMotor = function(part0, part1, c0, c1) | |
356 | local w = Create('Motor'){ | |
357 | Parent = part0, | |
358 | Part0 = part0, | |
359 | Part1 = part1, | |
360 | C0 = c0, | |
361 | C1 = c1, | |
362 | } | |
363 | return w | |
364 | end | |
365 | ||
366 | ||
367 | ||
368 | function clerp(a, b, t) | |
369 | return a:lerp(b, t) | |
370 | end | |
371 | ||
372 | RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14) | |
373 | NeckCF = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
374 | ||
375 | local RW = newMotor(Torso, RightArm, CFrame.new(1.5, 0, 0), CFrame.new(0, 0, 0)) | |
376 | local LW = newMotor(Torso, LeftArm, CFrame.new(-1.5, 0, 0), CFrame.new(0, 0, 0)) | |
377 | local RH = newMotor(Torso, RightLeg, CFrame.new(.5, -2, 0), CFrame.new(0, 0, 0)) | |
378 | local LH = newMotor(Torso, LeftLeg, CFrame.new(-.5, -2, 0), CFrame.new(0, 0, 0)) | |
379 | RootJoint.C1 = CFrame.new(0, 0, 0) | |
380 | RootJoint.C0 = CFrame.new(0, 0, 0) | |
381 | Torso.Neck.C1 = CFrame.new(0, 0, 0) | |
382 | Torso.Neck.C0 = CFrame.new(0, 1.5, 0) | |
383 | ||
384 | local rarmc1 = RW.C1 | |
385 | local larmc1 = LW.C1 | |
386 | local rlegc1 = RH.C1 | |
387 | local llegc1 = LH.C1 | |
388 | ||
389 | local resetc1 = false | |
390 | ||
391 | function PlayAnimationFromTable(table, speed, bool) | |
392 | RootJoint.C0 = clerp(RootJoint.C0, table[1], speed) | |
393 | Torso.Neck.C0 = clerp(Torso.Neck.C0, table[2], speed) | |
394 | RW.C0 = clerp(RW.C0, table[3], speed) | |
395 | LW.C0 = clerp(LW.C0, table[4], speed) | |
396 | RH.C0 = clerp(RH.C0, table[5], speed) | |
397 | LH.C0 = clerp(LH.C0, table[6], speed) | |
398 | if bool == true then | |
399 | if resetc1 == false then | |
400 | resetc1 = true | |
401 | RootJoint.C1 = RootJoint.C1 | |
402 | Torso.Neck.C1 = Torso.Neck.C1 | |
403 | RW.C1 = rarmc1 | |
404 | LW.C1 = larmc1 | |
405 | RH.C1 = rlegc1 | |
406 | LH.C1 = llegc1 | |
407 | end | |
408 | end | |
409 | end | |
410 | ||
411 | ArtificialHB = Create("BindableEvent"){ | |
412 | Parent = script, | |
413 | Name = "Heartbeat", | |
414 | } | |
415 | ||
416 | script:WaitForChild("Heartbeat") | |
417 | ||
418 | frame = 1 / 60 | |
419 | tf = 0 | |
420 | allowframeloss = false | |
421 | tossremainder = false | |
422 | lastframe = tick() | |
423 | script.Heartbeat:Fire() | |
424 | ||
425 | game:GetService("RunService").Heartbeat:connect(function(s, p) | |
426 | tf = tf + s | |
427 | if tf >= frame then | |
428 | if allowframeloss then | |
429 | script.Heartbeat:Fire() | |
430 | lastframe = tick() | |
431 | else | |
432 | for i = 1, math.floor(tf / frame) do | |
433 | script.Heartbeat:Fire() | |
434 | end | |
435 | lastframe = tick() | |
436 | end | |
437 | if tossremainder then | |
438 | tf = 0 | |
439 | else | |
440 | tf = tf - frame * math.floor(tf / frame) | |
441 | end | |
442 | end | |
443 | end) | |
444 | ||
445 | function swait(num) | |
446 | if num == 0 or num == nil then | |
447 | ArtificialHB.Event:wait() | |
448 | else | |
449 | for i = 0, num do | |
450 | ArtificialHB.Event:wait() | |
451 | end | |
452 | end | |
453 | end | |
454 | ||
455 | local m = Create("Model"){ | |
456 | Parent = Character, | |
457 | Name = "WeaponModel" | |
458 | } | |
459 | ||
460 | ||
461 | ||
462 | function RemoveOutlines(part) | |
463 | part.TopSurface, part.BottomSurface, part.LeftSurface, part.RightSurface, part.FrontSurface, part.BackSurface = 10, 10, 10, 10, 10, 10 | |
464 | end | |
465 | ||
466 | CFuncs = { | |
467 | Part = { | |
468 | Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size) | |
469 | local Part = Create("Part"){ | |
470 | Parent = Parent, | |
471 | Reflectance = Reflectance, | |
472 | Transparency = Transparency, | |
473 | CanCollide = false, | |
474 | Locked = true, | |
475 | BrickColor = BrickColor.new(tostring(BColor)), | |
476 | Name = Name, | |
477 | Size = Size, | |
478 | Material = Material, | |
479 | } | |
480 | RemoveOutlines(Part) | |
481 | if Size == Vector3.new() then | |
482 | Part.Size = Vector3.new(0.2, 0.2, 0.2) | |
483 | else | |
484 | Part.Size = Size | |
485 | end | |
486 | return Part | |
487 | end; | |
488 | }; | |
489 | ||
490 | Mesh = { | |
491 | Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale) | |
492 | local Msh = Create(Mesh){ | |
493 | Parent = Part, | |
494 | Offset = OffSet, | |
495 | Scale = Scale, | |
496 | } | |
497 | if Mesh == "SpecialMesh" then | |
498 | Msh.MeshType = MeshType | |
499 | Msh.MeshId = MeshId | |
500 | end | |
501 | return Msh | |
502 | end; | |
503 | }; | |
504 | ||
505 | Weld = { | |
506 | Create = function(Parent, Part0, Part1, C0, C1) | |
507 | local Weld = Create("Weld"){ | |
508 | Parent = Parent, | |
509 | Part0 = Part0, | |
510 | Part1 = Part1, | |
511 | C0 = C0, | |
512 | C1 = C1, | |
513 | } | |
514 | return Weld | |
515 | end; | |
516 | }; | |
517 | ||
518 | Sound = { | |
519 | Create = function(id, par, vol, pit) | |
520 | coroutine.resume(coroutine.create(function() | |
521 | local S = Create("Sound"){ | |
522 | Volume = vol, | |
523 | Pitch = pit or 1, | |
524 | SoundId = "rbxassetid://" .. id, | |
525 | Parent = par or workspace, | |
526 | } | |
527 | wait() | |
528 | S:play() | |
529 | game:GetService("Debris"):AddItem(S, 10) | |
530 | end)) | |
531 | end; | |
532 | }; | |
533 | ||
534 | ParticleEmitter = { | |
535 | Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread) | |
536 | local Particle = Create("ParticleEmitter"){ | |
537 | Parent = Parent, | |
538 | Color = ColorSequence.new(Color1, Color2), | |
539 | LightEmission = LightEmission, | |
540 | Size = Size, | |
541 | Texture = Texture, | |
542 | Transparency = Transparency, | |
543 | ZOffset = ZOffset, | |
544 | Acceleration = Accel, | |
545 | Drag = Drag, | |
546 | LockedToPart = LockedToPart, | |
547 | VelocityInheritance = VelocityInheritance, | |
548 | EmissionDirection = EmissionDirection, | |
549 | Enabled = Enabled, | |
550 | Lifetime = LifeTime, | |
551 | Rate = Rate, | |
552 | Rotation = Rotation, | |
553 | RotSpeed = RotSpeed, | |
554 | Speed = Speed, | |
555 | VelocitySpread = VelocitySpread, | |
556 | } | |
557 | return Particle | |
558 | end; | |
559 | }; | |
560 | ||
561 | CreateTemplate = { | |
562 | ||
563 | }; | |
564 | } | |
565 | ||
566 | ||
567 | rCHandle2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle2",Vector3.new(0.430001736, 0.679999948, 0.299999684)) | |
568 | rCHandle2Weld=CFuncs.Weld.Create(m,Character["Left Arm"],rCHandle2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.0299911499, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0)) | |
569 | CHandle2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle2",Vector3.new(0.430001736, 0.679999948, 0.299999684)) | |
570 | CHandle2Weld=CFuncs.Weld.Create(m,rCHandle2,CHandle2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.0299911499, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0)) | |
571 | Claw2=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,0,"Really black","Claw2",Vector3.new(0.430001736, 0.829999924, 1.31999958)) | |
572 | Claw2Weld=CFuncs.Weld.Create(m,CHandle2,Claw2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.414048076, -0.0255355835, 0.581350505, 1, 0, 0, 0, -1, 0, 0, 0, -1)) | |
573 | CFuncs.Mesh.Create("SpecialMesh",Claw2,Enum.MeshType.FileMesh,"rbxassetid://10681506",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.800000012)) | |
574 | ||
575 | ||
576 | rCHandle1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle1",Vector3.new(0.430001736, 0.679999948, 0.299999684)) | |
577 | rCHandle1Weld=CFuncs.Weld.Create(m,Character["Right Arm"],rCHandle1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.00206756592, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0)) | |
578 | CHandle1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,1,"Medium stone grey","CHandle1",Vector3.new(0.430001736, 0.679999948, 0.299999684)) | |
579 | CHandle1Weld=CFuncs.Weld.Create(m,rCHandle1,CHandle1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0650009513, -0.00206756592, 0.555044532, 0, 0, 1, 1, 0, 0, 0, 1, 0)) | |
580 | Claw1=CFuncs.Part.Create(m,Enum.Material.SmoothPlastic,0,0,"Really black","Claw1",Vector3.new(0.430001736, 0.829999924, 1.31999958)) | |
581 | Claw1Weld=CFuncs.Weld.Create(m,CHandle1,Claw1,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.414048076, -0.0255355835, 0.581350505, 1, 0, 0, 0, -1, 0, 0, 0, -1)) | |
582 | CFuncs.Mesh.Create("SpecialMesh",Claw1,Enum.MeshType.FileMesh,"rbxassetid://10681506",Vector3.new(0, 0, 0),Vector3.new(1, 1, 0.800000012)) | |
583 | ||
584 | function RayCast(Position, Direction, Range, Ignore) | |
585 | return workspace:FindPartOnRay(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) | |
586 | end | |
587 | ||
588 | function RayCastWithList(Position, Direction, Range, Ignore) | |
589 | return workspace:FindPartOnRayWithIgnoreList(Ray.new(Position, Direction.unit * (Range or 999.999)), Ignore) | |
590 | end | |
591 | ||
592 | function GetTorso(char) | |
593 | return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' | |
594 | end | |
595 | ||
596 | FindNearestTorso = function(pos,range) | |
597 | local torso,dist=nil,nil or range; | |
598 | for _,v in next, workspace:children() do | |
599 | if(v.Name ~= 'CKbackup' and v.Name ~= 'SezHu' and v.Name ~= 'Salvo_Starly' and v.Name ~= 'Nebula_Zorua' and v ~= Character and GetTorso(v) and v:FindFirstChildOfClass'Humanoid')then | |
600 | if v:FindFirstChildOfClass('Humanoid').Health > 0 then | |
601 | if((pos-GetTorso(v).Position).magnitude < dist)then | |
602 | torso = GetTorso(v) | |
603 | dist = (pos-GetTorso(v).Position).magnitude | |
604 | end | |
605 | end | |
606 | end | |
607 | end | |
608 | return torso, dist | |
609 | end | |
610 | ||
611 | function Damage(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch) | |
612 | if hit.Parent == nil then | |
613 | return | |
614 | end | |
615 | local h = hit.Parent:FindFirstChild("Humanoid") | |
616 | for _, v in pairs(hit.Parent:children()) do | |
617 | if v:IsA("Humanoid") then | |
618 | h = v | |
619 | end | |
620 | end | |
621 | if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Torso") ~= nil then | |
622 | if hit.Parent:findFirstChild("DebounceHit") ~= nil then | |
623 | if hit.Parent.DebounceHit.Value == true then | |
624 | return | |
625 | end | |
626 | end | |
627 | local c = Create("ObjectValue"){ | |
628 | Name = "creator", | |
629 | Value = game:service("Players").LocalPlayer, | |
630 | Parent = h, | |
631 | } | |
632 | game:GetService("Debris"):AddItem(c, .5) | |
633 | if HitSound ~= nil and HitPitch ~= nil then | |
634 | CFuncs.Sound.Create(HitSound, hit, 1, HitPitch) | |
635 | end | |
636 | local Damage = math.random(minim, maxim) | |
637 | local blocked = false | |
638 | local block = hit.Parent:findFirstChild("Block") | |
639 | if block ~= nil then | |
640 | if block.className == "IntValue" then | |
641 | if block.Value > 0 then | |
642 | blocked = true | |
643 | block.Value = block.Value - 1 | |
644 | print(block.Value) | |
645 | end | |
646 | end | |
647 | end | |
648 | if blocked == false then | |
649 | h.Health = h.Health - Damage | |
650 | ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Really black").Color) | |
651 | else | |
652 | h.Health = h.Health - (Damage / 2) | |
653 | ShowDamage((Part.CFrame * CFrame.new(0, 0, (Part.Size.Z / 2)).p + Vector3.new(0, 1.5, 0)), -Damage, 1.5, BrickColor.new("Really black").Color) | |
654 | end | |
655 | if Type == "Knockdown" then | |
656 | local hum = hit.Parent.Humanoid | |
657 | hum.PlatformStand = true | |
658 | coroutine.resume(coroutine.create(function(HHumanoid) | |
659 | swait(1) | |
660 | HHumanoid.PlatformStand = false | |
661 | end), hum) | |
662 | local angle = (hit.Position - (Property.Position + Vector3.new(0, 0, 0))).unit | |
663 | local bodvol = Create("BodyVelocity"){ | |
664 | velocity = angle * knockback, | |
665 | P = 5000, | |
666 | maxForce = Vector3.new(8e+003, 8e+003, 8e+003), | |
667 | Parent = hit, | |
668 | } | |
669 | local rl = Create("BodyAngularVelocity"){ | |
670 | P = 3000, | |
671 | maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000, | |
672 | angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)), | |
673 | Parent = hit, | |
674 | } | |
675 | game:GetService("Debris"):AddItem(bodvol, .5) | |
676 | game:GetService("Debris"):AddItem(rl, .5) | |
677 | elseif Type == "Normal" then | |
678 | local vp = Create("BodyVelocity"){ | |
679 | P = 500, | |
680 | maxForce = Vector3.new(math.huge, 0, math.huge), | |
681 | velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05, | |
682 | } | |
683 | if knockback > 0 then | |
684 | vp.Parent = hit.Parent.Torso | |
685 | end | |
686 | ||
687 | elseif Type == "Up" then | |
688 | local bodyVelocity = Create("BodyVelocity"){ | |
689 | velocity = Vector3.new(0, 20, 0), | |
690 | P = 5000, | |
691 | maxForce = Vector3.new(8e+003, 8e+003, 8e+003), | |
692 | Parent = hit, | |
693 | } | |
694 | game:GetService("Debris"):AddItem(bodyVelocity, .5) | |
695 | elseif Type == "DarkUp" then | |
696 | coroutine.resume(coroutine.create(function() | |
697 | for i = 0, 1, 0.1 do | |
698 | swait() | |
699 | Effects.Block.Create(BrickColor.new("Black"), hit.Parent.Torso.CFrame, 5, 5, 5, 1, 1, 1, .08, 1) | |
700 | end | |
701 | end)) | |
702 | local bodyVelocity = Create("BodyVelocity"){ | |
703 | velocity = Vector3.new(0, 20, 0), | |
704 | P = 5000, | |
705 | maxForce = Vector3.new(8e+003, 8e+003, 8e+003), | |
706 | Parent = hit, | |
707 | } | |
708 | game:GetService("Debris"):AddItem(bodyVelocity, 1) | |
709 | elseif Type == "Snare" then | |
710 | local bp = Create("BodyPosition"){ | |
711 | P = 2000, | |
712 | D = 100, | |
713 | maxForce = Vector3.new(math.huge, math.huge, math.huge), | |
714 | position = hit.Parent.Torso.Position, | |
715 | Parent = hit.Parent.Torso, | |
716 | } | |
717 | game:GetService("Debris"):AddItem(bp, 1) | |
718 | elseif Type == "Freeze" then | |
719 | local BodPos = Create("BodyPosition"){ | |
720 | P = 50000, | |
721 | D = 1000, | |
722 | maxForce = Vector3.new(math.huge, math.huge, math.huge), | |
723 | position = hit.Parent.Torso.Position, | |
724 | Parent = hit.Parent.Torso, | |
725 | } | |
726 | local BodGy = Create("BodyGyro") { | |
727 | maxTorque = Vector3.new(4e+005, 4e+005, 4e+005) * math.huge , | |
728 | P = 20e+003, | |
729 | Parent = hit.Parent.Torso, | |
730 | cf = hit.Parent.Torso.CFrame, | |
731 | } | |
732 | hit.Parent.Torso.Anchored = true | |
733 | coroutine.resume(coroutine.create(function(Part) | |
734 | swait(1.5) | |
735 | Part.Anchored = false | |
736 | end), hit.Parent.Torso) | |
737 | game:GetService("Debris"):AddItem(BodPos, 3) | |
738 | game:GetService("Debris"):AddItem(BodGy, 3) | |
739 | end | |
740 | local debounce = Create("BoolValue"){ | |
741 | Name = "DebounceHit", | |
742 | Parent = hit.Parent, | |
743 | Value = true, | |
744 | } | |
745 | game:GetService("Debris"):AddItem(debounce, Delay) | |
746 | c = Create("ObjectValue"){ | |
747 | Name = "creator", | |
748 | Value = Player, | |
749 | Parent = h, | |
750 | } | |
751 | game:GetService("Debris"):AddItem(c, .5) | |
752 | end | |
753 | end | |
754 | ||
755 | function ShowDamage(Pos, Text, Time, Color) | |
756 | local Rate = (1 / 30) | |
757 | local Pos = (Pos or Vector3.new(0, 0, 0)) | |
758 | local Text = (Text or "") | |
759 | local Time = (Time or 2) | |
760 | local Color = (Color or Color3.new(1, 0, 1)) | |
761 | local EffectPart = CFuncs.Part.Create(workspace, "SmoothPlastic", 0, 1, BrickColor.new(Color), "Effect", Vector3.new(0, 0, 0)) | |
762 | EffectPart.Anchored = true | |
763 | local BillboardGui = Create("BillboardGui"){ | |
764 | Size = UDim2.new(3, 0, 3, 0), | |
765 | Adornee = EffectPart, | |
766 | Parent = EffectPart, | |
767 | } | |
768 | local TextLabel = Create("TextLabel"){ | |
769 | BackgroundTransparency = 1, | |
770 | Size = UDim2.new(1, 0, 1, 0), | |
771 | Text = Text, | |
772 | Font = "SciFi", | |
773 | TextColor3 = Color, | |
774 | TextScaled = true, | |
775 | Parent = BillboardGui, | |
776 | } | |
777 | game.Debris:AddItem(EffectPart, (Time)) | |
778 | EffectPart.Parent = game:GetService("Workspace") | |
779 | delay(0, function() | |
780 | local Frames = (Time / Rate) | |
781 | for Frame = 1, Frames do | |
782 | wait(Rate) | |
783 | local Percent = (Frame / Frames) | |
784 | EffectPart.CFrame = CFrame.new(Pos) + Vector3.new(0, Percent, 0) | |
785 | TextLabel.TextTransparency = Percent | |
786 | end | |
787 | if EffectPart and EffectPart.Parent then | |
788 | EffectPart:Destroy() | |
789 | end | |
790 | end) | |
791 | end | |
792 | ||
793 | function MagnitudeDamage(Part, Magnitude, MinimumDamage, MaximumDamage, KnockBack, Type, HitSound, HitPitch) | |
794 | for _, c in pairs(workspace:children()) do | |
795 | local hum = c:findFirstChild("Humanoid") | |
796 | if hum ~= nil then | |
797 | local head = c:findFirstChild("Torso") | |
798 | if head ~= nil then | |
799 | local targ = head.Position - Part.Position | |
800 | local mag = targ.magnitude | |
801 | if mag <= Magnitude and c.Name ~= Player.Name then | |
802 | Damage(head, head, MinimumDamage, MaximumDamage, KnockBack, Type, RootPart, .1, "rbxassetid://" .. HitSound, HitPitch) | |
803 | end | |
804 | end | |
805 | end | |
806 | end | |
807 | end | |
808 | ||
809 | EffectModel = Create("Model"){ | |
810 | Parent = Character, | |
811 | Name = "EffectModel", | |
812 | } | |
813 | ||
814 | Effects = { | |
815 | Block = { | |
816 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Type, Part) | |
817 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
818 | prt.Anchored = true | |
819 | prt.CFrame = cframe | |
820 | msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
821 | game:GetService("Debris"):AddItem(prt, 10) | |
822 | if Type == 1 or Type == nil then | |
823 | table.insert(Effects, { | |
824 | prt, | |
825 | "Block1", | |
826 | delay, | |
827 | x3, | |
828 | y3, | |
829 | z3, | |
830 | msh | |
831 | }) | |
832 | elseif Type == 2 then | |
833 | table.insert(Effects, { | |
834 | prt, | |
835 | "Block2", | |
836 | delay, | |
837 | x3, | |
838 | y3, | |
839 | z3, | |
840 | msh | |
841 | }) | |
842 | elseif Type == 3 then | |
843 | - | ripntear.SoundId = "rbxassetid://1289912324" |
843 | + | |
844 | prt, | |
845 | "Block3", | |
846 | delay, | |
847 | x3, | |
848 | y3, | |
849 | z3, | |
850 | msh, | |
851 | Part | |
852 | }) | |
853 | elseif Type == 4 then | |
854 | table.insert(Effects, { | |
855 | prt, | |
856 | "Block2Fire", | |
857 | delay, | |
858 | x3, | |
859 | y3, | |
860 | z3, | |
861 | - | CFuncs.Sound.Create("1499494641", CHandle1, 1, 1) |
861 | + | |
862 | }) | |
863 | end | |
864 | end | |
865 | }; | |
866 | ||
867 | Sphere = { | |
868 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, parent) | |
869 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
870 | prt.Anchored = true | |
871 | prt.CFrame = cframe | |
872 | if parent == nil then | |
873 | prt.Parent = workspace | |
874 | else | |
875 | - | CFuncs.Sound.Create("1499494641", CHandle2, 1, .9) |
875 | + | |
876 | end | |
877 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
878 | game:GetService("Debris"):AddItem(prt, 10) | |
879 | table.insert(Effects, { | |
880 | prt, | |
881 | "Cylinder", | |
882 | delay, | |
883 | x3, | |
884 | y3, | |
885 | z3, | |
886 | msh | |
887 | }) | |
888 | end | |
889 | }; | |
890 | ||
891 | Blood = { | |
892 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
893 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
894 | prt.Anchored = true | |
895 | prt.CFrame = cframe | |
896 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
897 | game:GetService("Debris"):AddItem(prt, 10) | |
898 | table.insert(Effects, { | |
899 | prt, | |
900 | "Blood", | |
901 | delay, | |
902 | x3, | |
903 | - | CFuncs.Sound.Create("834658541", Torso, 5, .8) |
903 | + | |
904 | z3, | |
905 | msh | |
906 | }) | |
907 | end | |
908 | }; | |
909 | ||
910 | Blast = { | |
911 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay, Part) | |
912 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
913 | prt.Anchored = true | |
914 | prt.CFrame = cframe | |
915 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "1323306", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
916 | game:GetService("Debris"):AddItem(prt, 10) | |
917 | table.insert(Effects, { | |
918 | prt, | |
919 | "Block4", | |
920 | delay, | |
921 | x3, | |
922 | y3, | |
923 | z3, | |
924 | msh, | |
925 | Part | |
926 | }) | |
927 | end | |
928 | }; | |
929 | ||
930 | Ring = { | |
931 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
932 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5)) | |
933 | prt.Anchored = true | |
934 | prt.CFrame = cframe | |
935 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "3270017", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
936 | game:GetService("Debris"):AddItem(prt, 10) | |
937 | table.insert(Effects, { | |
938 | prt, | |
939 | "Cylinder", | |
940 | delay, | |
941 | x3, | |
942 | y3, | |
943 | z3, | |
944 | msh | |
945 | }) | |
946 | end | |
947 | }; | |
948 | ||
949 | Cylinder = { | |
950 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
951 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
952 | prt.Anchored = true | |
953 | prt.CFrame = cframe | |
954 | local msh = CFuncs.Mesh.Create("CylinderMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
955 | game:GetService("Debris"):AddItem(prt, 10) | |
956 | table.insert(Effects, { | |
957 | prt, | |
958 | "Cylinder", | |
959 | delay, | |
960 | x3, | |
961 | y3, | |
962 | z3, | |
963 | msh | |
964 | }) | |
965 | end | |
966 | }; | |
967 | ||
968 | Head = { | |
969 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
970 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
971 | prt.Anchored = true | |
972 | prt.CFrame = cframe | |
973 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Head", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
974 | game:GetService("Debris"):AddItem(prt, 10) | |
975 | table.insert(Effects, { | |
976 | prt, | |
977 | "Cylinder", | |
978 | delay, | |
979 | x3, | |
980 | y3, | |
981 | z3, | |
982 | msh | |
983 | }) | |
984 | end | |
985 | }; | |
986 | ||
987 | Wave = { | |
988 | Create = function(brickcolor, cframe, x1, y1, z1, x3, y3, z3, delay) | |
989 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new()) | |
990 | prt.Anchored = true | |
991 | prt.CFrame = cframe | |
992 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "FileMesh", "20329976", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
993 | game:GetService("Debris"):AddItem(prt, 10) | |
994 | table.insert(Effects, { | |
995 | prt, | |
996 | "Cylinder", | |
997 | delay, | |
998 | x3, | |
999 | y3, | |
1000 | z3, | |
1001 | msh | |
1002 | }) | |
1003 | end | |
1004 | }; | |
1005 | ||
1006 | Break = { | |
1007 | Create = function(brickcolor, cframe, x1, y1, z1) | |
1008 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Effect", Vector3.new(0.5, 0.5, 0.5)) | |
1009 | prt.Anchored = true | |
1010 | prt.CFrame = cframe * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
1011 | game:GetService("Debris"):AddItem(prt, 10) | |
1012 | local msh = CFuncs.Mesh.Create("SpecialMesh", prt, "Sphere", "", Vector3.new(0, 0, 0), Vector3.new(x1, y1, z1)) | |
1013 | local num = math.random(10, 50) / 1000 | |
1014 | table.insert(Effects, { | |
1015 | prt, | |
1016 | "Shatter", | |
1017 | num, | |
1018 | prt.CFrame, | |
1019 | math.random() - math.random(), | |
1020 | 0, | |
1021 | math.random(50, 100) / 100 | |
1022 | }) | |
1023 | end | |
1024 | }; | |
1025 | ||
1026 | Elec = { | |
1027 | Create = function(brickcolor, cff, x, y, z) | |
1028 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Part", Vector3.new(1, 1, 1)) | |
1029 | prt.Anchored = true | |
1030 | prt.CFrame = cff * CFrame.new(math.random(-x * 100, x * 100) / 100, math.random(-y * 100, y * 100) / 100, math.random(-z * 100, z * 100) / 100) | |
1031 | prt.CFrame = CFrame.new(prt.Position) | |
1032 | game:GetService("Debris"):AddItem(prt, 10) | |
1033 | xval = math.random() / 9 | |
1034 | yval = math.random() / 9 | |
1035 | zval = math.random() / 9 | |
1036 | msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval)) | |
1037 | eul1 = math.random(-50, 50) | |
1038 | eul2 = math.random(-50, 50) | |
1039 | eul3 = math.random(-50, 50) | |
1040 | euld = CFrame.fromEulerAnglesXYZ(eul1, eul2, eul3) | |
1041 | euld2 = CFrame.fromEulerAnglesXYZ(-eul1, -eul2, -eul3) | |
1042 | table.insert(Effects, { | |
1043 | prt, | |
1044 | "Elec", | |
1045 | .05, | |
1046 | x, | |
1047 | y, | |
1048 | z, | |
1049 | xval, | |
1050 | yval, | |
1051 | zval, | |
1052 | msh, | |
1053 | euld, | |
1054 | euld2 | |
1055 | }) | |
1056 | end | |
1057 | }; | |
1058 | ||
1059 | Elec2 = { | |
1060 | Create = function(brickcolor, cff, x, y, z) | |
1061 | local prt = CFuncs.Part.Create(EffectModel, "Neon", 0, 0, brickcolor, "Part", Vector3.new(1, 1, 1)) | |
1062 | prt.Anchored = true | |
1063 | prt.CFrame = cff * CFrame.new(math.random(-x * 100, x * 100) / 100, math.random(-y * 100, y * 100) / 100, math.random(-z * 100, z * 100) / 100) | |
1064 | prt.CFrame = CFrame.new(prt.Position) | |
1065 | game:GetService("Debris"):AddItem(prt, 10) | |
1066 | xval = math.random() / 7 | |
1067 | yval = math.random() / 7 | |
1068 | zval = math.random() / 7 | |
1069 | msh = CFuncs.Mesh.Create("BlockMesh", prt, "", "", Vector3.new(0, 0, 0), Vector3.new(xval, yval, zval)) | |
1070 | eul1 = math.random(-50, 50) | |
1071 | eul2 = math.random(-50, 50) | |
1072 | eul3 = math.random(-50, 50) | |
1073 | euld = CFrame.fromEulerAnglesXYZ(eul1, eul2, eul3) | |
1074 | euld2 = CFrame.fromEulerAnglesXYZ(-eul1, -eul2, -eul3) | |
1075 | table.insert(Effects, { | |
1076 | prt, | |
1077 | "Elec", | |
1078 | .1, | |
1079 | x, | |
1080 | y, | |
1081 | z, | |
1082 | xval, | |
1083 | yval, | |
1084 | zval, | |
1085 | msh, | |
1086 | euld, | |
1087 | euld2 | |
1088 | }) | |
1089 | end | |
1090 | }; | |
1091 | ||
1092 | Clone = { | |
1093 | - | CFuncs.Sound.Create("429400881", GetTorso(Grabbed), .5, 1) |
1093 | + | |
1094 | for _, v in pairs(Torso.Parent:children()) do | |
1095 | if v.className == "Part" and v.Name ~= "HumanoidRootPart" then | |
1096 | local c = CFuncs.Part.Create(EffectModel, "Neon", 0, .5, BrickColor.new("Bright blue"), "Effect", v.Size) | |
1097 | c.Anchored = true | |
1098 | c.CFrame = v.CFrame | |
1099 | game:GetService("Debris"):AddItem(c, 5) | |
1100 | local cmsh = nil | |
1101 | if v.Name == "Head" then | |
1102 | cmsh = CFuncs.Mesh.Create("SpecialMesh", c, "Head", "", Vector3.new(0, 0, 0), v.Mesh.Scale) | |
1103 | else | |
1104 | cmsh = CFuncs.Mesh.Create("BlockMesh", c, "", "", Vector3.new(0, 0, 0), Vector3.new(1, 1, 1)) | |
1105 | end | |
1106 | table.insert(Effects, { | |
1107 | c, | |
1108 | "Cylinder", | |
1109 | 0.05, | |
1110 | 0.1, | |
1111 | 0.1, | |
1112 | 0.1, | |
1113 | cmsh | |
1114 | }) | |
1115 | end | |
1116 | end | |
1117 | end | |
1118 | }; | |
1119 | ||
1120 | EffectTemplate = { | |
1121 | ||
1122 | }; | |
1123 | } | |
1124 | ||
1125 | function Attackone() | |
1126 | Attack = true | |
1127 | for i = 0, 1, 0.1 do | |
1128 | swait() | |
1129 | PlayAnimationFromTable({ | |
1130 | CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1131 | CFrame.new(0, 1.5, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1132 | CFrame.new(1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1133 | CFrame.new(-1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1134 | CFrame.new(0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1135 | CFrame.new(-0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1136 | }, .3, false) | |
1137 | end | |
1138 | Attack = false | |
1139 | end | |
1140 | ||
1141 | Humanoid.WalkSpeed = 0 | |
1142 | Humanoid.JumpPower = 0 | |
1143 | ||
1144 | --Intro bit | |
1145 | ripntear=Instance.new("Sound", Torso) | |
1146 | ripntear.SoundId = "rbxassetid://791556666" | |
1147 | ripntear.TimePosition = 9.2 | |
1148 | ripntear.Looped = true | |
1149 | ripntear:Play() | |
1150 | if(not game:GetService('RunService'):IsStudio() )then | |
1151 | for i = 0, 15, 0.1 do | |
1152 | swait() | |
1153 | PlayAnimationFromTable({ | |
1154 | CFrame.new(-0, -0.05818367, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1155 | CFrame.new(0, 1.55817556, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1156 | CFrame.new(1.61094332, 0.142581686, 0, 0.984807849, -0.173647985, 0, 0.173647985, 0.984807849, 0, 0, 0, 1) * CFrame.new(0, 0 + .03 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1157 | CFrame.new(-1.61001778, 0.148382559, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849, 0, -0, 0, 1) * CFrame.new(0, 0 + .03 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1158 | CFrame.new(0.593397617, -1.93364203, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1159 | CFrame.new(-0.535535276, -1.93870413, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661, 0, -0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1160 | }, .3, false) | |
1161 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1162 | - | CFuncs.Sound.Create("350906125", Head, 2, 1) |
1162 | + | |
1163 | end | |
1164 | CFuncs.Sound.Create("0", CHandle1, 1, 1) | |
1165 | for i = 0, 3, 0.1 do | |
1166 | swait() | |
1167 | PlayAnimationFromTable({ | |
1168 | CFrame.new(8.69583914e-07, -0.0581835881, 9.53695611e-09, 1.00000954, 1.44541673e-06, -8.33538607e-08, 1.44541673e-06, 1.00000024, -1.63912858e-07, -8.33538607e-08, -1.63912858e-07, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1169 | CFrame.new(-0.116701782, 1.56846416, -0.0424783528, 0.935734272, -0.321394563, 0.145314857, 0.296198726, 0.939692676, 0.17100963, -0.191512048, -0.116977088, 0.974494457) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1170 | CFrame.new(0.817323148, 0.233033627, -0.785861373, 0.185918838, 0.948464036, 0.256631851, -0.054367777, 0.270715863, -0.96112299, -0.981059968, 0.164737463, 0.101896688) * CFrame.new(0, 0 + .1 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1171 | CFrame.new(-0.729675174, 0.474314064, -0.926509023, 0.0858333781, -0.981064856, -0.173649207, -0.0151340002, 0.172986239, -0.984808147, 0.996194661, 0.0871570408, 7.3356756e-07) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1172 | CFrame.new(0.593403578, -1.9336412, 9.73475267e-07, 0.996204436, -0.0871553719, -8.33538607e-08, 0.0871574283, 0.99619478, -1.63912858e-07, -1.08093566e-07, -1.53640599e-07, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1173 | CFrame.new(-0.53555274, -1.93870628, 5.9665399e-07, 0.996204019, 0.087158218, -8.33538607e-08, -0.0871545449, 0.996194959, -1.63912858e-07, -6.140138e-08, -1.69793566e-07, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1174 | }, .2, false) | |
1175 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1176 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1177 | end | |
1178 | CFuncs.Sound.Create("0", CHandle2, 1, .9) | |
1179 | for i = 0, 3, 0.1 do | |
1180 | swait() | |
1181 | PlayAnimationFromTable({ | |
1182 | CFrame.new(-0, -0.05818367, -0, 1, 0, 0, 0, 1, 0, 0, 0, 1) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1183 | CFrame.new(5.96046448e-07, 1.5581758, 8.94069672e-08, 0.813797593, 0.296197921, -0.500000417, -0.342019856, 0.939692736, 1.5155652e-07, 0.469846755, 0.171009943, 0.866025269) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1184 | CFrame.new(0.817315936, 0.23303245, -0.785861254, 0.185915083, 0.891520321, -0.41307044, -0.0543710254, -0.410421133, -0.91027379, -0.981060445, 0.19169265, -0.0278306026) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1185 | CFrame.new(-0.895561576, 0.130057484, -0.917444825, 0.08583197, -0.981286108, 0.172367394, -0.0151339946, -0.174270019, -0.98458159, 0.996194661, 0.0818999708, -0.029808715) * CFrame.new(0, 0 + .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1186 | CFrame.new(0.593397737, -1.93364227, 0, 0.996194661, -0.087155968, 0, 0.087155968, 0.996194661, 0, 0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1187 | CFrame.new(-0.535535693, -1.93870425, 0, 0.996194661, 0.087155968, 0, -0.087155968, 0.996194661, 0, -0, 0, 1) * CFrame.new(0, 0 - .05 * math.cos(Sine/20), 0) * CFrame.Angles(0, 0, 0), | |
1188 | }, .2, false) | |
1189 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1190 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1191 | end | |
1192 | ||
1193 | for i = 0, 2, 0.1 do | |
1194 | swait() | |
1195 | PlayAnimationFromTable({ | |
1196 | CFrame.new(1.18533473e-15, -0.0581837296, 0, 1, -2.03722706e-14, -1.03739239e-11, -2.03722706e-14, 1, 0, -1.03739239e-11, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1197 | CFrame.new(-0.044387538, 1.57391107, -0.046982944, 0.999063015, 0.000371292757, -0.043279916, 0.00926879048, 0.974929214, 0.222322285, 0.0422773995, -0.222515106, 0.974012196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1198 | CFrame.new(0.961016774, 0.457461864, -0.771075964, 0.185922489, 0.633421421, -0.751139224, -0.0543839224, -0.756662488, -0.651540041, -0.9810583, 0.161985859, -0.106232598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1199 | CFrame.new(-0.729675055, 0.474317312, -0.926513851, 0.230951563, -0.530287445, 0.815755367, 0.197466299, -0.795426488, -0.572978079, 0.95271641, 0.293414325, -0.0789910555) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1200 | CFrame.new(0.593410492, -1.93365169, 2.15977366e-07, 0.99619478, -0.0871552229, 3.30831256e-08, 0.0871552229, 0.99619472, -1.44655488e-09, -3.28516023e-08, 4.32621761e-09, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1201 | CFrame.new(-0.535539329, -1.93871331, -2.33122776e-07, 0.99619472, 0.0871552229, 1.4071702e-08, -0.0871552229, 0.99619472, -1.1611867e-09, -1.41399426e-08, -7.14521775e-11, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1202 | }, .3, false) | |
1203 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1204 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1205 | end | |
1206 | CFuncs.Sound.Create("2441069502", Torso, 5, .8) | |
1207 | for i = 0, 1, 0.1 do | |
1208 | swait() | |
1209 | PlayAnimationFromTable({ | |
1210 | CFrame.new(1.18533473e-15, -0.0581837296, 0, 1, -2.03722706e-14, -1.03739239e-11, -2.03722706e-14, 1, 0, -1.03739239e-11, 0, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1211 | CFrame.new(-0.044387538, 1.57391107, -0.046982944, 0.999063015, 0.000371292757, -0.043279916, 0.00926879048, 0.974929214, 0.222322285, 0.0422773995, -0.222515106, 0.974012196) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1212 | CFrame.new(0.961016774, 0.457461864, -0.771075964, 0.185922489, 0.633421421, -0.751139224, -0.0543839224, -0.756662488, -0.651540041, -0.9810583, 0.161985859, -0.106232598) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1213 | CFrame.new(-0.729675055, 0.474317312, -0.926513851, 0.230951563, -0.530287445, 0.815755367, 0.197466299, -0.795426488, -0.572978079, 0.95271641, 0.293414325, -0.0789910555) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1214 | CFrame.new(0.593410492, -1.93365169, 2.15977366e-07, 0.99619478, -0.0871552229, 3.30831256e-08, 0.0871552229, 0.99619472, -1.44655488e-09, -3.28516023e-08, 4.32621761e-09, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1215 | CFrame.new(-0.535539329, -1.93871331, -2.33122776e-07, 0.99619472, 0.0871552229, 1.4071702e-08, -0.0871552229, 0.99619472, -1.1611867e-09, -1.41399426e-08, -7.14521775e-11, 1) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1216 | }, .3, false) | |
1217 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1218 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, 0, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1219 | end | |
1220 | ||
1221 | for i = 0, 20, 0.1 do | |
1222 | swait() | |
1223 | PlayAnimationFromTable({ | |
1224 | CFrame.new(4.59512179e-08, -0.0581841692, -5.25265932e-07, 1, -4.84756754e-07, -7.39878601e-07, 7.8975097e-07, 0.866025388, 0.500000298, 3.98364676e-07, -0.500000298, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1225 | CFrame.new(-0.0125848781, 1.5465194, 0.0267901421, 0.999062896, 0.00414320733, -0.0430841409, -0.0131131858, 0.977599382, -0.210065722, 0.0412486866, 0.210433811, 0.976737618) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1226 | CFrame.new(1.82518578, 0.223591149, 0.169353649, 0.508977115, -0.858815074, 0.0581299476, 0.772701919, 0.426095456, -0.47050482, 0.379307687, 0.284393311, 0.880480766) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1227 | CFrame.new(-1.73227763, 0.286245912, 0.248502895, 0.480647117, 0.87672931, 0.0180043653, -0.732817888, 0.412857741, -0.540857434, -0.481618822, 0.246767595, 0.84092176) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1228 | CFrame.new(0.681391835, -1.88535416, -0.586378455, 0.996194661, -0.087155968, 0, 0.0754792839, 0.862729847, -0.500000238, 0.0435780063, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1229 | CFrame.new(-0.606260061, -1.88110352, -0.606883287, 0.996194661, 0.0871560127, 4.12446752e-07, -0.0754791126, 0.862729847, -0.500000298, -0.04357839, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1230 | }, .3, false) | |
1231 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), .3) | |
1232 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), .3) | |
1233 | end | |
1234 | ||
1235 | end | |
1236 | ||
1237 | Humanoid.WalkSpeed = 35 | |
1238 | Humanoid.JumpPower = 70 | |
1239 | ||
1240 | --Start neccessary functions here | |
1241 | ||
1242 | function TraceThing(COLOR,PLACE2) -- thanks shack dadi | |
1243 | local FADE = EffectModel | |
1244 | for _, c in pairs(Character:GetChildren()) do | |
1245 | if c:IsA'BasePart' and c ~= RootPart then | |
1246 | local DIST = (c.Position-PLACE2).magnitude | |
1247 | local FADER = c:Clone() | |
1248 | FADER.Color = COLOR | |
1249 | FADER.Size = Vector3.new(FADER.Size.X,FADER.Size.Y,DIST) | |
1250 | FADER.CFrame = CFrame.new(c.Position,PLACE2) * CFrame.new(0,0,-DIST/2) | |
1251 | FADER.Parent = FADE | |
1252 | FADER.Anchored = true | |
1253 | FADER.Transparency = 0.25 | |
1254 | FADER:BreakJoints() | |
1255 | FADER.Material = "Glass" | |
1256 | FADER.CanCollide = false | |
1257 | FADER:ClearAllChildren() | |
1258 | ||
1259 | if FADER.Name == "Head" then | |
1260 | FADER.Size = Vector3.new(1,1,1) | |
1261 | end | |
1262 | table.insert(Effects,{FADER,'Disappear',.01}) | |
1263 | end | |
1264 | end | |
1265 | ||
1266 | end | |
1267 | ||
1268 | ||
1269 | ||
1270 | function Shadowdash() | |
1271 | local target = Mouse.Target; | |
1272 | if(target and target.Parent and GetTorso(target.Parent))then | |
1273 | local torso = GetTorso(target.Parent) | |
1274 | target = target.Parent; | |
1275 | ||
1276 | Attack = true | |
1277 | for _, c in pairs(Character:children()) do | |
1278 | if c.ClassName == "Part" and c ~= RootPart then | |
1279 | c.Transparency = 1 | |
1280 | elseif(c:FindFirstChild'Handle')then | |
1281 | c.Handle.Transparency = 1 | |
1282 | end | |
1283 | end | |
1284 | Claw1.Transparency = 1 | |
1285 | Claw2.Transparency = 1 | |
1286 | ||
1287 | ||
1288 | TraceThing(Color3.new(0,0,0),torso.Position) | |
1289 | ||
1290 | for i = 0, 1, 0.1 do | |
1291 | swait() | |
1292 | PlayAnimationFromTable({ | |
1293 | CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1294 | CFrame.new(0, 1.5, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1295 | CFrame.new(1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1296 | CFrame.new(-1.5, 0, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1297 | CFrame.new(0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1298 | CFrame.new(-0.5, -2, 0) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1299 | }, .3, false) | |
1300 | end | |
1301 | Attack = false | |
1302 | end | |
1303 | end | |
1304 | ||
1305 | function bulgelocated() | |
1306 | Attack = true | |
1307 | for i = 0, 1, 0.1 do | |
1308 | swait() | |
1309 | PlayAnimationFromTable({ | |
1310 | CFrame.new(-1.08663478e-07, -0.206274316, -0.136812046, 1.00000417, 3.29175322e-07, 4.04612052e-07, 7.4505806e-07, 0.642787039, 0.766044915, -8.52160156e-08, -0.766045034, 0.64278692) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1311 | CFrame.new(0, 1.55548012, 0.123723119, 1, 0, 0, 0, 0.965925813, -0.258819401, 0, 0.258819401, 0.965925813) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1312 | CFrame.new(1.57330072, 0.258584112, 0.288092852, 0.984807849, -0.0996005088, -0.142243534, 0.157378256, 0.858128428, 0.488720447, 0.0733864158, -0.503681719, 0.860766649) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1313 | CFrame.new(-1.59246635, 0.145089045, 0.275537103, 0.984809101, 0.0995962769, 0.142238334, -0.157372132, 0.85812825, 0.488722742, -0.0733837485, -0.503682971, 0.860766172) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1314 | CFrame.new(0.593403816, -1.75248098, -0.817190289, 0.996194661, -0.0841870308, -0.0225579366, 0.0789908618, 0.981476307, -0.174541742, 0.0368342325, 0.172095656, 0.984391332) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1315 | CFrame.new(-0.53553468, -1.75706613, -0.81932497, 0.996194899, 0.0858291388, 0.0151346531, -0.0789874196, 0.96252948, -0.259418607, -0.0368332267, 0.257236063, 0.965646386) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1316 | }, .3, false) | |
1317 | end | |
1318 | local Grabbed,Root,RootWeld,GrabWeld; | |
1319 | Torso.Velocity = RootPart.CFrame.lookVector * 150 | |
1320 | for i = 0, 3, 0.1 do | |
1321 | swait() | |
1322 | if(not Grabbed)then | |
1323 | Grabbed = FindNearestTorso(Torso.Position,5) | |
1324 | if(Grabbed)then | |
1325 | print'owo' | |
1326 | local torso = Grabbed | |
1327 | Grabbed=Grabbed.Parent | |
1328 | local Root = Grabbed:FindFirstChild'HumanoidRootPart' | |
1329 | local RootWeld | |
1330 | GrabWeld = Create("Weld"){Parent=torso,Part0=torso,Part1=Torso,C0=CFrame.new(0, -.8, -2) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(0),0)} | |
1331 | --GrabWeld.C0 = clerp(GrabWeld.C0, CFrame.new(0, -.8, 2) * CFrame.Angles(math.rad(40), math.rad(0), math.rad(0)), 1) | |
1332 | if(Root)then | |
1333 | Root.Parent = nil | |
1334 | RootWeld = (function() | |
1335 | for _,v in next, Grabbed:GetDescendants() do | |
1336 | if(v:IsA'JointInstance' and (v.Part0 == Root or v.Part1 == Root))then | |
1337 | return {v,v.Part0,v.Part1,v.Parent} | |
1338 | end; | |
1339 | end | |
1340 | end)() | |
1341 | ||
1342 | end | |
1343 | end | |
1344 | end | |
1345 | PlayAnimationFromTable({ | |
1346 | CFrame.new(-1.73916547e-07, -0.333895028, 0.0282058977, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1347 | CFrame.new(0, 1.45356226, 0.517724574, 1, 0, 0, 0, 0.422620863, -0.906306684, 0, 0.906306684, 0.422620863) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1348 | CFrame.new(1.34678912, 1.80891263, 0.00318957865, -0.984810352, 0.142212093, -0.0996212065, -0.157350063, -0.973534882, 0.165743217, -0.0734140277, 0.178901002, 0.981124341) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1349 | CFrame.new(-1.35190487, 1.71961701, 0.127221942, -0.973497868, -0.150360048, 0.172318682, 0.163750991, -0.984274864, 0.0662473366, 0.159647986, 0.0927089974, 0.982811153) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1350 | CFrame.new(0.593404055, -1.7524848, -0.817189932, 0.996194661, -0.0841871127, -0.0225576442, 0.0789909735, 0.981476247, -0.174542084, 0.0368339866, 0.172096044, 0.984391332) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1351 | CFrame.new(-0.488922983, -1.54355264, -0.0163928568, 0.996195018, 0.0667625517, 0.0560212247, -0.0789870024, 0.963284433, 0.256601483, -0.0368329994, -0.260050058, 0.964892447) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1352 | }, .2, false) | |
1353 | end | |
1354 | if(Grabbed)then | |
1355 | Humanoid.AutoRotate = false | |
1356 | Humanoid.WalkSpeed = 0 | |
1357 | Humanoid.JumpPower = 0 | |
1358 | local torso = GetTorso(Grabbed) | |
1359 | repeat swait() local hit, pos = RayCastWithList(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, {Character,Grabbed}) until hit | |
1360 | ||
1361 | Torso.Velocity = RootPart.CFrame.upVector * 0 | |
1362 | RootPart.Anchored = true | |
1363 | ||
1364 | for i = 0, 4, 0.1 do | |
1365 | swait() | |
1366 | GrabWeld.C0 = GrabWeld.C0:lerp(CFrame.new(0, -.8, -1.4) * CFrame.Angles(math.rad(0), math.rad(180), math.rad(0),0),.2) | |
1367 | PlayAnimationFromTable({ | |
1368 | CFrame.new(-9.70123892e-07, -1.45215521, -0.52420032, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1369 | CFrame.new(0, 1.73141003, 0.08559376, 1, 0, 0, 0, 0.906306684, -0.422620863, 0, 0.422620863, 0.906306684) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1370 | CFrame.new(1.52372789, 0.87177819, -0.912220836, -0.984809101, -0.0734127834, -0.157358661, -0.150361016, -0.0927229673, 0.984273374, -0.086849004, 0.99298197, 0.0802759901) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1371 | CFrame.new(-1.61212981, 0.866454244, -0.944487214, -0.973499656, 0.158554643, 0.164799243, 0.149206936, -0.105748929, 0.983134985, 0.17330794, 0.981670916, 0.0792890862) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1372 | CFrame.new(0.489993542, -1.28771627, -1.02503252, 0.999861896, -0.016504975, -0.0019627281, 0.0164339989, 0.999355972, -0.0319016613, 0.00248799985, 0.0318650007, 0.999489129) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1373 | CFrame.new(-0.522175074, -1.35971284, -1.0364182, 0.998982906, -0.0116342641, 0.0435651727, 0.0117169991, 0.999930024, -0.00164423091, -0.043542996, 0.0021530115, 0.999049246) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1374 | }, .2, false) | |
1375 | end | |
1376 | ||
1377 | GetTorso(Grabbed).Anchored = true | |
1378 | --if(Root)then Root.Parent = Grabbed if(RootWeld)then RootWeld[1].Parent = RootWeld[4] RootWeld[1].Part0 = RootWeld[2] RootWeld[1].Part1 = RootWeld[3] end end | |
1379 | if(GrabWeld)then GrabWeld:destroy() end | |
1380 | for i = 0, 2, 0.1 do | |
1381 | swait() | |
1382 | PlayAnimationFromTable({ | |
1383 | CFrame.new(-9.70122869e-07, -1.4521533, -0.524203837, 1.00000417, 3.2917589e-07, 4.04611598e-07, 7.4505806e-07, 0.642788112, 0.76604408, -8.52160156e-08, -0.766044199, 0.642787993) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1384 | CFrame.new(0, 1.57221174, 0.216903687, 1, 0, 0, 0, 0.906307459, -0.422618926, 0, 0.422618926, 0.906307459) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1385 | CFrame.new(1.52372789, 0.081455946, -1.25917006, -0.984809101, -0.0734127834, -0.157358661, -0.171008676, 0.567247033, 0.805597305, 0.0301200971, 0.820269227, -0.571184218) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1386 | CFrame.new(-1.40030229, 0.0340056717, -1.28360021, -0.994232476, 0.0721763074, 0.0793256387, 0.106234752, 0.561393857, 0.820701718, 0.0147023089, 0.824395418, -0.565823495) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1387 | CFrame.new(0.489993542, -1.64532626, 0.0425084829, 0.999861896, -0.016504975, -0.0019627281, 0.0141884256, 0.786033213, 0.618021607, -0.00865766034, -0.617964089, 0.7861588) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1388 | CFrame.new(-0.522175074, -1.70779729, 0.0800650716, 0.998982906, -0.0116342641, 0.0435651727, -0.0190131795, 0.767374456, 0.640917361, -0.0408874042, -0.641093731, 0.76637274) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1389 | }, .2, false) | |
1390 | end | |
1391 | local gag=Instance.new("Sound", Torso) | |
1392 | gag.SoundId = "rbxassetid://418658161" | |
1393 | gag.TimePosition = 2.5 | |
1394 | gag.Pitch = .7 | |
1395 | gag:Play() | |
1396 | CFuncs.Sound.Create("2441069502", GetTorso(Grabbed), .5, 1) | |
1397 | local gib=CFuncs.Part.Create(Torso, "Plastic", 0, .9, BrickColor.new("Crimson"), "gib", Vector3.new(.8,.1,.1)) | |
1398 | gib.Anchored=true | |
1399 | gib.CanCollide=true | |
1400 | local smonk2 = Instance.new("ParticleEmitter",gib) | |
1401 | smonk2.LightEmission = .1 | |
1402 | smonk2.Size = NumberSequence.new(0.2) | |
1403 | smonk2.Texture = "http://www.roblox.com/asset/?ID=256293532" | |
1404 | aaa2 = NumberSequence.new({NumberSequenceKeypoint.new(0, .6),NumberSequenceKeypoint.new(1, 1)}) | |
1405 | bbb2 = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)}) | |
1406 | smonk2.Transparency = bbb2 | |
1407 | smonk2.Size = aaa2 | |
1408 | smonk2.ZOffset = 0 | |
1409 | smonk2.Acceleration = Vector3.new(0, 5, 0) | |
1410 | smonk2.LockedToPart = false | |
1411 | smonk2.EmissionDirection = "Back" | |
1412 | smonk2.Lifetime = NumberRange.new(.2, .5) | |
1413 | smonk2.Rate = 50 | |
1414 | smonk2.Rotation = NumberRange.new(-50, 50) | |
1415 | smonk2.RotSpeed = NumberRange.new(-50, 50) | |
1416 | smonk2.Speed = NumberRange.new(5) | |
1417 | smonk2.VelocitySpread = 50 | |
1418 | smonk2.Enabled=true | |
1419 | game:GetService("Debris"):AddItem(smonk2, 1) | |
1420 | local smonk = Instance.new("ParticleEmitter",gib) | |
1421 | smonk.LightEmission = .1 | |
1422 | smonk.Size = NumberSequence.new(0.2) | |
1423 | smonk.Texture = "http://www.roblox.com/asset/?ID=256293532" | |
1424 | aaa = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(1, 1)}) | |
1425 | bbb = NumberSequence.new({NumberSequenceKeypoint.new(0, .5),NumberSequenceKeypoint.new(0.0636, 0), NumberSequenceKeypoint.new(1, 1)}) | |
1426 | smonk.Transparency = bbb | |
1427 | smonk.Size = aaa | |
1428 | smonk.ZOffset = 0 | |
1429 | smonk.Acceleration = Vector3.new(0, 0, 0) | |
1430 | smonk.LockedToPart = false | |
1431 | smonk.EmissionDirection = "Back" | |
1432 | smonk.Lifetime = NumberRange.new(.5, .5) | |
1433 | smonk.Rate = 50 | |
1434 | smonk.Rotation = NumberRange.new(-50, 50) | |
1435 | smonk.RotSpeed = NumberRange.new(-50, 50) | |
1436 | smonk.Speed = NumberRange.new(0) | |
1437 | smonk.VelocitySpread = 0 | |
1438 | smonk.Enabled=true | |
1439 | for i = 0, 3, 0.1 do | |
1440 | swait() | |
1441 | PlayAnimationFromTable({ | |
1442 | CFrame.new(-1.39723795e-06, -2.26530323, -0.906234562, 1.00000417, -7.91624188e-09, 5.21540642e-07, 7.4505806e-07, 6.70552254e-08, 1, -8.52160156e-08, -1, -7.63684511e-08) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1443 | CFrame.new(-0.1869829, 1.45231867, -0.342143714, 0.766043186, -0.556672871, -0.321392655, 0.582564116, 0.812565804, -0.0188681856, 0.271656066, -0.172777966, 0.946758091) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1444 | CFrame.new(1.54931295, 0.522058249, -0.445071995, -0.984809101, -0.0734127834, -0.157358661, -0.150361016, -0.0927229673, 0.984273374, -0.086849004, 0.99298197, 0.0802759901) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1445 | CFrame.new(-1.42533684, 0.503732979, -0.492479533, -0.994232476, 0.0721763074, 0.0793256387, 0.0719300359, -0.0998590589, 0.992398202, 0.0795490369, 0.992380381, 0.0940914676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1446 | CFrame.new(0.490656108, -1.65896344, -0.550197124, 0.999861896, -0.016504975, -0.0019627281, 0.0164339989, 0.999355972, -0.0319016613, 0.00248799985, 0.0318650007, 0.999489129) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1447 | CFrame.new(-0.537289202, -1.74116123, -0.569836617, 0.998982906, -0.0116342641, 0.0435651727, 0.0117169991, 0.999930024, -0.00164423091, -0.043542996, 0.0021530115, 0.999049246) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1448 | }, .2, false) | |
1449 | gib.CFrame = Head.CFrame * CFrame.new(0,-.2,-.65) | |
1450 | end | |
1451 | Grabbed:FindFirstChild'Head':BreakJoints() | |
1452 | for i = 0, 2, 0.1 do | |
1453 | swait() | |
1454 | PlayAnimationFromTable({ | |
1455 | CFrame.new(0.0646195412, -2.14434299, -0.804755151, 0.866028905, -6.39425798e-06, -0.500002384, 0.38303867, 0.642760158, 0.663431108, 0.321375936, -0.766067684, 0.55664885) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1456 | CFrame.new(-0.165143013, 1.56247377, -0.141641736, 0.69066757, -0.423842132, -0.585949183, 0.329746336, 0.905689478, -0.266446948, 0.643619418, -0.00918829441, 0.765290678) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1457 | CFrame.new(0.990657806, 0.313646466, -1.20178688, -0.837813437, 0.346571505, -0.421849668, -0.171003163, 0.567217588, 0.80561924, 0.518485129, 0.747096121, -0.4159576) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1458 | CFrame.new(-1.71981192, 0.0693554878, 0.00111401081, -0.853676558, 0.474718243, -0.214194372, 0.106240898, 0.56136322, 0.820721865, 0.509852469, 0.677874684, -0.529656947) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1459 | CFrame.new(0.612413466, -1.6245271, 0.208686799, 0.861576974, -0.323257267, 0.391395003, 0.014182019, 0.786055923, 0.617992878, -0.507428944, -0.526897609, 0.681832016) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1460 | CFrame.new(-0.291646302, -1.85773659, 0.554903328, 0.904961646, -0.330603123, 0.267854929, 0.0925588906, 0.767398, 0.634455264, -0.415304095, -0.549365103, 0.725065827) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1461 | }, .3, false) | |
1462 | gib.CFrame = Head.CFrame * CFrame.new(0,-.2,-.65) | |
1463 | end | |
1464 | gag:Destroy() | |
1465 | CFuncs.Sound.Create("987746828", Head, 2, 1) | |
1466 | gib.Velocity = Head.CFrame.lookVector * 30 | |
1467 | gib.Anchored=false | |
1468 | game:GetService("Debris"):AddItem(gib, 2) | |
1469 | for i = 0, 2, 0.1 do | |
1470 | swait() | |
1471 | PlayAnimationFromTable({ | |
1472 | CFrame.new(0.0646212101, -2.14434872, -0.804751337, 0.852872849, 0.150377154, -0.500003099, 0.265605658, 0.699510276, 0.663429797, 0.449520022, -0.698622048, 0.556649804) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1473 | CFrame.new(-0.0920849219, 1.52588749, -0.308856517, 0.622915268, -0.232293427, -0.747005165, 0.444671035, 0.890768468, 0.0938047767, 0.643618345, -0.390603781, 0.658167362) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1474 | CFrame.new(1.24259305, 0.193697155, -0.882544816, -0.79538995, 0.0908054039, -0.599257469, -0.313889712, 0.784080684, 0.5354352, 0.5184865, 0.613980532, -0.595146894) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1475 | CFrame.new(-1.6633426, -0.157583565, 0.0787617415, -0.859155536, 0.370026827, -0.353457391, -0.0436116196, 0.63526994, 0.771057844, 0.509853005, 0.677873433, -0.529658079) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1476 | CFrame.new(0.885205626, -1.49350178, 0.208688766, 0.846024811, -0.4548437, 0.278135866, 0.163576931, 0.717979968, 0.676570356, -0.507429719, -0.526898563, 0.681830764) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1477 | CFrame.new(0.0353773236, -1.88015628, 0.554906487, 0.875140369, -0.458838046, 0.15361397, 0.248296916, 0.698329866, 0.671330154, -0.415305018, -0.549366057, 0.725064695) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1478 | }, .3, false) | |
1479 | end | |
1480 | torso.Anchored = false | |
1481 | end | |
1482 | Humanoid.WalkSpeed = 35 | |
1483 | Humanoid.JumpPower = 70 | |
1484 | Humanoid.AutoRotate = true | |
1485 | Attack = false | |
1486 | end | |
1487 | ||
1488 | ||
1489 | ||
1490 | function backhop() | |
1491 | Attack = true | |
1492 | RootPart.Anchored = false | |
1493 | CFuncs.Sound.Create("158149887", Torso, 1, 1) | |
1494 | Torso.Velocity=RootPart.CFrame.upVector*130 | |
1495 | for i = 0, .5, 0.1 do | |
1496 | swait() | |
1497 | PlayAnimationFromTable({ | |
1498 | CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1499 | CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1500 | CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1501 | CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1502 | CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1503 | CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1504 | }, .3, false) | |
1505 | end | |
1506 | Torso.Velocity=RootPart.CFrame.lookVector*-100 | |
1507 | for i = 0, .5, 0.1 do | |
1508 | swait() | |
1509 | PlayAnimationFromTable({ | |
1510 | CFrame.new(-0.0724115372, 0.127895057, 0.313171744, 1, 0, 0, 0, 0.984807849, 0.173647985, 0, -0.173647985, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1511 | CFrame.new(0.0169060901, 1.6077503, -0.180746168, 0.995960236, -0.0868240073, -0.0229110774, 0.089483425, 0.938373208, 0.333839238, -0.00748612173, -0.334540784, 0.94235158) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1512 | CFrame.new(1.70837259, 0.360651702, -0.922262371, 0.97732687, -0.133022964, 0.16473335, 0.196574748, 0.280932844, -0.939380288, 0.0786801279, 0.95046401, 0.300712109) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1513 | CFrame.new(-1.48861361, 0.317329109, -0.925790071, 0.994410336, -0.000923748419, -0.105581462, -0.100659929, 0.293561995, -0.950625718, 0.0318728462, 0.955939651, 0.291828096) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1514 | CFrame.new(0.604445279, -1.94474173, -0.43701914, 0.94886601, -0.0119064255, -0.315454632, -0.0935085714, 0.943841219, -0.316891491, 0.301512092, 0.330185235, 0.894465506) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1515 | CFrame.new(-0.577895403, -1.96714401, -0.475817055, 0.982055664, -0.0277231932, 0.186542824, 0.0885364786, 0.941134036, -0.326233506, -0.166517526, 0.336895287, 0.926700354) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1516 | }, .4, false) | |
1517 | end | |
1518 | Attack = false | |
1519 | end | |
1520 | ||
1521 | function righthop() | |
1522 | Attack = true | |
1523 | CFuncs.Sound.Create("158149887", Torso, 1, 1) | |
1524 | Humanoid.Jump = true | |
1525 | Torso.Velocity=RootPart.CFrame.upVector*130 | |
1526 | for i = 0, .5, 0.1 do | |
1527 | swait() | |
1528 | PlayAnimationFromTable({ | |
1529 | CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1530 | CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1531 | CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1532 | CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1533 | CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1534 | CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1535 | }, .3, false) | |
1536 | end | |
1537 | Torso.Velocity=RootPart.CFrame.rightVector*100 | |
1538 | for i = 0, .5, 0.1 do | |
1539 | swait() | |
1540 | PlayAnimationFromTable({ | |
1541 | CFrame.new(0.708232701, 0.127894983, 0.246774122, 0.76604414, -0.111618884, 0.633022666, 0, 0.984807849, 0.173648044, -0.642788053, -0.13302207, 0.754406214) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1542 | CFrame.new(0.0324593484, 1.43977821, -0.119624585, 0.995960355, -0.0868238062, -0.0229113102, 0.0894833133, 0.938373625, 0.333838284, -0.00748568773, -0.334539831, 0.942351937) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1543 | CFrame.new(1.69410944, 0.329396009, -0.667013586, 0.977326989, -0.133022755, 0.164733544, 0.196574897, 0.280932605, -0.939380229, 0.0786799788, 0.95046401, 0.30071193) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1544 | CFrame.new(-1.50714529, 0.0157378055, -0.431941032, 0.884520769, 0.235685706, -0.402585804, -0.362369925, 0.890611291, -0.274772465, 0.29378742, 0.388926923, 0.873169541) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1545 | CFrame.new(0.618915975, -1.85825384, -0.515439391, 0.98480773, 0.173648864, -1.81794167e-06, -0.17101045, 0.969846725, 0.173646331, 0.0301553011, -0.171007901, 0.984808087) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1546 | CFrame.new(-0.523646474, -1.39458823, -0.171092927, 0.939692676, 0.342020273, 3.57627869e-07, -0.262003183, 0.719847083, 0.642786682, 0.219845772, -0.604022026, 0.766045213) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1547 | }, .4, false) | |
1548 | end | |
1549 | Attack = false | |
1550 | end | |
1551 | ||
1552 | ||
1553 | function lefthop() | |
1554 | Attack = true | |
1555 | Humanoid.Jump = true | |
1556 | CFuncs.Sound.Create("158149887", Torso, 1, 1) | |
1557 | Torso.Velocity=RootPart.CFrame.upVector*130 | |
1558 | for i = 0, .5, 0.1 do | |
1559 | swait() | |
1560 | PlayAnimationFromTable({ | |
1561 | CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1562 | CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1563 | CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1564 | CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1565 | CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1566 | CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1567 | }, .3, false) | |
1568 | end | |
1569 | Torso.Velocity=RootPart.CFrame.rightVector*-100 | |
1570 | for i = 0, .5, 0.1 do | |
1571 | swait() | |
1572 | PlayAnimationFromTable({ | |
1573 | CFrame.new(-0.0850991905, 0.127894506, -0.50492847, 0.866025388, 0.0868241936, -0.492404073, 0, 0.98480773, 0.173648342, 0.500000238, -0.150383845, 0.852868438) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1574 | CFrame.new(0.0324628651, 1.43977714, -0.119621098, 0.928060651, -0.0868241191, -0.362167478, 0.198266238, 0.938373506, 0.283100247, 0.315268338, -0.334539741, 0.888081789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1575 | CFrame.new(1.82837343, 0.425938904, -0.29435727, 0.642787039, -0.663414657, 0.383022308, 0.754407167, 0.635036588, -0.166127652, -0.133021653, 0.395739436, 0.908677995) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1576 | CFrame.new(-0.822531939, 0.843190134, -1.47252464, 0.884521008, -0.355543315, -0.30201298, -0.362369865, -0.115946069, -0.924794376, 0.293787181, 0.927440405, -0.231394917) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1577 | CFrame.new(0.63746208, -1.78279781, -0.693231404, 0.984807849, -0.173648208, -1.1920929e-07, 0.171010107, 0.969846427, 0.173647493, -0.0301534832, -0.171009362, 0.984807909) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1578 | CFrame.new(-0.471737981, -1.40906096, -0.158949912, 1.00000012, 7.15255737e-07, -5.96046448e-07, -1.56462193e-07, 0.766044557, 0.642787457, 8.64267349e-07, -0.642787457, 0.766044617) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1579 | }, .4, false) | |
1580 | end | |
1581 | Attack = false | |
1582 | end | |
1583 | ||
1584 | ||
1585 | Mouse.KeyDown:connect(function(Key) | |
1586 | Key = Key:lower() | |
1587 | if Attack == false and Key == 'z' then | |
1588 | bulgelocated() | |
1589 | elseif Attack == false and Key == 'v' then | |
1590 | Shadowdash() | |
1591 | ||
1592 | elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit2 ~= nil then | |
1593 | backhop() | |
1594 | elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit4 ~= nil then | |
1595 | righthop() | |
1596 | elseif UIS:IsKeyDown(Enum.KeyCode.Space) and Attack == false and hit3 ~= nil then | |
1597 | lefthop() | |
1598 | end | |
1599 | end) | |
1600 | ||
1601 | ||
1602 | ||
1603 | ||
1604 | while true do | |
1605 | swait() | |
1606 | for i, v in pairs(Character:GetChildren()) do | |
1607 | if v:IsA("Part") then | |
1608 | v.Material = "SmoothPlastic" | |
1609 | elseif v:IsA("Accessory") then | |
1610 | v:WaitForChild("Handle").Material = "SmoothPlastic" | |
1611 | end | |
1612 | end | |
1613 | for i, v in pairs(Character:GetChildren()) do | |
1614 | if v:IsA'Model' then | |
1615 | for _, c in pairs(v:GetChildren()) do | |
1616 | if c:IsA'Part' then | |
1617 | c.CustomPhysicalProperties = PhysicalProperties.new(0.001, 0.001, 0.001, 0.001, 0.001) | |
1618 | end | |
1619 | end | |
1620 | end | |
1621 | end | |
1622 | TorsoVelocity = (RootPart.Velocity * Vector3.new(1, 0, 1)).magnitude | |
1623 | Velocity = RootPart.Velocity.y | |
1624 | hit2, pos2 = RayCast(RootPart.Position, RootPart.CFrame.lookVector, 2.5, Character) | |
1625 | hit3, pos3 = RayCast(RootPart.Position, RootPart.CFrame.rightVector, 2.5, Character) | |
1626 | hit4, pos4 = RayCast(RootPart.Position, RootPart.CFrame.rightVector*-1, 2.5, Character) | |
1627 | local hit, pos = RayCast(RootPart.Position, (CFrame.new(RootPart.Position, RootPart.Position - Vector3.new(0, 1, 0))).lookVector, 4, Character) | |
1628 | if RootPart.Velocity.y > 1 and hit == nil then | |
1629 | Anim = "Jump" | |
1630 | if Attack == false then | |
1631 | Change = 1 | |
1632 | PlayAnimationFromTable({ | |
1633 | CFrame.new(-0, -1.01481628, -8.04662704e-07, 1, 0, 0, 0, 0.866025686, 0.499999642, -0, -0.499999642, 0.866025686) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1634 | CFrame.new(0, 1.45637476, -0.213752031, 1, 0, 0, 0, 0.939692676, 0.342020601, 0, -0.342020601, 0.939692676) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1635 | CFrame.new(1.80887365, 0.563777864, 0.393151999, 0.642787039, -0.766044915, -1.2109125e-06, 0.754407167, 0.633021533, 0.173648313, -0.133021653, -0.111619815, 0.984807789) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1636 | CFrame.new(-1.67181289, 0.594474256, -0.03263852, 0.499999285, 0.866025865, 1.98491279e-07, -0.750001073, 0.433012605, -0.499998599, -0.43301177, 0.249998808, 0.866026282) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1637 | CFrame.new(0.5, -1.80666828, -0.689023316, 1, 0, 0, 0, 0.984807849, 0.173648134, 0, -0.173648164, 0.984807849) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1638 | CFrame.new(-0.5, -1.42673647, -0.144118369, 1, 0, 0, 0, 0.766044736, 0.642787457, 0, -0.642787457, 0.766044736) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1639 | }, .1, false) | |
1640 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1641 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1642 | end | |
1643 | elseif RootPart.Velocity.y < -1 and hit == nil then | |
1644 | Anim = "Fall" | |
1645 | if Attack == false then | |
1646 | PlayAnimationFromTable({ | |
1647 | CFrame.new(-2.52783309e-07, -0.458231509, -0.301980734, 1.00000429, 4.77244157e-07, 2.760749e-07, 7.4505806e-07, 0.866025507, 0.500000238, -9.0803951e-08, -0.500000298, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1648 | CFrame.new(0, 1.58647513, 0.183157548, 1, 0, 0, 0, 0.999881387, -0.0154127777, 0, 0.0154127777, 0.999881387) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1649 | CFrame.new(1.5891608, 0.361017317, -0.212302506, 0.984807849, -0.173521757, 0.0066198064, 0.150383562, 0.83318758, -0.532149851, 0.0868240371, 0.525060833, 0.846624494) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1650 | CFrame.new(-1.60230875, 0.275375485, -0.212160379, 0.984799087, 0.173571184, 0.00662776129, -0.150421292, 0.871290267, -0.467147648, -0.0868580788, 0.459049612, 0.884154558) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1651 | CFrame.new(0.561567485, -1.34639406, -0.926938355, 0.996194661, -0.0871569663, 0, 0.0754801482, 0.862729847, -0.500000238, 0.0435785055, 0.498097569, 0.866025388) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1652 | CFrame.new(-0.52978605, -1.61792982, 0.214719117, 0.996196747, 0.0413986593, 0.0766689852, -0.0754585043, 0.849865317, 0.521569967, -0.0435660109, -0.525371671, 0.849756956) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1653 | }, .2, false) | |
1654 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1655 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1656 | end | |
1657 | elseif TorsoVelocity < 1 and hit ~= nil then | |
1658 | Anim = "Idle" | |
1659 | if Attack == false then | |
1660 | Change = 1 | |
1661 | PlayAnimationFromTable({ | |
1662 | CFrame.new(-5.67257132e-07, -0.45822984+.1*math.cos(Sine/8), -0.301978469, 1.00000858, 1.24809378e-06, 3.60371928e-07, 1.29640421e-06, 0.939693034, 0.342019886, -9.0338709e-08, -0.342020005, 0.939692616) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 + 5 * math.cos(Sine/8)), 0, 0), | |
1663 | CFrame.new(7.63999651e-07, 1.46904099, 0.0165809691, 1.00000429, 5.49886977e-07, 4.0045915e-08, 7.30156898e-07, 0.961822271, -0.273675978, 1.71363354e-07, 0.273675948, 0.961821973) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 - 10 * math.cos(Sine/8)), 0, 0), | |
1664 | CFrame.new(1.62868655, 0.111030877+.1*math.cos(Sine/8), -0.35657984, 0.9848122, -0.173521966, 0.00661981478, 0.163176492, 0.911705673, -0.377050072, 0.0593912303, 0.372401953, 0.926169157) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1665 | CFrame.new(-1.64265788, 0.0163868144+.1*math.cos(Sine/8), -0.326656789, 0.9848032, 0.173572466, 0.00662781065, -0.163218126, 0.93776685, -0.306518316, -0.0594178699, 0.300777197, 0.951841593) * CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), | |
1666 | CFrame.new(0.561572433, -1.5318737-.1*math.cos(Sine/8), -0.555493951+math.rad(0 + 5 * math.cos(Sine/8)), 0.996203482, -0.0868237838, -0.00759620313, 0.0819010884, 0.962364078, -0.259130269, 0.0298094228, 0.257522076, 0.965812385) * CFrame.Angles(math.rad(0 - 5 * math.cos(Sine/8)), 0, 0), | |
1667 | CFrame.new(-0.554138422, -1.84922051-.1*math.cos(Sine/8)+math.rad(0 + 5 * math.cos(Sine/8)), 0.483894289+math.rad(0 + 5 * math.cos(Sine/8)), 0.996200979, 0.0651250109, 0.0578867495, -0.0818765685, 0.926896632, 0.366277635, -0.0298006982, -0.369623899, 0.928703368) * CFrame.Angles(math.rad(0 - 5 * math.cos(Sine/8)), 0, 0), | |
1668 | }, .2, false) | |
1669 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1670 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1671 | end | |
1672 | elseif TorsoVelocity > 2 and hit ~= nil then | |
1673 | Anim = "Walk" | |
1674 | if Attack == false then | |
1675 | PlayAnimationFromTable({ | |
1676 | CFrame.new(2.77100942e-09, 0.00148168206, -0.301976591, 1.00000024, 2.79512946e-08, 5.46405587e-10, 2.23517453e-08, 0.939692974, 0.342020005, -1.49011612e-08, -0.342019856, 0.939692736) * CFrame.new(0, 0+.1*math.cos(Sine/4), 0) * CFrame.Angles(0, 0 + .2 * math.cos(Sine/8), 0), | |
1677 | CFrame.new(4.8082363e-08, 1.5315367, 0.0343731791, 1.00000024, 3.09263193e-08, -5.39672307e-09, 2.79512946e-08, 0.984808028, -0.173648089, 5.46405587e-10, 0.173648283, 0.984807909) * CFrame.new(0, 0, 0) * CFrame.Angles(math.rad(0 - 2 * math.cos(Sine/15)), 0, 0), | |
1678 | CFrame.new(1.66816366, 0.125450149, 0.167713135, 0.975411952, -0.217704624, -0.0342991352, 0.22028406, 0.9678877, 0.12111339, 0.0068307519, -0.125690982, 0.992045999) * CFrame.new(0, .1, 0 - 2 * math.cos(Sine/8)/2) * CFrame.Angles(math.rad(0 + 160 * math.cos(Sine/8)/2), 0, 0), | |
1679 | CFrame.new(-1.58983934, 0.0268005617, -0.146883398, 0.986049891, 0.166255936, -0.00805497169, -0.16625604, 0.981399775, -0.0959867239, -0.00805321336, 0.0959868878, 0.995350063) * CFrame.new(0, .1, 0 + 2 * math.cos(Sine/8)/2) * CFrame.Angles(math.rad(0 - 160 * math.cos(Sine/8)/2), 0, 0), | |
1680 | CFrame.new(.5, -1.64 - 1 * math.cos(Sine / 6) / 2 -.1*math.cos(Sine/4), 0 + 3 * math.sin(Sine / 6) / 3) * CFrame.Angles(math.rad(-90 * math.sin(Sine / 6)), math.rad(-3), math.rad(0)), | |
1681 | CFrame.new(-.5, -1.64 + 1 * math.cos(Sine / 6) / 2 -.1*math.cos(Sine/4), 0 - 3 * math.sin(Sine / 6) / 3) * CFrame.Angles(math.rad(90 * math.sin(Sine / 6)), math.rad(3), math.rad(0)),}, .2, false) | |
1682 | rCHandle2Weld.C0 = clerp(rCHandle2Weld.C0, CFrame.new(0, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1683 | rCHandle1Weld.C0 = clerp(rCHandle1Weld.C0, CFrame.new(.1, -1.5, .5) * CFrame.Angles(math.rad(90), math.rad(90), math.rad(0)), 1) | |
1684 | end | |
1685 | end | |
1686 | if #Effects > 0 then | |
1687 | for e = 1, #Effects do | |
1688 | if Effects[e] ~= nil then | |
1689 | local Thing = Effects[e] | |
1690 | if Thing ~= nil then | |
1691 | local Part = Thing[1] | |
1692 | local Mode = Thing[2] | |
1693 | local Delay = Thing[3] | |
1694 | local IncX = Thing[4] | |
1695 | local IncY = Thing[5] | |
1696 | if Thing[1].Transparency <= 1 then | |
1697 | if Thing[2] == "Block1" then | |
1698 | Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
1699 | Mesh = Thing[7] | |
1700 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1701 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1702 | elseif Thing[2] == "Ice" then | |
1703 | if Thing[6] <= Thing[5] then | |
1704 | Thing[6] = Thing[6] + .05 | |
1705 | Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, .4, 0) | |
1706 | else | |
1707 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1708 | end | |
1709 | elseif Thing[2] == "Shatter" then | |
1710 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1711 | Thing[4] = Thing[4] * CFrame.new(0, Thing[7], 0) | |
1712 | Thing[1].CFrame = Thing[4] * CFrame.fromEulerAnglesXYZ(Thing[6], 0, 0) | |
1713 | Thing[6] = Thing[6] + Thing[5] | |
1714 | elseif Thing[2] == "Block2" then | |
1715 | Thing[1].CFrame = Thing[1].CFrame | |
1716 | Mesh = Thing[7] | |
1717 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1718 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1719 | elseif Thing[2] == "Block3" then | |
1720 | Thing[1].CFrame = Thing[8].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
1721 | Mesh = Thing[7] | |
1722 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1723 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1724 | elseif Thing[2] == "Block4" then | |
1725 | Thing[1].CFrame = Thing[8].CFrame * CFrame.new(0, -Thing[7].Scale.Y, 0) * CFrame.fromEulerAnglesXYZ(3.14, 0, 0) | |
1726 | Mesh = Thing[7] | |
1727 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1728 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1729 | elseif Thing[2] == "Block2Fire" then | |
1730 | Thing[1].CFrame = Thing[1].CFrame * CFrame.fromEulerAnglesXYZ(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)) | |
1731 | Mesh = Thing[7] | |
1732 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1733 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1734 | if Thing[1].Transparency >= .3 then | |
1735 | Thing[1].BrickColor = BrickColor.new("Bright red") | |
1736 | else | |
1737 | Thing[1].BrickColor = BrickColor.new("Bright yellow") | |
1738 | end | |
1739 | elseif Thing[2] == "Cylinder" then | |
1740 | Mesh = Thing[7] | |
1741 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1742 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1743 | elseif Thing[2] == "Blood" then | |
1744 | Mesh = Thing[7] | |
1745 | Thing[1].CFrame = Thing[1].CFrame * CFrame.new(0, -.5, 0) | |
1746 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[4], Thing[5], Thing[6]) | |
1747 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1748 | elseif Thing[2] == "Elec" then | |
1749 | Mesh = Thing[10] | |
1750 | Mesh.Scale = Mesh.Scale + Vector3.new(Thing[7], Thing[8], Thing[9]) | |
1751 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1752 | Thing[1].CFrame = Thing[1].CFrame * Thing[11] * CFrame.new(0, 0, .2) | |
1753 | Thing[1].Rotation = Vector3.new(0, 0, 0) | |
1754 | elseif Thing[2] == "Disappear" then | |
1755 | Thing[1].Transparency = Thing[1].Transparency + Thing[3] | |
1756 | end | |
1757 | else | |
1758 | Part.Parent = nil | |
1759 | table.remove(Effects, e) | |
1760 | end | |
1761 | end | |
1762 | end | |
1763 | end | |
1764 | end | |
1765 | Humanoid.Health = math.huge | |
1766 | if Attack == false and hit == nil and hit2 ~= nil then | |
1767 | Torso.Velocity=RootPart.CFrame.upVector*55 | |
1768 | --[[RootPart.Anchored = true | |
1769 | Humanoid.AutoRotate = false | |
1770 | local nPos = RootPart.CFrame | |
1771 | if(UIS:IsKeyDown(Enum.KeyCode.W))then | |
1772 | nPos = nPos * CFrame.new(0,.5,0) | |
1773 | end | |
1774 | if(UIS:IsKeyDown(Enum.KeyCode.A))then | |
1775 | nPos = nPos * CFrame.new(-.5,0,0) | |
1776 | end | |
1777 | if(UIS:IsKeyDown(Enum.KeyCode.S))then | |
1778 | nPos = nPos * CFrame.new(0,-.5,0) | |
1779 | end | |
1780 | if(UIS:IsKeyDown(Enum.KeyCode.D))then | |
1781 | nPos = nPos * CFrame.new(.5,0,0) | |
1782 | end | |
1783 | if(nPos == RootPart.CFrame)then | |
1784 | nPos = nPos * CFrame.new(0,-.05,0) | |
1785 | end | |
1786 | RootPart.CFrame = nPos | |
1787 | Humanoid.Jump = false]] | |
1788 | elseif Attack == false and hit == nil and hit3 ~= nil or hit4 ~= nil then | |
1789 | Torso.Velocity=RootPart.CFrame.lookVector*35 | |
1790 | Humanoid.Jump = false | |
1791 | elseif Attack == false then | |
1792 | Humanoid.AutoRotate = true | |
1793 | RootPart.Anchored = false | |
1794 | end | |
1795 | end |