Advertisement
Guest User

Untitled

a guest
Dec 13th, 2018
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 32.10 KB | None | 0 0
  1. -- This script has been converted to FE by iPxter
  2.  
  3.  
  4. if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
  5. local Player,Mouse,mouse,UserInputService,ContextActionService = owner
  6. do
  7. print("FE Compatibility code by Mokiros | Translated to FE by iPxter")
  8. script.Parent = Player.Character
  9.  
  10. --RemoteEvent for communicating
  11. local Event = Instance.new("RemoteEvent")
  12. Event.Name = "UserInput_Event"
  13.  
  14. --Fake event to make stuff like Mouse.KeyDown work
  15. local function fakeEvent()
  16. local t = {_fakeEvent=true,Connect=function(self,f)self.Function=f end}
  17. t.connect = t.Connect
  18. return t
  19. end
  20.  
  21. --Creating fake input objects with fake variables
  22. local m = {Target=nil,Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent()}
  23. local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()}
  24. local CAS = {Actions={},BindAction=function(self,name,fun,touch,...)
  25. CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil
  26. end}
  27. --Merged 2 functions into one by checking amount of arguments
  28. CAS.UnbindAction = CAS.BindAction
  29.  
  30. --This function will trigger the events that have been :Connect()'ed
  31. local function te(self,ev,...)
  32. local t = m[ev]
  33. if t and t._fakeEvent and t.Function then
  34. t.Function(...)
  35. end
  36. end
  37. m.TrigEvent = te
  38. UIS.TrigEvent = te
  39.  
  40. Event.OnServerEvent:Connect(function(plr,io)
  41. if plr~=Player then return end
  42. if io.isMouse then
  43. m.Target = io.Target
  44. m.Hit = io.Hit
  45. else
  46. local b = io.UserInputState == Enum.UserInputState.Begin
  47. if io.UserInputType == Enum.UserInputType.MouseButton1 then
  48. return m:TrigEvent(b and "Button1Down" or "Button1Up")
  49. end
  50. for _,t in pairs(CAS.Actions) do
  51. for _,k in pairs(t.Keys) do
  52. if k==io.KeyCode then
  53. t.Function(t.Name,io.UserInputState,io)
  54. end
  55. end
  56. end
  57. m:TrigEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower())
  58. UIS:TrigEvent(b and "InputBegan" or "InputEnded",io,false)
  59. end
  60. end)
  61. Event.Parent = NLS([==[
  62. local Player = game:GetService("Players").LocalPlayer
  63. local Event = script:WaitForChild("UserInput_Event")
  64.  
  65. local UIS = game:GetService("UserInputService")
  66. local input = function(io,a)
  67. if a then return end
  68. --Since InputObject is a client-side instance, we create and pass table instead
  69. Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState})
  70. end
  71. UIS.InputBegan:Connect(input)
  72. UIS.InputEnded:Connect(input)
  73.  
  74. local Mouse = Player:GetMouse()
  75. local h,t
  76. --Give the server mouse data 30 times every second, but only if the values changed
  77. --If player is not moving their mouse, client won't fire events
  78. while wait(1/30) do
  79. if h~=Mouse.Hit or t~=Mouse.Target then
  80. h,t=Mouse.Hit,Mouse.Target
  81. Event:FireServer({isMouse=true,Target=t,Hit=h})
  82. end
  83. end]==],Player.Character)
  84. Mouse,mouse,UserInputService,ContextActionService = m,m,UIS,CAS
  85. end
  86.  
  87. print("By akabob123")
  88. wait(1)
  89. Player = owner
  90. PlayerGui = Player.PlayerGui
  91. Cam = workspace.CurrentCamera
  92. Backpack = Player.Backpack
  93. Character = Player.Character
  94. Humanoid = Character.Humanoid
  95. RootPart = Character["HumanoidRootPart"]
  96. Torso = Character["Torso"]
  97. Head = Character["Head"]
  98. RightArm = Character["Right Arm"]
  99. LeftArm = Character["Left Arm"]
  100. RightLeg = Character["Right Leg"]
  101. LeftLeg = Character["Left Leg"]
  102. RootJoint = RootPart["RootJoint"]
  103. Neck = Torso["Neck"]
  104. RightShoulder = Torso["Right Shoulder"]
  105. LeftShoulder = Torso["Left Shoulder"]
  106. RightHip = Torso["Right Hip"]
  107. LeftHip = Torso["Left Hip"]
  108. local ANIM = "Idle"
  109. local ATTACK = false
  110. TAUNTING = false
  111. HOLD = false
  112. Frame_Speed = 1/60
  113. local ANIM = "Idle"
  114. Animation_Speed = 3
  115. UNANCHOR = true
  116. local ROBLOXIDLEANIMATION = Instance.new("Animation")
  117. ROBLOXIDLEANIMATION.Name = "Roblox Idle Animation"
  118. ROBLOXIDLEANIMATION.AnimationId = "http://www.roblox.com/asset/?id=180435571"
  119. local CHANGE = 2 / Animation_Speed
  120. local ANIMATOR = Humanoid.Animator
  121. local ANIMATE = Character.Animate
  122. Intro = true
  123. IT = Instance.new
  124. CF = CFrame.new
  125. VT = Vector3.new
  126. RAD = math.rad
  127. C3 = Color3.new
  128. UD2 = UDim2.new
  129. BRICKC = BrickColor.new
  130. ANGLES = CFrame.Angles
  131. EULER = CFrame.fromEulerAnglesXYZ
  132. COS = math.cos
  133. ACOS = math.acos
  134. SIN = math.sin
  135. ASIN = math.asin
  136. ABS = math.abs
  137. MRANDOM = math.random
  138. FLOOR = math.floor
  139.  
  140. --effects
  141. local Effects = IT("Folder", Character)
  142. Effects.Name = "Effects"
  143. --end effects
  144.  
  145. --c0's
  146. local ROOTC0 = CF(0, 0, 0) * ANGLES(RAD(-90), RAD(0), RAD(-180))
  147. local NECKC0 = CF(0, 1, 0) * ANGLES(RAD(-90), RAD(0), RAD(180))
  148. local RIGHTSHOULDERC0 = CF(1, 0.5, 0) * ANGLES(RAD(0), RAD(90), RAD(0))
  149. local LEFTSHOULDERC0 = CF(-1, 0.5, 0) * ANGLES(RAD(0), RAD(-90), RAD(0))
  150. --c0's
  151.  
  152. -- SAZERENOS' ARTIFICIAL HEARTBEAT
  153.  
  154.  
  155. ArtificialHB = Instance.new("BindableEvent", script)
  156. ArtificialHB.Name = "ArtificialHB"
  157.  
  158. script:WaitForChild("ArtificialHB")
  159.  
  160. frame = Frame_Speed
  161. tf = 0
  162. allowframeloss = false
  163. tossremainder = false
  164. lastframe = tick()
  165. script.ArtificialHB:Fire()
  166.  
  167. game:GetService("RunService").Heartbeat:connect(function(s, p)
  168. tf = tf + s
  169. if tf >= frame then
  170. if allowframeloss then
  171. script.ArtificialHB:Fire()
  172. lastframe = tick()
  173. else
  174. for i = 1, math.floor(tf / frame) do
  175. script.ArtificialHB:Fire()
  176. end
  177. lastframe = tick()
  178. end
  179. if tossremainder then
  180. tf = 0
  181. else
  182. tf = tf - frame * math.floor(tf / frame)
  183. end
  184. end
  185. end)
  186. --end heart beat
  187.  
  188. --really nice to have functions
  189. function CreateParticleEmmiter(PARENT, COLOR1,COLOR2, SIZE1,SIZE2, TEXTUREID, TRANSPARENCY1, TRANSPARENCY2, ZOFFSET, NAME, ACCELERATION, DRAG, LIFETIME1, LIFETIME2, RATE, ROTATION1, ROTATION2, SPEED1, SPEED2, SPREADANGLE)
  190. local prtclemm1 = Instance.new("ParticleEmitter",PARENT)
  191. prtclemm1.Color = ColorSequence.new(COLOR1, COLOR2)
  192. prtclemm1.Size = NumberSequence.new(SIZE1,SIZE2)
  193. prtclemm1.Texture = "http://www.roblox.com/asset/?id="..TEXTUREID
  194. prtclemm1.Transparency = NumberSequence.new(TRANSPARENCY1,TRANSPARENCY2)
  195. prtclemm1.ZOffset = ZOFFSET
  196. prtclemm1.Name = NAME
  197. prtclemm1.Acceleration = ACCELERATION
  198. prtclemm1.Drag = DRAG
  199. prtclemm1.Lifetime = NumberRange.new(LIFETIME1,LIFETIME2)
  200. prtclemm1.Rate = RATE
  201. prtclemm1.Rotation = NumberRange.new(ROTATION1,ROTATION2)
  202. prtclemm1.Speed = NumberRange.new(SPEED1,SPEED2)
  203. prtclemm1.SpreadAngle = SPREADANGLE
  204. return prtclemm1
  205. end
  206.  
  207. function Raycast(POSITION, DIRECTION, RANGE, IGNOREDECENDANTS)
  208. return workspace:FindPartOnRay(Ray.new(POSITION, DIRECTION.unit * RANGE), IGNOREDECENDANTS)
  209. end
  210.  
  211. function PositiveAngle(NUMBER)
  212. if NUMBER >= 0 then
  213. NUMBER = 0
  214. end
  215. return NUMBER
  216. end
  217.  
  218. function NegativeAngle(NUMBER)
  219. if NUMBER <= 0 then
  220. NUMBER = 0
  221. end
  222. return NUMBER
  223. end
  224.  
  225. function Swait(NUMBER)
  226. if NUMBER == 0 or NUMBER == nil then
  227. ArtificialHB.Event:wait()
  228. else
  229. for i = 1, NUMBER do
  230. ArtificialHB.Event:wait()
  231. end
  232. end
  233. end
  234.  
  235. function CreateMesh(MESH, PARENT, MESHTYPE, MESHID, TEXTUREID, SCALE, OFFSET)
  236. local NEWMESH = IT(MESH)
  237. if MESH == "SpecialMesh" then
  238. NEWMESH.MeshType = MESHTYPE
  239. if MESHID ~= "nil" and MESHID ~= "" then
  240. NEWMESH.MeshId = "http://www.roblox.com/asset/?id="..MESHID
  241. end
  242. if TEXTUREID ~= "nil" and TEXTUREID ~= "" then
  243. NEWMESH.TextureId = "http://www.roblox.com/asset/?id="..TEXTUREID
  244. end
  245. end
  246. NEWMESH.Offset = OFFSET or VT(0, 0, 0)
  247. NEWMESH.Scale = SCALE
  248. NEWMESH.Parent = PARENT
  249. return NEWMESH
  250. end
  251.  
  252. function CreatePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  253. local NEWPART = IT("Part")
  254. NEWPART.formFactor = FORMFACTOR
  255. NEWPART.Reflectance = REFLECTANCE
  256. NEWPART.Transparency = TRANSPARENCY
  257. NEWPART.CanCollide = false
  258. NEWPART.Locked = true
  259. NEWPART.Anchored = true
  260. if ANCHOR == false then
  261. NEWPART.Anchored = false
  262. end
  263. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  264. NEWPART.Name = NAME
  265. NEWPART.Size = SIZE
  266. NEWPART.Position = Torso.Position
  267. NEWPART.Material = MATERIAL
  268. NEWPART:BreakJoints()
  269. NEWPART.Parent = PARENT
  270. return NEWPART
  271. end
  272. function CreateWedgePart(FORMFACTOR, PARENT, MATERIAL, REFLECTANCE, TRANSPARENCY, BRICKCOLOR, NAME, SIZE, ANCHOR)
  273. local NEWPART = IT("WedgePart")
  274. NEWPART.formFactor = FORMFACTOR
  275. NEWPART.Reflectance = REFLECTANCE
  276. NEWPART.Transparency = TRANSPARENCY
  277. NEWPART.CanCollide = false
  278. NEWPART.Locked = true
  279. NEWPART.Anchored = true
  280. if ANCHOR == false then
  281. NEWPART.Anchored = false
  282. end
  283. NEWPART.BrickColor = BRICKC(tostring(BRICKCOLOR))
  284. NEWPART.Name = NAME
  285. NEWPART.Size = SIZE
  286. NEWPART.Position = Torso.Position
  287. NEWPART.Material = MATERIAL
  288. NEWPART:BreakJoints()
  289. NEWPART.Parent = PARENT
  290. return NEWPART
  291. end
  292.  
  293. local function weldBetween(a, b)
  294. local weldd = IT("Weld")
  295. weldd.Part0 = a
  296. weldd.Part1 = b
  297. weldd.C0 = CF()
  298. weldd.C1 = b.CFrame:inverse() * a.CFrame
  299. weldd.Parent = a
  300. return weldd
  301. end
  302.  
  303.  
  304. function QuaternionFromCFrame(cf)
  305. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  306. local trace = m00 + m11 + m22
  307. if trace > 0 then
  308. local s = math.sqrt(1 + trace)
  309. local recip = 0.5 / s
  310. return (m21 - m12) * recip, (m02 - m20) * recip, (m10 - m01) * recip, s * 0.5
  311. else
  312. local i = 0
  313. if m11 > m00 then
  314. i = 1
  315. end
  316. if m22 > (i == 0 and m00 or m11) then
  317. i = 2
  318. end
  319. if i == 0 then
  320. local s = math.sqrt(m00 - m11 - m22 + 1)
  321. local recip = 0.5 / s
  322. return 0.5 * s, (m10 + m01) * recip, (m20 + m02) * recip, (m21 - m12) * recip
  323. elseif i == 1 then
  324. local s = math.sqrt(m11 - m22 - m00 + 1)
  325. local recip = 0.5 / s
  326. return (m01 + m10) * recip, 0.5 * s, (m21 + m12) * recip, (m02 - m20) * recip
  327. elseif i == 2 then
  328. local s = math.sqrt(m22 - m00 - m11 + 1)
  329. local recip = 0.5 / s return (m02 + m20) * recip, (m12 + m21) * recip, 0.5 * s, (m10 - m01) * recip
  330. end
  331. end
  332. end
  333.  
  334. function QuaternionToCFrame(px, py, pz, x, y, z, w)
  335. local xs, ys, zs = x + x, y + y, z + z
  336. local wx, wy, wz = w * xs, w * ys, w * zs
  337. local xx = x * xs
  338. local xy = x * ys
  339. local xz = x * zs
  340. local yy = y * ys
  341. local yz = y * zs
  342. local zz = z * zs
  343. 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))
  344. end
  345.  
  346. function QuaternionSlerp(a, b, t)
  347. local cosTheta = a[1] * b[1] + a[2] * b[2] + a[3] * b[3] + a[4] * b[4]
  348. local startInterp, finishInterp;
  349. if cosTheta >= 0.0001 then
  350. if (1 - cosTheta) > 0.0001 then
  351. local theta = ACOS(cosTheta)
  352. local invSinTheta = 1 / SIN(theta)
  353. startInterp = SIN((1 - t) * theta) * invSinTheta
  354. finishInterp = SIN(t * theta) * invSinTheta
  355. else
  356. startInterp = 1 - t
  357. finishInterp = t
  358. end
  359. else
  360. if (1 + cosTheta) > 0.0001 then
  361. local theta = ACOS(-cosTheta)
  362. local invSinTheta = 1 / SIN(theta)
  363. startInterp = SIN((t - 1) * theta) * invSinTheta
  364. finishInterp = SIN(t * theta) * invSinTheta
  365. else
  366. startInterp = t - 1
  367. finishInterp = t
  368. end
  369. end
  370. 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
  371. end
  372.  
  373. function Clerp(a, b, t)
  374. local qa = {QuaternionFromCFrame(a)}
  375. local qb = {QuaternionFromCFrame(b)}
  376. local ax, ay, az = a.x, a.y, a.z
  377. local bx, by, bz = b.x, b.y, b.z
  378. local _t = 1 - t
  379. return QuaternionToCFrame(_t * ax + t * bx, _t * ay + t * by, _t * az + t * bz, QuaternionSlerp(qa, qb, t))
  380. end
  381.  
  382. function CreateFrame(PARENT, TRANSPARENCY, BORDERSIZEPIXEL, POSITION, SIZE, COLOR, BORDERCOLOR, NAME)
  383. local frame = IT("Frame")
  384. frame.BackgroundTransparency = TRANSPARENCY
  385. frame.BorderSizePixel = BORDERSIZEPIXEL
  386. frame.Position = POSITION
  387. frame.Size = SIZE
  388. frame.BackgroundColor3 = COLOR
  389. frame.BorderColor3 = BORDERCOLOR
  390. frame.Name = NAME
  391. frame.Parent = PARENT
  392. return frame
  393. end
  394.  
  395. function CreateLabel(PARENT, TEXT, TEXTCOLOR, TEXTFONTSIZE, TEXTFONT, TRANSPARENCY, BORDERSIZEPIXEL, STROKETRANSPARENCY, NAME)
  396. local label = IT("TextLabel")
  397. label.BackgroundTransparency = 1
  398. label.Size = UD2(1, 0, 1, 0)
  399. label.Position = UD2(0, 0, 0, 0)
  400. label.TextColor3 = TEXTCOLOR
  401. label.TextStrokeTransparency = STROKETRANSPARENCY
  402. label.TextTransparency = TRANSPARENCY
  403. label.FontSize = TEXTFONTSIZE
  404. label.Font = TEXTFONT
  405. label.BorderSizePixel = BORDERSIZEPIXEL
  406. label.TextScaled = false
  407. label.Text = TEXT
  408. label.Name = NAME
  409. label.Parent = PARENT
  410. return label
  411. end
  412.  
  413. function NoOutlines(PART)
  414. PART.TopSurface, PART.BottomSurface, PART.LeftSurface, PART.RightSurface, PART.FrontSurface, PART.BackSurface = 10, 10, 10, 10, 10, 10
  415. end
  416.  
  417. function CreateWeldOrSnapOrMotor(TYPE, PARENT, PART0, PART1, C0, C1)
  418. local NEWWELD = IT(TYPE)
  419. NEWWELD.Part0 = PART0
  420. NEWWELD.Part1 = PART1
  421. NEWWELD.C0 = C0
  422. NEWWELD.C1 = C1
  423. NEWWELD.Parent = PARENT
  424. return NEWWELD
  425. end
  426.  
  427. local S = IT("Sound")
  428. function CreateSound(ID, PARENT, VOLUME, PITCH, DOESLOOP)
  429. local NEWSOUND = nil
  430. coroutine.resume(coroutine.create(function()
  431. NEWSOUND = S:Clone()
  432. NEWSOUND.Parent = PARENT
  433. NEWSOUND.Volume = VOLUME
  434. NEWSOUND.Pitch = PITCH
  435. NEWSOUND.SoundId = "http://www.roblox.com/asset/?id="..ID
  436. NEWSOUND:play()
  437. if DOESLOOP == true then
  438. NEWSOUND.Looped = true
  439. else
  440. repeat wait(1) until NEWSOUND.Playing == false
  441. NEWSOUND:remove()
  442. end
  443. end))
  444. return NEWSOUND
  445. end
  446.  
  447. function CFrameFromTopBack(at, top, back)
  448. local right = top:Cross(back)
  449. 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)
  450. end
  451.  
  452. local BODY = {}
  453. for _, c in pairs(Character:GetDescendants()) do
  454. if c:IsA("BasePart") and c.Name ~= "Handle" then
  455. if c ~= RootPart and c ~= Torso and c ~= Head and c ~= RightArm and c ~= LeftArm and c ~= RightLeg and c ~= LeftLeg then
  456. c.CustomPhysicalProperties = PhysicalProperties.new(0, 0, 0, 0, 0)
  457. end
  458. table.insert(BODY,{c,c.Parent,c.Material,c.Color,c.Transparency,c.Size,c.Name})
  459. elseif c:IsA("JointInstance") then
  460. table.insert(BODY,{c,c.Parent,nil,nil,nil,nil,nil})
  461. end
  462. end
  463. function refit()
  464. Character.Parent = workspace
  465. for e = 1, #BODY do
  466. if BODY[e] ~= nil then
  467. local STUFF = BODY[e]
  468. local PART = STUFF[1]
  469. local PARENT = STUFF[2]
  470. local MATERIAL = STUFF[3]
  471. local COLOR = STUFF[4]
  472. local TRANSPARENCY = STUFF[5]
  473. --local SIZE = STUFF[6]
  474. local NAME = STUFF[7]
  475. if PART.ClassName == "Part" and PART ~= RootPart then
  476. PART.Material = MATERIAL
  477. PART.Transparency = TRANSPARENCY
  478. PART.Name = NAME
  479. end
  480. if PART.Parent ~= PARENT then
  481. Humanoid:remove()
  482. PART.Parent = PARENT
  483. Humanoid = IT("Humanoid",Character)
  484. end
  485. Humanoid.MaxHealth = "inf"
  486. Humanoid.Health = "Inf"
  487. end
  488. end
  489. end
  490. function FindNearestHead(Position, Distance, SinglePlayer)
  491. if SinglePlayer then
  492. return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
  493. end
  494. local List = {}
  495. for i, v in pairs(workspace:GetChildren()) do
  496. if v:IsA("Model") and v:findFirstChild("Head") and v ~= Character and Distance >= (v.Head.Position - Position).magnitude then
  497. table.insert(List, v)
  498. end
  499. end
  500. return List
  501. end
  502. -- end functions
  503. --looks
  504. for _, c in pairs(Character:GetChildren()) do
  505. if c.ClassName == "Pants" then
  506. c:remove()
  507. end
  508. if c.ClassName == "Shirt" then
  509. c:remove()
  510. end
  511. if c.ClassName == "Accessory" then
  512. c:remove()
  513. end
  514. if c == Head then
  515. helm = Instance.new("Part")
  516. helm.Size = VT(2,1,1)
  517. helm.Parent = Head
  518. helm.CFrame = Head.CFrame
  519. weldBetween(helm,Head)
  520. helmm = Instance.new("SpecialMesh")
  521. helmm.MeshId = "http://www.roblox.com/asset/?id=18752668"
  522. helmm.TextureId = "http://www.roblox.com/asset/?id=18752665"
  523. helmm.Offset = VT(0,0.5,0)
  524. helmm.Parent = helm
  525. if c:FindFirstChild("face") then
  526. c.face:remove()
  527. end
  528. end
  529. end
  530. kshirt = Instance.new("Shirt")
  531. kshirt.ShirtTemplate = "rbxassetid://177668451"
  532. kshirt.Parent = Character
  533.  
  534.  
  535. kpants = Instance.new("Pants")
  536. kpants.PantsTemplate = "rbxassetid://177668579"
  537. kpants.Parent = Character
  538.  
  539. sword = CreatePart(3, RightArm, "Neon", 0.5, 0, BRICKC("Grey"), "Sword", VT(1,5,1.5/2), false)
  540. CreateMesh("SpecialMesh", sword, "FileMesh", "77403584", "77403631", VT(1,3/2,1.5/2), VT(0,0,0))
  541. CreateWeldOrSnapOrMotor("Weld", sword, RightArm, sword, CF(0,-1,-2) * ANGLES(RAD(175), RAD(0),RAD(90)), CF(0,0,0))
  542.  
  543. --end looks
  544. local WEAPONGUI = IT("ScreenGui", PlayerGui)
  545. WEAPONGUI.Name = "Weapon GUI"
  546. script.Parent = WEAPONGUI
  547. function attack()
  548. Swait()
  549. ATTACK = true
  550. local SwdHitBox = CreatePart(3, RightArm, "Plastic", 0, 1, BRICKC("Really red"), "SwordHitBox", VT(1,4,1), false)
  551. CreateWeldOrSnapOrMotor("Weld", SwdHitBox, RightArm, SwdHitBox, CF(0,-1,-2.5) * ANGLES(RAD(90),RAD(0),RAD(0)), CF(0,0,0))
  552.  
  553. local tuchies = SwdHitBox.Touched:connect(function(Thinghit)
  554. if Thinghit.Name ~= "Base" then
  555. Thinghit:remove()
  556. end
  557. end)
  558. for i = 0,1,0.1 do
  559. Swait()
  560. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1/Animation_Speed)
  561. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(-60+ 3 * SIN(SINE/18)),RAD(-50),RAD(0)), 1 / Animation_Speed)
  562. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0.,0 + 0.1 * SIN(SINE/18),0) * ANGLES(RAD(-10 + 3 * COS(SINE/18)), RAD(30 + 3 * SIN(SINE/18)), RAD(0)), 1 / Animation_Speed)
  563. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  564. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  565. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(-50)), 1 / Animation_Speed)
  566. end
  567. SwdHitBox:remove()
  568. ATTACK = false
  569. end
  570.  
  571. function FindNearestHead(Position, Distance, SinglePlayer)
  572. if SinglePlayer then
  573. return Distance > (SinglePlayer.Torso.CFrame.p - Position).magnitude
  574. end
  575. local List = {}
  576. for i, v in pairs(workspace:GetChildren()) do
  577. if v:IsA("Model") and v:findFirstChild("Head") and v ~= Character and Distance >= (v.Head.Position - Position).magnitude then
  578. table.insert(List, v)
  579. end
  580. end
  581. return List
  582. end
  583.  
  584. function Eviscerate(dude)
  585. if dude.Name ~= Character then
  586. local bgf = IT("BodyGyro", dude.Head)
  587. bgf.CFrame = bgf.CFrame * CFrame.fromEulerAnglesXYZ(RAD(-90), 0, 0)
  588. local val = IT("BoolValue", dude)
  589. val.Name = "IsHit"
  590. local ds = coroutine.wrap(function()
  591. dude:WaitForChild("Head"):BreakJoints()
  592. wait(0.5)
  593. local target = nil
  594. coroutine.resume(coroutine.create(function()
  595. for i, v in pairs(dude:GetChildren()) do
  596. if v:IsA("Accessory") then
  597. v:Destroy()
  598. end
  599. if v:IsA("Humanoid") then
  600. v:Destroy()
  601. end
  602. if v:IsA("CharacterMesh") then
  603. v:Destroy()
  604. end
  605. if v:IsA("Model") then
  606. v:Destroy()
  607. end
  608. if v:IsA("Part") or v:IsA("MeshPart") then
  609. for x, o in pairs(v:GetChildren()) do
  610. if o:IsA("Decal") then
  611. o:Destroy()
  612. end
  613. end
  614. coroutine.resume(coroutine.create(function()
  615. v.Material = "Neon"
  616. v.CanCollide = false
  617. local PartEmmit1 = IT("ParticleEmitter", v)
  618. PartEmmit1.LightEmission = 1
  619. PartEmmit1.Texture = "rbxassetid://284205403"
  620. PartEmmit1.Color = ColorSequence.new(C3(255,0,0),C3(0,0,0))
  621. PartEmmit1.Rate = 150
  622. PartEmmit1.Lifetime = NumberRange.new(1)
  623. PartEmmit1.Size = NumberSequence.new({
  624. NumberSequenceKeypoint.new(0, 0.75, 0),
  625. NumberSequenceKeypoint.new(1, 0, 0)
  626. })
  627. PartEmmit1.Transparency = NumberSequence.new({
  628. NumberSequenceKeypoint.new(0, 0, 0),
  629. NumberSequenceKeypoint.new(1, 1, 0)
  630. })
  631. PartEmmit1.Speed = NumberRange.new(0, 0)
  632. PartEmmit1.VelocitySpread = 30000
  633. PartEmmit1.Rotation = NumberRange.new(-500, 500)
  634. PartEmmit1.RotSpeed = NumberRange.new(-500, 500)
  635. local BodPoss = IT("BodyPosition", v)
  636. BodPoss.P = 3000
  637. BodPoss.D = 1000
  638. BodPoss.maxForce = Vector3.new(50000000000, 50000000000, 50000000000)
  639. BodPoss.position = v.Position + Vector3.new(MRANDOM(-15, 15), MRANDOM(-15, 15), MRANDOM(-15, 15))
  640. v.Color = C3(255,255,0)
  641. coroutine.resume(coroutine.create(function()
  642. for i = 0, 49 do
  643. Swait(1)
  644. v.Transparency = v.Transparency + 0.08
  645. end
  646. wait(0.5)
  647. PartEmmit1.Enabled = false
  648. wait(3)
  649. v:Destroy()
  650. dude:Destroy()
  651. end))
  652. end))
  653. end
  654. end
  655. end))
  656. end)
  657. ds()
  658. end
  659. end
  660. local maincolor = BrickColor.new("Bright yellow")
  661. function Magic(bonuspeed, type, pos, scale, value, color, MType)
  662. local type = type
  663. local rng = Instance.new("Part", Character)
  664. rng.Anchored = true
  665. rng.BrickColor = color
  666. rng.CanCollide = false
  667. rng.FormFactor = 3
  668. rng.Name = "Ring"
  669. rng.Material = "Neon"
  670. rng.Size = Vector3.new(1, 1, 1)
  671. rng.Transparency = 0
  672. rng.TopSurface = 0
  673. rng.BottomSurface = 0
  674. rng.CFrame = pos
  675. local rngm = Instance.new("SpecialMesh", rng)
  676. rngm.MeshType = MType
  677. rngm.Scale = scale
  678. local scaler2 = 1
  679. if type == "Add" then
  680. scaler2 = 1 * value
  681. elseif type == "Divide" then
  682. scaler2 = 1 / value
  683. end
  684. coroutine.resume(coroutine.create(function()
  685. for i = 0, 10 / bonuspeed, 0.1 do
  686. Swait()
  687. if type == "Add" then
  688. scaler2 = scaler2 - 0.01 * value / bonuspeed
  689. elseif type == "Divide" then
  690. scaler2 = scaler2 - 0.01 / value * bonuspeed
  691. end
  692. rng.Transparency = rng.Transparency + 0.01 * bonuspeed
  693. rngm.Scale = rngm.Scale + Vector3.new(scaler2 * bonuspeed, scaler2 * bonuspeed, scaler2 * bonuspeed)
  694. end
  695. rng:Destroy()
  696. end))
  697. end
  698.  
  699.  
  700.  
  701.  
  702. local crossprt1 = CreatePart(3, LeftArm, "Neon", 0, 0, "Bright yellow", "Cross1", VT(0.2,2,0.2), false)
  703. CreateWeldOrSnapOrMotor("Weld", crossprt1, LeftArm, crossprt1, CF(0,-1.1,-0.25) * ANGLES(RAD(90),RAD(0),RAD(0)), CF(0,0,0))
  704. local crossprt2 = CreatePart(3, LeftArm, "Neon", 0, 0, "Bright yellow", "Cross2", VT(1.3,0.2,0.2), false)
  705. CreateWeldOrSnapOrMotor("Weld", crossprt2, LeftArm, crossprt2, CF(0,-1.1,-0.5) * ANGLES(RAD(0),RAD(0),RAD(0)), CF(0,0,0))
  706.  
  707.  
  708.  
  709. function smite()
  710. ATTACK = true
  711. CreateSound(585548493, Torso, 10, 1, false)
  712. local GYRO = IT("BodyGyro",RootPart)
  713. GYRO.D = 100
  714. GYRO.P = 2000
  715. GYRO.MaxTorque = VT(0,4000000,0)
  716. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  717. wait(0.2)
  718. for i = 0,4,0.1 do
  719. Swait()
  720. GYRO.cframe = CF(RootPart.Position,Mouse.Hit.p)
  721. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(0), RAD(0), RAD(-90)), 1/Animation_Speed)
  722. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(-10+ 3 * SIN(SINE/18)),RAD(-50),RAD(0)), 1 / Animation_Speed)
  723. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(-0.4,0 + 0.1 * SIN(SINE/18),0.3) * ANGLES(RAD(-90 + 3 * COS(SINE/18)), RAD(90 + 3 * SIN(SINE/18)), RAD(0)), 1 / Animation_Speed)
  724. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  725. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  726. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(50)), 1 / Animation_Speed)
  727. end
  728. Magic(5, "Add", mouse.Hit * CFrame.new(0, -2.9, 0), Vector3.new(0, 0, 0), 1, maincolor, "Sphere")
  729. Magic(10, "Add", mouse.Hit * CFrame.new(0, -2.9, 0), Vector3.new(0, 0, 0), 2, maincolor, "Sphere")
  730. Magic(1, "Add", mouse.Hit, Vector3.new(1, 100000, 1), 0.5, maincolor, "Sphere")
  731. Magic(1, "Add", mouse.Hit, Vector3.new(1, 1, 1), 0.75, maincolor, "Sphere")
  732. CreateSound(858154930, Character, 5, 1, false)
  733. for i, v in pairs(FindNearestHead(mouse.Hit.p, 14.5)) do
  734. if v:FindFirstChild("Head") then
  735. Eviscerate(v)
  736. end
  737. end
  738. GYRO:remove()
  739. ATTACK = false
  740. end
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747. function taunt()
  748. Swait()
  749. ATTACK = true
  750. local DEUSVULT = CreateSound(585548493, Torso, 10, 1, false)
  751. for i = 0,5,0.1 do
  752. Swait()
  753. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1/Animation_Speed)
  754. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(MRANDOM(1,359)),RAD(MRANDOM(1,359)),RAD(MRANDOM(1,360))), 1 / Animation_Speed)
  755. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0.,0 + 0.1 * SIN(SINE/18),0) * ANGLES(RAD(MRANDOM(1,359)), RAD(MRANDOM(1,359)), RAD(MRANDOM(1,359))), 1 / Animation_Speed)
  756. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  757. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  758. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(MRANDOM(1,359)),RAD(MRANDOM(1,359)),RAD(MRANDOM(1,359))), 1 / Animation_Speed)
  759. end
  760. ATTACK = false
  761. end
  762. musictime = 0
  763. music = Instance.new("Sound")
  764. music.Parent = Torso
  765. music.Volume = 0
  766. music.Looped = true
  767. music.Pitch = 1
  768. music.Name = "TemplarMusic"
  769. music.SoundId = "rbxassetid://774334527"
  770. music:Play()
  771. musictime = 0
  772. Torso.ChildRemoved:connect(function(removed)
  773. if removed.Name == "TemplarMusic" then
  774. music = Instance.new("Sound")
  775. music.Parent = Torso
  776. music.Volume = 0
  777. music.Looped = true
  778. music.Pitch = 1
  779. music.Name = "TemplarMusic"
  780. music.TimePosition = musictime
  781. music.SoundId = "rbxassetid://774334527"
  782. music:Play()
  783. end
  784. end)
  785. function mute()
  786. if music.Volume ~= 0 then
  787. music.Volume = 0
  788. else
  789. music.Volume = 5
  790. end
  791. end
  792. function volup()
  793. music.Volume = music.Volume + 0.5
  794. end
  795. function Voldown()
  796. music.Volume = music.Volume - 0.5
  797. end
  798.  
  799.  
  800.  
  801. function MouseDown(Mouse)
  802. if ATTACK == false then
  803. attack()
  804. end
  805. end
  806.  
  807. function MouseUp(Mouse)
  808. HOLD = false
  809. end
  810.  
  811. function KeyDown(Key)
  812. KEYHOLD = true
  813. if Key == "t" and ATTACK == false then
  814. taunt()
  815. end
  816. if Key == "m" then
  817. mute()
  818. end
  819. if Key == "n" then
  820. Voldown()
  821. end
  822. if Key == "b" then
  823. volup()
  824. end
  825. if Key == "z" and ATTACK == false then
  826. smite()
  827. end
  828. end
  829.  
  830. function KeyUp(Key)
  831. KEYHOLD = false
  832. end
  833.  
  834. Mouse.Button1Down:connect(function(NEWKEY)
  835. MouseDown(NEWKEY)
  836. end)
  837. Mouse.Button1Up:connect(function(NEWKEY)
  838. MouseUp(NEWKEY)
  839. end)
  840. Mouse.KeyDown:connect(function(NEWKEY)
  841. KeyDown(NEWKEY)
  842. end)
  843. Mouse.KeyUp:connect(function(NEWKEY)
  844. KeyUp(NEWKEY)
  845. end)
  846. --unanchor
  847. function AntiTimeStop()
  848. for _, c in pairs(Character:GetChildren()) do
  849. if c:IsA("BasePart") and c ~= RootPart then
  850. c.Anchored = false
  851. end
  852. end
  853. if UNANCHOR == true then
  854. RootPart.Anchored = false
  855. else
  856. RootPart.Anchored = true
  857. end
  858. end
  859. --unanchor
  860. SINE = 0
  861.  
  862. while true do
  863. Humanoid.HipHeight = 0
  864. ANIMATE.Parent = nil
  865. for _,v in next, Humanoid:GetPlayingAnimationTracks() do
  866. v:Stop();
  867. end
  868. Swait()
  869. SINE = SINE + CHANGE
  870. local TORSOVELOCITY = (RootPart.Velocity * VT(1, 0, 1)).magnitude
  871. local TORSOVERTICALVELOCITY = RootPart.Velocity.y
  872. local HITFLOOR = Raycast(RootPart.Position, (CF(RootPart.Position, RootPart.Position + VT(0, -1, 0))).lookVector, 4, Character)
  873. if TORSOVELOCITY < 1 and HITFLOOR ~= nil and ATTACK ~= true then
  874. ANIM = "Idle"
  875. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(0), RAD(0), RAD(50)), 1/Animation_Speed)
  876. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(-10+ 3 * SIN(SINE/18)),RAD(-50),RAD(0)), 1 / Animation_Speed)
  877. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0.,0 + 0.1 * SIN(SINE/18),0) * ANGLES(RAD(-10 + 3 * COS(SINE/18)), RAD(30 + 3 * SIN(SINE/18)), RAD(0)), 1 / Animation_Speed)
  878. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  879. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  880. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(-50)), 1 / Animation_Speed)
  881. end
  882. if TORSOVELOCITY > 1 and HITFLOOR ~= nil and ATTACK ~= true then
  883. ANIM = "Walk"
  884. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,-0.1,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(10), RAD(0), RAD(0)), 1/Animation_Speed)
  885. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(-0.3, -0.5 - 0.1 * SIN(SINE/12),0.5) * ANGLES(RAD(-90),RAD(0),RAD(-30+1 *COS(SINE/6))), 1 / Animation_Speed)
  886. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0,0 + 0.1 * SIN(SINE/12),0) * ANGLES(RAD(0), RAD(0), RAD(3*10*COS(SINE/6))), 1 / Animation_Speed)
  887. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.2 * COS(SINE/6),0 + 0.3 *SIN(SINE/6)) * ANGLES(RAD(10 * 2 * COS(SINE/6)), RAD(90), RAD(0)), 1 / Animation_Speed)
  888. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 + 0.2 * COS(SINE/6),0 - 0.3 *SIN(SINE/6)) * ANGLES(RAD(-10 * 2 * COS(SINE/6)), RAD(-90), RAD(0)), 1 / Animation_Speed)
  889. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 1 / Animation_Speed)
  890. end
  891. if TORSOVERTICALVELOCITY < -1 and HITFLOOR == nil then
  892. ANIM = "Fall"
  893. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(-10), RAD(0), RAD(0)), 1/Animation_Speed)
  894. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(-10+ 3 * SIN(SINE/18)),RAD(-50),RAD(0)), 1 / Animation_Speed)
  895. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0.,0 + 0.1 * SIN(SINE/18),0) * ANGLES(RAD(-10 + 3 * COS(SINE/18)), RAD(30 + 3 * SIN(SINE/18)), RAD(0)), 1 / Animation_Speed)
  896. RightHip.C0 = Clerp(RightHip.C0, CF(1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  897. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-1 - 0.03 * SIN(SINE/18),0) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  898. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 1 / Animation_Speed)
  899. end
  900. if TORSOVERTICALVELOCITY > 1 and HITFLOOR == nil then
  901. ANIM = "Jump"
  902. RootJoint.C0 = Clerp(RootJoint.C0, ROOTC0 * CF(0,0,0.1 + 0.05 * SIN(SINE/18)) * ANGLES(RAD(10), RAD(0), RAD(0)), 1/Animation_Speed)
  903. RightShoulder.C0 = Clerp(RightShoulder.C0, RIGHTSHOULDERC0 * CF(0.6,0 + 0.1 * SIN(SINE/18),0.2) * ANGLES(RAD(-10+ 3 * SIN(SINE/18)),RAD(-50),RAD(0)), 1 / Animation_Speed)
  904. LeftShoulder.C0 = Clerp(LeftShoulder.C0, LEFTSHOULDERC0 * CF(0.,0 + 0.1 * SIN(SINE/18),0) * ANGLES(RAD(-10 + 3 * COS(SINE/18)), RAD(30 + 3 * SIN(SINE/18)), RAD(0)), 1 / Animation_Speed)
  905. RightHip.C0 = Clerp(RightHip.C0, CF(1,-0.5 - 0.03 * SIN(SINE/18),-0.5) * ANGLES(RAD(0), RAD(70), RAD(0)), 1 / Animation_Speed)
  906. LeftHip.C0 = Clerp(LeftHip.C0, CF(-1,-0.5 - 0.03 * SIN(SINE/18),-0.5) * ANGLES(RAD(0), RAD(-70), RAD(0)), 1 / Animation_Speed)
  907. Neck.C0 = Clerp(Neck.C0, NECKC0 * CF(0,0,0) * ANGLES(RAD(0),RAD(0),RAD(0)), 1 / Animation_Speed)
  908. end
  909. AntiTimeStop()
  910. refit()
  911. musictime = music.TimePosition
  912. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement