SHOW:
|
|
- or go back to the newest paste.
1 | --==Made by NextFlame==-- | |
2 | --==Hidden Blade [Assasin]==-- | |
3 | ||
4 | local player=game.Players.LocalPlayer | |
5 | local char=player.Character | |
6 | repeat wait() until player and char | |
7 | local torso=char.Torso | |
8 | local head=char.Head | |
9 | local human=char.Humanoid | |
10 | local arm={Left=char["Left Arm"], Right=char["Right Arm"]} | |
11 | local leg={Left=char["Left Leg"], Right=char["Right Leg"]} | |
12 | local joints={LeftShoulder=torso["Left Shoulder"], RightShoulder=torso["Right Shoulder"], LeftHip=torso["Left Hip"], RightHip=torso["Right Hip"]} | |
13 | joints.LeftShoulder.Part0=torso | |
14 | joints.RightShoulder.Part0=torso | |
15 | joints.LeftHip.Part0=torso | |
16 | joints.RightHip.Part0=torso | |
17 | local c=function(f) coroutine.resume(coroutine.create(f)) end | |
18 | local p=function(f) pcall(f) end | |
19 | local add={ | |
20 | Part=function(par, a, c, col, t, s, cf, ms) | |
21 | local p=Instance.new("Part", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new() end) | |
22 | local m=Instance.new("BlockMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) end) | |
23 | return p | |
24 | end, | |
25 | Wedge=function(par, a, c, col, t, s, cf, ms) | |
26 | local p=Instance.new("WedgePart", par) pcall(function() p.TopSurface="Smooth" p.BottomSurface="Smooth" p.formFactor="Custom" p.Anchored=a p.CanCollide=c p.BrickColor=BrickColor.new(col) p.Transparency=t p.Size=s p.CFrame=cf or CFrame.new() end) | |
27 | local m=Instance.new("SpecialMesh", p) pcall(function() m.Scale=ms or Vector3.new(1, 1, 1) m.MeshType="Wedge" end) | |
28 | return p | |
29 | end, | |
30 | Gui=function(ins, par, bc, bg, tc, fs, text, t, s, pos) | |
31 | local g=Instance.new(ins, par) pcall(function() g.BorderColor=BrickColor.new(bc) g.BackgroundColor=BrickColor.new(bg) g.TextColor=BrickColor.new(tc) g.FontSize=fs g.Font="ArialBold" g.Text=text g.Transparency=t g.Size=s g.Position=pos end) | |
32 | return g | |
33 | end, | |
34 | Weld=function(par, p1, cf) | |
35 | local w=Instance.new("Weld", par) pcall(function() w.Part0=w.Parent or par w.Part1=p1 w.C1=cf or CFrame.new() end) | |
36 | return w | |
37 | end, | |
38 | Mesh=function(ins, par, s, of, t) | |
39 | local m=Instance.new(ins, par) pcall(function() m.Scale=s or Vector3.new() m.Offset=of or Vector3.new() m.MeshType=t end) | |
40 | return m | |
41 | end, | |
42 | Sound=function(parent, id, volume, pitch) | |
43 | local s=Instance.new("Sound", parent) pcall(function() s.SoundId=id s.Volume=volume s.Pitch=pitch end) | |
44 | return s | |
45 | end, | |
46 | } | |
47 | local scriptname="Hidden Blade" --Name here | |
48 | pcall(function() player.Backpack[scriptname]:remove() char[scriptname]:remove() char["Objects"]:remove() end) | |
49 | local model=Instance.new("Model", char) model.Name="Objects" | |
50 | local modelB=Instance.new("Model", char) modelB.Name=scriptname | |
51 | local bin=Instance.new("HopperBin", player.Backpack) bin.Name=scriptname | |
52 | local gui | |
53 | local skincolor="Really black" | |
54 | local hiddenbladecolor="Really black" | |
55 | local body={} | |
56 | local animate={} | |
57 | local obj={} | |
58 | --Variables-- | |
59 | local trailDeb=false | |
60 | local keyDeb=false | |
61 | local onAssasinate=false | |
62 | local Assasinate=false | |
63 | local dmg=math.random(10, 20) | |
64 | local hitDeb=false | |
65 | local loop=false | |
66 | local speed=16 | |
67 | local equipleft, equipright=false, false | |
68 | local Slash=add.Sound(torso, "rbxasset://sounds//swordslash.wav", 1, 1) | |
69 | local Hit=add.Sound(torso, "http://roblox.com/asset/?id=10209225", 1, 1) | |
70 | local Equipping=add.Sound(torso, "http://www.roblox.com/asset/?id=13510737", 1, 1) | |
71 | function createParts() | |
72 | gui=Instance.new("ScreenGui", player.PlayerGui) gui.Name=scriptname | |
73 | --==PARTS==-- | |
74 | torso.Transparency=1 | |
75 | body.Head=add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil) | |
76 | body.Torso=add.Part(model, false, false, skincolor, 0, Vector3.new(2, 2, 1), nil) | |
77 | body.ArmLeft, body.ArmRight=add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil) | |
78 | body.LegLeft, body.LegRight=add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil), add.Part(model, false, false, skincolor, 1, Vector3.new(1, 1, 1), nil) | |
79 | --==WELDS==-- | |
80 | body.HeadW=add.Weld(body.Head, body.Torso, CFrame.new(0, 1.5, 0)) | |
81 | body.TorsoW=add.Weld(body.Torso, torso, nil) | |
82 | body.ArmLeftW, body.ArmRightW=add.Weld(body.ArmLeft, body.Torso, CFrame.new(-1.5, .5, 0)), add.Weld(body.ArmRight, body.Torso, CFrame.new(1.5, .5, 0)) | |
83 | body.LegLeftW, body.LegRightW=add.Weld(body.LegLeft, body.Torso, CFrame.new(-.5, -1.5, 0)), add.Weld(body.LegRight, body.Torso, CFrame.new(.5, -1.5, 0)) | |
84 | --==WELDS==-- | |
85 | --add.Weld(body.Head, head, nil) | |
86 | add.Weld(arm.Left, body.ArmLeft, CFrame.new(0, -.5, 0)) | |
87 | add.Weld(arm.Right, body.ArmRight, CFrame.new(0, -.5, 0)) | |
88 | joints.LeftHip.Part0=body.Torso | |
89 | joints.RightHip.Part0=body.Torso | |
90 | --------------------------------------------------------------------------------------- | |
91 | animate={ | |
92 | ["Head"]=function(cf) | |
93 | body.HeadW.C1=CFrame.new(0, 1.5, 0)*cf | |
94 | end; | |
95 | ["Torso"]=function(cf) | |
96 | body.TorsoW.C1=cf | |
97 | end; | |
98 | ["ArmLeft"]=function(cf) | |
99 | body.ArmLeftW.C1=CFrame.new(-1.5, .5, 0)*cf | |
100 | end; | |
101 | ["ArmRight"]=function(cf) | |
102 | body.ArmRightW.C1=CFrame.new(1.5, .5, 0)*cf | |
103 | end; | |
104 | ["LegLeft"]=function(cf) | |
105 | legLeftW=add.Weld(leg.Left, body.LegLeft, CFrame.new(0, -.5, 0)) | |
106 | body.LegLeftW.C1=CFrame.new(-.5, -1.5, 0)*cf | |
107 | c(function() | |
108 | wait() | |
109 | legLeftW:remove() | |
110 | end) | |
111 | end; | |
112 | ["LegRight"]=function(cf) | |
113 | legRightW=add.Weld(leg.Right, body.LegRight, CFrame.new(0, -.5, 0)) | |
114 | body.LegRightW.C1=CFrame.new(.5, -1.5, 0)*cf | |
115 | c(function() | |
116 | wait() | |
117 | legRightW:remove() | |
118 | end) | |
119 | end; | |
120 | } | |
121 | --==Objects==-- | |
122 | obj.attackLabel=add.Gui("TextLabel", gui, "Really black", "Really black", "White", "Size18", "Assasinate(Q)", 0, UDim2.new(0, 150, 0, 50), UDim2.new(0, 0, 0, 150)) | |
123 | obj.attackLabel2=add.Gui("TextLabel", obj.attackLabel, "Really black", "Really black", "White", "Size18", "StayLive(E)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0)) | |
124 | obj.attackLabel3=add.Gui("TextLabel", obj.attackLabel2, "Really black", "Really black", "White", "Size18", "Rappid(F)", 0, UDim2.new(1, 0, 1, 0), UDim2.new(0, 0, 1, 0)) | |
125 | for i, v in pairs(modelB:children()) do | |
126 | if i==0 then return end | |
127 | end | |
128 | obj.Wrist=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1.1, 1, 1.1), nil) | |
129 | obj.WristW=add.Weld(obj.Wrist, arm.Left, CFrame.new(0, -.4, 0)) | |
130 | obj.Keep=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(.2, 1, .5), nil) | |
131 | obj.KeepW=add.Weld(obj.Keep, obj.Wrist, CFrame.new(.6, 0, 0)) | |
132 | obj.Wedge=add.Wedge(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1, .2, .3), nil) | |
133 | obj.WedgeW=add.Weld(obj.Wedge, obj.Keep, CFrame.new(0, 0, -.4)*CFrame.Angles(0, 0, -math.pi/2)) | |
134 | obj.Wedge=add.Wedge(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1, .2, .3), nil) | |
135 | obj.WedgeW=add.Weld(obj.Wedge, obj.Keep, CFrame.new(0, 0, .4)*CFrame.Angles(0, math.pi, math.pi/2)) | |
136 | obj.Blade=add.Part(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, 1)) | |
137 | obj.BladeW=add.Weld(obj.Blade, obj.Keep, CFrame.new(0, .25, 0)) | |
138 | obj.Point=add.Wedge(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, .5)) | |
139 | obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, -.5, -.05)*CFrame.Angles(0, 0, math.pi)) | |
140 | obj.Point=add.Wedge(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, .5)) | |
141 | obj.PointW=add.Weld(obj.Point, obj.Blade, CFrame.new(0, -.5, .05)*CFrame.Angles(0, math.pi, math.pi)) | |
142 | obj.Part=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(.2, .2, .25), nil, Vector3.new(.7, 1, 1)) | |
143 | obj.PartW=add.Weld(obj.Part, obj.Blade, CFrame.new(0, .2, 0)) | |
144 | ||
145 | obj.Wrist2=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1.1, 1, 1.1), nil) | |
146 | obj.Wrist2W=add.Weld(obj.Wrist2, arm.Right, CFrame.new(0, -.4, 0)*CFrame.Angles(0, math.pi, 0)) | |
147 | obj.Keep=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(.2, 1, .5), nil) | |
148 | obj.KeepW=add.Weld(obj.Keep, obj.Wrist2, CFrame.new(.6, 0, 0)) | |
149 | obj.Wedge=add.Wedge(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1, .2, .3), nil) | |
150 | obj.WedgeW=add.Weld(obj.Wedge, obj.Keep, CFrame.new(0, 0, -.4)*CFrame.Angles(0, 0, -math.pi/2)) | |
151 | obj.Wedge=add.Wedge(modelB, false, false, hiddenbladecolor, 0, Vector3.new(1, .2, .3), nil) | |
152 | obj.WedgeW=add.Weld(obj.Wedge, obj.Keep, CFrame.new(0, 0, .4)*CFrame.Angles(0, math.pi, math.pi/2)) | |
153 | obj.Blade2=add.Part(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, 1)) | |
154 | obj.Blade2W=add.Weld(obj.Blade2, obj.Keep, CFrame.new(0, .25, 0)) | |
155 | obj.Point=add.Wedge(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, .5)) | |
156 | obj.PointW=add.Weld(obj.Point, obj.Blade2, CFrame.new(0, -.5, -.05)*CFrame.Angles(0, 0, math.pi)) | |
157 | obj.Point=add.Wedge(modelB, false, false, "Medium stone-grey", 0, Vector3.new(.2, .5, .2), nil, Vector3.new(.5, 1, .5)) | |
158 | obj.PointW=add.Weld(obj.Point, obj.Blade2, CFrame.new(0, -.5, .05)*CFrame.Angles(0, math.pi, math.pi)) | |
159 | obj.Part=add.Part(modelB, false, false, hiddenbladecolor, 0, Vector3.new(.2, .2, .25), nil, Vector3.new(.7, 1, 1)) | |
160 | obj.PartW=add.Weld(obj.Part, obj.Blade2, CFrame.new(0, .2, 0)) | |
161 | end | |
162 | function removeParts() | |
163 | p(function() | |
164 | if torso then | |
165 | joints.LeftShoulder.Part0=torso | |
166 | joints.RightShoulder.Part0=torso | |
167 | joints.LeftHip.Part0=torso | |
168 | joints.RightHip.Part0=torso | |
169 | end | |
170 | player.PlayerGui[scriptname]:remove() | |
171 | for i, v in pairs(model:children()) do v:remove() end | |
172 | for i, v in pairs(char:children()) do v.Transparency=0 end | |
173 | end) | |
174 | end | |
175 | function lightningGen(startPos, endPos) | |
176 | local magnitude=(startPos-endPos).magnitude | |
177 | local distance=(startPos+endPos)/2 | |
178 | local pattern=add.Part(workspace, true, false, "White", 1, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPos)) | |
179 | local startPosProx=startPos | |
180 | for i=1, 9 do | |
181 | local startPosProx2=startPosProx | |
182 | local random=Vector3.new(math.random(-1, 1), math.random(-1, 1), math.random(-1, 1)) | |
183 | local findSize=pattern.Size.z/10 | |
184 | local findOffSet=pattern.CFrame.lookVector*-1 | |
185 | local compute=i*findSize*findOffSet | |
186 | local newStartPos=startPos | |
187 | local newEndPos=CFrame.new(random+compute+newStartPos).p | |
188 | local magnitude=(startPosProx2-newEndPos).magnitude | |
189 | local distance=(startPosProx2+newEndPos)/2 | |
190 | local lightning=add.Part(workspace, true, false, "Bright yellow", 0, Vector3.new(.2, .2, magnitude), CFrame.new(distance, startPosProx2)) | |
191 | c(function() | |
192 | for i=0, 1, .1 do wait() | |
193 | lightning.Transparency=i | |
194 | end | |
195 | lightning:remove() | |
196 | end) | |
197 | startPosProx=newEndPos | |
198 | end | |
199 | pattern:remove() | |
200 | end | |
201 | function computePos(pos, pos2) | |
202 | local pos3=Vector3.new(pos2.x, pos.y, pos2.z) | |
203 | torso.CFrame=CFrame.new(pos, pos3) | |
204 | return pos3 | |
205 | end | |
206 | function nearTorso(pos, dis) | |
207 | local temp | |
208 | local distance=dis | |
209 | for i, v in pairs(workspace:children()) do | |
210 | if v:isA("Model") then | |
211 | temp=v:findFirstChild("Torso") | |
212 | local humanoid=v:findFirstChild("Humanoid") | |
213 | if temp and humanoid and v~=char and (temp.CFrame.p-pos).magnitude<distance then | |
214 | distance=(temp.CFrame.p-pos).magnitude | |
215 | return temp | |
216 | end | |
217 | end | |
218 | end | |
219 | end | |
220 | function trail(pos, cf) | |
221 | c(function() | |
222 | local old=(pos.CFrame*cf).p | |
223 | while trailDeb==true do | |
224 | wait() | |
225 | local new=(pos.CFrame*cf).p | |
226 | local mag=(old-new).magnitude | |
227 | local dis=(old+new)/2 | |
228 | local trail=add.Part(workspace, true, false, "White", 0, Vector3.new(.5, mag, .5), CFrame.new(dis, new)*CFrame.Angles(math.pi/2, 0, 0)) trail.Name="Trail" | |
229 | local tMesh=add.Mesh("CylinderMesh", trail, Vector3.new(.5, 1, .5), nil, nil) | |
230 | old=new | |
231 | c(function() | |
232 | for i=1, 0, -.1 do | |
233 | wait() | |
234 | tMesh.Scale=tMesh.Scale*Vector3.new(i, 1, i) | |
235 | end | |
236 | trail:remove() | |
237 | end) | |
238 | c(function() | |
239 | for i=0, 1, .1 do | |
240 | wait() | |
241 | trail.Transparency=i | |
242 | end | |
243 | end) | |
244 | end | |
245 | end) | |
246 | end | |
247 | function Equip(form) | |
248 | c(function() | |
249 | if form=="Left" then | |
250 | if equipleft==false then | |
251 | equipleft=true Equipping:play() | |
252 | for i=0, 1, .1 do wait() | |
253 | obj.BladeW.C1=CFrame.new(0, .25-1*i, 0) | |
254 | end | |
255 | equipleft=false | |
256 | end | |
257 | end | |
258 | end) | |
259 | c(function() | |
260 | if form=="Right" then | |
261 | if equipright==false then | |
262 | equipright=true Equipping:play() | |
263 | for i=0, 1, .1 do wait() | |
264 | obj.Blade2W.C1=CFrame.new(0, .25-1*i, 0) | |
265 | end | |
266 | equipright=false | |
267 | end | |
268 | end | |
269 | end) | |
270 | end | |
271 | function Unequip() | |
272 | if obj.BladeW.C1.y<.25 then | |
273 | c(function() Equipping:play() | |
274 | for i=1, 0, -.1 do wait() | |
275 | obj.BladeW.C1=CFrame.new(0, .25-1*i, 0) | |
276 | end | |
277 | end) | |
278 | else | |
279 | obj.BladeW.C1=CFrame.new(0, .25, 0) | |
280 | end | |
281 | if obj.Blade2W.C1.y<.25 then | |
282 | c(function() Equipping:play() | |
283 | for i=1, 0, -.1 do wait() | |
284 | obj.Blade2W.C1=CFrame.new(0, .25-1*i, 0) | |
285 | end | |
286 | end) | |
287 | else | |
288 | obj.Blade2W.C1=CFrame.new(0, .25, 0) | |
289 | end | |
290 | end | |
291 | function hit(h) | |
292 | if keyDeb==true then | |
293 | if onAssasinate==false and h.Parent:findFirstChild("Humanoid") and h.Parent~=char and hitDeb==false then hitDeb=true Hit:play() | |
294 | local hHuman=h.Parent:findFirstChild("Humanoid") | |
295 | hHuman.Health=hHuman.Health-dmg | |
296 | local fakeM=Instance.new("Model", workspace) fakeM.Name=-dmg | |
297 | local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0 | |
298 | local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head" | |
299 | local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil) | |
300 | local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0) | |
301 | game.Debris:addItem(fakeM, 2) | |
302 | wait(.5) | |
303 | hitDeb=false | |
304 | end | |
305 | if onAssasinate==true and h.Parent~=char and h.Parent:findFirstChild("Humanoid") and hitDeb==false then hitDeb=true Hit:play() | |
306 | h.Parent:breakJoints() | |
307 | local fakeM=Instance.new("Model", workspace) fakeM.Name="ASSASINATED" | |
308 | local fakeH=Instance.new("Humanoid", fakeM) fakeH.MaxHealth=0 fakeH.Health=0 | |
309 | local effect=add.Part(fakeM, false, false, "Bright red", 0, Vector3.new(1, 1, 1), h.CFrame) effect.Name="Head" | |
310 | local fakeMesh=add.Mesh("CylinderMesh", effect, Vector3.new(1, .5, 1), nil, nil) | |
311 | local bp=Instance.new("BodyPosition", effect) bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) bp.position=h.Position+Vector3.new(0, 4, 0) | |
312 | game.Debris:addItem(fakeM, 2) | |
313 | wait(1) | |
314 | hitDeb=false | |
315 | end | |
316 | end | |
317 | end | |
318 | function running() | |
319 | animate.Torso(CFrame.new(0, 0, 0)) | |
320 | animate.ArmLeft(CFrame.Angles(0, 0, -math.rad(15))) | |
321 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(15))) | |
322 | end | |
323 | local Moves={ | |
324 | ["Assasinate"]=function(mouse) | |
325 | local target=mouse.Target | |
326 | for i, v in pairs(modelB:children()) do | |
327 | v.Touched:connect(hit) | |
328 | end | |
329 | if target then | |
330 | if target.Parent then | |
331 | local tChar=target.Parent | |
332 | if tChar:findFirstChild'Torso' then | |
333 | local tTorso=tChar["Torso"] | |
334 | human.WalkSpeed=0 | |
335 | local bp=Instance.new("BodyPosition", torso) | |
336 | bp.maxForce=Vector3.new(math.huge, math.huge, math.huge) | |
337 | bp.position=torso.Position+Vector3.new(0, 10, 0) | |
338 | local bg=Instance.new("BodyGyro", torso) | |
339 | bg.maxTorque=Vector3.new(math.huge, math.huge, math.huge) | |
340 | for i=0, 1, .1 do wait() | |
341 | bg.cframe=CFrame.new(torso.CFrame.p, tTorso.CFrame.p) | |
342 | animate.ArmLeft(CFrame.Angles(-math.rad(45)*i, 0, -math.rad(45)*i)) | |
343 | animate.ArmRight(CFrame.Angles(-math.rad(45)*i, 0, math.rad(45)*i)) | |
344 | end | |
345 | wait(1) | |
346 | trailDeb=true trail(obj.Blade2, CFrame.new(0, -1, 0)) | |
347 | Slash:play() | |
348 | for i=0, 1, .1 do wait() | |
349 | animate.Torso(CFrame.Angles(0, math.rad(90)*i, 0)) | |
350 | animate.ArmRight(CFrame.Angles(-math.rad(45)+math.rad(45)*i, 0, math.rad(45)+math.rad(45)*i)) | |
351 | bg.cframe=CFrame.new(torso.CFrame.p, tTorso.CFrame.p) | |
352 | bp.position=Vector3.new(0, 10-10*i, 0)+tTorso.Position*i | |
353 | end | |
354 | wait(.5) | |
355 | for i=1, 0, -.1 do wait() | |
356 | animate.Torso(CFrame.Angles(0, math.rad(90)*i, 0)) | |
357 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(90)*i)) | |
358 | end | |
359 | bp:remove() bg:remove() trailDeb=false | |
360 | end | |
361 | end | |
362 | end | |
363 | running() | |
364 | human.WalkSpeed=speed | |
365 | end, | |
366 | ["StayLive"]=function() | |
367 | local nTorso=nearTorso(torso.CFrame.p, 20) | |
368 | if nTorso then | |
369 | human.WalkSpeed=0 | |
370 | local nTorsoW=add.Weld(nTorso, torso, CFrame.new(0, 0, -3.7)) | |
371 | for i=0, 1, .1 do wait() | |
372 | animate.Torso(CFrame.Angles(0, -math.rad(90)*i, 0)) | |
373 | animate.ArmLeft(CFrame.Angles(0, 0, -math.rad(90)*i)) | |
374 | end | |
375 | wait(1) | |
376 | for i, v in pairs(modelB:children()) do | |
377 | v.Touched:connect(hit) | |
378 | end | |
379 | trailDeb=true trail(obj.Blade2, CFrame.new(0, -1, 0)) | |
380 | Slash:play() | |
381 | for i=0, 1, .1 do wait() | |
382 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(90)*i)) | |
383 | animate.ArmLeft(CFrame.Angles(0, 0, -math.rad(90)+math.rad(75)*i)) | |
384 | animate.Torso(CFrame.Angles(0, -math.rad(90)+math.rad(180)*i, 0)) | |
385 | end | |
386 | trailDeb=false | |
387 | nTorsoW:remove() | |
388 | wait(.5) | |
389 | running() | |
390 | human.WalkSpeed=speed | |
391 | end | |
392 | end, | |
393 | ["Rappid"]=function(mouse) | |
394 | human.WalkSpeed=0 | |
395 | loop=true | |
396 | for i=0, 1, .1 do wait() | |
397 | animate.ArmLeft(CFrame.Angles(math.rad(90)*i, 0, 0)) | |
398 | animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, 0)) | |
399 | end | |
400 | for i, v in pairs(modelB:children()) do | |
401 | v.Touched:connect(hit) | |
402 | end | |
403 | trailDeb=true trail(obj.Blade, CFrame.new(0, -1, 0)) trail(obj.Blade2, CFrame.new(0, -1, 0)) | |
404 | while loop do wait() Slash:play() | |
405 | computePos(torso.CFrame.p, mouse.Hit.p) | |
406 | torso.CFrame=torso.CFrame+torso.CFrame.lookVector*.2 | |
407 | animate.ArmLeft(CFrame.new(0, 0, -math.random(0, 1.5))*CFrame.Angles(math.rad(90), 0, 0)) | |
408 | animate.ArmRight(CFrame.new(0, 0, -math.random(0, 1.5))*CFrame.Angles(math.rad(90), 0, 0)) | |
409 | end | |
410 | trailDeb=false | |
411 | for i=1, 0, -.1 do wait() | |
412 | animate.ArmLeft(CFrame.Angles(math.rad(90)*i, 0, 0)) | |
413 | animate.ArmRight(CFrame.Angles(math.rad(90)*i, 0, 0)) | |
414 | end | |
415 | human.WalkSpeed=speed | |
416 | running() | |
417 | end | |
418 | } | |
419 | bin.Selected:connect(function(mouse) createParts() | |
420 | for i=0, 1, .1 do wait() | |
421 | animate.ArmLeft(CFrame.Angles(0, 0, -math.rad(15)*i)) | |
422 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(15)*i)) | |
423 | end | |
424 | Equip("Right") Equip("Left") | |
425 | running() | |
426 | mouse.KeyDown:connect(function(key) | |
427 | local key=key:lower() | |
428 | if key=="q" and keyDeb==false then | |
429 | keyDeb=true onAssasinate=true | |
430 | Moves.Assasinate(mouse) | |
431 | keyDeb=false onAssasinate=false | |
432 | end | |
433 | if key=="e" and keyDeb==false then | |
434 | keyDeb=true onAssasinate=true | |
435 | Moves.StayLive(mouse) | |
436 | keyDeb=false onAssasinate=false | |
437 | end | |
438 | if key=="f" and keyDeb==false then | |
439 | keyDeb=true | |
440 | Moves.Rappid(mouse) | |
441 | keyDeb=false | |
442 | end | |
443 | end) | |
444 | mouse.KeyUp:connect(function(key) | |
445 | local key=key:lower() | |
446 | if key=="f" and keyDeb==true then loop=false end | |
447 | end) | |
448 | while onAssasinate==false and keyDeb==false do wait() | |
449 | local target=mouse.Target | |
450 | local nTorso=nearTorso(torso.CFrame.p, 100) | |
451 | if target then | |
452 | if target.Parent and nTorso then | |
453 | if target.Parent:findFirstChild("Humanoid") then | |
454 | Assasinate=true | |
455 | obj.attackLabel.TextColor=BrickColor.new("Bright red") | |
456 | else | |
457 | Assasinate=false | |
458 | obj.attackLabel.TextColor=BrickColor.new("White") | |
459 | end | |
460 | end | |
461 | end | |
462 | end | |
463 | end) | |
464 | bin.Deselected:connect(function() | |
465 | onAssasinate=false | |
466 | keyDeb=false | |
467 | obj.attackLabel.TextColor=BrickColor.new("White") | |
468 | obj.attackLabel2.TextColor=BrickColor.new("White") | |
469 | if keyDeb==false then | |
470 | Unequip() | |
471 | for i=1, 0, -.1 do wait() | |
472 | animate.ArmLeft(CFrame.Angles(0, 0, -math.rad(15)*i)) | |
473 | animate.ArmRight(CFrame.Angles(0, 0, math.rad(15)*i)) | |
474 | end | |
475 | wait(.5) | |
476 | torso.Transparency=0 | |
477 | removeParts() | |
478 | end | |
479 | end)--mediafire |