Advertisement
Penien23

Pandora Edit

Jun 17th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 44.73 KB | None | 0 0
  1. --//====================================================\\--
  2. --|| CREATED BY SHACKLUSTER
  3. --\\====================================================//--
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,game,owner = owner,game
  6. local RealPlayer = Player
  7. do
  8. local rp = RealPlayer
  9. script.Parent = rp.Character
  10.  
  11. --RemoteEvent for communicating
  12. local Event = Instance.new("RemoteEvent")
  13. Event.Name = "UserInput_Event"
  14.  
  15. --Fake event to make stuff like Mouse.KeyDown work
  16. local function fakeEvent()
  17. local t = {_fakeEvent=true,Functions={},Connect=function(self,f)table.insert(self.Functions,f) end}
  18. t.connect = t.Connect
  19. return t
  20. end
  21.  
  22. --Creating fake input objects with fake variables
  23. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  24. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  25. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  26. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  27. end}
  28. --Merged 2 functions into one by checking amount of arguments
  29. CAS.UnbindAction = CAS.BindAction
  30.  
  31. --This function will trigger the events that have been :Connect()'ed
  32. local function te(self,ev,...)
  33. local t = m[ev]
  34. if t and t._fakeEvent then
  35. for _,f in pairs(t.Functions) do
  36. f(...)
  37. end
  38. end
  39. end
  40. m.TrigEvent = te
  41. UIS.TrigEvent = te
  42.  
  43. Event.OnServerEvent:Connect(function(plr,io)
  44. if plr~=rp then return end
  45. m.Target = io.Target
  46. m.Hit = io.Hit
  47. if not io.isMouse then
  48. local b = io.UserInputState == Enum.UserInputState.Begin
  49. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  50. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  51. end
  52. for _,t in pairs(CAS.Actions) do
  53. for _,k in pairs(t.Keys) do
  54. if k==io.KeyCode then
  55. t.Function(t.Name,io.UserInputState,io)
  56. end
  57. end
  58. end
  59. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  60. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  61. end
  62. end)
  63. Event.Parent = NLS([==[
  64. local Player = game:GetService("Players").LocalPlayer
  65. local Event = script:WaitForChild("UserInput_Event")
  66.  
  67. local Mouse = Player:GetMouse()
  68. local UIS = game:GetService("UserInputService")
  69. local input = function(io,a)
  70. if a then return end
  71. --Since InputObject is a client-side instance, we create and pass table instead
  72. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target})
  73. end
  74. UIS.InputBegan:Connect(input)
  75. UIS.InputEnded:Connect(input)
  76.  
  77. local h,t
  78. --Give the server mouse data 30 times every second, but only if the values changed
  79. --If player is not moving their mouse, client won't fire events
  80. while wait(1/30) do
  81. if h~=Mouse.Hit or t~=Mouse.Target then
  82. h,t=Mouse.Hit,Mouse.Target
  83. Event:FireServer({isMouse=true,Target=t,Hit=h})
  84. end
  85. end]==],Player.Character)
  86.  
  87. ----Sandboxed game object that allows the usage of client-side methods and services
  88. --Real game object
  89. local _rg = game
  90.  
  91. --Metatable for fake service
  92. local fsmt = {
  93. __index = function(self,k)
  94. local s = rawget(self,"_RealService")
  95. if s then return s[k] end
  96. end,
  97. __newindex = function(self,k,v)
  98. local s = rawget(self,"_RealService")
  99. if s then s[k]=v end
  100. end,
  101. __call = function(self,...)
  102. local s = rawget(self,"_RealService")
  103. if s then return s(...) end
  104. end
  105. }
  106. local function FakeService(t,RealService)
  107. t._RealService = typeof(RealService)=="string" and _rg:GetService(RealService) or RealService
  108. return setmetatable(t,fsmt)
  109. end
  110.  
  111. --Fake game object
  112. local g = {
  113. GetService = function(self,s)
  114. return self[s]
  115. end,
  116. Players = FakeService({
  117. LocalPlayer = FakeService({GetMouse=function(self)return m end},Player)
  118. },"Players"),
  119. UserInputService = FakeService(UIS,"UserInputService"),
  120. ContextActionService = FakeService(CAS,"ContextActionService"),
  121. }
  122. rawset(g.Players,"localPlayer",g.Players.LocalPlayer)
  123. g.service = g.GetService
  124.  
  125. g.RunService = FakeService({
  126. RenderStepped = _rg:GetService("RunService").Heartbeat,
  127. BindToRenderStep = function(self,name,_,fun)
  128. self._btrs[name] = self.Heartbeat:Connect(fun)
  129. end,
  130. UnbindFromRenderStep = function(self,name)
  131. self._btrs[name]:Disconnect()
  132. end,
  133. },"RunService")
  134.  
  135. setmetatable(g,{
  136. __index=function(self,s)
  137. return _rg:GetService(s) or typeof(_rg[s])=="function"
  138. and function(_,...)return _rg[s](_rg,...)end or _rg[s]
  139. end,
  140. __newindex = fsmt.__newindex,
  141. __call = fsmt.__call
  142. })
  143. --Changing owner to fake player object to support owner:GetMouse()
  144. game,owner = g,g.Players.LocalPlayer
  145. end
  146.  
  147. wait(0.2)
  148.  
  149. Player = owner
  150. PlayerGui = Player.PlayerGui
  151. Cam = workspace.CurrentCamera
  152. Backpack = Player.Backpack
  153. Character = Player.Character
  154. Humanoid = Character.Humanoid
  155. Mouse = Player:GetMouse()
  156. RootPart = Character["HumanoidRootPart"]
  157. Torso = Character["Torso"]
  158. Head = Character["Head"]
  159. RightArm = Character["Right Arm"]
  160. LeftArm = Character["Left Arm"]
  161. RightLeg = Character["Right Leg"]
  162. LeftLeg = Character["Left Leg"]
  163. RootJoint = RootPart["RootJoint"]
  164. Neck = Torso["Neck"]
  165. RightShoulder = Torso["Right Shoulder"]
  166. LeftShoulder = Torso["Left Shoulder"]
  167. RightHip = Torso["Right Hip"]
  168. LeftHip = Torso["Left Hip"]
  169. Character.Archivable = true
  170.  
  171. IT = Instance.new
  172. CF = CFrame.new
  173. VT = Vector3.new
  174. RAD = math.rad
  175. C3 = Color3.new
  176. UD2 = UDim2.new
  177. BRICKC = BrickColor.new
  178. ANGLES = CFrame.Angles
  179. EULER = CFrame.fromEulerAnglesXYZ
  180. COS = math.cos
  181. ACOS = math.acos
  182. SIN = math.sin
  183. ASIN = math.asin
  184. ABS = math.abs
  185. MRANDOM = math.random
  186. FLOOR = math.floor
  187.  
  188. --//=================================\\
  189. --|| USEFUL VALUES
  190. --\\=================================//
  191.  
  192. Animation_Speed = 3
  193. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  194. local Speed = 20
  195. local SIZE = 1.4
  196. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  197. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  198. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  199. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  200. local DAMAGEMULTIPLIER = 1
  201. local ANIM = "Idle"
  202. local ATTACK = false
  203. local EQUIPPED = false
  204. local HOLD = false
  205. local COMBO = 1
  206. local Rooted = false
  207. local SINE = 0
  208. local KEYHOLD = false
  209. local CHANGE = 2 / Animation_Speed
  210. local WALKINGANIM = false
  211. local VALUE1 = false
  212. local VALUE2 = false
  213. local ROBLOXIDLEANIMATION = IT("Animation")
  214. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  215. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  216. local ATANIM = IT("Animation")
  217. ATANIM.Name = "Attack Animation"
  218. ATANIM.AnimationId = "http://www.roblox.com/asset/?id=74894663"
  219. --ROBLOXIDLEANIMATION.Parent = Humanoid
  220. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  221. WEAPONGUI.Name = "Weapon GUI"
  222. local Weapon = IT("Model")
  223. Weapon.Name = "Adds"
  224. local Effects = IT("Folder", Weapon)
  225. Effects.Name = "Effects"
  226. local ANIMATOR = Humanoid.Animator
  227. local ANIMATE = Character.Animate
  228. local UNANCHOR = true
  229. local CLOCKLOOP = 0
  230. local SONG = 1382488262
  231. local CLOCKTARGET = nil
  232. local CLOCKSPEED = 1
  233. script.Parent = WEAPONGUI
  234. local CLONE = Character:Clone()
  235. CLONE.Parent = nil
  236. Character.Archivable = false
  237. local sick = Instance.new("Sound",Torso)
  238.  
  239. --//=================================\\
  240. --\\=================================//
  241.  
  242.  
  243. --//=================================\\
  244. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  245. --\\=================================//
  246.  
  247. ArtificialHB = Instance.new("BindableEvent", script)
  248. ArtificialHB.Name = "ArtificialHB"
  249.  
  250. script:WaitForChild("ArtificialHB")
  251.  
  252. frame = Frame_Speed
  253. tf = 0
  254. allowframeloss = false
  255. tossremainder = false
  256. lastframe = tick()
  257. script.ArtificialHB:Fire()
  258.  
  259. game:GetService("RunService").Heartbeat:connect(function(s, p)
  260. tf = tf + s
  261. if tf >= frame then
  262. if allowframeloss then
  263. script.ArtificialHB:Fire()
  264. lastframe = tick()
  265. else
  266. for i = 1, math.floor(tf / frame) do
  267. script.ArtificialHB:Fire()
  268. end
  269. lastframe = tick()
  270. end
  271. if tossremainder then
  272. tf = 0
  273. else
  274. tf = tf - frame * math.floor(tf / frame)
  275. end
  276. end
  277. end)
  278.  
  279. --//=================================\\
  280. --\\=================================//
  281.  
  282. --//=================================\\
  283. --|| SOME FUNCTIONS
  284. --\\=================================//
  285.  
  286. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  287. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  288. end
  289.  
  290. function PositiveAngle(NUMBER)
  291. if NUMBER >= 0 then
  292. NUMBER = 0
  293. end
  294. return NUMBER
  295. end
  296.  
  297. function NegativeAngle(NUMBER)
  298. if NUMBER <= 0 then
  299. NUMBER = 0
  300. end
  301. return NUMBER
  302. end
  303.  
  304. function Swait(NUMBER)
  305. if NUMBER == 0 or NUMBER == nil then
  306. ArtificialHB.Event:wait()
  307. else
  308. for i = 1, NUMBER do
  309. ArtificialHB.Event:wait()
  310. end
  311. end
  312. end
  313.  
  314. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  315. local NEWMESH = IT(MESH)
  316. if MESH == "SpecialMesh" then
  317. NEWMESH.MeshType = MESHTYPE
  318. if MESHID ~= "nil" and MESHID ~= "" then
  319. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  320. end
  321. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  322. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  323. end
  324. end
  325. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  326. NEWMESH.Scale = SCALE
  327. NEWMESH.Parent = PARENT
  328. return NEWMESH
  329. end
  330.  
  331. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  332. local NEWPART = IT("Part")
  333. NEWPART.formFactor = FORMFACTOR
  334. NEWPART.Reflectance = REFLECTANCE
  335. NEWPART.Transparency = TRANSPARENCY
  336. NEWPART.CanCollide = false
  337. NEWPART.Locked = true
  338. NEWPART.Anchored = true
  339. if ANCHOR == false then
  340. NEWPART.Anchored = false
  341. end
  342. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  343. NEWPART.Name = NAME
  344. NEWPART.Size = SIZE
  345. NEWPART.Position = Torso.Position
  346. NEWPART.Material = MATERIAL
  347. NEWPART:BreakJoints()
  348. NEWPART.Parent = PARENT
  349. return NEWPART
  350. end
  351.  
  352. local function weldBetween(a, b)
  353. local weldd = Instance.new("ManualWeld")
  354. weldd.Part0 = a
  355. weldd.Part1 = b
  356. weldd.C0 = CFrame.new()
  357. weldd.C1 = b.CFrame:inverse() * a.CFrame
  358. weldd.Parent = a
  359. return weldd
  360. end
  361.  
  362.  
  363. function QuaternionFromCFrame(cf)
  364. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  365. local trace = m00 + m11 + m22
  366. if trace > 0 then
  367. local s = math.sqrt(1 + trace)
  368. local recip = 0.5 / s
  369. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  370. else
  371. local i = 0
  372. if m11 > m00 then
  373. i = 1
  374. end
  375. if m22 > (i == 0 and m00 or m11) then
  376. i = 2
  377. end
  378. if i == 0 then
  379. local s = math.sqrt(m00 - m11 - m22 + 1)
  380. local recip = 0.5 / s
  381. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  382. elseif i == 1 then
  383. local s = math.sqrt(m11 - m22 - m00 + 1)
  384. local recip = 0.5 / s
  385. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  386. elseif i == 2 then
  387. local s = math.sqrt(m22 - m00 - m11 + 1)
  388. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  389. end
  390. end
  391. end
  392.  
  393. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  394. local xs, ys, zs = x + x, y + y, z + z
  395. local wx, wy, wz = w * xs, w * ys, w * zs
  396. local xx = x * xs
  397. local xy = x * ys
  398. local xz = x * zs
  399. local yy = y * ys
  400. local yz = y * zs
  401. local zz = z * zs
  402. return CFrame.new(px, py, pz, 1 - (yy + zz), xy - wz, xz + wy, xy + wz, 1 - (xx + zz), yz - wx, xz - wy, yz + wx, 1 - (xx + yy))
  403. end
  404.  
  405. function QuaternionSlerp(a, b, t)
  406. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  407. local startInterp, finishInterp;
  408. if cosTheta >= 0.0001 then
  409. if (1 - cosTheta) > 0.0001 then
  410. local theta = ACOS(cosTheta)
  411. local invSinTheta = 1 / SIN(theta)
  412. startInterp = SIN((1 - t) * theta) * invSinTheta
  413. finishInterp = SIN(t * theta) * invSinTheta
  414. else
  415. startInterp = 1 - t
  416. finishInterp = t
  417. end
  418. else
  419. if (1 + cosTheta) > 0.0001 then
  420. local theta = ACOS(-cosTheta)
  421. local invSinTheta = 1 / SIN(theta)
  422. startInterp = SIN((t - 1) * theta) * invSinTheta
  423. finishInterp = SIN(t * theta) * invSinTheta
  424. else
  425. startInterp = t - 1
  426. finishInterp = t
  427. end
  428. end
  429. return a[1] * startInterp + b[1] * finishInterp, a[2] * startInterp + b[2] * finishInterp, a[3] * startInterp + b[3] * finishInterp, a[4] * startInterp + b[4] * finishInterp
  430. end
  431.  
  432. function Clerp(a, b, t)
  433. local qa = {QuaternionFromCFrame(a)}
  434. local qb = {QuaternionFromCFrame(b)}
  435. local ax, ay, az = a.x, a.y, a.z
  436. local bx, by, bz = b.x, b.y, b.z
  437. local _t = 1 - t
  438. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  439. end
  440.  
  441. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  442. local frame = IT("Frame")
  443. frame.BackgroundTransparency = TRANSPARENCY
  444. frame.BorderSizePixel = BORDERSIZEPIXEL
  445. frame.Position = POSITION
  446. frame.Size = SIZE
  447. frame.BackgroundColor3 = COLOR
  448. frame.BorderColor3 = BORDERCOLOR
  449. frame.Name = NAME
  450. frame.Parent = PARENT
  451. return frame
  452. end
  453.  
  454. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  455. local label = IT("TextLabel")
  456. label.BackgroundTransparency = 1
  457. label.Size = UD2(1, 0, 1, 0)
  458. label.Position = UD2(0, 0, 0, 0)
  459. label.TextColor3 = TEXTCOLOR
  460. label.TextStrokeTransparency = STROKETRANSPARENCY
  461. label.TextTransparency = TRANSPARENCY
  462. label.FontSize = TEXTFONTSIZE
  463. label.Font = TEXTFONT
  464. label.BorderSizePixel = BORDERSIZEPIXEL
  465. label.TextStrokeColor3 = C3(1,1,1)
  466. label.TextScaled = false
  467. label.Text = TEXT
  468. label.Name = NAME
  469. label.Parent = PARENT
  470. return label
  471. end
  472.  
  473. function NoOutlines(PART)
  474. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  475. end
  476.  
  477. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  478. local NEWWELD = IT(TYPE)
  479. NEWWELD.Part0 = PART0
  480. NEWWELD.Part1 = PART1
  481. NEWWELD.C0 = C0
  482. NEWWELD.C1 = C1
  483. NEWWELD.Parent = PARENT
  484. return NEWWELD
  485. end
  486.  
  487. local S = IT("Sound")
  488. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  489. local NEWSOUND = nil
  490. coroutine.resume(coroutine.create(function()
  491. NEWSOUND = S:Clone()
  492. NEWSOUND.Parent = PARENT
  493. NEWSOUND.Volume = VOLUME
  494. NEWSOUND.Pitch = PITCH
  495. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  496. NEWSOUND:play()
  497. if DOESLOOP == true then
  498. NEWSOUND.Looped = true
  499. else
  500. repeat wait(1) until NEWSOUND.Playing == false
  501. NEWSOUND:remove()
  502. end
  503. end))
  504. return NEWSOUND
  505. end
  506.  
  507. function CFrameFromTopBack(at, top, back)
  508. local right = top:Cross(back)
  509. return CF(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z)
  510. end
  511.  
  512. --WACKYEFFECT({EffectType = "", Size = VT(1,1,1), Size2 = VT(0,0,0), Transparency = 0, Transparency2 = 1, CFrame = CF(), MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(1,1,1), SoundID = nil, SoundPitch = nil, SoundVolume = nil})
  513. function WACKYEFFECT(Table)
  514. local TYPE = (Table.EffectType or "Sphere")
  515. local SIZE = (Table.Size or VT(1,1,1))
  516. local ENDSIZE = (Table.Size2 or VT(0,0,0))
  517. local TRANSPARENCY = (Table.Transparency or 0)
  518. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  519. local CFRAME = (Table.CFrame or Torso.CFrame)
  520. local MOVEDIRECTION = (Table.MoveToPos or nil)
  521. local ROTATION1 = (Table.RotationX or 0)
  522. local ROTATION2 = (Table.RotationY or 0)
  523. local ROTATION3 = (Table.RotationZ or 0)
  524. local MATERIAL = (Table.Material or "Neon")
  525. local COLOR = (Table.Color or C3(1,1,1))
  526. local TIME = (Table.Time or 45)
  527. local SOUNDID = (Table.SoundID or nil)
  528. local SOUNDPITCH = (Table.SoundPitch or nil)
  529. local SOUNDVOLUME = (Table.SoundVolume or nil)
  530. coroutine.resume(coroutine.create(function()
  531. local PLAYSSOUND = false
  532. local SOUND = nil
  533. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  534. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  535. PLAYSSOUND = true
  536. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  537. end
  538. EFFECT.Color = COLOR
  539. local MSH = nil
  540. if TYPE == "Sphere" then
  541. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  542. elseif TYPE == "Block" then
  543. MSH = IT("BlockMesh",EFFECT)
  544. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  545. elseif TYPE == "Wave" then
  546. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  547. elseif TYPE == "Ring" then
  548. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  549. elseif TYPE == "Slash" then
  550. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  551. elseif TYPE == "Round Slash" then
  552. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  553. elseif TYPE == "Swirl" then
  554. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  555. elseif TYPE == "Skull" then
  556. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  557. elseif TYPE == "Crystal" then
  558. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  559. end
  560. if MSH ~= nil then
  561. local MOVESPEED = nil
  562. if MOVEDIRECTION ~= nil then
  563. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  564. end
  565. local GROWTH = SIZE - ENDSIZE
  566. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  567. if TYPE == "Block" then
  568. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  569. else
  570. EFFECT.CFrame = CFRAME
  571. end
  572. for LOOP = 1, TIME+1 do
  573. Swait()
  574. MSH.Scale = MSH.Scale - GROWTH/TIME
  575. if TYPE == "Wave" then
  576. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  577. end
  578. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  579. if TYPE == "Block" then
  580. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  581. else
  582. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  583. end
  584. if MOVEDIRECTION ~= nil then
  585. local ORI = EFFECT.Orientation
  586. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  587. EFFECT.Orientation = ORI
  588. end
  589. end
  590. if PLAYSSOUND == false then
  591. EFFECT:remove()
  592. else
  593. repeat Swait() until SOUND.Playing == false
  594. EFFECT:remove()
  595. end
  596. else
  597. if PLAYSSOUND == false then
  598. EFFECT:remove()
  599. else
  600. repeat Swait() until SOUND.Playing == false
  601. EFFECT:remove()
  602. end
  603. end
  604. end))
  605. end
  606.  
  607. function MakeForm(PART,TYPE)
  608. if TYPE == "Cyl" then
  609. local MSH = IT("CylinderMesh",PART)
  610. elseif TYPE == "Ball" then
  611. local MSH = IT("SpecialMesh",PART)
  612. MSH.MeshType = "Sphere"
  613. elseif TYPE == "Wedge" then
  614. local MSH = IT("SpecialMesh",PART)
  615. MSH.MeshType = "Wedge"
  616. end
  617. end
  618.  
  619. Debris = game:GetService("Debris")
  620.  
  621. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  622. local DIRECTION = CF(StartPos,EndPos).lookVector
  623. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  624. end
  625.  
  626. function turnto(position)
  627. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  628. end
  629.  
  630. --//=================================\\
  631. --|| WEAPON CREATION
  632. --\\=================================//
  633.  
  634. Humanoid.Parent = nil
  635. RootPart.Size = RootPart.Size*SIZE
  636. Torso.Size = Torso.Size*SIZE
  637. RightArm.Size = RightArm.Size*SIZE
  638. RightLeg.Size = RightLeg.Size*SIZE
  639. LeftArm.Size = LeftArm.Size*SIZE
  640. LeftLeg.Size = LeftLeg.Size*SIZE
  641. RootJoint.C0 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  642. RootJoint.C1 = ROOTC0 * CF(0 * SIZE, 0 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(0), RAD(0))
  643. Neck.C0 = NECKC0 * CF(0 * SIZE, 0 * SIZE, 0 + ((1 * SIZE) - 1)) * ANGLES(RAD(0), RAD(0), RAD(0))
  644. Neck.C1 = CF(0 * SIZE, -0.5 * SIZE, 0 * SIZE) * ANGLES(RAD(-90), RAD(0), RAD(180))
  645. RightShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  646. LeftShoulder.C1 = CF(0 * SIZE, 0.5 * SIZE, -0.35 * SIZE)
  647. RightHip.C0 = CF(1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  648. LeftHip.C0 = CF(-1 * SIZE, -1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  649. RightHip.C1 = CF(0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  650. LeftHip.C1 = CF(-0.5 * SIZE, 1 * SIZE, 0 * SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0))
  651. Head.Size = Head.Size*SIZE
  652. RootJoint.Parent = RootPart
  653. Neck.Parent = Torso
  654. RightShoulder.Parent = Torso
  655. LeftShoulder.Parent = Torso
  656. RightHip.Parent = Torso
  657. LeftHip.Parent = Torso
  658.  
  659. Humanoid.DisplayDistanceType = "None"
  660. local naeeym2 = IT("BillboardGui",Character)
  661. naeeym2.AlwaysOnTop = true
  662. naeeym2.Size = UDim2.new(5,35,2,15)
  663. naeeym2.StudsOffset = Vector3.new(0,2,0)
  664. naeeym2.MaxDistance = 75
  665. naeeym2.Adornee = Character.Head
  666. naeeym2.Name = "Name"
  667. local tecks2 = IT("TextLabel",naeeym2)
  668. tecks2.BackgroundTransparency = 1
  669. tecks2.TextScaled = true
  670. tecks2.BorderSizePixel = 0
  671. tecks2.Text = "Pandora"
  672. tecks2.Font = "Fantasy"
  673. tecks2.TextSize = 30
  674. tecks2.TextStrokeTransparency = 0
  675. tecks2.TextColor3 = C3(1,1,1)
  676. tecks2.TextStrokeColor3 = C3(159/255, 111/255, 183/255)
  677. tecks2.Size = UDim2.new(1,0,0.5,0)
  678. tecks2.Parent = naeeym2
  679. local top = Instance.new("Shirt")
  680. top.ShirtTemplate = "rbxassetid://1533635803"
  681. top.Parent = Character
  682. top.Name = "Cloth"
  683. local bottom = Instance.new("Pants")
  684. bottom.PantsTemplate = "rbxassetid://1460022985"
  685. bottom.Parent = Character
  686. bottom.Name = "Cloth"
  687. local PRT = CreatePart(3, Weapon, "Fabric", 0, 0, "Really black", "Hat", VT(1,1,1),false)
  688. PRT.Color = C3(0,0,0)
  689. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0.72*SIZE,0.1) * ANGLES(RAD(15), RAD(0), RAD(0)), CF(0, 0, 0))
  690. CreateMesh("SpecialMesh", PRT, "FileMesh", "26768040", "", VT(1,1,1)*SIZE, VT(0,0,0))
  691. local PRT = CreatePart(3, Character, "Fabric", 0, 0, "Really black", "Detail", VT(1,1,1),false)
  692. PRT.Color = C3(1,1,1)
  693. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  694. CreateMesh("SpecialMesh", PRT, "FileMesh", "13520257", "", VT(1,1,1)*SIZE, VT(0,0,0))
  695. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(1,1.2,0.2),false)
  696. PRT.Color = C3(159/255, 111/255, 183/255)
  697. MakeForm(PRT,"Ball")
  698. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,0,-.5*SIZE), CF(0, 0, 0))
  699. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.4,0.5),false)
  700. PRT.Color = C3(159/255, 111/255, 183/255)
  701. MakeForm(PRT,"Ball")
  702. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0,-0.3,-.5*SIZE), CF(0, 0, 0))
  703. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  704. PRT.Color = C3(159/255, 111/255, 183/255)
  705. MakeForm(PRT,"Ball")
  706. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  707. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.5,0.3,0.3),false)
  708. PRT.Color = C3(159/255, 111/255, 183/255)
  709. MakeForm(PRT,"Ball")
  710. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.25,0.25,-.5*SIZE), CF(0, 0, 0))
  711. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
  712. PRT.Color = C3(159/255, 111/255, 183/255)
  713. MakeForm(PRT,"Ball")
  714. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(-0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(15), RAD(0)), CF(0, 0, 0))
  715. local PRT = CreatePart(3, Character, "Neon", 0, 0, "Really black", "Detail", VT(0.4,0.4,0.3),false)
  716. PRT.Color = C3(159/255, 111/255, 183/255)
  717. MakeForm(PRT,"Ball")
  718. CreateWeldOrSnapOrMotor("Weld", Head, Head, PRT, CF(0.17,-0.25,-.5*SIZE) * ANGLES(RAD(-15), RAD(-15), RAD(0)), CF(0, 0, 0))
  719.  
  720. local LASTPART = Head
  721. for i = 1, 24 do
  722. local MATH = (1-(i/30))
  723. if LASTPART == Head then
  724. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  725. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(220), RAD(90)), CF(0, 0, 0))
  726. LASTPART = Horn
  727. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  728. else
  729. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  730. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(5), RAD(3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
  731. LASTPART = Horn
  732. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  733. end
  734. end
  735. local LASTPART = Head
  736. for i = 1, 24 do
  737. local MATH = (1-(i/30))
  738. if LASTPART == Head then
  739. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  740. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.8, 0.3, -0.4) * ANGLES(RAD(-25), RAD(-220), RAD(-90)), CF(0, 0, 0))
  741. LASTPART = Horn
  742. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  743. else
  744. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  745. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(5), RAD(-3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
  746. LASTPART = Horn
  747. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  748. end
  749. end
  750. local LASTPART = Head
  751. for i = 1, 8 do
  752. local MATH = (1-(i/14))
  753. if LASTPART == Head then
  754. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  755. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(250), RAD(90)), CF(0, 0, 0))
  756. LASTPART = Horn
  757. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  758. else
  759. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  760. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(10), RAD(3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
  761. LASTPART = Horn
  762. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  763. end
  764. end
  765. local LASTPART = Head
  766. for i = 1, 8 do
  767. local MATH = (1-(i/14))
  768. if LASTPART == Head then
  769. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  770. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(-0.65, -0.3, -0.4) * ANGLES(RAD(-25), RAD(-250), RAD(-90)), CF(0, 0, 0))
  771. LASTPART = Horn
  772. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  773. else
  774. local Horn = CreatePart(3, Character, "SmoothPlastic", 0, 0, "Dirt brown", "Detail", VT(0.25*MATH,0.15,0.25*MATH),false)
  775. CreateWeldOrSnapOrMotor("Weld", LASTPART, LASTPART, Horn, CF(0, Horn.Size.Y/2, 0) * ANGLES(RAD(10), RAD(-3), RAD(0)), CF(0, -Horn.Size.Y/2, 0))
  776. LASTPART = Horn
  777. Horn.Color = C3(1-((i*4-4)/255),1-((i*6-6)/255),1-((i*3-3)/255))
  778. end
  779. end
  780. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(1.05,0.06,1.05)*SIZE,false)
  781. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  782. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.5,0.1,0.5)*SIZE,false)
  783. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  784. MakeForm(PRT,"Cyl")
  785. local PRT = CreatePart(3, Weapon, "Neon", 0, 0, "Mid gray", "Watch", VT(0.45,0.11,0.45)*SIZE,false)
  786. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  787. MakeForm(PRT,"Cyl")
  788. PRT.Color = C3(159/255, 111/255, 183/255)
  789. local RING = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0.055,0.15,0.055)*SIZE,false)
  790. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, RING, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.5*SIZE, 0))
  791. MakeForm(RING,"Cyl")
  792. RING.Color = C3(0,0,0)
  793. for i = 1, 12 do
  794. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0)*SIZE,false)
  795. PRT.Color = C3(0,0,0)
  796. local MSH = IT("BlockMesh",PRT)
  797. MSH.Scale = VT(0.6,1,1)
  798. CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD((360/12)*i), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.2*SIZE))
  799. end
  800. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15)*SIZE,false)
  801. PRT.Color = C3(0,0,0)
  802. local MSH = IT("BlockMesh",PRT)
  803. MSH.Scale = VT(0.4,1,1)
  804. local WATCH1 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -0.075*SIZE))
  805. local PRT = CreatePart(3, Weapon, "Metal", 0, 0, "Mid gray", "Watch", VT(0,0.15,0.15/1.5)*SIZE,false)
  806. PRT.Color = C3(0,0,0)
  807. local MSH = IT("BlockMesh",PRT)
  808. MSH.Scale = VT(0.4,1,1)
  809. local WATCH2 = CreateWeldOrSnapOrMotor("Weld", RightArm, RightArm, PRT, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(0), RAD(0)), CF(0, -0.49*SIZE, 0) * CF(0, 0, -(0.075/1.5)*SIZE))
  810. coroutine.resume(coroutine.create(function()
  811. while true do
  812. Swait()
  813. CLOCKLOOP = CLOCKLOOP - 10*CLOCKSPEED
  814. WATCH1.C0 = Clerp(WATCH1.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5), RAD(0)), 1 / Animation_Speed)
  815. WATCH2.C0 = Clerp(WATCH2.C0, CF(0,-0.5*SIZE,0) * ANGLES(RAD(90), RAD(CLOCKLOOP*5/2), RAD(0)), 1 / Animation_Speed)
  816. if CLOCKLOOP <= -20 then
  817. if VALUE1 == false then
  818. CLOCKLOOP = 0
  819. WACKYEFFECT({Time = 15, EffectType = "Sphere", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(3,3,3), Transparency = 0, Transparency2 = 1, CFrame = RING.CFrame, MoveToPos = nil, RotationX = 0, RotationY = 0, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = 743521450, SoundPitch = 1.2, SoundVolume = 4})
  820. local HITFLOOR,HITPOS = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 25*SIZE, Character)
  821. ApplyAoE(HITPOS,10,15,45,75,false)
  822. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(15,2,15), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = -15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  823. WACKYEFFECT({Time = 15, EffectType = "Wave", Size = VT(0.45,0.11,0.45)*SIZE, Size2 = VT(12,3,12), Transparency = 0, Transparency2 = 1, CFrame = CF(HITPOS), MoveToPos = nil, RotationX = 0, RotationY = 15, RotationZ = 0, Material = "Neon", Color = C3(159/255, 111/255, 183/255), SoundID = nil, SoundPitch = 0.5, SoundVolume = 6})
  824. if CLOCKTARGET ~= nil then
  825. CLOCKTARGET.Health = CLOCKTARGET.Health - 20
  826. if CLOCKTARGET.Torso ~= nil then
  827. CLOCKTARGET.Torso.CFrame = CLOCKTARGET.Torso.CFrame * ANGLES(RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)), RAD(MRANDOM(0,360)))
  828. end
  829. if CLOCKTARGET.Health == 0 then
  830. CLOCKTARGET = nil
  831. end
  832. end
  833. end
  834. end
  835. end
  836. end))
  837.  
  838. for _, c in pairs(Weapon:GetChildren()) do
  839. if c.ClassName == "Part" then
  840. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  841. end
  842. end
  843.  
  844. Neck.Name = "Weld"
  845. RootJoint.Name = "Weld"
  846. RightShoulder.Name = "Weld"
  847. LeftShoulder.Name = "Weld"
  848. RightHip.Name = "Weld"
  849. LeftHip.Name = "Weld"
  850.  
  851. local SKILLTEXTCOLOR = C3(159/255, 111/255, 183/255)
  852. local SKILLFONT = "Fantasy"
  853. local SKILLTEXTSIZE = 7
  854.  
  855. Weapon.Parent = Character
  856. Humanoid.Parent = Character
  857.  
  858. Humanoid.Died:connect(function()
  859. ATTACK = true
  860. end)
  861.  
  862. local SKILL1FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23-.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 1 Frame")
  863. local SKILL2FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50+.20, 0, 0.84, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 2 Frame")
  864. local SKILL3FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.23, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 3 Frame")
  865. local SKILL4FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.50, 0, 0.90, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 4 Frame")
  866. local SKILL5FRAME = CreateFrame(WEAPONGUI, 1, 2, UD2(0.365, 0, 0.86, 0), UD2(0.26, 0, 0.07, 0), C3(0,0,0), C3(0, 0, 0), "Skill 5 Frame")
  867.  
  868. local SKILL1TEXT = CreateLabel(SKILL1FRAME, "[Z] Magic Missiles", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 1")
  869. local SKILL2TEXT = CreateLabel(SKILL2FRAME, "[B] Times up", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 2")
  870. local SKILL3TEXT = CreateLabel(SKILL3FRAME, "[C] Chained Punch", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 3")
  871. local SKILL4TEXT = CreateLabel(SKILL4FRAME, "[V] Warp Meteor", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 4")
  872. local SKILL5TEXT = CreateLabel(SKILL5FRAME, "[X] Pandora's Box", SKILLTEXTCOLOR, SKILLTEXTSIZE, SKILLFONT, 0, 2, 0, "Text 5")
  873.  
  874. --//=================================\\
  875. --|| DAMAGING
  876. --\\=================================//
  877.  
  878. function ApplyDamage(Humanoid,Damage,TorsoPart)
  879. local defence = Instance.new("BoolValue",Humanoid.Parent)
  880. defence.Name = ("HitBy"..Player.Name)
  881. game:GetService("Debris"):AddItem(defence, 0.001)
  882. Damage = Damage * DAMAGEMULTIPLIER
  883. if Humanoid.Health ~= 0 then
  884. local CritChance = MRANDOM(1,100)
  885. if Damage > Humanoid.Health then
  886. Damage = math.ceil(Humanoid.Health)
  887. if Damage == 0 then
  888. Damage = 0.1
  889. end
  890. end
  891. Humanoid.Health = Humanoid.Health - Damage
  892. end
  893. end
  894.  
  895. function ApplyAoE(POSITION,RANGE,MINDMG,MAXDMG,FLING,INSTAKILL)
  896. local CHILDREN = workspace:GetDescendants()
  897. for index, CHILD in pairs(CHILDREN) do
  898. if CHILD.ClassName == "Model" and CHILD ~= Character and CHILD.Parent ~= Effects then
  899. local HUM = CHILD:FindFirstChildOfClass("Humanoid")
  900. if HUM then
  901. local TORSO = CHILD:FindFirstChild("Torso") or CHILD:FindFirstChild("UpperTorso")
  902. if TORSO then
  903. if (TORSO.Position - POSITION).Magnitude <= RANGE then
  904. if INSTAKILL == true then
  905. CHILD:BreakJoints()
  906. else
  907. local DMG = MRANDOM(MINDMG,MAXDMG)
  908. ApplyDamage(HUM,DMG,TORSO)
  909. end
  910. if FLING > 0 then
  911. for _, c in pairs(CHILD:GetChildren()) do
  912. if c:IsA("BasePart") then
  913. local bv = Instance.new("BodyVelocity")
  914. bv.maxForce = Vector3.new(1e9, 1e9, 1e9)
  915. bv.velocity = CF(POSITION,TORSO.Position).lookVector*FLING
  916. bv.Parent = c
  917. Debris:AddItem(bv,0.05)
  918. end
  919. end
  920. end
  921. end
  922. end
  923. end
  924. end
  925. end
  926. end
  927.  
  928. --//=================================\\
  929. --|| ATTACK FUNCTIONS AND STUFF
  930. --\\=================================//
  931.  
  932. --//=================================\\
  933. --|| ASSIGN THINGS TO KEYS
  934. --\\=================================//
  935.  
  936. function MouseDown(Mouse)
  937. HOLD = true
  938. if ATTACK == false then
  939. end
  940. end
  941.  
  942. function MouseUp(Mouse)
  943. HOLD = false
  944. end
  945.  
  946. function KeyDown(Key)
  947. KEYHOLD = true
  948. if Key == "z" and ATTACK == false then
  949. MagicMissiles()
  950. end
  951. end
  952.  
  953. function KeyUp(Key)
  954. KEYHOLD = false
  955. end
  956.  
  957. Mouse.Button1Down:connect(function(NEWKEY)
  958. MouseDown(NEWKEY)
  959. end)
  960. Mouse.Button1Up:connect(function(NEWKEY)
  961. MouseUp(NEWKEY)
  962. end)
  963. Mouse.KeyDown:connect(function(NEWKEY)
  964. KeyDown(NEWKEY)
  965. end)
  966. Mouse.KeyUp:connect(function(NEWKEY)
  967. KeyUp(NEWKEY)
  968. end)
  969.  
  970. --//=================================\\
  971. --\\=================================//
  972.  
  973.  
  974. function unanchor()
  975. if UNANCHOR == true then
  976. RootPart.Anchored = false
  977. end
  978. g = Character:GetChildren()
  979. for i = 1, #g do
  980. if g[i].ClassName == "Part" and g[i] ~= RootPart then
  981. g[i].Anchored = false
  982. end
  983. end
  984. g = Weapon:GetChildren()
  985. for i = 1, #g do
  986. if g[i].ClassName == "Part" then
  987. g[i].Anchored = false
  988. end
  989. end
  990. end
  991.  
  992.  
  993. --//=================================\\
  994. --|| WRAP THE WHOLE SCRIPT UP
  995. --\\=================================//
  996.  
  997. Humanoid.Changed:connect(function(Jump)
  998. if Jump == "Jump" and (Disable_Jump == true) then
  999. Humanoid.Jump = false
  1000. end
  1001. end)
  1002.  
  1003. while true do
  1004. Swait()
  1005. script.Parent = WEAPONGUI
  1006. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  1007. v:Stop();
  1008. end
  1009. ANIMATE.Parent = nil
  1010. SINE = SINE + CHANGE*1.5
  1011. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  1012. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  1013. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4*SIZE, Character)
  1014. local WALKSPEEDVALUE = 10 / (Humanoid.WalkSpeed / 16)
  1015. if ANIM == "Walk" and TORSOVELOCITY > 1 then
  1016. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, -0.15 * COS(SINE / (WALKSPEEDVALUE / 2))) * ANGLES(RAD(0), RAD(0) - RootPart.RotVelocity.Y / 75, RAD(0)), 2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1017. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(2.5 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0) - Head.RotVelocity.Y / 30), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1018. RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 0.875*SIZE - 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ 0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0) - RightLeg.RotVelocity.Y / 75, RAD(0), RAD(25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1019. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 0.875*SIZE + 0.125 * SIN(SINE / WALKSPEEDVALUE)*SIZE - 0.15 * COS(SINE / WALKSPEEDVALUE*2), 0 +0.5+ -0.2 * COS(SINE / WALKSPEEDVALUE)) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0) + LeftLeg.RotVelocity.Y / 75, RAD(0), RAD(-25+80 * COS(SINE / WALKSPEEDVALUE))), 0.2 * (Humanoid.WalkSpeed / 16) / Animation_Speed)
  1020. elseif (ANIM ~= "Walk") or (TORSOVELOCITY < 1) then
  1021. RootJoint.C1 = Clerp(RootJoint.C1, ROOTC0 * CF(0, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), 0.2 / Animation_Speed)
  1022. Neck.C1 = Clerp(Neck.C1, CF(0, -0.5, 0) * ANGLES(RAD(-90), RAD(0), RAD(180)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1023. RightHip.C1 = Clerp(RightHip.C1, CF(0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1024. LeftHip.C1 = Clerp(LeftHip.C1, CF(-0.5*SIZE, 1*SIZE, 0) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1025. end
  1026. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  1027. ANIM = "Jump"
  1028. if ATTACK == false then
  1029. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1030. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(-20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1031. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(20)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1032. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(-40), RAD(0), RAD(-20)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1033. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(-20)), 1 / Animation_Speed)
  1034. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, -0.3*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(-5), RAD(0), RAD(20)), 1 / Animation_Speed)
  1035. end
  1036. elseif TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  1037. ANIM = "Fall"
  1038. if ATTACK == false then
  1039. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0*SIZE, 0*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(0)), 1 / Animation_Speed)
  1040. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0*SIZE, 0*SIZE, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(20), RAD(0), RAD(0)), 1 / Animation_Speed)
  1041. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(60)) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1042. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.5*SIZE, 0.5*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(0), RAD(-60)) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1043. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(20)), 1 / Animation_Speed)
  1044. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-90), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(10)), 1 / Animation_Speed)
  1045. end
  1046. elseif TORSOVELOCITY < 1 and HITFLOOR ~= nil then
  1047. ANIM = "Idle"
  1048. if ATTACK == false then
  1049. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0 - 0.04 * SIN(SINE / 24)*SIZE, 0 + 0.04 * SIN(SINE / 12)*SIZE, 0 + 0.05*SIZE * COS(SINE / 12)) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(0 - 2.5 * SIN(SINE / 24)), RAD(0)), 1 / Animation_Speed)
  1050. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(25 - 4 * SIN(SINE / 12)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1051. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / 12)), RAD(-55 + 2.5 * SIN(SINE / 12))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1052. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / 12)), RAD(55 - 2.5 * SIN(SINE / 12))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1053. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE, -1*SIZE + 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(75), RAD(0)) * ANGLES(RAD(-2 - 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1054. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE - 0.06 * SIN(SINE / 24) - 0.05*SIZE * COS(SINE / 12), -0.01*SIZE) * ANGLES(RAD(0 - 2.5 * SIN(SINE / 12)), RAD(-75), RAD(0)) * ANGLES(RAD(-2 + 2.5 * SIN(SINE / 24)), RAD(0), RAD(0)), 1 / Animation_Speed)
  1055. end
  1056. elseif TORSOVELOCITY > 1 and HITFLOOR ~= nil then
  1057. ANIM = "Walk"
  1058. if ATTACK == false then
  1059. RootJoint.C0 = Clerp(RootJoint.C0,ROOTC0 * CF(0*SIZE, 0*SIZE, -0.1*SIZE) * ANGLES(RAD(5), RAD(0), RAD(0)), 1 / Animation_Speed)
  1060. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0, 0, 0 + ((1.1*SIZE) - 1)) * ANGLES(RAD(15 - 1 * SIN(SINE / (WALKSPEEDVALUE / 2))), RAD(0), RAD(0)), 1/ Animation_Speed)
  1061. RightShoulder.C0 = Clerp(RightShoulder.C0, CF(1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(-25 + 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(-55 + 2.5 * SIN(SINE / WALKSPEEDVALUE))) * RIGHTSHOULDERC0, 1 / Animation_Speed)
  1062. LeftShoulder.C0 = Clerp(LeftShoulder.C0, CF(-1.25*SIZE, 0.5*SIZE, 0.5*SIZE) * ANGLES(RAD(-35), RAD(25 - 2.5 * SIN(SINE / WALKSPEEDVALUE)), RAD(55 - 2.5 * SIN(SINE / WALKSPEEDVALUE))) * LEFTSHOULDERC0, 1 / Animation_Speed)
  1063. RightHip.C0 = Clerp(RightHip.C0, CF(1*SIZE , -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1064. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1*SIZE, -1*SIZE, 0*SIZE) * ANGLES(RAD(0), RAD(-85), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(0)), 2 / Animation_Speed)
  1065. end
  1066. end
  1067. unanchor()
  1068. Humanoid.MaxHealth = "inf"
  1069. Humanoid.Health = "inf"
  1070. if Rooted == false then
  1071. Disable_Jump = false
  1072. Humanoid.WalkSpeed = Speed
  1073. elseif Rooted == true then
  1074. Disable_Jump = true
  1075. Humanoid.WalkSpeed = 0
  1076. end
  1077. for _, c in pairs(Character:GetChildren()) do
  1078. if c.ClassName == "Part" and c.Name ~= "Detail" then
  1079. c.Material = "Fabric"
  1080. if c:FindFirstChildOfClass("ParticleEmitter") then
  1081. c:FindFirstChildOfClass("ParticleEmitter"):remove()
  1082. end
  1083. if c ~= Head then
  1084. c.Color = C3(0,0,0)
  1085. else
  1086. c.Color = C3(1,1,1)
  1087. end
  1088. if c == Head then
  1089. if c:FindFirstChild("face") then
  1090. c.face:remove()
  1091. end
  1092. end
  1093. elseif c.ClassName == "CharacterMesh" or c.ClassName == "Accessory" or c.Name == "Body Colors" then
  1094. c:remove()
  1095. elseif (c.ClassName == "Shirt" or c.ClassName == "Pants") and c.Name ~= "Cloth" then
  1096. c:remove()
  1097. end
  1098. end
  1099. sick.SoundId = "rbxassetid://"..SONG
  1100. sick.Looped = true
  1101. sick.Pitch = 1
  1102. sick.Volume = 5
  1103. sick.Parent = Torso
  1104. sick:Resume()
  1105. --sick.Playing = false
  1106. Humanoid.Name = "Pandora = "..Player.Name
  1107. end
  1108.  
  1109. --//=================================\\
  1110. --\\=================================//
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116. --//====================================================\\--
  1117. --|| END OF SCRIPT
  1118. --\\====================================================//--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement