Advertisement
XSleepyDemonX_17

DemOnIX

Oct 11th, 2019
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 63.84 KB | None | 0 0
  1. -- This script has been converted to FE by iPxter
  2.  
  3.  
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  6. do
  7. print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  8. script.Parent = Player.Character
  9.  
  10. --RemoteEvent for communicating
  11. local Event = Instance.new("RemoteEvent")
  12. Event.Name = "UserInput_Event"
  13.  
  14. --Fake event to make stuff like Mouse.KeyDown work
  15. local function fakeEvent()
  16. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  17. t.connect = t.Connect
  18. return t
  19. end
  20.  
  21. --Creating fake input objects with fake variables
  22. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  23. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  24. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  25. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  26. end}
  27. --Merged 2 functions into one by checking amount of arguments
  28. CAS.UnbindAction = CAS.BindAction
  29.  
  30. --This function will trigger the events that have been :Connect()'ed
  31. local function te(self,ev,...)
  32. local t = m[ev]
  33. if t and t._fakeEvent and t.Function then
  34. t.Function(...)
  35. end
  36. end
  37. m.TrigEvent = te
  38. UIS.TrigEvent = te
  39.  
  40. Event.OnServerEvent:Connect(function(plr,io)
  41. if plr~=Player then return end
  42. if io.isMouse then
  43. m.Target = io.Target
  44. m.Hit = io.Hit
  45. else
  46. local b = io.UserInputState == Enum.UserInputState.Begin
  47. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  48. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  49. end
  50. for _,t in pairs(CAS.Actions) do
  51. for _,k in pairs(t.Keys) do
  52. if k==io.KeyCode then
  53. t.Function(t.Name,io.UserInputState,io)
  54. end
  55. end
  56. end
  57. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  58. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  59. end
  60. end)
  61. Event.Parent = NLS([==[
  62. local Player = owner
  63. local Event = script:WaitForChild("UserInput_Event")
  64.  
  65. local UIS = game:GetService("UserInputService")
  66. local input = function(io,a)
  67. if a then return end
  68. --Since InputObject is a client-side instance, we create and pass table instead
  69. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  70. end
  71. UIS.InputBegan:Connect(input)
  72. UIS.InputEnded:Connect(input)
  73.  
  74. local Mouse = owner
  75. local h,t
  76. --Give the server mouse data 30 times every second, but only if the values changed
  77. --If player is not moving their mouse, client won't fire events
  78. while wait(1/30) do
  79. if h~=Mouse.Hit or t~=Mouse.Target then
  80. h,t=Mouse.Hit,Mouse.Target
  81. Event:FireServer({isMouse=true,Target=t,Hit=h})
  82. end
  83. end]==],Player.Character)
  84. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  85. end
  86. -- Created by Nebula_Zorua --
  87. -- Your DeTERMINATION --
  88. -- Y o u a c t l i k e y o u h a v e a c h o i c e. =) --
  89. -- Discord: Nebula the Zorua#6969
  90. -- Youtube: https://www.youtube.com/channel/UCo9oU9dCw8jnuVLuy4_SATA
  91.  
  92.  
  93. --// Initializing \\--
  94. local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
  95. local Plrs = S.Players
  96. local Plr = owner
  97. local Char = Plr.Character
  98. local Hum = Char:FindFirstChildOfClass'Humanoid'
  99. local RArm = Char["Right Arm"]
  100. local LArm = Char["Left Arm"]
  101. local RLeg = Char["Right Leg"]
  102. local LLeg = Char["Left Leg"]
  103. local Root = Char:FindFirstChild'HumanoidRootPart'
  104. local Torso = Char.Torso
  105. local Head = Char.Head
  106. local NeutralAnims = true
  107. local Attack = false
  108. local BloodPuddles = {}
  109. local Effects = {}
  110. local Debounces = {Debounces={}}
  111. local Hit = {}
  112. local Sine = 0
  113. local Change = 1
  114. local Souls = 0
  115. --// Debounce System \\--
  116.  
  117.  
  118. function Debounces:New(name,cooldown)
  119. local aaaaa = {Usable=true,Cooldown=cooldown or 2,CoolingDown=false,LastUse=0}
  120. setmetatable(aaaaa,{__index = Debounces})
  121. Debounces.Debounces[name] = aaaaa
  122. return aaaaa
  123. end
  124.  
  125. function Debounces:Use(overrideUsable)
  126. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  127. if(self.Usable or overrideUsable)then
  128. self.Usable = false
  129. self.CoolingDown = true
  130. local LastUse = time()
  131. self.LastUse = LastUse
  132. delay(self.Cooldown or 2,function()
  133. if(self.LastUse == LastUse)then
  134. self.CoolingDown = false
  135. self.Usable = true
  136. end
  137. end)
  138. end
  139. end
  140.  
  141. function Debounces:Get(name)
  142. assert(typeof(name) == 'string',("bad argument #1 to 'get' (string expected, got %s)"):format(typeof(name) == nil and "no value" or typeof(name)))
  143. for i,v in next, Debounces.Debounces do
  144. if(i == name)then
  145. return v;
  146. end
  147. end
  148. end
  149.  
  150. function Debounces:GetProgressPercentage()
  151. assert(self.Usable ~= nil and self.LastUse ~= nil and self.CoolingDown ~= nil,"Expected ':' not '.' calling member function Use")
  152. if(self.CoolingDown and not self.Usable)then
  153. return math.max(
  154. math.floor(
  155. (
  156. (time()-self.LastUse)/self.Cooldown or 2
  157. )*100
  158. )
  159. )
  160. else
  161. return 100
  162. end
  163. end
  164.  
  165. --// Shortcut Variables \\--
  166. local CF = {N=CFrame.new,A=CFrame.Angles,fEA=CFrame.fromEulerAnglesXYZ}
  167. local C3 = {N=Color3.new,RGB=Color3.fromRGB,HSV=Color3.fromHSV,tHSV=Color3.toHSV}
  168. local V3 = {N=Vector3.new,FNI=Vector3.FromNormalId,A=Vector3.FromAxis}
  169. local M = {C=math.cos,R=math.rad,S=math.sin,P=math.pi,RNG=math.random,MRS=math.randomseed,H=math.huge,RRNG = function(min,max,div) return math.rad(math.random(min,max)/(div or 1)) end}
  170. local R3 = {N=Region3.new}
  171. local De = S.Debris
  172. local WS = workspace
  173. local Lght = S.Lighting
  174. local RepS = S.ReplicatedStorage
  175. local IN = Instance.new
  176. local CSK = ColorSequenceKeypoint.new
  177. local CS = ColorSequence.new
  178. --// Instance Creation Functions \\--
  179.  
  180. function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
  181. local Sound = IN("Sound")
  182. Sound.SoundId = "rbxassetid://".. tostring(id or 0)
  183. Sound.Pitch = pitch or 1
  184. Sound.Volume = volume or 1
  185. Sound.Looped = looped or false
  186. if(autoPlay)then
  187. coroutine.wrap(function()
  188. repeat wait() until Sound.IsLoaded
  189. Sound.Playing = autoPlay or false
  190. end)()
  191. end
  192. if(not looped and effect)then
  193. Sound.Stopped:connect(function()
  194. Sound.Volume = 0
  195. Sound:destroy()
  196. end)
  197. elseif(effect)then
  198. warn("Sound can't be looped and a sound effect!")
  199. end
  200. Sound.Parent =parent or Torso
  201. return Sound
  202. end
  203. function Part(parent,color,material,size,cframe,anchored,cancollide)
  204. local part = IN("Part")
  205. part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
  206. part.Material = (material or Enum.Material.SmoothPlastic)
  207. part.TopSurface,part.BottomSurface=10,10
  208. part.Size = (size or V3.N(1,1,1))
  209. part.CFrame = (cframe or CF.N(0,0,0))
  210. part.Anchored = (anchored or false)
  211. part.CanCollide = (cancollide or false)
  212. part.Parent = (parent or Char)
  213. return part
  214. end
  215. function Mesh(parent,meshtype,meshid,textid,scale,offset)
  216. local part = IN("SpecialMesh")
  217. part.MeshId = meshid or ""
  218. part.TextureId = textid or ""
  219. part.Scale = scale or V3.N(1,1,1)
  220. part.Offset = offset or V3.N(0,0,0)
  221. part.MeshType = meshtype or Enum.MeshType.Sphere
  222. part.Parent = parent
  223. return part
  224. end
  225.  
  226. NewInstance = function(instance,parent,properties)
  227. local inst = Instance.new(instance,parent)
  228. if(properties)then
  229. for i,v in next, properties do
  230. pcall(function() inst[i] = v end)
  231. end
  232. end
  233. return inst;
  234. end
  235.  
  236. local face = Head:FindFirstChild'face'
  237. if(not face)then
  238. NewInstance("Decal",Head,{Name='face',Face=Enum.NormalId.Front,Texture="rbxassetid://404306534"})
  239. else
  240. face.Texture = "rbxassetid://22828283"
  241. end
  242.  
  243. --// Extended ROBLOX tables \\--
  244. local Instance = setmetatable({ClearChildrenOfClass = function(where,class,recursive) local children = (recursive and where:GetDescendants() or where:GetChildren()) for _,v in next, children do if(v:IsA(class))then v:destroy();end;end;end},{__index = Instance})
  245. --// Customization \\--
  246.  
  247. local Frame_Speed = 60 -- The frame speed for swait. 1 is automatically divided by this
  248. local Remove_Hats = false
  249. local Remove_Clothing = true
  250. local PlayerSize = 1
  251. local DamageColor = BrickColor.new'Really black'
  252. local MusicID = 1326552262
  253. local WalkSpeed = 8
  254. local MaxSouls = 100
  255. local MaxHealth = 500
  256.  
  257.  
  258. if(_G.RefusedAnimation == nil) then _G.RefusedAnimation = false end
  259.  
  260. --// Weapon and GUI creation, and Character Customization \\--
  261.  
  262. local Effects = IN("Folder",Char)
  263. Effects.Name = "Effects"
  264.  
  265. Hum.MaxHealth = MaxHealth
  266. Hum.Health = MaxHealth
  267.  
  268. local Knife = NewInstance("Part",Char,{Name='Knife',Size=V3.N(.4,3,.7),Anchored=false,CanCollide=false,Locked=true,Archivable=false,Reflectance=.01,Color=C3.N(0,0,0)})
  269. local KnifeMesh = Mesh(Knife,Enum.MeshType.FileMesh,"rbxassetid://121944778","rbxassetid://362719969",V3.N(1,1,1),V3.N())
  270. local AuraEmitter = NewInstance("ParticleEmitter",Knife,{EmissionDirection='Back',Color=CS{CSK(0,C3.N(0,0,0)),CSK(0.5,C3.N(1,1,0)),CSK(1,C3.RGB(255,191,0))},LightEmission=.5,LightInfluence=0,Size=NumberSequence.new(0.3),Texture="rbxassetid://141116476",Transparency=NumberSequence.new(0,1),LockedToPart=true,Lifetime=NumberRange.new(1),Rate=150,Speed=NumberRange.new(0)})
  271. local FireEmitter = NewInstance("ParticleEmitter",Knife,{EmissionDirection='Back',Color=CS(C3.N(0,0,0),C3.N(255,255,255)),LightEmission=.5,LightInfluence=0,Size=NumberSequence.new{NumberSequenceKeypoint.new(0,.5,0),NumberSequenceKeypoint.new(0.755,0,0),NumberSequenceKeypoint.new(1,0,0)},Texture="rbxassetid://141116476",Transparency=NumberSequence.new(0.35,1),Lifetime=NumberRange.new(1,2),Rate=150,Speed=NumberRange.new(3)})
  272.  
  273. local KTrail = NewInstance("Trail",Knife,{
  274. Attachment0=NewInstance("Attachment",Knife,{Position=V3.N(0,-.4,0)}),
  275. Attachment1=NewInstance("Attachment",Knife,{Position=V3.N(0,1.2,0)}),
  276. Color=CS(C3.N(0,0,0)),
  277. Enabled=false,
  278. Transparency=NumberSequence.new(0,1),
  279. Lifetime=1.25,
  280. })
  281.  
  282. NewInstance("PointLight",Knife,{Color=C3.N(1,0,0),Range=10,Brightness=3})
  283.  
  284.  
  285. Hum.DisplayDistanceType = 'None'
  286.  
  287. local naeeym2 = IN("BillboardGui",Char)
  288. naeeym2.AlwaysOnTop = true
  289. naeeym2.Size = UDim2.new(5,35,2,15)
  290. naeeym2.StudsOffset = V3.N(0,2.5,0)
  291. naeeym2.Adornee = Char.Head
  292. naeeym2.Name = "Name"
  293. naeeym2.PlayerToHideFrom = Plr
  294. local tecks2 = IN("TextLabel",naeeym2)
  295. tecks2.BackgroundTransparency = 1
  296. tecks2.TextScaled = true
  297. tecks2.BorderSizePixel = 0
  298. tecks2.Text = "Chara"
  299. tecks2.Font = Enum.Font.Bodoni
  300. tecks2.TextSize = 30
  301. tecks2.TextStrokeTransparency = 0
  302. tecks2.TextColor3 = C3.N(0,0,0)
  303. tecks2.TextStrokeColor3 = C3.N(.7,0,0)
  304. tecks2.Size = UDim2.new(1,0,0.5,0)
  305. tecks2.Parent = naeeym2
  306.  
  307.  
  308. IN("Shirt",Char)
  309. IN("Pants",Char)
  310.  
  311. Hum.WalkSpeed = WalkSpeed
  312. if(PlayerSize ~= 1)then
  313. for _,v in next, Char:GetDescendats() do
  314. if(v:IsA'BasePart')then
  315. v.Size = v.Size * PlayerSize
  316. end
  317. end
  318. end
  319.  
  320. for i = 1, 35 do
  321. local FACE = Part(Char,C3.N(0,0,0),Enum.Material.Neon,V3.N(1.01,.5,1.01),CF.N(),false,false)
  322. FACE.Transparency = 0+(i-1)/35.2
  323. FACE.Name = 'ShadowFace'
  324. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  325. NewInstance("Weld",Head,{Part0=Head,Part1=FACE,C0=CF.N(0,.35-(i-1)/75,0)})
  326. --CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  327. end
  328.  
  329. local LEye = Part(Char,C3.N(1,0,0),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  330. local LEyeM = Mesh(LEye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  331. local LEyeW = NewInstance("Weld",LEye,{Part0=Head,Part1=LEye,C0=CF.N(-.2,.2,-.49)})
  332.  
  333. local REye = Part(Char,C3.N(1,0,0),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  334. local REyeM = Mesh(REye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  335. local REyeW = NewInstance("Weld",REye,{Part0=Head,Part1=REye,C0=CF.N(.2,.2,-.49)})
  336.  
  337.  
  338. pcall(function()
  339. Char.LeftWing:destroy()
  340. Char.ReaperShadowHead:destroy()
  341. end)
  342.  
  343.  
  344. local Music = Sound(Torso,MusicID,1,3,true,false,true)
  345. Music.Name = 'Music'
  346.  
  347. --// Stop animations \\--
  348. for _,v in next, Hum:GetPlayingAnimationTracks() do
  349. v:Stop();
  350. end
  351.  
  352. pcall(game.Destroy,Char:FindFirstChild'Animate')
  353. pcall(game.Destroy,Hum:FindFirstChild'Animator')
  354.  
  355.  
  356. for _,v in next, Char:children() do
  357. if(v.Name == 'ShadowFace')then v:destroy() end
  358. end
  359. LEye = Part(Char,C3.N(1,0,0),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  360. LEyeM = Mesh(LEye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  361. LEyeW = NewInstance("Weld",LEye,{Part0=Head,Part1=LEye,C0=CF.N(-.2,.2,-.49)})
  362.  
  363. REye = Part(Char,C3.N(1,0,0),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  364. REyeM = Mesh(REye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  365. REyeW = NewInstance("Weld",REye,{Part0=Head,Part1=REye,C0=CF.N(.2,.2,-.49)})
  366. for i = 1, 35 do
  367. local FACE = Part(Char,C3.N(0,0,0),Enum.Material.Neon,V3.N(1.01,.5,1.01),CF.N(),false,false)
  368. FACE.Transparency = 0+(i-1)/35.2
  369. FACE.Name = 'ShadowFace'
  370. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  371. NewInstance("Weld",Head,{Part0=Head,Part1=FACE,C0=CF.N(0,.35-(i-1)/75,0)})
  372. --CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  373. end
  374. --// Joints \\--
  375.  
  376. --[[ To fly jump 2 times -ulti55]]
  377. --[[ To go down press q ]]
  378.  
  379. script.Parent = nil
  380.  
  381. for i,v in pairs(script:GetChildren()) do
  382.  
  383. pcall(function() v.Value = "" end)
  384.  
  385. game:GetService("Debris"):AddItem(v,.1)
  386.  
  387. end
  388.  
  389. function weld(p0,p1,c0,c1,par)
  390.  
  391. local w = Instance.new("Weld",p0 or par)
  392.  
  393. w.Part0 = p0
  394.  
  395. w.Part1 = p1
  396.  
  397. w.C0 = c0 or CFrame.new()
  398.  
  399. w.C1 = c1 or CFrame.new()
  400.  
  401. return w
  402.  
  403. end
  404.  
  405. local motors = {}
  406.  
  407. function motor(p0,p1,c0,c1,des,vel,par)
  408.  
  409. local w = Instance.new("Motor6D",p0 or par)
  410.  
  411. w.Part0 = p0
  412.  
  413. w.Part1 = p1
  414.  
  415. w.C0 = c0 or CFrame.new()
  416.  
  417. w.C1 = c1 or CFrame.new()
  418.  
  419. w.MaxVelocity = tonumber(vel) or .05
  420.  
  421. w.DesiredAngle = tonumber(des) or 0
  422.  
  423. return w
  424.  
  425. end
  426.  
  427. function lerp(a,b,c)
  428.  
  429. return a+(b-a)*c
  430.  
  431. end
  432.  
  433. function clerp(c1,c2,al)
  434.  
  435. local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()}
  436.  
  437. local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()}
  438.  
  439. for i,v in pairs(com1) do
  440.  
  441. com1[i] = lerp(v,com2[i],al)
  442.  
  443. end
  444.  
  445. return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1)))
  446.  
  447. end
  448.  
  449. function ccomplerp(c1,c2,al)
  450.  
  451. local com1 = {c1:components()}
  452.  
  453. local com2 = {c2:components()}
  454.  
  455. for i,v in pairs(com1) do
  456.  
  457. com1[i] = lerp(v,com2[i],al)
  458.  
  459. end
  460.  
  461. return CFrame.new(unpack(com1))
  462.  
  463. end
  464.  
  465. function tickwave(time,length,offset)
  466.  
  467. return (math.abs((tick()+(offset or 0))%time-time/2)*2-time/2)/time/2*length
  468.  
  469. end
  470.  
  471. function invcol(c)
  472.  
  473. c = c.Color
  474.  
  475. return BrickColor.new(Color3.new(1-c.b,1-c.g,1-c.r))
  476.  
  477. end
  478.  
  479. local oc = oc or function(...) return ... end
  480.  
  481. local plr = game.Players.LocalPlayer
  482.  
  483. local tor = char.Torso
  484.  
  485. local hum = char.Humanoid
  486.  
  487. hum.PlatformStand = false
  488.  
  489. pcall(function()
  490.  
  491. char.Wings:Destroy()
  492.  
  493. end)
  494.  
  495. local mod = Instance.new("Model",char)
  496.  
  497. mod.Name = "Wings"
  498.  
  499. local special = {
  500.  
  501. --antiboomz0r = {"Really black","Institutional white",0,0,false,Color3.new(1,1,.95),Color3.new(1,1,.6)},
  502.  
  503. antiboomz0r = {"New Yeller",nil,0.4,0.7,true,Color3.new(1,1,.95),Color3.new(1,1,.6)},
  504.  
  505. --antiboomz0r = {"Cyan","Toothpaste",0,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
  506.  
  507. taart = {"Royal purple",nil,.4,.4,true},
  508.  
  509. mitta = {"Black",nil,0,0,false},
  510.  
  511. penjuin3 = {"White",nil,0,0,false},
  512.  
  513. thepc8110 = {"Black","Bright red",.5,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
  514.  
  515. nonspeaker = {"Cyan","Toothpaste",0,0,false,Color3.new(1,0,0),Color3.new(0,0,0)},
  516.  
  517. littleau999 = {"Reddish brown",1030,0,0,false},
  518.  
  519. unscripter = {"Really black","Really black",.2,0,true,Color3.new(0,0,0),Color3.new(0,0,0)},
  520.  
  521. oxcool1 = {"Really black","White",.2,0,false,Color3.new(0,0,0),Color3.new(0,0,0)},
  522.  
  523. krodmiss = {"Really black",nil,0,0,false},
  524.  
  525. }
  526.  
  527. local topcolor = invcol(char.Torso.BrickColor)
  528.  
  529. local feacolor = char.Torso.BrickColor
  530.  
  531. local ptrans = 0
  532.  
  533. local pref = 0
  534.  
  535. local fire = false
  536.  
  537. local fmcol = Color3.new()
  538.  
  539. local fscol = Color3.new()
  540.  
  541. local spec = special[plr.Name:lower()]
  542.  
  543. if spec then
  544.  
  545. topcolor,feacolor,ptrans,pref,fire,fmcol,fscol = spec[1] and BrickColor.new(spec[1]) or topcolor,spec[2] and BrickColor.new(spec[2]) or feacolor,spec[3],spec[4],spec[5],spec[6],spec[7]
  546.  
  547. end
  548.  
  549. local part = Instance.new("Part")
  550.  
  551. part.FormFactor = "Custom"
  552.  
  553. part.Size = Vector3.new(.2,.2,.2)
  554.  
  555. part.TopSurface,part.BottomSurface = 0,0
  556.  
  557. part.CanCollide = false
  558.  
  559. part.BrickColor = topcolor
  560.  
  561. part.Transparency = ptrans
  562.  
  563. part.Reflectance = pref
  564.  
  565. local ef = Instance.new("Fire",fire and part or nil)
  566.  
  567. ef.Size = .15
  568.  
  569. ef.Color = fmcol or Color3.new()
  570.  
  571. ef.SecondaryColor = fscol or Color3.new()
  572.  
  573. part:BreakJoints()
  574.  
  575.  
  576. function newpart()
  577.  
  578. local clone = part:Clone()
  579.  
  580. clone.Parent = mod
  581.  
  582. clone:BreakJoints()
  583.  
  584. return clone
  585.  
  586. end
  587.  
  588. local feath = newpart()
  589.  
  590. feath.BrickColor = feacolor
  591.  
  592. feath.Transparency = 0
  593.  
  594. Instance.new("SpecialMesh",feath).MeshType = "Sphere"
  595.  
  596. function newfeather()
  597.  
  598. local clone = feath:Clone()
  599.  
  600. clone.Parent = mod
  601.  
  602. clone:BreakJoints()
  603.  
  604. return clone
  605.  
  606. end
  607.  
  608.  
  609. ---------- RIGHT WING
  610.  
  611. local r1 = newpart()
  612.  
  613. r1.Size = Vector3.new(.3,1.5,.3)*1.2
  614.  
  615. local rm1 = motor(tor,r1,CFrame.new(.35,.6,.4) * CFrame.Angles(0,0,math.rad(-60)) * CFrame.Angles(math.rad(30),math.rad(-25),0),CFrame.new(0,-.8,0),.1)
  616.  
  617. local r2 = newpart()
  618.  
  619. r2.Size = Vector3.new(.4,1.8,.4)*1.2
  620.  
  621. local rm2 = motor(r1,r2,CFrame.new(0,.75,0) * CFrame.Angles(0,0,math.rad(50)) * CFrame.Angles(math.rad(-30),math.rad(15),0),CFrame.new(0,-.9,0),.1)
  622.  
  623. local r3 = newpart()
  624.  
  625. r3.Size = Vector3.new(.3,2.2,.3)*1.2
  626.  
  627. local rm3 = motor(r2,r3,CFrame.new(.1,.9,0) * CFrame.Angles(0,0,math.rad(-140)) * CFrame.Angles(math.rad(-3),0,0),CFrame.new(0,-1.1,0),.1)
  628.  
  629. local r4 = newpart()
  630.  
  631. r4.Size = Vector3.new(.25,1.2,.25)*1.2
  632.  
  633. local rm4 = motor(r3,r4,CFrame.new(0,1.1,0) * CFrame.Angles(0,0,math.rad(-10)) * CFrame.Angles(math.rad(-3),0,0),CFrame.new(0,-.6,0),.1)
  634.  
  635. local feather = newfeather()
  636.  
  637. feather.Mesh.Scale = Vector3.new(1,1,1)
  638.  
  639. feather.Size = Vector3.new(.4,3,.3)
  640.  
  641. weld(r4,feather,CFrame.new(-.1,-.3,0),CFrame.new(0,-1.5,0))
  642.  
  643. feather = newfeather()
  644.  
  645. feather.Mesh.Scale = Vector3.new(1,1,1)
  646.  
  647. feather.Size = Vector3.new(.4,2.3,.3)
  648.  
  649. weld(r4,feather,CFrame.new(.1,-.1,0) * CFrame.Angles(0,math.random()*.1,0),CFrame.new(0,-1.1,0))
  650.  
  651. feather = newfeather()
  652.  
  653. feather.Mesh.Scale = Vector3.new(1,1,1)
  654.  
  655. feather.Size = Vector3.new(.35,2.2,.25)
  656.  
  657. weld(r4,feather,CFrame.new(.1,-.3,0) * CFrame.Angles(0,math.random()*.1,math.rad(-10)),CFrame.new(0,-1.1,0))
  658.  
  659. local rf3 = {}
  660.  
  661. for i=0,7 do
  662.  
  663. feather = newfeather()
  664.  
  665. feather.Mesh.Scale = Vector3.new(1,1,1)
  666.  
  667. feather.Size = Vector3.new(.45,2.2,.35)
  668.  
  669. table.insert(rf3,motor(r3,feather,CFrame.new(.05,1-i*.285,0) * CFrame.Angles(0,math.random()*.1,math.rad(-25-i*2)),CFrame.new(0,-feather.Size.Y/2,0)))
  670.  
  671. end
  672.  
  673. local rf2 = {}
  674.  
  675. for i=0,6 do
  676.  
  677. feather = newfeather()
  678.  
  679. feather.Mesh.Scale = Vector3.new(1,1,1)
  680.  
  681. feather.Size = Vector3.new(.45,2.2-i*.08,.3)
  682.  
  683. table.insert(rf2,motor(r2,feather,CFrame.new(.05,.75-i*.26,0) * CFrame.Angles(0,math.random()*.1,math.rad(-75-i*4)),CFrame.new(0,-feather.Size.Y/2,0)))
  684.  
  685. end
  686.  
  687. local rf1 = {}
  688.  
  689. for i=0,6 do
  690.  
  691. feather = newfeather()
  692.  
  693. feather.Mesh.Scale = Vector3.new(1,1,1)
  694.  
  695. feather.Size = Vector3.new(.37,1.65-i*.06,.25)
  696.  
  697. table.insert(rf1,motor(r1,feather,CFrame.new(.05,.63-i*.21,0) * CFrame.Angles(0,math.random()*.05,math.rad(-75)),CFrame.new(0,-feather.Size.Y/2,0)))
  698.  
  699. end
  700.  
  701. ---------- LEFT WING
  702.  
  703. local l1 = newpart()
  704.  
  705. l1.Size = Vector3.new(.3,1.5,.3)*1.2
  706.  
  707. local lm1 = motor(tor,l1,CFrame.new(-.35,.6,.4) * CFrame.Angles(0,0,math.rad(60)) * CFrame.Angles(math.rad(30),math.rad(25),0) * CFrame.Angles(0,-math.pi,0),CFrame.new(0,-.8,0) ,.1)
  708.  
  709. local l2 = newpart()
  710.  
  711. l2.Size = Vector3.new(.4,1.8,.4)*1.2
  712.  
  713. local lm2 = motor(l1,l2,CFrame.new(0,.75,0) * CFrame.Angles(0,0,math.rad(50)) * CFrame.Angles(math.rad(30),math.rad(-15),0),CFrame.new(0,-.9,0),.1)
  714.  
  715. local l3 = newpart()
  716.  
  717. l3.Size = Vector3.new(.3,2.2,.3)*1.2
  718.  
  719. local lm3 = motor(l2,l3,CFrame.new(.1,.9,0) * CFrame.Angles(0,0,math.rad(-140)) * CFrame.Angles(math.rad(3),0,0),CFrame.new(0,-1.1,0),.1)
  720.  
  721. local l4 = newpart()
  722.  
  723. l4.Size = Vector3.new(.25,1.2,.25)*1.2
  724.  
  725. local lm4 = motor(l3,l4,CFrame.new(0,1.1,0) * CFrame.Angles(0,0,math.rad(-10)) * CFrame.Angles(math.rad(3),0,0),CFrame.new(0,-.6,0),.1)
  726.  
  727. local feather = newfeather()
  728.  
  729. feather.Mesh.Scale = Vector3.new(1,1,1)
  730.  
  731. feather.Size = Vector3.new(.4,3,.3)
  732.  
  733. weld(l4,feather,CFrame.new(-.1,-.3,0),CFrame.new(0,-1.5,0))
  734.  
  735. feather = newfeather()
  736.  
  737. feather.Mesh.Scale = Vector3.new(1,1,1)
  738.  
  739. feather.Size = Vector3.new(.4,2.3,.3)
  740.  
  741. weld(l4,feather,CFrame.new(.1,-.1,0) * CFrame.Angles(0,math.random()*.1,0),CFrame.new(0,-1.1,0))
  742.  
  743. feather = newfeather()
  744.  
  745. feather.Mesh.Scale = Vector3.new(1,1,1)
  746.  
  747. feather.Size = Vector3.new(.35,2.2,.25)
  748.  
  749. weld(l4,feather,CFrame.new(.1,-.3,0) * CFrame.Angles(0,math.random()*.1,math.rad(-10)),CFrame.new(0,-1.1,0))
  750.  
  751. local lf3 = {}
  752.  
  753. for i=0,7 do
  754.  
  755. feather = newfeather()
  756.  
  757. feather.Mesh.Scale = Vector3.new(1,1,1)
  758.  
  759. feather.Size = Vector3.new(.45,2.2,.35)
  760.  
  761. table.insert(lf3,motor(l3,feather,CFrame.new(.05,1-i*.285,0) * CFrame.Angles(0,math.random()*.1,math.rad(-25-i*2)),CFrame.new(0,-feather.Size.Y/2,0)))
  762.  
  763. end
  764.  
  765. local lf2 = {}
  766.  
  767. for i=0,6 do
  768.  
  769. feather = newfeather()
  770.  
  771. feather.Mesh.Scale = Vector3.new(1,1,1)
  772.  
  773. feather.Size = Vector3.new(.45,2.2-i*.08,.3)
  774.  
  775. table.insert(lf2,motor(l2,feather,CFrame.new(.05,.75-i*.26,0) * CFrame.Angles(0,math.random()*.1,math.rad(-75-i*4)),CFrame.new(0,-feather.Size.Y/2,0)))
  776.  
  777. end
  778.  
  779. local lf1 = {}
  780.  
  781. for i=0,6 do
  782.  
  783. feather = newfeather()
  784.  
  785. feather.Mesh.Scale = Vector3.new(1,1,1)
  786.  
  787. feather.Size = Vector3.new(.37,1.65-i*.06,.25)
  788.  
  789. table.insert(lf1,motor(l1,feather,CFrame.new(.05,.63-i*.21,0) * CFrame.Angles(0,math.random()*.05,math.rad(-75)),CFrame.new(0,-feather.Size.Y/2,0)))
  790.  
  791. end
  792.  
  793. local rwing = {rm1,rm2,rm3,rm4}
  794.  
  795. local lwing = {lm1,lm2,lm3,lm4}
  796.  
  797. local oc0 = {}
  798.  
  799. for i,v in pairs(rwing) do
  800.  
  801. oc0[v] = v.C0
  802.  
  803. end
  804.  
  805. for i,v in pairs(lwing) do
  806.  
  807. oc0[v] = v.C0
  808.  
  809. end
  810.  
  811. function gotResized()
  812.  
  813. if lastsize then
  814.  
  815. if tor.Size == lastsize then return end -- This shouldn't happen?
  816.  
  817. local scaleVec = tor.Size/lastsize
  818.  
  819. for i,v in pairs(oc0) do
  820.  
  821. oc0[i] = v-v.p+scaleVec*v.p
  822.  
  823. end
  824.  
  825. lastsize = tor.Size
  826.  
  827. end
  828.  
  829. lastsize = tor.Size
  830.  
  831. end
  832.  
  833. tor.Changed:connect(function(p)
  834.  
  835. if p == "Size" then
  836.  
  837. gotResized()
  838.  
  839. end
  840.  
  841. end)
  842.  
  843. gotResized()
  844.  
  845. local idle = {0,0.5,-.2,0; .05,.05,.1,.05; -.6,-1.5,.1,0;}--0,.3,0,0
  846.  
  847. local outlow = {-.7,-.2,1.8,0; .3,.05,.1,.05; .2,0,0,0}
  848.  
  849. local outhigh = {.5,-.2,1.8,0; .3,.05,.1,.05; .2,0,0,0}
  850.  
  851. local veryhigh = {.9,-.3,1.9,0; .3,.05,.1,.05; .2,0,0,0}
  852.  
  853. local flap1 = {-.3,.3,1.1,-.2; .3,.05,.1,.05; .2,-.6,0,0}
  854.  
  855. local divebomb = {0,.2,.4,-.7; .3,.05,.1,.05; 0,-.5,-.6,0}
  856.  
  857.  
  858. function setwings(tab,time)
  859.  
  860. time = time or 10
  861.  
  862. for i=1,4 do
  863.  
  864. rwing[i].DesiredAngle = tab[i]
  865.  
  866. lwing[i].DesiredAngle = tab[i]
  867.  
  868. rwing[i].MaxVelocity = math.abs(tab[i]-rwing[i].CurrentAngle)/time
  869.  
  870. lwing[i].MaxVelocity = math.abs(tab[i]-lwing[i].CurrentAngle)/time
  871.  
  872. local rcf = oc0[rwing[i]] * (tab[12+i] or CFrame.new())
  873.  
  874. local lcf = oc0[lwing[i]] * (tab[12+i] or CFrame.new())
  875.  
  876. end
  877.  
  878. for i,v in pairs(rf1) do
  879.  
  880. v.DesiredAngle = tab[9]
  881.  
  882. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  883.  
  884. end
  885.  
  886. for i,v in pairs(lf1) do
  887.  
  888. v.DesiredAngle = tab[9]
  889.  
  890. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  891.  
  892. end
  893.  
  894. for i,v in pairs(rf2) do
  895.  
  896. v.DesiredAngle = tab[10]
  897.  
  898. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  899.  
  900. end
  901.  
  902. for i,v in pairs(lf2) do
  903.  
  904. v.DesiredAngle = tab[10]
  905.  
  906. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  907.  
  908. end
  909.  
  910. for i,v in pairs(rf3) do
  911.  
  912. v.DesiredAngle = tab[11]
  913.  
  914. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  915.  
  916. end
  917.  
  918. for i,v in pairs(lf3) do
  919.  
  920. v.DesiredAngle = tab[11]
  921.  
  922. v.MaxVelocity = math.abs(v.DesiredAngle-v.CurrentAngle)/time
  923.  
  924. end
  925.  
  926. end
  927.  
  928. setwings(outhigh,1)
  929.  
  930. flying = false
  931.  
  932. moving = false
  933.  
  934. for i,v in pairs(tor:GetChildren()) do
  935.  
  936. if v.ClassName:lower():match("body") then
  937.  
  938. v:Destroy()
  939.  
  940. end
  941.  
  942. end
  943.  
  944. local ctor = tor:Clone()
  945.  
  946. ctor:ClearAllChildren()
  947.  
  948. ctor.Name = "cTorso"
  949.  
  950. ctor.Transparency = 1
  951.  
  952. ctor.CanCollide = false
  953.  
  954. ctor.FormFactor = "Custom"
  955.  
  956. ctor.Size = Vector3.new(.2,.2,.2)
  957.  
  958. ctor.Parent = mod
  959.  
  960. weld(tor,ctor)
  961.  
  962. local bg = Instance.new("BodyGyro",ctor)
  963.  
  964. bg.maxTorque = Vector3.new()
  965.  
  966. bg.P = 15000
  967.  
  968. bg.D = 1000
  969.  
  970. local bv = Instance.new("BodyVelocity",ctor)
  971.  
  972. bv.maxForce = Vector3.new()
  973.  
  974. bv.P = 15000
  975.  
  976. vel = Vector3.new()
  977.  
  978. cf = CFrame.new()
  979.  
  980. flspd = 0
  981.  
  982.  
  983. keysdown = {}
  984.  
  985. keypressed = {}
  986.  
  987. ktime = {}
  988.  
  989. descendtimer = 0
  990.  
  991. jumptime = tick()
  992.  
  993. hum.Jumping:connect(function()
  994.  
  995. jumptime = tick()
  996.  
  997. end)
  998.  
  999. cam = workspace.CurrentCamera
  1000.  
  1001. kd = plr:GetMouse().KeyDown:connect(oc(function(key)
  1002.  
  1003. keysdown[key] = true
  1004.  
  1005. keypressed[key] = true
  1006.  
  1007. if key == "q" then
  1008.  
  1009. descendtimer = tick()
  1010.  
  1011. elseif key == " " and not hum.Jump then
  1012.  
  1013. jumptime = tick()
  1014.  
  1015. elseif (key == "a" or key == "d") and ktime[key] and tick()-ktime[key] < .3 and math.abs(reqrotx) < .3 then
  1016.  
  1017. reqrotx = key == "a" and math.pi*2 or -math.pi*2
  1018.  
  1019. end
  1020.  
  1021. ktime[key] = tick()
  1022.  
  1023. end))
  1024.  
  1025. ku = plr:GetMouse().KeyUp:connect(function(key)
  1026.  
  1027. keysdown[key] = false
  1028.  
  1029. if key == " " then
  1030.  
  1031. descendtimer = tick()
  1032.  
  1033. end
  1034.  
  1035. end)
  1036.  
  1037. function mid(a,b,c)
  1038.  
  1039. return math.max(a,math.min(b,c or -a))
  1040.  
  1041. end
  1042.  
  1043. function bn(a)
  1044.  
  1045. return a and 1 or 0
  1046.  
  1047. end
  1048.  
  1049. function gm(tar)
  1050.  
  1051. local m = 0
  1052.  
  1053. for i,v in pairs(tar:GetChildren()) do
  1054.  
  1055. if v:IsA("BasePart") then
  1056.  
  1057. m = m + v:GetMass()
  1058.  
  1059. end
  1060.  
  1061. m = m + gm(v)
  1062.  
  1063. end
  1064.  
  1065. return m
  1066.  
  1067. end
  1068.  
  1069. reqrotx = 0
  1070.  
  1071. local grav = 196.2
  1072.  
  1073. local con
  1074.  
  1075. --[[if not mod:IsDescendantOf(workspace) then
  1076.  
  1077. pcall(function() kd:disconnect() end)
  1078.  
  1079. pcall(function() ku:disconnect() end)
  1080.  
  1081. bg:Destroy()
  1082.  
  1083. bv:Destroy()
  1084.  
  1085. con:disconnect()
  1086.  
  1087. script:Destroy()
  1088.  
  1089. return
  1090.  
  1091. end]]
  1092.  
  1093. local obvel = tor.CFrame:vectorToObjectSpace(tor.Velocity)
  1094.  
  1095. local sspd, uspd,fspd = obvel.X,obvel.Y,obvel.Z
  1096.  
  1097. local lfldir = fldir
  1098.  
  1099. fldir = cam.CoordinateFrame:vectorToWorldSpace(Vector3.new(bn(keysdown.d)-bn(keysdown.a),0,bn(keysdown.s)-bn(keysdown.w))).unit
  1100.  
  1101. local lmoving = moving
  1102.  
  1103. moving = fldir.magnitude > .1
  1104.  
  1105. if lmoving and not moving then
  1106.  
  1107. idledir = lfldir*Vector3.new(1,0,1)
  1108.  
  1109. descendtimer = tick()
  1110.  
  1111. end
  1112.  
  1113. local dbomb = fldir.Y < -.6 or (moving and keysdown["1"])
  1114.  
  1115. if moving and keysdown["0"] and lmoving then
  1116.  
  1117. fldir = (Vector3.new(lfldir.X,math.min(fldir.Y,lfldir.Y+.01)-.1,lfldir.Z)+(fldir*Vector3.new(1,0,1))*.05).unit
  1118.  
  1119. end
  1120.  
  1121. local down = tor.CFrame:vectorToWorldSpace(Vector3.new(0,-1,0))
  1122.  
  1123. local descending = (not moving and keysdown["q"] and not keysdown[" "])
  1124.  
  1125. cf = ccomplerp(cf,CFrame.new(tor.Position,tor.Position+(not moving and idledir or fldir)),keysdown["0"] and .02 or .07)
  1126.  
  1127. local gdown = not dbomb and cf.lookVector.Y < -.2 and tor.Velocity.unit.Y < .05
  1128.  
  1129. hum.PlatformStand = true
  1130.  
  1131. bg.maxTorque = Vector3.new(1,1,1)*9e5
  1132.  
  1133. local rotvel = CFrame.new(Vector3.new(),tor.Velocity):toObjectSpace(CFrame.new(Vector3.new(),fldir)).lookVector
  1134.  
  1135. bg.cframe = cf * CFrame.Angles(not moving and -.1 or -math.pi/2+.2,moving and mid(-2.5,rotvel.X/1.5) + reqrotx or 0,0)
  1136.  
  1137. reqrotx = reqrotx - reqrotx/10
  1138.  
  1139. bv.maxForce = Vector3.new(1,1,1)*9e4*.5
  1140.  
  1141. local anioff =(bn(keysdown[" "])-bn(keysdown["q"]))/2
  1142.  
  1143. vel = moving and cf.lookVector*flspd or Vector3.new()
  1144.  
  1145. flspd = math.min(120,lerp(flspd,moving and (fldir.Y<0 and flspd+(-fldir.Y)*grav/60 or math.max(50,flspd-fldir.Y*grav/300)) or 60,.4))
  1146.  
  1147. setwings(moving and (gdown and outlow or dbomb and divebomb) or (descending and veryhigh or flap1),15)
  1148.  
  1149. for i=1,4 do
  1150.  
  1151. --CFrame.Angles(-.5+bn(i==3)*2.4+bn(i==4)*.5,.1+bn(i==2)*.5-bn(i==3)*1.1,bn(i==3)*.1)
  1152.  
  1153. rwing[i].C0 = clerp(rwing[i].C0,oc0[rwing[i]] * (gdown and CFrame.new() or dbomb and CFrame.Angles(-.5+bn(i==3)*.4+bn(i==4)*.5,.1+bn(i==2)*.5-bn(i==3)*1.1,bn(i==3)*.1) or descending and CFrame.Angles(.3,0,0) or CFrame.Angles((i*.1+1.5)*ani,ani*-.5,1*ani)),descending and .8 or .2)
  1154.  
  1155. lwing[i].C0 = clerp(lwing[i].C0,oc0[lwing[i]] * (gdown and CFrame.new() or dbomb and CFrame.Angles(-(-.5+bn(i==3)*.4+bn(i==4)*.5),-(.1+bn(i==2)*.5-bn(i==3)*1.1),bn(i==3)*.1) or descending and CFrame.Angles(-.3,0,0) or CFrame.Angles(-(i*.1+1.5)*ani,ani*.5,1*ani)),descending and .8 or .2)
  1156.  
  1157. end
  1158.  
  1159. local hit,ray = workspace:FindPartOnRayWithIgnoreList(Ray.new(tor.Position,Vector3.new(0,-3.5+math.min(0,bv.velocity.y)/30,0)),{char})
  1160.  
  1161.  
  1162. hum.PlatformStand = false
  1163.  
  1164. tor.Velocity = Vector3.new()
  1165.  
  1166. end
  1167.  
  1168. else
  1169.  
  1170. bg.maxTorque = Vector3.new()
  1171.  
  1172. bv.maxForce = Vector3.new()
  1173.  
  1174. local ani = tickwave(walking and .8 or 4.5,1)
  1175.  
  1176. setwings(idle,10)
  1177.  
  1178. local x,y,z = fspd/160,uspd/700,sspd/900
  1179.  
  1180. for i=1,4 do
  1181.  
  1182. rwing[i].C0 = clerp(rwing[i].C0,oc0[rwing[i]] * CFrame.Angles(ani*.1 + -mid(-.1,x),0 + -mid(-.1,y) + bn(i==2)*.6,ani*.02 + -mid(-.1,z)),.2)
  1183.  
  1184. lwing[i].C0 = clerp(lwing[i].C0,oc0[lwing[i]] * CFrame.Angles(ani*-.05 + mid(-.1,x),0 + mid(-.1,y) + -bn(i==2)*.6,ani*.02 + mid(-.1,z)),.2)
  1185.  
  1186. end
  1187.  
  1188.  
  1189. vel = Vector3.new(0,50,0)
  1190.  
  1191. bv.velocity = vel
  1192.  
  1193. idledir = cam.CoordinateFrame.lookVector*Vector3.new(1,0,1)
  1194.  
  1195. cf = tor.CFrame * CFrame.Angles(-.01,0,0)
  1196.  
  1197. tor.CFrame = cf
  1198.  
  1199. bg.cframe = cf
  1200.  
  1201. end
  1202.  
  1203. end
  1204.  
  1205. keypressed = {}
  1206.  
  1207. end))
  1208.  
  1209.  
  1210. --Bird Wings By Rosemarijohn2
  1211.  
  1212. local LS = NewInstance('Motor',Char,{Part0=Torso,Part1=LArm,C0 = CF.N(-1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  1213. local RS = NewInstance('Motor',Char,{Part0=Torso,Part1=RArm,C0 = CF.N(1.5 * PlayerSize,0.5 * PlayerSize,0),C1 = CF.N(0,.5 * PlayerSize,0)})
  1214. local NK = NewInstance('Motor',Char,{Part0=Torso,Part1=Head,C0 = CF.N(0,1.5 * PlayerSize,0)})
  1215. local LH = NewInstance('Motor',Char,{Part0=Torso,Part1=LLeg,C0 = CF.N(-.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  1216. local RH = NewInstance('Motor',Char,{Part0=Torso,Part1=RLeg,C0 = CF.N(.5 * PlayerSize,-1 * PlayerSize,0),C1 = CF.N(0,1 * PlayerSize,0)})
  1217. local RJ = NewInstance('Motor',Char,{Part0=Root,Part1=Torso})
  1218. local HW = NewInstance('Motor',Char,{Part0=RArm,Part1=Knife,C0=CF.N(0,-1,-1)*CF.A(M.R(-90),0,0)})
  1219. local HW2 = NewInstance('Motor',Char,{Part0=Head,Part1=Hair,C0=CF.N(0,.25,0)})
  1220.  
  1221. local LSC0 = LS.C0
  1222. local RSC0 = RS.C0
  1223. local NKC0 = NK.C0
  1224. local LHC0 = LH.C0
  1225. local RHC0 = RH.C0
  1226. local RJC0 = RJ.C0
  1227.  
  1228. --// Artificial HB \\--
  1229.  
  1230. local ArtificialHB = IN("BindableEvent", script)
  1231. ArtificialHB.Name = "Heartbeat"
  1232.  
  1233. script:WaitForChild("Heartbeat")
  1234.  
  1235. local tf = 0
  1236. local allowframeloss = false
  1237. local tossremainder = false
  1238. local lastframe = tick()
  1239. local frame = 1/Frame_Speed
  1240. ArtificialHB:Fire()
  1241.  
  1242. game:GetService("RunService").Heartbeat:connect(function(s, p)
  1243. tf = tf + s
  1244. if tf >= frame then
  1245. if allowframeloss then
  1246. script.Heartbeat:Fire()
  1247. lastframe = tick()
  1248. else
  1249. for i = 1, math.floor(tf / frame) do
  1250. ArtificialHB:Fire()
  1251. end
  1252. lastframe = tick()
  1253. end
  1254. if tossremainder then
  1255. tf = 0
  1256. else
  1257. tf = tf - frame * math.floor(tf / frame)
  1258. end
  1259. end
  1260. end)
  1261.  
  1262. function swait(num)
  1263. if num == 0 or num == nil then
  1264. ArtificialHB.Event:wait()
  1265. else
  1266. for i = 0, num do
  1267. ArtificialHB.Event:wait()
  1268. end
  1269. end
  1270. end
  1271.  
  1272.  
  1273. --// Effect Function(s) \\--
  1274.  
  1275. function Bezier(startpos, pos2, pos3, endpos, t)
  1276. local A = startpos:lerp(pos2, t)
  1277. local B = pos2:lerp(pos3, t)
  1278. local C = pos3:lerp(endpos, t)
  1279. local lerp1 = A:lerp(B, t)
  1280. local lerp2 = B:lerp(C, t)
  1281. local cubic = lerp1:lerp(lerp2, t)
  1282. return cubic
  1283. end
  1284.  
  1285. function Tween(obj,props,time,easing,direction,repeats,backwards)
  1286. local info = TweenInfo.new(time or .5, easing or Enum.EasingStyle.Quad, direction or Enum.EasingDirection.Out, repeats or 0, backwards or false)
  1287. local tween = S.TweenService:Create(obj, info, props)
  1288.  
  1289. tween:Play()
  1290. end
  1291.  
  1292. local FXTable = {}
  1293.  
  1294. coroutine.resume(coroutine.create(function()
  1295. while true do
  1296. for i = 1, #FXTable do
  1297. local data = FXTable[i]
  1298. if(data)then
  1299. local Frame = data.Frame
  1300. local FX = data.Effect or 'ResizeAndFade'
  1301. local Parent = data.Parent or Effects
  1302. local Color = data.Color or C3.N(0,0,0)
  1303. local Size = data.Size or V3.N(1,1,1)
  1304. local MoveDir = data.MoveDirection or nil
  1305. local MeshData = data.Mesh or nil
  1306. local SndData = data.Sound or nil
  1307. local Frames = data.Frames or 45
  1308. local CFra = data.CFrame or Torso.CFrame
  1309. local Settings = data.FXSettings or {}
  1310. local Prt,Msh,Snd = data.Part,data.Mesh,data.Sound
  1311. local grow = data.Grow
  1312.  
  1313. local MoveSpeed = nil;
  1314. if(MoveDir)then
  1315. MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
  1316. end
  1317. if(FX ~= 'Arc')then
  1318. Frame = Frame + 1
  1319. if(FX == "Fade")then
  1320. Prt.Transparency = (Frame/Frames)
  1321. elseif(FX == "Resize")then
  1322. if(not Settings.EndSize)then
  1323. Settings.EndSize = V3.N(0,0,0)
  1324. end
  1325. if(Settings.EndIsIncrement)then
  1326. if(Msh)then
  1327. Msh.Scale = Msh.Scale + Settings.EndSize
  1328. else
  1329. Prt.Size = Prt.Size + Settings.EndSize
  1330. end
  1331. else
  1332. if(Msh)then
  1333. Msh.Scale = Msh.Scale - grow/Frames
  1334. else
  1335. Prt.Size = Prt.Size - grow/Frames
  1336. end
  1337. end
  1338. elseif(FX == "ResizeAndFade")then
  1339. if(not Settings.EndSize)then
  1340. Settings.EndSize = V3.N(0,0,0)
  1341. end
  1342. if(Settings.EndIsIncrement)then
  1343. if(Msh)then
  1344. Msh.Scale = Msh.Scale + Settings.EndSize
  1345. else
  1346. Prt.Size = Prt.Size + Settings.EndSize
  1347. end
  1348. else
  1349. if(Msh)then
  1350. Msh.Scale = Msh.Scale - grow/Frames
  1351. else
  1352. Prt.Size = Prt.Size - grow/Frames
  1353. end
  1354. end
  1355. Prt.Transparency = (Frame/Frames)
  1356. end
  1357. if(Settings.RandomizeCFrame)then
  1358. Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
  1359. end
  1360. if(MoveDir and MoveSpeed)then
  1361. local Orientation = Prt.Orientation
  1362. Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
  1363. Prt.Orientation = Orientation
  1364. end
  1365. if(Prt.Transparency >= 1 or Frame >= Frames)then
  1366. Prt:destroy()
  1367. table.remove(FXTable,i)
  1368. else
  1369. data.Frame = Frame
  1370. end
  1371. else
  1372. local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
  1373. if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
  1374. if(start and endP)then
  1375. local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1376. local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1377. Frame = Frame + (Settings.Speed or 0.01)
  1378. if(Settings.Home)then
  1379. endP = Settings.Home.CFrame
  1380. end
  1381. Prt.CFrame = Bezier(start, quarter, threequarter, endP, Frame)
  1382. if(Prt.Transparency >= 1 or Frame >= Frames)then
  1383. if(Settings.RemoveOnGoal)then
  1384. Prt:destroy()
  1385. end
  1386. end
  1387. else
  1388. Prt:destroy()
  1389. end
  1390. end
  1391. end
  1392. end
  1393. swait()
  1394. end
  1395. end))
  1396.  
  1397. function Effect(data)
  1398. local FX = data.Effect or 'ResizeAndFade'
  1399. local Parent = data.Parent or Effects
  1400. local Color = data.Color or C3.N(0,0,0)
  1401. local Size = data.Size or V3.N(1,1,1)
  1402. local MoveDir = data.MoveDirection or nil
  1403. local MeshData = data.Mesh or nil
  1404. local SndData = data.Sound or nil
  1405. local Frames = data.Frames or 45
  1406. local Manual = data.Manual or nil
  1407. local Material = data.Material or nil
  1408. local CFra = data.CFrame or Torso.CFrame
  1409. local Settings = data.FXSettings or {}
  1410. local Shape = data.Shape or Enum.PartType.Block
  1411. local Snd,Prt,Msh;
  1412. coroutine.wrap(function()
  1413. if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
  1414. Prt = Manual
  1415. else
  1416. Prt = Part(Parent,Color,Material,Size,CFra,true,false)
  1417. Prt.Shape = Shape
  1418. end
  1419. if(typeof(MeshData) == 'table')then
  1420. Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
  1421. elseif(typeof(MeshData) == 'Instance')then
  1422. Msh = MeshData:Clone()
  1423. Msh.Parent = Prt
  1424. elseif(Shape == Enum.PartType.Block)then
  1425. Msh = Mesh(Prt,Enum.MeshType.Brick)
  1426. end
  1427. if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
  1428. Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
  1429. end
  1430. if(Snd)then
  1431. repeat swait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
  1432. Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
  1433. end
  1434. Size = (Msh and Msh.Scale or Size)
  1435. local grow = Size-(Settings.EndSize or (Msh and Msh.Scale or Size)/2)
  1436.  
  1437. local MoveSpeed = nil;
  1438. if(MoveDir)then
  1439. MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
  1440. end
  1441. if(FX ~= 'Arc')then
  1442. for Frame = 1, Frames do
  1443. if(FX == "Fade")then
  1444. Prt.Transparency = (Frame/Frames)
  1445. elseif(FX == "Resize")then
  1446. if(not Settings.EndSize)then
  1447. Settings.EndSize = V3.N(0,0,0)
  1448. end
  1449. if(Settings.EndIsIncrement)then
  1450. if(Msh)then
  1451. Msh.Scale = Msh.Scale + Settings.EndSize
  1452. else
  1453. Prt.Size = Prt.Size + Settings.EndSize
  1454. end
  1455. else
  1456. if(Msh)then
  1457. Msh.Scale = Msh.Scale - grow/Frames
  1458. else
  1459. Prt.Size = Prt.Size - grow/Frames
  1460. end
  1461. end
  1462. elseif(FX == "ResizeAndFade")then
  1463. if(not Settings.EndSize)then
  1464. Settings.EndSize = V3.N(0,0,0)
  1465. end
  1466. if(Settings.EndIsIncrement)then
  1467. if(Msh)then
  1468. Msh.Scale = Msh.Scale + Settings.EndSize
  1469. else
  1470. Prt.Size = Prt.Size + Settings.EndSize
  1471. end
  1472. else
  1473. if(Msh)then
  1474. Msh.Scale = Msh.Scale - grow/Frames
  1475. else
  1476. Prt.Size = Prt.Size - grow/Frames
  1477. end
  1478. end
  1479. Prt.Transparency = (Frame/Frames)
  1480. end
  1481. if(Settings.RandomizeCFrame)then
  1482. Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
  1483. end
  1484. if(MoveDir and MoveSpeed)then
  1485. local Orientation = Prt.Orientation
  1486. Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
  1487. Prt.Orientation = Orientation
  1488. end
  1489. swait()
  1490. end
  1491. Prt:destroy()
  1492. else
  1493. local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
  1494. if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
  1495. if(start and endP)then
  1496. local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1497. local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  1498. for Frame = 0, 1, (Settings.Speed or 0.01) do
  1499. if(Settings.Home)then
  1500. endP = Settings.Home.CFrame
  1501. end
  1502. Prt.CFrame = Bezier(start, quarter, threequarter, endP, Frame)
  1503. end
  1504. if(Settings.RemoveOnGoal)then
  1505. Prt:destroy()
  1506. end
  1507. else
  1508. Prt:destroy()
  1509. assert(start,"You need a start position!")
  1510. assert(endP,"You need a start position!")
  1511. end
  1512. end
  1513. end)()
  1514. return Prt,Msh,Snd
  1515. end
  1516.  
  1517.  
  1518.  
  1519. function SoulSteal(whom,human)
  1520. local torso = (whom:FindFirstChild'Torso' or whom:FindFirstChild'UpperTorso' or whom:FindFirstChild'LowerTorso' or whom:FindFirstChild'HumanoidRootPart' or whom:FindFirstChild'Torso')
  1521. local succ, health, alive = pcall(function() return whom:FindFirstChildOfClass'Humanoid'.Health, whom:FindFirstChildOfClass'Humanoid'.Health > 0 end)
  1522. if(torso and torso:IsA'BasePart' and alive == true)then
  1523. whom:FindFirstChildOfClass'Humanoid'.Health = 0
  1524. whom:BreakJoints()
  1525. local Model = IN("Model",Effects)
  1526. warn('Soul stolen from '..whom.Name)
  1527. Model.Name = whom.Name.."'s Soul"
  1528. local Soul = Part(Model,(human and BrickColor.new'Really red' or BrickColor.new(C3.N(1,1,1))),'Glass',V3.N(1,1,1),torso.CFrame,true,false)
  1529. Soul.CanCollide=false
  1530. Mesh(Soul,Enum.MeshType.Sphere)
  1531. Soul.Name = 'Head'
  1532. if(whom.Name == 'CKbackup')then
  1533. Soul.Color = C3.N(1,1,1)
  1534. local DripEmitter = NewInstance("ParticleEmitter",Soul,{EmissionDirection='Bottom',Color=CS(Soul.Color),LightEmission=.5,LightInfluence=0,Size=NumberSequence.new(0.3),Texture="rbxassetid://243132757",Transparency=NumberSequence.new(0,1),LockedToPart=false,Lifetime=NumberRange.new(1),Rate=150,Speed=NumberRange.new(5)})
  1535. end
  1536. local Hoom = NewInstance("Humanoid",Model,{MaxHealth=(health <= 10000 and health/2 or 10000),Health=(health <= 10000 and health/2 or 10000)})
  1537. local AT0 = NewInstance("Attachment",Soul,{Position=V3.N(0,.5,0)})
  1538. local AT1 = NewInstance("Attachment",Soul,{Position=V3.N(0,-.5,0)})
  1539. local Trail = NewInstance("Trail",Soul,{Attachment0=AT0,Attachment1=AT1,Transparency=NumberSequence.new(0),FaceCamera = true,Texture="rbxassetid://945758042",LightEmission=.3,Color=CS(Soul.Color),Lifetime=.5,MinLength=0})
  1540. NewInstance("PointLight",Soul,{Color=Soul.Color,Range=10,Brightness=(human and 3 or .5)})
  1541.  
  1542. local turdso = Soul:Clone()
  1543. turdso.Name = "Torso"
  1544. turdso.CanCollide = false
  1545. turdso.Anchored = true
  1546. turdso.CFrame = Soul.CFrame
  1547. turdso.Parent = Model
  1548. turdso.Size = V3.N()
  1549. turdso.Transparency=1
  1550. local Distance = math.huge
  1551. repeat
  1552. Soul.CFrame = CF.N(Soul.Position,Torso.Position)*CF.N(0,0,-1)
  1553. turdso.CFrame = Soul.CFrame
  1554. Distance = (Soul.CFrame.p-Torso.CFrame.p).magnitude
  1555. swait()
  1556. until Hoom.Health <= 0 or not Soul.Parent or Distance <= 1.2
  1557. if(Soul.Parent and Hoom.Health > 0)then
  1558. Model:destroy()
  1559. Effect{
  1560. Effect="ResizeAndFade",
  1561. Mesh={Enum.MeshType.Sphere},
  1562. Color = Soul.Color,
  1563. CFrame=Torso.CFrame,
  1564. Size=V3.N(3,3,3),
  1565. Material=Enum.Material.Neon,
  1566. Sound={SoundId=444667859,Pitch=1,Volume=2.5},
  1567. FXSettings={
  1568. EndSize=V3.N(6,6,6),
  1569. }
  1570. }
  1571. Souls = Souls + (human and 1 or .1)
  1572. warn("Souls: "..Souls)
  1573. MaxHealth = MaxHealth + Hoom.Health
  1574. Hum.Health = Hum.Health + Hoom.Health
  1575. for i = 1, 5 do
  1576. Effect{
  1577. Effect="Fade",
  1578. Color = Soul.Color,
  1579. MoveDirection = (Torso.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
  1580. }
  1581. end
  1582. else
  1583.  
  1584. warn("Soul destroyed!")
  1585. for i = 1, 5 do
  1586. Effect{
  1587. Effect="Fade",
  1588. Color = Soul.Color,
  1589. CFrame=Soul.CFrame,
  1590. MoveDirection = (Soul.CFrame*CFrame.new(M.RNG(-40,40),M.RNG(-40,40),M.RNG(-40,40))).p
  1591. }
  1592. end
  1593. Effect{
  1594. Effect="ResizeAndFade",
  1595. Mesh={Enum.MeshType.Sphere},
  1596. Sound={SoundId=444667859,Pitch=1,Volume=5},
  1597. Color = Soul.Color,
  1598. CFrame=Soul.CFrame,
  1599. Size=V3.N(3,3,3),
  1600. Material=Enum.Material.Neon,
  1601. FXSettings={
  1602. EndSize=V3.N(6,6,6),
  1603. }
  1604. }
  1605. Model:destroy()
  1606. end
  1607. end
  1608. end
  1609.  
  1610. --// Other Functions \\ --
  1611.  
  1612. function getRegion(point,range,ignore)
  1613. return workspace:FindPartsInRegion3WithIgnoreList(R3.N(point-V3.N(1,1,1)*range/2,point+V3.N(1,1,1)*range/2),ignore,100)
  1614. end
  1615.  
  1616. function clerp(startCF,endCF,alpha)
  1617. return startCF:lerp(endCF, alpha)
  1618. end
  1619.  
  1620. function GetTorso(char)
  1621. return char:FindFirstChild'Torso' or char:FindFirstChild'UpperTorso' or char:FindFirstChild'LowerTorso' or char:FindFirstChild'HumanoidRootPart'
  1622. end
  1623.  
  1624. function ShowDamage(Pos, Text, Time, Color)
  1625. coroutine.wrap(function()
  1626. local Rate = (1 / Frame_Speed)
  1627. local Pos = (Pos or Vector3.new(0, 0, 0))
  1628. local Text = (Text or "")
  1629. local Time = (Time or 2)
  1630. local Color = (Color or Color3.new(1, 0, 1))
  1631. local EffectPart = NewInstance("Part",Effects,{
  1632. Material=Enum.Material.SmoothPlastic,
  1633. Reflectance = 0,
  1634. Transparency = 1,
  1635. BrickColor = BrickColor.new(Color),
  1636. Name = "Effect",
  1637. Size = Vector3.new(0,0,0),
  1638. Anchored = true,
  1639. CFrame = CF.N(Pos)
  1640. })
  1641. local BillboardGui = NewInstance("BillboardGui",EffectPart,{
  1642. Size = UDim2.new(1.25, 0, 1.25, 0),
  1643. Adornee = EffectPart,
  1644. })
  1645. local TextLabel = NewInstance("TextLabel",BillboardGui,{
  1646. BackgroundTransparency = 1,
  1647. Size = UDim2.new(1, 0, 1, 0),
  1648. Text = Text,
  1649. Font = "Arcade",
  1650. TextColor3 = Color,
  1651. TextStrokeColor3 = Color3.new(0,0,0),
  1652. TextStrokeTransparency=0,
  1653. TextScaled = true,
  1654. })
  1655. S.Debris:AddItem(EffectPart, (Time))
  1656. EffectPart.Parent = workspace
  1657. delay(0, function()
  1658. Tween(EffectPart,{CFrame=CF.N(Pos)*CF.N(0,3,0)},Time,Enum.EasingStyle.Elastic,Enum.EasingDirection.Out)
  1659. local Frames = (Time / Rate)
  1660. for Frame = 1, Frames do
  1661. swait()
  1662. local Percent = (Frame / Frames)
  1663. TextLabel.TextTransparency = Percent
  1664. TextLabel.TextStrokeTransparency = Percent
  1665. end
  1666. if EffectPart and EffectPart.Parent then
  1667. EffectPart:Destroy()
  1668. end
  1669. end) end)()
  1670. end
  1671.  
  1672. function Kill(whom)
  1673. if(whom.Name ~= 'Nebula_Zorua')then
  1674. local isPlr = Plrs:GetPlayerFromCharacter(whom) ~= nil
  1675. coroutine.wrap(SoulSteal)(whom,isPlr)
  1676. for _,v in next, whom:children() do
  1677. if(v:IsA'BasePart')then
  1678. v.Parent = Effects
  1679. v:ClearAllChildren()
  1680. v.Anchored = true
  1681. v.CanCollide = false
  1682. v.Transparency = 1
  1683. local dust = NewInstance("ParticleEmitter",v,{
  1684. Color = ColorSequence.new(C3.N(1,1,1)),
  1685. LightEmission=0,
  1686. LightInfluence=1,
  1687. Size=NumberSequence.new{NumberSequenceKeypoint.new(0,1,0),NumberSequenceKeypoint.new(1,0,0)},
  1688. Texture="rbxassetid://284205403",
  1689. Transparency=NumberSequence.new{NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,1,0)},
  1690. Lifetime = NumberRange.new(1),
  1691. Rate=150,
  1692. Acceleration = V3.N(0,10,0),
  1693. Speed = NumberRange.new(5),
  1694. Enabled = true
  1695. })
  1696. delay(1, function()
  1697. dust.Enabled = false
  1698. S.Debris:AddItem(v,2)
  1699. end)
  1700. end
  1701. end
  1702. else
  1703. warn"nope. nawt happenin'"
  1704. end
  1705. end
  1706.  
  1707. function DealDamage(who,minDam,maxDam,Knock,Type,critChance,critMult)
  1708. if(who)then
  1709. local hum = who:FindFirstChildOfClass'Humanoid'
  1710. local Damage = M.RNG(minDam,maxDam)
  1711. local canHit = true
  1712. if(hum)then
  1713. for _, p in pairs(Hit) do
  1714. if p[1] == hum then
  1715. if(time() - p[2] < 0.4) then
  1716. canHit = false
  1717. else
  1718. Hit[_] = nil
  1719. end
  1720. end
  1721. end
  1722. if(canHit)then
  1723. table.insert(Hit,{hum,time()})
  1724. if(GetTorso(who))then
  1725. Sound(GetTorso(who),406913243,1,10,false,true,true)
  1726. end
  1727. if(hum.Health >= math.huge)then
  1728. Kill(who)
  1729. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1730. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)+V3.N(M.RNG(-2,2),0,M.RNG(-2,2))), "INSTANT", 3, DamageColor.Color)
  1731. end
  1732. else
  1733. local player = S.Players:GetPlayerFromCharacter(who)
  1734. if(Type == "Fire")then
  1735. --idk..
  1736. else
  1737. local c = Instance.new("ObjectValue",hum)
  1738. c.Name = "creator"
  1739. c.Value = Plr
  1740. game:service'Debris':AddItem(c,0.35)
  1741. local Crit = false
  1742. if(M.RNG(1,100) <= (critChance or 0) and critMult > 1)then
  1743. Crit = true
  1744. Damage = Damage*(critMult or 2)
  1745. end
  1746. Damage = Damage*((Souls/5)+1)
  1747. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1748. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)+V3.N(M.RNG(-2,2),0,M.RNG(-2,2))), (Crit and "[CRIT] " or "").. math.floor(Damage), 3, (Crit and BrickColor.new'New Yeller'.Color or DamageColor.Color))
  1749. end
  1750.  
  1751. if(hum.Health - Damage <= 0)then
  1752. Kill(who)
  1753. else
  1754. hum.Health = hum.Health - Damage
  1755. if(Type == 'Knockback' and GetTorso(who))then
  1756. local angle = GetTorso(who).Position - Root.Position + Vector3.new(0, 0, 0).unit
  1757. local body = NewInstance('BodyVelocity',GetTorso(who),{
  1758. P = 500,
  1759. maxForce = V3.N(math.huge,0,math.huge),
  1760. velocity = Root.CFrame.lookVector * Knock + Root.Velocity / 1.05
  1761. })
  1762. game:service'Debris':AddItem(body,.5)
  1763. elseif(Type == "Electric")then
  1764. if(M.RNG(1,100) >= critChance)then
  1765. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1766. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)+V3.N(M.RNG(-2,2),0,M.RNG(-2,2))), "[PARALYZED]", 3, BrickColor.new"New Yeller".Color)
  1767. end
  1768. local asd = hum.WalkSpeed/2
  1769. hum.WalkSpeed = asd
  1770. local paralyzed = true
  1771. coroutine.wrap(function()
  1772. while paralyzed do
  1773. swait(25)
  1774. if(M.RNG(1,25) == 1)then
  1775. if(who:FindFirstChild'Head' and hum.Health > 0)then
  1776. ShowDamage((who.Head.CFrame * CF.N(0, 0, (who.Head.Size.Z / 2)).p+V3.N(0,1.5,0)+V3.N(M.RNG(-2,2),0,M.RNG(-2,2))), "[STATIC]", 3, BrickColor.new"New Yeller".Color)
  1777. end
  1778. hum.PlatformStand = true
  1779. end
  1780. end
  1781. end)()
  1782. delay(4, function()
  1783. paralyzed = false
  1784. hum.WalkSpeed = hum.WalkSpeed + asd
  1785. end)
  1786. end
  1787.  
  1788. elseif(Type == 'Knockdown' and GetTorso(who))then
  1789. local rek = GetTorso(who)
  1790. hum.PlatformStand = true
  1791. delay(1,function()
  1792. hum.PlatformStand = false
  1793. end)
  1794. local angle = (GetTorso(who).Position - (Root.Position + Vector3.new(0, 0, 0))).unit
  1795. local bodvol = NewInstance("BodyVelocity",rek,{
  1796. velocity = angle * Knock,
  1797. P = 5000,
  1798. maxForce = Vector3.new(8e+003, 8e+003, 8e+003),
  1799. })
  1800. local rl = NewInstance("BodyAngularVelocity",rek,{
  1801. P = 3000,
  1802. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  1803. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  1804. })
  1805. game:GetService("Debris"):AddItem(bodvol, .5)
  1806. game:GetService("Debris"):AddItem(rl, .5)
  1807. end
  1808. end
  1809. end
  1810. end
  1811. end
  1812. end
  1813. end
  1814. end
  1815.  
  1816.  
  1817. function AOEDamage(where,range,minDam,maxDam,Knock,Type,critChance,critMult)
  1818. for _,v in next, getRegion(where,range,{Char}) do
  1819. if(v.Name ~= 'Nebula_Zorua')then
  1820. if(v.Parent and v.Parent:FindFirstChildOfClass'Humanoid')then
  1821. DealDamage(v.Parent,minDam,maxDam,Knock,Type,critChance,critMult)
  1822. end
  1823. end
  1824. end
  1825. end
  1826.  
  1827. function AOEKill(where,range)
  1828. for _,v in next, getRegion(where,range,{Char,Effects}) do
  1829. local succ,alive = pcall(function() return v.Parent:FindFirstChildOfClass'Humanoid'.Health > 0 end)
  1830. if(v.Name ~= 'Nebula_Zorua')then
  1831. if(v.Parent and alive == true)then
  1832. coroutine.wrap(Kill)(v.Parent)
  1833. end
  1834. end
  1835. end
  1836. end
  1837.  
  1838. function AOEHeal(where,range,amount)
  1839. local healed = {}
  1840. for _,v in next, getRegion(where,range,{Char}) do
  1841. local hum = (v.Parent and v.Parent:FindFirstChildOfClass'Humanoid' or nil)
  1842. if(hum and not healed[hum])then
  1843. hum.Health = hum.Health + amount
  1844. if(v.Parent:FindFirstChild'Head' and hum.Health > 0)then
  1845. ShowDamage((v.Parent.Head.CFrame * CF.N(0, 0, (v.Parent.Head.Size.Z / 2)).p+V3.N(0,1.5,0)), "+"..amount, 1.5, BrickColor.new'Lime green'.Color)
  1846. end
  1847. end
  1848. end
  1849. end
  1850.  
  1851.  
  1852. --// Attack Functions \\--
  1853.  
  1854.  
  1855. function Slash()
  1856. Attack = true
  1857. NeutralAnims = false
  1858. local sound = Sound(Knife,437475935,1,5,false,true,false)
  1859. for i = 0, 2, 0.1 do
  1860. swait()
  1861. local Alpha = .2
  1862. RJ.C0 = clerp(RJ.C0,CFrame.new(0.0343287587, 0.00629056804, 0.0572580174, 0.943793893, 0.00207689893, 0.330528289, 1.0000764e-06, 0.99998033, -0.00628630351, -0.330534875, 0.00593330665, 0.943775296),Alpha)
  1863. LH.C0 = clerp(LH.C0,CFrame.new(-0.496478021, -0.990818381, 0.021652732, 0.999878168, 0, 0.0156089365, -9.80779296e-05, 0.99998033, 0.00628268253, -0.0156086385, -0.00628344761, 0.999858379),Alpha)
  1864. RH.C0 = clerp(RH.C0,CFrame.new(0.498511612, -0.990985274, 0.0154910646, 0.999878168, 0, 0.0156089365, -9.80779296e-05, 0.99998033, 0.00628268253, -0.0156086385, -0.00628344761, 0.999858379),Alpha)
  1865. LS.C0 = clerp(LS.C0,CFrame.new(-1.32692134, 0.474511296, -0.0055731535, 0.934981823, 0.354351997, 0.0156129003, -0.354479939, 0.93504262, 0.00628374517, -0.0123721063, -0.0114096552, 0.999858379),Alpha)
  1866. RS.C0 = clerp(RS.C0,CFrame.new(1.12629449, 0.369358033, -0.486052871, 0.490151912, 0.65154773, 0.57899636, 0.721657813, 0.0691910982, -0.688783586, -0.488836735, 0.755445719, -0.436280251),Alpha)
  1867. NK.C0 = clerp(NK.C0,CFrame.new(-0.0118216109, 1.49854016, -0.0795068145, 0.943793833, 0.0190048125, -0.329988182, 0.00207654224, 0.997985244, 0.0634154305, 0.330528468, -0.0605363287, 0.94185257),Alpha)
  1868. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  1869. end
  1870. KTrail.Enabled = true
  1871. sound:Play()
  1872. for i = 0, 2.5, 0.1 do
  1873. swait()
  1874. AOEDamage(Knife.CFrame.p,1,15,30,0,"Normal",0,1)
  1875. local Alpha = .25
  1876. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0352100767, 0.00629066909, -0.0097481478, 0.817972422, -0.00361463916, -0.575246274, -1.74103582e-06, 0.99998033, -0.00628598873, 0.575257719, 0.00514276745, 0.817956269),Alpha)
  1877. LH.C0 = clerp(LH.C0,CFrame.new(-0.496478021, -0.990818381, 0.0216572341, 0.999878287, 0, 0.015610218, -9.80866607e-05, 0.99998033, 0.00628274865, -0.0156098902, -0.00628351374, 0.999858499),Alpha)
  1878. RH.C0 = clerp(RH.C0,CFrame.new(0.498511702, -0.990985274, 0.0154905058, 0.999878287, 0, 0.015610218, -9.80866607e-05, 0.99998033, 0.00628274865, -0.0156098902, -0.00628351374, 0.999858499),Alpha)
  1879. LS.C0 = clerp(LS.C0,CFrame.new(-1.32694602, 0.474510223, -0.00555660389, 0.934981823, 0.354351729, 0.0156157613, -0.354479671, 0.935042739, 0.00628153514, -0.012375474, -0.0114085823, 0.999858379),Alpha)
  1880. RS.C0 = clerp(RS.C0,CFrame.new(1.23906493, 0.406229913, 0.00231830776, 0.49015066, -0.849889755, 0.193494052, 0.721655607, 0.520183682, 0.456752002, -0.488841236, -0.0842411816, 0.868295968),Alpha)
  1881. NK.C0 = clerp(NK.C0,CFrame.new(0.0315471888, 1.49887729, -0.0257819965, 0.817972481, -0.0330747738, 0.574305832, -0.00361499586, 0.998030663, 0.0626262054, -0.575246155, -0.0533026271, 0.81624186),Alpha)
  1882. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  1883. end
  1884. KTrail.Enabled = false
  1885. Attack = false
  1886. NeutralAnims = true
  1887. end
  1888.  
  1889. Mouse.Button1Down:connect(function()
  1890. if(Attack)then return end
  1891. Slash()
  1892. end)
  1893.  
  1894. Mouse.KeyDown:connect(function(k)
  1895. if(Attack)then return end
  1896. if(k == 'z')then AOEKill(Root.CFrame.p,25) end -- TODO: Animation and effects
  1897. if(k == 'q')then WalkSpeed = (WalkSpeed == 8 and 32 or 8) end
  1898. end)
  1899.  
  1900.  
  1901. function Refuse()
  1902. Attack = true
  1903. warn("B u t i t r e f u s e d.")
  1904. local oMH = MaxHealth
  1905. MaxHealth = "inf"
  1906. Hum.MaxHealth = "inf"
  1907. Hum.Health = "inf"
  1908. Char.Parent = nil
  1909. Hum:destroy()
  1910. if(not _G.RefusedAnimation)then
  1911. _G.RefusedAnimation = true
  1912.  
  1913.  
  1914. local Soul;
  1915. function Soul(where,decalId)
  1916. local destroy = false
  1917. local soul = NewInstance("Part",workspace)
  1918. soul.Name = "Soul"
  1919. soul.Transparency=1
  1920. soul.Size = V3.N(2,2,.05)
  1921. soul.Anchored=true
  1922. soul.CanCollide=false
  1923. soul.CFrame = where
  1924. local heartF = NewInstance("Decal",soul,{Face=Enum.NormalId.Front,Texture="rbxassetid://"..decalId})
  1925. local heartB = NewInstance("Decal",soul,{Face=Enum.NormalId.Back,Texture="rbxassetid://"..decalId})
  1926. return soul,heartF,heartB
  1927. end
  1928. local owo = Root.CFrame
  1929. local s,f,b = Soul(owo,1569347904)
  1930. swait(60)
  1931. local snd = Sound(s,862552636,1,5,false,false,false)
  1932. snd:Play()
  1933. f.Texture = "rbxassetid://1569348344"
  1934. b.Texture = "rbxassetid://1569348344"
  1935. swait(15)
  1936. snd:Stop()
  1937. swait(60)
  1938. print'lol'
  1939. for i = 0, 6, .1 do
  1940. swait()
  1941. s.CFrame = owo * CF.N(M.RNG(-50,50)/100,M.RNG(-50,50)/100,M.RNG(-50,50)/100)
  1942. end
  1943. local snd = Sound(s,862552636,1,5,false,false,false)
  1944. snd:Play()
  1945. s.CFrame = owo
  1946. f.Texture = "rbxassetid://1569347904"
  1947. b.Texture = "rbxassetid://1569347904"
  1948. swait(15)
  1949. snd:Stop()
  1950. swait(60)
  1951.  
  1952. s:destroy()
  1953. end
  1954.  
  1955. RJ.Parent = Char
  1956. LS.Parent = Char
  1957. RS.Parent = Char
  1958. LH.Parent = Char
  1959. RH.Parent = Char
  1960. NK.Parent = Char
  1961.  
  1962. LArm.Parent = Char
  1963. RArm.Parent = Char
  1964. LLeg.Parent = Char
  1965. LArm.Parent = Char
  1966. Root.Parent = Char
  1967. Torso.Parent = Char
  1968. Head.Parent = Char
  1969.  
  1970. Knife.Parent = Char
  1971. Hair.Parent = Char
  1972.  
  1973. HW.Parent = Char
  1974. HW2.Parent = Char
  1975.  
  1976.  
  1977. REye:destroy()
  1978. LEye:destroy()
  1979.  
  1980. for _,v in next, Char:children() do
  1981. if(v.Name == 'ShadowFace')then v:destroy() end
  1982. end
  1983. LEye = Part(Char,C3.N(1,1,1),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  1984. LEyeM = Mesh(LEye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  1985. LEyeW = NewInstance("Weld",LEye,{Part0=Head,Part1=LEye,C0=CF.N(-.2,.2,-.49)})
  1986.  
  1987. REye = Part(Char,C3.N(1,1,1),Enum.Material.Neon,V3.N(.15,.25,.2),CF.N(),false,false)
  1988. REyeM = Mesh(REye,Enum.MeshType.Sphere,"","",V3.N(1,1,1),V3.N())
  1989. REyeW = NewInstance("Weld",REye,{Part0=Head,Part1=REye,C0=CF.N(.2,.2,-.49)})
  1990. for i = 1, 35 do
  1991. local FACE = Part(Char,C3.N(0,0,0),Enum.Material.Neon,V3.N(1.01,.5,1.01),CF.N(),false,false)
  1992. FACE.Transparency = 0+(i-1)/35.2
  1993. FACE.Name = 'ShadowFace'
  1994. Head:FindFirstChildOfClass("SpecialMesh"):Clone().Parent = FACE
  1995. NewInstance("Weld",Head,{Part0=Head,Part1=FACE,C0=CF.N(0,.35-(i-1)/75,0)})
  1996. --CreateWeldOrSnapOrMotor("Weld", Head, Head, FACE, CF(0,0.35-(i-1)/75,0), CF(0, 0, 0))
  1997. end
  1998. Hum = NewInstance("Humanoid",Char,{DisplayDistanceType='None'})
  1999. ConnectHum()
  2000. MaxHealth = oMH
  2001. Hum.MaxHealth = MaxHealth
  2002. Hum.Health = MaxHealth
  2003. swait(5)
  2004. Char.Parent = workspace
  2005.  
  2006. Attack = false
  2007. end
  2008.  
  2009. function ConnectHum()
  2010. Hum.Died:connect(Refuse)
  2011. end
  2012. ConnectHum()
  2013.  
  2014.  
  2015. --// Wrap it all up \\--
  2016. while true do
  2017. swait()
  2018. Sine = Sine + Change
  2019. if(not Music)then
  2020. Music = Sound(Torso,MusicID,1,3,true,false,true)
  2021. Music.Name = 'Music'
  2022. end
  2023. Music.Pitch = 1
  2024. Music.Volume = 5
  2025. Music.SoundId = "rbxassetid://"..MusicID
  2026. Music.Parent = Torso
  2027. Music:Resume()
  2028. local hitfloor,posfloor = workspace:FindPartOnRay(Ray.new(Root.CFrame.p,((CFrame.new(Root.Position,Root.Position - Vector3.new(0,1,0))).lookVector).unit * 4), Char)
  2029. local Walking = (math.abs(Root.Velocity.x) > 1 or math.abs(Root.Velocity.z) > 1)
  2030. local State = (Hum.PlatformStand and 'Paralyzed' or Hum.Sit and 'Sit' or not hitfloor and Root.Velocity.y < -1 and "Fall" or not hitfloor and Root.Velocity.y > 1 and "Jump" or hitfloor and Walking and "Walk" or hitfloor and "Idle")
  2031. if(not Effects or not Effects.Parent)then
  2032. Effects = IN("Model",Char)
  2033. Effects.Name = "Effects"
  2034. end
  2035. Hum.WalkSpeed = WalkSpeed
  2036. if(State == 'Walk')then
  2037. if(Hum.WalkSpeed >= 24)then
  2038. local wsVal = 22 / (Hum.WalkSpeed/16)
  2039. local Alpha = math.min(.1 * (Hum.WalkSpeed/16),1)
  2040. Change = 2
  2041. RH.C1 = RH.C1:lerp(CF.N(0,1,0)*CF.N(0,0-.2*M.C(Sine/wsVal),0+.4*M.C(Sine/wsVal))*CF.A(M.R(25+45*M.C(Sine/wsVal))+-M.S(Sine/wsVal),0,0),Alpha)
  2042. LH.C1 = LH.C1:lerp(CF.N(0,1,0)*CF.N(0,0+.2*M.C(Sine/wsVal),0-.4*M.C(Sine/wsVal))*CF.A(M.R(25-45*M.C(Sine/wsVal))+M.S(Sine/wsVal),0,0),Alpha)
  2043. else
  2044. Change = .9
  2045. local wsVal = 8 / (Hum.WalkSpeed/8)
  2046. local Alpha = math.min(.2 * (Hum.WalkSpeed/8),1)
  2047. LH.C1 = LH.C1:lerp(CF.N(0,1-.2*M.C(Sine/wsVal)/2,.4*M.C(Sine/wsVal)/2)*CF.A(M.R(15-2*M.C(Sine/wsVal))-M.S(Sine/wsVal)/2.5,0,0)*CF.A(M.R(0-3*M.C(Sine/wsVal)),0,0),Alpha)
  2048. RH.C1 = RH.C1:lerp(CF.N(0,1+.2*M.C(Sine/wsVal)/2,-.4*M.C(Sine/wsVal)/2)*CF.A(M.R(15+2*M.C(Sine/wsVal))+M.S(Sine/wsVal)/2.5,0,0)*CF.A(M.R(0+3*M.C(Sine/wsVal)),0,0),Alpha)
  2049. end
  2050. else
  2051. RH.C1 = RH.C1:lerp(CF.N(0,1,0),.1)
  2052. LH.C1 = LH.C1:lerp(CF.N(0,1,0),.1)
  2053. end
  2054.  
  2055. if(Hum.MaxHealth ~= MaxHealth)then
  2056. Hum.MaxHealth = MaxHealth
  2057. end
  2058. Hum.DisplayDistanceType='None'
  2059. if(NeutralAnims)then
  2060. if(State == 'Idle')then
  2061. Change = 1
  2062. local Alpha = .1
  2063. RJ.C0 = clerp(RJ.C0,CFrame.new(-0.0999571308, 0+.05*M.C(Sine/16), -0.237876296, 0.857335567, -0.00323621999, -0.514731407, 0, 0.99998033, -0.00628707698, 0.51474154, 0.00539013464, 0.85731858),Alpha)
  2064. LH.C0 = clerp(LH.C0,CFrame.new(-0.536091685, -0.991042495-.05*M.C(Sine/16), -0.0134909991, 0.849195242, 0, 0.528063774, -0.00331997755, 0.99998033, 0.00533895614, -0.528053343, -0.00628707698, 0.849178433),Alpha)
  2065. RH.C0 = clerp(RH.C0,CFrame.new(0.529067397, -0.991597891-.05*M.C(Sine/16), -0.0818087086, 0.849195242, 0, 0.528063774, -0.00331997755, 0.99998033, 0.00533895614, -0.528053343, -0.00628707698, 0.849178433),Alpha)
  2066. LS.C0 = clerp(LS.C0,CFrame.new(-1.32175505, 0.156236127+.15*M.C(Sine/16), 0.233877867, 0.877554953, -0.456876248, 0.145469457, 0.259513229, 0.707695842, 0.657129884, -0.403175086, -0.538916171, 0.739607573),Alpha)
  2067. RS.C0 = clerp(RS.C0,CFrame.new(1.2516855, 0.604915917+.15*M.C(Sine/16), -0.0189059302, 0.915104508, -0.287113011, -0.283108115, 0.301054537, 0.953587949, 0.00603589695, 0.268235415, -0.0907544345, 0.959069014),Alpha)
  2068. NK.C0 = clerp(NK.C0,CFrame.new(1.79447234e-05, 1.49895597, -0.0143749639, 0.769539058, -0.360377938, 0.527197778, 0.387706369, 0.919646919, 0.0627188534, -0.507438183, 0.156133309, 0.847424924),Alpha)
  2069. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  2070. -- idle
  2071. elseif(State == 'Walk')then
  2072. if(Hum.WalkSpeed >= 24)then
  2073. local wsVal = 22 / (Hum.WalkSpeed/16)
  2074. local Alpha = math.min(.2 * (Hum.WalkSpeed/16),1)
  2075. RJ.C0 = RJ.C0:lerp(CF.N(0,0-.15*M.C(Sine/(wsVal/2)),0)*CF.A(M.R(-15),M.R(0-15*M.S(Sine/wsVal)/2),0),Alpha)
  2076. LS.C0 = LS.C0:lerp(LSC0*CF.N(0,0,0-.3*M.S(Sine/wsVal))*CF.A(M.R(0+45*M.S(Sine/wsVal)),0,M.R(-5+15*M.S(Sine/wsVal))),Alpha)
  2077. RS.C0 = RS.C0:lerp(RSC0*CF.N(0,0,0+.3*M.S(Sine/wsVal))*CF.A(M.R(0-45*M.S(Sine/wsVal)),0,M.R(5+15*M.S(Sine/wsVal))),Alpha)
  2078. NK.C0 = NK.C0:lerp(NKC0*CF.A(M.R(15),0,0),Alpha)
  2079. LH.C0 = LH.C0:lerp(LHC0*CF.N(0,0+.15*M.C(Sine/(wsVal/2)),0)*CF.A(M.R(15),0,0),Alpha)
  2080. RH.C0 = RH.C0:lerp(RHC0*CF.N(0,0+.15*M.C(Sine/(wsVal/2)),0)*CF.A(M.R(15),0,0),Alpha)
  2081. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  2082. else
  2083. local wsVal = 8 / (Hum.WalkSpeed/8)
  2084. local Alpha = math.min(.2 * (Hum.WalkSpeed/8),1)
  2085. RJ.C0 = RJ.C0:lerp(CF.N(0,0-.05*M.C(Sine/(wsVal/2)),0)*CF.A(0,M.R(0-5*M.S(Sine/wsVal)/2),0),Alpha)
  2086. LS.C0 = LS.C0:lerp(LSC0*CF.N(0,0,0+.3*M.S(Sine/wsVal))*CF.A(M.R(0-25*M.S(Sine/wsVal)),0,M.R(5-5*M.S(Sine/wsVal))),Alpha)
  2087. RS.C0 = RS.C0:lerp(RSC0*CF.N(0,0,0-.3*M.S(Sine/wsVal))*CF.A(M.R(0+25*M.S(Sine/wsVal)),0,M.R(-5-5*M.S(Sine/wsVal))),Alpha)
  2088. NK.C0 = NK.C0:lerp(NKC0,Alpha)
  2089. LH.C0 = LH.C0:lerp(LHC0*CF.N(0,0+.05*M.C(Sine/(wsVal/2)),0),Alpha)
  2090. RH.C0 = RH.C0:lerp(RHC0*CF.N(0,0+.05*M.C(Sine/(wsVal/2)),0),Alpha)
  2091. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  2092. end
  2093. elseif(State == 'Jump' or State == 'Fall')then
  2094. if(Walking)then
  2095. local Alpha = .2
  2096. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  2097. LH.C0 = clerp(LH.C0,CFrame.new(-0.497912645, -1.0987643, -0.0683324337, 0.999878228, 0.00860835519, 0.0130246133, -0.00010142161, 0.837816596, -0.545952022, -0.015611981, 0.545884132, 0.837715328),Alpha)
  2098. RH.C0 = clerp(RH.C0,CFrame.new(0.499978393, -1.16382337, 0.109293163, 0.999878228, -0.0120433727, 0.00993486121, -0.00010142161, 0.631323814, 0.775519371, -0.015611981, -0.775425911, 0.631245613),Alpha)
  2099. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  2100. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  2101. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  2102. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  2103. else
  2104. local Alpha = .2
  2105. RJ.C0 = clerp(RJ.C0,RJC0*CF.A(math.min(math.max(Root.Velocity.Y/100,-M.R(65)),M.R(65)),0,0),Alpha)
  2106. LH.C0 = clerp(LH.C0,CFrame.new(-0.504374504, -0.291219354, -0.487436086, 0.999878228, -0.00438931212, 0.0149825988, -0.00010142161, 0.957819223, 0.287371844, -0.015611981, -0.287338346, 0.957701981),Alpha)
  2107. RH.C0 = clerp(RH.C0,CFrame.new(0.453094482, -0.871358454, 0.0898642987, 0.985589385, -0.168456957, 0.0153662469, 0.162863791, 0.969548643, 0.182895929, -0.0457084104, -0.177757636, 0.983012319),Alpha)
  2108. LS.C0 = clerp(LS.C0,CFrame.new(-1.55211556, 0.576563478, -0.00269976072, 0.976067662, 0.216906726, 0.0156116467, -0.217024669, 0.976145923, 0.00628317893, -0.0138763804, -0.00952091813, 0.999858499),Alpha)
  2109. RS.C0 = clerp(RS.C0,CFrame.new(1.50182188, 0.636661649, 0.00632623257, 0.977592707, -0.209926367, 0.0156121543, 0.209851891, 0.977713108, 0.00628198683, -0.016582964, -0.00286500831, 0.999858439),Alpha)
  2110. NK.C0 = clerp(NK.C0,CFrame.new(1.14440072e-05, 1.49924362, -0.0143961608, 1.00000024, -5.82076609e-11, 0, 1.23691279e-10, 0.997964919, 0.0637660474, 0, -0.0637660623, 0.997965038),Alpha)
  2111. HW.C0 = HW.C0:lerp(CF.N(0,-1,-1)*CF.A(M.R(-90),0,0),Alpha)
  2112. end
  2113. elseif(State == 'Paralyzed')then
  2114. -- paralyzed
  2115. elseif(State == 'Sit')then
  2116. -- sit
  2117. end
  2118. end
  2119. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement