Advertisement
wamandnj

Untitled

Apr 20th, 2019
509
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --[[
  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,game,owner = owner,game
  6. local RealPlayer = Player
  7. do
  8. warn("SCP-323 by TameDoNotClick")
  9. warn("SCP-323 can also be called The Pony")
  10. warn("Due to the game, Pony Island")
  11. warn("WIP, will be buggy")
  12. local rp = RealPlayer
  13. script.Parent = rp.Character
  14.  
  15. --RemoteEvent for communicating
  16. local Event = Instance.new("RemoteEvent")
  17. Event.Name = "UserInput_Event"
  18.  
  19. --Fake event to make stuff like Mouse.KeyDown work
  20. local function fakeEvent()
  21. local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  22. t.connect = t.Connect
  23. return t
  24. end
  25.  
  26. --Creating fake input objects with fake variables
  27. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  28. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  29. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  30. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  31. end}
  32. --Merged 2 functions into one by checking amount of arguments
  33. CAS.UnbindAction = CAS.BindAction
  34.  
  35. --This function will trigger the events that have been :Connect()'ed
  36. local function te(self,ev,...)
  37. local t = m[ev]
  38. if t and t._fakeEvent then
  39. for _,f in pairs(t.Functions) do
  40. f(...)
  41. end
  42. end
  43. end
  44. m.TrigEvent = te
  45. UIS.TrigEvent = te
  46.  
  47. Event.OnServerEvent:Connect(function(plr,io)
  48. if plr~=rp then return end
  49. m.Target = io.Target
  50. m.Hit = io.Hit
  51. if not io.isMouse then
  52. local b = io.UserInputState == Enum.UserInputState.Begin
  53. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  54. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  55. end
  56. for _,t in pairs(CAS.Actions) do
  57. for _,k in pairs(t.Keys) do
  58. if k==io.KeyCode then
  59. t.Function(t.Name,io.UserInputState,io)
  60. end
  61. end
  62. end
  63. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  64. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  65. end
  66. end)
  67. Event.Parent = NLS([==[
  68. local Player = game:GetService("Players").LocalPlayer
  69. local Event = script:WaitForChild("UserInput_Event")
  70.  
  71. local Mouse = Player:GetMouse()
  72. local UIS = game:GetService("UserInputService")
  73. local input = function(io,a)
  74. if a then return end
  75. --Since InputObject is a client-side instance, we create and pass table instead
  76. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  77. end
  78. UIS.InputBegan:Connect(input)
  79. UIS.InputEnded:Connect(input)
  80.  
  81. local h,t
  82. --Give the server mouse data 30 times every second, but only if the values changed
  83. --If player is not moving their mouse, client won't fire events
  84. while wait(1/30) do
  85. if h~=Mouse.Hit or t~=Mouse.Target then
  86. h,t=Mouse.Hit,Mouse.Target
  87. Event:FireServer({isMouse=true,Target=t,Hit=h})
  88. end
  89. end]==],Player.Character)
  90.  
  91. ----Sandboxed game object that allows the usage of client-side methods and services
  92. --Real game object
  93. local _rg = game
  94.  
  95. --Metatable for fake service
  96. local fsmt = {
  97. __index = function(self,k)
  98. local s = rawget(self,"_RealService")
  99. if s then return s[k] end
  100. end,
  101. __newindex = function(self,k,v)
  102. local s = rawget(self,"_RealService")
  103. if s then s[k]=v end
  104. end,
  105. __call = function(self,...)
  106. local s = rawget(self,"_RealService")
  107. if s then return s(...) end
  108. end
  109. }
  110. local function FakeService(t,RealService)
  111. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  112. return setmetatable(t,fsmt)
  113. end
  114.  
  115. --Fake game object
  116. local g = {
  117. GetService = function(self,s)
  118. return self[s]
  119. end,
  120. Players = FakeService({
  121. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  122. },"Players"),
  123. UserInputService = FakeService(UIS,"UserInputService"),
  124. ContextActionService = FakeService(CAS,"ContextActionService"),
  125. }
  126. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  127. g.service = g.GetService
  128.  
  129. g.RunService = FakeService({
  130. RenderStepped = _rg:GetService("RunService").Heartbeat,
  131. BindToRenderStep = function(self,name,_,fun)
  132.  
  133. end,
  134. UnbindFromRenderStep = function(self,name)
  135. self._btrs[name]:Disconnect()
  136. end,
  137. },"RunService")
  138.  
  139. setmetatable(g,{
  140. __index=function(self,s)
  141. return _rg:GetService(s) or typeof(_rg[s])=="function"
  142. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  143. end,
  144. __newindex = fsmt.__newindex,
  145. __call = fsmt.__call
  146. })
  147. --Changing owner to fake player object to support owner:GetMouse()
  148. game,owner = g,g.Players.LocalPlayer
  149. end
  150.  
  151. Script0 = Instance.new("Script")
  152. Model1 = Instance.new("Model")
  153. Part2 = Instance.new("Part")
  154. SpecialMesh3 = Instance.new("SpecialMesh")
  155. BillboardGui4 = Instance.new("BillboardGui")
  156. TextLabel5 = Instance.new("TextLabel")
  157. Script6 = Instance.new("Script")
  158. Sound7 = Instance.new("Sound")
  159. LocalScript8 = Instance.new("LocalScript")
  160. Script0.Name = "323place1"
  161. Script0.Parent = owner.Character
  162. Model1.Name = "skull"
  163. Model1.Parent = Script0
  164. Part2.Name = "FakeHead"
  165. Part2.Parent = Model1
  166. Part2.CFrame = CFrame.new(0.294842005, 368.302765, -124.816376, 0, 0, 1, 0, 1, -0, -1, 0, 0)
  167. Part2.Orientation = Vector3.new(0, 90, 0)
  168. Part2.Position = Vector3.new(0.294842005, 368.302765, -124.816376)
  169. Part2.Rotation = Vector3.new(0, 90, 0)
  170. Part2.Color = Color3.new(0.780392, 0.831373, 0.894118)
  171. Part2.Size = Vector3.new(2, 2, 2)
  172. Part2.BottomSurface = Enum.SurfaceType.Smooth
  173. Part2.BrickColor = BrickColor.new("Fog")
  174. Part2.CanCollide = false
  175. Part2.TopSurface = Enum.SurfaceType.Smooth
  176. Part2.brickColor = BrickColor.new("Fog")
  177. Part2.FormFactor = Enum.FormFactor.Custom
  178. Part2.formFactor = Enum.FormFactor.Custom
  179. SpecialMesh3.Parent = Part2
  180. SpecialMesh3.MeshId = "http://www.roblox.com/asset/?id=163989519 "
  181. SpecialMesh3.Scale = Vector3.new(1.10000002, 1.10000002, 1.10000002)
  182. SpecialMesh3.TextureId = "http://www.roblox.com/asset/?id=168602145"
  183. SpecialMesh3.MeshType = Enum.MeshType.FileMesh
  184. BillboardGui4.Parent = Part2
  185. BillboardGui4.LightInfluence = 1
  186. BillboardGui4.Size = UDim2.new(0, 200, 0, 50)
  187. BillboardGui4.Active = true
  188. BillboardGui4.ClipsDescendants = true
  189. BillboardGui4.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
  190. BillboardGui4.StudsOffset = Vector3.new(0, 1.5, 0)
  191. TextLabel5.Parent = BillboardGui4
  192. TextLabel5.Size = UDim2.new(0, 200, 0, 50)
  193. TextLabel5.Active = true
  194. TextLabel5.BackgroundColor = BrickColor.new("Institutional white")
  195. TextLabel5.BackgroundColor3 = Color3.new(1, 1, 1)
  196. TextLabel5.BackgroundTransparency = 1
  197. TextLabel5.BorderSizePixel = 0
  198. TextLabel5.ClipsDescendants = true
  199. TextLabel5.SizeConstraint = Enum.SizeConstraint.RelativeYY
  200. TextLabel5.Font = Enum.Font.SciFi
  201. TextLabel5.FontSize = Enum.FontSize.Size32
  202. TextLabel5.Text = "⑶⑵⑶"
  203. TextLabel5.TextColor = BrickColor.new("Maroon")
  204. TextLabel5.TextColor3 = Color3.new(0.513726, 0, 0.00784314)
  205. TextLabel5.TextScaled = true
  206. TextLabel5.TextSize = 30
  207. TextLabel5.TextStrokeColor3 = Color3.new(0.243137, 0.00392157, 0.00784314)
  208. TextLabel5.TextWrap = true
  209. TextLabel5.TextWrapped = true
  210. Script6.Parent = TextLabel5
  211. Sound7.Name = "Pony Island OST 02 - Enter Pony"
  212. Sound7.Parent = Part2
  213. Sound7.Looped = true
  214. Sound7.SoundId = "rbxassetid://343860759"
  215. Sound7:Play()
  216. LocalScript8.Parent = Script0
  217.  
  218. function swait(num)
  219. if num == 0 or num == nil then
  220. game:service("RunService").Stepped:wait(0)
  221. else
  222. for i = 0, num do
  223. game:service("RunService").Stepped:wait(0)
  224. end
  225. end
  226. end
  227.  
  228.  
  229. --//====================================================\\--
  230. --|| CREATED BY 7_QZ
  231. --\\====================================================//--
  232.  
  233. wait(1.2)
  234.  
  235. Player = owner
  236. local PlayerGui = Player.PlayerGui
  237. local Cam = workspace.CurrentCamera
  238. local Backpack = Player.Backpack
  239. Character = Player.Character
  240. Humanoid = Character.Humanoid
  241. RootPart = Character["HumanoidRootPart"]
  242. Torso = Character["Torso"]
  243. Head = Character["Head"]
  244. local RightArm = Character["Right Arm"]
  245. local LeftArm = Character["Left Arm"]
  246. local RightLeg = Character["Right Leg"]
  247. local LeftLeg = Character["Left Leg"]
  248. local RootJoint = RootPart["RootJoint"]
  249. local Neck = Torso["Neck"]
  250. local RightShoulder = Torso["Right Shoulder"]
  251. local LeftShoulder = Torso["Left Shoulder"]
  252. local RightHip = Torso["Right Hip"]
  253. local LeftHip = Torso["Left Hip"]
  254. local mouse = Player:GetMouse()
  255.  
  256. IT = Instance.new
  257. CF = CFrame.new
  258. VT = Vector3.new
  259. local RAD = math.rad
  260. C3 = Color3.new
  261. UD2 = UDim2.new
  262. local BRICKC = BrickColor.new
  263. local ANGLES = CFrame.Angles
  264. local EULER = CFrame.fromEulerAnglesXYZ
  265. local COS = math.cos
  266. ACOS = math.acos
  267. SIN = math.sin
  268. local ASIN = math.asin
  269. local ABS = math.abs
  270. local MRANDOM = math.random
  271. local FLOOR = math.floor
  272. local theta = 0
  273.  
  274. local function weldBetween(a, b)
  275. local weldd = Instance.new("ManualWeld")
  276. weldd.Part0 = a
  277. weldd.Part1 = b
  278. weldd.C0 = CFrame.new()
  279. weldd.C1 = b.CFrame:inverse() * a.CFrame
  280. weldd.Parent = a
  281. return weldd
  282. end
  283.  
  284. function QuaternionFromCFrame(cf)
  285. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  286. local trace = m00 + m11 + m22
  287. if trace > 0 then
  288. local s = math.sqrt(1 + trace)
  289. local recip = 0.5 / s
  290. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  291. else
  292. local i = 0
  293. if m11 > m00 then
  294. i = 1
  295. end
  296. if m22 > (i == 0 and m00 or m11) then
  297. i = 2
  298. end
  299. if i == 0 then
  300. local s = math.sqrt(m00 - m11 - m22 + 1)
  301. local recip = 0.5 / s
  302. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  303. elseif i == 1 then
  304. local s = math.sqrt(m11 - m22 - m00 + 1)
  305. local recip = 0.5 / s
  306. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  307. elseif i == 2 then
  308. local s = math.sqrt(m22 - m00 - m11 + 1)
  309. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  310. end
  311. end
  312. end
  313.  
  314. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  315. local xs, ys, zs = x + x, y + y, z + z
  316. local wx, wy, wz = w * xs, w * ys, w * zs
  317. local xx = x * xs
  318. local xy = x * ys
  319. local xz = x * zs
  320. local yy = y * ys
  321. local yz = y * zs
  322. local zz = z * zs
  323. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  324. end
  325.  
  326. function QuaternionSlerp(a, b, t)
  327. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  328. local startInterp, finishInterp;
  329. if cosTheta >= 0.0001 then
  330. if (1 - cosTheta) > 0.0001 then
  331. local theta = ACOS(cosTheta)
  332. local invSinTheta = 1 / SIN(theta)
  333. startInterp = SIN((1 - t) * theta) * invSinTheta
  334. finishInterp = SIN(t * theta) * invSinTheta
  335. else
  336. startInterp = 1 - t
  337. finishInterp = t
  338. end
  339. else
  340. if (1 + cosTheta) > 0.0001 then
  341. local theta = ACOS(-cosTheta)
  342. local invSinTheta = 1 / SIN(theta)
  343. startInterp = SIN((t - 1) * theta) * invSinTheta
  344. finishInterp = SIN(t * theta) * invSinTheta
  345. else
  346. startInterp = t - 1
  347. finishInterp = t
  348. end
  349. end
  350. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  351. end
  352.  
  353. function Clerp(a, b, t)
  354. local qa = {QuaternionFromCFrame(a)}
  355. local qb = {QuaternionFromCFrame(b)}
  356. local ax, ay, az = a.x, a.y, a.z
  357. local bx, by, bz = b.x, b.y, b.z
  358. local _t = 1 - t
  359. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  360. end
  361.  
  362. --// More Shortcut Variables \\--
  363. local S = setmetatable({},{__index = function(s,i) return game:service(i) end})
  364. local De = S.Debris
  365. local WS = workspace
  366. local Lght = S.Lighting
  367. local RepS = S.ReplicatedStorage
  368. local IN = Instance.new
  369. local Plrs = S.Players
  370.  
  371. --// Useful Values \\--
  372.  
  373. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  374. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  375. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  376. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  377. local RootCF = CFrame.fromEulerAnglesXYZ(-1.57, 0, 3.14)
  378. local attack = false
  379.  
  380. --// Instance Creation Functions \\--
  381.  
  382. local baseSound = IN("Sound")
  383. function Sound(parent,id,pitch,volume,looped,effect,autoPlay)
  384. local Sound = baseSound:Clone()
  385. Sound.SoundId = "rbxassetid://".. tostring(id or 0)
  386. Sound.Pitch = pitch or 1
  387. Sound.Volume = volume or 1
  388. Sound.Looped = looped or false
  389. if(autoPlay)then
  390. coroutine.wrap(function()
  391. repeat wait() until Sound.IsLoaded
  392. Sound.Playing = autoPlay or false
  393. end)()
  394. end
  395. if(not looped and effect)then
  396. Sound.Stopped:connect(function()
  397. Sound.Volume = 0
  398. Sound:destroy()
  399. end)
  400. elseif(effect)then
  401. warn("Sound can't be looped and a sound effect!")
  402. end
  403. Sound.Parent =parent or Torso
  404. return Sound
  405. end
  406. function Part(parent,color,material,size,cframe,anchored,cancollide)
  407. local part = IN("Part")
  408. part.Parent = parent or Char
  409. part[typeof(color) == 'BrickColor' and 'BrickColor' or 'Color'] = color or C3.N(0,0,0)
  410. part.Material = material or Enum.Material.SmoothPlastic
  411. part.TopSurface,part.BottomSurface=10,10
  412. part.Size = size or V3.N(1,1,1)
  413. part.CFrame = cframe or CF.N(0,0,0)
  414. part.CanCollide = cancollide or false
  415. part.Anchored = anchored or false
  416. return part
  417. end
  418.  
  419. function Weld(part0,part1,c0,c1)
  420. local weld = IN("Weld")
  421. weld.Parent = part0
  422. weld.Part0 = part0
  423. weld.Part1 = part1
  424. weld.C0 = c0 or CFrame.new()
  425. weld.C1 = c1 or CFrame.new()
  426. return weld
  427. end
  428.  
  429. function Mesh(parent,meshtype,meshid,textid,scale,offset)
  430. local part = IN("SpecialMesh")
  431. part.MeshId = meshid or ""
  432. part.TextureId = textid or ""
  433. part.Scale = scale or V3.N(1,1,1)
  434. part.Offset = offset or V3.N(0,0,0)
  435. part.MeshType = meshtype or Enum.MeshType.Sphere
  436. part.Parent = parent
  437. return part
  438. end
  439.  
  440. NewInstance = function(instance,parent,properties)
  441. local inst = Instance.new(instance)
  442. inst.Parent = parent
  443. if(properties)then
  444. for i,v in next, properties do
  445. pcall(function() inst[i] = v end)
  446. end
  447. end
  448. return inst;
  449. end
  450.  
  451. function Clone(instance,parent,properties)
  452. local inst = instance:Clone()
  453. inst.Parent = parent
  454. if(properties)then
  455. for i,v in next, properties do
  456. pcall(function() inst[i] = v end)
  457. end
  458. end
  459. return inst;
  460. end
  461.  
  462. local S = IT("Sound")
  463. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  464. local NEWSOUND = nil
  465. coroutine.resume(coroutine.create(function()
  466. NEWSOUND = S:Clone()
  467. NEWSOUND.Parent = PARENT
  468. NEWSOUND.Volume = VOLUME
  469. NEWSOUND.Pitch = PITCH
  470. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  471. NEWSOUND:play()
  472. if DOESLOOP == true then
  473. NEWSOUND.Looped = true
  474. else
  475. repeat wait(1) until NEWSOUND.Playing == false
  476. NEWSOUND:remove()
  477. end
  478. end))
  479. return NEWSOUND
  480. end
  481.  
  482.  
  483. --// Other Functions \\--
  484.  
  485. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  486. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  487. end
  488.  
  489. function Chatter(Text,Timer)
  490. local chat = coroutine.wrap(function()
  491. if Character:FindFirstChild("SpeechBoard")~= nil then
  492. Character:FindFirstChild("SpeechBoard"):destroy()
  493. end
  494. local naeeym2 = IT("BillboardGui",Character)
  495. naeeym2.Size = UD2(0,100,0,40)
  496. naeeym2.StudsOffset = VT(0,2,0)
  497. naeeym2.Adornee = Character.Head
  498. naeeym2.Name = "SpeechBoard"
  499. naeeym2.AlwaysOnTop = true
  500. local tecks2 = IT("TextLabel",naeeym2)
  501. tecks2.BackgroundTransparency = 1
  502. tecks2.BorderSizePixel = 0
  503. tecks2.Text = ""
  504. tecks2.Font = "Legacy"
  505. tecks2.TextSize = 15
  506. tecks2.TextStrokeTransparency = 0
  507. tecks2.TextColor3 = C3(62/255,0,2/255)
  508. tecks2.TextStrokeColor3 = C3(131/255,1/255,2/255)
  509. tecks2.Size = UDim2.new(1,0,0.5,0)
  510. local FINISHED = false
  511. coroutine.resume(coroutine.create(function()
  512. for i = 1,string.len(Text),1 do
  513. if naeeym2.Parent ~= Character then
  514. FINISHED = true
  515. end
  516. CreateSound(418252437, Head, 7, 0.5, false)
  517. tecks2.Text = string.sub(Text,1,i)
  518. swait(Timer)
  519. end
  520. FINISHED = true
  521. end))
  522. repeat wait() until FINISHED == true
  523. wait(1)
  524. naeeym2.Name = "FadingDialogue"
  525. for i = 1, 45 do
  526. swait()
  527. naeeym2.StudsOffset = naeeym2.StudsOffset + VT(0,(2-((2/45)*i))/45,0)
  528. tecks2.TextTransparency = tecks2.TextTransparency + 1/45
  529. tecks2.TextStrokeTransparency = tecks2.TextTransparency
  530. end
  531. naeeym2:Destroy()
  532. end)
  533. chat()
  534. end
  535.  
  536. local Create = LoadLibrary("RbxUtility").Create
  537.  
  538. CFuncs = {
  539. ["Part"] = {
  540. Create = function(Parent, Material, Reflectance, Transparency, BColor, Name, Size)
  541. local Part = Create("Part"){
  542. Parent = Parent,
  543. Reflectance = Reflectance,
  544. Transparency = Transparency,
  545. CanCollide = false,
  546. Locked = true,
  547. BrickColor = BrickColor.new(tostring(BColor)),
  548. Name = Name,
  549. Size = Size,
  550. Material = Material,
  551. }
  552. RemoveOutlines(Part)
  553. return Part
  554. end;
  555. };
  556.  
  557. ["Mesh"] = {
  558. Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  559. local Msh = Create(Mesh){
  560. Parent = Part,
  561. Offset = OffSet,
  562. Scale = Scale,
  563. }
  564. if Mesh == "SpecialMesh" then
  565. Msh.MeshType = MeshType
  566. Msh.MeshId = MeshId
  567. end
  568. return Msh
  569. end;
  570. };
  571.  
  572. ["Mesh"] = {
  573. Create = function(Mesh, Part, MeshType, MeshId, OffSet, Scale)
  574. local Msh = Create(Mesh){
  575. Parent = Part,
  576. Offset = OffSet,
  577. Scale = Scale,
  578. }
  579. if Mesh == "SpecialMesh" then
  580. Msh.MeshType = MeshType
  581. Msh.MeshId = MeshId
  582. end
  583. return Msh
  584. end;
  585. };
  586.  
  587. ["Weld"] = {
  588. Create = function(Parent, Part0, Part1, C0, C1)
  589. local Weld = Create("Weld"){
  590. Parent = Parent,
  591. Part0 = Part0,
  592. Part1 = Part1,
  593. C0 = C0,
  594. C1 = C1,
  595. }
  596. return Weld
  597. end;
  598. };
  599.  
  600. ["Sound"] = {
  601. Create = function(id, par, vol, pit)
  602. coroutine.resume(coroutine.create(function()
  603. local S = Create("Sound"){
  604. Volume = vol,
  605. Name = "EffectSoundo",
  606. Pitch = pit or 1,
  607. SoundId = id,
  608. Parent = par or workspace,
  609. }
  610. wait()
  611. S:play()
  612. game:GetService("Debris"):AddItem(S, 10)
  613. end))
  614. end;
  615. };
  616.  
  617. ["EchoSound"] = {
  618. Create = function(id, par, vol, pit, timepos,delays,echodelay,fedb,dryl)
  619. coroutine.resume(coroutine.create(function()
  620. local Sas = Create("Sound"){
  621. Volume = vol,
  622. Name = "EffectSoundo",
  623. Pitch = pit or 1,
  624. SoundId = id,
  625. TimePosition = timepos,
  626. Parent = par or workspace,
  627. }
  628. local E = Create("EchoSoundEffect"){
  629. Delay = echodelay,
  630. Name = "Echo",
  631. Feedback = fedb,
  632. DryLevel = dryl,
  633. Parent = Sas,
  634. }
  635. wait()
  636. Sas:play()
  637. game:GetService("Debris"):AddItem(Sas, delays)
  638. end))
  639. end;
  640. };
  641.  
  642. ["LongSound"] = {
  643. Create = function(id, par, vol, pit)
  644. coroutine.resume(coroutine.create(function()
  645. local S = Create("Sound"){
  646. Volume = vol,
  647. Pitch = pit or 1,
  648. SoundId = id,
  649. Parent = par or workspace,
  650. }
  651. wait()
  652. S:play()
  653. game:GetService("Debris"):AddItem(S, 60)
  654. end))
  655. end;
  656. };
  657.  
  658. ["ParticleEmitter"] = {
  659. Create = function(Parent, Color1, Color2, LightEmission, Size, Texture, Transparency, ZOffset, Accel, Drag, LockedToPart, VelocityInheritance, EmissionDirection, Enabled, LifeTime, Rate, Rotation, RotSpeed, Speed, VelocitySpread)
  660. local fp = Create("ParticleEmitter"){
  661. Parent = Parent,
  662. Color = ColorSequence.new(Color1, Color2),
  663. LightEmission = LightEmission,
  664. Size = Size,
  665. Texture = Texture,
  666. Transparency = Transparency,
  667. ZOffset = ZOffset,
  668. Acceleration = Accel,
  669. Drag = Drag,
  670. LockedToPart = LockedToPart,
  671. VelocityInheritance = VelocityInheritance,
  672. EmissionDirection = EmissionDirection,
  673. Enabled = Enabled,
  674. Lifetime = LifeTime,
  675. Rate = Rate,
  676. Rotation = Rotation,
  677. RotSpeed = RotSpeed,
  678. Speed = Speed,
  679. VelocitySpread = VelocitySpread,
  680. }
  681. return fp
  682. end;
  683. };
  684.  
  685. CreateTemplate = {
  686.  
  687. };
  688. }
  689.  
  690. --// Damaging Functions \\--
  691.  
  692. function Damagefunc(Part, hit, minim, maxim, knockback, Type, Property, Delay, HitSound, HitPitch)
  693. if hit.Parent == nil then
  694. return
  695. end
  696. local h = hit.Parent:FindFirstChildOfClass("Humanoid")
  697. for _, v in pairs(hit.Parent:children()) do
  698. if v:IsA("Humanoid") then
  699. h = v
  700. end
  701. end
  702. if h ~= nil and hit.Parent.Name ~= Character.Name and hit.Parent:FindFirstChild("Head") ~= nil then
  703. if hit.Parent:findFirstChild("DebounceHit") ~= nil and hit.Parent.DebounceHit.Value == true then
  704. return
  705. end
  706. local c = Create("ObjectValue")({
  707. Name = "creator",
  708. Value = owner,
  709. Parent = h
  710. })
  711. game:GetService("Debris"):AddItem(c, 0.5)
  712. if HitSound ~= nil and HitPitch ~= nil then
  713. CFuncs.Sound.Create(HitSound, hit, 1, HitPitch)
  714. end
  715. local Damage = math.random(minim, maxim)
  716. local blocked = false
  717. local block = hit.Parent:findFirstChild("Block")
  718. if block ~= nil and block.className == "IntValue" and block.Value > 0 then
  719. blocked = true
  720. block.Value = block.Value - 1
  721. print(block.Value)
  722. end
  723. if blocked == false then
  724. HitHealth = h.Health
  725. h.Health = h.Health - Damage
  726. if HitHealth ~= h.Health and HitHealth ~= 0 and 0 >= h.Health and h.Parent.Name ~= "Hologram" then
  727. print("gained kill")
  728. end
  729. else
  730. h.Health = h.Health - Damage / 2
  731. end
  732. if Type == "Knockdown" then
  733. local hum = hit.Parent:FindFirstChildOfClass'Humanoid'
  734. hum.PlatformStand = true
  735. coroutine.resume(coroutine.create(function(HHumanoid)
  736. swait(1)
  737. HHumanoid.PlatformStand = false
  738. end), hum)
  739. local angle = hit.Position - (Property.Position + Vector3.new(0, 0, 0)).unit
  740. local bodvol = Create("BodyVelocity")({
  741. velocity = angle * knockback,
  742. P = 5000,
  743. maxForce = Vector3.new(8000, 8000, 8000),
  744. Parent = hit
  745. })
  746. local rl = Create("BodyAngularVelocity")({
  747. P = 3000,
  748. maxTorque = Vector3.new(500000, 500000, 500000) * 50000000000000,
  749. angularvelocity = Vector3.new(math.random(-10, 10), math.random(-10, 10), math.random(-10, 10)),
  750. Parent = hit
  751. })
  752. game:GetService("Debris"):AddItem(bodvol, 0.5)
  753. game:GetService("Debris"):AddItem(rl, 0.5)
  754. elseif Type == "Normal" then
  755. local vp = Create("BodyVelocity")({
  756. P = 500,
  757. maxForce = Vector3.new(math.huge, 0, math.huge),
  758. velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  759. })
  760. if knockback > 0 then
  761. vp.Parent = hit.Parent.Head
  762. end
  763. game:GetService("Debris"):AddItem(vp, 0.5)
  764. elseif Type == "Wind" then
  765. local vp = Instance.new("BodyVelocity")
  766. vp.P = 500000
  767. vp.maxForce = Vector3.new(0, math.huge, 0)
  768. vp.velocity = Property.CFrame.lookVector * knockback + Property.Velocity / 1.05
  769. vp.Parent = hit.Parent.Head
  770. if knockback > 0 then
  771. vp.Parent = hit.Parent.Head
  772.  
  773. end
  774. game:GetService("Debris"):AddItem(vp, 0.5)
  775.  
  776. elseif Type == "Up" then
  777. local bodyVelocity = Create("BodyVelocity")({
  778. velocity = Vector3.new(0, 20, 0),
  779. P = 5000,
  780. maxForce = Vector3.new(8000, 8000, 8000),
  781. Parent = hit
  782. })
  783. game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  784. local bodyVelocity = Create("BodyVelocity")({
  785. velocity = Vector3.new(0, 20, 0),
  786. P = 5000,
  787. maxForce = Vector3.new(8000, 8000, 8000),
  788. Parent = hit
  789. })
  790. game:GetService("Debris"):AddItem(bodyVelocity, 1)
  791. elseif Type == "Leech" then
  792. local hum = hit.Parent:FindFirstChildOfClass'Humanoid'
  793. if hum ~= nil then
  794. for i = 0, 2 do
  795. Effects.Sphere.Create(BrickColor.new("Bright red"), hit.Parent.Torso.CFrame * cn(0, 0, 0) * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 15, 1, 0, 5, 0, 0.02)
  796. end
  797. Humanoid.Health = Humanoid.Health + 10
  798. end
  799. elseif Type == "Tornado" then
  800. local hum = hit.Parent:FindFirstChildOfClass'Humanoid'
  801. hum.PlatformStand = true
  802. if hum ~= nil then
  803. hitr = true
  804. end
  805. coroutine.resume(coroutine.create(function(HHumanoid)
  806. swait(5)
  807. HHumanoid.PlatformStand = false
  808. hitr = false
  809. end), hum)
  810. local bodyVelocity = Create("BodyVelocity")({
  811. velocity = Vector3.new(math.cos(theta*5)*20, 5, math.sin(theta*5)*20),
  812. P = 5000,
  813. maxForce = Vector3.new(8000, 8000, 8000),
  814. Parent = hit
  815. })
  816. game:GetService("Debris"):AddItem(bodyVelocity, 0.5)
  817. local bodyVelocity = Create("BodyVelocity")({
  818. velocity = Vector3.new(math.cos(theta*5)*20, 5, math.sin(theta*5)*20),
  819. P = 5000,
  820. maxForce = Vector3.new(8000, 8000, 8000),
  821. Parent = hit
  822. })
  823. game:GetService("Debris"):AddItem(bodyVelocity, 1)
  824. elseif Type == "Snare" then
  825. local bp = Create("BodyPosition")({
  826. P = 2000,
  827. D = 100,
  828. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  829. position = hit.Parent.Torso.Position,
  830. Parent = hit.Parent.Torso
  831. })
  832. game:GetService("Debris"):AddItem(bp, 1)
  833. elseif Type == "Slashnare" then
  834. Effects.Block.Create(BrickColor.new("Pastel Blue"), hit.Parent.Torso.CFrame * cn(0, 0, 0), 15*4, 15*4, 15*4, 3*4, 3*4, 3*4, 0.07)
  835. for i = 1, math.random(4, 5) do
  836. Effects.Sphere.Create(BrickColor.new("Teal"), hit.Parent.Torso.CFrame * cn(math.random(-5, 5), math.random(-5, 5), math.random(-5, 5)) * angles(math.random(-50, 50), math.random(-50, 50), math.random(-50, 50)), 1, 15, 1, 0, 5, 0, 0.02)
  837. end
  838. local bp = Create("BodyPosition")({
  839. P = 2000,
  840. D = 100,
  841. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  842. position = hit.Parent.Torso.Position,
  843. Parent = hit.Parent.Torso
  844. })
  845. game:GetService("Debris"):AddItem(bp, 1)
  846. elseif Type == "Spike" then
  847. CreateBigIceSword(hit.Parent.Torso.CFrame)
  848. local bp = Create("BodyPosition")({
  849. P = 2000,
  850. D = 100,
  851. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  852. position = hit.Parent.Torso.Position,
  853. Parent = hit.Parent.Torso
  854. })
  855. game:GetService("Debris"):AddItem(bp, 1)
  856. elseif Type == "Freeze" then
  857. local BodPos = Create("BodyPosition")({
  858. P = 50000,
  859. D = 1000,
  860. maxForce = Vector3.new(math.huge, math.huge, math.huge),
  861. position = hit.Parent.Torso.Position,
  862. Parent = hit.Parent.Torso
  863. })
  864. local BodGy = Create("BodyGyro")({
  865. maxTorque = Vector3.new(400000, 400000, 400000) * math.huge,
  866. P = 20000,
  867. Parent = hit.Parent.Torso,
  868. cframe = hit.Parent.Torso.CFrame
  869. })
  870. hit.Parent.Torso.Anchored = true
  871. coroutine.resume(coroutine.create(function(Part)
  872. swait(1.5)
  873. Part.Anchored = false
  874. end), hit.Parent.Torso)
  875. game:GetService("Debris"):AddItem(BodPos, 3)
  876. game:GetService("Debris"):AddItem(BodGy, 3)
  877. end
  878. local debounce = Create("BoolValue")({
  879. Name = "DebounceHit",
  880. Parent = hit.Parent,
  881. Value = true
  882. })
  883. game:GetService("Debris"):AddItem(debounce, Delay)
  884. c = Instance.new("ObjectValue")
  885. c.Name = "creator"
  886. c.Value = Player
  887. c.Parent = h
  888. game:GetService("Debris"):AddItem(c, 0.5)
  889. end
  890. end
  891.  
  892. function MagniDamage(Part, magni, mindam, maxdam, knock, Type)
  893. for _, c in pairs(workspace:children()) do
  894. local hum = c:findFirstChildOfClass("Humanoid")
  895. if hum ~= nil then
  896. local head = c:findFirstChild("Head")
  897. if head ~= nil then
  898. local targ = head.Position - Part.Position
  899. local mag = targ.magnitude
  900. if magni >= mag and c.Name ~= Player.Name then
  901. Damagefunc(head, head, mindam, maxdam, knock, Type, RootPart, 0.1, "rbxassetid://231917784", 1)
  902. end
  903. end
  904. end
  905. end
  906. end
  907.  
  908. --// Character \\--
  909.  
  910. Character.Animate:Remove()
  911. Character.Humanoid.Animator:Remove()
  912. Character["Body Colors"]:Remove()
  913.  
  914. swait(5)
  915.  
  916. LeftArm.Color = Color3.new(1,1,1)
  917. LeftArm.Material = "Concrete"
  918. RightArm.Color = Color3.new(1,1,1)
  919. RightArm.Material = "Concrete"
  920. LeftLeg.Color = Color3.new(1,1,1)
  921. LeftLeg.Material = "Concrete"
  922. RightLeg.Color = Color3.new(1,1,1)
  923. RightLeg.Material = "Concrete"
  924. Torso.Color = Color3.new(1,1,1)
  925. Torso.Material = "Concrete"
  926. Head.Color = Color3.new(1,1,1)
  927.  
  928.  
  929. for i,v in pairs(Character:GetChildren()) do
  930. if v:IsA("Accessory") or v:IsA("Shirt") or v:IsA("Pants") then
  931. v:Remove()
  932. end
  933. end
  934.  
  935.  
  936. Humanoid.WalkSpeed = 27
  937. Head.Transparency = 1
  938.  
  939. function touch(hit)
  940. if hit.Parent ~= Character then
  941. hit.Parent:FindFirstChild("Humanoid").Health = hit.Parent:FindFirstChild("Humanoid").Health -5
  942. end
  943. end
  944.  
  945. Character.Torso.Touched:connect(touch)
  946.  
  947. local MASK = Part2
  948. Weld(MASK,Head,CFrame.new(0,-0.5,0)*ANGLES(0,math.rad(0),0))
  949. MASK.Parent = Character
  950. weldBetween(Head,MASK)
  951.  
  952. local dialogue = {"Are you... my next meal?","I've been looking for a snack... hehe..."}
  953.  
  954. Chatter("I crave... flesh...",5)
  955.  
  956. --// Effect Functions \\--
  957.  
  958. function ring(type,pos,scale,value)
  959. local type = type
  960. local rng = Instance.new("Part", Character)
  961. rng.Anchored = true
  962. rng.BrickColor = origcolor
  963. rng.CanCollide = false
  964. rng.FormFactor = 3
  965. rng.Name = "Ring"
  966. rng.Size = Vector3.new(1, 1, 1)
  967. rng.Transparency = 0
  968. rng.TopSurface = 0
  969. rng.BottomSurface = 0
  970. rng.CFrame = pos
  971. local rngm = Instance.new("SpecialMesh", rng)
  972. rngm.MeshId = "http://www.roblox.com/asset/?id=3270017"
  973. rngm.Scale = scale
  974. local scaler2 = 1
  975. if type == "Add" then
  976. scaler2 = 1*value
  977. elseif type == "Divide" then
  978. scaler2 = 1/value
  979. end
  980. coroutine.resume(coroutine.create(function()
  981. for i = 0,10,0.1 do
  982. swait()
  983. if type == "Add" then
  984. scaler2 = scaler2 - 0.01*value
  985. elseif type == "Divide" then
  986. scaler2 = scaler2 - 0.01/value
  987. end
  988. rng.Transparency = rng.Transparency + 0.01
  989. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, 0)
  990. end
  991. rng:Destroy()
  992. end))
  993. end
  994.  
  995.  
  996. function wave(type,pos,scale,value)
  997. local type = type
  998. local rng = Instance.new("Part", Character)
  999. rng.Anchored = true
  1000. rng.BrickColor = origcolor
  1001. rng.CanCollide = false
  1002. rng.FormFactor = 3
  1003. rng.Name = "Ring"
  1004. rng.Size = Vector3.new(1, 1, 1)
  1005. rng.Transparency = 0
  1006. rng.TopSurface = 0
  1007. rng.BottomSurface = 0
  1008. rng.CFrame = pos
  1009. local rngm = Instance.new("SpecialMesh", rng)
  1010. rngm.MeshId = "http://www.roblox.com/asset/?id=20329976"
  1011. rngm.Scale = scale
  1012. local scaler2 = 1
  1013. if type == "Add" then
  1014. scaler2 = 1*value
  1015. elseif type == "Divide" then
  1016. scaler2 = 1/value
  1017. end
  1018. coroutine.resume(coroutine.create(function()
  1019. for i = 0,10,0.1 do
  1020. swait()
  1021. if type == "Add" then
  1022. scaler2 = scaler2 - 0.01*value
  1023. elseif type == "Divide" then
  1024. scaler2 = scaler2 - 0.01/value
  1025. end
  1026. rng.Transparency = rng.Transparency + 0.01
  1027. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
  1028. end
  1029. rng:Destroy()
  1030. end))
  1031. end
  1032.  
  1033. function wind(type,pos,scale,value,speed)
  1034. local type = type
  1035. local rng = Instance.new("Part", Character)
  1036. rng.Anchored = true
  1037. rng.BrickColor = origcolor
  1038. rng.CanCollide = false
  1039. rng.FormFactor = 3
  1040. rng.Name = "Ring"
  1041. rng.Size = Vector3.new(1, 1, 1)
  1042. rng.Transparency = 0
  1043. rng.TopSurface = 0
  1044. rng.BottomSurface = 0
  1045. rng.CFrame = pos
  1046. local rngm = Instance.new("SpecialMesh", rng)
  1047. rngm.MeshId = "http://www.roblox.com/asset/?id=1051557"
  1048. rngm.Scale = scale
  1049. local scaler2 = 1
  1050. if type == "Add" then
  1051. scaler2 = 1*value
  1052. elseif type == "Divide" then
  1053. scaler2 = 1/value
  1054. end
  1055. coroutine.resume(coroutine.create(function()
  1056. for i = 0,10,0.1 do
  1057. swait()
  1058. if type == "Add" then
  1059. scaler2 = scaler2 - 0.01*value
  1060. elseif type == "Divide" then
  1061. scaler2 = scaler2 - 0.01/value
  1062. end
  1063. rng.CFrame = rng.CFrame*CFrame.Angles(0,0.025*speed,0)
  1064. rng.Transparency = rng.Transparency + 0.01
  1065. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2, scaler2)
  1066. end
  1067. rng:Destroy()
  1068. end))
  1069. end
  1070.  
  1071. function groundwind(type,pos,scale,value,speed)
  1072. local type = type
  1073. local rng = Instance.new("Part", Character)
  1074. rng.Anchored = true
  1075. rng.BrickColor = origcolor
  1076. rng.CanCollide = false
  1077. rng.FormFactor = 3
  1078. rng.Name = "Ring"
  1079. rng.Size = Vector3.new(1, 1, 1)
  1080. rng.Transparency = 0
  1081. rng.TopSurface = 0
  1082. rng.BottomSurface = 0
  1083. rng.CFrame = pos
  1084. local rngm = Instance.new("SpecialMesh", rng)
  1085. rngm.MeshId = "http://www.roblox.com/asset/?id=1051557"
  1086. rngm.Scale = scale
  1087. local scaler2 = 1
  1088. if type == "Add" then
  1089. scaler2 = 1*value
  1090. elseif type == "Divide" then
  1091. scaler2 = 1/value
  1092. end
  1093. coroutine.resume(coroutine.create(function()
  1094. for i = 0,10,0.1 do
  1095. swait()
  1096. if type == "Add" then
  1097. scaler2 = scaler2 - 0.01*value
  1098. elseif type == "Divide" then
  1099. scaler2 = scaler2 - 0.01/value
  1100. end
  1101. rng.CFrame = rng.CFrame*CFrame.Angles(0,0.025*speed,0)
  1102. rng.Transparency = rng.Transparency + 0.01
  1103. rngm.Scale = rngm.Scale + Vector3.new(scaler2, scaler2/5, scaler2)
  1104. end
  1105. rng:Destroy()
  1106. end))
  1107. end
  1108.  
  1109. function sphere(bonuspeed,type,pos,scale,value,color,heart,invert,notaffectbychaosrainbow)
  1110. local type = type
  1111. local rng = Instance.new("Part", Character)
  1112. rng.Anchored = true
  1113. rng.BrickColor = color
  1114. rng.CanCollide = false
  1115. rng.FormFactor = 3
  1116. rng.Name = "Ring"
  1117. rng.Material = "Neon"
  1118. rng.Size = Vector3.new(1, 1, 1)
  1119. rng.Transparency = 0
  1120. rng.TopSurface = 0
  1121. rng.BottomSurface = 0
  1122. rng.CFrame = pos
  1123. local rngm = Instance.new("SpecialMesh", rng)
  1124. rngm.MeshType = "Sphere"
  1125.  
  1126.  
  1127. if(heart)then
  1128. rngm.MeshType = Enum.MeshType.FileMesh
  1129. rngm.MeshId = "rbxassetid://105992239"
  1130. rngm.Offset = Vector3.new(0,0,-.25)
  1131. end
  1132. rngm.Scale = scale
  1133. if rainbowmode == true and not notaffectbychaosrainbow then
  1134. rng.Color = Color3.new(r/255,g/255,b/255)
  1135. end
  1136. local scaler2 = 1
  1137. if type == "Add" then
  1138. scaler2 = 1*value
  1139. elseif type == "Divide" then
  1140. scaler2 = 1/value
  1141. end
  1142. coroutine.resume(coroutine.create(function()
  1143. for i = 0,10/bonuspeed,0.1 do
  1144. swait()
  1145. if rainbowmode == true and not notaffectbychaosrainbow then
  1146. rng.Color = Color3.new(r/255,g/255,b/255)
  1147. end
  1148. if type == "Add" then
  1149. scaler2 = scaler2 - 0.01*value/bonuspeed
  1150. elseif type == "Divide" then
  1151. scaler2 = scaler2 - 0.01/value*bonuspeed
  1152. end
  1153. if chaosmode == true and not notaffectbychaosrainbow then
  1154. rng.BrickColor = BrickColor.random()
  1155. end
  1156. if glitchymode then
  1157. local val = math.random(1,255)
  1158. local color = Color3.fromRGB(val,val,val)
  1159. rng.Color = color
  1160. end
  1161. rng.Transparency = rng.Transparency + 0.01*bonuspeed
  1162. if(invert)then
  1163. if(heart)then
  1164. rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, 0)
  1165. else
  1166. rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
  1167. end
  1168. else
  1169. if(heart)then
  1170. rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, 0)
  1171. else
  1172. rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
  1173. end
  1174. end
  1175. rng.CFrame = pos
  1176. end
  1177. rng:Destroy()
  1178. end))
  1179. end
  1180.  
  1181.  
  1182. function PixelBlock(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos,heart,invert)
  1183. local type = type
  1184. local rng = Instance.new("Part", Character)
  1185. rng.Anchored = true
  1186. rng.BrickColor = color
  1187. rng.CanCollide = false
  1188. rng.FormFactor = 3
  1189. rng.Name = "Ring"
  1190. rng.Material = "Neon"
  1191. rng.Size = Vector3.new(1, 1, 1)
  1192. rng.Transparency = 0
  1193. rng.TopSurface = 0
  1194. rng.BottomSurface = 0
  1195. rng.CFrame = pos
  1196. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
  1197. local rngm = Instance.new("SpecialMesh", rng)
  1198. rngm.MeshType = "Brick"
  1199. if(heart)then
  1200. rngm.MeshType = Enum.MeshType.FileMesh
  1201. rngm.MeshId = "rbxassetid://105992239"
  1202. rngm.Offset = Vector3.new(0,0,-.25)
  1203. end
  1204. rngm.Scale = Vector3.new(x1,y1,z1)
  1205. if rainbowmode == true then
  1206. rng.Color = Color3.new(r/255,g/255,b/255)
  1207. end
  1208. local scaler2 = 1
  1209. local speeder = FastSpeed/10
  1210. if type == "Add" then
  1211. scaler2 = 1*value
  1212. elseif type == "Divide" then
  1213. scaler2 = 1/value
  1214. end
  1215. coroutine.resume(coroutine.create(function()
  1216. for i = 0,10/bonuspeed,0.1 do
  1217. swait()
  1218. if rainbowmode == true then
  1219. rng.Color = Color3.new(r/255,g/255,b/255)
  1220. end
  1221. if type == "Add" then
  1222. scaler2 = scaler2 - 0.01*value/bonuspeed
  1223. elseif type == "Divide" then
  1224. scaler2 = scaler2 - 0.01/value*bonuspeed
  1225. end
  1226. if chaosmode == true then
  1227. rng.BrickColor = BrickColor.random()
  1228. end
  1229. if glitchymode then
  1230. local val = math.random(1,255)
  1231. local color = Color3.fromRGB(val,val,val)
  1232. rng.Color = color
  1233. end
  1234. speeder = speeder - 0.01*FastSpeed*bonuspeed/10
  1235. if(invert)then rng.CFrame = rng.CFrame - rng.CFrame.lookVector*speeder*bonuspeed else rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed end
  1236. --rng.Transparency = rng.Transparency + 0.01*bonuspeed
  1237. rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
  1238. end
  1239. rng:Destroy()
  1240. end))
  1241. end
  1242.  
  1243. function PixelBlockX(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos)
  1244. local type = type
  1245. local rng = Instance.new("Part", Character)
  1246. rng.Anchored = true
  1247. rng.BrickColor = color
  1248. rng.CanCollide = false
  1249. rng.FormFactor = 3
  1250. rng.Name = "Ring"
  1251. rng.Material = "Neon"
  1252. rng.Size = Vector3.new(1, 1, 1)
  1253. rng.Transparency = 0
  1254. rng.TopSurface = 0
  1255. rng.BottomSurface = 0
  1256. rng.CFrame = pos
  1257. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
  1258. local rngm = Instance.new("SpecialMesh", rng)
  1259. rngm.MeshType = "Brick"
  1260. rngm.Scale = Vector3.new(x1,y1,z1)
  1261. if rainbowmode == true then
  1262. rng.Color = Color3.new(r/255,g/255,b/255)
  1263. end
  1264. local scaler2 = 1
  1265. local speeder = FastSpeed/10
  1266. if type == "Add" then
  1267. scaler2 = 1*value
  1268. elseif type == "Divide" then
  1269. scaler2 = 1/value
  1270. end
  1271. coroutine.resume(coroutine.create(function()
  1272. for i = 0,10/bonuspeed,0.1 do
  1273. swait()
  1274. if rainbowmode == true then
  1275. rng.Color = Color3.new(r/255,g/255,b/255)
  1276. end
  1277. if type == "Add" then
  1278. scaler2 = scaler2 - 0.01*value/bonuspeed
  1279. elseif type == "Divide" then
  1280. scaler2 = scaler2 - 0.01/value*bonuspeed
  1281. end
  1282. if chaosmode == true then
  1283. rng.BrickColor = BrickColor.random()
  1284. end
  1285. speeder = speeder - 0.01*FastSpeed*bonuspeed/10
  1286. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
  1287. rng.Transparency = rng.Transparency + 0.01*bonuspeed
  1288. rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
  1289. end
  1290. rng:Destroy()
  1291. end))
  1292. end
  1293.  
  1294. function PixelBlockNeg(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos,heart,invert)
  1295. local type = type
  1296. local rng = Instance.new("Part", Character)
  1297. rng.Anchored = true
  1298. rng.BrickColor = color
  1299. rng.CanCollide = false
  1300. rng.FormFactor = 3
  1301. rng.Name = "Ring"
  1302. rng.Material = "Neon"
  1303. rng.Size = Vector3.new(1, 1, 1)
  1304. rng.Transparency = 0
  1305. rng.TopSurface = 0
  1306. rng.BottomSurface = 0
  1307. rng.CFrame = pos
  1308. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
  1309. local rngm = Instance.new("SpecialMesh", rng)
  1310. rngm.MeshType = "Brick"
  1311. if(heart)then
  1312. rngm.MeshType = Enum.MeshType.FileMesh
  1313. rngm.MeshId = "rbxassetid://105992239"
  1314. rngm.Offset = Vector3.new(0,0,-.25)
  1315. end
  1316. rngm.Scale = Vector3.new(x1,y1,z1)
  1317. if rainbowmode == true then
  1318. rng.Color = Color3.new(r/255,g/255,b/255)
  1319. end
  1320. local scaler2 = 0
  1321. local speeder = FastSpeed/10
  1322. if type == "Add" then
  1323. scaler2 = 1*value
  1324. elseif type == "Divide" then
  1325. scaler2 = 1/value
  1326. end
  1327. coroutine.resume(coroutine.create(function()
  1328. for i = 0,10/bonuspeed,0.1 do
  1329. swait()
  1330. if rainbowmode == true then
  1331. rng.Color = Color3.new(r/255,g/255,b/255)
  1332. end
  1333. if type == "Add" then
  1334. scaler2 = scaler2 - 0.01*value/bonuspeed
  1335. elseif type == "Divide" then
  1336. scaler2 = scaler2 - 0.01/value*bonuspeed
  1337. end
  1338. if chaosmode == true then
  1339. rng.BrickColor = BrickColor.random()
  1340. end
  1341. if glitchymode then
  1342. local val = math.random(1,255)
  1343. local color = Color3.fromRGB(val,val,val)
  1344. rng.Color = color
  1345. end
  1346. speeder = speeder + 0.01*FastSpeed*bonuspeed/10
  1347. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
  1348. if(invert)then rng.CFrame = rng.CFrame - rng.CFrame.lookVector*speeder*bonuspeed else rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed end
  1349. --rng.Transparency = rng.Transparency + 0.01*bonuspeed
  1350. rngm.Scale = rngm.Scale - Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, scaler2*bonuspeed)
  1351. end
  1352. rng:Destroy()
  1353. end))
  1354. end
  1355.  
  1356. function sphereMK(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos)
  1357. local type = type
  1358. local rng = Instance.new("Part", Character)
  1359. rng.Anchored = true
  1360. rng.BrickColor = color
  1361. rng.CanCollide = false
  1362. rng.FormFactor = 3
  1363. rng.Name = "Ring"
  1364. rng.Material = "Neon"
  1365. rng.Size = Vector3.new(1, 1, 1)
  1366. rng.Transparency = 0
  1367. rng.TopSurface = 0
  1368. rng.BottomSurface = 0
  1369. rng.CFrame = pos
  1370. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
  1371. local rngm = Instance.new("SpecialMesh", rng)
  1372. rngm.MeshType = "Sphere"
  1373. rngm.Scale = Vector3.new(x1,y1,z1)
  1374. if rainbowmode == true then
  1375. rng.Color = Color3.new(r/255,g/255,b/255)
  1376. end
  1377. local scaler2 = 1
  1378. local speeder = FastSpeed
  1379. if type == "Add" then
  1380. scaler2 = 1*value
  1381. elseif type == "Divide" then
  1382. scaler2 = 1/value
  1383. end
  1384. coroutine.resume(coroutine.create(function()
  1385. for i = 0,10/bonuspeed,0.1 do
  1386. swait()
  1387. if rainbowmode == true then
  1388. rng.Color = Color3.new(r/255,g/255,b/255)
  1389. end
  1390. if type == "Add" then
  1391. scaler2 = scaler2 - 0.01*value/bonuspeed
  1392. elseif type == "Divide" then
  1393. scaler2 = scaler2 - 0.01/value*bonuspeed
  1394. end
  1395. if chaosmode == true then
  1396. rng.BrickColor = BrickColor.random()
  1397. end
  1398. if glitchymode then
  1399. local val = math.random(1,255)
  1400. local color = Color3.fromRGB(val,val,val)
  1401. rng.Color = color
  1402. end
  1403. speeder = speeder - 0.01*FastSpeed*bonuspeed
  1404. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
  1405. rng.Transparency = rng.Transparency + 0.01*bonuspeed
  1406. rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, 0)
  1407. end
  1408. rng:Destroy()
  1409. end))
  1410. end
  1411.  
  1412.  
  1413. function sphereMKCharge(bonuspeed,FastSpeed,type,pos,x1,y1,z1,value,color,outerpos)
  1414. local type = type
  1415. local rng = Instance.new("Part", Character)
  1416. rng.Anchored = true
  1417. rng.BrickColor = color
  1418. rng.CanCollide = false
  1419. rng.FormFactor = 3
  1420. rng.Name = "Ring"
  1421. rng.Material = "Neon"
  1422. rng.Size = Vector3.new(1, 1, 1)
  1423. rng.Transparency = 1
  1424. rng.TopSurface = 0
  1425. rng.BottomSurface = 0
  1426. rng.CFrame = pos
  1427. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*outerpos
  1428. local rngm = Instance.new("SpecialMesh", rng)
  1429. rngm.MeshType = "Sphere"
  1430. rngm.Scale = Vector3.new(x1,y1,z1)
  1431. if rainbowmode == true then
  1432. rng.Color = Color3.new(r/255,g/255,b/255)
  1433. end
  1434. local scaler2 = 1
  1435. local speeder = FastSpeed
  1436. if type == "Add" then
  1437. scaler2 = 1*value
  1438. elseif type == "Divide" then
  1439. scaler2 = 1/value
  1440. end
  1441. coroutine.resume(coroutine.create(function()
  1442. for i = 0,10/bonuspeed,0.1 do
  1443. swait()
  1444. if rainbowmode == true then
  1445. rng.Color = Color3.new(r/255,g/255,b/255)
  1446. end
  1447. if type == "Add" then
  1448. scaler2 = scaler2 - 0.01*value/bonuspeed
  1449. elseif type == "Divide" then
  1450. scaler2 = scaler2 - 0.01/value*bonuspeed
  1451. end
  1452. if chaosmode == true then
  1453. rng.BrickColor = BrickColor.random()
  1454. end
  1455. if glitchymode then
  1456. local val = math.random(1,255)
  1457. local color = Color3.fromRGB(val,val,val)
  1458. rng.Color = color
  1459. end
  1460. speeder = speeder - 0.01*FastSpeed*bonuspeed
  1461. rng.CFrame = rng.CFrame + rng.CFrame.lookVector*speeder*bonuspeed
  1462. rng.Transparency = rng.Transparency - 0.01*bonuspeed
  1463. rngm.Scale = rngm.Scale + Vector3.new(scaler2*bonuspeed, scaler2*bonuspeed, 0)
  1464. end
  1465. rng:Destroy()
  1466. end))
  1467. end
  1468.  
  1469. --// Attacks \\--
  1470.  
  1471. function ExtinctiveHeartbreak()
  1472. local targetted = nil
  1473. if mouse.Target.Parent ~= Character and mouse.Target.Parent.Parent ~= Character and mouse.Target.Parent:FindFirstChildOfClass("Humanoid") ~= nil then
  1474. targetted = mouse.Target.Parent
  1475. end
  1476. if targetted ~= nil then
  1477. attack = true
  1478. CFuncs["Sound"].Create("rbxassetid://847061203", RootPart, 2.5,1)
  1479. for i = 0, 9 do
  1480. sphereMK(3,0.25,"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),1,1,10,-0.01,BrickColor.new("Really black"),0)
  1481. end
  1482. for i = 0, 24 do
  1483. PixelBlock(1,math.random(4,8),"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),3,3,3,0.06,BrickColor.new("Really black"),0)
  1484. end
  1485. sphere(3,"Add",RootPart.CFrame,Vector3.new(0,0,0),0.25,BrickColor.new("Really black"))
  1486. local originalpos = RootPart.CFrame
  1487. RootPart.CFrame = targetted.Head.CFrame * CFrame.new(0,-2,2)
  1488. for i = 0, 9 do
  1489. sphereMK(3,0.25,"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),1,1,10,-0.01,BrickColor.new("Really black"),0)
  1490. end
  1491. for i = 0, 24 do
  1492. PixelBlock(1,math.random(4,8),"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),3,3,3,0.06,BrickColor.new("Really black"),0)
  1493. end
  1494. Humanoid.WalkSpeed = 0
  1495. targetted.Head.Anchored = true
  1496. sphere(3,"Add",RootPart.CFrame,Vector3.new(0,0,0),0.25,BrickColor.new("Really black"))
  1497. for i = 0,2,0.1 do
  1498. swait()
  1499. RightHip.C0=Clerp(RightHip.C0,CF(1,-1 - 0.05 * math.cos(theta / 28),0)*ANGLES(math.rad(0),math.rad(90),math.rad(0))*ANGLES(math.rad(-2.5),math.rad(0),math.rad(0)),.4)
  1500. LeftHip.C0=Clerp(LeftHip.C0,CF(-1,-1 - 0.05 * math.cos(theta / 28),0)*ANGLES(math.rad(0),math.rad(-90),math.rad(0))*ANGLES(math.rad(-2.5),math.rad(0),math.rad(0)),.4)
  1501. RootJoint.C0=Clerp(RootJoint.C0,RootCF*CF(0,0,0 + 0.05 * math.cos(theta / 28))*ANGLES(math.rad(0),math.rad(0),math.rad(80)),.4)
  1502. Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(math.rad(20),math.rad(0),math.rad(10)),.8)
  1503. RightShoulder.C0=Clerp(RightShoulder.C0,CF(1.5,0.5 + 0.1 * math.cos(theta / 28),0)*ANGLES(math.rad(20),math.rad(0),math.rad(10)),.4)
  1504. LeftShoulder.C0=Clerp(LeftShoulder.C0,CF(-1.5,0.5 + 0.1 * math.cos(theta / 28),0)*ANGLES(math.rad(90),math.rad(0),math.rad(60)),.4)
  1505. end
  1506. coroutine.resume(coroutine.create(function()
  1507. if targetted.Humanoid.RigType == "R6" then
  1508. bld = Instance.new("ParticleEmitter",targetted:WaitForChild("Torso"))
  1509. else
  1510. bld = Instance.new("ParticleEmitter",targetted:WaitForChild("UpperTorso"))
  1511. end
  1512. bld.LightEmission = 0.1
  1513. bld.Texture = "rbxassetid://284205403"
  1514. bld.Color = ColorSequence.new(Color3.new(0.5,0,0))
  1515. bld.Rate = 500
  1516. bld.Lifetime = NumberRange.new(1)
  1517. bld.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,2,0),NumberSequenceKeypoint.new(1,0,0)})
  1518. bld.Acceleration = Vector3.new(0,-25,0)
  1519. bld.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,0,0)})
  1520. bld.Speed = NumberRange.new(10,50)
  1521. bld.EmissionDirection = "Front"
  1522. bld.VelocitySpread = 25
  1523. bld.Rotation = NumberRange.new(-500,500)
  1524. bld.RotSpeed = NumberRange.new(-500,500)
  1525. end))
  1526. coroutine.resume(coroutine.create(function()
  1527. bld = Instance.new("ParticleEmitter",targetted:WaitForChild("UpperTorso"))
  1528. bld.LightEmission = 0.1
  1529. bld.Texture = "rbxassetid://284205403"
  1530. bld.Color = ColorSequence.new(Color3.new(0.5,0,0))
  1531. bld.Rate = 500
  1532. bld.Lifetime = NumberRange.new(1)
  1533. bld.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,2,0),NumberSequenceKeypoint.new(1,0,0)})
  1534. bld.Acceleration = Vector3.new(0,-25,0)
  1535. bld.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0,0),NumberSequenceKeypoint.new(1,0,0)})
  1536. bld.Speed = NumberRange.new(10,50)
  1537. bld.EmissionDirection = "Front"
  1538. bld.VelocitySpread = 25
  1539. bld.Rotation = NumberRange.new(-500,500)
  1540. bld.RotSpeed = NumberRange.new(-500,500)
  1541. end))
  1542. game:GetService("Debris"):AddItem(bld,3)
  1543. targetted:BreakJoints()
  1544. CFuncs["Sound"].Create("rbxassetid://429400881", targetted.Head, 1,1)
  1545. for i = 0,1,0.1 do
  1546. swait()
  1547. RightHip.C0=Clerp(RightHip.C0,CF(1,-1 - 0.05 * math.cos(theta / 28),0)*ANGLES(math.rad(0),math.rad(90),math.rad(0))*ANGLES(math.rad(-2.5),math.rad(0),math.rad(0)),.8)
  1548. LeftHip.C0=Clerp(LeftHip.C0,CF(-1,-1 - 0.05 * math.cos(theta / 28),0)*ANGLES(math.rad(0),math.rad(-90),math.rad(0))*ANGLES(math.rad(-2.5),math.rad(0),math.rad(0)),.8)
  1549. RootJoint.C0=Clerp(RootJoint.C0,RootCF*CF(0,0.25,0 + 0.05 * math.cos(theta / 28))*ANGLES(math.rad(0),math.rad(0),math.rad(-80)),.8)
  1550. Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(math.rad(20),math.rad(0),math.rad(80)),.8)
  1551. RightShoulder.C0=Clerp(RightShoulder.C0,CF(1.5,0.5 + 0.1 * math.cos(theta / 28),0)*ANGLES(math.rad(20),math.rad(0),math.rad(10)),.8)
  1552. LeftShoulder.C0=Clerp(LeftShoulder.C0,CF(-1.5,0.5 + 0.1 * math.cos(theta / 28),0)*ANGLES(math.rad(90),math.rad(0),math.rad(-80)),.8)
  1553. end
  1554. CFuncs["Sound"].Create("rbxassetid://847061203", RootPart, 2.5,1)
  1555. for i = 0, 9 do
  1556. sphereMK(3,0.25,"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),1,1,10,-0.01,BrickColor.new("Really black"),0)
  1557. end
  1558. for i = 0, 24 do
  1559. PixelBlock(1,math.random(4,8),"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),3,3,3,0.06,BrickColor.new("Really black"),0)
  1560. end
  1561. sphere(3,"Add",RootPart.CFrame,Vector3.new(0,0,0),0.25,BrickColor.new("Really black"))
  1562. RootPart.CFrame = originalpos
  1563. for i = 0, 9 do
  1564. sphereMK(3,0.25,"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),1,1,10,-0.01,BrickColor.new("Really black"),0)
  1565. end
  1566. for i = 0, 24 do
  1567. PixelBlock(1,math.random(4,8),"Add",RootPart.CFrame*CFrame.Angles(math.rad(math.random(-360,360)),math.rad(math.random(-360,360)),math.rad(math.random(-360,360))),3,3,3,0.06,BrickColor.new("Really black"),0)
  1568. end
  1569. sphere(3,"Add",RootPart.CFrame,Vector3.new(0,0,0),0.25,BrickColor.new("Really black"))
  1570. bld.Enabled = false
  1571. attack = false
  1572. Humanoid.WalkSpeed = 27
  1573. end
  1574. end
  1575.  
  1576. mouse.KeyDown:connect(function(k)
  1577. if k == "p" and attack == false then
  1578. Chatter(dialogue [math.random(1,#dialogue)],5)
  1579. elseif k == "z" and attack == false then
  1580. ExtinctiveHeartbreak()
  1581. end
  1582. end)
  1583.  
  1584. Chatter("I crave... flesh...",5)
  1585.  
  1586. while true do
  1587. swait()
  1588. theta = theta + 1
  1589. Script6.Parent.Rotation = math.random(-15,15)
  1590. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1591. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1592. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  1593. local WALKSPEEDVALUE = 6 / (Humanoid.WalkSpeed / 16)
  1594. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1595. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CFrame.new(0, 0, 0.05 * COS(theta / (WALKSPEEDVALUE/2))) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / 3)
  1596. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / 3)
  1597. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 0.875 - 0.125 * SIN(theta / WALKSPEEDVALUE) - 0.15 * COS(theta / WALKSPEEDVALUE*2), 0.2 * SIN(theta / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35 * COS(theta / WALKSPEEDVALUE))), 0.6 / 3)
  1598. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 0.875 + 0.125 * SIN(theta / WALKSPEEDVALUE) - 0.15 * COS(theta / WALKSPEEDVALUE*2), -0.2 * SIN(theta / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(35 * COS(theta / WALKSPEEDVALUE))), 0.6 / 3)
  1599. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1600. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
  1601. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / 3)
  1602. RightHip.C1 = Clerp(RightHip.C1, CF(0.5, 1, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.7 / 3)
  1603. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5, 1, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.7 / 3)
  1604. end
  1605. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1606. ANIM = "Jump"
  1607. if attack == false then
  1608. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(-5), RAD(0), RAD(0)), 1 / 3)
  1609. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(-25), RAD(0), RAD(0)), 1 / 3)
  1610. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(25 + 10 * COS(theta / 12))) * RIGHTSHOULDERC0, 1 / 3)
  1611. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35), RAD(0), RAD(-25 - 10 * COS(theta / 12))) * LEFTSHOULDERC0, 1 / 3)
  1612. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.4, -0.6) * ANGLES(RAD(1), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(theta / 6)), RAD(0), RAD(0)), 1 / 3)
  1613. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1, 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1 * SIN(theta / 6)), RAD(0), RAD(0)), 1 / 3)
  1614. end
  1615. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1616. ANIM = "Fall"
  1617. if attack == false then
  1618. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0, 0, 0 ) * ANGLES(RAD(-15), RAD(0), RAD(0)), 1 / 3)
  1619. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0 , 0 + ((1) - 1)) * ANGLES(RAD(15), RAD(0), RAD(0)), 1 / 3)
  1620. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5, 0.5, 0) * ANGLES(RAD(-35 - 4 * COS(theta / 6)), RAD(0), RAD(45 + 10 * COS(theta / 12))) * RIGHTSHOULDERC0, 1 / 3)
  1621. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5, 0.5, 0) * ANGLES(RAD(-35 - 4 * COS(theta / 6)), RAD(0), RAD(-45 - 10 * COS(theta / 12))) * LEFTSHOULDERC0, 1 / 3)
  1622. RightHip.C0 = Clerp(RightHip.C0, CF(1, -0.3, -0.7) * ANGLES(RAD(-25 + 5 * SIN(theta / 12)), RAD(90), RAD(0)) * ANGLES(RAD(-1 * SIN(theta / 6)), RAD(0), RAD(0)), 1 / 3)
  1623. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -0.8, -0.3) * ANGLES(RAD(-10), RAD(-80), RAD(0)) * ANGLES(RAD(-1 * SIN(theta / 6)), RAD(0), RAD(0)), 1 / 3)
  1624. end
  1625. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1626. ANIM = "Idle"
  1627. if attack == false then
  1628. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0, 0, 0 + 0.05 * COS(theta / 12)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / 3)
  1629. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / 3)
  1630. if MRANDOM(1,7) == 1 then
  1631. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1) - 1)) * ANGLES(RAD(0 + MRANDOM(-25,25) - 4 * COS(theta / 12)), RAD(MRANDOM(-25,25)), RAD(0)), 1.5 / 3)
  1632. end
  1633. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.15, 0.5, 0.5) * ANGLES(RAD(-25 - 4 * COS(theta / 12)), RAD(0), RAD(-45)) * RIGHTSHOULDERC0, 1 / 3)
  1634. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.15, 0.5, 0.5) * ANGLES(RAD(-30 - 4 * COS(theta / 12)), RAD(0), RAD(45)) * LEFTSHOULDERC0, 1 / 3)
  1635. RightHip.C0 = Clerp(RightHip.C0, CF(1, -1 - 0.05 * COS(theta / 12), 0) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / 3)
  1636. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1, -1 - 0.05 * COS(theta / 12), 0) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(-1), RAD(0), RAD(0)), 1 / 3)
  1637. end
  1638. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1639. ANIM = "Walk"
  1640. if attack == false then
  1641. RightHip.C0=Clerp(RightHip.C0,CF(1,-1 - 0.15 * math.cos(theta / 3),0)*ANGLES(math.rad(0),math.rad(90),math.rad(0))*ANGLES(math.rad(0),math.rad(0),math.rad(0 + 95 * math.cos(theta / 6))),.1)
  1642. LeftHip.C0=Clerp(LeftHip.C0,CF(-1,-1 - 0.15 * math.cos(theta / 3),0)*ANGLES(math.rad(0),math.rad(-90),math.rad(0))*ANGLES(math.rad(0),math.rad(0),math.rad(0 + 95 * math.cos(theta / 6))),.1)
  1643. RootJoint.C0 = Clerp(RootJoint.C0,RootCF*CF(0, 0, -0.125 + 0.125 * math.cos(theta / 3)) * ANGLES(math.rad(20), math.rad(0), math.rad(0 - 15 * math.cos(theta / 6))), 0.1)
  1644. Torso.Neck.C0=Clerp(Torso.Neck.C0,NECKC0*ANGLES(math.rad(-6 + 2 * math.cos(theta / 3)),math.rad(0 + RootPart.RotVelocity.Y*1.5),math.rad(0 - Head.RotVelocity.Y*1.5 + 1 * math.cos(theta / 6))),.1)
  1645. RightShoulder.C0=Clerp(RightShoulder.C0,CF(1.5,0.5,0.3)*ANGLES(math.rad(-50 + 10 * math.cos(theta / 3)),math.rad(-10),math.rad(7 + 5 * math.cos(theta / 6))),.1)
  1646. LeftShoulder.C0=Clerp(LeftShoulder.C0,CF(-1.5,0.5,0.3)*ANGLES(math.rad(-50 + 10 * math.cos(theta / 3)),math.rad(10),math.rad(-7 - 5 * math.cos(theta / 6))),.1)
  1647. end
  1648. end
  1649. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement