Advertisement
AOM-GU-PRO

. . .

Oct 28th, 2018
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 107.83 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient()then error("Please run as a server script. Use h/ instead of hl/.")end;print("FE Compatibility: by WaverlyCole");InternalData = {}
  2. do
  3. script.Parent = owner.Character
  4. local Event = Instance.new("RemoteEvent");Event.Name = "UserInput"
  5. local function NewFakeEvent()
  6. local Bind = Instance.new("BindableEvent")
  7. local Fake;Fake = {Connections = {},
  8. fakeEvent=true;
  9. Connect=function(self,Func)
  10. Bind.Event:connect(Func)
  11. self.Connections[Bind] = true
  12. return setmetatable({Connected = true},{
  13. __index = function (self,Index)
  14. if Index:lower() == "disconnect" then
  15. return function() Fake.Connections[Bind] = false;self.Connected = false end
  16. end
  17. return Fake[Index]
  18. end;
  19. __tostring = function() return "Connection" end;
  20. })
  21. end}
  22. Fake.connect = Fake.Connect;return Fake;
  23. end
  24. local Mouse = {Target=nil,Hit=CFrame.new(),KeyUp=NewFakeEvent(),KeyDown=NewFakeEvent(),Button1Up=NewFakeEvent(),Button1Down=NewFakeEvent()}
  25. local UserInputService = {InputBegan=NewFakeEvent(),InputEnded=NewFakeEvent()}
  26. local ContextActionService = {Actions={},BindAction = function(self,actionName,Func,touch,...)
  27. self.Actions[actionName] = Func and {Name=actionName,Function=Func,Keys={...}} or nil
  28. end};ContextActionService.UnBindAction = ContextActionService.BindAction
  29. local function TriggerEvent(self,Event,...)
  30. local Trigger = Mouse[Event]
  31. if Trigger and Trigger.fakeEvent and Trigger.Connections then
  32. for Connection,Active in pairs(Trigger.Connections) do if Active then Connection:Fire(...) end end
  33. end
  34. end
  35. Mouse.TrigEvent = TriggerEvent;UserInputService.TrigEvent = TriggerEvent
  36. Event.OnServerEvent:Connect(function(FiredBy,Input)
  37. if FiredBy.Name ~= owner.Name then return end
  38. if Input.MouseEvent then
  39. Mouse.Target = Input.Target;Mouse.Hit = Input.Hit
  40. else
  41. local Begin = Input.UserInputState == Enum.UserInputState.Begin
  42. if Input.UserInputType == Enum.UserInputType.MouseButton1 then return Mouse:TrigEvent(Begin and "Button1Down" or "Button1Up") end
  43. for _,Action in pairs(ContextActionService.Actions) do
  44. for _,Key in pairs(Action.Keys) do if Key==Input.KeyCode then Action.Function(Action.Name,Input.UserInputState,Input) end end
  45. end
  46. Mouse:TrigEvent(Begin and "KeyDown" or "KeyUp",Input.KeyCode.Name:lower())
  47. UserInputService:TrigEvent(Begin and "InputBegan" or "InputEnded",Input,false)
  48. end
  49. end)
  50. InternalData["Mouse"] = Mouse;InternalData["ContextActionService"] = ContextActionService;InternalData["UserInputService"] = UserInputService
  51. Event.Parent = NLS([[
  52. local Player = owner;local Event = script:WaitForChild("UserInput");local UserInputService = game:GetService("UserInputService");local Mouse = Player:GetMouse()
  53. local Input = function(Input,gameProcessedEvent)
  54. if gameProcessedEvent then return end
  55. Event:FireServer({KeyCode=Input.KeyCode,UserInputType=Input.UserInputType,UserInputState=Input.UserInputState})
  56. end
  57. UserInputService.InputBegan:Connect(Input);UserInputService.InputEnded:Connect(Input)
  58. local Hit,Target
  59. while wait(1/30) do
  60. if Hit ~= Mouse.Hit or Target ~= Mouse.Target then
  61. Hit,Target = Mouse.Hit,Mouse.Target;Event:FireServer({["MouseEvent"]=true,["Target"]=Target,["Hit"]=Hit})
  62. end
  63. end
  64. ]],owner.Character)
  65. end
  66. RealGame = game;game = setmetatable({},{
  67. __index = function (self,Index)
  68. local Sandbox = function (Thing)
  69. if Thing:IsA("Player") then
  70. local RealPlayer = Thing
  71. return setmetatable({},{
  72. __index = function (self,Index)
  73. local Type = type(RealPlayer[Index])
  74. if Type == "function" then
  75. if Index:lower() == "getmouse" or Index:lower() == "mouse" then
  76. return function (self)return InternalData["Mouse"] end
  77. end
  78. return function (self,...)return RealPlayer[Index](RealPlayer,...) end
  79. end
  80. return RealPlayer[Index]
  81. end;
  82. __tostring = function(self) return RealPlayer.Name end
  83. })
  84. end
  85. end
  86. if RealGame[Index] then
  87. local Type = type(RealGame[Index])
  88. if Type == "function" then
  89. if Index:lower() == "getservice" or Index:lower() == "service" then
  90. return function (self,Service)
  91. local FakeServices = {
  92. ["players"] = function()
  93. return setmetatable({},{
  94. __index = function (self2,Index2)
  95. local RealService = RealGame:GetService(Service)
  96. local Type2 = type(Index2)
  97. if Type2 == "function" then
  98. return function (self,...) return RealService[Index2](RealService,...)end
  99. else
  100. if Index2:lower() == "localplayer" then return Sandbox(owner) end
  101. return RealService[Index2]
  102. end
  103. end;
  104. __tostring = function(self) return RealGame:GetService(Service).Name end
  105. })
  106. end;
  107. ["contextactionservice"] = function() return InternalData["ContextActionService"] end;
  108. ["userinputservice"] = function() return InternalData["UserInputService"] end;
  109. ["runservice"] = function()
  110. return setmetatable({},{
  111. __index = function(self2,Index2)
  112. local RealService = RealGame:GetService(Service)
  113. local Type2 = type(Index2)
  114. if Type2 == "function" then
  115. return function (self,...) return RealService[Index2](RealService,...) end
  116. else
  117. local RunServices = {
  118. ["bindtorenderstep"] = function() return function (self,Name,Priority,Function) return RealGame:GetService("RunService").Stepped:Connect(Function) end end;
  119. ["renderstepped"] = function() return RealService["Stepped"] end
  120. }
  121. if RunServices[Index2:lower()] then return RunServices[Index2:lower()]() end
  122. return RealService[Index2]
  123. end
  124. end
  125. })
  126. end
  127. }
  128. if FakeServices[Service:lower()] then return FakeServices[Service:lower()]() end
  129. return RealGame:GetService(Service)
  130. end
  131. end
  132. return function (self,...) return RealGame[Index](RealGame,...) end
  133. else
  134. if game:GetService(Index) then return game:GetService(Index) end
  135. return RealGame[Index]
  136. end
  137. end
  138. return nil
  139. end
  140. });Game = game;owner = game:GetService("Players").LocalPlayer;script = Instance.new("Script");print("Complete! Running...")
  141.  
  142. Player = game:GetService("Players").LocalPlayer
  143. PlayerGui = Player.PlayerGui
  144. Cam = workspace.CurrentCamera
  145. Backpack = Player.Backpack
  146. Character = Player.Character
  147. Humanoid = Character.Humanoid
  148. Mouse = Player:GetMouse()
  149. RootPart = Character["HumanoidRootPart"]
  150. Torso = Character["Torso"]
  151. Head = Character["Head"]
  152. RightArm = Character["Right Arm"]
  153. LeftArm = Character["Left Arm"]
  154. RightLeg = Character["Right Leg"]
  155. LeftLeg = Character["Left Leg"]
  156. RootJoint = RootPart["RootJoint"]
  157. Neck = Torso["Neck"]
  158. RightShoulder = Torso["Right Shoulder"]
  159. LeftShoulder = Torso["Left Shoulder"]
  160. RightHip = Torso["Right Hip"]
  161. LeftHip = Torso["Left Hip"]
  162. local TIME = 0
  163. local sick = Instance.new("Sound",Torso)
  164.  
  165. IT = Instance.new
  166. CF = CFrame.new
  167. VT = Vector3.new
  168. RAD = math.rad
  169. C3 = Color3.new
  170. UD2 = UDim2.new
  171. BRICKC = BrickColor.new
  172. ANGLES = CFrame.Angles
  173. EULER = CFrame.fromEulerAnglesXYZ
  174. COS = math.cos
  175. ACOS = math.acos
  176. SIN = math.sin
  177. ASIN = math.asin
  178. ABS = math.abs
  179. MRANDOM = math.random
  180. FLOOR = math.floor
  181. local RWINGS = {}
  182. local LWINGS = {}
  183. local GunPoint
  184. Player_Size = 1
  185.  
  186. -- Thingy To Make Song Work
  187.  
  188. p = game.Players.LocalPlayer
  189. char = p.Character
  190.  
  191. ---------------------------[[[ LOOPED SONG ]]]--------------------------
  192. local s = Instance.new("Sound",char)
  193. s.Name = "BGMusic"
  194. s.SoundId = "rbxassetid://1380840997"
  195. s.Pitch = 1
  196. s.Volume = 40
  197. s.Looped = true
  198. s.archivable = false
  199. s.Parent = char.Head
  200. wait(0.1)
  201. s:play()
  202.  
  203. -- Rest of Script
  204. -- Want To Use This For Scripts With No Songs? Go Ahead Copy This InfiniteOneWithdank created the looped song thing that is in here anyways.
  205.  
  206.  
  207. --//=================================\\
  208. --|| USEFUL VALUES
  209. --\\=================================//
  210.  
  211. Animation_Speed = 1.5
  212. local FORCERESET = false
  213. Frame_Speed = 1 / 60 -- (1 / 30) OR (1 / 60)
  214. local Speed = 16
  215. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  216. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  217. local RIGHTSHOULDERC0 = CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  218. local LEFTSHOULDERC0 = CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  219. local DAMAGEMULTIPLIER = 1
  220. local ANIM = "Idle"
  221. local ATTACK = false
  222. local EQUIPPED = false
  223. local HOLD = false
  224. local COMBO = 1
  225. local Rooted = false
  226. local SINE = 0
  227. local KEYHOLD = false
  228. local CHANGE = 2 / Animation_Speed
  229. local WALKINGANIM = false
  230. local VALUE1 = false
  231. local VALUE2 = false
  232. local ROBLOXIDLEANIMATION = IT("Animation")
  233. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  234. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  235. --ROBLOXIDLEANIMATION.Parent = Humanoid
  236. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  237. WEAPONGUI.Name = "BanishV3Gui"
  238. local Weapon = IT("Model")
  239. Weapon.Name = "Adds"
  240. local Effects = IT("Folder", Weapon)
  241. Effects.Name = "Effects"
  242. local ANIMATOR = Humanoid.Animator
  243. local ANIMATE = Character:FindFirstChild("Animate")
  244. local UNANCHOR = true
  245. local TOBANISH = {}
  246. script.Parent = PlayerGui
  247.  
  248. function StatLabel(CFRAME, TEXT, COLOR)
  249. local STATPART = CreatePart(3, Effects, "SmoothPlastic", 0, 1, "Really black", "Effect", VT())
  250. STATPART.CFrame = CF(CFRAME.p,CFRAME.p+VT(MRANDOM(-5,5),MRANDOM(0,5),MRANDOM(-5,5)))
  251. local BODYGYRO = IT("BodyGyro", STATPART)
  252. game:GetService("Debris"):AddItem(STATPART ,5)
  253. local BILLBOARDGUI = Instance.new("BillboardGui", STATPART)
  254. BILLBOARDGUI.Adornee = STATPART
  255. BILLBOARDGUI.Size = UD2(2.5, 0, 2.5 ,0)
  256. BILLBOARDGUI.StudsOffset = VT(-2, 2, 0)
  257. BILLBOARDGUI.AlwaysOnTop = false
  258. local TEXTLABEL = Instance.new("TextLabel", BILLBOARDGUI)
  259. TEXTLABEL.BackgroundTransparency = 1
  260. TEXTLABEL.Size = UD2(2.5, 0, 2.5, 0)
  261. TEXTLABEL.Text = TEXT
  262. TEXTLABEL.Font = SKILLFONT
  263. TEXTLABEL.FontSize="Size42"
  264. TEXTLABEL.TextColor3 = COLOR
  265. TEXTLABEL.TextStrokeTransparency = 0
  266. TEXTLABEL.TextScaled = true
  267. TEXTLABEL.TextWrapped = true
  268. coroutine.resume(coroutine.create(function(THEPART, THEBODYPOSITION, THETEXTLABEL)
  269. for i = 1, 50 do
  270. Swait()
  271. STATPART.CFrame = STATPART.CFrame * CF(0,0,-0.2)
  272. TEXTLABEL.TextTransparency = TEXTLABEL.TextTransparency + (1/50)
  273. TEXTLABEL.TextStrokeTransparency = TEXTLABEL.TextTransparency
  274. end
  275. THEPART.Parent = nil
  276. end),STATPART, TEXTLABEL)
  277. end
  278.  
  279. --//=================================\\
  280. --\\=================================//
  281.  
  282.  
  283. --//=================================\\
  284. --|| SAZERENOS' ARTIFICIAL HEARTBEAT
  285. --\\=================================//
  286.  
  287. ArtificialHB = Instance.new("BindableEvent", script)
  288. ArtificialHB.Name = "ArtificialHB"
  289.  
  290. script:WaitForChild("ArtificialHB")
  291.  
  292. frame = Frame_Speed
  293. tf = 0
  294. allowframeloss = false
  295. tossremainder = false
  296. lastframe = tick()
  297. script.ArtificialHB:Fire()
  298.  
  299. game:GetService("RunService").Heartbeat:connect(function(s, p)
  300. tf = tf + s
  301. if tf >= frame then
  302. if allowframeloss then
  303. script.ArtificialHB:Fire()
  304. lastframe = tick()
  305. else
  306. for i = 1, math.floor(tf / frame) do
  307. script.ArtificialHB:Fire()
  308. end
  309. lastframe = tick()
  310. end
  311. if tossremainder then
  312. tf = 0
  313. else
  314. tf = tf - frame * math.floor(tf / frame)
  315. end
  316. end
  317. end)
  318.  
  319. --//=================================\\
  320. --\\=================================//
  321.  
  322. --//=================================\\
  323. --|| SOME TAG EDIT
  324. --\\=================================//
  325.  
  326. m = game.Players.LocalPlayer
  327. char = m.Character
  328. local txt = Instance.new("BillboardGui", char)
  329. txt.Adornee = char.Head
  330. txt.Name = "_status"
  331. txt.Size = UDim2.new(2, 0, 1.2, 0)
  332. txt.StudsOffset = Vector3.new(-9, 8, 0)
  333. local text = Instance.new("TextLabel", txt)
  334. text.Size = UDim2.new(10, 0, 7, 0)
  335. text.FontSize = "Size24"
  336. text.TextScaled = true
  337. text.TextTransparency = 0
  338. text.BackgroundTransparency = 1
  339. text.TextTransparency = 0
  340. text.TextStrokeTransparency = 0
  341. text.Font = "Bodoni"
  342. text.TextStrokeColor3 = Color3.new(0, 0, 0)
  343. v = Instance.new("Part")
  344. v.Name = "ColorBrick"
  345. v.Parent = m.Character
  346. v.FormFactor = "Symmetric"
  347. v.Anchored = true
  348. v.CanCollide = false
  349. v.BottomSurface = "Smooth"
  350. v.TopSurface = "Smooth"
  351. v.Size = Vector3.new(10, 5, 3)
  352. v.Transparency = 1
  353. v.CFrame = char.Torso.CFrame
  354. v.BrickColor = BrickColor.new("Really black")
  355. v.Transparency = 1
  356. v.Shape = "Block"
  357. spawn(function()
  358. local TweenService = game:GetService("TweenService")
  359. local Colours = {Color3.fromRGB(255,0,0),Color3.fromRGB(255,128,0),Color3.fromRGB(255,255,0),Color3.fromRGB(0,255,0),Color3.fromRGB(0,255,255),Color3.fromRGB(0,0,255),Color3.fromRGB(191,0,255),Color3.fromRGB(255,0,191)}
  360. local Int = 0
  361. while wait(0.5) do
  362. if Int == #Colours then Int = 0 end
  363. Int = Int+1
  364. TweenService:Create(text,TweenInfo.new(1),{TextColor3 = Colours[Int]}):Play()
  365. end
  366. end)
  367. text.Text = "GGEZ"
  368. wait(2)
  369. text.Text = "RBS"
  370. wait(3)
  371. text.Text = "BY:aomFetty"
  372. wait(2)
  373. text.Text = ". . ."
  374.  
  375. --//=================================\\
  376. --\\=================================//
  377.  
  378. --//=================================\\
  379. --|| SOME FUNCTIONS
  380. --\\=================================//
  381.  
  382. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  383. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  384. end
  385.  
  386. function PositiveAngle(NUMBER)
  387. if NUMBER >= 0 then
  388. NUMBER = 0
  389. end
  390. return NUMBER
  391. end
  392.  
  393. function NegativeAngle(NUMBER)
  394. if NUMBER <= 0 then
  395. NUMBER = 0
  396. end
  397. return NUMBER
  398. end
  399.  
  400. function CreateWave(SIZE, WAIT, CFRAME, DOESROT, ROT, COLOR, GROW)
  401. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(0, 0, 0))
  402. local mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "20329976", "", SIZE, VT(0, 0, -SIZE.X / 8))
  403. wave.CFrame = CFRAME
  404. coroutine.resume(coroutine.create(function(PART)
  405. for i = 1, WAIT do
  406. Swait()
  407. mesh.Scale = mesh.Scale + GROW
  408. mesh.Offset = VT(0, 0, -(mesh.Scale.X / 8))
  409. if DOESROT == true then
  410. wave.CFrame = wave.CFrame * CFrame.fromEulerAnglesXYZ(0, ROT, 0)
  411. end
  412. wave.Transparency = wave.Transparency + 0.5 / WAIT
  413. if wave.Transparency > 0.99 then
  414. wave:remove()
  415. end
  416. end
  417. end))
  418. end
  419.  
  420. function AddChildrenToTable(FROM, PARENT, DIST, TABLE)
  421. for _, c in pairs(PARENT:GetChildren()) do
  422. if c.ClassName == "Model" then
  423. if c ~= Character and c:FindFirstChildOfClass("Humanoid") and (c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")) then
  424. local HUMANOID = c:FindFirstChildOfClass("Humanoid")
  425. local TORSO = c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso")
  426. if DIST > (TORSO.Position - FROM).Magnitude then
  427. table.insert(TABLE, c)
  428. end
  429. AddChildrenToTable(FROM, c, DIST, TABLE)
  430. elseif c.ClassName == "Folder" then
  431. AddChildrenToTable(FROM, c, DIST, TABLE)
  432. end
  433. end
  434. end
  435. end
  436.  
  437. function Slice(KIND, SIZE, WAIT, CFRAME, COLOR, GROW)
  438. local wave = CreatePart(3, Effects, "Neon", 0, 0.5, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
  439. local mesh
  440. if KIND == "Base" then
  441. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "448386996", "", VT(0, SIZE / 10, SIZE / 10), VT(0, 0, 0))
  442. elseif KIND == "Thin" then
  443. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662586858", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
  444. elseif KIND == "Round" then
  445. mesh = CreateMesh("SpecialMesh", wave, "FileMesh", "662585058", "", VT(SIZE / 10, 0, SIZE / 10), VT(0, 0, 0))
  446. end
  447. wave.CFrame = CFRAME
  448. coroutine.resume(coroutine.create(function(PART)
  449. for i = 1, WAIT do
  450. Swait()
  451. mesh.Scale = mesh.Scale + GROW / 10
  452. wave.Transparency = wave.Transparency + 0.5 / WAIT
  453. if wave.Transparency > 0.99 then
  454. wave:remove()
  455. end
  456. end
  457. end))
  458. end
  459.  
  460. function MagicSphere(SIZE, WAIT, CFRAME, COLOR, GROW)
  461. local wave = CreatePart(3, Effects, "Neon", 0, 0, BRICKC(COLOR), "Effect", VT(1, 1, 1), true)
  462. local mesh = CreateMesh("SpecialMesh", wave, "Sphere", "", "", SIZE, VT(0, 0, 0))
  463. wave.CFrame = CFRAME
  464. coroutine.resume(coroutine.create(function(PART)
  465. for i = 1, WAIT do
  466. Swait()
  467. mesh.Scale = mesh.Scale + GROW
  468. wave.Transparency = wave.Transparency + 1 / WAIT
  469. if wave.Transparency > 0.99 then
  470. wave:remove()
  471. end
  472. end
  473. end))
  474. end
  475.  
  476. function SHAKECAM(POSITION, RANGE, INTENSITY, TIME)
  477. local TORSO = Torso
  478. local HUM = Humanoid
  479. if TORSO and RANGE >= (TORSO.Position - POSITION).Magnitude then
  480. coroutine.wrap(function()
  481. VT = Vector3.new
  482. MRANDOM = math.random
  483. local A = TIME
  484. local B = INTENSITY
  485. local C = true
  486. local HUMANOID = Humanoid
  487. local TIMER = A or 35
  488. local SHAKE = B or 5
  489. local FADE = C or true
  490. if HUMANOID then
  491. local FADER = SHAKE / TIMER
  492. for i = 1, TIMER do
  493. wait()
  494. HUMANOID.CameraOffset = VT(MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10, MRANDOM(-(SHAKE - FADER * i), SHAKE - FADER * i) / 10)
  495. end
  496. HUMANOID.CameraOffset = VT(0, 0, 0)
  497. end
  498.  
  499. end)()
  500. end
  501. end
  502.  
  503. function Effect(data)
  504. local FX = data.Effect or 'ResizeAndFade'
  505. local Parent = data.Parent or Effects
  506. local Color = data.Color or C3.N(0,0,0)
  507. local Size = data.Size or V3.N(1,1,1)
  508. local MoveDir = data.MoveDirection or nil
  509. local MeshData = data.Mesh or nil
  510. local SndData = data.Sound or nil
  511. local Frames = data.Frames or 45
  512. local Manual = data.Manual or nil
  513. local Material = data.Material or nil
  514. local CFra = data.CFrame or Torso.CFrame
  515. local Settings = data.FXSettings or {}
  516. local Snd,Prt,Msh;
  517. local Shape = data.Shape or Enum.PartType.Block
  518. coroutine.resume(coroutine.create(function()
  519. if(Manual and typeof(Manual) == 'Instance' and Manual:IsA'BasePart')then
  520. Prt = Manual
  521. else
  522. Prt = Part(Parent,Color,Material,Size,CFra,true,false)
  523. Prt.Shape = Shape
  524. end
  525. if(typeof(MeshData) == 'table')then
  526. Msh = Mesh(Prt,MeshData.MeshType,MeshData.MeshId,MeshData.TextureId,MeshData.Scale,MeshData.Offset)
  527. elseif(typeof(MeshData) == 'Instance')then
  528. Msh = MeshData:Clone()
  529. Msh.Parent = Prt
  530. elseif(Shape == Enum.PartType.Block)then
  531. Msh = Mesh(Prt,Enum.MeshType.Brick)
  532. end
  533. if(typeof(SndData) == 'table' or typeof(SndData) == 'Instance')then
  534. Snd = Sound(Prt,SndData.SoundId,SndData.Pitch,SndData.Volume,false,false,true)
  535. end
  536. if(Snd)then
  537. repeat wait() until Snd.Playing and Snd.IsLoaded and Snd.TimeLength > 0
  538. Frames = Snd.TimeLength * Frame_Speed/Snd.Pitch
  539. end
  540. local MoveSpeed = nil;
  541. if(MoveDir)then
  542. MoveSpeed = (CFra.p - MoveDir).magnitude/Frames
  543. end
  544. local Inc = M.RNG()-M.RNG()
  545. local Thingie = 0
  546. local Thingie2 = M.RNG(50,100)/100
  547. if(FX ~= 'Arc')then
  548. for i = 1, Frames do
  549. if(swait and typeof(swait) == 'function')then
  550. swait()
  551. else
  552. wait()
  553. end
  554. if(FX == 'ResizeAndFade')then
  555. if(not Settings.EndSize)then
  556. Settings.EndSize = V3.N(0,0,0)
  557. end
  558. local grow = (typeof(Settings.EndSize) == 'Vector3' and Settings.EndSize+Size or typeof(Settings.EndSize) == 'number' and V3.N(Settings.EndSize))
  559. if(Settings.EndIsIncrement)then
  560. Prt.Size = Prt.Size + Settings.EndSize
  561. else
  562. Prt.Size = Prt.Size - grow/Frames
  563. end
  564. Prt.Transparency = (i/Frames)
  565. elseif(FX == 'Fade')then
  566. Prt.Transparency = (i/Frames)
  567. end
  568.  
  569. if(Settings.RandomizeCFrame)then
  570. Prt.CFrame = Prt.CFrame * CF.A(M.RRNG(-360,360),M.RRNG(-360,360),M.RRNG(-360,360))
  571. end
  572. if(MoveDir and MoveSpeed)then
  573. local Orientation = Prt.Orientation
  574. Prt.CFrame = CF.N(Prt.Position,MoveDir)*CF.N(0,0,-MoveSpeed)
  575. Prt.Orientation = Orientation
  576. end
  577. end
  578. Prt:destroy()
  579. else
  580. local start,third,fourth,endP = Settings.Start,Settings.Third,Settings.Fourth,Settings.End
  581. if(not Settings.End and Settings.Home)then endP = Settings.Home.CFrame end
  582. local quarter = third or start:lerp(endP, 0.25) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  583. local threequarter = fourth or start:lerp(endP, 0.75) * CF.N(M.RNG(-25,25),M.RNG(0,25),M.RNG(-25,25))
  584. assert(start ~= nil,"You need to specify a start point!")
  585. assert(endP ~= nil,"You need to specify an end point!")
  586. for i = 0, 1, Settings.Speed or 0.01 do
  587. if(swait and typeof(swait) == 'function')then
  588. swait()
  589. else
  590. wait()
  591. end
  592. if(Settings.Home)then
  593. endP = Settings.Home.CFrame
  594. end
  595. Prt.CFrame = Bezier(start, quarter, threequarter, endP, i)
  596. end
  597. if(Settings.RemoveOnGoal)then
  598. Prt:destroy()
  599. end
  600. end
  601. end))
  602. return Prt,Msh,Snd
  603. end
  604.  
  605. function RightWing()
  606. for i = 1, 2 do
  607. local PART
  608. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  609. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Wing, CF(0.8, 0.75 - 0.25 * i, 1) * ANGLES(RAD(0), RAD(-15 * i), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(-30 * i)), CF(0, 0, 0))
  610. table.insert(RWINGS, WingWeld)
  611. PART = Wing
  612. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "LargeWing", VT(1, 1.7, 1), false)
  613. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.5, 0) * ANGLES(RAD(15), RAD(25), RAD(0)), CF(0, -0.8, 0))
  614. PART = Wing
  615. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  616. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.9, 0) * ANGLES(RAD(-8), RAD(0), RAD(0)), CF(0, 0, 0))
  617. local Wing1 = CreatePart(3, Weapon, "Marble", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.2, 0.51), false)
  618. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.5, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
  619. PART = Wing
  620. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
  621. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), CF(0, 0, 0))
  622. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.8, 0.15, 0.15), false)
  623. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.7, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  624. local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark orange", "WingPart", VT(0.25, 0.2, 0.25), false)
  625. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
  626. PART = Wing
  627. table.insert(RWINGS, WingWeld)
  628. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.4, 0.5, 0.4), false)
  629. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(15)), CF(0, 0, 0))
  630. local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark indigo", "WingPart", VT(0.45, 0.2, 0.45), false)
  631. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
  632. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.15, 0.15), false)
  633. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
  634. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
  635. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(-0.8, 0, 0))
  636. PART = Wing
  637. table.insert(RWINGS, WingWeld)
  638. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
  639. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(-0.18, 0.25, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
  640. PART = Wing
  641. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  642. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.55, 0) * ANGLES(RAD(-15), RAD(15), RAD(15)), CF(0, 0, 0))
  643. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.3, 0.3), false)
  644. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(15)), CF(0, 0, 0))
  645. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(1, 0.2, 0.2), false)
  646. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(-0.8, 0.15, 0))
  647. PART = Wing
  648. table.insert(RWINGS, WingWeld)
  649. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "WingPart", VT(1, 1, 1), false)
  650. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0.4, 0.95, 0) * ANGLES(RAD(-5), RAD(0), RAD(15)), CF(0, 0, 0))
  651. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(0.3, 0.3, 0.3), false)
  652. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, -0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  653. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.7, 0.7, 0.7), false)
  654. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.2) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
  655. local Wing1 = CreatePart(3, Weapon, "Neon", 0, 0, "Burgundy", "WingPart", VT(0.45, 0.45, 0.45), false)
  656. table.insert(EYES, Wing1)
  657. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.35) * ANGLES(RAD(0), RAD(0), RAD(-35)), CF(0, 0, 0))
  658. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
  659. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0.8, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(25)), CF(0, 0, 0))
  660. PART = Wing
  661. table.insert(RWINGS, WingWeld)
  662. end
  663. BODY = {}
  664. for _, c in pairs(Character:GetDescendants()) do
  665. if c:IsA("BasePart") then
  666. table.insert(BODY, {
  667. c,
  668. c.Parent,
  669. c.Material,
  670. c.Color
  671. })
  672. elseif c:IsA("JointInstance") then
  673. table.insert(BODY, {
  674. c,
  675. c.Parent,
  676. nil,
  677. nil
  678. })
  679. end
  680. end
  681. end
  682. function LeftWing()
  683. for i = 1, 2 do
  684. local PART
  685. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  686. local WingWeld = CreateWeldOrSnapOrMotor("Weld", Torso, Torso, Wing, CF(-0.8, 0.75 - 0.25 * i, 1) * ANGLES(RAD(0), RAD(15 * i), RAD(0)) * ANGLES(RAD(0), RAD(0), RAD(30 * i)), CF(0, 0, 0))
  687. table.insert(LWINGS, WingWeld)
  688. PART = Wing
  689. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "LargeWing", VT(1, 1.7, 1), false)
  690. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.5, 0) * ANGLES(RAD(15), RAD(-25), RAD(0)), CF(0, -0.8, 0))
  691. PART = Wing
  692. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  693. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.9, 0) * ANGLES(RAD(-8), RAD(0), RAD(0)), CF(0, 0, 0))
  694. local Wing1 = CreatePart(3, Weapon, "Marble", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.2, 0.51), false)
  695. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.5, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
  696. PART = Wing
  697. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
  698. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(0)), CF(0, 0, 0))
  699. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.8, 0.15, 0.15), false)
  700. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.7, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  701. local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark orange", "WingPart", VT(0.25, 0.2, 0.25), false)
  702. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
  703. PART = Wing
  704. table.insert(LWINGS, WingWeld)
  705. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.4, 0.5, 0.4), false)
  706. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.65, 0) * ANGLES(RAD(-5), RAD(0), RAD(-15)), CF(0, 0, 0))
  707. local Wing1 = CreatePart(3, Weapon, "Cobblestone", 0, 0, "Dark indigo", "WingPart", VT(0.45, 0.2, 0.45), false)
  708. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, 0), CF(0, 0, 0))
  709. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.15, 0.15), false)
  710. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
  711. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
  712. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0.8, 0, 0))
  713. PART = Wing
  714. table.insert(LWINGS, WingWeld)
  715. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.2, 0.5, 0.2), false)
  716. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0.18, 0.25, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
  717. PART = Wing
  718. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.5, 0.5, 0.5), false)
  719. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(0, 0.55, 0) * ANGLES(RAD(-15), RAD(-15), RAD(-15)), CF(0, 0, 0))
  720. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.3, 0.3), false)
  721. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, 0, 0) * ANGLES(RAD(0), RAD(0), RAD(-15)), CF(0, 0, 0))
  722. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(1, 0.2, 0.2), false)
  723. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-1, 0.1, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0.8, 0.15, 0))
  724. PART = Wing
  725. table.insert(LWINGS, WingWeld)
  726. local Wing = CreatePart(3, Weapon, "Granite", 0, 0, "Maroon", "WingPart", VT(1, 1, 1), false)
  727. local WingWeld = CreateWeldOrSnapOrMotor("Weld", PART, PART, Wing, CF(-0.4, 0.95, 0) * ANGLES(RAD(-5), RAD(0), RAD(-15)), CF(0, 0, 0))
  728. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark orange", "WingPart", VT(0.3, 0.3, 0.3), false)
  729. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, -0.5, 0) * ANGLES(RAD(0), RAD(0), RAD(0)), CF(0, 0, 0))
  730. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(0.7, 0.7, 0.7), false)
  731. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.2) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, 0, 0))
  732. local Wing1 = CreatePart(3, Weapon, "Neon", 0, 0, "Burgundy", "WingPart", VT(0.45, 0.45, 0.45), false)
  733. table.insert(EYES, Wing1)
  734. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(0, 0, -0.35) * ANGLES(RAD(0), RAD(0), RAD(35)), CF(0, 0, 0))
  735. local Wing1 = CreatePart(3, Weapon, "Granite", 0, 0, "Dark stone grey", "WingPart", VT(1, 0.1, 0.1), false)
  736. CreateWeldOrSnapOrMotor("Weld", Wing, Wing, Wing1, CF(-0.8, -0.2, 0) * ANGLES(RAD(0), RAD(0), RAD(-25)), CF(0, 0, 0))
  737. PART = Wing
  738. table.insert(LWINGS, WingWeld)
  739. end
  740. BODY = {}
  741. for _, c in pairs(Character:GetDescendants()) do
  742. if c:IsA("BasePart") then
  743. table.insert(BODY, {
  744. c,
  745. c.Parent,
  746. c.Material,
  747. c.Color
  748. })
  749. elseif c:IsA("JointInstance") then
  750. table.insert(BODY, {
  751. c,
  752. c.Parent,
  753. nil,
  754. nil
  755. })
  756. end
  757. end
  758. end
  759.  
  760. function Swait(NUMBER)
  761. if NUMBER == 0 or NUMBER == nil then
  762. ArtificialHB.Event:wait()
  763. else
  764. for i = 1, NUMBER do
  765. ArtificialHB.Event:wait()
  766. end
  767. end
  768. end
  769.  
  770. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  771. local NEWMESH = IT(MESH)
  772. if MESH == "SpecialMesh" then
  773. NEWMESH.MeshType = MESHTYPE
  774. if MESHID ~= "nil" and MESHID ~= "" then
  775. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  776. end
  777. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  778. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  779. end
  780. end
  781. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  782. NEWMESH.Scale = SCALE
  783. NEWMESH.Parent = PARENT
  784. return NEWMESH
  785. end
  786.  
  787. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  788. local NEWPART = IT("Part")
  789. NEWPART.formFactor = FORMFACTOR
  790. NEWPART.Reflectance = REFLECTANCE
  791. NEWPART.Transparency = TRANSPARENCY
  792. NEWPART.CanCollide = false
  793. NEWPART.Locked = true
  794. NEWPART.Anchored = true
  795. if ANCHOR == false then
  796. NEWPART.Anchored = false
  797. end
  798. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  799. NEWPART.Name = NAME
  800. NEWPART.Size = SIZE
  801. NEWPART.Position = Torso.Position
  802. NEWPART.Material = MATERIAL
  803. NEWPART:BreakJoints()
  804. NEWPART.Parent = PARENT
  805. return NEWPART
  806. end
  807.  
  808. local function weldBetween(a, b)
  809. local weldd = Instance.new("ManualWeld")
  810. weldd.Part0 = a
  811. weldd.Part1 = b
  812. weldd.C0 = CFrame.new()
  813. weldd.C1 = b.CFrame:inverse() * a.CFrame
  814. weldd.Parent = a
  815. return weldd
  816. end
  817.  
  818.  
  819. function QuaternionFromCFrame(cf)
  820. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  821. local trace = m00 + m11 + m22
  822. if trace > 0 then
  823. local s = math.sqrt(1 + trace)
  824. local recip = 0.5 / s
  825. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  826. else
  827. local i = 0
  828. if m11 > m00 then
  829. i = 1
  830. end
  831. if m22 > (i == 0 and m00 or m11) then
  832. i = 2
  833. end
  834. if i == 0 then
  835. local s = math.sqrt(m00 - m11 - m22 + 1)
  836. local recip = 0.5 / s
  837. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  838. elseif i == 1 then
  839. local s = math.sqrt(m11 - m22 - m00 + 1)
  840. local recip = 0.5 / s
  841. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  842. elseif i == 2 then
  843. local s = math.sqrt(m22 - m00 - m11 + 1)
  844. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  845. end
  846. end
  847. end
  848.  
  849. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  850. local xs, ys, zs = x + x, y + y, z + z
  851. local wx, wy, wz = w * xs, w * ys, w * zs
  852. local xx = x * xs
  853. local xy = x * ys
  854. local xz = x * zs
  855. local yy = y * ys
  856. local yz = y * zs
  857. local zz = z * zs
  858. 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))
  859. end
  860.  
  861. function QuaternionSlerp(a, b, t)
  862. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  863. local startInterp, finishInterp;
  864. if cosTheta >= 0.0001 then
  865. if (1 - cosTheta) > 0.0001 then
  866. local theta = ACOS(cosTheta)
  867. local invSinTheta = 1 / SIN(theta)
  868. startInterp = SIN((1 - t) * theta) * invSinTheta
  869. finishInterp = SIN(t * theta) * invSinTheta
  870. else
  871. startInterp = 1 - t
  872. finishInterp = t
  873. end
  874. else
  875. if (1 + cosTheta) > 0.0001 then
  876. local theta = ACOS(-cosTheta)
  877. local invSinTheta = 1 / SIN(theta)
  878. startInterp = SIN((t - 1) * theta) * invSinTheta
  879. finishInterp = SIN(t * theta) * invSinTheta
  880. else
  881. startInterp = t - 1
  882. finishInterp = t
  883. end
  884. end
  885. 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
  886. end
  887.  
  888. function Clerp(a, b, t)
  889. local qa = {QuaternionFromCFrame(a)}
  890. local qb = {QuaternionFromCFrame(b)}
  891. local ax, ay, az = a.x, a.y, a.z
  892. local bx, by, bz = b.x, b.y, b.z
  893. local _t = 1 - t
  894. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  895. end
  896.  
  897. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  898. local frame = IT("Frame")
  899. frame.BackgroundTransparency = TRANSPARENCY
  900. frame.BorderSizePixel = BORDERSIZEPIXEL
  901. frame.Position = POSITION
  902. frame.Size = SIZE
  903. frame.BackgroundColor3 = COLOR
  904. frame.BorderColor3 = BORDERCOLOR
  905. frame.Name = NAME
  906. frame.Parent = PARENT
  907. return frame
  908. end
  909.  
  910. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  911. local label = IT("TextLabel")
  912. label.BackgroundTransparency = 1
  913. label.Size = UD2(1, 0, 1, 0)
  914. label.Position = UD2(0, 0, 0, 0)
  915. label.TextColor3 = TEXTCOLOR
  916. label.TextStrokeTransparency = STROKETRANSPARENCY
  917. label.TextTransparency = TRANSPARENCY
  918. label.FontSize = TEXTFONTSIZE
  919. label.Font = TEXTFONT
  920. label.BorderSizePixel = BORDERSIZEPIXEL
  921. label.TextScaled = false
  922. label.Text = TEXT
  923. label.Name = NAME
  924. label.Parent = PARENT
  925. return label
  926. end
  927.  
  928. function NoOutlines(PART)
  929. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  930. end
  931.  
  932. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  933. local NEWWELD = IT(TYPE)
  934. NEWWELD.Part0 = PART0
  935. NEWWELD.Part1 = PART1
  936. NEWWELD.C0 = C0
  937. NEWWELD.C1 = C1
  938. NEWWELD.Parent = PARENT
  939. return NEWWELD
  940. end
  941.  
  942. local S = IT("Sound")
  943. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  944. local NEWSOUND = nil
  945. coroutine.resume(coroutine.create(function()
  946. NEWSOUND = S:Clone()
  947. NEWSOUND.Parent = PARENT
  948. NEWSOUND.Volume = VOLUME
  949. NEWSOUND.Pitch = PITCH
  950. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  951. NEWSOUND:play()
  952. if DOESLOOP == true then
  953. NEWSOUND.Looped = true
  954. else
  955. repeat wait(1) until NEWSOUND.Playing == false or NEWSOUND.Parent ~= PARENT
  956. NEWSOUND:remove()
  957. end
  958. end))
  959. return NEWSOUND
  960. end
  961.  
  962. function CFrameFromTopBack(at, top, back)
  963. local right = top:Cross(back)
  964. 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)
  965. end
  966.  
  967. --Lightning({Material = "Neon", FadeIn = false, Color = C3(1,1,1), Start = Torso.Position, End = Mouse.Hit.p, SegmentL = 2, Thickness = 0.1, DoesFade = false, Ignore = Character, MaxDist = 400, Branches = false, FadeTime = 15, Thicken = false})
  968. function Lightning(Table)
  969. local Color = Table.Color or C3(1,1,1)
  970. local StartPos = Table.Start or Torso.Position
  971. local EndPos = Table.End or Mouse.Hit.p
  972. local SegmentLength = Table.SegmentL or 2
  973. local Thickness = Table.Thickness or 0.1
  974. local Dissapear = Table.DoesFade or false
  975. local Parent = Table.Ignore or Character
  976. local MaxDist = Table.MaxDist or 400
  977. local Branches = Table.Branches or false
  978. local Thicken = Table.Thicken or false
  979. local FadeTime = Table.FadeTime or 15
  980. local FadeIn = Table.FadeIn or false
  981. local Material = Table.Material or "Neon"
  982. local HIT,HITPOS = CastProperRay(StartPos, EndPos, MaxDist, Parent)
  983. local DISTANCE = math.ceil((StartPos - HITPOS).Magnitude/((SegmentLength/SegmentLength)/1.5))
  984. local LIGHTNINGMODEL = IT("Model",Effects)
  985. LIGHTNINGMODEL.Name = "Lightning"
  986. local LastBolt = nil
  987. for E = 1, DISTANCE do
  988. local ExtraSize = 0
  989. if Thicken == true then
  990. ExtraSize = (DISTANCE-E)/15
  991. end
  992. local TRANSPARENCY = 0
  993. if FadeIn == true then
  994. TRANSPARENCY = 1-(E/(DISTANCE/1.5))
  995. if TRANSPARENCY < 0 then
  996. TRANSPARENCY = 0
  997. end
  998. end
  999. local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "LightningPart"..E, VT(Thickness+ExtraSize,SegmentLength,Thickness+ExtraSize))
  1000. PART.Color = Color
  1001. MakeForm(PART,"Cyl")
  1002. if LastBolt == nil then
  1003. PART.CFrame = CF(StartPos,HITPOS)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1004. else
  1005. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,CF(HITPOS)*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))*CF(0,0,DISTANCE-E).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1006. end
  1007. LastBolt = PART
  1008. if Branches == true and E < (DISTANCE-5) then
  1009. local CHOICE = MRANDOM(1,7+((DISTANCE-E)*2))
  1010. if CHOICE == 1 then
  1011. local LASTBRANCH = nil
  1012. for i = 1, MRANDOM(2,5) do
  1013. local ExtraSize2 = 0
  1014. if Thicken == true then
  1015. ExtraSize = ((DISTANCE-E)/25)/i
  1016. end
  1017. local PART = CreatePart(3, LIGHTNINGMODEL, Material, 0, TRANSPARENCY, BRICKC("Pearl"), "Branch"..E.."-"..i, VT(Thickness+ExtraSize2,SegmentLength,Thickness+ExtraSize2))
  1018. PART.Color = Color
  1019. MakeForm(PART,"Cyl")
  1020. if LASTBRANCH == nil then
  1021. PART.CFrame = CF(LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0).p,LastBolt.CFrame*CF(0,-LastBolt.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*7,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1022. else
  1023. PART.CFrame = CF(LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0).p,LASTBRANCH.CFrame*CF(0,-LASTBRANCH.Size.Y/2,0)*ANGLES(RAD(0),RAD(0),RAD(MRANDOM(0,360)))*CF(0,Thickness*3,0)*CF(0,0,-1).p)*ANGLES(RAD(90),RAD(0),RAD(0))*CF(0,-PART.Size.Y/2,0)
  1024. end
  1025. LASTBRANCH = PART
  1026. end
  1027. end
  1028. end
  1029. end
  1030. if Dissapear == true then
  1031. coroutine.resume(coroutine.create(function()
  1032. for i = 1, FadeTime do
  1033. Swait()
  1034. for _, c in pairs(LIGHTNINGMODEL:GetChildren()) do
  1035. if c.ClassName == "Part" then
  1036. c.Transparency = c.Transparency + (i/FadeTime)/10
  1037. end
  1038. end
  1039. end
  1040. LIGHTNINGMODEL:remove()
  1041. end))
  1042. elseif Dissapear == false then
  1043. Debris:AddItem(LIGHTNINGMODEL,0.1)
  1044. end
  1045. return {Hit = HIT,Pos = HITPOS,End = LastBolt.CFrame*CF(0,0,-LastBolt.Size.Z).p,LastBolt = LastBolt,Model = LIGHTNINGMODEL}
  1046. end
  1047.  
  1048. --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})
  1049. local cR=255
  1050. local cG=0
  1051. local cB=0
  1052. local flg5=1 local omgidk=1
  1053. local add=15
  1054. game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
  1055. if omgidk>10000 then omgidk=0 end
  1056. omgidk=omgidk+1
  1057. if cR>=255 then flg5=1 end
  1058. if cG>=255 then flg5=2 end
  1059. if cB>=255 then flg5=3 end
  1060. if flg5==1 then cR=cR-add cG=cG+add end
  1061. if flg5==2 then cG=cG-add cB=cB+add end
  1062. if flg5==3 then cB=cB-add cR=cR+add end
  1063. color=Color3.fromRGB(cR,cG,cB)
  1064. function WACKYEFFECT(Table)
  1065. local TYPE = (Table.EffectType or "Sphere")
  1066. local SIZE = (Table.Size or VT(6,6,6))
  1067. local ENDSIZE = (Table.Size2 or VT(7,7,7))
  1068. local TRANSPARENCY = (Table.Transparency or 0)
  1069. local ENDTRANSPARENCY = (Table.Transparency2 or 1)
  1070. local CFRAME = (Table.CFrame or Torso.CFrame)
  1071. local MOVEDIRECTION = (Table.MoveToPos or nil)
  1072. local ROTATION1 = (Table.RotationX or 0)
  1073. local ROTATION2 = (Table.RotationY or 0)
  1074. local ROTATION3 = (Table.RotationZ or 0)
  1075. local MATERIAL = "Neon"
  1076. local COLOR = color
  1077. local TIME = (Table.Time or 45)
  1078. local SOUNDID = (Table.SoundID or nil)
  1079. local SOUNDPITCH = (Table.SoundPitch or nil)
  1080. local SOUNDVOLUME = (Table.SoundVolume or nil)
  1081. coroutine.resume(coroutine.create(function()
  1082. local PLAYSSOUND = false
  1083. local SOUND = nil
  1084. local EFFECT = CreatePart(3, Effects, MATERIAL, 0, TRANSPARENCY, BRICKC("Pearl"), "Effect", VT(1,1,1), true)
  1085. if SOUNDID ~= nil and SOUNDPITCH ~= nil and SOUNDVOLUME ~= nil then
  1086. PLAYSSOUND = true
  1087. SOUND = CreateSound(SOUNDID, EFFECT, SOUNDVOLUME, SOUNDPITCH, false)
  1088. end
  1089. EFFECT.Color = color
  1090. local MSH = nil
  1091. if TYPE == "Sphere" then
  1092. MSH = CreateMesh("SpecialMesh", EFFECT, "Sphere", "", "", SIZE, VT(0,0,0))
  1093. elseif TYPE == "Block" then
  1094. MSH = IT("BlockMesh",EFFECT)
  1095. MSH.Scale = VT(SIZE.X,SIZE.X,SIZE.X)
  1096. elseif TYPE == "Wave" then
  1097. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "20329976", "", SIZE, VT(0,0,-SIZE.X/8))
  1098. elseif TYPE == "Ring" then
  1099. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "559831844", "", VT(SIZE.X,SIZE.X,0.1), VT(0,0,0))
  1100. elseif TYPE == "Slash" then
  1101. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662586858", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1102. elseif TYPE == "Round Slash" then
  1103. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "662585058", "", VT(SIZE.X/10,0,SIZE.X/10), VT(0,0,0))
  1104. elseif TYPE == "Swirl" then
  1105. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "1051557", "", SIZE, VT(0,0,0))
  1106. elseif TYPE == "Skull" then
  1107. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "4770583", "", SIZE, VT(0,0,0))
  1108. elseif TYPE == "Crystal" then
  1109. MSH = CreateMesh("SpecialMesh", EFFECT, "FileMesh", "9756362", "", SIZE, VT(0,0,0))
  1110. end
  1111. if MSH ~= nil then
  1112. local MOVESPEED = nil
  1113. if MOVEDIRECTION ~= nil then
  1114. MOVESPEED = (CFRAME.p - MOVEDIRECTION).Magnitude/TIME
  1115. end
  1116. local GROWTH = SIZE - ENDSIZE
  1117. local TRANS = TRANSPARENCY - ENDTRANSPARENCY
  1118. if TYPE == "Block" then
  1119. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1120. else
  1121. EFFECT.CFrame = CFRAME
  1122. end
  1123. for LOOP = 1, TIME+1 do
  1124. Swait()
  1125. MSH.Scale = MSH.Scale - GROWTH/TIME
  1126. if TYPE == "Wave" then
  1127. MSH.Offset = VT(0,0,-MSH.Scale.X/8)
  1128. end
  1129. EFFECT.Transparency = EFFECT.Transparency - TRANS/TIME
  1130. if TYPE == "Block" then
  1131. EFFECT.CFrame = CFRAME*ANGLES(RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)),RAD(MRANDOM(0,360)))
  1132. else
  1133. EFFECT.CFrame = EFFECT.CFrame*ANGLES(RAD(ROTATION1),RAD(ROTATION2),RAD(ROTATION3))
  1134. end
  1135. if MOVEDIRECTION ~= nil then
  1136. local ORI = EFFECT.Orientation
  1137. EFFECT.CFrame = CF(EFFECT.Position,MOVEDIRECTION)*CF(0,0,-MOVESPEED)
  1138. EFFECT.Orientation = ORI
  1139. end
  1140. end
  1141. if PLAYSSOUND == false then
  1142. EFFECT:remove()
  1143. else
  1144. SOUND.Stopped:Connect(function()
  1145. EFFECT:remove()
  1146. end)
  1147. end
  1148. else
  1149. if PLAYSSOUND == false then
  1150. EFFECT:remove()
  1151. else
  1152. repeat Swait() until SOUND.Playing == false
  1153. EFFECT:remove()
  1154. end
  1155. end
  1156. end))
  1157. end
  1158. end)
  1159. function MakeForm(PART,TYPE)
  1160. if TYPE == "Cyl" then
  1161. local MSH = IT("CylinderMesh",PART)
  1162. elseif TYPE == "Ball" then
  1163. local MSH = IT("SpecialMesh",PART)
  1164. MSH.MeshType = "Sphere"
  1165. elseif TYPE == "Wedge" then
  1166. local MSH = IT("SpecialMesh",PART)
  1167. MSH.MeshType = "Wedge"
  1168. end
  1169. end
  1170. function SpawnTrail(FROM,TO,BIG)
  1171. local TRAIL = CreatePart(3, Effects, "Neon", 0, 0, "Really red", "Trail", VT(10,10,10))
  1172. MakeForm(TRAIL,"Cyl")
  1173. local cR=255
  1174. local cG=0
  1175. local cB=0
  1176. local flg5=1 local omgidk=1
  1177. local add=15
  1178. game:GetService("RunService"):BindToRenderStep("Ghost",1,function()
  1179. if omgidk>10000 then omgidk=0 end
  1180. omgidk=omgidk+1
  1181. if cR>=255 then flg5=1 end
  1182. if cG>=255 then flg5=2 end
  1183. if cB>=255 then flg5=3 end
  1184. if flg5==1 then cR=cR-add cG=cG+add end
  1185. if flg5==2 then cG=cG-add cB=cB+add end
  1186. if flg5==3 then cB=cB-add cR=cR+add end
  1187. color=Color3.fromRGB(cR,cG,cB)
  1188. TRAIL.Color = color
  1189. end)
  1190. local DIST = (FROM - TO).Magnitude
  1191. if BIG == true then
  1192. TRAIL.Size = VT(5,DIST,5)
  1193. else
  1194. TRAIL.Size = VT(5,DIST,5)
  1195. end
  1196. TRAIL.CFrame = CF(FROM, TO) * CF(0, 0, -DIST/2) * ANGLES(RAD(90),RAD(0),RAD(0))
  1197. coroutine.resume(coroutine.create(function()
  1198. for i = 1, 55 do
  1199. Swait()
  1200. TRAIL.Transparency = TRAIL.Transparency + 0.01
  1201. end
  1202. TRAIL:remove()
  1203. end))
  1204. end
  1205.  
  1206. Debris = game:GetService("Debris")
  1207.  
  1208. function CastProperRay(StartPos, EndPos, Distance, Ignore)
  1209. local DIRECTION = CF(StartPos,EndPos).lookVector
  1210. return Raycast(StartPos, DIRECTION, Distance, Ignore)
  1211. end
  1212.  
  1213. function turnto(position)
  1214. RootPart.CFrame=CFrame.new(RootPart.CFrame.p,VT(position.X,RootPart.Position.Y,position.Z)) * CFrame.new(0, 0, 0)
  1215. end
  1216. ----------------------------------------------------------------
  1217. Player=game:GetService("Players").LocalPlayer
  1218. Character=Player.Character
  1219. PlayerGui=Player.PlayerGui
  1220. Backpack=Player.Backpack
  1221. Torso=Character.Torso
  1222. Head=Character.Head
  1223. Humanoid=Character:FindFirstChildOfClass("Humanoid")
  1224. Humanoid.WalkSpeed = 50
  1225. Humanoid.JumpPower = 100
  1226. Humanoid.Health = 999999999999999999999999
  1227. Humanoid.MaxHealth = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
  1228. m=Instance.new('Model',Character)
  1229. m2=Instance.new('Model',Character)
  1230. effs=Instance.new('Model',Character)
  1231. LeftArm=Character["Left Arm"]
  1232. LeftLeg=Character["Left Leg"]
  1233. RightArm=Character["Right Arm"]
  1234. RightLeg=Character["Right Leg"]
  1235. LS=Torso["Left Shoulder"]
  1236. LH=Torso["Left Hip"]
  1237. RS=Torso["Right Shoulder"]
  1238. RH=Torso["Right Hip"]
  1239. Face = Head.face
  1240. Neck=Torso.Neck
  1241. it=Instance.new
  1242. attacktype=1
  1243. vt=Vector3.new
  1244. cf=CFrame.new
  1245. euler=CFrame.fromEulerAnglesXYZ
  1246. angles=CFrame.Angles
  1247. cloaked=false
  1248. necko=cf(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  1249. necko2=cf(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  1250. LHC0=cf(-1,-1,0,-0,-0,-1,0,1,0,1,0,0)
  1251. LHC1=cf(-0.5,1,0,-0,-0,-1,0,1,0,1,0,0)
  1252. RHC0=cf(1,-1,0,0,0,1,0,1,0,-1,-0,-0)
  1253. RHC1=cf(0.5,1,0,0,0,1,0,1,0,-1,-0,-0)
  1254. RootPart=Character.HumanoidRootPart
  1255. RootJoint=RootPart.RootJoint
  1256. RootCF=euler(-1.57,0,3.14)
  1257. attack = false
  1258. attackdebounce = false
  1259. deb=false
  1260. equipped=true
  1261. hand=false
  1262. MMouse=nil
  1263. combo=0
  1264. mana=0
  1265. trispeed=.2
  1266. attackmode='none'
  1267. local idle=0
  1268. local Anim="Idle"
  1269. local Effects={}
  1270. local gun=false
  1271. local shoot=false
  1272. player=nil
  1273. mana=0
  1274. local CurrentMode = "Unsheathed"
  1275. mouse=Player:GetMouse()
  1276. --save shoulders
  1277. RSH, LSH=nil, nil
  1278. --welds
  1279. RW, LW=Instance.new("Weld"), Instance.new("Weld")
  1280. RW.Name="Right Shoulder" LW.Name="Left Shoulder"
  1281. LH=Torso["Left Hip"]
  1282. RH=Torso["Right Hip"]
  1283. TorsoColor=Torso.BrickColor
  1284. function NoOutline(Part)
  1285. Part.TopSurface,Part.BottomSurface,Part.LeftSurface,Part.RightSurface,Part.FrontSurface,Part.BackSurface = 10,10,10,10,10,10
  1286. end
  1287. player=Player
  1288. ch=Character
  1289. RSH=ch.Torso["Right Shoulder"]
  1290. LSH=ch.Torso["Left Shoulder"]
  1291. --
  1292. RSH.Parent=nil
  1293. LSH.Parent=nil
  1294. --
  1295. RW.Name="Right Shoulder"
  1296. RW.Part0=ch.Torso
  1297. RW.C0=cf(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5)
  1298. RW.C1=cf(0, 0.5, 0)
  1299. RW.Part1=ch["Right Arm"]
  1300. RW.Parent=ch.Torso
  1301. --
  1302. LW.Name="Left Shoulder"
  1303. LW.Part0=ch.Torso
  1304. LW.C0=cf(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.7, 0, 0.8)
  1305. LW.C1=cf(0, 0.5, 0)
  1306. LW.Part1=ch["Left Arm"]
  1307. LW.Parent=ch.Torso
  1308.  
  1309. local function weldBetween(a, b)
  1310. local weldd = Instance.new("ManualWeld")
  1311. weldd.Part0 = a
  1312. weldd.Part1 = b
  1313. weldd.C0 = CFrame.new()
  1314. weldd.C1 = b.CFrame:inverse() * a.CFrame
  1315. weldd.Parent = a
  1316. return weldd
  1317. end
  1318.  
  1319. function nooutline(part)
  1320. part.TopSurface,part.BottomSurface,part.LeftSurface,part.RightSurface,part.FrontSurface,part.BackSurface = 10,10,10,10,10,10
  1321. end
  1322.  
  1323. function part(formfactor,parent,material,reflectance,transparency,brickcolor,name,size)
  1324. local fp=it("Part")
  1325. fp.formFactor=formfactor
  1326. fp.Parent=parent
  1327. fp.Reflectance=reflectance
  1328. fp.Transparency=transparency
  1329. fp.CanCollide=false
  1330. fp.Locked=true
  1331. fp.BrickColor=BrickColor.new(tostring(brickcolor))
  1332. fp.Name=name
  1333. fp.Size=size
  1334. fp.Position=Character.Torso.Position
  1335. nooutline(fp)
  1336. fp.Material=material
  1337. fp:BreakJoints()
  1338. return fp
  1339. end
  1340.  
  1341. ArtificialHB = Instance.new("BindableEvent", script)
  1342. ArtificialHB.Name = "Heartbeat"
  1343. script:WaitForChild("Heartbeat")
  1344. frame = 0.015
  1345. tf = 0
  1346. allowframeloss = false
  1347. tossremainder = false
  1348. lastframe = tick()
  1349. script.Heartbeat:Fire()
  1350. game:GetService("RunService").Heartbeat:connect(function(s, p)
  1351. tf = tf + s
  1352. if tf >= frame then
  1353. if allowframeloss then
  1354. script.Heartbeat:Fire()
  1355. lastframe = tick()
  1356. else
  1357. for i = 1, math.floor(tf / frame) do
  1358. script.Heartbeat:Fire()
  1359. end
  1360. lastframe = tick()
  1361. end
  1362. if tossremainder then
  1363. tf = 0
  1364. else
  1365. tf = tf - frame * math.floor(tf / frame)
  1366. end
  1367. end
  1368. end)
  1369. function swait(num)
  1370. if num == 0 or num == nil then
  1371. ArtificialHB.Event:wait(0)
  1372. else
  1373. for i = 0, num do
  1374. ArtificialHB.Event:wait(0)
  1375. end
  1376. end
  1377. end
  1378.  
  1379. -- function swait(num)
  1380. -- if num==0 or num==nil then
  1381. -- game:service'RunService'.Heartbeat:wait(0)
  1382. -- else
  1383. -- for i=0,num do
  1384. -- game:service'RunService'.Heartbeat:wait(0)
  1385. -- end
  1386. -- end
  1387. -- end
  1388.  
  1389. function mesh(Mesh,part,meshtype,meshid,offset,scale)
  1390. local mesh=it(Mesh)
  1391. mesh.Parent=part
  1392. if Mesh=="SpecialMesh" then
  1393. mesh.MeshType=meshtype
  1394. mesh.MeshId=meshid
  1395. end
  1396. mesh.Offset=offset
  1397. mesh.Scale=scale
  1398. return mesh
  1399. end
  1400.  
  1401. function weld(parent,part0,part1,c0,c1)
  1402. local weld=it("Weld")
  1403. weld.Parent=parent
  1404. weld.Part0=part0
  1405. weld.Part1=part1
  1406. weld.C0=c0
  1407. weld.C1=c1
  1408. return weld
  1409. end
  1410.  
  1411. local function CFrameFromTopBack(at, top, back)
  1412. local right = top:Cross(back)
  1413. return CFrame.new(at.x, at.y, at.z,
  1414. right.x, top.x, back.x,
  1415. right.y, top.y, back.y,
  1416. right.z, top.z, back.z)
  1417. end
  1418.  
  1419. function Triangle(a, b, c)
  1420. local edg1 = (c-a):Dot((b-a).unit)
  1421. local edg2 = (a-b):Dot((c-b).unit)
  1422. local edg3 = (b-c):Dot((a-c).unit)
  1423. if edg1 <= (b-a).magnitude and edg1 >= 0 then
  1424. a, b, c = a, b, c
  1425. elseif edg2 <= (c-b).magnitude and edg2 >= 0 then
  1426. a, b, c = b, c, a
  1427. elseif edg3 <= (a-c).magnitude and edg3 >= 0 then
  1428. a, b, c = c, a, b
  1429. else
  1430. assert(false, "unreachable")
  1431. end
  1432. local len1 = (c-a):Dot((b-a).unit)
  1433. local len2 = (b-a).magnitude - len1
  1434. local width = (a + (b-a).unit*len1 - c).magnitude
  1435.  
  1436. local maincf = CFrameFromTopBack(a, (b-a):Cross(c-b).unit, -(b-a).unit)
  1437.  
  1438. local list = {}
  1439.  
  1440. if len1 > 0.01 then
  1441. local w1 = Instance.new('WedgePart', m)
  1442. game:GetService("Debris"):AddItem(w1,5)
  1443. w1.Material = "SmoothPlastic"
  1444. w1.FormFactor = 'Custom'
  1445. w1.BrickColor = BrickColor.new("White")
  1446. w1.Transparency = 0
  1447. w1.Reflectance = 0
  1448. w1.Material = "Neon"
  1449. w1.CanCollide = false
  1450. NoOutline(w1)
  1451. local sz = Vector3.new(0.2, width, len1)
  1452. w1.Size = sz
  1453. local sp = Instance.new("SpecialMesh",w1)
  1454. sp.MeshType = "Wedge"
  1455. sp.Scale = Vector3.new(0,1,1) * sz/w1.Size
  1456. w1:BreakJoints()
  1457. w1.Anchored = true
  1458. w1.Parent = workspace
  1459. w1.Transparency = 0.3
  1460. table.insert(Effects,{w1,"Disappear",.03})
  1461. w1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2)
  1462. table.insert(list,w1)
  1463. end
  1464. if len2 > 0.01 then
  1465. local w2 = Instance.new('WedgePart', m)
  1466. game:GetService("Debris"):AddItem(w2,5)
  1467. w2.Material = "SmoothPlastic"
  1468. w2.FormFactor = 'Custom'
  1469. w2.BrickColor = BrickColor.new("White")
  1470. w2.Transparency = 0
  1471. w2.Reflectance = 0
  1472. w2.Material = "Neon"
  1473. w2.CanCollide = false
  1474. NoOutline(w2)
  1475. local sz = Vector3.new(0.2, width, len2)
  1476. w2.Size = sz
  1477. local sp = Instance.new("SpecialMesh",w2)
  1478. sp.MeshType = "Wedge"
  1479. sp.Scale = Vector3.new(0,1,1) * sz/w2.Size
  1480. w2:BreakJoints()
  1481. w2.Anchored = true
  1482. w2.Parent = workspace
  1483. w2.Transparency = 0.3
  1484. table.insert(Effects,{w2,"Disappear",.03})
  1485. w2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2)
  1486. table.insert(list,w2)
  1487. end
  1488. return unpack(list)
  1489. end
  1490.  
  1491.  
  1492. so = function(id,par,vol,pit)
  1493. coroutine.resume(coroutine.create(function()
  1494. local sou = Instance.new("Sound",par or workspace)
  1495. sou.Volume=vol
  1496. sou.Pitch=pit or 1
  1497. sou.SoundId=id
  1498. swait()
  1499. sou:play()
  1500. game:GetService("Debris"):AddItem(sou,6)
  1501. end))
  1502. end
  1503.  
  1504. function clerp(a,b,t)
  1505. local qa = {QuaternionFromCFrame(a)}
  1506. local qb = {QuaternionFromCFrame(b)}
  1507. local ax, ay, az = a.x, a.y, a.z
  1508. local bx, by, bz = b.x, b.y, b.z
  1509. local _t = 1-t
  1510. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  1511. end
  1512.  
  1513. function QuaternionFromCFrame(cf)
  1514. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  1515. local trace = m00 + m11 + m22
  1516. if trace > 0 then
  1517. local s = math.sqrt(1 + trace)
  1518. local recip = 0.5/s
  1519. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  1520. else
  1521. local i = 0
  1522. if m11 > m00 then
  1523. i = 1
  1524. end
  1525. if m22 > (i == 0 and m00 or m11) then
  1526. i = 2
  1527. end
  1528. if i == 0 then
  1529. local s = math.sqrt(m00-m11-m22+1)
  1530. local recip = 0.5/s
  1531. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  1532. elseif i == 1 then
  1533. local s = math.sqrt(m11-m22-m00+1)
  1534. local recip = 0.5/s
  1535. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  1536. elseif i == 2 then
  1537. local s = math.sqrt(m22-m00-m11+1)
  1538. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  1539. end
  1540. end
  1541. end
  1542.  
  1543. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  1544. local xs, ys, zs = x + x, y + y, z + z
  1545. local wx, wy, wz = w*xs, w*ys, w*zs
  1546. local xx = x*xs
  1547. local xy = x*ys
  1548. local xz = x*zs
  1549. local yy = y*ys
  1550. local yz = y*zs
  1551. local zz = z*zs
  1552. 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))
  1553. end
  1554.  
  1555. function QuaternionSlerp(a, b, t)
  1556. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  1557. local startInterp, finishInterp;
  1558. if cosTheta >= 0.0001 then
  1559. if (1 - cosTheta) > 0.0001 then
  1560. local theta = math.acos(cosTheta)
  1561. local invSinTheta = 1/math.sin(theta)
  1562. startInterp = math.sin((1-t)*theta)*invSinTheta
  1563. finishInterp = math.sin(t*theta)*invSinTheta
  1564. else
  1565. startInterp = 1-t
  1566. finishInterp = t
  1567. end
  1568. else
  1569. if (1+cosTheta) > 0.0001 then
  1570. local theta = math.acos(-cosTheta)
  1571. local invSinTheta = 1/math.sin(theta)
  1572. startInterp = math.sin((t-1)*theta)*invSinTheta
  1573. finishInterp = math.sin(t*theta)*invSinTheta
  1574. else
  1575. startInterp = t-1
  1576. finishInterp = t
  1577. end
  1578. end
  1579. 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
  1580. end
  1581.  
  1582. function rayCast(Pos, Dir, Max, Ignore) -- Origin Position , Direction, MaxDistance , IgnoreDescendants
  1583. return game:service("Workspace"):FindPartOnRay(Ray.new(Pos, Dir.unit * (Max or 999.999)), Ignore)
  1584. end
  1585.  
  1586. Damagefunc=function(Part,hit,minim,maxim,knockback,Type,Property,Delay,KnockbackType,decreaseblock)
  1587. if hit.Parent==nil then
  1588. return
  1589. end
  1590. local h=hit.Parent:FindFirstChildOfClass("Humanoid")
  1591. for _,v in pairs(hit.Parent:GetDescendants()) do
  1592. if v:IsA("Humanoid") then
  1593. h=v
  1594. end
  1595. end
  1596. if hit.Parent.Parent:FindFirstChild("Head")~=nil then
  1597. h=hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
  1598. end
  1599. if hit.Parent:IsA("Accoutrement") then
  1600. hit=hit.Parent.Parent:findFirstChild("Head")
  1601. end
  1602. if h~=nil and hit.Parent.Name~=Character.Name and hit.Parent:FindFirstChild("Head")~=nil then
  1603. if hit.Parent:findFirstChild("DebounceHit")~=nil then return end
  1604. Instance.new("BoolValue",h.Parent).Name = "DebounceHit"
  1605. --[[ if game.Players:GetPlayerFromCharacter(hit.Parent)~=nil then
  1606. return
  1607. end]]
  1608. -- hs(hit,1.2)
  1609. local c=Instance.new("ObjectValue")
  1610. c.Name="creator"
  1611. c.Value=game:service("Players").LocalPlayer
  1612. c.Parent=h
  1613. game:GetService("Debris"):AddItem(c,.5)
  1614. local Damage=math.random(minim,maxim)
  1615. -- h:TakeDamage(Damage)
  1616. local blocked=false
  1617. local block=hit.Parent:findFirstChild("Block")
  1618. if block~=nil then
  1619. print(block.className)
  1620. if block.className=="NumberValue" then
  1621. if block.Value>0 then
  1622. blocked=true
  1623. if decreaseblock==nil then
  1624. block.Value=block.Value-1
  1625. end
  1626. end
  1627. end
  1628. if block.className=="IntValue" then
  1629. if block.Value>0 then
  1630. blocked=true
  1631. if decreaseblock~=nil then
  1632. block.Value=block.Value-1
  1633. end
  1634. end
  1635. end
  1636. end
  1637. coroutine.resume(coroutine.create(function()
  1638. h.Parent:BreakJoints()
  1639. coroutine.resume(coroutine.create(function()
  1640. local naeeym2 = Instance.new("BillboardGui",h.Parent)
  1641. naeeym2.Size = UDim2.new(0,100,0,40)
  1642. naeeym2.StudsOffset = Vector3.new(0,3,0)
  1643. naeeym2.Adornee = h.Parent.Head
  1644. naeeym2.Name = "TalkingBillBoard"
  1645. local tecks2 = Instance.new("TextLabel",naeeym2)
  1646. tecks2.BackgroundTransparency = 1
  1647. tecks2.BorderSizePixel = 1
  1648. tecks2.Text = " "
  1649. tecks2.Font = "Fantasy"
  1650. tecks2.FontSize = "Size36"
  1651. tecks2.TextStrokeTransparency = 1
  1652. tecks2.TextColor3 = Color3.new(0,0,0)
  1653. tecks2.TextStrokeColor3 = Color3.new(.6,0,1)
  1654. tecks2.Size = UDim2.new(1,0,0.5,0)
  1655. coroutine.resume(coroutine.create(function()
  1656. while true do
  1657. for i = 0,256,16 do
  1658. tecks2.TextStrokeColor3 = Color3.new(1,i/256,0)
  1659. swait()
  1660. end
  1661. for i = 0,256,16 do
  1662. tecks2.TextStrokeColor3 = Color3.new(1-i/256,1,0)
  1663. swait()
  1664. end
  1665. for i = 0,256,16 do
  1666. tecks2.TextStrokeColor3 = Color3.new(0,1,i/256)
  1667. swait()
  1668. end
  1669. for i = 0,256,16 do
  1670. tecks2.TextStrokeColor3 = Color3.new(0,1-i/256,1)
  1671. swait()
  1672. end
  1673. for i = 0,256,16 do
  1674. tecks2.TextStrokeColor3 = Color3.new(i/256,0,1)
  1675. swait()
  1676. end
  1677. for i = 0,256,16 do
  1678. tecks2.TextStrokeColor3 = Color3.new(1,0,1-i/256)
  1679. swait()
  1680. end
  1681. end
  1682. end))
  1683. swait(50)
  1684. for i = 0,1,.05 do
  1685. swait()
  1686. tecks2.Position = tecks2.Position - UDim2.new(0,0,.005,0)
  1687. tecks2.TextStrokeTransparency = i
  1688. tecks2.TextTransparency = i
  1689. end
  1690. naeeym2:Destroy()
  1691. end))
  1692. local st = (CFrame.new(h.Parent.Head.CFrame * Vector3.new(0,-1.5,0))).p
  1693. for oa = 1, 5 do
  1694. local effp = Instance.new("Part",workspace)
  1695. effp.CanCollide = false
  1696. effp.BottomSurface = 0
  1697. effp.TopSurface = 0
  1698. effp.Size = Vector3.new(1,1,1)
  1699. effp.Anchored = true
  1700. effp.CFrame = (h.Parent.Head.CFrame * CFrame.new(0,-1.5,0)) * CFrame.fromEulerAnglesXYZ(math.rad(math.random(0,359)),math.rad(math.random(0,359)),math.rad(math.random(0,359)))
  1701. effp.Material = "Neon"
  1702. effp.BrickColor = BrickColor.new("White")
  1703. local efm = Instance.new("SpecialMesh",effp)
  1704. efm.MeshType = "Sphere"
  1705. coroutine.resume(coroutine.create(function()
  1706. for a = 0,1,.05 do
  1707. efm.Scale = Vector3.new(2-a*2,100*a,2-a*2)
  1708. effp.Transparency = a
  1709. swait()
  1710. end
  1711. effp:Destroy()
  1712. end))
  1713. end
  1714. for i, v in pairs(h.Parent:GetChildren()) do
  1715. if v:IsA("BasePart") then
  1716. v.Anchored = false
  1717. end
  1718. end
  1719. for a, v in pairs(h.Parent:GetChildren()) do
  1720. if v:IsA("BasePart") then
  1721. local bodpos = Instance.new("BodyPosition",v)
  1722. bodpos.Position = v.Position + Vector3.new(math.random(-5,5),math.random(-5,5),math.random(-5,5))
  1723. v.BrickColor = BrickColor.new("White")
  1724. v.Material = "Neon"
  1725. end
  1726. end
  1727. for d = 0,1,.05 do
  1728. for i, v in pairs(h.Parent:GetChildren()) do
  1729. if v:IsA("BasePart") then
  1730. v.Transparency = d
  1731. swait()
  1732. end
  1733. end
  1734. end
  1735. for i, v in pairs(h.Parent:GetChildren()) do
  1736. if v:IsA("BasePart") then
  1737. v:Destroy()
  1738. end
  1739. end
  1740. end))
  1741. end
  1742. end
  1743.  
  1744.  
  1745. function ShowDamage(Dude, Text, Time, Color)
  1746. coroutine.resume(coroutine.create(function()
  1747. local naeeym2 = Instance.new("BillboardGui",Dude)
  1748. naeeym2.Size = UDim2.new(0,100,0,40)
  1749. naeeym2.StudsOffset = Vector3.new(0,3,0)
  1750. naeeym2.Adornee = Dude.Head
  1751. naeeym2.Name = "TalkingBillBoard"
  1752. local tecks2 = Instance.new("TextLabel",naeeym2)
  1753. tecks2.BackgroundTransparency = 1
  1754. tecks2.BorderSizePixel = 0
  1755. tecks2.Text = Text
  1756. tecks2.Font = "Fantasy"
  1757. tecks2.TextSize = 24
  1758. tecks2.TextStrokeTransparency = 0
  1759. tecks2.TextColor3 = Color3.new(.8,0,1)
  1760. tecks2.TextStrokeColor3 = Color3.new(0,0,0)
  1761. tecks2.Size = UDim2.new(1,0,0.5,0)
  1762. swait(10)
  1763. for i = 0,1,.05 do
  1764. swait()
  1765. tecks2.Position = tecks2.Position - UDim2.new(0,0,.005,0)
  1766. tecks2.TextStrokeTransparency = i
  1767. tecks2.TextTransparency = i
  1768. end
  1769. naeeym2:Destroy()
  1770. end))
  1771. end
  1772. handle=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","Handle",Vector3.new(0.200000003, 1.61857152, 0.200000003))
  1773. handleweld=weld(m,Character["Right Arm"],handle,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.995889783, -0.101109691, 0.0468789339, -5.23798153e-005, 0.99999994, -0.000210702419, -6.36925748e-008, -0.000210702419, -0.99999994, -1, -5.23798008e-005, 7.47295417e-008))
  1774. handleweld.Name = "MagicWeld"
  1775. mesh("CylinderMesh",handle,"","",Vector3.new(0, 0, 0),Vector3.new(0.857142806, 1, 0.857142746))
  1776. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(0.200000003, 0.257142872, 0.911428571))
  1777. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00982296467, -0.128642559, 5.57254982, -1.21753502e-007, -2.87620594e-010, 1, -1, -1.04306673e-006, -1.2175461e-007, 1.04306673e-006, -1, -2.87123214e-010))
  1778. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.571428537, 1, 1))
  1779. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.200000003, 3.74285722, 0.571428657))
  1780. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.0100114346, 3.24283266, 2.64644623e-005, -2.98713599e-006, -1.63886575e-008, -1, -1.18017197e-005, -0.99999994, 1.64265153e-008, -0.99999994, 1.18017197e-005, 2.98713007e-006))
  1781. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.285714298, 1, 1))
  1782. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(0.200000003, 3.74285722, 0.514285743))
  1783. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00896048546, 3.24313331, -6.2584877e-006, -2.62832918e-006, -1.58840017e-008, -1, -1.16825104e-005, -0.99999994, 1.59122848e-008, -0.99999994, 1.16825104e-005, 2.62831986e-006))
  1784. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.571428537, 1, 1))
  1785. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(0.200000003, 0.914285779, 0.254285723))
  1786. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0080575943, -5.57459974, 0.127099097, -7.20826961e-007, -1.18548371e-009, 1, 6.25863322e-007, 1, 1.18891563e-009, -1, 6.25863322e-007, -7.20827984e-007))
  1787. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.571428537, 1, 1))
  1788. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.200000003, 0.942857206, 0.28285715))
  1789. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00858414173, -5.58866072, 0.142816901, -5.41048905e-007, -8.99582631e-010, 1, -5.96046448e-007, 0.99999994, 9.00953978e-010, -0.99999994, -5.96046448e-007, -5.41057148e-007))
  1790. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.285714298, 1, 1))
  1791. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.200000003, 0.285714328, 0.940000057))
  1792. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.011053443, -0.142930448, 5.58944941, 2.97432763e-007, 3.64387631e-010, 1, -1, 6.25863322e-007, 2.9743137e-007, -6.25863322e-007, -1, 3.63804986e-010))
  1793. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.285714298, 1, 1))
  1794. Part=part(Enum.FormFactor.Brick,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(1, 1.20000005, 1))
  1795. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(3.57627869e-007, -0.809324801, 1.96695328e-006, 6.20105922e-008, 2.27451835e-010, -1, 1.81795622e-006, 1, 2.27856845e-010, 1, -1.81795622e-006, 6.2011928e-008))
  1796. mesh("SpecialMesh",Part,Enum.MeshType.Head,"",Vector3.new(0, 0, 0),Vector3.new(0.285714298, 0.142857134, 0.285714298))
  1797. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.483492821, 0.539954185, 0.539909601))
  1798. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00226664543, 0.69951874, 1.00827909, 5.41296288e-007, 9.50464596e-010, -1, 0.707107663, -0.707105815, 3.8208583e-007, -0.707105815, -0.707107663, -3.83435292e-007))
  1799. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.285714179, 0.285714179))
  1800. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(0.892679513, 0.539954185, 0.771299422))
  1801. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.19487548, -0.00217807293, 3.74913216e-005, 2.29479338e-006, 1, 7.06279479e-012, -6.20287395e-008, -7.34701189e-012, 1, 1, -2.29479338e-006, 6.20337914e-008))
  1802. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.857145786, 1))
  1803. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.892679513, 0.539954185, 0.771299422))
  1804. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.19487882, -0.00217807293, 4.00543213e-005, 2.0563748e-006, 1, 1.14326326e-011, -6.20178255e-008, -1.28039801e-011, 1, 1, -2.0563748e-006, 6.20228633e-008))
  1805. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1.10000002, 0.571431458, 1.10000002))
  1806. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.483492851, 0.539954185, 0.539909601))
  1807. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00595891476, -1.00750566, 1.00747085, -1.81721958e-007, -3.98678424e-010, 1, -0.707107067, 0.707106411, -1.28216811e-007, -0.707106411, -0.707106948, -1.28784094e-007))
  1808. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.285714179, 0.285714179))
  1809. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.483492821, 0.539954185, 0.539909601))
  1810. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00534570217, -1.00757694, -0.698815584, 2.4158129e-007, 4.89748686e-010, -1, -0.707107604, 0.707105875, -1.70486445e-007, 0.707105815, 0.707107544, 1.71177419e-007))
  1811. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.285714179, 0.285714269))
  1812. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.493492872, 0.539954185, 0.539909601))
  1813. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000260472298, 0.6988675, -0.698937058, 3.01447898e-007, 5.80818948e-010, -1, -0.707105994, -0.707107365, -2.13563524e-007, -0.707107365, 0.707106113, -2.12752497e-007))
  1814. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(1, 0.285714179, 0.285714269))
  1815. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.46267962, 0.200000003, 0.200000003))
  1816. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00927072763, -0.0121991634, 1.19311547, 0.999999881, -2.08614802e-006, 1.9306286e-007, -1.93059051e-007, -1.09411957e-007, 1, -2.08616257e-006, -0.999999881, -1.09408283e-007))
  1817. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1818. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.06267953, 0.200000003, 0.200000003))
  1819. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.604586363, -0.0121991634, 1.02863288, 0.866026282, 0.499998033, 2.28958157e-007, -1.93872992e-007, -1.22099237e-007, 1, 0.499998033, -0.866026282, -8.79730777e-009))
  1820. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1821. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.46267962, 0.200000003, 0.200000003))
  1822. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.03790355, -0.0121991634, 0.588528812, 0.500001669, 0.866024196, 1.74744486e-007, -1.6279435e-007, -1.0777579e-007, 1, 0.866024196, -0.500001669, 8.71042545e-008))
  1823. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1824. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.662679553, 0.200000003, 0.200000003))
  1825. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.39311564, -0.0121991634, -0.00927072763, 2.08616257e-006, 0.999999881, 7.82298955e-008, -1.51383063e-007, -7.82268899e-008, 1, 0.999999881, -2.08614802e-006, 1.51386175e-007))
  1826. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1827. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.46267951, 0.200000003, 0.200000003))
  1828. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-1.02863288, -0.0121997595, -0.604586482, -0.499998093, 0.866026223, -6.44970513e-008, -1.45620604e-007, -9.60127267e-009, 1, 0.866026223, 0.499998093, 1.30918266e-007))
  1829. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1830. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.06267953, 0.200000003, 0.200000003))
  1831. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.588528991, -0.0121992826, -1.03790355, -0.866024137, 0.500001729, -9.11133142e-008, -1.16737233e-007, -1.99774206e-008, 1, 0.500001729, 0.866024137, 7.56750538e-008))
  1832. mesh("BlockMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 1, 1))
  1833. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.372464359, 0.762464345, 0.762464285))
  1834. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00338602066, -0.736121356, -0.540583551, 5.41296288e-007, 9.50464596e-010, -1, 0.707107663, -0.707105815, 3.8208583e-007, -0.707105815, -0.707107663, -3.83435292e-007))
  1835. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.895366609, 0.128561974, 0.128542364))
  1836. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.382464379, 0.762464345, 0.762464285))
  1837. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00803625584, -0.737174749, 0.736498654, 3.01447898e-007, 5.80818948e-010, -1, -0.707105994, -0.707107365, -2.13563524e-007, -0.707107365, 0.707106113, -2.12752497e-007))
  1838. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.913885474, 0.128561974, 0.128542408))
  1839. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.40246433, 0.762464345, 0.762464285))
  1840. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.00594449043, 0.540397167, 0.737201214, 2.4158129e-007, 4.89748686e-010, -1, -0.707107604, 0.707105875, -1.70486445e-007, 0.707105815, 0.707107544, 1.71177419e-007))
  1841. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.895366609, 0.128561974, 0.128542408))
  1842. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(0.40246433, 0.762464345, 0.762464285))
  1843. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.00681877136, 0.540436149, -0.541088939, -1.81721958e-007, -3.98678424e-010, 1, -0.707107067, 0.707106411, -1.28216811e-007, -0.707106411, -0.707106948, -1.28784094e-007))
  1844. mesh("SpecialMesh",Part,Enum.MeshType.Wedge,"",Vector3.new(0, 0, 0),Vector3.new(0.895366669, 0.128561974, 0.128542364))
  1845. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(1.26045096, 0.762464345, 0.762464285))
  1846. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.910848916, -0.00147974491, 0.000465214252, 2.29479338e-006, 1, 7.06279479e-012, -6.20287395e-008, -7.34701189e-012, 1, 1, -2.29479338e-006, 6.20337914e-008))
  1847. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1, 0.385687381, 0.642712057))
  1848. Part=part(Enum.FormFactor.Custom,m,Enum.Material.Neon,0,0,"White","SwordPart",Vector3.new(1.26045096, 0.762464345, 0.762464285))
  1849. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(0.910846829, -0.00147974491, 0.000467300415, 2.0563748e-006, 1, 1.14326326e-011, -6.20178255e-008, -1.28039801e-011, 1, 1, -2.0563748e-006, 6.20228633e-008))
  1850. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(1.10000002, 0.257125348, 0.706983268))
  1851. Part=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,0,"White","SwordPart",Vector3.new(0.200000003, 0.200000003, 0.200000003))
  1852. Partweld=weld(m,handle,Part,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-3.98755074e-005, -0.86527884, -0.00526940823, 0.99999994, -3.33786011e-006, -1.61662047e-006, 3.33786011e-006, 0.99999994, -1.75251103e-009, 1.61662604e-006, 1.74897963e-009, 1))
  1853. mesh("CylinderMesh",Part,"","",Vector3.new(0, 0, 0),Vector3.new(0.857142806, 0.857145548, 0.857142746))
  1854. Hitbox=part(Enum.FormFactor.Custom,m,Enum.Material.SmoothPlastic,0,1,"White","Hitbox",Vector3.new(0.650000036, 4.19999981, 0.200000003))
  1855. Hitboxweld=weld(m,handle,Hitbox,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.0107657909, -3.95914412, 0.00325751305, 0.999999821, -0.000211339415, 2.39198562e-006, 0.000211339124, 0.999997795, -6.21902582e-005, -2.38056168e-006, 6.20116552e-005, 0.999992907))
  1856. Hitbox2=part(Enum.FormFactor.Custom,m2,Enum.Material.Neon,0.5,1,"White","Hitbox",Vector3.new(1.04400003, 6.35600042, 0.600000024))
  1857. Hitbox2weld=weld(m2,handle2,Hitbox2,CFrame.new(0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1),CFrame.new(-0.000308990479, -5.48094559, -2.00271606e-005, 1, 6.10120843e-011, -1.08637464e-014, -6.10120843e-011, 1, 7.57154339e-011, 1.08637574e-014, -7.57154339e-011, 1))
  1858.  
  1859. local att1 = Instance.new("Attachment",Hitbox)
  1860. att1.Position = Vector3.new(-Hitbox.Size.X/2,Hitbox.Size.Y/2,0)
  1861. local att2 = Instance.new("Attachment",Hitbox)
  1862. att2.Position = Vector3.new(-Hitbox.Size.X/2,-Hitbox.Size.Y/2,0)
  1863. local tr1 = Instance.new("Trail",Hitbox)
  1864. tr1.Color = ColorSequence.new(Part.BrickColor.Color)
  1865. tr1.Transparency = NumberSequence.new(0,1)
  1866. tr1.Lifetime = .5
  1867. --tr1.Enabled = false
  1868. tr1.LightEmission = 1
  1869. tr1.Attachment0 = att1
  1870. tr1.Attachment1 = att2
  1871. local att3 = Instance.new("Attachment",Hitbox2)
  1872. att3.Position = Vector3.new(-Hitbox2.Size.X/2,Hitbox2.Size.Y/2,0)
  1873. local att4 = Instance.new("Attachment",Hitbox2)
  1874. att4.Position = Vector3.new(-Hitbox2.Size.X/2,-Hitbox2.Size.Y/2,0)
  1875. local tr2 = Instance.new("Trail",Hitbox2)
  1876. tr2.Color = ColorSequence.new(Part.BrickColor.Color)
  1877. tr2.Transparency = NumberSequence.new(0,1)
  1878. tr2.Lifetime = .5
  1879. --tr2.Enabled = false
  1880. tr2.LightEmission = 1
  1881. tr2.Attachment0 = att3
  1882. tr2.Attachment1 = att4
  1883.  
  1884. local Lite = it("PointLight",Torso)
  1885. Lite.Color = Color3.new(.7,0,1)
  1886. Lite.Range = 8
  1887. Lite.Brightness = 10
  1888. Lite.Shadows = true
  1889.  
  1890.  
  1891.  
  1892. function BreakEffect(brickcolor,cframe,x1,y1,z1)
  1893. local prt=part("Custom",effs,"Neon",0,0,"White","Effect",vt(0.5,0.5,0.5))
  1894. prt.Anchored=true
  1895. prt.CFrame=cframe*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  1896. local msh=mesh("SpecialMesh",prt,"Sphere","",vt(0,0,0),vt(x1,y1,z1))
  1897. coroutine.resume(coroutine.create(function(Part,CF,Numbb,randnumb)
  1898. CF=Part.CFrame
  1899. Numbb=0
  1900. randnumb=math.random()-math.random()
  1901. for i=0,1,0.05 do
  1902. swait()
  1903. CF=CF*cf(0,1,0)
  1904. --Part.CFrame=Part.CFrame*euler(0.5,0,0)*cf(0,1,0)
  1905. Part.CFrame=CF*euler(Numbb,0,0)
  1906. Part.Transparency=i
  1907. Numbb=Numbb+randnumb
  1908. end
  1909. Part.Parent=nil
  1910. end),prt)
  1911. end
  1912. --BreakEffect(BrickColor.new("New Yeller"),Hitbox.CFrame,0.5,math.random(5,20),0.5)
  1913.  
  1914. neons = {}
  1915. for i, v in pairs(Character:GetDescendants()) do
  1916. if v:IsA("BasePart") and (v.Parent == m or v.Parent == m2) and v.BrickColor == BrickColor.new("White") then
  1917. table.insert(neons,v)
  1918. v.Material = "Neon"
  1919. end
  1920. end
  1921.  
  1922. function updateCol2(col)
  1923. tr2.Color = ColorSequence.new(col)
  1924. tr1.Color = ColorSequence.new(col)
  1925. Lite.Color = col
  1926. for i, v in pairs(effs:children()) do
  1927. v.Color = col
  1928. end
  1929. for i=1,#neons do
  1930. neons[i].Color = col
  1931. end
  1932. end
  1933.  
  1934. colrr = Color3.new()
  1935. maincol = Color3.new()
  1936. coroutine.resume(coroutine.create(function()
  1937. while true do
  1938. for i = 0,256,16 do
  1939. colrr = Color3.new(1,i/256,0)
  1940. updateCol2(colrr)
  1941. maincol = Part.Color
  1942. swait()
  1943. end
  1944. for i = 0,256,16 do
  1945. colrr = Color3.new(1-i/256,1,0)
  1946. updateCol2(colrr)
  1947. maincol = Part.Color
  1948. swait()
  1949. end
  1950. for i = 0,256,16 do
  1951. colrr = Color3.new(0,1,i/256)
  1952. updateCol2(colrr)
  1953. maincol = Part.Color
  1954. swait()
  1955. end
  1956. for i = 0,256,16 do
  1957. colrr = Color3.new(0,1-i/256,1)
  1958. updateCol2(colrr)
  1959. maincol = Part.Color
  1960. swait()
  1961. end
  1962. for i = 0,256,16 do
  1963. colrr = Color3.new(i/256,0,1)
  1964. updateCol2(colrr)
  1965. maincol = Part.Color
  1966. swait()
  1967. end
  1968. for i = 0,256,16 do
  1969. colrr = Color3.new(1,0,1-i/256)
  1970. updateCol2(colrr)
  1971. maincol = Part.Color
  1972. swait()
  1973. end
  1974. end
  1975. end))
  1976.  
  1977. function attackone()
  1978. attack=true
  1979. local con=Hitbox.Touched:connect(function(hit) Damagefunc(Hitbox,hit,30,50,math.random(10,20),"Normal",RootPart,.2,1) end)
  1980. for i=0,1,0.1 do
  1981. swait()
  1982. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(120),math.rad(0),math.rad(20)),.3)
  1983. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-90)),.3)
  1984. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-50),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  1985. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(120),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  1986. handleweld.C0=clerp(handleweld.C0,cf(0,-0,.4)*angles(math.rad(70),math.rad(-10),math.rad(0)),.3)
  1987. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  1988. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(50)),.3)
  1989. end
  1990. so("http://www.roblox.com/asset/?id=154965962",Hitbox,1,1)
  1991. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,1)
  1992. hitconasdf = Hitbox.Touched:connect(function(hit)
  1993. local hum12 = hit.Parent:FindFirstChild("Humanoid")
  1994. if hum12 and not hum12:IsDescendantOf(Character) then
  1995. so('http://roblox.com/asset/?id=154965973',Hitbox,1,1)
  1996. for i = 1,10 do
  1997. BreakEffect(BrickColor.new("Cyan"),hit.Parent.Torso.CFrame,0.5,math.random(5,20),0.5)
  1998. end
  1999. hitconasdf:disconnect()
  2000. end
  2001. end)
  2002. for i=0,1,0.1 do
  2003. swait()
  2004. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2005. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2006. local h = 5
  2007. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2008. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2009. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2010. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2011. scfr = blcf
  2012. elseif not scfr then
  2013. scfr = blcf
  2014. end
  2015. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(110),math.rad(-90),math.rad(20)),.3)
  2016. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-50)),.3)
  2017. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-120),math.rad(5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2018. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(50),math.rad(10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2019. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-60),math.rad(-10),math.rad(0)),.3)
  2020. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.3)
  2021. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(-50)),.3)
  2022. end
  2023. attack=false
  2024. con:disconnect()
  2025. scfr = nil
  2026. pcall(function()
  2027. hitconasdf:disconnect()
  2028. end)
  2029. end
  2030.  
  2031. function attacktwo()
  2032. attack=true
  2033. local con=Hitbox.Touched:connect(function(hit) Damagefunc(Hitbox,hit,30,50,math.random(10,20),"Normal",RootPart,.2,1) end)
  2034. for i=0,1,0.1 do
  2035. swait()
  2036. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(90),math.rad(90)),.3)
  2037. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-50)),.3)
  2038. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-130),math.rad(5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2039. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(50),math.rad(10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2040. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-30),math.rad(-10),math.rad(0)),.3)
  2041. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(70)),.3)
  2042. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(-50)),.3)
  2043. end
  2044. so("http://www.roblox.com/asset/?id=154965962",Hitbox,1,.9)
  2045. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,.9)
  2046. hitconasdf = Hitbox.Touched:connect(function(hit)
  2047. local hum12 = hit.Parent:FindFirstChild("Humanoid")
  2048. if hum12 and not hum12:IsDescendantOf(Character) then
  2049. so('http://roblox.com/asset/?id=154965973',Hitbox,1,1)
  2050. for i = 1,10 do
  2051. BreakEffect(BrickColor.new("Cyan"),hit.Parent.Torso.CFrame,0.5,math.random(5,20),0.5)
  2052. end
  2053. hitconasdf:disconnect()
  2054. end
  2055. end)
  2056. for i=0,1,0.1 do
  2057. swait()
  2058. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2059. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2060. local h = 5
  2061. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2062. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2063. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2064. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2065. scfr = blcf
  2066. elseif not scfr then
  2067. scfr = blcf
  2068. end
  2069. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(-50),math.rad(90)),.3)
  2070. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-90)),.3)
  2071. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-50),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2072. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(130),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2073. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-50),math.rad(10),math.rad(0)),.3)
  2074. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  2075. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(50)),.3)
  2076. end
  2077. attack=false
  2078. con:disconnect()
  2079. scfr = nil
  2080. pcall(function()
  2081. hitconasdf:disconnect()
  2082. end)
  2083. end
  2084.  
  2085. function Stab()
  2086. attack=true
  2087. local con=Hitbox.Touched:connect(function(hit) Damagefunc(Hitbox,hit,30,50,math.random(10,20),"Normal",RootPart,.2,1) end)
  2088. for i=0,1,0.1 do
  2089. swait()
  2090. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  2091. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(60)),.3)
  2092. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(0),math.rad(20),math.rad(90)),.3)
  2093. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(0),math.rad(-20),math.rad(-90)),.3)
  2094. LH.C0=clerp(LH.C0,cf(-1,-.9,0)*angles(math.rad(0),math.rad(-60),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2095. RH.C0=clerp(RH.C0,cf(1,-.9,0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2096. handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
  2097. end
  2098. hitconasdf = Hitbox.Touched:connect(function(hit)
  2099. local hum12 = hit.Parent:FindFirstChild("Humanoid")
  2100. if hum12 and not hum12:IsDescendantOf(Character) then
  2101. so('http://roblox.com/asset/?id=154965973',Hitbox,1,1)
  2102. for i = 1,10 do
  2103. BreakEffect(BrickColor.new("Cyan"),hit.Parent.Torso.CFrame,0.5,math.random(5,20),0.5)
  2104. end
  2105. hitconasdf:disconnect()
  2106. end
  2107. end)
  2108. so("http://www.roblox.com/asset/?id=154965962",Hitbox,1,.9)
  2109. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,.9)
  2110. for i=0,1,0.1 do
  2111. swait()
  2112. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2113. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2114. local h = 5
  2115. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2116. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2117. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2118. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2119. scfr = blcf
  2120. elseif not scfr then
  2121. scfr = blcf
  2122. end
  2123. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.4)
  2124. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(-80)),.4)
  2125. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.4)
  2126. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*angles(math.rad(0),math.rad(-20),math.rad(-30)),.4)
  2127. LH.C0=clerp(LH.C0,cf(-1,-.9,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.4)
  2128. RH.C0=clerp(RH.C0,cf(1,-.9,0)*angles(math.rad(0),math.rad(60),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.4)
  2129. handleweld.C0=clerp(handleweld.C0,cf(0,-1,-1)*angles(math.rad(-90),math.rad(0),math.rad(0)),.4)
  2130. end
  2131. con:disconnect()
  2132. attack=false
  2133. scfr = nil
  2134. pcall(function()
  2135. hitconasdf:disconnect()
  2136. end)
  2137. end
  2138.  
  2139. function Spin()
  2140. attack=true
  2141. local con=Hitbox.Touched:connect(function(hit) Damagefunc(Hitbox,hit,30,50,math.random(10,20),"Normal",RootPart,.2,1) end)
  2142. hitconasdf = Hitbox.Touched:connect(function(hit)
  2143. local hum12 = hit.Parent:FindFirstChild("Humanoid")
  2144. if hum12 and not hum12:IsDescendantOf(Character) then
  2145. so('http://roblox.com/asset/?id=154965973',Hitbox,1,1)
  2146. for i = 1,10 do
  2147. BreakEffect(BrickColor.new("Cyan"),hit.Parent.Torso.CFrame,0.5,math.random(5,20),0.5)
  2148. end
  2149. hitconasdf:disconnect()
  2150. end
  2151. end)
  2152. for i=0,1,1 do
  2153. so("http://roblox.com/asset/?id=154965962",Hitbox,1,1)
  2154. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,1)
  2155. swait()
  2156. for i=0,1,0.1 do
  2157. swait()
  2158. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2159. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2160. local h = 5
  2161. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2162. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2163. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2164. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2165. scfr = blcf
  2166. elseif not scfr then
  2167. scfr = blcf
  2168. end
  2169. RW.C0=clerp(RW.C0,cf(1,0.5,-.5)*angles(math.rad(90),math.rad(0),math.rad(-50)),.3)
  2170. LW.C0=clerp(LW.C0,cf(-1,0.5,-.5)*angles(math.rad(90),math.rad(0),math.rad(50)),.3)
  2171. LH.C0=clerp(LH.C0,cf(-1,-.5,-1)*angles(math.rad(-20),math.rad(-90),math.rad(0)),.3)
  2172. RH.C0=clerp(RH.C0,cf(1,-.5,-1)*angles(math.rad(-20),math.rad(90),math.rad(0)),.3)
  2173. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,5)*euler(6*i,0,0),.5)
  2174. handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(30)),1)
  2175. end
  2176. end
  2177. attack=false
  2178. con:disconnect()
  2179. scfr = nil
  2180. pcall(function()
  2181. hitconasdf:disconnect()
  2182. end)
  2183. end
  2184.  
  2185. function ContAttack()
  2186. attack=true
  2187. local con=Hitbox.Touched:connect(function(hit) Damagefunc(Hitbox,hit,30,50,math.random(10,20),"Normal",RootPart,.2,1) end)
  2188. hitconasdf = Hitbox.Touched:connect(function(hit)
  2189. local hum12 = hit.Parent:FindFirstChild("Humanoid")
  2190. if hum12 and not hum12:IsDescendantOf(Character) then
  2191. so('http://roblox.com/asset/?id=154965973',Hitbox,1,1)
  2192. for i = 1,10 do
  2193. BreakEffect(BrickColor.new("Cyan"),hit.Parent.Torso.CFrame,0.5,math.random(5,20),0.5)
  2194. end
  2195. hitconasdf:disconnect()
  2196. end
  2197. end)
  2198. for i=1,4 do
  2199. swait()
  2200. for i=0,1,0.2 do
  2201. swait()
  2202. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(120),math.rad(0),math.rad(20)),.3)
  2203. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-90)),.3)
  2204. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-50),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2205. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(120),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2206. handleweld.C0=clerp(handleweld.C0,cf(0,-0,.4)*angles(math.rad(70),math.rad(-10),math.rad(0)),.3)
  2207. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  2208. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(50)),.3)
  2209. end
  2210. so("http://www.roblox.com/asset/?id=154965962",Hitbox,1,1)
  2211. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,1)
  2212. for i=0,1,0.2 do
  2213. swait()
  2214. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2215. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2216. local h = 5
  2217. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2218. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2219. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2220. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2221. scfr = blcf
  2222. elseif not scfr then
  2223. scfr = blcf
  2224. end
  2225. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(110),math.rad(-90),math.rad(20)),.3)
  2226. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-50)),.3)
  2227. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-120),math.rad(5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2228. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(50),math.rad(10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2229. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-60),math.rad(-10),math.rad(0)),.3)
  2230. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(90)),.3)
  2231. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(-50)),.3)
  2232. end
  2233. for i=0,1,0.2 do
  2234. swait()
  2235. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(90),math.rad(90)),.3)
  2236. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-50)),.3)
  2237. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-130),math.rad(5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2238. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(50),math.rad(10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2239. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-30),math.rad(-10),math.rad(0)),.3)
  2240. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(70)),.3)
  2241. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(-50)),.3)
  2242. end
  2243. so("http://www.roblox.com/asset/?id=154965962",Hitbox,1,.9)
  2244. so("http://www.roblox.com/asset/?id=231917758",Hitbox,1,.9)
  2245. for i=0,1,0.2 do
  2246. swait()
  2247. local blcf = Hitbox.CFrame*CFrame.new(0,.3,0)
  2248. if scfr and (Hitbox.Position-scfr.p).magnitude > .1 then
  2249. local h = 5
  2250. local a,b = Triangle((scfr*CFrame.new(0,h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p,(blcf*CFrame.new(0,h/2,0)).p)
  2251. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2252. local a,b = Triangle((blcf*CFrame.new(0,h/2,0)).p,(blcf*CFrame.new(0,-h/2,0)).p,(scfr*CFrame.new(0,-h/2,0)).p)
  2253. if a then game.Debris:AddItem(a,1) end if b then game.Debris:AddItem(b,1) end
  2254. scfr = blcf
  2255. elseif not scfr then
  2256. scfr = blcf
  2257. end
  2258. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(-50),math.rad(90)),.3)
  2259. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(-20),math.rad(-90)),.3)
  2260. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-50),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2261. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(130),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2262. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(-50),math.rad(10),math.rad(0)),.3)
  2263. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  2264. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(50)),.3)
  2265. end
  2266. end
  2267. attack=false
  2268. con:disconnect()
  2269. scfr = nil
  2270. pcall(function()
  2271. hitconasdf:disconnect()
  2272. end)
  2273. end
  2274.  
  2275.  
  2276. function Sheathe()
  2277. attack = true
  2278. so("http://www.roblox.com/asset/?id=273797222",Hitbox,1,.9)
  2279. CurrentMode = "Sheathed"
  2280. for i = 0,1,0.1 do
  2281. swait()
  2282. handleweld.Part0 = Torso
  2283. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
  2284. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(-20)),.3)
  2285. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(190),math.rad(0),math.rad(0)),.3)
  2286. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(20),math.rad(-10)),.3)
  2287. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-60),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2288. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2289. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2290. end
  2291. attack = false
  2292. end
  2293.  
  2294. function Unsheathe()
  2295. attack = true
  2296. CurrentMode = "Unsheathed"
  2297. so("http://www.roblox.com/asset/?id=239169404",Hitbox,1,.9)
  2298. for i = 0,1,0.1 do
  2299. swait()
  2300. handleweld.Part0 = RightArm
  2301. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-70)),.3)
  2302. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(0),math.rad(0),math.rad(60)),.3)
  2303. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(200),math.rad(0),math.rad(0)),.3)
  2304. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(0),math.rad(-30),math.rad(-30)),.3)
  2305. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-60),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2306. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2307. handleweld.C0=clerp(handleweld.C0,cf(0,0,0)*angles(math.rad(0),math.rad(30),math.rad(0)),.3)
  2308. end
  2309. scfr = nil
  2310. attack = false
  2311. end
  2312.  
  2313. local Sit = false
  2314.  
  2315. mouse.Button1Down:connect(function()
  2316. if attack==false then
  2317. if attacktype==1 and CurrentMode == "Unsheathed" then
  2318. attack=true
  2319. attacktype=2
  2320. attackone()
  2321. elseif attacktype==2 and CurrentMode == "Unsheathed" then
  2322. attack=true
  2323. attacktype=1
  2324. attacktwo()
  2325. end
  2326. end
  2327. end)
  2328.  
  2329.  
  2330. mouse.KeyDown:connect(function(k)
  2331. k=k:lower()
  2332. if k=='q' then
  2333. if attack==false and CurrentMode == "Unsheathed" then
  2334. Stab()
  2335. end
  2336. elseif k=='e' then
  2337. if attack==false and CurrentMode == "Unsheathed" then
  2338. Spin()
  2339. end
  2340. elseif k=='r' then
  2341. if attack==false and CurrentMode == "Unsheathed" then
  2342. ContAttack()
  2343. end
  2344. elseif k=='f' then
  2345. if attack==false and CurrentMode == "Unsheathed" then
  2346. Sheathe()
  2347. elseif k=='f' then
  2348. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2349. Unsheathe()
  2350. end
  2351. end
  2352. elseif k=='t' then
  2353. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2354. Sit = true
  2355. Humanoid.WalkSpeed = 0
  2356. elseif k=='t' then
  2357. if attack==false and Sit == true and CurrentMode == "Sheathed" then
  2358. Sit = false
  2359. Humanoid.WalkSpeed = 32
  2360. end
  2361. end
  2362.  
  2363. end
  2364. end)
  2365.  
  2366. local sine = 0
  2367. local change = 1
  2368. local val = 0
  2369.  
  2370. while true do
  2371. swait()
  2372. sine = sine + change
  2373. local torvel=(RootPart.Velocity*Vector3.new(1,0,1)).magnitude
  2374. local velderp=RootPart.Velocity.y
  2375. hitfloor,posfloor=rayCast(RootPart.Position,(CFrame.new(RootPart.Position,RootPart.Position - Vector3.new(0,1,0))).lookVector,4,Character)
  2376. if equipped==true or equipped==false then
  2377. if attack==false then
  2378. idle=idle+1
  2379. else
  2380. idle=0
  2381. end
  2382. if idle>=500 then
  2383. if attack==false then
  2384. end
  2385. end
  2386. if RootPart.Velocity.y > 1 and hitfloor==nil then
  2387. Anim="Jump"
  2388. if attack==false and Sit == false and CurrentMode == "Unsheathed" then
  2389. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
  2390. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
  2391. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(50),math.rad(0),math.rad(30)),.3)
  2392. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-40),math.rad(5),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2393. LH.C0=clerp(LH.C0,cf(-1,-.5,-1)*angles(math.rad(-20),math.rad(-90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2394. handleweld.C0=clerp(handleweld.C0,cf(0,-0,.4)*angles(math.rad(85),math.rad(-10),math.rad(0)),.3)
  2395. end
  2396. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2397. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
  2398. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-20),math.rad(0),math.rad(0)),.3)
  2399. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(30)),.3)
  2400. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(-30)),.3)
  2401. LH.C0=clerp(LH.C0,cf(-1,-1,-.2)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2402. RH.C0=clerp(RH.C0,cf(1,-1,-.2)*angles(math.rad(0),math.rad(90),math.rad(5))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2403. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2404. end
  2405. elseif RootPart.Velocity.y < -1 and hitfloor==nil then
  2406. Anim="Fall"
  2407. if attack==false and Sit == false and CurrentMode == "Unsheathed" then
  2408. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
  2409. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
  2410. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(-5),math.rad(0),math.rad(20)),.3)
  2411. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-40),math.rad(5),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2412. LH.C0=clerp(LH.C0,cf(-1,-.5,-1)*angles(math.rad(-20),math.rad(-90),math.rad(0))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2413. handleweld.C0=clerp(handleweld.C0,cf(0,-0,.4)*angles(math.rad(85),math.rad(-10),math.rad(0)),.3)
  2414. end
  2415. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2416. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
  2417. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
  2418. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(50)),.3)
  2419. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(-50)),.3)
  2420. LH.C0=clerp(LH.C0,cf(-1,-.5,-.5)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2421. RH.C0=clerp(RH.C0,cf(1,-1,-.5)*angles(math.rad(0),math.rad(90),math.rad(5))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2422. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2423. end
  2424. elseif torvel<1 and hitfloor~=nil then
  2425. Anim="Idle"
  2426. if attack==false and Sit == false and CurrentMode == "Unsheathed" then
  2427. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(-40)),.3)
  2428. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(40)),.3)
  2429. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(40),math.rad(0),math.rad(20)),.3)
  2430. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-10),math.rad(20),math.rad(-10)),.3)
  2431. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-60),math.rad(-5))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2432. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(-10))*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2433. handleweld.C0=clerp(handleweld.C0,cf(0,-0,.4)*angles(math.rad(85),math.rad(-10),math.rad(0)),.3)
  2434. end
  2435. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2436. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(0),math.rad(0),math.rad(0)),.3)
  2437. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-0),math.rad(0),math.rad(0)),.3)
  2438. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(5)),.3)
  2439. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(0),math.rad(0),math.rad(-5)),.3)
  2440. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2441. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(5))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2442. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2443. end
  2444. if attack==false and Sit == true and CurrentMode == "Sheathed" then
  2445. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,-2)*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
  2446. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
  2447. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(-10),math.rad(0),math.rad(5)),.3)
  2448. LW.C0=clerp(LW.C0,cf(-1.3,0.5,0)*euler(math.rad(90),math.rad(0),math.rad(30)),.3)
  2449. LH.C0=clerp(LH.C0,cf(-1,.7,-.5)*angles(math.rad(0),math.rad(-90),math.rad(-10))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2450. RH.C0=clerp(RH.C0,cf(1,-.5,-.5)*angles(math.rad(0),math.rad(90),math.rad(70))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2451. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2452. end
  2453. elseif torvel>2 and hitfloor~=nil then
  2454. Anim="Walk"
  2455. if attack==false and Sit == false and CurrentMode == "Unsheathed" then
  2456. change=3
  2457. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(20),math.rad(0),math.rad(0)),.3)
  2458. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-10),math.rad(0),math.rad(0)),.3)
  2459. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(-5),math.rad(0),math.rad(20)),.3)
  2460. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-30),math.rad(5),math.rad(-10)),.3)
  2461. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2462. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(0))*angles(math.rad(-3),math.rad(0),math.rad(0)),.3)
  2463. handleweld.C0=clerp(handleweld.C0,cf(0,-0,0)*angles(math.rad(15),math.rad(-10),math.rad(0)),.3)
  2464. end
  2465. if attack==false and Sit == false and CurrentMode == "Sheathed" then
  2466. RootJoint.C0=clerp(RootJoint.C0,RootCF*cf(0,0,0)*angles(math.rad(10),math.rad(0),math.rad(0)),.3)
  2467. Torso.Neck.C0=clerp(Torso.Neck.C0,necko*angles(math.rad(-5),math.rad(0),math.rad(0)),.3)
  2468. RW.C0=clerp(RW.C0,cf(1.5,0.5,0)*euler(math.rad(30*math.cos(sine/10)),math.rad(0),math.rad(5)),.3)
  2469. LW.C0=clerp(LW.C0,cf(-1.5,0.5,0)*euler(math.rad(-30*math.cos(sine/10)),math.rad(0),math.rad(-5)),.3)
  2470. LH.C0=clerp(LH.C0,cf(-1,-1,0)*angles(math.rad(0),math.rad(-90),math.rad(0))*angles(math.rad(-2),math.rad(0),math.rad(0)),.3)
  2471. RH.C0=clerp(RH.C0,cf(1,-1,0)*angles(math.rad(0),math.rad(90),math.rad(5))*angles(math.rad(-2),math.rad(0),math.rad(0)),.3)
  2472. handleweld.C0=clerp(handleweld.C0,cf(3,3,0.5)*angles(math.rad(90),math.rad(150),math.rad(90)),.3)
  2473. end
  2474. end
  2475. end
  2476. if #Effects>0 then
  2477. for e=1,#Effects do
  2478. if Effects[e]~=nil then
  2479. local Thing=Effects[e]
  2480. if Thing~=nil then
  2481. local Part=Thing[1]
  2482. local Mode=Thing[2]
  2483. local Delay=Thing[3]
  2484. local IncX=Thing[4]
  2485. local IncY=Thing[5]
  2486. local IncZ=Thing[6]
  2487. if Thing[1].Transparency<=1 then
  2488. if Thing[2]=="Block1" then
  2489. Thing[1].CFrame=Thing[1].CFrame*euler(math.random(-50,50),math.random(-50,50),math.random(-50,50))
  2490. Mesh=Thing[1].Mesh
  2491. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  2492. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2493. elseif Thing[2]=="Cylinder" then
  2494. Mesh=Thing[1].Mesh
  2495. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  2496. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2497. elseif Thing[2]=="Blood" then
  2498. Mesh=Thing[7]
  2499. Thing[1].CFrame=Thing[1].CFrame*cf(0,.5,0)
  2500. Mesh.Scale=Mesh.Scale+vt(Thing[4],Thing[5],Thing[6])
  2501. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2502. elseif Thing[2]=="Elec" then
  2503. Mesh=Thing[1].Mesh
  2504. Mesh.Scale=Mesh.Scale+vt(Thing[7],Thing[8],Thing[9])
  2505. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2506. elseif Thing[2]=="Disappear" then
  2507. Thing[1].Transparency=Thing[1].Transparency+Thing[3]
  2508. end
  2509. else
  2510. Part.Parent=nil
  2511. table.remove(Effects,e)
  2512. end
  2513. end
  2514. end
  2515. end
  2516. end
  2517. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement