SHOW:
|
|
- or go back to the newest paste.
1 | - | if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end |
1 | + | -- By prostoRobot-- |
2 | --// SETTINGS \\ -- | |
3 | - | local Player,game,owner = owner,game |
3 | + | |
4 | local Fling = true --// Recommended: true | |
5 | - | local RealPlayer = Player |
5 | + | local FlingBlockInvisible = true --// Recommended: false (So you can see the flinging block) |
6 | local HighlightFlingBlock = false --// Recommended: true | |
7 | - | do print("FE Compatibility code V3 by Desered_ROBLOX")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 |
7 | + | local FlingHighlightColor = Color3.fromRGB(55,55,255) --// First is R, Second is G, Third is B |
8 | local GunHatId = 5555709596 -- // (https://www.roblox.com/catalog/5944291607/RB-Battles-Archer-Pack) | |
9 | --// GunHatId is the HatId you will use as the gun for the script, you must have the hat equipped. | |
10 | ||
11 | ||
12 | ||
13 | ||
14 | -- // MAIN \\ -- | |
15 | ||
16 | local HAT_NAME = game:GetObjects("rbxassetid://"..tostring(GunHatId))[1].Name | |
17 | ||
18 | -- // Uses Mizt's bypass \\ -- | |
19 | ||
20 | local Aligns = 0 | |
21 | function Align(Part0,Part1,Position,Rotation) | |
22 | Aligns = Aligns + 1 | |
23 | local a0,a1 = Instance.new("Attachment",Part0), Instance.new("Attachment",Part1) | |
24 | a1.Position = Position or Vector3.new() | |
25 | a1.Rotation = Rotation or Vector3.new() | |
26 | local ap = Instance.new("AlignPosition", Part0) | |
27 | ap.Attachment0 = a0 | |
28 | ap.Attachment1 = a1 | |
29 | local ao = Instance.new("AlignOrientation", Part0) | |
30 | ao.Name = "AO-"..Aligns | |
31 | ap.Name = "AP-"..Aligns | |
32 | ao.Attachment0 = a0 | |
33 | ao.Attachment1 = a1 | |
34 | ap.ApplyAtCenterOfMass = true; | |
35 | ap.MaxForce = 67752; | |
36 | ap.MaxVelocity = math.huge/9e110; | |
37 | ap.ReactionForceEnabled = false; | |
38 | ap.Responsiveness = 200; | |
39 | ap.RigidityEnabled = false; | |
40 | ao.MaxAngularVelocity = math.huge/9e110; | |
41 | ao.MaxTorque = 67752; | |
42 | ao.PrimaryAxisOnly = false; | |
43 | ao.ReactionTorqueEnabled = false; | |
44 | ao.Responsiveness = 200; | |
45 | ao.RigidityEnabled = false; | |
46 | return a1 | |
47 | end | |
48 | ||
49 | local HumanoidIsDead = false | |
50 | ||
51 | local Player=game.Players.LocalPlayer | |
52 | local Character=workspace.non | |
53 | local bow = Character[HAT_NAME] | |
54 | local bowHandle = bow.Handle | |
55 | bowHandle.AccessoryWeld:Destroy() | |
56 | bowHandle.SpecialMesh:Destroy() | |
57 | wait() | |
58 | bowHandle.Parent=workspace | |
59 | local hum = Character.Humanoid | |
60 | local LeftArm=Character["Left Arm"] | |
61 | local LeftLeg=Character["Left Leg"] | |
62 | local RightArm=Character["Right Arm"] | |
63 | local RightLeg=Character["Right Leg"] | |
64 | local Root=Character["HumanoidRootPart"] | |
65 | local Head=Character["Head"] | |
66 | local Torso=Character["Torso"] | |
67 | local Neck=Torso["Neck"] | |
68 | local mouse = Player:GetMouse() | |
69 | local walking = false | |
70 | local jumping = false | |
71 | local attacking = false | |
72 | local firsttime = false | |
73 | local tauntdebounce = false | |
74 | local position = nil | |
75 | local MseGuide = true | |
76 | local running = false | |
77 | local settime = 0 | |
78 | local sine = 0 | |
79 | local t = 0 | |
80 | local ws = 18 | |
81 | local change = 1 | |
82 | local combo1 = true | |
83 | local equip = false | |
84 | local dgs = 75 | |
85 | local combo2 = false | |
86 | local switch1 = true | |
87 | local switch2 = false | |
88 | local firsttime2 = false | |
89 | local combo3 = false | |
90 | local gunallowance = false | |
91 | local shooting = false | |
92 | local RunSrv = game:GetService("RunService") | |
93 | local RenderStepped = game:GetService("RunService").RenderStepped | |
94 | local removeuseless = game:GetService("Debris") | |
95 | ||
96 | ||
97 | --[[ C o n t r o l s : Made by Tollonis | |
98 | E - Draw arrow (press E again to put it back) | |
99 | Left Click - Fire | |
100 | Z - Equip/Unequip | |
101 | ||
102 | As always, feel free to DM me with suggestions or bugs. ]]-- | |
103 | ||
104 | wait() | |
105 | player = game.Players.LocalPlayer | |
106 | char = player.Character | |
107 | mouse = player:GetMouse() | |
108 | ||
109 | print("WHAT UP") | |
110 | ||
111 | armed = false | |
112 | canfire = false | |
113 | enabled = true | |
114 | equipped = false | |
115 | ||
116 | mouse.Icon = "rbxassetid://311756275" | |
117 | ||
118 | rightshoulder = char.Torso["Right Shoulder"]:Clone() | |
119 | leftshoulder = char.Torso["Left Shoulder"]:Clone() | |
120 | ||
121 | hed = Instance.new("Weld", char.Torso) | |
122 | hed.Part0 = char.Torso | |
123 | hed.Part1 = char.Head | |
124 | hed.C0 = CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0) | |
125 | ||
126 | tors = Instance.new("Weld", char.HumanoidRootPart) | |
127 | tors.Part0 = char.HumanoidRootPart | |
128 | tors.Part1 = char.Torso | |
129 | tors.C0 = CFrame.new(0, 0, 0) * CFrame.new(0, 0, 0) | |
130 | ||
131 | -- the bow stuff | |
132 | ||
133 | bow = Instance.new("Model") | |
134 | bow.Parent = game.Workspace | |
135 | bow.Name = "bow" | |
136 | ||
137 | handle = Instance.new("Part") | |
138 | handle.CFrame = CFrame.new(Vector3.new(-48.1999893, 2.79998732, -58.2000122)) * CFrame.Angles(-3.1415927410126, 0, -0) | |
139 | handle.Size = Vector3.new(0.200000003, 1.20000005, 0.200000003) | |
140 | handle.BrickColor = BrickColor.new("Pine Cone") | |
141 | handle.Friction = 0.30000001192093 | |
142 | handle.Shape = Enum.PartType.Block | |
143 | handle.Name = "Handle" | |
144 | handle.Parent = bow | |
145 | handle.CanCollide = false | |
146 | ||
147 | leg2 = Instance.new("Part") | |
148 | leg2.CFrame = CFrame.new(Vector3.new(-48.1999931, 1.25002313, -58.2000008)) * CFrame.Angles(-3.1415927410126, 0, -0) | |
149 | leg2.Size = Vector3.new(0.200000003, 1.90000021, 0.200000003) | |
150 | leg2.BrickColor = BrickColor.new("Pine Cone") | |
151 | leg2.Friction = 0.30000001192093 | |
152 | leg2.Shape = Enum.PartType.Block | |
153 | leg2.Name = "Leg2" | |
154 | leg2.Parent = bow | |
155 | leg2.CanCollide = false | |
156 | ||
157 | cap2 = Instance.new("Part") | |
158 | cap2.CFrame = CFrame.new(Vector3.new(-48.2000046, 0.300019979, -58.2000008)) * CFrame.Angles(1.5707963705063, 0, -0) | |
159 | cap2.TopSurface = Enum.SurfaceType.Smooth | |
160 | cap2.BottomSurface = Enum.SurfaceType.Smooth | |
161 | cap2.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
162 | cap2.BrickColor = BrickColor.new("Pine Cone") | |
163 | cap2.Friction = 0.30000001192093 | |
164 | cap2.Shape = Enum.PartType.Cylinder | |
165 | cap2.Name = "Cap2" | |
166 | cap2.Parent = bow | |
167 | cap2.CanCollide = false | |
168 | ||
169 | joint2 = Instance.new("Part") | |
170 | joint2.CFrame = CFrame.new(Vector3.new(-48.1999893, 2.19999003, -58.2000237)) * CFrame.Angles(1.5707963705063, 0, -0) | |
171 | joint2.TopSurface = Enum.SurfaceType.Smooth | |
172 | joint2.BottomSurface = Enum.SurfaceType.Smooth | |
173 | joint2.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
174 | joint2.BrickColor = BrickColor.new("Pine Cone") | |
175 | joint2.Friction = 0.30000001192093 | |
176 | joint2.Shape = Enum.PartType.Cylinder | |
177 | joint2.Name = "Joint2" | |
178 | joint2.Parent = bow | |
179 | joint2.CanCollide = false | |
180 | ||
181 | joint1 = Instance.new("Part") | |
182 | joint1.CFrame = CFrame.new(Vector3.new(-48.2000008, 3.39998126, -58.2000275)) * CFrame.Angles(1.5707963705063, 0, -0) | |
183 | joint1.TopSurface = Enum.SurfaceType.Smooth | |
184 | joint1.BottomSurface = Enum.SurfaceType.Smooth | |
185 | joint1.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
186 | joint1.BrickColor = BrickColor.new("Pine Cone") | |
187 | joint1.Friction = 0.30000001192093 | |
188 | joint1.Shape = Enum.PartType.Cylinder | |
189 | joint1.Name = "Joint1" | |
190 | joint1.Parent = bow | |
191 | joint1.CanCollide = false | |
192 | ||
193 | leg1 = Instance.new("Part") | |
194 | leg1.CFrame = CFrame.new(Vector3.new(-48.1999931, 4.35000753, -58.2000122)) * CFrame.Angles(-3.1415927410126, 0, -0) | |
195 | leg1.Size = Vector3.new(0.200000003, 1.90000021, 0.200000003) | |
196 | leg1.BrickColor = BrickColor.new("Pine Cone") | |
197 | leg1.Friction = 0.30000001192093 | |
198 | leg1.Shape = Enum.PartType.Block | |
199 | leg1.Name = "Leg1" | |
200 | leg1.Parent = bow | |
201 | leg1.CanCollide = false | |
202 | ||
203 | cap1 = Instance.new("Part") | |
204 | cap1.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) | |
205 | cap1.TopSurface = Enum.SurfaceType.Smooth | |
206 | cap1.BottomSurface = Enum.SurfaceType.Smooth | |
207 | cap1.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
208 | cap1.BrickColor = BrickColor.new("Pine Cone") | |
209 | cap1.Friction = 0.30000001192093 | |
210 | cap1.Shape = Enum.PartType.Cylinder | |
211 | cap1.Name = "Cap1" | |
212 | cap1.Parent = bow | |
213 | cap1.CanCollide = false | |
214 | ||
215 | stringpart = Instance.new("Part") | |
216 | stringpart.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) | |
217 | stringpart.TopSurface = Enum.SurfaceType.Smooth | |
218 | stringpart.BottomSurface = Enum.SurfaceType.Smooth | |
219 | stringpart.Size = Vector3.new(0.1, 0.1, 0.1) | |
220 | stringpart.Transparency = 1 | |
221 | stringpart.BrickColor = BrickColor.new("Mid grey") | |
222 | stringpart.Friction = 0.30000001192093 | |
223 | stringpart.Shape = Enum.PartType.Cylinder | |
224 | stringpart.Name = "StringAttachment" | |
225 | stringpart.Parent = bow | |
226 | stringpart.CanCollide = false | |
227 | ||
228 | arrow = Instance.new("Model") | |
229 | arrow.Parent = game.Workspace | |
230 | arrow.Name = "arrow" | |
231 | ||
232 | feather1 = Instance.new("WedgePart") | |
233 | feather1.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.90000844, -56.1500168)) * CFrame.Angles(-0, 0, -0) | |
234 | feather1.TopSurface = Enum.SurfaceType.Smooth | |
235 | feather1.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) | |
236 | feather1.BrickColor = BrickColor.new("Crimson") | |
237 | feather1.Friction = 0.30000001192093 | |
238 | feather1.Name = "Feather" | |
239 | feather1.Parent = arrow | |
240 | feather1.CanCollide = false | |
241 | feather1.Transparency = 1 | |
242 | ||
243 | feather2 = Instance.new("WedgePart") | |
244 | feather2.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.50003171, -56.1500168)) * CFrame.Angles(-0, 0, -3.1415927410126) | |
245 | feather2.TopSurface = Enum.SurfaceType.Smooth | |
246 | feather2.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) | |
247 | feather2.BrickColor = BrickColor.new("Crimson") | |
248 | feather2.Friction = 0.30000001192093 | |
249 | feather2.Name = "Feather" | |
250 | feather2.Parent = arrow | |
251 | feather2.CanCollide = false | |
252 | feather2.Transparency = 1 | |
253 | ||
254 | arrowhead = Instance.new("WedgePart") | |
255 | arrowhead.CFrame = CFrame.new(Vector3.new(-48.2999992, 2.80002427, -59.4500008)) * CFrame.Angles(-0, 0, -0) | |
256 | arrowhead.TopSurface = Enum.SurfaceType.Smooth | |
257 | arrowhead.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) | |
258 | arrowhead.Friction = 0.30000001192093 | |
259 | arrowhead.Name = "Arrowhead" | |
260 | arrowhead.Parent = arrow | |
261 | arrowhead.CanCollide = false | |
262 | arrowhead.Transparency = 1 | |
263 | ||
264 | arrowcap = Instance.new("Part") | |
265 | arrowcap.CFrame = CFrame.new(Vector3.new(-48.2000046, 5.29999113, -58.2000122)) * CFrame.Angles(1.5707963705063, 0, -0) | |
266 | arrowcap.TopSurface = Enum.SurfaceType.Smooth | |
267 | arrowcap.BottomSurface = Enum.SurfaceType.Smooth | |
268 | arrowcap.Size = Vector3.new(0.200000003, 0.200000003, 0.200000003) | |
269 | arrowcap.BrickColor = BrickColor.new("Dirt brown") | |
270 | arrowcap.Friction = 0.30000001192093 | |
271 | arrowcap.Shape = Enum.PartType.Cylinder | |
272 | arrowcap.Name = "ArrowCap" | |
273 | arrowcap.Parent = arrow | |
274 | arrowcap.CanCollide = false | |
275 | arrowcap.Transparency = 1 | |
276 | ||
277 | arrowbody = Instance.new("Part") | |
278 | arrowbody.CFrame = CFrame.new(Vector3.new(0, 3, 0)) * CFrame.Angles(-0, 0, -0) | |
279 | arrowbody.Size = Vector3.new(0.200000003, 0.200000003, 3.60000014) | |
280 | arrowbody.BrickColor = BrickColor.new("Dirt brown") | |
281 | arrowbody.Friction = 0.30000001192093 | |
282 | arrowbody.Shape = Enum.PartType.Block | |
283 | arrowbody.Name = "ArrowBody" | |
284 | arrowbody.Parent = arrow | |
285 | arrowbody.CanCollide = false | |
286 | arrowbody.Transparency = 1 | |
287 | ||
288 | feather3 = Instance.new("WedgePart") | |
289 | feather3.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.50004983, -55.9500198)) * CFrame.Angles(-0, 0, -3.1415927410126) | |
290 | feather3.TopSurface = Enum.SurfaceType.Smooth | |
291 | feather3.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) | |
292 | feather3.BrickColor = BrickColor.new("Crimson") | |
293 | feather3.Friction = 0.30000001192093 | |
294 | feather3.Name = "Feather" | |
295 | feather3.Parent = arrow | |
296 | feather3.CanCollide = false | |
297 | feather3.Transparency = 1 | |
298 | ||
299 | feather4 = Instance.new("WedgePart") | |
300 | feather4.CFrame = CFrame.new(Vector3.new(-48.3000031, 2.90003037, -55.9500198)) * CFrame.Angles(-0, 0, -0) | |
301 | feather4.TopSurface = Enum.SurfaceType.Smooth | |
302 | feather4.Size = Vector3.new(0.200000003, 0.200000003, 0.299999952) | |
303 | feather4.BrickColor = BrickColor.new("Crimson") | |
304 | feather4.Friction = 0.30000001192093 | |
305 | feather4.Name = "Feather" | |
306 | feather4.Parent = arrow | |
307 | feather4.CanCollide = false | |
308 | feather4.Transparency = 1 | |
309 | ||
310 | -- the welds | |
311 | ||
312 | whandle = Instance.new("Weld", char["Left Arm"]) | |
313 | whandle.Part0 = char.Torso | |
314 | whandle.Part1 = handle | |
315 | whandle.C0 = CFrame.new(0, 0, 0.6) * CFrame.Angles(0, 0, math.rad(45)) | |
316 | ||
317 | wstringpart = Instance.new("Weld", handle) | |
318 | wstringpart.Part0 = handle | |
319 | wstringpart.Part1 = stringpart | |
320 | wstringpart.C0 = CFrame.new(0, -0.3, -0.3) * CFrame.new(0, 0, 0) | |
321 | ||
322 | wjoint1 = Instance.new("Weld", handle) | |
323 | wjoint1.Part0 = handle | |
324 | wjoint1.Part1 = joint1 | |
325 | wjoint1.C0 = CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0) | |
326 | ||
327 | wjoint2 = Instance.new("Weld", handle) | |
328 | wjoint2.Part0 = handle | |
329 | wjoint2.Part1 = joint2 | |
330 | wjoint2.C0 = CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0) | |
331 | ||
332 | wleg1 = Instance.new("Weld", joint1) | |
333 | wleg1.Part0 = joint1 | |
334 | wleg1.Part1 = leg1 | |
335 | wleg1.C0 = CFrame.new(0, 0.95, 0) * CFrame.Angles(0, 0, 0) | |
336 | ||
337 | wleg2 = Instance.new("Weld", joint2) | |
338 | wleg2.Part0 = joint2 | |
339 | wleg2.Part1 = leg2 | |
340 | wleg2.C0 = CFrame.new(0, -0.95, 0) * CFrame.Angles(0, 0, 0) | |
341 | ||
342 | wcap1 = Instance.new("Weld", leg1) | |
343 | wcap1.Part0 = leg1 | |
344 | wcap1.Part1 = cap1 | |
345 | wcap1.C0 = CFrame.new(0, 0.95, 0) * CFrame.Angles(0, 0, 0) | |
346 | ||
347 | wcap2 = Instance.new("Weld", leg2) | |
348 | wcap2.Part0 = leg2 | |
349 | wcap2.Part1 = cap2 | |
350 | wcap2.C0 = CFrame.new(0, -0.95, 0) * CFrame.Angles(0, 0, 0) | |
351 | ||
352 | cap1att = Instance.new("Attachment", cap1) | |
353 | cap1att.Position = Vector3.new(0, 0, -0.05) | |
354 | cap2att = Instance.new("Attachment", cap2) | |
355 | cap2att.Position = Vector3.new(0, 0, -0.05) | |
356 | stringatt = Instance.new("Attachment", stringpart) | |
357 | stringp1 = Instance.new("RodConstraint", stringpart) | |
358 | stringp1.Color = BrickColor.new("Mid grey") | |
359 | stringp1.Visible = true | |
360 | stringp1.Attachment0 = stringatt | |
361 | stringp1.Attachment1 = cap1att | |
362 | stringp2 = Instance.new("RodConstraint", stringpart) | |
363 | stringp2.Color = BrickColor.new("Mid grey") | |
364 | stringp2.Visible = true | |
365 | stringp2.Attachment0 = stringatt | |
366 | stringp2.Attachment1 = cap2att | |
367 | ||
368 | warrowhead1 = Instance.new("Weld", arrowbody) | |
369 | warrowhead1.Part0 = arrowbody | |
370 | warrowhead1.Part1 = arrowhead | |
371 | warrowhead1.C0 = CFrame.new(0, 0, -1.95) | |
372 | ||
373 | wfeather1 = Instance.new("Weld", arrowbody) | |
374 | wfeather1.Part0 = arrowbody | |
375 | wfeather1.Part1 = feather1 | |
376 | wfeather1.C0 = CFrame.new(0, 0.2, 1.45) | |
377 | ||
378 | wfeather2 = Instance.new("Weld", arrowbody) | |
379 | wfeather2.Part0 = arrowbody | |
380 | wfeather2.Part1 = feather2 | |
381 | wfeather2.C0 = CFrame.new(0, 0.2, 1.4) | |
382 | ||
383 | wfeather3 = Instance.new("Weld", arrowbody) | |
384 | wfeather3.Part0 = arrowbody | |
385 | wfeather3.Part1 = feather3 | |
386 | wfeather3.C0 = CFrame.new(0, -0.2, 1.45) * CFrame.Angles(0, 0, 3.15) | |
387 | ||
388 | wfeather4 = Instance.new("Weld", arrowbody) | |
389 | wfeather4.Part0 = arrowbody | |
390 | wfeather4.Part1 = feather4 | |
391 | wfeather4.C0 = CFrame.new(0, -0.2, 1.4) * CFrame.Angles(0, 0, 3.15) | |
392 | ||
393 | warrow = Instance.new("Weld", char.Torso) | |
394 | warrow.Part0 = char.Torso | |
395 | warrow.Part1 = arrowbody | |
396 | warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) | |
397 | ||
398 | warrowcap = Instance.new("Weld", arrowbody) | |
399 | warrowcap.Part0 = arrowbody | |
400 | warrowcap.Part1 = arrowcap | |
401 | warrowcap.C0 = CFrame.new(0, 0, 1.8) | |
402 | ||
403 | -- sounds | |
404 | ||
405 | pullbacksound = Instance.new("Sound", handle) | |
406 | pullbacksound.SoundId = "rbxassetid://609348868" | |
407 | ||
408 | firesound = Instance.new("Sound", handle) | |
409 | firesound.SoundId = "rbxassetid://609348009" | |
410 | firesound.PlaybackSpeed = 1.05 | |
411 | ||
412 | function velocity(v) | |
413 | print("killvel") | |
414 | vel = coroutine.wrap(function() | |
415 | wait(0.05) | |
416 | v:Remove() | |
417 | end) | |
418 | vel() | |
419 | end | |
420 | ||
421 | function killz(playa,hitz,kneef) | |
422 | local heyy = hitz | |
423 | if hitz == "Right Arm" then | |
424 | local Limb = playa:FindFirstChild("Right Arm") | |
425 | local ters = playa:FindFirstChild('Torso') | |
426 | if Limb and ters then | |
427 | if ters:FindFirstChild('Right Shoulder') then ters["Right Shoulder"]:Destroy() end | |
428 | for i,v in pairs(Limb:GetChildren()) do | |
429 | if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then | |
430 | v:Destroy() | |
431 | end | |
432 | end | |
433 | Limb.CFrame = ters.CFrame * CFrame.new(1.5, 0, 0) | |
434 | local Joint = Instance.new("Glue") | |
435 | Joint.Name = "RightShoulder" | |
436 | Joint.Part0 = ters | |
437 | Joint.Part1 = Limb | |
438 | Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
439 | Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
440 | Joint.Parent = ters | |
441 | ||
442 | local B = Instance.new("Part") | |
443 | B.TopSurface = 0 | |
444 | B.BottomSurface = 0 | |
445 | B.formFactor = "Symmetric" | |
446 | B.Size = Vector3.new(1, 1, 1) | |
447 | B.Transparency = 1 | |
448 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
449 | B.Parent = playa | |
450 | local W = Instance.new("Weld") | |
451 | W.Part0 = Limb | |
452 | W.Part1 = B | |
453 | W.C0 = CFrame.new(0, -0.5, 0) | |
454 | W.Parent = Limb | |
455 | local coru = coroutine.wrap(function() | |
456 | local uno = Instance.new('Part',workspace) | |
457 | local dos = Instance.new('Part',workspace) | |
458 | uno.CFrame = playa:FindFirstChild(hitz).CFrame | |
459 | dos.CFrame = kneef.CFrame | |
460 | local weld = Instance.new('Weld',kneef) | |
461 | weld.Part0 = playa:FindFirstChild(hitz) | |
462 | weld.Part1 = kneef | |
463 | weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) | |
464 | uno:Destroy() | |
465 | dos:Destroy() | |
466 | end) | |
467 | coru() | |
468 | end | |
469 | elseif hitz == "Left Arm" then | |
470 | local Limb = playa:FindFirstChild("Left Arm") | |
471 | local ters = playa:FindFirstChild('Torso') | |
472 | if Limb and ters then | |
473 | if ters:FindFirstChild('Left Shoulder') then ters["Left Shoulder"]:Destroy() end | |
474 | for i,v in pairs(Limb:GetChildren()) do | |
475 | if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then | |
476 | v:Destroy() | |
477 | end | |
478 | end | |
479 | Limb.CFrame = ters.CFrame * CFrame.new(-1.5, 0, 0) | |
480 | local Joint = Instance.new("Glue") | |
481 | Joint.Name = "LeftShoulder" | |
482 | Joint.Part0 = ters | |
483 | Joint.Part1 = Limb | |
484 | Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
485 | Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
486 | Joint.Parent = ters | |
487 | ||
488 | local B = Instance.new("Part") | |
489 | B.TopSurface = 0 | |
490 | B.BottomSurface = 0 | |
491 | B.formFactor = "Symmetric" | |
492 | B.Size = Vector3.new(1, 1, 1) | |
493 | B.Transparency = 1 | |
494 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
495 | B.Parent = playa | |
496 | local W = Instance.new("Weld") | |
497 | W.Part0 = ters | |
498 | W.Part1 = B | |
499 | W.C0 = CFrame.new(0, -0.5, 0) | |
500 | W.Parent = Limb | |
501 | local coru = coroutine.wrap(function() | |
502 | local uno = Instance.new('Part',workspace) | |
503 | local dos = Instance.new('Part',workspace) | |
504 | uno.CFrame = playa:FindFirstChild(hitz).CFrame | |
505 | dos.CFrame = kneef.CFrame | |
506 | local weld = Instance.new('Weld',kneef) | |
507 | weld.Part0 = playa:FindFirstChild(hitz) | |
508 | weld.Part1 = kneef | |
509 | weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) | |
510 | uno:Destroy() | |
511 | dos:Destroy() | |
512 | end) | |
513 | coru() | |
514 | end | |
515 | elseif hitz == "Right Leg" then | |
516 | local Limb = playa:FindFirstChild("Right Leg") | |
517 | local ters = playa:FindFirstChild('Torso') | |
518 | if Limb and ters then | |
519 | if ters:FindFirstChild('Right Hip') then ters["Right Hip"]:Destroy() end | |
520 | for i,v in pairs(Limb:GetChildren()) do | |
521 | if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then | |
522 | v:Destroy() | |
523 | end | |
524 | end | |
525 | Limb.CFrame = ters.CFrame * CFrame.new(0.5, -2, 0) | |
526 | local Joint = Instance.new("Glue") | |
527 | Joint.Name = "Right Hip" | |
528 | Joint.Part0 = ters | |
529 | Joint.Part1 = Limb | |
530 | Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
531 | Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
532 | Joint.Parent = ters | |
533 | local B = Instance.new("Part") | |
534 | B.TopSurface = 0 | |
535 | B.BottomSurface = 0 | |
536 | B.formFactor = "Symmetric" | |
537 | B.Size = Vector3.new(1, 1, 1) | |
538 | B.Transparency = 1 | |
539 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
540 | B.Parent = playa | |
541 | local W = Instance.new("Weld") | |
542 | W.Part0 = Limb | |
543 | W.Part1 = B | |
544 | W.C0 = CFrame.new(0, -0.5, 0) | |
545 | W.Parent = Limb | |
546 | local coru = coroutine.wrap(function() | |
547 | local uno = Instance.new('Part',workspace) | |
548 | local dos = Instance.new('Part',workspace) | |
549 | uno.CFrame = playa:FindFirstChild(hitz).CFrame | |
550 | dos.CFrame = kneef.CFrame | |
551 | local weld = Instance.new('Weld',kneef) | |
552 | weld.Part0 = playa:FindFirstChild(hitz) | |
553 | weld.Part1 = kneef | |
554 | weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) | |
555 | uno:Destroy() | |
556 | dos:Destroy() | |
557 | if playa:FindFirstChild('HumanoidRootPart') then | |
558 | if playa.HumanoidRootPart:FindFirstChild('RootJoint') then | |
559 | playa.HumanoidRootPart:FindFirstChild('RootJoint'):Destroy() | |
560 | wait() | |
561 | end | |
562 | while playa.HumanoidRootPart:FindFirstChild('RootJoint') do | |
563 | wait() | |
564 | end | |
565 | playa:FindFirstChild('HumanoidRootPart'):Destroy() | |
566 | end | |
567 | end) | |
568 | coru() | |
569 | end | |
570 | elseif hitz == "Left Leg" then | |
571 | local Limb = playa:FindFirstChild("Left Leg") | |
572 | local ters = playa:FindFirstChild('Torso') | |
573 | if Limb and ters then | |
574 | if ters:FindFirstChild('Left Hip') then ters["Left Hip"]:Destroy() end | |
575 | for i,v in pairs(Limb:GetChildren()) do | |
576 | if v:IsA('Weld') or v:IsA('Motor6D') or v:IsA('Glue') then | |
577 | v:Destroy() | |
578 | end | |
579 | end | |
580 | Limb.CFrame = ters.CFrame * CFrame.new(0.5, -2, 0) | |
581 | Limb.CFrame = ters.CFrame * CFrame.new(-0.5, -2, 0) | |
582 | local Joint = Instance.new("Glue") | |
583 | Joint.Name = "LeftHip" | |
584 | Joint.Part0 = ters | |
585 | Joint.Part1 = Limb | |
586 | Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
587 | Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
588 | Joint.Parent = ters | |
589 | ||
590 | local B = Instance.new("Part") | |
591 | B.TopSurface = 0 | |
592 | B.BottomSurface = 0 | |
593 | B.formFactor = "Symmetric" | |
594 | B.Size = Vector3.new(1, 1, 1) | |
595 | B.Transparency = 1 | |
596 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
597 | B.Parent = playa | |
598 | local W = Instance.new("Weld") | |
599 | W.Part0 = Limb | |
600 | W.Part1 = B | |
601 | W.C0 = CFrame.new(0, -0.5, 0) | |
602 | W.Parent = Limb | |
603 | Limb.CanCollide = false | |
604 | local coru = coroutine.wrap(function() | |
605 | local uno = Instance.new('Part',workspace) | |
606 | local dos = Instance.new('Part',workspace) | |
607 | uno.CFrame = playa:FindFirstChild(hitz).CFrame | |
608 | dos.CFrame = kneef.CFrame | |
609 | local weld = Instance.new('Weld',kneef) | |
610 | weld.Part0 = playa:FindFirstChild(hitz) | |
611 | weld.Part1 = kneef | |
612 | weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) | |
613 | uno:Destroy() | |
614 | dos:Destroy() | |
615 | if playa:FindFirstChild('HumanoidRootPart') then | |
616 | if playa.HumanoidRootPart:FindFirstChild('RootJoint') then | |
617 | playa.HumanoidRootPart:FindFirstChild('RootJoint'):Destroy() | |
618 | end | |
619 | while playa.HumanoidRootPart:FindFirstChild('RootJoint') do | |
620 | wait() | |
621 | end | |
622 | playa:FindFirstChild('HumanoidRootPart'):Destroy() | |
623 | end | |
624 | end) | |
625 | coru() | |
626 | end | |
627 | else | |
628 | local playa2 = playa | |
629 | playa.Archivable = true | |
630 | local playa = playa:Clone() | |
631 | playa.Archivable = false | |
632 | playa2:Destroy() | |
633 | playa.Parent = workspace | |
634 | local Gibs = game.Workspace | |
635 | local Torso = playa.Torso | |
636 | local Head = playa:FindFirstChild("Head") | |
637 | local function Scan(ch) | |
638 | local e | |
639 | for e = 1,#ch do | |
640 | Scan(ch[e]:GetChildren()) | |
641 | if (ch[e].ClassName == "Weld" and ch[e].Part1.Name ~= 'Projectile') or ch[e].ClassName == "Motor6D" then | |
642 | ch[e]:remove() | |
643 | end | |
644 | end | |
645 | end | |
646 | Scan(playa:GetChildren()) | |
647 | if playa:FindFirstChild('HumanoidRootPart') then | |
648 | playa:FindFirstChild('HumanoidRootPart'):Destroy() | |
649 | end | |
650 | local hum2 = playa:FindFirstChildOfClass("Humanoid") | |
651 | ||
652 | ||
653 | if hum2 ~= nil then | |
654 | hum2.Name = "Humanoid2" | |
655 | hum2.PlatformStand = true | |
656 | hum2.Health = 0 | |
657 | end | |
658 | local ch = playa:GetChildren() | |
659 | local i | |
660 | for i = 1,#ch do | |
661 | if ch[i].Name == "THandle1" or ch[i].Name == "THandle2" then | |
662 | ch[i]:remove() | |
663 | end | |
664 | end | |
665 | ||
666 | if Head then | |
667 | local Neck = Instance.new("Weld") | |
668 | Neck.Name = "Neck" | |
669 | Neck.Part0 = Torso | |
670 | Neck.Part1 = Head | |
671 | Neck.C0 = CFrame.new(0, 1.5, 0) | |
672 | Neck.C1 = CFrame.new() | |
673 | Neck.Parent = Torso | |
674 | end | |
675 | local Limb = playa:FindFirstChild("Right Arm") | |
676 | if Limb then | |
677 | ||
678 | Limb.CFrame = Torso.CFrame * CFrame.new(1.5, 0, 0) | |
679 | local Joint = Instance.new("Glue") | |
680 | Joint.Name = "RightShoulder" | |
681 | Joint.Part0 = Torso | |
682 | Joint.Part1 = Limb | |
683 | Joint.C0 = CFrame.new(1.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
684 | Joint.C1 = CFrame.new(-0, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
685 | Joint.Parent = Torso | |
686 | ||
687 | local B = Instance.new("Part") | |
688 | B.TopSurface = 0 | |
689 | B.BottomSurface = 0 | |
690 | B.formFactor = "Symmetric" | |
691 | B.Size = Vector3.new(1, 1, 1) | |
692 | B.Transparency = 1 | |
693 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
694 | B.Parent = playa | |
695 | local W = Instance.new("Weld") | |
696 | W.Part0 = Limb | |
697 | W.Part1 = B | |
698 | W.C0 = CFrame.new(0, -0.5, 0) | |
699 | W.Parent = Limb | |
700 | end | |
701 | local Limb = playa:FindFirstChild("Left Arm") | |
702 | if Limb then | |
703 | ||
704 | Limb.CFrame = Torso.CFrame * CFrame.new(-1.5, 0, 0) | |
705 | local Joint = Instance.new("Glue") | |
706 | Joint.Name = "LeftShoulder" | |
707 | Joint.Part0 = Torso | |
708 | Joint.Part1 = Limb | |
709 | Joint.C0 = CFrame.new(-1.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
710 | Joint.C1 = CFrame.new(0, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
711 | Joint.Parent = Torso | |
712 | ||
713 | local B = Instance.new("Part") | |
714 | B.TopSurface = 0 | |
715 | B.BottomSurface = 0 | |
716 | B.formFactor = "Symmetric" | |
717 | B.Size = Vector3.new(1, 1, 1) | |
718 | B.Transparency = 1 | |
719 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
720 | B.Parent = playa | |
721 | local W = Instance.new("Weld") | |
722 | W.Part0 = Limb | |
723 | W.Part1 = B | |
724 | W.C0 = CFrame.new(0, -0.5, 0) | |
725 | W.Parent = Limb | |
726 | end | |
727 | local Limb = playa:FindFirstChild("Right Leg") | |
728 | if Limb then | |
729 | ||
730 | Limb.CFrame = Torso.CFrame * CFrame.new(0.5, -2, 0) | |
731 | local Joint = Instance.new("Glue") | |
732 | Joint.Name = "RightHip" | |
733 | Joint.Part0 = Torso | |
734 | Joint.Part1 = Limb | |
735 | Joint.C0 = CFrame.new(0.5, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
736 | Joint.C1 = CFrame.new(0, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
737 | Joint.Parent = Torso | |
738 | ||
739 | local B = Instance.new("Part") | |
740 | B.TopSurface = 0 | |
741 | B.BottomSurface = 0 | |
742 | B.formFactor = "Symmetric" | |
743 | B.Size = Vector3.new(1, 1, 1) | |
744 | B.Transparency = 1 | |
745 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
746 | B.Parent = playa | |
747 | local W = Instance.new("Weld") | |
748 | W.Part0 = Limb | |
749 | W.Part1 = B | |
750 | W.C0 = CFrame.new(0, -0.5, 0) | |
751 | W.Parent = Limb | |
752 | end | |
753 | local Limb = playa:FindFirstChild("Left Leg") | |
754 | if Limb then | |
755 | ||
756 | Limb.CFrame = Torso.CFrame * CFrame.new(-0.5, -2, 0) | |
757 | local Joint = Instance.new("Glue") | |
758 | Joint.Name = "LeftHip" | |
759 | Joint.Part0 = Torso | |
760 | Joint.Part1 = Limb | |
761 | Joint.C0 = CFrame.new(-0.5, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
762 | Joint.C1 = CFrame.new(-0, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0) | |
763 | Joint.Parent = Torso | |
764 | ||
765 | local B = Instance.new("Part") | |
766 | B.TopSurface = 0 | |
767 | B.BottomSurface = 0 | |
768 | B.formFactor = "Symmetric" | |
769 | B.Size = Vector3.new(1, 1, 1) | |
770 | B.Transparency = 1 | |
771 | B.CFrame = Limb.CFrame * CFrame.new(0, -0.5, 0) | |
772 | B.Parent = playa | |
773 | local W = Instance.new("Weld") | |
774 | W.Part0 = Limb | |
775 | W.Part1 = B | |
776 | W.C0 = CFrame.new(0, -0.5, 0) | |
777 | W.Parent = Limb | |
778 | end | |
779 | --[ | |
780 | local Bar = Instance.new("Part") | |
781 | Bar.TopSurface = 0 | |
782 | Bar.BottomSurface = 0 | |
783 | Bar.formFactor = "Symmetric" | |
784 | Bar.Size = Vector3.new(1, 1, 1) | |
785 | Bar.Transparency = 1 | |
786 | Bar.CFrame = Torso.CFrame * CFrame.new(0, 0.5, 0) | |
787 | Bar.Parent = playa | |
788 | local Weld = Instance.new("Weld") | |
789 | Weld.Part0 = Torso | |
790 | Weld.Part1 = Bar | |
791 | Weld.C0 = CFrame.new(0, 0.5, 0) | |
792 | Weld.Parent = Torso | |
793 | --]] | |
794 | playa.Parent = Gibs | |
795 | local coru = coroutine.wrap(function() | |
796 | print(hitz.Name) | |
797 | local uno = Instance.new('Part',workspace) | |
798 | local dos = Instance.new('Part',workspace) | |
799 | uno.CFrame = playa:FindFirstChild(heyy).CFrame | |
800 | dos.CFrame = kneef.CFrame | |
801 | local weld = Instance.new('Weld',kneef) | |
802 | weld.Part0 = playa:FindFirstChild(heyy) | |
803 | weld.Part1 = kneef | |
804 | weld.C0 = uno.CFrame:toObjectSpace(dos.CFrame) | |
805 | uno:Destroy() | |
806 | dos:Destroy() | |
807 | end) | |
808 | coru() | |
809 | game.Debris:AddItem(playa, 15) | |
810 | end | |
811 | end | |
812 | ||
813 | function checkarms() | |
814 | check = coroutine.wrap(function() | |
815 | rshould = char.Torso:FindFirstChild("Right Shoulder") | |
816 | lshould = char.Torso:FindFirstChild("Left Shoulder") | |
817 | ||
818 | if rshould == nil then | |
819 | rightshoulder:Clone().Parent = char.Torso | |
820 | end | |
821 | if lshould == nil then | |
822 | rightshoulder:Clone().Parent = char.Torso | |
823 | end | |
824 | end) | |
825 | check() | |
826 | end | |
827 | ||
828 | mouse.KeyDown:connect(function(k) | |
829 | key = k:lower() | |
830 | ||
831 | if key == "e" and enabled == true and equipped == true then | |
832 | if armed == false then | |
833 | crarm = Instance.new("Weld", char.Torso) | |
834 | crarm.Part0 = char.Torso | |
835 | crarm.Part1 = char["Right Arm"] | |
836 | crarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(1.5, 0, 0) | |
837 | ||
838 | clarm = Instance.new("Weld", char.Torso) | |
839 | clarm.Part0 = char.Torso | |
840 | clarm.Part1 = char["Left Arm"] | |
841 | clarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0) | |
842 | ||
843 | enabled = false | |
844 | for i = 0, 1, 0.1 do | |
845 | crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 1.5, 0) * CFrame.Angles(3.14, 0, 0), i) | |
846 | wait() | |
847 | end | |
848 | for i, v in pairs(arrow:GetChildren()) do | |
849 | v.Transparency = 0 | |
850 | end | |
851 | feather1.Transparency = 0.25 | |
852 | feather2.Transparency = 0.25 | |
853 | feather3.Transparency = 0.25 | |
854 | feather4.Transparency = 0.25 | |
855 | ||
856 | warrow.Part0 = char["Right Arm"] | |
857 | warrow.C0 = CFrame.new(-0.5, -2.7, -0.2) * CFrame.Angles(-1.575, 0.075, -0.5) | |
858 | ||
859 | for i = 0, 1, 0.05 do | |
860 | tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, -1.5, 0), i) | |
861 | whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, -0.05, 0), i) | |
862 | clarm.C0 = clarm.C0:lerp(CFrame.new(-1.6, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) | |
863 | crarm.C0 = crarm.C0:lerp(CFrame.new(-1.35, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575), i) | |
864 | wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0), i) | |
865 | wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0), i) | |
866 | wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0), i) | |
867 | hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 1.5, 0), i) | |
868 | wait() | |
869 | end | |
870 | pullbacksound:Play() | |
871 | warrow.Part0 = stringpart | |
872 | warrow.C0 = CFrame.new(-0.1, 0, 1.9) * CFrame.Angles(3.15, 0.04, 0) | |
873 | for i = 0, 1, 0.025 do | |
874 | tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, -1.5, 0), i) | |
875 | whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, -0.05, 0), i) | |
876 | clarm.C0 = clarm.C0:lerp(CFrame.new(-1.95, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) | |
877 | crarm.C0 = crarm.C0:lerp(CFrame.new(1, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575), i) | |
878 | wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.4, 0, 0), i) | |
879 | wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.4, 0, 0), i) | |
880 | wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -3) * CFrame.new(0, 0, 0), i) | |
881 | hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, -0.1) * CFrame.Angles(0, 1.5, -0.25), i) | |
882 | wait() | |
883 | end | |
884 | armed = true | |
885 | enabled = true | |
886 | elseif armed == true and equipped == true then | |
887 | enabled = false | |
888 | for i = 0,1,0.05 do | |
889 | clarm.C0 = clarm.C0:lerp(CFrame.new(-1.6, 0.45, -0.10) * CFrame.Angles(1.2, 0, -1.575), i) | |
890 | crarm.C0 = crarm.C0:lerp(CFrame.new(-1.3, 0.4, -1) * CFrame.Angles(1.575, 0.1, -1.575), i) | |
891 | wjoint1.C0 = wjoint1.C0:lerp(CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0), i) | |
892 | wjoint2.C0 = wjoint2.C0:lerp(CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0), i) | |
893 | wstringpart.C0 = wstringpart.C0:lerp(CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0), i) | |
894 | wait() | |
895 | end | |
896 | warrow.Part0 = char["Right Arm"] | |
897 | warrow.C0 = CFrame.new(-0.5, -2.65, -0.2) * CFrame.Angles(-1.575, 0.075, -0.4) | |
898 | for i = 0,1,0.05 do | |
899 | crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 1.5, 0) * CFrame.Angles(3.14, 0, 0), i) | |
900 | tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
901 | whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) | |
902 | clarm.C0 = clarm.C0:lerp(CFrame.new(-1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
903 | crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
904 | hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0), i) | |
905 | wait() | |
906 | end | |
907 | ||
908 | for i, v in pairs(arrow:GetChildren()) do | |
909 | v.Transparency = 1 | |
910 | end | |
911 | warrow.Part0 = char.Torso | |
912 | warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) | |
913 | ||
914 | for i = 0, 1, 0.1 do | |
915 | crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
916 | wait() | |
917 | end | |
918 | armed = false | |
919 | enabled = true | |
920 | clarm:Remove() | |
921 | crarm:Remove() | |
922 | rightshoulder:Clone().Parent = char.Torso | |
923 | leftshoulder:Clone().Parent = char.Torso | |
924 | checkarms() | |
925 | end | |
926 | elseif key == "z" then | |
927 | if armed == true or enabled == false then return end | |
928 | clarm = Instance.new("Weld", char.Torso) | |
929 | clarm.Part0 = char.Torso | |
930 | clarm.Part1 = char["Left Arm"] | |
931 | clarm.C0 = CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0) | |
932 | if equipped == false then | |
933 | enabled = false | |
934 | for i = 0, 1, 0.05 do | |
935 | clarm.C0 = clarm.C0:lerp(CFrame.new(-0.5, 0, 0.25) * CFrame.Angles(math.rad(-90), 0, math.rad(75)), i) | |
936 | wait() | |
937 | end | |
938 | whandle.C0 = CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0) | |
939 | whandle.Part0 = char["Left Arm"] | |
940 | for i = 0, 1, 0.05 do | |
941 | clarm.C0 = clarm.C0:lerp(CFrame.new(-2, 0.6, 0) * CFrame.Angles(0, 0, math.rad(-90)), i) | |
942 | wait() | |
943 | end | |
944 | for i = 0, 1, 0.05 do | |
945 | clarm.C0 = clarm.C0:lerp(CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0), i) | |
946 | wait() | |
947 | end | |
948 | enabled = true | |
949 | equipped = true | |
950 | elseif equipped == true then | |
951 | if armed == true or enabled == false then return end | |
952 | enabled = false | |
953 | for i = 0, 1, 0.05 do | |
954 | clarm.C0 = clarm.C0:lerp(CFrame.new(-2, 0.6, 0) * CFrame.Angles(0, 0, math.rad(-90)), i) | |
955 | wait() | |
956 | end | |
957 | for i = 0, 1, 0.05 do | |
958 | clarm.C0 = clarm.C0:lerp(CFrame.new(-0.5, 0, 0.25) * CFrame.Angles(math.rad(-90), 0, math.rad(75)), i) | |
959 | whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) | |
960 | wait() | |
961 | end | |
962 | whandle.C0 = CFrame.new(0, 0, 0.6) * CFrame.Angles(0, 0, math.rad(45)) | |
963 | whandle.Part0 = char.Torso | |
964 | for i = 0, 1, 0.05 do | |
965 | clarm.C0 = clarm.C0:lerp(CFrame.Angles(0, 0, 0) * CFrame.new(-1.5, 0, 0), i) | |
966 | wait() | |
967 | end | |
968 | equipped = false | |
969 | enabled = true | |
970 | end | |
971 | clarm:Remove() | |
972 | leftshoulder:Clone().Parent = char.Torso | |
973 | end | |
974 | end) | |
975 | ||
976 | mouse.Button1Down:connect(function() | |
977 | if armed == false or enabled == false or equipped == false then return end | |
978 | firesound:Play() | |
979 | enabled = false | |
980 | armed = false | |
981 | wjoint1.C0 = CFrame.new(0, 0.6, 0) * CFrame.Angles(-0.1, 0, 0) | |
982 | wjoint2.C0 = CFrame.new(0, -0.6, 0) * CFrame.Angles(0.1, 0, 0) | |
983 | wstringpart.C0 = CFrame.new(0, -0.5, -0.3) * CFrame.new(0, 0, 0) | |
984 | crarm.C0 = CFrame.new(1.2, 0.6, -1) * CFrame.Angles(1.575, 0, -1.575) | |
985 | newarrow = arrow:Clone() | |
986 | newarrow.Parent = game.Workspace | |
987 | newarrow.Name = "flyingarrow" | |
988 | newarrow.ArrowBody.CFrame = CFrame.new(newarrow.ArrowBody.CFrame.p, mouse.Hit.p)*CFrame.Angles(0,0,math.pi/1.15) | |
989 | char.HumanoidRootPart.CFrame = CFrame.new(char.HumanoidRootPart.CFrame.p, mouse.Hit.p)*CFrame.Angles(0,math.pi/100,0) | |
990 | char.Humanoid.JumpPower = 1 | |
991 | char.Humanoid.Jump = true | |
992 | local fly = Instance.new('BodyVelocity',newarrow.ArrowBody) | |
993 | fly.Velocity = (newarrow.ArrowBody.CFrame*CFrame.Angles(0,0,math.pi/2)).lookVector*200 | |
994 | newarrow.Arrowhead.Touched:connect(function(hit) | |
995 | 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 | |
996 | velocity(fly) | |
997 | newarrow.Arrowhead.CanCollide = true | |
998 | game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) | |
999 | tone = math.random(1, 3) | |
1000 | local sound = Instance.new('Sound',newarrow.Arrowhead) | |
1001 | if tone == 1 then sound.SoundId = "rbxassetid://220833967" end | |
1002 | if tone == 2 then sound.SoundId = "rbxassetid://220833976" end | |
1003 | if tone == 3 then sound.SoundId = "rbxassetid://220834000" end | |
1004 | sound.PlaybackSpeed = 1 | |
1005 | sound:Play() | |
1006 | newarrow.Arrowhead.Anchored = true | |
1007 | hit.Anchored = true | |
1008 | if hit.Parent:FindFirstChildOfClass('Humanoid') and hit.Name == "Torso" or hit.Name == "Head" then | |
1009 | hit.Parent:FindFirstChildOfClass('Humanoid').Health = 0 | |
1010 | end | |
1011 | wait() | |
1012 | hit.Anchored = false | |
1013 | newarrow.Arrowhead.Anchored = false | |
1014 | killz(hit.Parent,hit.Name,newarrow.Arrowhead) | |
1015 | 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 | |
1016 | velocity(fly) | |
1017 | game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) | |
1018 | newarrow.Arrowhead.CanCollide = true | |
1019 | tone = math.random(1, 3) | |
1020 | local sound = Instance.new('Sound',newarrow.Arrowhead) | |
1021 | if tone == 1 then sound.SoundId = "rbxassetid://220833967" end | |
1022 | if tone == 2 then sound.SoundId = "rbxassetid://220833976" end | |
1023 | if tone == 3 then sound.SoundId = "rbxassetid://220834000" end | |
1024 | sound.PlaybackSpeed = 1 | |
1025 | sound:Play() | |
1026 | newarrow.Arrowhead.Anchored = true | |
1027 | hit.Anchored = true | |
1028 | if hit.Parent.Parent:FindFirstChildOfClass('Humanoid') then | |
1029 | hit.Parent.Parent:FindFirstChildOfClass('Humanoid').Health = 0 | |
1030 | end | |
1031 | wait() | |
1032 | newarrow.Arrowhead.Anchored = false | |
1033 | hit.Anchored = false | |
1034 | killz(hit.Parent.Parent,hit.Name,newarrow.Arrowhead) | |
1035 | elseif hit.Parent and hit.Parent ~= char and hit.Parent.Parent ~= char and hit.Transparency < 1 and newarrow.Arrowhead.CanCollide == false then | |
1036 | velocity(fly) | |
1037 | game:GetService('Debris'):AddItem(newarrow.Arrowhead,15) | |
1038 | newarrow.Arrowhead.CanCollide = true | |
1039 | local sound = Instance.new('Sound',newarrow.Arrowhead) | |
1040 | sound.SoundId = 'rbxassetid://267585646' | |
1041 | sound:Play() | |
1042 | end | |
1043 | end) | |
1044 | ||
1045 | for i, v in pairs(arrow:GetChildren()) do | |
1046 | v.Transparency = 1 | |
1047 | end | |
1048 | warrow.Part0 = char.Torso | |
1049 | warrow.C0 = CFrame.new(0, 0, 0.5) * CFrame.Angles(-1.575, 0, 1.575) | |
1050 | wait(0.5) | |
1051 | for i = 0, 1, 0.05 do | |
1052 | tors.C0 = tors.C0:lerp(CFrame.new(0, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
1053 | whandle.C0 = whandle.C0:lerp(CFrame.new(0.4, -1, 0) * CFrame.Angles(1.575, 0, 0), i) | |
1054 | clarm.C0 = clarm.C0:lerp(CFrame.new(-1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
1055 | crarm.C0 = crarm.C0:lerp(CFrame.new(1.5, 0, 0) * CFrame.Angles(0, 0, 0), i) | |
1056 | hed.C0 = hed.C0:lerp(CFrame.new(0, 1.55, 0) * CFrame.Angles(0, 0, 0), i) | |
1057 | wait() | |
1058 | end | |
1059 | clarm:Remove() | |
1060 | crarm:Remove() | |
1061 | rightshoulder:Clone().Parent = char.Torso | |
1062 | leftshoulder:Clone().Parent = char.Torso | |
1063 | checkarms() | |
1064 | char.Humanoid.JumpPower = 50 | |
1065 | enabled = true | |
1066 | end) |