bow

Run Settings
LanguageLua
Language Version
Run Command
--https://github.com/Mokiros/roblox-FE-compatibility if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end local Player,game,owner = owner,game local RealPlayer = Player do print("FE Compatibility code V2 by Mokiros") local RealPlayer = RealPlayer script.Parent = RealPlayer.Character --Fake event to make stuff like Mouse.KeyDown work local Disconnect_Function = function(this) this[1].Functions[this[2]] = nil end local Disconnect_Metatable = {__index={disconnect=Disconnect_Function,Disconnect=Disconnect_Function}} local FakeEvent_Metatable = {__index={ Connect = function(this,f) local i = tostring(math.random(0,10000)) while this.Functions[i] do i = tostring(math.random(0,10000)) end this.Functions[i] = f return setmetatable({this,i},Disconnect_Metatable) end }} FakeEvent_Metatable.__index.connect = FakeEvent_Metatable.__index.Connect local function fakeEvent() return setmetatable({Functions={}},FakeEvent_Metatable) end --Creating fake input objects with fake variables local FakeMouse = {Hit=CFrame.new(),KeyUp=fakeEvent(),KeyDown=fakeEvent(),Button1Up=fakeEvent(),Button1Down=fakeEvent(),Button2Up=fakeEvent(),Button2Down=fakeEvent()} FakeMouse.keyUp = FakeMouse.KeyUp FakeMouse.keyDown = FakeMouse.KeyDown local UIS = {InputBegan=fakeEvent(),InputEnded=fakeEvent()} local CAS = {Actions={},BindAction=function(self,name,fun,touch,...) CAS.Actions[name] = fun and {Name=name,Function=fun,Keys={...}} or nil end} --Merged 2 functions into one by checking amount of arguments CAS.UnbindAction = CAS.BindAction --This function will trigger the events that have been :Connect()'ed local function TriggerEvent(self,ev,...) for _,f in pairs(self[ev].Functions) do f(...) end end FakeMouse.TriggerEvent = TriggerEvent UIS.TriggerEvent = TriggerEvent --Client communication local Event = Instance.new("RemoteEvent") Event.Name = "UserInput_Event" Event.OnServerEvent:Connect(function(plr,io) if plr~=RealPlayer then return end FakeMouse.Target = io.Target FakeMouse.Hit = io.Hit if not io.isMouse then local b = io.UserInputState == Enum.UserInputState.Begin if io.UserInputType == Enum.UserInputType.MouseButton1 then return FakeMouse:TriggerEvent(b and "Button1Down" or "Button1Up") end if io.UserInputType == Enum.UserInputType.MouseButton2 then return FakeMouse:TriggerEvent(b and "Button2Down" or "Button2Up") end for _,t in pairs(CAS.Actions) do for _,k in pairs(t.Keys) do if k==io.KeyCode then t.Function(t.Name,io.UserInputState,io) end end end FakeMouse:TriggerEvent(b and "KeyDown" or "KeyUp",io.KeyCode.Name:lower()) UIS:TriggerEvent(b and "InputBegan" or "InputEnded",io,false) end end) Event.Parent = NLS([==[local Event = script:WaitForChild("UserInput_Event") local Mouse = owner:GetMouse() local UIS = game:GetService("UserInputService") local input = function(io,RobloxHandled) if RobloxHandled then return end --Since InputObject is a client-side instance, we create and pass table instead Event:FireServer({KeyCode=io.KeyCode,UserInputType=io.UserInputType,UserInputState=io.UserInputState,Hit=Mouse.Hit,Target=Mouse.Target}) end UIS.InputBegan:Connect(input) UIS.InputEnded:Connect(input) local h,t --Give the server mouse data every second frame, but only if the values changed --If player is not moving their mouse, client won't fire events local HB = game:GetService("RunService").Heartbeat while true do if h~=Mouse.Hit or t~=Mouse.Target then h,t=Mouse.Hit,Mouse.Target Event:FireServer({isMouse=true,Target=t,Hit=h}) end --Wait 2 frames for i=1,2 do HB:Wait() end end]==],script) ----Sandboxed game object that allows the usage of client-side methods and services --Real game object local RealGame = game --Metatable for fake service local FakeService_Metatable = { __index = function(self,k) local s = rawget(self,"_RealService") if s then return typeof(s[k])=="function" and function(_,...)return s[k](s,...)end or s[k] end end, __newindex = function(self,k,v) local s = rawget(self,"_RealService") if s then s[k]=v end end } local function FakeService(t,RealService) t._RealService = typeof(RealService)=="string" and RealGame:GetService(RealService) or RealService return setmetatable(t,FakeService_Metatable) end --Fake game object local FakeGame = { GetService = function(self,s) return rawget(self,s) or RealGame:GetService(s) end, Players = FakeService({ LocalPlayer = FakeService({GetMouse=function(self)return FakeMouse end},Player) },"Players"), UserInputService = FakeService(UIS,"UserInputService"), ContextActionService = FakeService(CAS,"ContextActionService"), RunService = FakeService({ _btrs = {}, RenderStepped = RealGame:GetService("RunService").Heartbeat, BindToRenderStep = function(self,name,_,fun) self._btrs[name] = self.Heartbeat:Connect(fun) end, UnbindFromRenderStep = function(self,name) self._btrs[name]:Disconnect() end, },"RunService") } rawset(FakeGame.Players,"localPlayer",FakeGame.Players.LocalPlayer) FakeGame.service = FakeGame.GetService FakeService(FakeGame,game) --Changing owner to fake player object to support owner:GetMouse() game,owner = FakeGame,FakeGame.Players.LocalPlayer end --[[ C o n t r o l s : Made by Tollonis E - Draw arrow (press E again to put it back) Left Click - Fire Z - Equip/Unequip As always, feel free to DM me with suggestions or bugs. ]]-- wait() player = game.Players.LocalPlayer char = player.Character mouse = player:GetMouse() print("WHAT UP") armed = false canfire = false enabled = true equipped = false mouse.Icon = "rbxassetid://311756275" rightshoulder = char.Torso["Right Shoulder"]:Clone() leftshoulder = char.Torso["Left Shoulder"]:Clone() hed = Instance.new("Weld", char.Torso) hed.Part0 = char.Torso hed.Part1 = char.Head hed.C0 = CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0) tors = Instance.new("Weld", char.HumanoidRootPart) tors.Part0 = char.HumanoidRootPart tors.Part1 = char.Torso tors.C0 = CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) -- the bow stuff bow = Instance.new("Model") bow.Parent = game.Workspace bow.Name = "bow" handle = Instance.new("Part") handle.CFrame = CFrame.new(Vector3.new(-48.1999893, 2.79998732, -58.2000122)) * CFrame.Angles(-3.1415927410126, 0, -0) handle.Size = Vector3.new(0.200000003, 1.20000005, 0.200000003) handle.BrickColor = BrickColor.new("Pine Cone") handle.Friction = 0.30000001192093 handle.Shape = Enum.PartType.Block handle.Name = "Handle" handle.Parent = bow handle.CanCollide = false leg2 = Instance.new("Part") leg2.CFrame = CFrame.new(Vector3.new(-48.1999931, 1.25002313, -58.2000008)) * CFrame.Angles(-3.1415927410126, 0, -0) leg2.Size = Vector3.new(0.200000003, 1.90000021, 0.200000003) leg2.BrickColor = BrickColor.new("Pine Cone") leg2.Friction = 0.30000001192093 leg2.Shape = Enum.PartType.Block leg2.Name = "Leg2" leg2.Parent = bow leg2.CanCollide = false cap2 = Instance.new("Part") cap2.CFrame = CFrame.new(Vector3.new(-48.2000046, 0.300019979, -58.2000008)) * CFrame.Angles(1.5707963705063, 0, -0) cap2.TopSurface = Enum.SurfaceType.Smooth cap2.BottomSurface = Enum.SurfaceType.Smooth cap2.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) cap2.BrickColor = BrickColor.new("Pine Cone") cap2.Friction = 0.30000001192093 cap2.Shape = Enum.PartType.Cylinder cap2.Name = "Cap2" cap2.Parent = bow cap2.CanCollide = false joint2 = Instance.new("Part") joint2.CFrame = CFrame.new(Vector3.new(-48.1999893, 2.19999003, -58.2000237)) * CFrame.Angles(1.5707963705063, 0, -0) joint2.TopSurface = Enum.SurfaceType.Smooth joint2.BottomSurface = Enum.SurfaceType.Smooth joint2.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) joint2.BrickColor = BrickColor.new("Pine Cone") joint2.Friction = 0.30000001192093 joint2.Shape = Enum.PartType.Cylinder joint2.Name = "Joint2" joint2.Parent = bow joint2.CanCollide = false joint1 = Instance.new("Part") joint1.CFrame = CFrame.new(Vector3.new(-48.2000008, 3.39998126, -58.2000275)) * CFrame.Angles(1.5707963705063, 0, -0) joint1.TopSurface = Enum.SurfaceType.Smooth joint1.BottomSurface = Enum.SurfaceType.Smooth joint1.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) joint1.BrickColor = BrickColor.new("Pine Cone") joint1.Friction = 0.30000001192093 joint1.Shape = Enum.PartType.Cylinder joint1.Name = "Joint1" joint1.Parent = bow joint1.CanCollide = false leg1 = Instance.new("Part") leg1.CFrame = CFrame.new(Vector3.new(-48.1999931, 4.35000753, -58.2000122)) * CFrame.Angles(-3.1415927410126, 0, -0) leg1.Size = Vector3.new(0.200000003, 1.90000021, 0.200000003) leg1.BrickColor = BrickColor.new("Pine Cone") leg1.Friction = 0.30000001192093 leg1.Shape = Enum.PartType.Block leg1.Name = "Leg1" leg1.Parent = bow leg1.CanCollide = false cap1 = Instance.new("Part") cap1.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) cap1.TopSurface = Enum.SurfaceType.Smooth cap1.BottomSurface = Enum.SurfaceType.Smooth cap1.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) cap1.BrickColor = BrickColor.new("Pine Cone") cap1.Friction = 0.30000001192093 cap1.Shape = Enum.PartType.Cylinder cap1.Name = "Cap1" cap1.Parent = bow cap1.CanCollide = false stringpart = Instance.new("Part") stringpart.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) stringpart.TopSurface = Enum.SurfaceType.Smooth stringpart.BottomSurface = Enum.SurfaceType.Smooth stringpart.Size = Vector3.new(0.1, 0.1, 0.1) stringpart.Transparency = 1 stringpart.BrickColor = BrickColor.new("Mid grey") stringpart.Friction = 0.30000001192093 stringpart.Shape = Enum.PartType.Cylinder stringpart.Name = "StringAttachment" stringpart.Parent = bow stringpart.CanCollide = false arrow = Instance.new("Model") arrow.Parent = game.Workspace arrow.Name = "arrow" feather1 = Instance.new("WedgePart") feather1.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.90000844, -56.1500168)) * CFrame.Angles(-0, 0, -0) feather1.TopSurface = Enum.SurfaceType.Smooth feather1.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) feather1.BrickColor = BrickColor.new("Crimson") feather1.Friction = 0.30000001192093 feather1.Name = "Feather" feather1.Parent = arrow feather1.CanCollide = false feather1.Transparency = 1 feather2 = Instance.new("WedgePart") feather2.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.50003171, -56.1500168)) * CFrame.Angles(-0, 0, -3.1415927410126) feather2.TopSurface = Enum.SurfaceType.Smooth feather2.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) feather2.BrickColor = BrickColor.new("Crimson") feather2.Friction = 0.30000001192093 feather2.Name = "Feather" feather2.Parent = arrow feather2.CanCollide = false feather2.Transparency = 1 arrowhead = Instance.new("WedgePart") arrowhead.CFrame = CFrame.new(Vector3.new(-48.2999992, 2.80002427, -59.4500008)) * CFrame.Angles(-0, 0, -0) arrowhead.TopSurface = Enum.SurfaceType.Smooth arrowhead.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) arrowhead.Friction = 0.30000001192093 arrowhead.Name = "Arrowhead" arrowhead.Parent = arrow arrowhead.CanCollide = false arrowhead.Transparency = 1 arrowcap = Instance.new("Part") arrowcap.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) arrowcap.TopSurface = Enum.SurfaceType.Smooth arrowcap.BottomSurface = Enum.SurfaceType.Smooth arrowcap.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) arrowcap.BrickColor = BrickColor.new("Dirt brown") arrowcap.Friction = 0.30000001192093 arrowcap.Shape = Enum.PartType.Cylinder arrowcap.Name = "ArrowCap" arrowcap.Parent = arrow arrowcap.CanCollide = false arrowcap.Transparency = 1 arrowbody = Instance.new("Part") arrowbody.CFrame = CFrame.new(Vector3.new(0, 3, 0)) * CFrame.Angles(-0, 0, -0) arrowbody.Size = Vector3.new(0.200000003, 0.200000003, 3.60000014) arrowbody.BrickColor = BrickColor.new("Dirt brown") arrowbody.Friction = 0.30000001192093 arrowbody.Shape = Enum.PartType.Block arrowbody.Name = "ArrowBody" arrowbody.Parent = arrow arrowbody.CanCollide = false arrowbody.Transparency = 1 feather3 = Instance.new("WedgePart") feather3.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.50004983, -55.9500198)) * CFrame.Angles(-0, 0, -3.1415927410126) feather3.TopSurface = Enum.SurfaceType.Smooth feather3.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) feather3.BrickColor = BrickColor.new("Crimson") feather3.Friction = 0.30000001192093 feather3.Name = "Feather" feather3.Parent = arrow feather3.CanCollide = false feather3.Transparency = 1 feather4 = Instance.new("WedgePart") feather4.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.90003037, -55.9500198)) * CFrame.Angles(-0, 0, -0) feather4.TopSurface = Enum.SurfaceType.Smooth feather4.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) feather4.BrickColor = BrickColor.new("Crimson") feather4.Friction = 0.30000001192093 feather4.Name = "Feather" feather4.Parent = arrow feather4.CanCollide = false feather4.Transparency = 1 -- the welds whandle = Instance.new("Weld", char["Left Arm"]) whandle.Part0 = char.Torso whandle.Part1 = handle whandle.C0 = CFrame.new(0, 0, 0.6) * CFrame.Angles(0, 0, math.rad(45)) wstringpart = Instance.new("Weld", handle) wstringpart.Part0 = handle wstringpart.Part1 = stringpart wstringpart.C0 = CFrame.new(0, -0.3, -0.3) * CFrame.new(0, 0, 0) wjoint1 = Instance.new("Weld", handle) wjoint1.Part0 = handle wjoint1.Part1 = joint1 wjoint1.C0 = CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0) wjoint2 = Instance.new("Weld", handle) wjoint2.Part0 = handle wjoint2.Part1 = joint2 wjoint2.C0 = CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0) wleg1 = Instance.new("Weld", joint1) wleg1.Part0 = joint1 wleg1.Part1 = leg1 wleg1.C0 = CFrame.new(0, 0.95, 0) * CFrame.Angles(0, 0, 0) wleg2 = Instance.new("Weld", joint2) wleg2.Part0 = joint2 wleg2.Part1 = leg2 wleg2.C0 = CFrame.new(0, -0.95, 0) * CFrame.Angles(0, 0, 0) wcap1 = Instance.new("Weld", leg1) wcap1.Part0 = leg1 wcap1.Part1 = cap1 wcap1.C0 = CFrame.new(0, 0.95, 0) * CFrame.Angles(0, 0, 0) wcap2 = Instance.new("Weld", leg2) wcap2.Part0 = leg2 wcap2.Part1 = cap2 wcap2.C0 = CFrame.new(0, -0.95, 0) * CFrame.Angles(0, 0, 0) cap1att = Instance.new("Attachment", cap1) cap1att.Position = Vector3.new(0, 0, -0.05) cap2att = Instance.new("Attachment", cap2) cap2att.Position = Vector3.new(0, 0, -0.05) stringatt = Instance.new("Attachment", stringpart) stringp1 = Instance.new("RodConstraint", stringpart) stringp1.Color = BrickColor.new("Mid grey") stringp1.Visible = true stringp1.Attachment0 = stringatt stringp1.Attachment1 = cap1att stringp2 = Instance.new("RodConstraint", stringpart) stringp2.Color = BrickColor.new("Mid grey") stringp2.Visible = true stringp2.Attachment0 = stringatt stringp2.Attachment1 = cap2att warrowhead1 = Instance.new("Weld", arrowbody) warrowhead1.Part0 = arrowbody warrowhead1.Part1 = arrowhead warrowhead1.C0 = CFrame.new(0, 0, -1.95) wfeather1 = Instance.new("Weld", arrowbody) wfeather1.Part0 = arrowbody wfeather1.Part1 = feather1 wfeather1.C0 = CFrame.new(0, 0.2, 1.45) wfeather2 = Instance.new("Weld", arrowbody) wfeather2.Part0 = arrowbody wfeather2.Part1 = feather2 wfeather2.C0 = CFrame.new(0, 0.2, 1.4) wfeather3 = Instance.new("Weld", arrowbody) wfeather3.Part0 = arrowbody wfeather3.Part1 = feather3 wfeather3.C0 = CFrame.new(0, -0.2, 1.45) * CFrame.Angles(0, 0, 3.15) wfeather4 = Instance.new("Weld", arrowbody) wfeather4.Part0 = arrowbody wfeather4.Part1 = feather4 wfeather4.C0 = CFrame.new(0, -0.2, 1.4) * CFrame.Angles(0, 0, 3.15) warrow = Instance.new("Weld", char.Torso) warrow.Part0 = char.Torso warrow.Part1 = arrowbody warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) warrowcap = Instance.new("Weld", arrowbody) warrowcap.Part0 = arrowbody warrowcap.Part1 = arrowcap warrowcap.C0 = CFrame.new(0, 0, 1.8) -- sounds pullbacksound = Instance.new("Sound", handle) pullbacksound.SoundId = "rbxassetid://609348868" firesound = Instance.new("Sound", handle) firesound.SoundId = "rbxassetid://609348009" firesound.PlaybackSpeed = 1.05 function velocity(v) print("killvel") vel = coroutine.wrap(function() wait(0.05) v:Remove() end) vel() end function killz(playa,hitz,kneef) local heyy = hitz if hitz == "Right Arm" then local Limb = playa:FindFirstChild("Right Arm") local ters = playa:FindFirstChild('Torso') if Limb and ters then if ters:FindFirstChild('Right Shoulder') then ters["Right Shoulder"]:Destroy() end for i,v in pairs(Limb:GetChildren()) do if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then v:Destroy() end end Limb.CFrame = ters.CFrame * CFrame.new(1.5, 0, 0) local Joint = Instance.new("Glue") Joint.Name = "RightShoulder" Joint.Part0 = ters Joint.Part1 = Limb Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.Parent = ters local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb local coru = coroutine.wrap(function() local uno = Instance.new('Part',workspace) local dos = Instance.new('Part',workspace) uno.CFrame = playa:FindFirstChild(hitz).CFrame dos.CFrame = kneef.CFrame local weld = Instance.new('Weld',kneef) weld.Part0 = playa:FindFirstChild(hitz) weld.Part1 = kneef weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) uno:Destroy() dos:Destroy() end) coru() end elseif hitz == "Left Arm" then local Limb = playa:FindFirstChild("Left Arm") local ters = playa:FindFirstChild('Torso') if Limb and ters then if ters:FindFirstChild('Left Shoulder') then ters["Left Shoulder"]:Destroy() end for i,v in pairs(Limb:GetChildren()) do if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then v:Destroy() end end Limb.CFrame = ters.CFrame * CFrame.new(-1.5, 0, 0) local Joint = Instance.new("Glue") Joint.Name = "LeftShoulder" Joint.Part0 = ters Joint.Part1 = Limb Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.Parent = ters local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = ters W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb local coru = coroutine.wrap(function() local uno = Instance.new('Part',workspace) local dos = Instance.new('Part',workspace) uno.CFrame = playa:FindFirstChild(hitz).CFrame dos.CFrame = kneef.CFrame local weld = Instance.new('Weld',kneef) weld.Part0 = playa:FindFirstChild(hitz) weld.Part1 = kneef weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) uno:Destroy() dos:Destroy() end) coru() end elseif hitz == "Right Leg" then local Limb = playa:FindFirstChild("Right Leg") local ters = playa:FindFirstChild('Torso') if Limb and ters then if ters:FindFirstChild('Right Hip') then ters["Right Hip"]:Destroy() end for i,v in pairs(Limb:GetChildren()) do if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then v:Destroy() end end Limb.CFrame = ters.CFrame * CFrame.new(0.5, -2, 0) local Joint = Instance.new("Glue") Joint.Name = "Right Hip" Joint.Part0 = ters Joint.Part1 = Limb Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.Parent = ters local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb local coru = coroutine.wrap(function() local uno = Instance.new('Part',workspace) local dos = Instance.new('Part',workspace) uno.CFrame = playa:FindFirstChild(hitz).CFrame dos.CFrame = kneef.CFrame local weld = Instance.new('Weld',kneef) weld.Part0 = playa:FindFirstChild(hitz) weld.Part1 = kneef weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) uno:Destroy() dos:Destroy() if playa:FindFirstChild('HumanoidRootPart') then if playa.HumanoidRootPart:FindFirstChild('RootJoint') then playa.HumanoidRootPart:FindFirstChild('RootJoint'):Destroy() wait() end while playa.HumanoidRootPart:FindFirstChild('RootJoint') do wait() end playa:FindFirstChild('HumanoidRootPart'):Destroy() end end) coru() end elseif hitz == "Left Leg" then local Limb = playa:FindFirstChild("Left Leg") local ters = playa:FindFirstChild('Torso') if Limb and ters then if ters:FindFirstChild('Left Hip') then ters["Left Hip"]:Destroy() end for i,v in pairs(Limb:GetChildren()) do if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then v:Destroy() end end Limb.CFrame = ters.CFrame * CFrame.new(0.5, -2, 0) Limb.CFrame = ters.CFrame * CFrame.new(-0.5, -2, 0) local Joint = Instance.new("Glue") Joint.Name = "LeftHip" Joint.Part0 = ters Joint.Part1 = Limb Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.Parent = ters local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb Limb.CanCollide = false local coru = coroutine.wrap(function() local uno = Instance.new('Part',workspace) local dos = Instance.new('Part',workspace) uno.CFrame = playa:FindFirstChild(hitz).CFrame dos.CFrame = kneef.CFrame local weld = Instance.new('Weld',kneef) weld.Part0 = playa:FindFirstChild(hitz) weld.Part1 = kneef weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) uno:Destroy() dos:Destroy() if playa:FindFirstChild('HumanoidRootPart') then if playa.HumanoidRootPart:FindFirstChild('RootJoint') then playa.HumanoidRootPart:FindFirstChild('RootJoint'):Destroy() end while playa.HumanoidRootPart:FindFirstChild('RootJoint') do wait() end playa:FindFirstChild('HumanoidRootPart'):Destroy() end end) coru() end else local playa2 = playa playa.Archivable = true local playa = playa:Clone() playa.Archivable = false playa2:Destroy() playa.Parent = workspace local Gibs = game.Workspace local Torso = playa.Torso local Head = playa:FindFirstChild("Head") local function Scan(ch) local e for e = 1,#ch do Scan(ch[e]:GetChildren()) if (ch[e].ClassName == "Weld" and ch[e].Part1.Name ~= 'Projectile') or ch[e].ClassName == "Motor6D" then ch[e]:remove() end end end Scan(playa:GetChildren()) if playa:FindFirstChild('HumanoidRootPart') then playa:FindFirstChild('HumanoidRootPart'):Destroy() end local hum2 = playa:FindFirstChildOfClass("Humanoid") if hum2 ~= nil then hum2.Name = "Humanoid2" hum2.PlatformStand = true hum2.Health = 0 end local ch = playa:GetChildren() local i for i = 1,#ch do if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then ch[i]:remove() end end if Head then local Neck = Instance.new("Weld") Neck.Name = "Neck" Neck.Part0 = Torso Neck.Part1 = Head Neck.C0 = CFrame.new(0, 1.5, 0) Neck.C1 = CFrame.new() Neck.Parent = Torso end local Limb = playa:FindFirstChild("Right Arm") if Limb then Limb.CFrame = Torso.CFrame * CFrame.new(1.5, 0, 0) local Joint = Instance.new("Glue") Joint.Name = "RightShoulder" Joint.Part0 = Torso Joint.Part1 = Limb Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.Parent = Torso local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb end local Limb = playa:FindFirstChild("Left Arm") if Limb then Limb.CFrame = Torso.CFrame * CFrame.new(-1.5, 0, 0) local Joint = Instance.new("Glue") Joint.Name = "LeftShoulder" Joint.Part0 = Torso Joint.Part1 = Limb Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.Parent = Torso local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb end local Limb = playa:FindFirstChild("Right Leg") if Limb then Limb.CFrame = Torso.CFrame * CFrame.new(0.5, -2, 0) local Joint = Instance.new("Glue") Joint.Name = "RightHip" Joint.Part0 = Torso Joint.Part1 = Limb Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) Joint.Parent = Torso local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb end local Limb = playa:FindFirstChild("Left Leg") if Limb then Limb.CFrame = Torso.CFrame * CFrame.new(-0.5, -2, 0) local Joint = Instance.new("Glue") Joint.Name = "LeftHip" Joint.Part0 = Torso Joint.Part1 = Limb Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) Joint.Parent = Torso local B = Instance.new("Part") B.TopSurface = 0 B.BottomSurface = 0 B.formFactor = "Symmetric" B.Size = Vector3.new(1, 1, 1) B.Transparency = 1 B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) B.Parent = playa local W = Instance.new("Weld") W.Part0 = Limb W.Part1 = B W.C0 = CFrame.new(0, -0.5, 0) W.Parent = Limb end --[ local Bar = Instance.new("Part") Bar.TopSurface = 0 Bar.BottomSurface = 0 Bar.formFactor = "Symmetric" Bar.Size = Vector3.new(1, 1, 1) Bar.Transparency = 1 Bar.CFrame = Torso.CFrame * CFrame.new(0, 0.5, 0) Bar.Parent = playa local Weld = Instance.new("Weld") Weld.Part0 = Torso Weld.Part1 = Bar Weld.C0 = CFrame.new(0, 0.5, 0) Weld.Parent = Torso --]] playa.Parent = Gibs local coru = coroutine.wrap(function() print(hitz.Name) local uno = Instance.new('Part',workspace) local dos = Instance.new('Part',workspace) uno.CFrame = playa:FindFirstChild(heyy).CFrame dos.CFrame = kneef.CFrame local weld = Instance.new('Weld',kneef) weld.Part0 = playa:FindFirstChild(heyy) weld.Part1 = kneef weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) uno:Destroy() dos:Destroy() end) coru() game.Debris:AddItem(playa, 15) end end function checkarms() check = coroutine.wrap(function() rshould = char.Torso:FindFirstChild("Right Shoulder") lshould = char.Torso:FindFirstChild("Left Shoulder") if rshould == nil then rightshoulder:Clone().Parent = char.Torso end if lshould == nil then rightshoulder:Clone().Parent = char.Torso end end) check() end mouse.KeyDown:connect(function(k) key = k:lower() if key == "e" and enabled == true and equipped == true then if armed == false then crarm = Instance.new("Weld", char.Torso) crarm.Part0 = char.Torso crarm.Part1 = char["Right Arm"] crarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(1.5, 0, 0) clarm = Instance.new("Weld", char.Torso) clarm.Part0 = char.Torso clarm.Part1 = char["Left Arm"] clarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0) enabled = false for i = 0, 1, 0.1 do crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 1.5, 0) * CFrame.Angles(3.14, 0, 0), i) wait() end for i, v in pairs(arrow:GetChildren()) do v.Transparency = 0 end feather1.Transparency = 0.25 feather2.Transparency = 0.25 feather3.Transparency = 0.25 feather4.Transparency = 0.25 warrow.Part0 = char["Right Arm"] warrow.C0 = CFrame.new(-0.5, -2.7, -0.2) * CFrame.Angles(-1.575, 0.075, -0.5) for i = 0, 1, 0.05 do tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, -1.5, 0), i) whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, -0.05, 0), i) clarm.C0 = clarm.C0:lerp(CFrame.new(-1.6, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) crarm.C0 = crarm.C0:lerp(CFrame.new(-1.35, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575), i) wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0), i) wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0), i) wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0), i) hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 1.5, 0), i) wait() end pullbacksound:Play() warrow.Part0 = stringpart warrow.C0 = CFrame.new(-0.1, 0, 1.9) * CFrame.Angles(3.15, 0.04, 0) for i = 0, 1, 0.025 do tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, -1.5, 0), i) whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, -0.05, 0), i) clarm.C0 = clarm.C0:lerp(CFrame.new(-1.95, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) crarm.C0 = crarm.C0:lerp(CFrame.new(1, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575), i) wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.4, 0, 0), i) wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.4, 0, 0), i) wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -3) * CFrame.new(0, 0, 0), i) hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, -0.1) * CFrame.Angles(0, 1.5, -0.25), i) wait() end armed = true enabled = true elseif armed == true and equipped == true then enabled = false for i = 0,1,0.05 do clarm.C0 = clarm.C0:lerp(CFrame.new(-1.6, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) crarm.C0 = crarm.C0:lerp(CFrame.new(-1.3, 0.4, -1) * CFrame.Angles(1.575, 0.1, -1.575), i) wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0), i) wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0), i) wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0), i) wait() end warrow.Part0 = char["Right Arm"] warrow.C0 = CFrame.new(-0.5, -2.65, -0.2) * CFrame.Angles(-1.575, 0.075, -0.4) for i = 0,1,0.05 do crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 1.5, 0) * CFrame.Angles(3.14, 0, 0), i) tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), i) whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) clarm.C0 = clarm.C0:lerp(CFrame.new(-1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0), i) wait() end for i, v in pairs(arrow:GetChildren()) do v.Transparency = 1 end warrow.Part0 = char.Torso warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) for i = 0, 1, 0.1 do crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) wait() end armed = false enabled = true clarm:Remove() crarm:Remove() rightshoulder:Clone().Parent = char.Torso leftshoulder:Clone().Parent = char.Torso checkarms() end elseif key == "z" then if armed == true or enabled == false then return end clarm = Instance.new("Weld", char.Torso) clarm.Part0 = char.Torso clarm.Part1 = char["Left Arm"] clarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0) if equipped == false then enabled = false for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.new(-0.5, 0, 0.25) * CFrame.Angles(math.rad(-90), 0, math.rad(75)), i) wait() end whandle.C0 = CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0) whandle.Part0 = char["Left Arm"] for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.new(-2, 0.6, 0) * CFrame.Angles(0, 0, math.rad(-90)), i) wait() end for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0), i) wait() end enabled = true equipped = true elseif equipped == true then if armed == true or enabled == false then return end enabled = false for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.new(-2, 0.6, 0) * CFrame.Angles(0, 0, math.rad(-90)), i) wait() end for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.new(-0.5, 0, 0.25) * CFrame.Angles(math.rad(-90), 0, math.rad(75)), i) whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) wait() end whandle.C0 = CFrame.new(0, 0, 0.6) * CFrame.Angles(0, 0, math.rad(45)) whandle.Part0 = char.Torso for i = 0, 1, 0.05 do clarm.C0 = clarm.C0:lerp(CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0), i) wait() end equipped = false enabled = true end clarm:Remove() leftshoulder:Clone().Parent = char.Torso end end) mouse.Button1Down:connect(function() if armed == false or enabled == false or equipped == false then return end firesound:Play() enabled = false armed = false wjoint1.C0 = CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0) wjoint2.C0 = CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0) wstringpart.C0 = CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0) crarm.C0 = CFrame.new(1.2, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575) newarrow = arrow:Clone() newarrow.Parent = game.Workspace newarrow.Name = "flyingarrow" newarrow.ArrowBody.CFrame = CFrame.new(newarrow.ArrowBody.CFrame.p, mouse.Hit.p)*CFrame.Angles(0,0,math.pi/1.15) char.HumanoidRootPart.CFrame = CFrame.new(char.HumanoidRootPart.CFrame.p, mouse.Hit.p)*CFrame.Angles(0,math.pi/100,0) char.Humanoid.JumpPower = 1 char.Humanoid.Jump = true local fly = Instance.new('BodyVelocity',newarrow.ArrowBody) fly.Velocity = (newarrow.ArrowBody.CFrame*CFrame.Angles(0,0,math.pi/2)).lookVector*200 newarrow.Arrowhead.Touched:connect(function(hit) if hit.Parent and hit.Parent:FindFirstChildOfClass('Humanoid') and hit.Transparency < 1 and newarrow.Arrowhead.CanCollide == false and hit.Parent:FindFirstChildOfClass('Humanoid').Health > 0 and hit.Parent ~= char then velocity(fly) newarrow.Arrowhead.CanCollide = true game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) tone = math.random(1, 3) local sound = Instance.new('Sound',newarrow.Arrowhead) if tone == 1 then sound.SoundId = "rbxassetid://220833967" end if tone == 2 then sound.SoundId = "rbxassetid://220833976" end if tone == 3 then sound.SoundId = "rbxassetid://220834000" end sound.PlaybackSpeed = 1 sound:Play() newarrow.Arrowhead.Anchored = true hit.Anchored = true if hit.Parent:FindFirstChildOfClass('Humanoid') and hit.Name == "Torso" or hit.Name == "Head" then hit.Parent:FindFirstChildOfClass('Humanoid').Health = 0 end wait() hit.Anchored = false newarrow.Arrowhead.Anchored = false killz(hit.Parent,hit.Name,newarrow.Arrowhead) elseif hit.Parent and hit.Parent.Parent:FindFirstChildOfClass('Humanoid') and hit.Transparency < 1 and newarrow.Arrowhead.CanCollide == false and hit.Parent.Parent:FindFirstChildOfClass('Humanoid').Health > 0 and hit.Parent.Parent ~= char and hit.Parent.Parent:FindFirstChild('Head') then velocity(fly) game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) newarrow.Arrowhead.CanCollide = true tone = math.random(1, 3) local sound = Instance.new('Sound',newarrow.Arrowhead) if tone == 1 then sound.SoundId = "rbxassetid://220833967" end if tone == 2 then sound.SoundId = "rbxassetid://220833976" end if tone == 3 then sound.SoundId = "rbxassetid://220834000" end sound.PlaybackSpeed = 1 sound:Play() newarrow.Arrowhead.Anchored = true hit.Anchored = true if hit.Parent.Parent:FindFirstChildOfClass('Humanoid') then hit.Parent.Parent:FindFirstChildOfClass('Humanoid').Health = 0 end wait() newarrow.Arrowhead.Anchored = false hit.Anchored = false killz(hit.Parent.Parent,hit.Name,newarrow.Arrowhead) elseif hit.Parent and hit.Parent ~= char and hit.Parent.Parent ~= char and hit.Transparency < 1 and newarrow.Arrowhead.CanCollide == false then velocity(fly) game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) newarrow.Arrowhead.CanCollide = true local sound = Instance.new('Sound',newarrow.Arrowhead) sound.SoundId = 'rbxassetid://267585646' sound:Play() end end) for i, v in pairs(arrow:GetChildren()) do v.Transparency = 1 end warrow.Part0 = char.Torso warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) wait(0.5) for i = 0, 1, 0.05 do tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), i) whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) clarm.C0 = clarm.C0:lerp(CFrame.new(-1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0), i) wait() end clarm:Remove() crarm:Remove() rightshoulder:Clone().Parent = char.Torso leftshoulder:Clone().Parent = char.Torso checkarms() char.Humanoid.JumpPower = 50 enabled = true end) --Converted with ttyyuu12345's model to script plugin v4 function sandbox(var,func) local env = getfenv(func) local newenv = setmetatable({},{ __index = function(self,k) if k=="script" then return var else return env[k] end end, }) setfenv(func,newenv) return func end cors = {} mas = Instance.new("Model",game:GetService("Lighting")) Tool0 = Instance.new("Tool") Part1 = Instance.new("Part") SpecialMesh2 = Instance.new("SpecialMesh") Sound3 = Instance.new("Sound") Sound4 = Instance.new("Sound") Sound5 = Instance.new("Sound") Script6 = Instance.new("Script") LocalScript7 = Instance.new("LocalScript") Camera8 = Instance.new("Camera") Tool0.Name = "ClassicSword" Tool0.Parent = owner.Backpack Tool0.TextureId = "rbxasset://Textures/Sword128.png" Tool0.Grip = CFrame.new(0, 0, -1.5, 0, 0, 1, 1, 0, 0, 0, 1, 0) Tool0.GripForward = Vector3.new(-1, -0, -0) Tool0.GripPos = Vector3.new(0, 0, -1.5) Tool0.GripRight = Vector3.new(0, 1, 0) Tool0.GripUp = Vector3.new(0, 0, 1) Part1.Name = "Handle" Part1.Parent = Tool0 Part1.CFrame = CFrame.new(2.60000062, 2.00000072, -24.5000019, 1.45286322e-07, -0.999999881, 2.77318378e-07, 3.85828599e-07, 2.98453244e-08, 1.00000048, -1.0000006, -4.84287597e-08, -7.44502131e-07) Part1.Orientation = Vector3.new(-90, 90, 0) Part1.Position = Vector3.new(2.60000062, 2.00000072, -24.5000019) Part1.Rotation = Vector3.new(-90, 0, 90) Part1.Color = Color3.new(0.388235, 0.372549, 0.384314) Part1.Size = Vector3.new(1, 0.800000012, 4) Part1.BottomSurface = Enum.SurfaceType.Smooth Part1.BrickColor = BrickColor.new("Dark stone grey") Part1.Locked = true Part1.Reflectance = 0.40000000596046 Part1.TopSurface = Enum.SurfaceType.Smooth Part1.brickColor = BrickColor.new("Dark stone grey") Part1.FormFactor = Enum.FormFactor.Plate Part1.formFactor = Enum.FormFactor.Plate SpecialMesh2.Parent = Part1 SpecialMesh2.MeshId = "rbxasset://fonts/sword.mesh" SpecialMesh2.TextureId = "rbxasset://textures/SwordTexture.png" SpecialMesh2.MeshType = Enum.MeshType.FileMesh Sound3.Name = "SwordSlash" Sound3.Parent = Part1 Sound3.SoundId = "http://www.roblox.com/asset/?id=12222216" Sound3.Volume = 0.69999998807907 Sound4.Name = "SwordLunge" Sound4.Parent = Part1 Sound4.SoundId = "http://www.roblox.com/asset/?id=12222208" Sound4.Volume = 0.60000002384186 Sound5.Name = "Unsheath" Sound5.Parent = Part1 Sound5.SoundId = "http://www.roblox.com/asset/?id=12222225" Sound5.Volume = 1 Script6.Name = "SwordScript" Script6.Parent = Tool0 table.insert(cors,sandbox(Script6,function() --Rescripted by Luckymaxer --EUROCOW WAS HERE BECAUSE I MADE THE PARTICLES AND THEREFORE THIS ENTIRE SWORD PRETTY AND LOOK PRETTY WORDS AND I'D LIKE TO DEDICATE THIS TO MY FRIENDS AND HI LUCKYMAXER PLS FIX SFOTH SWORDS TY LOVE Y'ALl --Updated for R15 avatars by StarWars --Re-updated by TakeoHonorable Tool = script.Parent Handle = Tool:WaitForChild("Handle") function Create(ty) return function(data) local obj = Instance.new(ty) for k, v in pairs(data) do if type(k) == 'number' then v.Parent = obj else obj[k] = v end end return obj end end local BaseUrl = "rbxassetid://" Players = game:GetService("Players") Debris = game:GetService("Debris") RunService = game:GetService("RunService") DamageValues = { BaseDamage = 5, SlashDamage = 10, LungeDamage = 30 } --For R15 avatars Animations = { R15Slash = 522635514, R15Lunge = 522638767 } Damage = DamageValues.BaseDamage Grips = { Up = CFrame.new(0, 0, -1.70000005, 0, 0, 1, 1, 0, 0, 0, 1, 0), Out = CFrame.new(0, 0, -1.70000005, 0, 1, 0, 1, -0, 0, 0, 0, -1) } Sounds = { Slash = Handle:WaitForChild("SwordSlash"), Lunge = Handle:WaitForChild("SwordLunge"), Unsheath = Handle:WaitForChild("Unsheath") } ToolEquipped = false --For Omega Rainbow Katana thumbnail to display a lot of particles. for i, v in pairs(Handle:GetChildren()) do if v:IsA("ParticleEmitter") then v.Rate = 20 end end Tool.Grip = Grips.Up Tool.Enabled = true function IsTeamMate(Player1, Player2) return (Player1 and Player2 and not Player1.Neutral and not Player2.Neutral and Player1.TeamColor == Player2.TeamColor) end function TagHumanoid(humanoid, player) local Creator_Tag = Instance.new("ObjectValue") Creator_Tag.Name = "creator" Creator_Tag.Value = player Debris:AddItem(Creator_Tag, 2) Creator_Tag.Parent = humanoid end function UntagHumanoid(humanoid) for i, v in pairs(humanoid:GetChildren()) do if v:IsA("ObjectValue") and v.Name == "creator" then v:Destroy() end end end function Blow(Hit) if not Hit or not Hit.Parent or not CheckIfAlive() or not ToolEquipped then return end local RightArm = Character:FindFirstChild("Right Arm") or Character:FindFirstChild("RightHand") if not RightArm then return end local RightGrip = RightArm:FindFirstChild("RightGrip") if not RightGrip or (RightGrip.Part0 ~= Handle and RightGrip.Part1 ~= Handle) then return end local character = Hit.Parent if character == Character then return end local humanoid = character:FindFirstChildOfClass("Humanoid") if not humanoid or humanoid.Health == 0 then return end local player = Players:GetPlayerFromCharacter(character) if player and (player == Player or IsTeamMate(Player, player)) then return end UntagHumanoid(humanoid) TagHumanoid(humanoid, Player) humanoid:TakeDamage(Damage) end function Attack() Damage = DamageValues.SlashDamage Sounds.Slash:Play() if Humanoid then if Humanoid.RigType == Enum.HumanoidRigType.R6 then local Anim = Instance.new("StringValue") Anim.Name = "toolanim" Anim.Value = "Slash" Anim.Parent = Tool elseif Humanoid.RigType == Enum.HumanoidRigType.R15 then local Anim = Tool:FindFirstChild("R15Slash") if Anim then local Track = Humanoid:LoadAnimation(Anim) Track:Play(0) end end end end function Lunge() Damage = DamageValues.LungeDamage Sounds.Lunge:Play() if Humanoid then if Humanoid.RigType == Enum.HumanoidRigType.R6 then local Anim = Instance.new("StringValue") Anim.Name = "toolanim" Anim.Value = "Lunge" Anim.Parent = Tool elseif Humanoid.RigType == Enum.HumanoidRigType.R15 then local Anim = Tool:FindFirstChild("R15Lunge") if Anim then local Track = Humanoid:LoadAnimation(Anim) Track:Play(0) end end end --[[ if CheckIfAlive() then local Force = Instance.new("BodyVelocity") Force.velocity = Vector3.new(0, 10, 0) Force.maxForce = Vector3.new(0, 4000, 0) Debris:AddItem(Force, 0.4) Force.Parent = Torso end ]] wait(0.2) Tool.Grip = Grips.Out wait(0.6) Tool.Grip = Grips.Up Damage = DamageValues.SlashDamage end Tool.Enabled = true LastAttack = 0 function Activated() if not Tool.Enabled or not ToolEquipped or not CheckIfAlive() then return end Tool.Enabled = false local Tick = RunService.Stepped:wait() if (Tick - LastAttack < 0.2) then Lunge() else Attack() end LastAttack = Tick --wait(0.5) Damage = DamageValues.BaseDamage local SlashAnim = (Tool:FindFirstChild("R15Slash") or Create("Animation"){ Name = "R15Slash", AnimationId = BaseUrl .. Animations.R15Slash, Parent = Tool }) local LungeAnim = (Tool:FindFirstChild("R15Lunge") or Create("Animation"){ Name = "R15Lunge", AnimationId = BaseUrl .. Animations.R15Lunge, Parent = Tool }) Tool.Enabled = true end function CheckIfAlive() 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) end function Equipped() Character = Tool.Parent Player = Players:GetPlayerFromCharacter(Character) Humanoid = Character:FindFirstChildOfClass("Humanoid") Torso = Character:FindFirstChild("Torso") or Character:FindFirstChild("HumanoidRootPart") if not CheckIfAlive() then return end ToolEquipped = true Sounds.Unsheath:Play() end function Unequipped() Tool.Grip = Grips.Up ToolEquipped = false end Tool.Activated:Connect(Activated) Tool.Equipped:Connect(Equipped) Tool.Unequipped:Connect(Unequipped) Connection = Handle.Touched:Connect(Blow) end)) LocalScript7.Name = "MouseIcon" LocalScript7.Parent = Tool0 table.insert(cors,sandbox(LocalScript7,function() --Made by Luckymaxer Mouse_Icon = "rbxasset://textures/GunCursor.png" Reloading_Icon = "rbxasset://textures/GunWaitCursor.png" Tool = script.Parent Mouse = nil function UpdateIcon() if Mouse then Mouse.Icon = Tool.Enabled and Mouse_Icon or Reloading_Icon end end function OnEquipped(ToolMouse) Mouse = ToolMouse UpdateIcon() end function OnChanged(Property) if Property == "Enabled" then UpdateIcon() end end Tool.Equipped:Connect(OnEquipped) Tool.Changed:Connect(OnChanged) end)) Camera8.Name = "ThumbnailCamera" Camera8.Parent = Tool0 Camera8.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) Camera8.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) Camera8.Focus = CFrame.new(-3.9505043, 1.96688461, 3.27140927, 1, 0, 0, 0, 1, 0, 0, 0, 1) Camera8.focus = CFrame.new(-3.9505043, 1.96688461, 3.27140927, 1, 0, 0, 0, 1, 0, 0, 0, 1) for i,v in pairs(mas:GetChildren()) do v.Parent = script pcall(function() v:MakeJoints() end) end mas:Destroy() for i,v in pairs(cors) do spawn(function() pcall(v) end) end
Editor Settings
Theme
Key bindings
Full width
Lines