Advertisement
LoKBloxed

sword

Dec 7th, 2019
547
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.32 KB | None | 0 0
  1. if game:GetService("RunService"):IsClient() then error("This aint it chief") end
  2.  
  3. local Player,game,owner = owner,game
  4.  
  5. local RealPlayer = Player
  6.  
  7. do print("Made by lookingBloxed")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end
  8.  
  9. --by lookingbloxed
  10. function sandbox(var,func)
  11. local env = getfenv(func)
  12. local newenv = setmetatable({},{
  13. __index = function(self,k)
  14. if k=="script" then
  15. return var
  16. else
  17. return env[k]
  18. end
  19. end,
  20. })
  21. setfenv(func,newenv)
  22. return func
  23. end
  24. cors = {}
  25. mas = Instance.new("Model",game:GetService("Lighting"))
  26. Tool0 = Instance.new("Tool")
  27. Part1 = Instance.new("Part")
  28. Sound2 = Instance.new("Sound")
  29. Sound3 = Instance.new("Sound")
  30. Sound4 = Instance.new("Sound")
  31. Decal5 = Instance.new("Decal")
  32. Decal6 = Instance.new("Decal")
  33. Script7 = Instance.new("Script")
  34. LocalScript8 = Instance.new("LocalScript")
  35. Camera9 = Instance.new("Camera")
  36. Tool0.Name = "Diamond Sword"
  37. Tool0.Parent = mas
  38. Tool0.TextureId = "rbxassetid://3564404506"
  39. Tool0.Grip = CFrame.new(0, 0, -1.5, 0, 0, 1, 1, 0, 0, 0, 1, 0)
  40. Tool0.GripForward = Vector3.new(-1, -0, -0)
  41. Tool0.GripPos = Vector3.new(0, 0, -1.5)
  42. Tool0.GripRight = Vector3.new(0, 1, 0)
  43. Tool0.GripUp = Vector3.new(0, 0, 1)
  44. Part1.Name = "Handle"
  45. Part1.Parent = Tool0
  46. Part1.CFrame = CFrame.new(6.17307138, 4.61384964, 5.33103657, 0.0910440385, -0.881099463, 0.464084357, 0.537011683, 0.435894847, 0.722229123, -0.838648558, 0.183463722, 0.512845576)
  47. Part1.Orientation = Vector3.new(-46.2400017, 42.1399994, 50.9300003)
  48. Part1.Position = Vector3.new(6.17307138, 4.61384964, 5.33103657)
  49. Part1.Rotation = Vector3.new(-54.6199989, 27.6499996, 84.0999985)
  50. Part1.Color = Color3.new(0.388235, 0.372549, 0.384314)
  51. Part1.Transparency = 1
  52. Part1.Size = Vector3.new(3.95999885, 0.0500000007, 4.849998)
  53. Part1.BottomSurface = Enum.SurfaceType.Smooth
  54. Part1.BrickColor = BrickColor.new("Dark stone grey")
  55. Part1.Reflectance = 0.40000000596046
  56. Part1.TopSurface = Enum.SurfaceType.Smooth
  57. Part1.brickColor = BrickColor.new("Dark stone grey")
  58. Part1.FormFactor = Enum.FormFactor.Plate
  59. Part1.formFactor = Enum.FormFactor.Plate
  60. Sound2.Name = "SwordSlash"
  61. Sound2.Parent = Part1
  62. Sound2.SoundId = "rbxassetid://4018616850"
  63. Sound2.Volume = 0.69999998807907
  64. Sound3.Name = "SwordLunge"
  65. Sound3.Parent = Part1
  66. Sound3.SoundId = "rbxassetid://4018616850"
  67. Sound3.Volume = 0.60000002384186
  68. Sound4.Name = "Unsheath"
  69. Sound4.Parent = Part1
  70. Sound4.SoundId = "http://www.roblox.com/asset/?id=12222225"
  71. Sound4.Volume = 1
  72. Decal5.Parent = Part1
  73. Decal5.Texture = "rbxassetid://3560429994"
  74. Decal5.Face = Enum.NormalId.Bottom
  75. Decal6.Parent = Part1
  76. Decal6.Texture = "rbxassetid://3560429994"
  77. Decal6.Face = Enum.NormalId.Top
  78. Script7.Name = "SwordScript"
  79. Script7.Parent = Tool0
  80. table.insert(cors,sandbox(Script7,function()
  81.  
  82.  
  83. Tool = script.Parent
  84. Handle = Tool:WaitForChild("Handle")
  85.  
  86. function Create(ty)
  87. return function(data)
  88. local obj = Instance.new(ty)
  89. for k, v in pairs(data) do
  90. if type(k) == 'number' then
  91. v.Parent = obj
  92. else
  93. obj[k] = v
  94. end
  95. end
  96. return obj
  97. end
  98. end
  99.  
  100. local BaseUrl = "rbxassetid://"
  101.  
  102. Players = game:GetService("Players")
  103. Debris = game:GetService("Debris")
  104. RunService = game:GetService("RunService")
  105.  
  106. DamageValues = {
  107. BaseDamage = 7,
  108. SlashDamage = 10,
  109. LungeDamage = 30
  110. }
  111.  
  112. --For R15 avatars
  113. Animations = {
  114. R15Slash = 522635514,
  115. R15Lunge = 522638767
  116. }
  117.  
  118. Damage = DamageValues.BaseDamage
  119.  
  120. Grips = {
  121. Up = CFrame.new(0, 0, -1.00000005, 0, 0, 1, 1, 0, 0, 0, 1, 0),
  122. Out = CFrame.new(0, 0, -1.70000005, 0, 1, 0, 1, -0, 0, 0, 0, -1)
  123. }
  124.  
  125. Sounds = {
  126. Slash = Handle:WaitForChild("SwordSlash"),
  127. Lunge = Handle:WaitForChild("SwordLunge"),
  128. Unsheath = Handle:WaitForChild("Unsheath")
  129. }
  130.  
  131. ToolEquipped = false
  132.  
  133. --For Omega Rainbow Katana thumbnail to display a lot of particles.
  134. for i, v in pairs(Handle:GetChildren()) do
  135. if v:IsA("ParticleEmitter") then
  136. v.Rate = 20
  137. end
  138. end
  139.  
  140. Tool.Grip = Grips.Up
  141. Tool.Enabled = true
  142.  
  143. function IsTeamMate(Player1, Player2)
  144. return (Player1 and Player2 and not Player1.Neutral and not Player2.Neutral and Player1.TeamColor == Player2.TeamColor)
  145. end
  146.  
  147. function TagHumanoid(humanoid, player)
  148. local Creator_Tag = Instance.new("ObjectValue")
  149. Creator_Tag.Name = "creator"
  150. Creator_Tag.Value = player
  151. Debris:AddItem(Creator_Tag, 2)
  152. Creator_Tag.Parent = humanoid
  153. end
  154.  
  155. function UntagHumanoid(humanoid)
  156. for i, v in pairs(humanoid:GetChildren()) do
  157. if v:IsA("ObjectValue") and v.Name == "creator" then
  158. v:Destroy()
  159. end
  160. end
  161. end
  162.  
  163. function Blow(Hit)
  164. if not Hit or not Hit.Parent or not CheckIfAlive() or not ToolEquipped then
  165. return
  166. end
  167. local RightArm = Character:FindFirstChild("Right Arm") or Character:FindFirstChild("RightHand")
  168. if not RightArm then
  169. return
  170. end
  171. local RightGrip = RightArm:FindFirstChild("RightGrip")
  172. if not RightGrip or (RightGrip.Part0 ~= Handle and RightGrip.Part1 ~= Handle) then
  173. return
  174. end
  175. local character = Hit.Parent
  176. if character == Character then
  177. return
  178. end
  179. local humanoid = character:FindFirstChildOfClass("Humanoid")
  180. if not humanoid or humanoid.Health == 0 then
  181. return
  182. end
  183. local player = Players:GetPlayerFromCharacter(character)
  184. if player and (player == Player or IsTeamMate(Player, player)) then
  185. return
  186. end
  187. UntagHumanoid(humanoid)
  188. TagHumanoid(humanoid, Player)
  189. humanoid:TakeDamage(Damage)
  190. end
  191.  
  192.  
  193. function Attack()
  194. Damage = DamageValues.SlashDamage
  195. Sounds.Slash:Play()
  196.  
  197. if Humanoid then
  198. if Humanoid.RigType == Enum.HumanoidRigType.R6 then
  199. local Anim = Instance.new("StringValue")
  200. Anim.Name = "toolanim"
  201. Anim.Value = "Slash"
  202. Anim.Parent = Tool
  203. elseif Humanoid.RigType == Enum.HumanoidRigType.R15 then
  204. local Anim = Tool:FindFirstChild("R15Slash")
  205. if Anim then
  206. local Track = Humanoid:LoadAnimation(Anim)
  207. Track:Play(0)
  208. end
  209. end
  210. end
  211. end
  212.  
  213. function Lunge()
  214. Damage = DamageValues.LungeDamage
  215.  
  216. Sounds.Lunge:Play()
  217.  
  218. if Humanoid then
  219. if Humanoid.RigType == Enum.HumanoidRigType.R6 then
  220. local Anim = Instance.new("StringValue")
  221. Anim.Name = "toolanim"
  222. Anim.Value = "Lunge"
  223. Anim.Parent = Tool
  224. elseif Humanoid.RigType == Enum.HumanoidRigType.R15 then
  225. local Anim = Tool:FindFirstChild("R15Lunge")
  226. if Anim then
  227. local Track = Humanoid:LoadAnimation(Anim)
  228. Track:Play(0)
  229. end
  230. end
  231. end
  232. --[[
  233. if CheckIfAlive() then
  234. local Force = Instance.new("BodyVelocity")
  235. Force.velocity = Vector3.new(0, 10, 0)
  236. Force.maxForce = Vector3.new(0, 4000, 0)
  237. Debris:AddItem(Force, 0.4)
  238. Force.Parent = Torso
  239. end
  240. ]]
  241.  
  242. wait(0.2)
  243. Tool.Grip = Grips.Out
  244. wait(1.6)
  245. Tool.Grip = Grips.Up
  246.  
  247. Damage = DamageValues.SlashDamage
  248. end
  249.  
  250. Tool.Enabled = true
  251. LastAttack = 0
  252.  
  253. function Activated()
  254. if not Tool.Enabled or not ToolEquipped or not CheckIfAlive() then
  255. return
  256. end
  257. Tool.Enabled = false
  258. local Tick = RunService.Stepped:wait()
  259. if (Tick - LastAttack < 0.2) then
  260. Lunge()
  261. else
  262. Attack()
  263. end
  264. LastAttack = Tick
  265. --wait(0.5)
  266. Damage = DamageValues.BaseDamage
  267. local SlashAnim = (Tool:FindFirstChild("R15Slash") or Create("Animation"){
  268. Name = "R15Slash",
  269. AnimationId = BaseUrl .. Animations.R15Slash,
  270. Parent = Tool
  271. })
  272.  
  273. local LungeAnim = (Tool:FindFirstChild("R15Lunge") or Create("Animation"){
  274. Name = "R15Lunge",
  275. AnimationId = BaseUrl .. Animations.R15Lunge,
  276. Parent = Tool
  277. })
  278. Tool.Enabled = true
  279. end
  280.  
  281. function CheckIfAlive()
  282. return (((Player and Player.Parent and Character and Character.Parent and Humanoid and Humanoid.Parent and Humanoid.Health > 0 and Torso and Torso.Parent) and true) or false)
  283. end
  284.  
  285. function Equipped()
  286. Character = Tool.Parent
  287. Player = Players:GetPlayerFromCharacter(Character)
  288. Humanoid = Character:FindFirstChildOfClass("Humanoid")
  289. Torso = Character:FindFirstChild("Torso") or Character:FindFirstChild("HumanoidRootPart")
  290. if not CheckIfAlive() then
  291. return
  292. end
  293. ToolEquipped = true
  294. Sounds.Unsheath:Play()
  295. end
  296.  
  297. function Unequipped()
  298. Tool.Grip = Grips.Up
  299. ToolEquipped = false
  300. end
  301.  
  302. Tool.Activated:Connect(Activated)
  303. Tool.Equipped:Connect(Equipped)
  304. Tool.Unequipped:Connect(Unequipped)
  305.  
  306. Connection = Handle.Touched:Connect(Blow)
  307. end))
  308. LocalScript8.Name = "MouseIcon"
  309. LocalScript8.Parent = Tool0
  310. table.insert(cors,sandbox(LocalScript8,function()
  311. --Made by Luckymaxer
  312.  
  313. Mouse_Icon = "rbxasset://textures/GunCursor.png"
  314. Reloading_Icon = "rbxasset://textures/GunWaitCursor.png"
  315.  
  316. Tool = script.Parent
  317.  
  318. Mouse = nil
  319.  
  320. function UpdateIcon()
  321. if Mouse then
  322. Mouse.Icon = Tool.Enabled and Mouse_Icon or Reloading_Icon
  323. end
  324. end
  325.  
  326. function OnEquipped(ToolMouse)
  327. Mouse = ToolMouse
  328. UpdateIcon()
  329. end
  330.  
  331. function OnChanged(Property)
  332. if Property == "Enabled" then
  333. UpdateIcon()
  334. end
  335. end
  336.  
  337. Tool.Equipped:Connect(OnEquipped)
  338. Tool.Changed:Connect(OnChanged)
  339.  
  340. end))
  341. Camera9.Name = "ThumbnailCamera"
  342. Camera9.Parent = Tool0
  343. Camera9.CFrame = CFrame.new(-5.67428207, 2.83736515, 3.79184556, 0.289030313, 0.416664183, -0.861888885, -0, 0.900314331, 0.435240269, 0.957319915, -0.125797629, 0.260218143)
  344. Camera9.CoordinateFrame = CFrame.new(-5.67428207, 2.83736515, 3.79184556, 0.289030313, 0.416664183, -0.861888885, -0, 0.900314331, 0.435240269, 0.957319915, -0.125797629, 0.260218143)
  345. Camera9.Focus = CFrame.new(-3.9505043, 1.96688461, 3.27140927, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  346. Camera9.focus = CFrame.new(-3.9505043, 1.96688461, 3.27140927, 1, 0, 0, 0, 1, 0, 0, 0, 1)
  347. for i,v in pairs(mas:GetChildren()) do
  348. v.Parent = game:GetService("Players").LocalPlayer.Backpack
  349. pcall(function() v:MakeJoints() end)
  350. end
  351. mas:Destroy()
  352. for i,v in pairs(cors) do
  353. spawn(function()
  354. pcall(v)
  355. end)
  356. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement