Advertisement
Guest User

L

a guest
Jul 18th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 129.77 KB | None | 0 0
  1. --SynapseX Decompiler
  2.  
  3. local Player = script.Parent.Parent
  4. local Mouse = Player:GetMouse()
  5. repeat
  6. wait()
  7. until Player.Character
  8. local Character = Player.Character
  9. local Camera = workspace.CurrentCamera
  10. local PlayerGui = Player:WaitForChild("PlayerGui")
  11. local allmult = 1
  12. if Player:WaitForChild("Requiem").Value == true then
  13. allmult = 1.25
  14. end
  15. local Humanoid = Character:WaitForChild("Humanoid")
  16. table.foreach(Humanoid:GetPlayingAnimationTracks(), function(_, v)
  17. v:Stop()
  18. end)
  19. if Character:FindFirstChild("Animate") then
  20. Character:FindFirstChild("Animate"):Destroy()
  21. end
  22. local Container = Character.Head:WaitForChild("Container")
  23. local silenced = Character:WaitForChild("silenced")
  24. local woosh = Character.Torso:WaitForChild("woosh")
  25. local voiceline = Character.Torso:WaitForChild("voiceline")
  26. local menacing = Character.Torso:WaitForChild("Menacing")
  27. local summonstand = Character.Torso:WaitForChild("summonstand")
  28. local InputService = game:GetService("UserInputService")
  29. local intextbox = false
  30. local jointevent = game:GetService("ReplicatedStorage").Logic.sendjoints
  31. local updatejointevent = game:GetService("ReplicatedStorage").Logic.receivejoints
  32. local hitevent = game:GetService("ReplicatedStorage").Logic.hitbox
  33. local miscevent = game:GetService("ReplicatedStorage").Logic.misc
  34. local cooldownmod = 1
  35. if Player:WaitForChild("Blessing").Value == "Holy" then
  36. cooldownmod = 0.5
  37. end
  38. miscevent:FireServer(5, Humanoid, 16)
  39. local Stand = Container:WaitForChild("Stand")
  40. if Player:WaitForChild("IsHamon").Value == true then
  41. ScreenGui0 = Instance.new("ScreenGui")
  42. ImageLabel1 = Instance.new("ImageLabel")
  43. ImageLabel2 = Instance.new("ImageLabel")
  44. ScreenGui0.Name = "HamonCharge"
  45. ScreenGui0.Parent = Player.PlayerGui
  46. ImageLabel1.Name = "BarFront"
  47. ImageLabel1.Parent = ScreenGui0
  48. ImageLabel1.Transparency = 1
  49. ImageLabel1.Size = UDim2.new(0, 0, 0, 20)
  50. ImageLabel1.Position = UDim2.new(0.449999988, 0, 0.850000024, 0)
  51. ImageLabel1.BackgroundColor3 = Color3.new(1, 1, 1)
  52. ImageLabel1.BackgroundTransparency = 1
  53. ImageLabel1.ZIndex = 2
  54. ImageLabel1.Image = "rbxassetid://1061605343"
  55. ImageLabel2.Name = "BarBack"
  56. ImageLabel2.Parent = ScreenGui0
  57. ImageLabel2.Size = UDim2.new(0, 200, 0, 20)
  58. ImageLabel2.Position = UDim2.new(0.449999988, 0, 0.850000024, 0)
  59. ImageLabel2.BackgroundColor3 = Color3.new(1, 1, 1)
  60. ImageLabel2.BorderColor3 = Color3.new(0, 0, 0)
  61. ImageLabel2.BorderSizePixel = 2
  62. ImageLabel2.Image = "rbxassetid://1061605343"
  63. ImageLabel2.ImageColor3 = Color3.new(0.27451, 0.27451, 0.27451)
  64. end
  65. local Joints = {
  66. Character.HumanoidRootPart.RootJoint,
  67. Character.Torso.Neck,
  68. Character.Torso["Left Shoulder"],
  69. Character.Torso["Right Shoulder"],
  70. Character.Torso["Left Hip"],
  71. Character.Torso["Right Hip"]
  72. }
  73. local StandJoints, StandTorso
  74. local ora = Stand.Torso:WaitForChild("ora")
  75. local singleora = Stand.Torso:WaitForChild("singleora")
  76. local specialsound = Character.Torso:WaitForChild("specialsound")
  77. local specialsound2 = Character.Torso:WaitForChild("specialsound2")
  78. local specialtable = {}
  79. local specialvar, orig1s, orig2s, orig3s, orig4s, orig5s, random1, random2, random3, random4, random5
  80. StandJoints = {
  81. Stand:WaitForChild("Torso").Neck,
  82. Stand:WaitForChild("Torso")["Left Shoulder"],
  83. Stand:WaitForChild("Torso")["Right Shoulder"],
  84. Stand:WaitForChild("Torso")["Left Hip"],
  85. Stand:WaitForChild("Torso")["Right Hip"]
  86. }
  87. StandTorso = Stand:WaitForChild("Torso")
  88. orig1s = StandJoints[1].C0
  89. orig2s = StandJoints[2].C0
  90. orig3s = StandJoints[3].C0
  91. orig4s = StandJoints[4].C0
  92. orig5s = StandJoints[5].C0
  93. local orig1 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  94. local orig2 = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  95. local orig3 = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  96. local orig4 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  97. local orig5 = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
  98. local orig6 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
  99. local timer = 0
  100. local standtimer = 0
  101. local speed = 0.02
  102. local effecttimer = 0
  103. local hit = false
  104. local animation = 0
  105. local currentbarrage = 0
  106. local keyframe = 0
  107. local attacking = false
  108. local punching = false
  109. local falling = false
  110. local origpos
  111. local healing = false
  112. local washealing = false
  113. local accelmult = 1
  114. local wallpos, material, color
  115. local canfall = true
  116. local rockframe = 0
  117. local keepmoving = false
  118. local movetimer = 0
  119. local moveframe = 0
  120. local movespeed = 0
  121. local summoned = false
  122. local running = false
  123. local healH = Stand:FindFirstChild("HeadPart"):WaitForChild("heal")
  124. local healT = Stand:FindFirstChild("Torso"):WaitForChild("heal")
  125. local healLA = Stand:FindFirstChild("Left Arm"):WaitForChild("heal")
  126. local healRA = Stand:FindFirstChild("Right Arm"):WaitForChild("heal")
  127. local healLL = Stand:FindFirstChild("Left Leg"):WaitForChild("heal")
  128. local healRL = Stand:FindFirstChild("Right Leg"):WaitForChild("heal")
  129. local ishamon = false
  130. local charginghamon = false
  131. local hamonpower = 0
  132. local glow, light
  133. if Player:WaitForChild("IsHamon").Value == true then
  134. light = StandTorso:WaitForChild("Light")
  135. glow = StandTorso:WaitForChild("Glow")
  136. end
  137. local cooled1 = true
  138. local cooled2 = true
  139. local cooled3 = true
  140. local cooled4 = true
  141. local cooled5 = true
  142. local cooled6 = true
  143. local cooled7 = true
  144. local cooled8 = true
  145. local cooled9 = false
  146. local starter = coroutine.wrap(function()
  147. wait(15)
  148. cooled9 = true
  149. end)
  150. starter()
  151. local cooledz = true
  152. function randomangle(restrict)
  153. local angle
  154. if not restrict then
  155. angle = math.random(math.rad(-360), math.rad(360))
  156. else
  157. angle = math.random(math.rad(-restrict), math.rad(restrict))
  158. end
  159. return angle
  160. end
  161. function GetAxis(c1, c2)
  162. local axis = {}
  163. axis[1] = (c1[2] - c1[1]).unit
  164. axis[2] = (c1[3] - c1[1]).unit
  165. axis[3] = (c1[5] - c1[1]).unit
  166. axis[4] = (c2[2] - c2[1]).unit
  167. axis[5] = (c2[3] - c2[1]).unit
  168. axis[6] = (c2[5] - c2[1]).unit
  169. axis[7] = axis[1]:Cross(axis[4]).unit
  170. axis[8] = axis[1]:Cross(axis[5]).unit
  171. axis[9] = axis[1]:Cross(axis[6]).unit
  172. axis[10] = axis[2]:Cross(axis[4]).unit
  173. axis[11] = axis[2]:Cross(axis[5]).unit
  174. axis[12] = axis[2]:Cross(axis[6]).unit
  175. axis[13] = axis[3]:Cross(axis[4]).unit
  176. axis[14] = axis[3]:Cross(axis[5]).unit
  177. axis[15] = axis[3]:Cross(axis[6]).unit
  178. return axis
  179. end
  180. function TestAxis(corners1, corners2, axis, surface)
  181. if axis.Magnitude == 0 or tostring(axis) == "NAN, NAN, NAN" then
  182. return true
  183. end
  184. local adists, bdists = {}, {}
  185. for i = 1, 8 do
  186. table.insert(adists, corners1[i]:Dot(axis))
  187. table.insert(bdists, corners2[i]:Dot(axis))
  188. end
  189. local amax, amin = math.max(unpack(adists)), math.min(unpack(adists))
  190. local bmax, bmin = math.max(unpack(bdists)), math.min(unpack(bdists))
  191. local longspan = math.max(amax, bmax) - math.min(amin, bmin)
  192. local sumspan = amax - amin + bmax - bmin
  193. local pass, mtv
  194. if surface then
  195. pass = longspan <= sumspan
  196. else
  197. pass = longspan < sumspan
  198. end
  199. if pass then
  200. local overlap = amax > bmax and -(bmax - amin) or amax - bmin
  201. mtv = axis * overlap
  202. end
  203. return pass, mtv
  204. end
  205. function GetCorners(framepos, size)
  206. local size, corners = size / 2, {}
  207. for x = -1, 1, 2 do
  208. for y = -1, 1, 2 do
  209. for z = -1, 1, 2 do
  210. table.insert(corners, (framepos * CFrame.new(size * Vector3.new(x, y, z))).p)
  211. end
  212. end
  213. end
  214. return corners
  215. end
  216. function NewRegion(framepos, size)
  217. local region = setmetatable({}, {
  218. __index = {}
  219. })
  220. region.surfaceCountsAsCollision = true
  221. region.cframe = framepos
  222. region.size = size
  223. region.planes = {}
  224. region.corners = GetCorners(region.cframe, region.size)
  225. for _, enum in next, Enum.NormalId:GetEnumItems() do
  226. local lnormal = Vector3.FromNormalId(enum)
  227. local wnormal = region.cframe:vectorToWorldSpace(lnormal)
  228. local distance = (lnormal * region.size / 2).magnitude
  229. local point = region.cframe.p + wnormal * distance
  230. table.insert(region.planes, {normal = wnormal, point = point})
  231. end
  232. return region
  233. end
  234. function ShallowCopy(t)
  235. local nt = {}
  236. for k, v in next, t, nil do
  237. nt[k] = v
  238. end
  239. return nt
  240. end
  241. function CastPart(part, region)
  242. local corners1 = region.corners
  243. local corners2 = GetCorners(part.CFrame, part.Size)
  244. local axis, mtvs = GetAxis(corners1, corners2), {}
  245. for i = 1, #axis do
  246. local intersect, mtv = TestAxis(corners1, corners2, axis[i], region.surfaceCountsAsCollision)
  247. if not intersect then
  248. return false, Vector3.new()
  249. end
  250. if mtv then
  251. table.insert(mtvs, mtv)
  252. end
  253. end
  254. table.sort(mtvs, function(a, b)
  255. return a.magnitude < b.magnitude
  256. end)
  257. return true, mtvs[1]
  258. end
  259. function CastRegion(ignore, maxParts, region)
  260. local maxParts = maxParts or 20
  261. local rmin, rmax = {}, {}
  262. local copy = ShallowCopy(region.corners)
  263. for _, enum in next, {
  264. Enum.NormalId.Right,
  265. Enum.NormalId.Top,
  266. Enum.NormalId.Back
  267. }, nil do
  268. do
  269. local lnormal = Vector3.FromNormalId(enum)
  270. table.sort(copy, function(a, b)
  271. return a:Dot(lnormal) > b:Dot(lnormal)
  272. end)
  273. table.insert(rmin, copy[#copy])
  274. table.insert(rmax, copy[1])
  275. end
  276. end
  277. rmin, rmax = Vector3.new(rmin[1].x, rmin[2].y, rmin[3].z), Vector3.new(rmax[1].x, rmax[2].y, rmax[3].z)
  278. local realRegion3 = Region3.new(rmin, rmax)
  279. local parts = game.Workspace:FindPartsInRegion3WithIgnoreList(realRegion3, ignore, maxParts)
  280. local inRegion = {}
  281. for _, part in next, parts, nil do
  282. if CastPart(part, region) then
  283. table.insert(inRegion, part)
  284. end
  285. end
  286. return inRegion
  287. end
  288. if workspace.timestopped.Value == true and workspace.timerstopper.Value ~= Player.Name then
  289. Character.Torso.Anchored = true
  290. end
  291. game:GetService("ReplicatedStorage").Specials.receiveheartattack.OnClientEvent:connect(function(player, part, frame)
  292. if part then
  293. part.CFrame = frame
  294. end
  295. end)
  296. updatejointevent.OnClientEvent:connect(function(player, characterjoints, standjoints, standtorso)
  297. if player and player ~= Player and player.Character:FindFirstChild("HumanoidRootPart") and player.Character:FindFirstChild("HumanoidRootPart"):FindFirstChild("RootJoint") then
  298. player.Character.HumanoidRootPart.RootJoint.C0 = characterjoints[1]
  299. player.Character.Torso.Neck.C0 = characterjoints[2]
  300. player.Character.Torso["Left Shoulder"].C0 = characterjoints[3]
  301. player.Character.Torso["Right Shoulder"].C0 = characterjoints[4]
  302. player.Character.Torso["Left Hip"].C0 = characterjoints[5]
  303. player.Character.Torso["Right Hip"].C0 = characterjoints[6]
  304. if player.Character.Head:FindFirstChild("Container") and player.Character.Head.Container:FindFirstChild("fakearm") and characterjoints[7] then
  305. player.Character.Head.Container:FindFirstChild("fakearm").CFrame = characterjoints[7]
  306. player.Character.Head.Container:FindFirstChild("fakearm").Size = characterjoints[8]
  307. end
  308. if standjoints and standtorso then
  309. standtorso.CFrame = standjoints[1]
  310. standtorso.Neck.C0 = standjoints[2]
  311. standtorso["Left Shoulder"].C0 = standjoints[3]
  312. standtorso["Right Shoulder"].C0 = standjoints[4]
  313. standtorso["Left Hip"].C0 = standjoints[5]
  314. standtorso["Right Hip"].C0 = standjoints[6]
  315. if player.Character.Head.Container:FindFirstChild("fakearm") and standjoints[7] then
  316. player.Character.Head.Container:FindFirstChild("fakearm").CFrame = standjoints[7]
  317. player.Character.Head.Container:FindFirstChild("fakearm").Size = standjoints[8]
  318. player.Character.Head.Container:FindFirstChild("fakearmpart").CFrame = standjoints[9]
  319. player.Character.Head.Container:FindFirstChild("fakearmpart").Size = standjoints[10]
  320. end
  321. end
  322. end
  323. end)
  324. local replicationtimer = 0
  325. game:GetService("RunService").RenderStepped:connect(function()
  326. if (workspace.timestopped.Value == false or workspace.timestopper.Value == Player.Name) and Humanoid.Health > 0 then
  327. replicationtimer = replicationtimer + 1
  328. if replicationtimer % 5 == 0 then
  329. jointevent:FireServer({
  330. Character.HumanoidRootPart.RootJoint.C0,
  331. Character.Torso.Neck.C0,
  332. Character.Torso["Left Shoulder"].C0,
  333. Character.Torso["Right Shoulder"].C0,
  334. Character.Torso["Left Hip"].C0,
  335. Character.Torso["Right Hip"].C0
  336. }, {
  337. Stand:WaitForChild("Torso").CFrame,
  338. Stand:WaitForChild("Torso").Neck.C0,
  339. Stand:WaitForChild("Torso")["Left Shoulder"].C0,
  340. Stand:WaitForChild("Torso")["Right Shoulder"].C0,
  341. Stand:WaitForChild("Torso")["Left Hip"].C0,
  342. Stand:WaitForChild("Torso")["Right Hip"].C0
  343. }, StandTorso)
  344. end
  345. if Player:WaitForChild("IsHamon").Value == true then
  346. if hamonpower > 0 and not charginghamon then
  347. hamonpower = hamonpower - 0.1
  348. miscevent:FireServer(9, glow, hamonpower / 10)
  349. ImageLabel1.Size = UDim2.new(0, hamonpower * 2, 0, 20)
  350. if hamonpower <= 0 then
  351. hamonpower = 0
  352. ishamon = false
  353. miscevent:FireServer(0, light, false)
  354. miscevent:FireServer(0, glow, false)
  355. end
  356. elseif charginghamon and hamonpower < 100 then
  357. hamonpower = hamonpower + 0.125
  358. miscevent:FireServer(9, glow, hamonpower / 10)
  359. ImageLabel1.Size = UDim2.new(0, hamonpower * 2, 0, 20)
  360. if hamonpower >= 100 then
  361. charginghamon = false
  362. end
  363. end
  364. end
  365. if keepmoving then
  366. movetimer = movetimer + movespeed * accelmult
  367. if moveframe == 0 then
  368. if movetimer >= 0.8 then
  369. movetimer = 0
  370. moveframe = 1
  371. end
  372. if not running then
  373. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 - math.sin(movetimer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(movetimer * 2) / 1.5, (0.1 + math.sin(movetimer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  374. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 - math.sin(movetimer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(movetimer * 2) / 1.5, (0.1 + math.sin(movetimer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  375. else
  376. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 - math.sin(movetimer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(movetimer * 2) / 1.15, (0.1 + math.sin(movetimer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  377. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 - math.sin(movetimer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(movetimer * 2) / 1.15, (0.1 + math.sin(movetimer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  378. end
  379. elseif moveframe == 1 then
  380. if movetimer >= 0.8 then
  381. movetimer = 0
  382. moveframe = 0
  383. end
  384. if not running then
  385. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 + math.sin(movetimer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(movetimer * 2) / 1.5, (0.1 - math.sin(movetimer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  386. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 + math.sin(movetimer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(movetimer * 2) / 1.5, (0.1 - math.sin(movetimer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  387. else
  388. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 + math.sin(movetimer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(movetimer * 2) / 1.15, (0.1 - math.sin(movetimer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  389. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 + math.sin(movetimer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(movetimer * 2) / 1.15, (0.1 - math.sin(movetimer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), movespeed * 1.95)
  390. end
  391. end
  392. end
  393. timer = timer + speed * accelmult
  394. if not attacking or animation == 5 then
  395. standtimer = standtimer + 0.02
  396. end
  397. if 5 < Character.HumanoidRootPart.Velocity.Y and not attacking and not falling and canfall then
  398. falling = true
  399. keepmoving = false
  400. speed = 0.02
  401. canfall = false
  402. animation = 2
  403. keyframe = 0
  404. if timer >= 0.5 then
  405. timer = 0
  406. end
  407. end
  408. if Character.HumanoidRootPart.Velocity.Y < -5 and not attacking and not falling and canfall then
  409. falling = true
  410. keepmoving = false
  411. speed = 0.02
  412. canfall = false
  413. animation = 2
  414. keyframe = 1
  415. if timer >= 1 then
  416. timer = 0
  417. end
  418. end
  419. if not falling then
  420. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) and not attacking and animation ~= 0 then
  421. animation = 0
  422. speed = 0.02
  423. if keyframe > 1 then
  424. keyframe = 0
  425. end
  426. if timer >= 1.5 then
  427. timer = 0
  428. end
  429. keepmoving = false
  430. elseif Humanoid.MoveDirection ~= Vector3.new(0, 0, 0) and not attacking and animation ~= 1 then
  431. animation = 1
  432. timer = movetimer
  433. if running then
  434. speed = 0.04
  435. else
  436. speed = 0.03
  437. end
  438. if keyframe > 1 then
  439. keyframe = 0
  440. end
  441. if timer >= 0.8 then
  442. timer = 0
  443. end
  444. keepmoving = false
  445. end
  446. elseif falling then
  447. local region = NewRegion(Character.HumanoidRootPart.CFrame * CFrame.new(0, -4.1, 0), Vector3.new(2, 1, 1))
  448. for _, part in pairs(CastRegion(Character, math.huge, region)) do
  449. if part and part.CanCollide then
  450. local waiter = coroutine.wrap(function()
  451. falling = false
  452. wait(0.15)
  453. canfall = true
  454. end)
  455. waiter()
  456. break
  457. end
  458. end
  459. end
  460. if animation == 0 then
  461. if keyframe == 0 then
  462. if timer >= 1.5 then
  463. timer = 0
  464. keyframe = 1
  465. end
  466. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.1) * CFrame.Angles(0, 0, math.rad(-8)), speed * 1.2)
  467. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(8), 0, math.rad(8)), speed * 1.2)
  468. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.5)
  469. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  470. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.2)
  471. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  472. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(5), 0, math.rad(-3)), speed * 1.2)
  473. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  474. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  475. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  476. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  477. if summoned then
  478. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  479. else
  480. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  481. end
  482. elseif keyframe == 1 then
  483. if timer >= 1.5 then
  484. timer = 0
  485. keyframe = 0
  486. end
  487. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(4), 0, math.rad(-7)), speed * 1.2)
  488. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(0, 0, math.rad(7)), speed * 1.2)
  489. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-4), math.rad(7), math.rad(-5)), speed * 1.5)
  490. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-4), math.rad(-8), math.rad(3)), speed * 1.5)
  491. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.Angles(math.rad(-8), math.rad(13), math.rad(-8)), speed * 1.2)
  492. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(7), math.rad(6)), speed * 1.2)
  493. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(5), 0, math.rad(-3)), speed * 1.2)
  494. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  495. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  496. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  497. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  498. if summoned then
  499. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  500. else
  501. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  502. end
  503. end
  504. elseif animation == 1 then
  505. if keyframe == 0 then
  506. if timer >= 0.8 then
  507. timer = 0
  508. keyframe = 1
  509. end
  510. if not running then
  511. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-timer * 1.5) / 1.5) * CFrame.Angles(math.rad(4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(-Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X * 3), 0), speed * 1.75)
  512. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  513. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-7), 0, math.rad(53 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  514. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-7), 0, math.rad(53 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  515. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 - math.sin(timer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(timer * 2) / 1.5, (0.1 + math.sin(timer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  516. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 - math.sin(timer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(timer * 2) / 1.5, (0.1 + math.sin(timer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  517. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-3)), speed * 1.2)
  518. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  519. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  520. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  521. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  522. if summoned then
  523. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  524. else
  525. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  526. end
  527. else
  528. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-timer * 1.5) / 1.15) * CFrame.Angles(math.rad(12 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(-Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X * 7), 0), speed * 1.75)
  529. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  530. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-9), 0, math.rad(57 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  531. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-9), 0, math.rad(57 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  532. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 - math.sin(timer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(timer * 2) / 1.15, (0.1 + math.sin(timer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  533. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 - math.sin(timer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(timer * 2) / 1.15, (0.1 + math.sin(timer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(-23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(-43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z - 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  534. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-3)), speed * 1.2)
  535. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  536. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  537. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  538. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  539. if summoned then
  540. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  541. else
  542. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  543. end
  544. end
  545. elseif keyframe == 1 then
  546. if timer >= 0.8 then
  547. timer = 0
  548. keyframe = 0
  549. end
  550. if not running then
  551. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-timer * 1.5) / 1.5) * CFrame.Angles(math.rad(4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(-Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X * 3), 0), speed * 1.75)
  552. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  553. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-7), 0, math.rad(-53 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  554. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-7), 0, math.rad(-53 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  555. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 + math.sin(timer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(timer * 2) / 1.5, (0.1 - math.sin(timer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  556. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 + math.sin(timer * 2) / 1.5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(timer * 2) / 1.5, (0.1 - math.sin(timer * 2) / 5) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  557. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-3)), speed * 1.2)
  558. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  559. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  560. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  561. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  562. if summoned then
  563. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  564. else
  565. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  566. end
  567. else
  568. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-timer * 1.5) / 1.15) * CFrame.Angles(math.rad(12 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(-Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X * 7), 0), speed * 1.75)
  569. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  570. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-9), 0, math.rad(-57 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  571. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-9), 0, math.rad(-57 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z)), speed * 1.75)
  572. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new((0.1 + math.sin(timer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 - math.cos(timer * 2) / 1.15, (0.1 - math.sin(timer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  573. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new((0.1 + math.sin(timer * 2) / 1.15) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z, 0.1 + math.cos(timer * 2) / 1.15, (0.1 - math.sin(timer * 2) / 4.65) * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X) * CFrame.Angles(math.rad(23 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), math.rad(-3), math.rad(43 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z + 14 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X)), speed * 1.95)
  574. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-3)), speed * 1.2)
  575. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  576. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  577. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  578. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  579. if summoned then
  580. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  581. else
  582. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  583. end
  584. end
  585. end
  586. elseif animation == 2 then
  587. if keyframe == 0 then
  588. if timer >= 0.5 then
  589. timer = 0
  590. keyframe = 1
  591. end
  592. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(3 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), 0), speed * 1.75)
  593. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-5 + -4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  594. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-11), math.rad(4), 0), speed * 1.75)
  595. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-11), math.rad(4), 0), speed * 1.75)
  596. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.5, 0.2, 0) * CFrame.Angles(math.rad(-1.5), 0, math.rad(-2)), speed * 2)
  597. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(0, 0, math.rad(-52)), speed * 2)
  598. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-7), 0, math.rad(-3)), speed * 1.2)
  599. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  600. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  601. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  602. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  603. if summoned then
  604. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  605. else
  606. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  607. end
  608. elseif keyframe == 1 then
  609. if timer >= 1 then
  610. keyframe = 2
  611. end
  612. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), math.rad(3 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).X), 0), speed * 1.75)
  613. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(12 + -4 * -Character.HumanoidRootPart.CFrame:vectorToObjectSpace(Humanoid.MoveDirection).Z), 0, 0), speed * 1.75)
  614. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-11), math.rad(4), 0), speed * 1.75)
  615. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-11), math.rad(4), 0), speed * 1.75)
  616. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.5, 0.2, 0) * CFrame.Angles(math.rad(-1.5), 0, math.rad(-11)), speed * 2)
  617. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(0, 0, math.rad(-59)), speed * 2)
  618. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-7), 0, math.rad(-3)), speed * 1.2)
  619. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(-3)), speed * 1.2)
  620. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-2), math.rad(-4), math.rad(5)), speed * 1.5)
  621. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 1.5)
  622. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 1.2)
  623. if summoned then
  624. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 1 + math.cos(standtimer) / 2, 3), speed * 3)
  625. else
  626. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame, speed * 5)
  627. end
  628. end
  629. elseif animation == 3 then
  630. if keyframe == 0 then
  631. if timer >= 0.75 then
  632. timer = 0
  633. keyframe = 1
  634. hit = false
  635. random2 = orig2s * CFrame.new(math.random(-55, -35) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(-10800, -9700) / 100))
  636. end
  637. effecttimer = effecttimer + 1
  638. if effecttimer % 3 == 0 then
  639. if not hit then
  640. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size)
  641. local hum
  642. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  643. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and (v.Parent:FindFirstChild("Torso") or v.Parent:FindFirstChild("UpperTorso")) then
  644. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  645. end
  646. if not hum and v.Parent and v.Parent.Name == "Stand" then
  647. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  648. end
  649. end
  650. if hum and hum.Health > 0 then
  651. hit = true
  652. local results
  653. if not healing then
  654. results = hitevent:InvokeServer(1, Stand["Right Arm"], Stand["Right Arm"].CFrame, 0.6 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  655. else
  656. results = hitevent:InvokeServer(7, Stand["Right Arm"], Stand["Right Arm"].CFrame, 1.5 * Player:WaitForChild("Special").Value * allmult, voiceline, hum, false, nil, ishamon)
  657. end
  658. if results then
  659. else
  660. hit = false
  661. end
  662. end
  663. end
  664. do
  665. local clone = Stand:WaitForChild("Right Arm"):Clone()
  666. clone.Parent = Container
  667. clone:ClearAllChildren()
  668. clone.Anchored = true
  669. clone.Transparency = 0.5
  670. local fader = coroutine.wrap(function()
  671. for i = 1, 10 do
  672. clone.Transparency = clone.Transparency + 0.05
  673. wait()
  674. end
  675. clone:Remove()
  676. end)
  677. fader()
  678. end
  679. end
  680. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  681. keepmoving = false
  682. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed)
  683. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  684. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  685. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  686. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  687. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  688. else
  689. if not keepmoving then
  690. keepmoving = true
  691. if running then
  692. movespeed = 0.04
  693. else
  694. movespeed = 0.03
  695. end
  696. if moveframe > 1 then
  697. moveframe = 0
  698. end
  699. if movetimer >= 0.8 then
  700. movetimer = 0
  701. end
  702. end
  703. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed)
  704. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  705. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  706. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  707. end
  708. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-3), 0, math.rad(-30)), speed * 2)
  709. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.new(1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(-88)), speed * 2)
  710. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  711. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  712. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  713. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-3), math.rad(40), 0), speed * 4)
  714. elseif keyframe == 1 then
  715. if timer >= 0.75 then
  716. timer = 0
  717. keyframe = 0
  718. hit = false
  719. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(8600, 9400) / 100))
  720. end
  721. effecttimer = effecttimer + 1
  722. if effecttimer % 3 == 0 then
  723. if not hit then
  724. local region = NewRegion(Stand["Left Arm"].CFrame, Stand["Left Arm"].Size)
  725. local hum
  726. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  727. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and (v.Parent:FindFirstChild("Torso") or v.Parent:FindFirstChild("UpperTorso")) then
  728. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  729. end
  730. if not hum and v.Parent and v.Parent.Name == "Stand" then
  731. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  732. end
  733. end
  734. if hum and hum.Health > 0 then
  735. hit = true
  736. local results
  737. if not healing then
  738. results = hitevent:InvokeServer(1, Stand["Left Arm"], Stand["Left Arm"].CFrame, 0.6 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  739. else
  740. results = hitevent:InvokeServer(7, Stand["Left Arm"], Stand["Left Arm"].CFrame, 1.5 * Player:WaitForChild("Special").Value * allmult, voiceline, hum, false, nil, ishamon)
  741. end
  742. if results then
  743. else
  744. hit = false
  745. end
  746. end
  747. end
  748. do
  749. local clone = Stand:WaitForChild("Left Arm"):Clone()
  750. clone.Parent = Container
  751. clone:ClearAllChildren()
  752. clone.Anchored = true
  753. clone.Transparency = 0.5
  754. local fader = coroutine.wrap(function()
  755. for i = 1, 10 do
  756. clone.Transparency = clone.Transparency + 0.05
  757. wait()
  758. end
  759. clone:Remove()
  760. end)
  761. fader()
  762. end
  763. end
  764. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  765. keepmoving = false
  766. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed)
  767. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  768. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  769. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  770. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  771. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  772. else
  773. if not keepmoving then
  774. keepmoving = true
  775. if running then
  776. movespeed = 0.04
  777. else
  778. movespeed = 0.03
  779. end
  780. if moveframe > 1 then
  781. moveframe = 0
  782. end
  783. if movetimer >= 0.8 then
  784. movetimer = 0
  785. end
  786. end
  787. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed)
  788. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  789. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  790. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  791. end
  792. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-3), 0, math.rad(30)), speed * 2)
  793. StandJoints[2].C0 = StandJoints[2].C0:lerp(random2, speed * 2)
  794. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(-1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(88)), speed * 2)
  795. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 2)
  796. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 2)
  797. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-3), math.rad(-40), 0), speed * 4)
  798. end
  799. elseif animation == 4 then
  800. if keyframe == 0 then
  801. if timer >= 0.75 then
  802. keyframe = 1
  803. timer = 0
  804. speed = 0.1 * Player:WaitForChild("Speed").Value * allmult
  805. random3 = orig3s * CFrame.new(math.random(55, 75) / 35, 0, 0) * CFrame.Angles(math.rad(math.random(-100, 500) / 50), math.rad(math.random(-3100, 2200) / 100), math.rad(math.random(12100, 14500) / 100))
  806. end
  807. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  808. keepmoving = false
  809. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  810. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  811. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  812. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  813. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  814. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  815. else
  816. if not keepmoving then
  817. keepmoving = true
  818. if running then
  819. movespeed = 0.04
  820. else
  821. movespeed = 0.03
  822. end
  823. if moveframe > 1 then
  824. moveframe = 0
  825. end
  826. if movetimer >= 0.8 then
  827. movetimer = 0
  828. end
  829. end
  830. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  831. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  832. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  833. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  834. end
  835. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(2), 0, math.rad(80)), speed * 2)
  836. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-14), math.rad(7), 0), speed * 2)
  837. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  838. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  839. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  840. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-2), math.rad(-80), 0), speed * 4)
  841. elseif keyframe == 1 then
  842. if timer >= 0.75 then
  843. timer = 0
  844. attacking = false
  845. local waiter = coroutine.wrap(function()
  846. wait(3 * cooldownmod)
  847. cooled2 = true
  848. end)
  849. waiter()
  850. animation = -1
  851. keyframe = 0
  852. miscevent:FireServer(7, Humanoid, 50)
  853. speed = 0.02
  854. end
  855. effecttimer = effecttimer + 1
  856. if effecttimer % 2 == 0 then
  857. if not hit then
  858. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size)
  859. local hum
  860. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  861. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and (v.Parent:FindFirstChild("Torso") or v.Parent:FindFirstChild("UpperTorso")) then
  862. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  863. end
  864. if not hum and v.Parent and v.Parent.Name == "Stand" then
  865. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  866. end
  867. end
  868. if hum and hum.Health > 0 then
  869. hit = true
  870. local results
  871. if not healing then
  872. results = hitevent:InvokeServer(2, Stand["Right Arm"], Stand["Right Arm"].CFrame, 9 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  873. else
  874. results = hitevent:InvokeServer(8, Stand["Right Arm"], Stand["Right Arm"].CFrame, 24 * Player:WaitForChild("Special").Value * allmult, voiceline, hum, false, nil, ishamon)
  875. end
  876. if results then
  877. else
  878. hit = false
  879. end
  880. end
  881. end
  882. do
  883. local clone = Stand:WaitForChild("Right Arm"):Clone()
  884. clone.Parent = Container
  885. clone:ClearAllChildren()
  886. clone.Anchored = true
  887. clone.Transparency = 0.5
  888. local fader = coroutine.wrap(function()
  889. for i = 1, 5 do
  890. clone.Transparency = clone.Transparency + 0.1
  891. wait()
  892. end
  893. clone:Remove()
  894. end)
  895. fader()
  896. end
  897. end
  898. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  899. keepmoving = false
  900. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  901. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  902. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  903. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  904. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  905. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  906. else
  907. if not keepmoving then
  908. keepmoving = true
  909. if running then
  910. movespeed = 0.04
  911. else
  912. movespeed = 0.03
  913. end
  914. if moveframe > 1 then
  915. moveframe = 0
  916. end
  917. if movetimer >= 0.8 then
  918. movetimer = 0
  919. end
  920. end
  921. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  922. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  923. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  924. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  925. end
  926. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-8), 0, math.rad(-57)), speed * 2)
  927. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-12), math.rad(5), 0), speed * 2)
  928. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  929. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  930. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  931. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(8), math.rad(57), 0), speed * 4)
  932. end
  933. elseif animation == 5 then
  934. if keyframe == 0 then
  935. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(-3), 0, math.rad(-13)), speed * 3)
  936. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(3), 0, math.rad(13)), speed * 3)
  937. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.new(-0.45, 0.15, 0) * CFrame.Angles(math.rad(113), 0, math.rad(-15)), speed * 3)
  938. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.new(0.45, 0.15, 0) * CFrame.Angles(math.rad(111), 0, math.rad(19)), speed * 3)
  939. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(0, 0.05, 0) * CFrame.Angles(math.rad(-4), math.rad(12), math.rad(3)), speed * 3)
  940. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.new(0, -0.05, 0) * CFrame.Angles(math.rad(-4), math.rad(-27), math.rad(-3)), speed * 3)
  941. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(3), 0, math.rad(13)), speed * 1.2)
  942. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.new(-0.45, 0.15, 0) * CFrame.Angles(math.rad(113), 0, math.rad(-15)), speed * 1.2)
  943. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(0.45, 0.15, 0) * CFrame.Angles(math.rad(111), 0, math.rad(19)), speed * 1.5)
  944. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, 0.05, 0) * CFrame.Angles(math.rad(-4), math.rad(12), math.rad(3)), speed * 1.5)
  945. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.05, 0) * CFrame.Angles(math.rad(-4), math.rad(-27), math.rad(-3)), speed * 1.2)
  946. if summoned then
  947. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 0, 3) * CFrame.Angles(0, math.rad(-13), math.rad(-3)), speed * 3)
  948. else
  949. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(-13), math.rad(-3)), speed * 5)
  950. end
  951. elseif keyframe == 1 then
  952. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-11)), speed * 3)
  953. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-12), 0, math.rad(11)), speed * 3)
  954. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(3), math.rad(13), math.rad(11)), speed * 3)
  955. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-34), math.rad(14), math.rad(162)), speed * 3)
  956. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 3)
  957. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 3)
  958. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-12), 0, math.rad(11)), speed * 1.2)
  959. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(3), math.rad(13), math.rad(11)), speed * 1.2)
  960. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-34), math.rad(14), math.rad(162)), speed * 1.5)
  961. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 1.5)
  962. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 1.2)
  963. if summoned then
  964. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(-3, 0, 3) * CFrame.Angles(0, math.rad(-11), 0), speed * 3)
  965. else
  966. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(-11), 0), speed * 5)
  967. end
  968. end
  969. elseif animation == 7 then
  970. if keyframe == 0 then
  971. if timer >= 0.75 then
  972. keyframe = 1
  973. timer = 0
  974. speed = 0.05 * Player:WaitForChild("Speed").Value * allmult
  975. miscevent:FireServer(2, woosh, math.random(110, 120) / 100)
  976. miscevent:FireServer(1, woosh, 0)
  977. random2 = orig2s * CFrame.new(math.random(15, 35) / 40, 0, 0) * CFrame.Angles(math.rad(math.random(-500, -100) / 100), math.rad(math.random(-1200, 2500) / 100), math.rad(math.random(8600, 9400) / 100))
  978. end
  979. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  980. keepmoving = false
  981. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  982. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  983. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  984. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  985. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  986. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  987. else
  988. if not keepmoving then
  989. keepmoving = true
  990. if running then
  991. movespeed = 0.04
  992. else
  993. movespeed = 0.03
  994. end
  995. if moveframe > 1 then
  996. moveframe = 0
  997. end
  998. if movetimer >= 0.8 then
  999. movetimer = 0
  1000. end
  1001. end
  1002. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1003. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1004. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1005. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1006. end
  1007. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-2), math.rad(-80), 0), speed * 2)
  1008. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(2), 0, math.rad(80)), speed * 2)
  1009. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-14), math.rad(7), 0), speed * 2)
  1010. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1011. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1012. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1013. elseif keyframe == 1 then
  1014. if timer >= 0.75 then
  1015. timer = 0
  1016. keyframe = 0
  1017. attacking = false
  1018. animation = -1
  1019. keyframe = 0
  1020. speed = 0.02
  1021. miscevent:FireServer(7, Humanoid, 50)
  1022. local waiter = coroutine.wrap(function()
  1023. wait(0.2 * cooldownmod)
  1024. cooled5 = true
  1025. end)
  1026. waiter()
  1027. end
  1028. if not hit then
  1029. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size)
  1030. local hum
  1031. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  1032. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and (v.Parent:FindFirstChild("Torso") or v.Parent:FindFirstChild("UpperTorso")) then
  1033. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  1034. end
  1035. if not hum and v.Parent and v.Parent.Name == "Stand" then
  1036. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  1037. end
  1038. end
  1039. if hum and hum.Health > 0 then
  1040. hit = true
  1041. local results
  1042. if not healing then
  1043. results = hitevent:InvokeServer(1, Stand["Right Arm"], Stand["Right Arm"].CFrame, 2 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  1044. else
  1045. results = hitevent:InvokeServer(7, Stand["Right Arm"], Stand["Right Arm"].CFrame, 4 * Player:WaitForChild("Special").Value * allmult, voiceline, hum, false, nil, ishamon)
  1046. end
  1047. if results then
  1048. else
  1049. hit = false
  1050. end
  1051. end
  1052. end
  1053. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1054. keepmoving = false
  1055. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1056. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1057. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1058. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1059. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1060. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1061. else
  1062. if not keepmoving then
  1063. keepmoving = true
  1064. if running then
  1065. movespeed = 0.04
  1066. else
  1067. movespeed = 0.03
  1068. end
  1069. if moveframe > 1 then
  1070. moveframe = 0
  1071. end
  1072. if movetimer >= 0.8 then
  1073. movetimer = 0
  1074. end
  1075. end
  1076. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1077. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1078. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1079. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1080. end
  1081. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(0, math.rad(40), 0), speed * 4)
  1082. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-30)), speed * 4)
  1083. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-12), math.rad(5), 0), speed * 2)
  1084. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1085. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1086. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1087. end
  1088. elseif animation == 8 then
  1089. if keyframe == 0 then
  1090. if timer >= 0.75 then
  1091. keyframe = 1
  1092. timer = 0
  1093. speed = 0.05 * Player:WaitForChild("Speed").Value * allmult
  1094. miscevent:FireServer(2, woosh, math.random(110, 120) / 100)
  1095. miscevent:FireServer(1, woosh, 0)
  1096. random2 = orig2s * CFrame.new(math.random(-35, -15) / 40, 0, 0) * CFrame.Angles(math.rad(math.random(-500, -100) / 100), math.rad(math.random(-1200, 2500) / 100), math.rad(math.random(-9400, -8600) / 100))
  1097. end
  1098. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1099. keepmoving = false
  1100. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1101. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1102. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1103. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1104. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1105. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1106. else
  1107. if not keepmoving then
  1108. keepmoving = true
  1109. if running then
  1110. movespeed = 0.04
  1111. else
  1112. movespeed = 0.03
  1113. end
  1114. if moveframe > 1 then
  1115. moveframe = 0
  1116. end
  1117. if movetimer >= 0.8 then
  1118. movetimer = 0
  1119. end
  1120. end
  1121. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1122. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1123. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1124. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1125. end
  1126. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-2), math.rad(80), 0), speed * 2)
  1127. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(2), 0, math.rad(-80)), speed * 2)
  1128. StandJoints[2].C0 = StandJoints[2].C0:lerp(random2, speed * 2)
  1129. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-14), math.rad(-7), 0), speed * 2)
  1130. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1131. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1132. elseif keyframe == 1 then
  1133. if timer >= 0.75 then
  1134. timer = 0
  1135. keyframe = 0
  1136. attacking = false
  1137. animation = -1
  1138. keyframe = 0
  1139. speed = 0.02
  1140. miscevent:FireServer(7, Humanoid, 50)
  1141. local waiter = coroutine.wrap(function()
  1142. wait(0.2 * cooldownmod)
  1143. cooled5 = true
  1144. end)
  1145. waiter()
  1146. end
  1147. if not hit then
  1148. local region = NewRegion(Stand["Left Arm"].CFrame, Stand["Left Arm"].Size)
  1149. local hum
  1150. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  1151. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and (v.Parent:FindFirstChild("Torso") or v.Parent:FindFirstChild("UpperTorso")) then
  1152. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  1153. end
  1154. if not hum and v.Parent and v.Parent.Name == "Stand" then
  1155. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  1156. end
  1157. end
  1158. if hum and hum.Health > 0 then
  1159. hit = true
  1160. local results
  1161. if not healing then
  1162. results = hitevent:InvokeServer(1, Stand["Left Arm"], Stand["Left Arm"].CFrame, 2 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  1163. else
  1164. results = hitevent:InvokeServer(7, Stand["Left Arm"], Stand["Left Arm"].CFrame, 4 * Player:WaitForChild("Special").Value * allmult, voiceline, hum, false, nil, ishamon)
  1165. end
  1166. if results then
  1167. else
  1168. hit = false
  1169. end
  1170. end
  1171. end
  1172. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1173. keepmoving = false
  1174. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1175. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1176. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1177. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1178. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1179. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1180. else
  1181. if not keepmoving then
  1182. keepmoving = true
  1183. if running then
  1184. movespeed = 0.04
  1185. else
  1186. movespeed = 0.03
  1187. end
  1188. if moveframe > 1 then
  1189. moveframe = 0
  1190. end
  1191. if movetimer >= 0.8 then
  1192. movetimer = 0
  1193. end
  1194. end
  1195. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1196. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1197. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1198. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1199. end
  1200. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(0, math.rad(-40), 0), speed * 4)
  1201. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(30)), speed * 4)
  1202. StandJoints[2].C0 = StandJoints[2].C0:lerp(random2, speed * 2)
  1203. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.Angles(math.rad(-12), math.rad(-5), 0), speed * 2)
  1204. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 2)
  1205. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 2)
  1206. end
  1207. elseif animation == 9 then
  1208. if keyframe == 0 then
  1209. if timer >= 1.5 then
  1210. timer = 0
  1211. keyframe = 0
  1212. attacking = false
  1213. animation = -1
  1214. keyframe = 0
  1215. speed = 0.02
  1216. miscevent:FireServer(7, Humanoid, 50)
  1217. if not washealing then
  1218. local waiter = coroutine.wrap(function()
  1219. wait(7 * cooldownmod)
  1220. cooled7 = true
  1221. end)
  1222. waiter()
  1223. else
  1224. local waiter = coroutine.wrap(function()
  1225. wait(12 * cooldownmod)
  1226. cooled7 = true
  1227. end)
  1228. waiter()
  1229. end
  1230. end
  1231. if timer >= 0.85 and not hit then
  1232. hit = true
  1233. miscevent:FireServer(2, singleora, math.random(90, 110) / 100)
  1234. miscevent:FireServer(1, singleora, 0)
  1235. if healing then
  1236. washealing = true
  1237. else
  1238. washealing = false
  1239. end
  1240. game:GetService("ReplicatedStorage").Specials.firebearshot:FireServer(Stand:FindFirstChild("Right Arm").CFrame * CFrame.new(0, -1.5, 0), 9.5 * Player:FindFirstChild("Power").Value * allmult, voiceline, ishamon, Player:WaitForChild("IsVampire").Value, healing)
  1241. end
  1242. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1243. keepmoving = false
  1244. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1245. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1246. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1247. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1248. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  1249. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  1250. else
  1251. if not keepmoving then
  1252. keepmoving = true
  1253. if running then
  1254. movespeed = 0.04
  1255. else
  1256. movespeed = 0.03
  1257. end
  1258. if moveframe > 1 then
  1259. moveframe = 0
  1260. end
  1261. if movetimer >= 0.8 then
  1262. movetimer = 0
  1263. end
  1264. end
  1265. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1266. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1267. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1268. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1269. end
  1270. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(20), 0) * CFrame.new(0, 0, -3.5), speed * 4)
  1271. if timer < 0.85 then
  1272. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, math.rad(-4), math.rad(-20)), speed * 2)
  1273. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-3), 0, 0), speed * 2)
  1274. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(0.5, 0, 0) * CFrame.Angles(math.rad(-1), math.rad(5), math.rad(88)), speed * 2)
  1275. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(7), math.rad(-2)), speed * 2)
  1276. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(7), math.rad(2)), speed * 2)
  1277. else
  1278. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(0, 0, math.rad(-20)), speed * 2)
  1279. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-3), 0, 0), speed * 2)
  1280. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(-0.5, 0, 0) * CFrame.Angles(math.rad(-1), math.rad(-5), math.rad(103)), speed * 4)
  1281. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(7), math.rad(-2)), speed * 2)
  1282. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(7), math.rad(2)), speed * 2)
  1283. end
  1284. end
  1285. elseif animation == 10 then
  1286. if keyframe == 0 then
  1287. if timer >= 1 then
  1288. keyframe = 1
  1289. timer = 0
  1290. speed = 0.1 * Player:WaitForChild("Speed").Value * allmult
  1291. random3 = orig3s * CFrame.new(math.random(55, 75) / 35, 0, 0) * CFrame.Angles(math.rad(math.random(-100, 500) / 50), math.rad(math.random(-5700, 100) / 100), math.rad(math.random(5100, 7100) / 100))
  1292. end
  1293. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1294. keepmoving = false
  1295. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1296. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1297. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1298. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1299. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1300. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1301. else
  1302. if not keepmoving then
  1303. keepmoving = true
  1304. if running then
  1305. movespeed = 0.04
  1306. else
  1307. movespeed = 0.03
  1308. end
  1309. if moveframe > 1 then
  1310. moveframe = 0
  1311. end
  1312. if movetimer >= 0.8 then
  1313. movetimer = 0
  1314. end
  1315. end
  1316. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1317. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1318. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1319. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1320. end
  1321. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(2), 0, math.rad(80)), speed * 2)
  1322. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-14), math.rad(7), 0), speed * 2)
  1323. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1324. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1325. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1326. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-2), math.rad(-80), 0), speed * 4)
  1327. elseif keyframe == 1 then
  1328. if timer >= 0.75 then
  1329. timer = 0
  1330. attacking = false
  1331. local waiter = coroutine.wrap(function()
  1332. wait(3 * cooldownmod)
  1333. cooled3 = true
  1334. end)
  1335. waiter()
  1336. animation = -1
  1337. keyframe = 0
  1338. miscevent:FireServer(7, Humanoid, 50)
  1339. speed = 0.02
  1340. end
  1341. effecttimer = effecttimer + 1
  1342. if effecttimer % 2 == 0 then
  1343. if not hit then
  1344. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size * 2.5)
  1345. local hum
  1346. local breaktarget = false
  1347. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  1348. if not breaktarget then
  1349. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and v.Parent:FindFirstChild("Torso") then
  1350. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  1351. breaktarget = v
  1352. end
  1353. if not hum and v.Parent and not v.Parent:FindFirstChildOfClass("Humanoid") and v.Anchored == true and v.CanCollide == true and v.Transparency == 0 and not v:FindFirstChild("erased") and 55 >= v.Size.magnitude then
  1354. breaktarget = v
  1355. end
  1356. end
  1357. end
  1358. if hum and hum.Health > 0 then
  1359. hit = true
  1360. end
  1361. do
  1362. local results = hitevent:InvokeServer(2, Stand["Right Arm"], Stand["Right Arm"].CFrame, 5 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  1363. end
  1364. if breaktarget then
  1365. hit = true
  1366. if hum then
  1367. game:GetService("ReplicatedStorage").Specials.cdfix:FireServer(breaktarget, 1)
  1368. else
  1369. game:GetService("ReplicatedStorage").Specials.cdfix:FireServer(breaktarget, 0)
  1370. end
  1371. end
  1372. end
  1373. do
  1374. local clone = Stand:WaitForChild("Right Arm"):Clone()
  1375. clone.Parent = Container
  1376. clone:ClearAllChildren()
  1377. clone.Anchored = true
  1378. clone.Transparency = 0.5
  1379. local fader = coroutine.wrap(function()
  1380. for i = 1, 5 do
  1381. clone.Transparency = clone.Transparency + 0.1
  1382. wait()
  1383. end
  1384. clone:Remove()
  1385. end)
  1386. fader()
  1387. end
  1388. end
  1389. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1390. keepmoving = false
  1391. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1392. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1393. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1394. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1395. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1396. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1397. else
  1398. if not keepmoving then
  1399. keepmoving = true
  1400. if running then
  1401. movespeed = 0.04
  1402. else
  1403. movespeed = 0.03
  1404. end
  1405. if moveframe > 1 then
  1406. moveframe = 0
  1407. end
  1408. if movetimer >= 0.8 then
  1409. movetimer = 0
  1410. end
  1411. end
  1412. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1413. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1414. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1415. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1416. end
  1417. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(7), 0, math.rad(-57)), speed * 2)
  1418. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(7), math.rad(5), 0), speed * 2)
  1419. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1420. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1421. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1422. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -4) * CFrame.Angles(math.rad(8), math.rad(57), 0), speed * 4)
  1423. end
  1424. elseif animation == 12 then
  1425. if keyframe == 0 then
  1426. if timer >= 1 then
  1427. keyframe = 1
  1428. timer = 0
  1429. speed = 0.1 * Player:WaitForChild("Speed").Value * allmult
  1430. random3 = orig3s * CFrame.new(math.random(55, 75) / 35, 0, 0) * CFrame.Angles(math.rad(math.random(-100, 500) / 50), math.rad(math.random(-5700, 100) / 100), math.rad(math.random(5100, 7100) / 100))
  1431. end
  1432. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1433. keepmoving = false
  1434. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1435. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1436. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1437. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1438. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1439. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1440. else
  1441. if not keepmoving then
  1442. keepmoving = true
  1443. if running then
  1444. movespeed = 0.04
  1445. else
  1446. movespeed = 0.03
  1447. end
  1448. if moveframe > 1 then
  1449. moveframe = 0
  1450. end
  1451. if movetimer >= 0.8 then
  1452. movetimer = 0
  1453. end
  1454. end
  1455. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1456. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1457. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1458. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1459. end
  1460. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(2), 0, math.rad(80)), speed * 2)
  1461. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(-14), math.rad(7), 0), speed * 2)
  1462. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1463. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1464. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1465. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -3.5) * CFrame.Angles(math.rad(-2), math.rad(-80), 0), speed * 4)
  1466. elseif keyframe == 1 then
  1467. if timer >= 0.75 then
  1468. timer = 0
  1469. attacking = false
  1470. local waiter = coroutine.wrap(function()
  1471. wait(15 * cooldownmod)
  1472. cooled9 = true
  1473. end)
  1474. waiter()
  1475. animation = -1
  1476. keyframe = 0
  1477. miscevent:FireServer(7, Humanoid, 50)
  1478. speed = 0.02
  1479. end
  1480. effecttimer = effecttimer + 1
  1481. if effecttimer % 2 == 0 then
  1482. if not hit then
  1483. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size * 2.5)
  1484. local breaktarget = false
  1485. for _, v in pairs(CastRegion(Character, math.huge, region)) do
  1486. if not breaktarget and v.Parent and not v.Parent:FindFirstChildOfClass("Humanoid") and v.Anchored == true and v.CanCollide == true and v.Transparency == 0 and not v:FindFirstChild("erased") and 35 >= v.Size.magnitude then
  1487. breaktarget = v
  1488. end
  1489. end
  1490. if breaktarget then
  1491. hit = true
  1492. game:GetService("ReplicatedStorage").Specials.cdblood:FireServer(breaktarget, Stand["Right Arm"].CFrame)
  1493. end
  1494. end
  1495. do
  1496. local clone = Stand:WaitForChild("Right Arm"):Clone()
  1497. clone.Parent = Container
  1498. clone:ClearAllChildren()
  1499. clone.Anchored = true
  1500. clone.Transparency = 0.5
  1501. local fader = coroutine.wrap(function()
  1502. for i = 1, 5 do
  1503. clone.Transparency = clone.Transparency + 0.1
  1504. wait()
  1505. end
  1506. clone:Remove()
  1507. end)
  1508. fader()
  1509. end
  1510. end
  1511. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1512. keepmoving = false
  1513. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1514. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1515. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1516. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1517. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed * 2)
  1518. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed * 2)
  1519. else
  1520. if not keepmoving then
  1521. keepmoving = true
  1522. if running then
  1523. movespeed = 0.04
  1524. else
  1525. movespeed = 0.03
  1526. end
  1527. if moveframe > 1 then
  1528. moveframe = 0
  1529. end
  1530. if movetimer >= 0.8 then
  1531. movetimer = 0
  1532. end
  1533. end
  1534. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed * 2)
  1535. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed * 2)
  1536. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed * 2)
  1537. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed * 2)
  1538. end
  1539. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(7), 0, math.rad(-57)), speed * 2)
  1540. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.Angles(math.rad(7), math.rad(5), 0), speed * 2)
  1541. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1542. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1543. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1544. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -4) * CFrame.Angles(math.rad(8), math.rad(57), 0), speed * 4)
  1545. end
  1546. end
  1547. end
  1548. end)
  1549. game:GetService("RunService").RenderStepped:connect(function()
  1550. if (workspace.timestopped.Value == false or workspace.timestopper.Value == Player.Name) and Humanoid.Health > 0 and animation == 11 then
  1551. local ray = Ray.new(Character.HumanoidRootPart.Position, Vector3.new(0, -1, 0).unit * 10)
  1552. local blah, hitpos = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(ray, {Character})
  1553. if blah and blah.CanCollide and blah.Anchored then
  1554. material = blah.Material
  1555. color = blah.Color
  1556. end
  1557. if rockframe == 0 then
  1558. wallpos = origpos * CFrame.new(0, -0.5, -5.5)
  1559. elseif rockframe == 1 then
  1560. wallpos = origpos * CFrame.new(-5, -0.5, -5.5)
  1561. elseif rockframe == 2 then
  1562. wallpos = origpos * CFrame.new(5, -0.5, -5.5)
  1563. elseif rockframe == 3 then
  1564. wallpos = origpos * CFrame.new(-10, -0.5, -5.5) * CFrame.Angles(0, math.rad(15), 0)
  1565. elseif rockframe == 4 then
  1566. wallpos = origpos * CFrame.new(10, -0.5, -5.5) * CFrame.Angles(0, math.rad(-15), 0)
  1567. elseif rockframe == 5 then
  1568. wallpos = origpos * CFrame.new(0, 4, -5.5)
  1569. elseif rockframe == 6 then
  1570. wallpos = origpos * CFrame.new(-5, 4, -5.5)
  1571. elseif rockframe == 7 then
  1572. wallpos = origpos * CFrame.new(5, 4, -5.5)
  1573. elseif rockframe == 8 then
  1574. wallpos = origpos * CFrame.new(-10, 4, -5.5) * CFrame.Angles(0, math.rad(15), 0)
  1575. elseif rockframe == 9 then
  1576. wallpos = origpos * CFrame.new(10, 4, -5.5) * CFrame.Angles(0, math.rad(-15), 0)
  1577. elseif rockframe == 10 then
  1578. wallpos = origpos * CFrame.new(0, 8, -5.5)
  1579. elseif rockframe == 11 then
  1580. wallpos = origpos * CFrame.new(-5, 8, -5.5)
  1581. elseif rockframe == 12 then
  1582. wallpos = origpos * CFrame.new(5, 8, -5.5)
  1583. elseif rockframe == 13 then
  1584. wallpos = origpos * CFrame.new(-10, 8, -5.5) * CFrame.Angles(0, math.rad(15), 0)
  1585. elseif rockframe == 14 then
  1586. wallpos = origpos * CFrame.new(10, 8, -5.5) * CFrame.Angles(0, math.rad(-15), 0)
  1587. elseif rockframe == 15 then
  1588. wallpos = origpos * CFrame.new(0, 12, -5.5) * CFrame.Angles(math.rad(15), 0, 0)
  1589. elseif rockframe == 16 then
  1590. wallpos = origpos * CFrame.new(-5, 12, -5.5) * CFrame.Angles(math.rad(15), 0, 0)
  1591. elseif rockframe == 17 then
  1592. wallpos = origpos * CFrame.new(5, 12, -5.5) * CFrame.Angles(math.rad(15), 0, 0)
  1593. elseif rockframe == 18 then
  1594. wallpos = origpos * CFrame.new(-10, 12, -5.5) * CFrame.Angles(math.rad(15), math.rad(15), 0)
  1595. elseif rockframe == 19 then
  1596. wallpos = origpos * CFrame.new(10, 12, -5.5) * CFrame.Angles(math.rad(15), math.rad(-15), 0)
  1597. elseif rockframe >= 20 then
  1598. healing = false
  1599. cooled4 = false
  1600. local waiter2 = coroutine.wrap(function()
  1601. wait(0.5)
  1602. cooled4 = true
  1603. end)
  1604. waiter2()
  1605. miscevent:FireServer(-1, {
  1606. healH,
  1607. healT,
  1608. healLA,
  1609. healRA,
  1610. healLL,
  1611. healRL
  1612. }, false)
  1613. timer = 0
  1614. attacking = false
  1615. local waiter = coroutine.wrap(function()
  1616. wait(10 * cooldownmod)
  1617. cooled8 = true
  1618. end)
  1619. waiter()
  1620. animation = -1
  1621. miscevent:FireServer(1, ora, 1)
  1622. keyframe = 0
  1623. miscevent:FireServer(7, Humanoid, 50)
  1624. speed = 0.02
  1625. end
  1626. if keyframe == 0 then
  1627. if timer >= 0.75 then
  1628. rockframe = rockframe + 1
  1629. timer = 0
  1630. keyframe = 1
  1631. hit = false
  1632. random2 = orig2s * CFrame.new(math.random(-55, -35) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(-10800, -9700) / 100))
  1633. end
  1634. effecttimer = effecttimer + 1
  1635. if effecttimer % 3 == 0 then
  1636. do
  1637. local clone = Stand:WaitForChild("Right Arm"):Clone()
  1638. clone.Parent = Container
  1639. clone:ClearAllChildren()
  1640. clone.Material = "Neon"
  1641. clone.Anchored = true
  1642. clone.Transparency = 0.5
  1643. local fader = coroutine.wrap(function()
  1644. for i = 1, 10 do
  1645. clone.Transparency = clone.Transparency + 0.05
  1646. wait()
  1647. end
  1648. clone:Remove()
  1649. end)
  1650. fader()
  1651. end
  1652. end
  1653. if timer >= 0.5 and not hit then
  1654. hit = true
  1655. game:GetService("ReplicatedStorage").Specials.buildwall:FireServer(Stand:FindFirstChild("Right Arm").CFrame * CFrame.new(0, -0.75, 0), wallpos, material, color)
  1656. end
  1657. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1658. keepmoving = false
  1659. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1660. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1661. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1662. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1663. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  1664. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  1665. else
  1666. if not keepmoving then
  1667. keepmoving = true
  1668. if running then
  1669. movespeed = 0.04
  1670. else
  1671. movespeed = 0.03
  1672. end
  1673. if moveframe > 1 then
  1674. moveframe = 0
  1675. end
  1676. if movetimer >= 0.8 then
  1677. movetimer = 0
  1678. end
  1679. end
  1680. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1681. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1682. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1683. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1684. end
  1685. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(3), 0, math.rad(-30)), speed * 2)
  1686. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.new(1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(-88)), speed * 2)
  1687. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  1688. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  1689. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  1690. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, -1, -3.5) * CFrame.Angles(math.rad(-78), math.rad(40), 0), speed * 4)
  1691. elseif keyframe == 1 then
  1692. if timer >= 0.75 then
  1693. rockframe = rockframe + 1
  1694. timer = 0
  1695. keyframe = 0
  1696. hit = false
  1697. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(8600, 9400) / 100))
  1698. end
  1699. effecttimer = effecttimer + 1
  1700. if effecttimer % 3 == 0 then
  1701. do
  1702. local clone = Stand:WaitForChild("Left Arm"):Clone()
  1703. clone.Parent = Container
  1704. clone:ClearAllChildren()
  1705. clone.Anchored = true
  1706. clone.Material = "Neon"
  1707. clone.Transparency = 0.5
  1708. local fader = coroutine.wrap(function()
  1709. for i = 1, 10 do
  1710. clone.Transparency = clone.Transparency + 0.05
  1711. wait()
  1712. end
  1713. clone:Remove()
  1714. end)
  1715. fader()
  1716. end
  1717. end
  1718. if timer >= 0.5 and not hit then
  1719. hit = true
  1720. game:GetService("ReplicatedStorage").Specials.buildwall:FireServer(Stand:FindFirstChild("Left Arm").CFrame * CFrame.new(0, -0.75, 0), wallpos, material, color)
  1721. end
  1722. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  1723. keepmoving = false
  1724. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1725. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1726. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1727. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1728. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  1729. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  1730. else
  1731. if not keepmoving then
  1732. keepmoving = true
  1733. if running then
  1734. movespeed = 0.04
  1735. else
  1736. movespeed = 0.03
  1737. end
  1738. if moveframe > 1 then
  1739. moveframe = 0
  1740. end
  1741. if movetimer >= 0.8 then
  1742. movetimer = 0
  1743. end
  1744. end
  1745. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(-33)), speed)
  1746. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(33)), speed)
  1747. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(-90)), speed)
  1748. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-37), math.rad(23), math.rad(157)), speed)
  1749. end
  1750. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(3), 0, math.rad(30)), speed * 2)
  1751. StandJoints[2].C0 = StandJoints[2].C0:lerp(random2, speed * 2)
  1752. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(-1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(88)), speed * 2)
  1753. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 2)
  1754. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 2)
  1755. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, -1, -3.5) * CFrame.Angles(math.rad(-78), math.rad(-40), 0), speed * 4)
  1756. end
  1757. end
  1758. end)
  1759. InputService.TextBoxFocused:connect(function()
  1760. intextbox = true
  1761. end)
  1762. InputService.TextBoxFocusReleased:connect(function()
  1763. intextbox = false
  1764. end)
  1765. InputService.InputBegan:connect(function(input)
  1766. if workspace.timestopped.Value == false and silenced.Value == false then
  1767. if input.UserInputType == Enum.UserInputType.Keyboard and not intextbox then
  1768. if input.KeyCode == Enum.KeyCode.E and not attacking and not charginghamon and cooled1 and Humanoid.Health > 0 then
  1769. attacking = true
  1770. if not summoned then
  1771. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1772. miscevent:FireServer(1, summonstand, 0)
  1773. for _, v in pairs(Stand:GetChildren()) do
  1774. if v:IsA("BasePart") then
  1775. local fader = coroutine.wrap(function()
  1776. for i = 1, 10 do
  1777. miscevent:FireServer(3, v, 1 - i / 10)
  1778. wait()
  1779. end
  1780. end)
  1781. fader()
  1782. end
  1783. end
  1784. summoned = true
  1785. end
  1786. cooled1 = false
  1787. animation = 3
  1788. keyframe = 0
  1789. timer = 0
  1790. currentbarrage = currentbarrage + 1
  1791. do
  1792. local lastbarrage = currentbarrage
  1793. local duration = coroutine.wrap(function()
  1794. wait(3)
  1795. if currentbarrage == lastbarrage and animation == 3 then
  1796. timer = 0
  1797. attacking = false
  1798. local waiter = coroutine.wrap(function()
  1799. wait(2 * cooldownmod)
  1800. cooled1 = true
  1801. end)
  1802. waiter()
  1803. animation = -1
  1804. miscevent:FireServer(1, ora, 1)
  1805. keyframe = 0
  1806. miscevent:FireServer(7, Humanoid, 50)
  1807. speed = 0.02
  1808. end
  1809. end)
  1810. duration()
  1811. movetimer = timer
  1812. effecttimer = 0
  1813. miscevent:FireServer(7, Humanoid, 0)
  1814. speed = 0.1 * Player:WaitForChild("Speed").Value * allmult
  1815. hit = false
  1816. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(9700, 10800) / 100))
  1817. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  1818. miscevent:FireServer(1, woosh, 0)
  1819. miscevent:FireServer(1, ora, 0)
  1820. end
  1821. elseif input.KeyCode == Enum.KeyCode.T and not attacking and not charginghamon and cooled3 and Humanoid.Health > 0 then
  1822. attacking = true
  1823. if not summoned then
  1824. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1825. miscevent:FireServer(1, summonstand, 0)
  1826. for _, v in pairs(Stand:GetChildren()) do
  1827. if v:IsA("BasePart") then
  1828. local fader = coroutine.wrap(function()
  1829. for i = 1, 10 do
  1830. miscevent:FireServer(3, v, 1 - i / 10)
  1831. wait()
  1832. end
  1833. end)
  1834. fader()
  1835. end
  1836. end
  1837. summoned = true
  1838. end
  1839. cooled3 = false
  1840. animation = 10
  1841. keyframe = 0
  1842. timer = 0
  1843. movetimer = timer
  1844. effecttimer = 0
  1845. miscevent:FireServer(7, Humanoid, 0)
  1846. random3 = orig3s * CFrame.new(-math.random(15, 20) / 40, 0, 0) * CFrame.Angles(-math.rad(math.random(-800, 200) / 100), math.rad(math.random(-5100, 1200) / 100), math.rad(math.random(8600, 9400) / 100))
  1847. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  1848. hit = false
  1849. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  1850. miscevent:FireServer(1, woosh, 0)
  1851. miscevent:FireServer(1, singleora, 0)
  1852. elseif input.KeyCode == Enum.KeyCode.H and not attacking and not charginghamon and cooled9 and Humanoid.Health > 0 and 3 <= Player:WaitForChild("StandLevel").Value then
  1853. attacking = true
  1854. if not summoned then
  1855. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1856. miscevent:FireServer(1, summonstand, 0)
  1857. for _, v in pairs(Stand:GetChildren()) do
  1858. if v:IsA("BasePart") then
  1859. local fader = coroutine.wrap(function()
  1860. for i = 1, 10 do
  1861. miscevent:FireServer(3, v, 1 - i / 10)
  1862. wait()
  1863. end
  1864. end)
  1865. fader()
  1866. end
  1867. end
  1868. summoned = true
  1869. end
  1870. cooled9 = false
  1871. animation = 12
  1872. keyframe = 0
  1873. timer = 0
  1874. movetimer = timer
  1875. effecttimer = 0
  1876. miscevent:FireServer(7, Humanoid, 0)
  1877. random3 = orig3s * CFrame.new(-math.random(15, 20) / 40, 0, 0) * CFrame.Angles(-math.rad(math.random(-800, 200) / 100), math.rad(math.random(-5100, 1200) / 100), math.rad(math.random(8600, 9400) / 100))
  1878. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  1879. hit = false
  1880. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  1881. miscevent:FireServer(1, woosh, 0)
  1882. miscevent:FireServer(1, singleora, 0)
  1883. elseif input.KeyCode == Enum.KeyCode.F and not attacking and not charginghamon and cooled8 and Humanoid.Health > 0 and 2 <= Player:WaitForChild("StandLevel").Value then
  1884. local ray = Ray.new(Character.HumanoidRootPart.Position, Vector3.new(0, -1, 0).unit * 10)
  1885. local blah, hitpos = game:GetService("Workspace"):FindPartOnRayWithIgnoreList(ray, {Character})
  1886. if blah and blah.CanCollide and blah.Anchored then
  1887. material = blah.Material
  1888. color = blah.Color
  1889. attacking = true
  1890. if not summoned then
  1891. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1892. miscevent:FireServer(1, summonstand, 0)
  1893. for _, v in pairs(Stand:GetChildren()) do
  1894. if v:IsA("BasePart") then
  1895. local fader = coroutine.wrap(function()
  1896. for i = 1, 10 do
  1897. miscevent:FireServer(3, v, 1 - i / 10)
  1898. wait()
  1899. end
  1900. end)
  1901. fader()
  1902. end
  1903. end
  1904. summoned = true
  1905. end
  1906. if not healing then
  1907. miscevent:FireServer(-1, {
  1908. healH,
  1909. healT,
  1910. healLA,
  1911. healRA,
  1912. healLL,
  1913. healRL
  1914. }, true)
  1915. healing = true
  1916. miscevent:FireServer(1, specialsound, 0)
  1917. end
  1918. cooled8 = false
  1919. animation = 11
  1920. origpos = Character:FindFirstChild("HumanoidRootPart").CFrame
  1921. rockframe = 0
  1922. keyframe = 0
  1923. timer = 0
  1924. currentbarrage = currentbarrage + 1
  1925. movetimer = timer
  1926. effecttimer = 0
  1927. miscevent:FireServer(7, Humanoid, 0)
  1928. speed = 0.095 * Player:WaitForChild("Speed").Value * allmult
  1929. hit = false
  1930. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(9700, 10800) / 100))
  1931. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  1932. miscevent:FireServer(1, woosh, 0)
  1933. miscevent:FireServer(1, ora, 0)
  1934. end
  1935. elseif input.KeyCode == Enum.KeyCode.R and not attacking and not charginghamon and cooled2 and Humanoid.Health > 0 then
  1936. attacking = true
  1937. if not summoned then
  1938. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1939. miscevent:FireServer(1, summonstand, 0)
  1940. for _, v in pairs(Stand:GetChildren()) do
  1941. if v:IsA("BasePart") then
  1942. local fader = coroutine.wrap(function()
  1943. for i = 1, 10 do
  1944. miscevent:FireServer(3, v, 1 - i / 10)
  1945. wait()
  1946. end
  1947. end)
  1948. fader()
  1949. end
  1950. end
  1951. summoned = true
  1952. end
  1953. cooled2 = false
  1954. animation = 4
  1955. keyframe = 0
  1956. timer = 0
  1957. movetimer = timer
  1958. effecttimer = 0
  1959. miscevent:FireServer(7, Humanoid, 0)
  1960. random3 = orig3s * CFrame.new(-math.random(15, 20) / 40, 0, 0) * CFrame.Angles(-math.rad(math.random(-800, 200) / 100), math.rad(math.random(-5100, 1200) / 100), math.rad(math.random(8600, 9400) / 100))
  1961. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  1962. hit = false
  1963. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  1964. miscevent:FireServer(1, woosh, 0)
  1965. miscevent:FireServer(1, singleora, 0)
  1966. elseif input.KeyCode == Enum.KeyCode.R and animation == 3 and not charginghamon and cooled2 and Humanoid.Health > 0 then
  1967. cooled2 = false
  1968. animation = 4
  1969. keyframe = 0
  1970. effecttimer = 0
  1971. miscevent:FireServer(7, Humanoid, 0)
  1972. movetimer = timer
  1973. timer = 0
  1974. random3 = orig3s * CFrame.new(-math.random(15, 20) / 40, 0, 0) * CFrame.Angles(-math.rad(math.random(-800, 200) / 100), math.rad(math.random(-5100, 1200) / 100), math.rad(math.random(8600, 9400) / 100))
  1975. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  1976. hit = false
  1977. miscevent:FireServer(1, ora, 1)
  1978. local waiter = coroutine.wrap(function()
  1979. wait(2 * cooldownmod)
  1980. cooled1 = true
  1981. end)
  1982. waiter()
  1983. miscevent:FireServer(1, singleora, 0)
  1984. elseif input.KeyCode == Enum.KeyCode.C and not attacking and not charginghamon and cooled4 and Player:FindFirstChild("IsVampire").Value == false and Humanoid.Health > 0 then
  1985. if not healing then
  1986. if not summoned then
  1987. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  1988. miscevent:FireServer(1, summonstand, 0)
  1989. for _, v in pairs(Stand:GetChildren()) do
  1990. if v:IsA("BasePart") then
  1991. local fader = coroutine.wrap(function()
  1992. for i = 1, 10 do
  1993. miscevent:FireServer(3, v, 1 - i / 10)
  1994. wait()
  1995. end
  1996. end)
  1997. fader()
  1998. end
  1999. end
  2000. summoned = true
  2001. end
  2002. miscevent:FireServer(-1, {
  2003. healH,
  2004. healT,
  2005. healLA,
  2006. healRA,
  2007. healLL,
  2008. healRL
  2009. }, true)
  2010. healing = true
  2011. miscevent:FireServer(1, specialsound, 0)
  2012. end
  2013. elseif input.KeyCode == Enum.KeyCode.Y and not attacking and not charginghamon and cooled7 and Humanoid.Health > 0 and 1 <= Player:WaitForChild("StandLevel").Value then
  2014. attacking = true
  2015. if not summoned then
  2016. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  2017. miscevent:FireServer(1, summonstand, 0)
  2018. for _, v in pairs(Stand:GetChildren()) do
  2019. if v:IsA("BasePart") then
  2020. local fader = coroutine.wrap(function()
  2021. for i = 1, 10 do
  2022. miscevent:FireServer(3, v, 1 - i / 10)
  2023. wait()
  2024. end
  2025. end)
  2026. fader()
  2027. end
  2028. end
  2029. summoned = true
  2030. end
  2031. cooled7 = false
  2032. animation = 9
  2033. keyframe = 0
  2034. timer = 0
  2035. miscevent:FireServer(7, Humanoid, 0)
  2036. effecttimer = 0
  2037. movetimer = timer
  2038. speed = 0.05 * Player:WaitForChild("Speed").Value * allmult
  2039. hit = false
  2040. elseif input.KeyCode == Enum.KeyCode.Z and not attacking and not charginghamon and cooledz and Humanoid.Health > 0 and 100 <= Player:WaitForChild("Power").Value then
  2041. cooledz = false
  2042. if not summoned then
  2043. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  2044. miscevent:FireServer(1, summonstand, 0)
  2045. for _, v in pairs(Stand:GetChildren()) do
  2046. if v:IsA("BasePart") then
  2047. local fader = coroutine.wrap(function()
  2048. for i = 1, 10 do
  2049. miscevent:FireServer(3, v, 1 - i / 10)
  2050. wait()
  2051. end
  2052. end)
  2053. fader()
  2054. end
  2055. end
  2056. summoned = true
  2057. end
  2058. local lookvector = Character.HumanoidRootPart.CFrame.lookVector
  2059. local jumppower = Player:WaitForChild("Power").Value
  2060. if jumppower > 200 then
  2061. jumppower = 200
  2062. end
  2063. miscevent:FireServer(16, Character.HumanoidRootPart, Vector3.new(lookvector.X * (30 + jumppower / 2), 50 + jumppower / 2, lookvector.Z * (30 + jumppower / 2)))
  2064. local waiter = coroutine.wrap(function()
  2065. wait(8 * cooldownmod)
  2066. cooledz = true
  2067. end)
  2068. waiter()
  2069. elseif input.KeyCode == Enum.KeyCode.Q and not charginghamon and (not attacking or animation == 5) and Humanoid.Health > 0 then
  2070. if not summoned and Stand.Torso.Transparency == 1 then
  2071. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  2072. miscevent:FireServer(1, summonstand, 0)
  2073. for _, v in pairs(Stand:GetChildren()) do
  2074. if v:IsA("BasePart") then
  2075. local fader = coroutine.wrap(function()
  2076. for i = 1, 10 do
  2077. miscevent:FireServer(3, v, 1 - i / 10)
  2078. wait()
  2079. end
  2080. end)
  2081. fader()
  2082. end
  2083. end
  2084. summoned = true
  2085. elseif summoned and Stand.Torso.Transparency == 0 then
  2086. for _, v in pairs(Stand:GetChildren()) do
  2087. if v:IsA("BasePart") then
  2088. local fader = coroutine.wrap(function()
  2089. for i = 1, 10 do
  2090. miscevent:FireServer(3, v, i / 10)
  2091. wait()
  2092. end
  2093. end)
  2094. fader()
  2095. end
  2096. end
  2097. if healing then
  2098. healing = false
  2099. cooled4 = false
  2100. local waiter = coroutine.wrap(function()
  2101. wait(0.5 * cooldownmod)
  2102. cooled4 = true
  2103. end)
  2104. waiter()
  2105. miscevent:FireServer(-1, {
  2106. healH,
  2107. healT,
  2108. healLA,
  2109. healRA,
  2110. healLL,
  2111. healRL
  2112. }, false)
  2113. end
  2114. summoned = false
  2115. end
  2116. elseif input.KeyCode == Enum.KeyCode.G and not attacking and Humanoid.Health > 0 then
  2117. attacking = true
  2118. timer = 0
  2119. speed = 0.04
  2120. miscevent:FireServer(0, menacing, true)
  2121. miscevent:FireServer(5, Humanoid, 0)
  2122. miscevent:FireServer(7, Humanoid, 0)
  2123. animation = 5
  2124. keyframe = math.random(0, 1)
  2125. elseif input.KeyCode == Enum.KeyCode.G and animation == 5 and Humanoid.Health > 0 then
  2126. animation = -1
  2127. keyframe = 0
  2128. attacking = false
  2129. miscevent:FireServer(0, menacing, false)
  2130. if running then
  2131. miscevent:FireServer(5, Humanoid, 20)
  2132. else
  2133. miscevent:FireServer(5, Humanoid, 16)
  2134. end
  2135. miscevent:FireServer(7, Humanoid, 50)
  2136. elseif input.KeyCode == Enum.KeyCode.X and not attacking and Humanoid.Health > 0 and not charginghamon and hamonpower == 0 and cooled6 and Player:WaitForChild("IsHamon").Value == true then
  2137. if not summoned then
  2138. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  2139. miscevent:FireServer(1, summonstand, 0)
  2140. for _, v in pairs(Stand:GetChildren()) do
  2141. if v:IsA("BasePart") then
  2142. local fader = coroutine.wrap(function()
  2143. for i = 1, 10 do
  2144. miscevent:FireServer(3, v, 1 - i / 10)
  2145. wait()
  2146. end
  2147. end)
  2148. fader()
  2149. end
  2150. end
  2151. summoned = true
  2152. end
  2153. charginghamon = true
  2154. ishamon = true
  2155. cooled6 = false
  2156. miscevent:FireServer(0, light, true)
  2157. miscevent:FireServer(0, glow, true)
  2158. local waiter = coroutine.wrap(function()
  2159. wait(15 * cooldownmod)
  2160. cooled6 = true
  2161. end)
  2162. waiter()
  2163. elseif input.KeyCode == Enum.KeyCode.LeftControl and not attacking and Humanoid.Health > 0 then
  2164. if running then
  2165. running = false
  2166. miscevent:FireServer(5, Humanoid, 16)
  2167. if animation == 1 then
  2168. speed = 0.03
  2169. end
  2170. else
  2171. running = true
  2172. miscevent:FireServer(5, Humanoid, 20)
  2173. if animation == 1 then
  2174. speed = 0.04
  2175. end
  2176. end
  2177. end
  2178. elseif input.UserInputType == Enum.UserInputType.MouseButton1 and not intextbox and PlayerGui:WaitForChild("statUI"):FindFirstChild("background").Position ~= UDim2.new(0.7, 0, 0.06, 0) and cooled5 and not attacking and not charginghamon and Humanoid.Health > 0 then
  2179. if not summoned then
  2180. miscevent:FireServer(2, summonstand, math.random(90, 110) / 100)
  2181. miscevent:FireServer(1, summonstand, 0)
  2182. for _, v in pairs(Stand:GetChildren()) do
  2183. if v:IsA("BasePart") then
  2184. local fader = coroutine.wrap(function()
  2185. for i = 1, 10 do
  2186. miscevent:FireServer(3, v, 1 - i / 10)
  2187. wait()
  2188. end
  2189. end)
  2190. fader()
  2191. end
  2192. end
  2193. summoned = true
  2194. end
  2195. local either = math.random(0, 1)
  2196. if either == 0 then
  2197. attacking = true
  2198. cooled5 = false
  2199. animation = 7
  2200. keyframe = 0
  2201. timer = 0
  2202. miscevent:FireServer(7, Humanoid, 0)
  2203. effecttimer = 0
  2204. movetimer = timer
  2205. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  2206. hit = false
  2207. random3 = orig3s * CFrame.new(math.random(15, 35) / 70, 0, 0) * CFrame.Angles(math.rad(math.random(-500, -100) / 100), math.rad(math.random(-3100, 1200) / 100), math.rad(math.random(8600, 9400) / 100))
  2208. elseif either == 1 then
  2209. attacking = true
  2210. cooled5 = false
  2211. animation = 8
  2212. keyframe = 0
  2213. timer = 0
  2214. miscevent:FireServer(7, Humanoid, 0)
  2215. effecttimer = 0
  2216. movetimer = timer
  2217. speed = 0.025 * Player:WaitForChild("Speed").Value * allmult
  2218. hit = false
  2219. random2 = orig2s * CFrame.new(math.random(-35, -15) / 70, 0, 0) * CFrame.Angles(math.rad(math.random(-500, -100) / 100), math.rad(math.random(1200, 3100) / 100), math.rad(math.random(-9400, -8600) / 100))
  2220. end
  2221. end
  2222. end
  2223. end)
  2224. InputService.InputEnded:connect(function(input)
  2225. if input.UserInputType == Enum.UserInputType.Keyboard then
  2226. if input.KeyCode == Enum.KeyCode.C and healing and animation ~= 11 then
  2227. healing = false
  2228. cooled4 = false
  2229. local waiter = coroutine.wrap(function()
  2230. wait(0.5 * cooldownmod)
  2231. cooled4 = true
  2232. end)
  2233. waiter()
  2234. miscevent:FireServer(-1, {
  2235. healH,
  2236. healT,
  2237. healLA,
  2238. healRA,
  2239. healLL,
  2240. healRL
  2241. }, false)
  2242. elseif input.KeyCode == Enum.KeyCode.E and animation == 3 then
  2243. timer = 0
  2244. attacking = false
  2245. local waiter = coroutine.wrap(function()
  2246. wait(2 * cooldownmod)
  2247. cooled1 = true
  2248. end)
  2249. waiter()
  2250. miscevent:FireServer(1, ora, 1)
  2251. animation = -1
  2252. keyframe = 0
  2253. miscevent:FireServer(7, Humanoid, 50)
  2254. speed = 0.02
  2255. elseif input.KeyCode == Enum.KeyCode.F and animation == 11 then
  2256. healing = false
  2257. cooled4 = false
  2258. local waiter2 = coroutine.wrap(function()
  2259. wait(0.5 * cooldownmod)
  2260. cooled4 = true
  2261. end)
  2262. waiter2()
  2263. miscevent:FireServer(-1, {
  2264. healH,
  2265. healT,
  2266. healLA,
  2267. healRA,
  2268. healLL,
  2269. healRL
  2270. }, false)
  2271. timer = 0
  2272. attacking = false
  2273. local waiter = coroutine.wrap(function()
  2274. wait(7 * cooldownmod)
  2275. cooled8 = true
  2276. end)
  2277. waiter()
  2278. miscevent:FireServer(1, ora, 1)
  2279. animation = -1
  2280. keyframe = 0
  2281. miscevent:FireServer(7, Humanoid, 50)
  2282. speed = 0.02
  2283. elseif input.KeyCode == Enum.KeyCode.X and not attacking and 0 < Humanoid.Health and charginghamon then
  2284. charginghamon = false
  2285. end
  2286. end
  2287. end)
  2288. Humanoid.Died:connect(function()
  2289. if summoned then
  2290. for _, v in pairs(Stand:GetChildren()) do
  2291. if v:IsA("BasePart") then
  2292. local fader = coroutine.wrap(function()
  2293. for i = 1, 10 do
  2294. miscevent:FireServer(3, v, i / 10)
  2295. wait()
  2296. end
  2297. end)
  2298. fader()
  2299. end
  2300. end
  2301. end
  2302. end)
  2303. workspace.timestopped.Changed:connect(function(value)
  2304. wait()
  2305. if workspace.timestopper.Value ~= Player.Name then
  2306. if value == true then
  2307. Character.Torso.Anchored = true
  2308. if woosh.IsPlaying then
  2309. miscevent:FireServer(1, woosh, 2)
  2310. end
  2311. if ora.IsPlaying then
  2312. miscevent:FireServer(1, ora, 2)
  2313. end
  2314. if singleora.IsPlaying then
  2315. miscevent:FireServer(1, singleora, 2)
  2316. end
  2317. if voiceline.IsPlaying then
  2318. miscevent:FireServer(1, voiceline, 2)
  2319. end
  2320. elseif value == false then
  2321. Character.Torso.Anchored = false
  2322. if woosh.IsPaused and woosh.TimePosition > 0 then
  2323. miscevent:FireServer(1, woosh, 3)
  2324. end
  2325. if ora.IsPaused and ora.TimePosition > 0 then
  2326. miscevent:FireServer(1, ora, 3)
  2327. end
  2328. if singleora.IsPaused and singleora.TimePosition > 0 then
  2329. miscevent:FireServer(1, singleora, 3)
  2330. end
  2331. if voiceline.IsPaused and voiceline.TimePosition > 0 then
  2332. miscevent:FireServer(1, voiceline, 3)
  2333. end
  2334. end
  2335. end
  2336. end)
  2337. Player:WaitForChild("Endurance").Changed:connect(function(value)
  2338. miscevent:FireServer(8, Humanoid, 50 * value * allmult)
  2339. end)
  2340. local cooledoof = true
  2341. local prevhealth = Humanoid.Health
  2342. Humanoid.HealthChanged:connect(function(value)
  2343. if value < prevhealth and cooledoof then
  2344. cooledoof = false
  2345. prevhealth = value
  2346. local random = math.random(0, 1)
  2347. if random == 0 then
  2348. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(22), 0, math.rad(-8)), 0.5)
  2349. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(5), math.rad(-2), math.rad(5)), 0.5)
  2350. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(22), math.rad(5), math.rad(-32)), 0.5)
  2351. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(21), math.rad(5), math.rad(33)), 0.5)
  2352. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.Angles(math.rad(-2), math.rad(2), math.rad(22)), 0.5)
  2353. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-2), math.rad(-2), math.rad(-22)), 0.5)
  2354. elseif random == 1 then
  2355. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(math.rad(-22), 0, math.rad(8)), 0.5)
  2356. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-5), math.rad(2), math.rad(-5)), 0.5)
  2357. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(-22), math.rad(-5), math.rad(32)), 0.5)
  2358. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(-21), math.rad(-5), math.rad(-33)), 0.5)
  2359. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.Angles(math.rad(2), math.rad(-2), math.rad(-22)), 0.5)
  2360. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(2), math.rad(2), math.rad(22)), 0.5)
  2361. end
  2362. wait(0.2)
  2363. cooledoof = true
  2364. end
  2365. end)
  2366. workspace.timeaccelerated.Changed:connect(function(value)
  2367. wait()
  2368. if workspace.timeaccelerator.Value ~= Player.Name then
  2369. if value == true then
  2370. accelmult = 0.3
  2371. repeat
  2372. miscevent:FireServer(5, Humanoid, 5)
  2373. miscevent:FireServer(7, Humanoid, 0)
  2374. wait()
  2375. until workspace.timeaccelerated.Value == false
  2376. elseif value == false then
  2377. accelmult = 1
  2378. if animation ~= 5 then
  2379. miscevent:FireServer(5, Humanoid, 16)
  2380. miscevent:FireServer(7, Humanoid, 50)
  2381. end
  2382. end
  2383. end
  2384. end)
  2385. Character:WaitForChild("weakened").Changed:connect(function(value)
  2386. if value == true then
  2387. allmult = 0.5
  2388. elseif value == false then
  2389. if Player:WaitForChild("Requiem").Value == true then
  2390. allmult = 1.25
  2391. else
  2392. allmult = 1
  2393. end
  2394. end
  2395. end)
  2396. game:GetService("RunService").RenderStepped:connect(function()
  2397. if (workspace.timestopped.Value == false or workspace.timestopper.Value == Player.Name) and Humanoid.Health > 0 and animation == 1337 then
  2398. if keyframe == 0 then
  2399. if timer >= 0.75 then
  2400. timer = 0
  2401. keyframe = 1
  2402. hit = false
  2403. random2 = orig2s * CFrame.new(math.random(-55, -35) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(-10800, -9700) / 100))
  2404. end
  2405. effecttimer = effecttimer + 1
  2406. if effecttimer % 3 == 0 then
  2407. if not hit then
  2408. local region = NewRegion(Stand["Right Arm"].CFrame, Stand["Right Arm"].Size)
  2409. local hum, ignore
  2410. for _, v in pairs(CastRegion(ignore, math.huge, region)) do
  2411. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and v.Parent:FindFirstChild("Torso") then
  2412. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  2413. end
  2414. if not hum and v.Parent and v.Parent.Name == "Stand" then
  2415. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  2416. end
  2417. end
  2418. if hum and hum.Health > 0 then
  2419. hit = true
  2420. local results = hitevent:InvokeServer(0, Stand["Right Arm"], Stand["Right Arm"].CFrame, 0.55 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  2421. if not results then
  2422. hit = false
  2423. end
  2424. end
  2425. end
  2426. do
  2427. local clone = Stand:WaitForChild("Right Arm"):Clone()
  2428. clone.Parent = Container
  2429. clone:ClearAllChildren()
  2430. clone.Anchored = true
  2431. clone.Transparency = 0.5
  2432. local fader = coroutine.wrap(function()
  2433. for i = 1, 10 do
  2434. clone.Transparency = clone.Transparency + 0.05
  2435. wait()
  2436. end
  2437. clone:Remove()
  2438. end)
  2439. fader()
  2440. end
  2441. end
  2442. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  2443. keepmoving = false
  2444. Joints[1].C0 = Joints[1].C0:lerp(orig1, speed)
  2445. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(15), 0, 0), speed)
  2446. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(4), math.rad(73), math.rad(-155)), speed)
  2447. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(4), math.rad(-73), math.rad(155)), speed)
  2448. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.Angles(math.rad(-2), 0, math.rad(-2)), speed)
  2449. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-2), 0, math.rad(2)), speed)
  2450. else
  2451. if not keepmoving then
  2452. keepmoving = true
  2453. if running then
  2454. movespeed = 0.04
  2455. else
  2456. movespeed = 0.03
  2457. end
  2458. if moveframe > 1 then
  2459. moveframe = 0
  2460. end
  2461. if movetimer >= 0.8 then
  2462. movetimer = 0
  2463. end
  2464. end
  2465. Joints[1].C0 = Joints[1].C0:lerp(orig1, speed)
  2466. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(15), 0, 0), speed)
  2467. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(4), math.rad(73), math.rad(-155)), speed)
  2468. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(4), math.rad(-73), math.rad(155)), speed)
  2469. end
  2470. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-3), 0, math.rad(-30)), speed * 2)
  2471. StandJoints[2].C0 = StandJoints[2].C0:lerp(orig2s * CFrame.new(1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(-88)), speed * 2)
  2472. StandJoints[3].C0 = StandJoints[3].C0:lerp(random3, speed * 2)
  2473. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-8), math.rad(7), math.rad(-4)), speed * 2)
  2474. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.07, 0) * CFrame.Angles(math.rad(-3), math.rad(3), math.rad(3)), speed * 2)
  2475. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -1.5) * CFrame.Angles(math.rad(-3), math.rad(220), 0), speed * 4)
  2476. elseif keyframe == 1 then
  2477. if timer >= 0.75 then
  2478. timer = 0
  2479. keyframe = 0
  2480. hit = false
  2481. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(8600, 9400) / 100))
  2482. end
  2483. effecttimer = effecttimer + 1
  2484. if effecttimer % 3 == 0 then
  2485. if not hit then
  2486. local region = NewRegion(Stand["Left Arm"].CFrame, Stand["Left Arm"].Size)
  2487. local hum, ignore
  2488. for _, v in pairs(CastRegion(ignore, math.huge, region)) do
  2489. if not hum and v.Parent and v.Parent:FindFirstChildOfClass("Humanoid") and v.Parent:FindFirstChild("Torso") then
  2490. hum = v.Parent:FindFirstChildOfClass("Humanoid")
  2491. end
  2492. if not hum and v.Parent and v.Parent.Name == "Stand" then
  2493. hum = v.Parent.Parent.Parent.Parent:FindFirstChildOfClass("Humanoid")
  2494. end
  2495. end
  2496. if hum and hum.Health > 0 then
  2497. hit = true
  2498. local results = hitevent:InvokeServer(0, Stand["Left Arm"], Stand["Left Arm"].CFrame, 0.55 * Player:WaitForChild("Power").Value * allmult, voiceline, hum, false, nil, ishamon, Player:WaitForChild("IsVampire").Value)
  2499. if not results then
  2500. hit = false
  2501. end
  2502. end
  2503. end
  2504. do
  2505. local clone = Stand:WaitForChild("Left Arm"):Clone()
  2506. clone.Parent = Container
  2507. clone:ClearAllChildren()
  2508. clone.Anchored = true
  2509. clone.Transparency = 0.5
  2510. local fader = coroutine.wrap(function()
  2511. for i = 1, 10 do
  2512. clone.Transparency = clone.Transparency + 0.05
  2513. wait()
  2514. end
  2515. clone:Remove()
  2516. end)
  2517. fader()
  2518. end
  2519. end
  2520. if Humanoid.MoveDirection == Vector3.new(0, 0, 0) then
  2521. keepmoving = false
  2522. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.Angles(0, 0, math.rad(33)), speed)
  2523. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(-33)), speed)
  2524. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(23)), speed)
  2525. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(9), math.rad(-23), math.rad(90)), speed)
  2526. Joints[5].C0 = Joints[5].C0:lerp(orig5 * CFrame.new(-0.23, 0, 0) * CFrame.Angles(math.rad(-4), math.rad(22), math.rad(-9)), speed)
  2527. Joints[6].C0 = Joints[6].C0:lerp(orig6 * CFrame.Angles(math.rad(-4), math.rad(-22), math.rad(7)), speed)
  2528. else
  2529. if not keepmoving then
  2530. keepmoving = true
  2531. if running then
  2532. movespeed = 0.04
  2533. else
  2534. movespeed = 0.03
  2535. end
  2536. if moveframe > 1 then
  2537. moveframe = 0
  2538. end
  2539. if movetimer >= 0.8 then
  2540. movetimer = 0
  2541. end
  2542. end
  2543. Joints[1].C0 = Joints[1].C0:lerp(orig1 * CFrame.new(0, 0, 0.4 - math.cos(-movetimer * 1.5) / 1.5) * CFrame.Angles(0, 0, math.rad(33)), speed)
  2544. Joints[2].C0 = Joints[2].C0:lerp(orig2 * CFrame.Angles(math.rad(-3), 0, math.rad(-33)), speed)
  2545. Joints[3].C0 = Joints[3].C0:lerp(orig3 * CFrame.Angles(math.rad(9), math.rad(23), math.rad(23)), speed)
  2546. Joints[4].C0 = Joints[4].C0:lerp(orig4 * CFrame.Angles(math.rad(9), math.rad(-23), math.rad(90)), speed)
  2547. end
  2548. StandJoints[1].C0 = StandJoints[1].C0:lerp(orig1s * CFrame.Angles(math.rad(-3), 0, math.rad(30)), speed * 2)
  2549. StandJoints[2].C0 = StandJoints[2].C0:lerp(random2, speed * 2)
  2550. StandJoints[3].C0 = StandJoints[3].C0:lerp(orig3s * CFrame.new(-1.15, 0, 0) * CFrame.Angles(math.rad(17), math.rad(-5), math.rad(88)), speed * 2)
  2551. StandJoints[4].C0 = StandJoints[4].C0:lerp(orig4s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-7), math.rad(12), math.rad(-3)), speed * 2)
  2552. StandJoints[5].C0 = StandJoints[5].C0:lerp(orig5s * CFrame.new(0, -0.09, 0) * CFrame.Angles(math.rad(-5), math.rad(8), math.rad(4)), speed * 2)
  2553. StandTorso.CFrame = StandTorso.CFrame:lerp(Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, -1.5) * CFrame.Angles(math.rad(-3), math.rad(-220), 0), speed * 4)
  2554. end
  2555. end
  2556. end)
  2557. local attackyourself = game:GetService("ReplicatedStorage").Logic.attackyourself
  2558. attackyourself.OnClientEvent:connect(function()
  2559. if not attacking and Humanoid.Health > 0 and summoned then
  2560. attacking = true
  2561. animation = 1337
  2562. keyframe = 0
  2563. timer = 0
  2564. movetimer = timer
  2565. effecttimer = 0
  2566. miscevent:FireServer(7, Humanoid, 0)
  2567. speed = 0.1 * Player:WaitForChild("Speed").Value * allmult
  2568. hit = false
  2569. random3 = orig3s * CFrame.new(math.random(35, 55) / 30, 0, 0) * CFrame.Angles(math.rad(math.random(-300, 300) / 100), math.rad(math.random(-100, 3700) / 100), math.rad(math.random(9700, 10800) / 100))
  2570. miscevent:FireServer(2, woosh, math.random(90, 110) / 100)
  2571. miscevent:FireServer(1, woosh, 0)
  2572. miscevent:FireServer(1, ora, 0)
  2573. spawn(function()
  2574. wait(3)
  2575. if animation == 1337 then
  2576. timer = 0
  2577. attacking = false
  2578. miscevent:FireServer(1, ora, 1)
  2579. animation = -1
  2580. keyframe = 0
  2581. miscevent:FireServer(7, Humanoid, 50)
  2582. speed = 0.02
  2583. end
  2584. end)
  2585. end
  2586. end)
  2587. local isattacking = Player:WaitForChild("isattacking")
  2588. local forceattacking = Player:WaitForChild("forceattacking")
  2589. spawn(function()
  2590. while wait() do
  2591. isattacking.Value = attacking
  2592. if not summoned then
  2593. isattacking.Value = true
  2594. end
  2595. if forceattacking.Value == true and animation ~= -1337 then
  2596. attacking = true
  2597. animation = -1337
  2598. end
  2599. if forceattacking.Value == false and animation == -1337 then
  2600. attacking = false
  2601. animation = 0
  2602. end
  2603. end
  2604. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement