SHOW:
|
|
- or go back to the newest paste.
1 | - | ----Mob Psycho 100 by lukeskywalker4ever-- |
1 | + | -- that's right get no scoped ^^ |
2 | p = game.Players.LocalPlayer | |
3 | - | function clerp(c1,c2,al) |
3 | + | char = p.Character |
4 | - | local com1 = {c1.X,c1.Y,c1.Z,c1:toEulerAnglesXYZ()} |
4 | + | des = false |
5 | - | local com2 = {c2.X,c2.Y,c2.Z,c2:toEulerAnglesXYZ()} |
5 | + | fling = true |
6 | - | for i,v in pairs(com1) do |
6 | + | dot = false |
7 | - | com1[i] = v+(com2[i]-v)*al |
7 | + | falling = false |
8 | jump = true | |
9 | - | return CFrame.new(com1[1],com1[2],com1[3]) * CFrame.Angles(select(4,unpack(com1))) |
9 | + | char.Shirt:Remove() |
10 | for i,v in pairs(char:GetChildren()) do if v:IsA("Pants") then v:Remove() end end | |
11 | for i,v in pairs(char:GetChildren()) do if v:IsA("Hat") then v.Handle:Remove() end end | |
12 | - | function weld(p0,p1,c0,c1,par,name) |
12 | + | wait()shirt = Instance.new("Shirt", char) |
13 | - | local w = Instance.new("Weld", par) |
13 | + | |
14 | - | w.Name = name |
14 | + | pants = Instance.new("Pants", char) |
15 | - | w.Part0 = p0 |
15 | + | |
16 | - | w.Part1 = p1 |
16 | + | |
17 | - | w.C0 = c0 or CFrame.new() |
17 | + | char.Shirt.ShirtTemplate = "rbxassetid://188756709" |
18 | - | w.C1 = c1 or CFrame.new() |
18 | + | char.Pants.PantsTemplate = "rbxassetid://175153352" |
19 | - | return w |
19 | + | tp = true |
20 | shoot = true | |
21 | hum = char.Humanoid | |
22 | - | xmathrandom = math.random(-10,10) |
22 | + | punch = true |
23 | - | ymathrandom = math.random(2,10) |
23 | + | neckp = char.Torso.Neck.C0 |
24 | - | zmathrandom = math.random(-10,10) |
24 | + | neck = char.Torso.Neck |
25 | - | musicDebounce = false |
25 | + | hum.MaxHealth = 9e999 |
26 | wait() | |
27 | - | player = game:service("Players").LocalPlayer |
27 | + | hum.Health =hum.MaxHealth |
28 | - | char = player.Character |
28 | + | des = false |
29 | - | local beat = true |
29 | + | root=char.HumanoidRootPart |
30 | - | local beattime = 0.6 |
30 | + | torso = char.Torso |
31 | - | suit = Instance.new("Model", char) |
31 | + | char.Head.face.Texture = "rbxassetid://707857659" |
32 | - | suit.Name = "MobPsycho100Attacks" |
32 | + | local ChatService = game:GetService("Chat") |
33 | - | suit2 = Instance.new("Model", char) |
33 | + | local player = game.Players.LocalPlayer |
34 | - | suit2.Name = "MobPsycho100Shield" |
34 | + | lig = Instance.new("PointLight",player.Character.Torso) |
35 | - | suit3 = Instance.new("Model", char) |
35 | + | lig.Color=Color3.new(255,0,0) |
36 | - | suit3.Name = "MobPsycho100TK" |
36 | + | m=player:GetMouse() |
37 | - | local vDebounce = false |
37 | + | bb = Instance.new("BillboardGui",player.Character.Head) |
38 | - | selectionboxEnable = false |
38 | + | bb.Enabled = true |
39 | - | OldTKpart = nil |
39 | + | function newRay(start,face,range,wat) |
40 | - | UnknownMode= false |
40 | + | local rey=Ray.new(start.p,(face.p-start.p).Unit*range) |
41 | - | Torso = char.Torso |
41 | + | hit,pos=Workspace:FindPartOnRayWithIgnoreList(rey,wat) |
42 | - | cf=CFrame.new |
42 | + | return rey,hit,pos |
43 | - | euler=CFrame.fromEulerAnglesXYZ |
43 | + | |
44 | - | local SHOT_SPEED = 100 |
44 | + | aa1={} |
45 | - | local SHOT_TIME = 1 |
45 | + | torso=game.Players.LocalPlayer.Character.Torso |
46 | - | local SHOT_SPEED2 = 500 |
46 | + | |
47 | - | local SHOT_TIME2 = 1 |
47 | + | local WorldUp = Vector3.new(0,1,0) |
48 | - | local NOZZLE_OFFSET = Vector3.new(0, 0, 0) |
48 | + | function look2(Vec1,Vec2) |
49 | - | mouse = player:GetMouse() |
49 | + | local Orig = Vec1 |
50 | - | running = false |
50 | + | Vec1 = Vec1+Vector3.new(0,1,0) |
51 | - | runEffect = false |
51 | + | Vec2 = Vec2+Vector3.new(0,1,0) |
52 | - | local noattack = true |
52 | + | local Forward = (Vec2-Vec1).unit |
53 | - | berserkValue = 0 |
53 | + | local Up = (WorldUp-WorldUp:Dot(Forward)*Forward).unit |
54 | - | berserkValueAddDebounce = false |
54 | + | local Right = Up:Cross(Forward).unit |
55 | - | berserkMode= false |
55 | + | Forward = -Forward |
56 | - | enabled = false |
56 | + | Right = -Right |
57 | - | ColorDebounce = false |
57 | + | return CFrame.new(Orig.X,Orig.Y,Orig.Z,Right.X,Up.X,Forward.X,Right.Y,Up.Y,Forward.Y,Right.Z,Up.Z,Forward.Z) |
58 | - | local MaterialNeededForAttack |
58 | + | |
59 | - | local ColorNeededForAttack |
59 | + | |
60 | - | RandomSizeForAttack = 0 |
60 | + | function look(CFr,Vec2) |
61 | - | RandomCFForAttack = 0 |
61 | + | local A = Vector3.new(0,0,0) |
62 | - | Glow1 = Color3.new(0,225,225) |
62 | + | local B = CFr:inverse()*Vec2 |
63 | - | Glow2 = Color3.new(0,170,225) |
63 | + | local CF = look2(A,Vector3.new(A.X,B.Y,B.Z)) |
64 | - | Ivalue = 0 |
64 | + | if B.Z > 0 then |
65 | - | Ivalue2 = 0 |
65 | + | CF = CFr*(CF*CFrame.Angles(0,0,math.pi)) |
66 | - | ShieldDown = false |
66 | + | elseif B.Z == 0 then |
67 | - | TKEnabled =false |
67 | + | if B.Y > 0 then |
68 | - | alreadyHaveTK = false |
68 | + | CF = CFr*CFrame.Angles(math.pi/2,0,0) |
69 | - | dist = 25 |
69 | + | elseif B.Y < 0 then |
70 | CF = CFr*CFrame.Angles(-math.pi/2,0,0) | |
71 | - | GuiMain=Instance.new("ScreenGui") |
71 | + | else |
72 | - | Radar=Instance.new("Frame") |
72 | + | CF = CFr |
73 | - | GuiMain.Parent=player.PlayerGui |
73 | + | end |
74 | - | Radar.Parent=GuiMain |
74 | + | |
75 | - | Radar.Size=UDim2.new(3,0,3,0) |
75 | + | local _,_,_,_,X,_,_,Y,_,_,Z,_ = CF:components() |
76 | - | Radar.Position=UDim2.new(0,0,-0.1,0) |
76 | + | local Up = Vector3.new(X,Y,Z) |
77 | - | Radar.BackgroundTransparency=1 |
77 | + | local Forward = (Vec2-CFr.p).unit |
78 | - | Radar.BackgroundColor=BrickColor.new("Really black") |
78 | + | local Right = Up:Cross(Forward) |
79 | - | Radar.Name="HealthScreen" |
79 | + | Forward = -Forward |
80 | Right = -Right | |
81 | - | HeadOldC = char.Head.BrickColor |
81 | + | return CFrame.new(CFr.X,CFr.Y,CFr.Z,Right.X,Up.X,Forward.X,Right.Y,Up.Y,Forward.Y,Right.Z,Up.Z,Forward.Z) |
82 | - | TorsoOldC = char.Torso.BrickColor |
82 | + | |
83 | - | LAOldC = char["Left Arm"].BrickColor |
83 | + | |
84 | - | LLOldC = char["Left Leg"].BrickColor |
84 | + | function simulate(j,d,m,r,t) |
85 | - | RAOldC = char["Right Arm"].BrickColor |
85 | + | local joint = j |
86 | - | RLOldC = char["Right Leg"].BrickColor |
86 | + | for i,v in ipairs(t) do |
87 | if v[1]:FindFirstChild("Weld") then | |
88 | local stiff = m.CFrame.lookVector*0.03 | |
89 | - | for _,v in pairs(char.Head:GetChildren()) do if v.ClassName=="Decal" then v:remove() end end |
89 | + | if i > 1 then joint = t[i-1][1].CFrame*CFrame.new(0,0,d*.5) end |
90 | - | for _,v in pairs(char:GetChildren()) do if v.ClassName=="Accessory" then v:remove() end end |
90 | + | local dir = (v[2].p-(joint.p+Vector3.new(0,0.2,0)+stiff)).unit |
91 | - | for _,v in pairs(char:GetChildren()) do if v.ClassName=="Shirt" or v.ClassName=="Pants" or v.ClassName=="T-Shirt" or v.ClassName=="ShirtGraphic" then v:remove() end end |
91 | + | local dis = (v[2].p-(joint.p+Vector3.new(0,0.2,0)+stiff)).magnitude |
92 | - | shirt=Instance.new("Shirt", char) |
92 | + | local pos = joint.p+(dir*(d*0.5)) |
93 | --if v[1].CFrame.y<=workspace.Base.CFrame.y then pos = joint.p+(dir*(d*.5)) end | |
94 | - | pants=Instance.new("Pants", char) |
94 | + | local inv = v[1].Weld.Part0.CFrame |
95 | local rel1 = inv:inverse()*pos | |
96 | - | face=Instance.new("Decal", char.Head) |
96 | + | local rel2 = inv:inverse()*(pos-(dir*dis)) |
97 | local cf = look(CFrame.new(rel1),rel2)--CFrame.new(pos,pos-(dir*dis))*CFrame.fromEulerAnglesXYZ(r.x,r.y,r.z) | |
98 | v[1].Weld.C0 = cf | |
99 | - | shirt.ShirtTemplate="rbxassetid://373395462" |
99 | + | v[2] = inv*cf |
100 | - | pants.PantsTemplate="rbxassetid://373395510" |
100 | + | --v[1].CFrame = cf |
101 | - | face.Texture = "http://www.roblox.com/asset/?id=321187438" |
101 | + | end |
102 | end | |
103 | - | local Hat=char:FindFirstChild'Hat_F'or Instance.new'Hat'; |
103 | + | |
104 | - | Hat.AttachmentPos=Vector3.new(0, 0.25, 0); |
104 | + | |
105 | - | Hat.Name='Hat_F'; |
105 | + | game:service"RunService".Stepped:connect(function() |
106 | - | local Handle=Hat:FindFirstChild'Handle'or Instance.new('Part',Hat); |
106 | + | simulate(torso.CFrame*CFrame.new(0,0.9,.5),.6,torso,Vector3.new(),aa1) |
107 | - | if(Handle.Name~='Handle')then Handle.Size=Vector3.new(1,1,1);end; |
107 | + | |
108 | - | Handle.BottomSurface=0; |
108 | + | bb.AlwaysOnTop = true |
109 | - | Handle.Name='Handle'; |
109 | + | bb.Size = UDim2.new(0,200,0,50) |
110 | - | Handle.Transparency= 0; |
110 | + | bb.StudsOffset = Vector3.new(0,1,0) |
111 | - | Handle.TopSurface=0; |
111 | + | gui=Instance.new("TextBox",bb) |
112 | - | Handle.Locked=1; |
112 | + | gui.Text = "* " |
113 | - | Handle.BrickColor=BrickColor.new("Really black"); |
113 | + | gui.Size = UDim2.new(0,133,0,45) |
114 | - | local Mesh=Hat:FindFirstChild'Mesh'or Instance.new('SpecialMesh',Handle); |
114 | + | gui.Position=UDim2.new(0,57,0,-40) |
115 | - | Mesh.MeshId='http://www.roblox.com/asset/?id=29938421 '; |
115 | + | gui.TextColor3 = Color3.new(255,255,255) |
116 | - | Mesh.Scale=Vector3.new(1, 1, 1.2); |
116 | + | gui.BackgroundColor3=Color3.new(0,0,0) |
117 | gui.TextWrapped = true | |
118 | - | Hat.Parent=char; |
118 | + | gui.TextScaled = true |
119 | gui.TextXAlignment = "Left" | |
120 | - | local Sounds = { |
120 | + | gui.TextYAlignment = "Top" |
121 | - | Punch = Instance.new("Sound"), |
121 | + | gui.Visible = false |
122 | - | Opening = Instance.new("Sound"), |
122 | + | gui.BorderColor3 = Color3.new(0,0,0) |
123 | - | Beep = Instance.new("Sound"), |
123 | + | punch2 = true |
124 | - | HundredPercent = Instance.new("Sound") |
124 | + | gui1=Instance.new("TextButton",bb) |
125 | - | } |
125 | + | gui1.Position=UDim2.new(0,5,0,-43) |
126 | gui1.Size = UDim2.new(0,190,0,51) | |
127 | - | Sounds["Punch"].SoundId = "rbxassetid://277495959" |
127 | + | |
128 | - | Sounds["Punch"].Volume = 1 |
128 | + | gui1.TextColor3 = Color3.new(255,255,255) |
129 | - | Sounds["Opening"].SoundId = "rbxassetid://463838589" |
129 | + | gui1.BackgroundColor3=Color3.new(255,255,255) |
130 | - | Sounds["Opening"].Volume = 0.5 |
130 | + | jump2 = true |
131 | - | Sounds["Beep"].SoundId = "rbxassetid://252141949" |
131 | + | gui1.Visible = false |
132 | - | Sounds["Beep"].Volume = 1 |
132 | + | img = Instance.new("ImageLabel",bb) |
133 | - | Sounds["HundredPercent"].SoundId = "rbxassetid://391819537" |
133 | + | img.Size = UDim2.new(0,46,0,47) |
134 | - | Sounds["HundredPercent"].Volume = 0.1 |
134 | + | img.Position = UDim2.new(0,10,0,-41) |
135 | img.Image = "rbxassetid://447301252" | |
136 | - | function PlaySound(soundname, pitch, where, looped,distance,enableLong) |
136 | + | img.BorderColor3 = Color3.new(0,0,0) |
137 | - | Sounds[soundname].Parent = where |
137 | + | img.Visible = false |
138 | - | Sounds[soundname].Pitch = pitch |
138 | + | soka = Instance.new("Sound",char) |
139 | - | Sounds[soundname].Looped= looped |
139 | + | soka.SoundId = "http://www.roblox.com/asset/?id = 447199232" |
140 | - | Sounds[soundname].MaxDistance = distance |
140 | + | soka.Volume = 1 |
141 | - | Sounds[soundname]:Play() |
141 | + | boom = Instance.new("Sound",char) |
142 | - | local oldsound = Sounds[soundname] |
142 | + | boom.SoundId = "http://www.roblox.com/asset/?id = 447041606" |
143 | - | coroutine.resume(coroutine.create(function() |
143 | + | boom.Volume = 1 |
144 | boom2 = Instance.new("Sound",char) | |
145 | - | wait(13.5) |
145 | + | boom2.SoundId = "http://www.roblox.com/asset/?id = 449025737" |
146 | - | for i = 1,1 do |
146 | + | boom2.Volume = 1 |
147 | - | if oldsound.Looped == true then return end |
147 | + | boom3 = Instance.new("Sound",char) |
148 | - | if enableLong == true then return end |
148 | + | boom3.SoundId = "http://www.roblox.com/asset/?id = 450719019" |
149 | - | oldsound:Destroy() |
149 | + | boom3.Volume = 1 |
150 | tps = Instance.new("Sound",char) | |
151 | tps.SoundId = "http://www.roblox.com/asset/?id = 449860746" | |
152 | - | wait(90) |
152 | + | tps.Volume = 1 |
153 | asd = Instance.new("Sound",char) | |
154 | - | for i = 1,1 do |
154 | + | asd.SoundId = "http://www.roblox.com/asset/?id = 447310433" |
155 | - | if enableLong == true then |
155 | + | asd.Volume =1 |
156 | - | |
156 | + | asd1 = Instance.new("Sound",char) |
157 | - | |
157 | + | asd1.SoundId = "http://www.roblox.com/asset/?id = 358280695" |
158 | - | |
158 | + | |
159 | - | oldsound:Destroy() |
159 | + | asd2 = Instance.new("Sound",char) |
160 | - | end |
160 | + | asd2.SoundId = "http://www.roblox.com/asset/?id = 386713054" |
161 | - | |
161 | + | asd2.Looped = true |
162 | - | |
162 | + | asd2.Volume = 5 |
163 | - | |
163 | + | asd3 = Instance.new("Sound",char) |
164 | asd3.SoundId = "http://www.roblox.com/asset/?id = 339250412" | |
165 | asd3.Looped = true | |
166 | asd4 = Instance.new("Sound",char) | |
167 | - | end)) |
167 | + | asd4.SoundId = "http://www.roblox.com/asset/?id = 401258325" |
168 | - | Sounds[soundname] = Sounds[soundname]:clone() |
168 | + | asd4.Looped = true |
169 | asd5 = Instance.new("Sound",char) | |
170 | asd5.SoundId = "http://www.roblox.com/asset/?id = 362252261" | |
171 | - | RW, LW = Instance.new("Weld"), Instance.new("Weld") |
171 | + | asd5.Looped = true |
172 | gas = Instance.new("Sound",char) | |
173 | - | RW.Name="Right Shoulder" LW.Name="Left Shoulder" |
173 | + | gas.SoundId = "http://www.roblox.com/asset/?id = 345052019" |
174 | asd6 = Instance.new("Sound",char) | |
175 | asd6.SoundId = "http://www.roblox.com/asset/?id = 401258325" | |
176 | - | RSH, LSH = nil, nil |
176 | + | asd6.Looped = true |
177 | function play(play) | |
178 | - | LS = Torso["Left Shoulder"] |
178 | + | asd:Play() |
179 | wait(0.05) | |
180 | - | LH = Torso["Left Hip"] |
180 | + | --asd1:Play() |
181 | end | |
182 | - | RS = Torso["Right Shoulder"] |
182 | + | |
183 | ||
184 | - | RH = Torso["Right Hip"] |
184 | + | |
185 | - | RSH = char.Torso["Right Shoulder"] |
185 | + | ------------ |
186 | ------------------------- | |
187 | - | LSH = char.Torso["Left Shoulder"] |
187 | + | |
188 | function stream(origin,dir,length,size) | |
189 | local parts = {} | |
190 | for i = 1,length do | |
191 | - | function Use() |
191 | + | local p = Instance.new("Part",char) |
192 | - | |
192 | + | p.Anchored = true |
193 | - | RW.Part0 = char.Torso |
193 | + | p.Transparency = 0.5 |
194 | p.TopSurface = 0 | |
195 | - | RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
195 | + | p.BottomSurface = 0 |
196 | p.CanCollide = false | |
197 | - | RW.C1 = CFrame.new(0, 0.5, 0) |
197 | + | p.BrickColor = BrickColor.new("Institutional white") |
198 | p.Size = Vector3.new(10,30,10) -- for now | |
199 | - | RW.Part1 = char["Right Arm"] |
199 | + | p.CFrame = CFrame.new(origin+dir*i*size)*CFrame.Angles(math.random()*math.pi,math.random()*math.pi,math.random()*math.pi) |
200 | parts[i] = {p,CFrame.Angles(math.random()*math.pi/5,math.random()*math.pi/5,math.random()*math.pi/5)} | |
201 | - | RW.Parent = char.Torso |
201 | + | game:GetService("Debris"):AddItem(p,3) |
202 | end | |
203 | Spawn(function() | |
204 | while parts do | |
205 | - | LW.Part0 = char.Torso |
205 | + | for i,v in pairs(parts) do |
206 | if v[1].Parent == char then | |
207 | - | LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
207 | + | v[1].CFrame = v[1].CFrame*v[2] |
208 | else | |
209 | - | LW.C1 = CFrame.new(0, 0.5, 0) |
209 | + | parts = nil |
210 | break | |
211 | - | LW.Part1 = char["Left Arm"] |
211 | + | end |
212 | end | |
213 | - | LW.Parent = char.Torso |
213 | + | wait(0.02) |
214 | end | |
215 | - | for i = 1,20 do wait() |
215 | + | end) |
216 | - | RW.C1= clerp(RW.C1*CFrame.new(-.15, -.05, 0.01)*CFrame.fromEulerAnglesXYZ(-math.rad(-.1),-math.rad(-.1),-math.rad(3)),RW.C0,0.1) |
216 | + | |
217 | - | LW.C1= clerp(LW.C1*CFrame.new(.15, -.05, 0.01)*CFrame.fromEulerAnglesXYZ(math.rad(.1),math.rad(.1),-math.rad(-3)),LW.C0,0.1) |
217 | + | |
218 | --[[-- listen for their chatting | |
219 | player.Chatted:connect(function(message) | |
220 | - | end |
220 | + | a = string.len(message) |
221 | - | |
221 | + | gui.Text = "" |
222 | gui.Visible = true | |
223 | gui1.Visible = true | |
224 | des = false | |
225 | - | |
225 | + | img.Visible = true |
226 | - | |
226 | + | print(a) |
227 | if dot == false then | |
228 | gui.Text = "" | |
229 | for i = 1,string.len(message) do | |
230 | - | function Slash1() |
230 | + | gui.Text =gui.Text..message:sub(i,i) |
231 | - | |
231 | + | play() |
232 | - | RW.Part0 = char.Torso |
232 | + | |
233 | end | |
234 | - | RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
234 | + | |
235 | ||
236 | - | RW.C1 = CFrame.new(0, 0.5, 0) |
236 | + | |
237 | des = true | |
238 | - | RW.Part1 = char["Right Arm"] |
238 | + | end)]]-- |
239 | m.KeyDown:connect(function(k) | |
240 | - | RW.Parent = char.Torso |
240 | + | if k == "g" then |
241 | asd2:Play() | |
242 | ||
243 | ||
244 | - | LW.Part0 = char.Torso |
244 | + | |
245 | end) | |
246 | - | LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
246 | + | |
247 | m.KeyDown:connect(function(k) | |
248 | - | LW.C1 = CFrame.new(0, 0.5, 0) |
248 | + | if k == "r" then |
249 | ||
250 | - | LW.Part1 = char["Left Arm"] |
250 | + | asd4:Play() |
251 | end | |
252 | - | LW.Parent = char.Torso |
252 | + | |
253 | m.KeyDown:connect(function(k) | |
254 | if k == "q" then | |
255 | ||
256 | asd3:Play() | |
257 | - | for i = 1,20 do wait() |
257 | + | |
258 | - | RW.C1= clerp(RW.C1*CFrame.new(-.16, 0, 0)*CFrame.fromEulerAnglesXYZ(math.rad(-11.5),math.rad(0),math.rad(0)),RW.C0,0.1) |
258 | + | |
259 | m.KeyDown:connect(function(k) | |
260 | if k == "z" then | |
261 | img.Image = "rbxassetid://332766052" | |
262 | ||
263 | end | |
264 | - | local selectionBoxOfRW = Instance.new("SelectionBox",char["Right Arm"]) |
264 | + | |
265 | - | selectionBoxOfRW.Adornee = char["Right Arm"] |
265 | + | m.KeyDown:connect(function(k) |
266 | - | selectionBoxOfRW.Color = BrickColor.new("Cyan") |
266 | + | if k == "c" then |
267 | - | selectionBoxOfRW.LineThickness = 0.01 |
267 | + | img.Image = "rbxassetid://447301252" |
268 | ||
269 | - | if berserkMode == true then |
269 | + | |
270 | end) | |
271 | - | selectionBoxOfRW.Color = BrickColor.new("Really Black") |
271 | + | m.KeyDown:connect(function(k) |
272 | - | |
272 | + | if k == "b" then |
273 | ||
274 | asd6:Play() | |
275 | end | |
276 | end) | |
277 | - | Ivalue = 3 |
277 | + | mouse = p:GetMouse() |
278 | m.KeyDown:connect(function(k) | |
279 | - | if berserkMode == true then |
279 | + | if k:byte() == 48 then |
280 | - | |
280 | + | |
281 | - | Ivalue = 10 |
281 | + | hum.WalkSpeed = 100 |
282 | - | |
282 | + | |
283 | end) | |
284 | m.KeyDown:connect(function(k) | |
285 | - | for i = 1,Ivalue do wait() |
285 | + | if k:byte() == 50 then |
286 | - | |
286 | + | |
287 | - | RandomCFForAttack = math.random(-50,50) |
287 | + | soka:Play() |
288 | - | |
288 | + | |
289 | - | local randomThing = Instance.new("Part",suit) |
289 | + | |
290 | - | randomThing.TopSurface = "Smooth" |
290 | + | m.KeyDown:connect(function(k) |
291 | - | randomThing.BottomSurface = "Smooth" |
291 | + | if k:byte() == 52 then |
292 | - | randomThing.Size = Vector3.new(math.random(1,30), math.random(1,30), math.random(1,30)) |
292 | + | |
293 | - | randomThing.CanCollide = false |
293 | + | char.Head.face.Texture = "rbxassetid://444037452" |
294 | - | randomThing.BrickColor = BrickColor.new("Earth green") |
294 | + | |
295 | - | randomThing .Material = "Grass" |
295 | + | |
296 | - | randomThing.CFrame = Torso.CFrame*CFrame.new(RandomCFForAttack, 1, RandomCFForAttack) |
296 | + | m.KeyDown:connect(function(k) |
297 | if k:byte() == 51 then | |
298 | - | local selectionBoxOfRandomThing = Instance.new("SelectionBox",randomThing) |
298 | + | |
299 | - | selectionBoxOfRandomThing.Adornee = randomThing |
299 | + | char.Head.face.Texture = "rbxassetid://332768867" |
300 | - | selectionBoxOfRandomThing.Color = BrickColor.new("Cyan") |
300 | + | |
301 | - | selectionBoxOfRandomThing.LineThickness = 0.1 |
301 | + | |
302 | - | RandomCFForAttack = 0 |
302 | + | m.KeyUp:connect(function(k) |
303 | - | randomThing.Anchored = true |
303 | + | if k:byte() == 48 then |
304 | ||
305 | - | if berserkMode == true then |
305 | + | hum.WalkSpeed = 16 |
306 | end | |
307 | - | selectionBoxOfRandomThing.Color = BrickColor.new("Institutional white") |
307 | + | |
308 | - | |
308 | + | p.Chatted:connect(function(m) |
309 | if m == "Okay." then | |
310 | soka:Play() | |
311 | end | |
312 | end) | |
313 | - | for i = 1,10 do wait() |
313 | + | m.KeyDown:connect(function(k) |
314 | - | randomThing.CFrame = clerp(randomThing.CFrame*CFrame.new(0, 0.1*i, 0),randomThing.CFrame,0.1) |
314 | + | if k == "x" then |
315 | - | randomThing.Anchored = true |
315 | + | if des == true then |
316 | - | print'test' |
316 | + | gui.Visible = false |
317 | - | |
317 | + | gui.Text = "* " |
318 | gui1.Visible = false | |
319 | img.Visible = false | |
320 | - | randomThing.Anchored = false |
320 | + | |
321 | - | local ray = Ray.new(randomThing.CFrame.p, (mouse.Hit.p - randomThing.CFrame.p).unit*300) |
321 | + | |
322 | - | local position = mouse.Hit.p--game.Workspace:FindPartOnRay(ray, walrus) |
322 | + | |
323 | - | local distance = (position - randomThing.CFrame.p).magnitude |
323 | + | m.KeyDown:connect(function(key) |
324 | if key == "j" then | |
325 | - | |
325 | + | if tp == true then |
326 | tp = false | |
327 | tps:Play() | |
328 | - | local handleCFrame = randomThing.CFrame |
328 | + | char.Head.face.Parent = game.Lighting |
329 | - | local firingPoint = handleCFrame.p + handleCFrame:vectorToWorldSpace(NOZZLE_OFFSET) |
329 | + | for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 1 |
330 | - | local shotCFrame = CFrame.new(firingPoint, mouse.Hit.p) |
330 | + | |
331 | - | local laserShotClone = randomThing:Clone() |
331 | + | |
332 | - | laserShotClone.CFrame = shotCFrame + (shotCFrame.lookVector * (randomThing.Size.Z / 2)) |
332 | + | |
333 | - | local bodyVelocity = Instance.new('BodyVelocity') |
333 | + | wait(0.5) |
334 | - | if berserkMode == true then |
334 | + | for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 0 |
335 | - | bodyVelocity.velocity = shotCFrame.lookVector * SHOT_SPEED2 |
335 | + | |
336 | ||
337 | - | if berserkMode == false then |
337 | + | |
338 | - | bodyVelocity.velocity = shotCFrame.lookVector * SHOT_SPEED |
338 | + | char.HumanoidRootPart.CFrame = mouse.Hit * CFrame.new(0, 3, 0) |
339 | char.HumanoidRootPart.Transparency = 1 | |
340 | - | bodyVelocity.Parent = laserShotClone |
340 | + | game.Lighting.face.Parent = char.Head |
341 | - | bodyVelocity.MaxForce = Vector3.new(math.huge,math.huge,math.huge) |
341 | + | wait(0.2) |
342 | ||
343 | tp = true | |
344 | - | laserShotClone.Parent = suit |
344 | + | |
345 | ||
346 | - | randomThing:remove() |
346 | + | |
347 | end | |
348 | end) | |
349 | ||
350 | ||
351 | m.KeyDown:connect(function(key) | |
352 | - | function touch(hit) |
352 | + | if key == "t" then |
353 | if punch2 == true then | |
354 | punch2 = false | |
355 | - | if hit.Parent:findFirstChild("Humanoid") ~= nil then |
355 | + | punch = false |
356 | - | |
356 | + | |
357 | - | if hit.Parent.Name == char.Name then return end |
357 | + | local ChatService = game:GetService("Chat") |
358 | ||
359 | - | if berserkMode == true then |
359 | + | neck.C0 = neck.C0 * CFrame.Angles(0.3,0,0) |
360 | - | |
360 | + | ChatService:Chat(char.Head, "Mind if I get Serious?") |
361 | - | hit.Parent:BreakJoints() |
361 | + | |
362 | - | |
362 | + | local ChatService = game:GetService("Chat") |
363 | - | |
363 | + | |
364 | ||
365 | ChatService:Chat(char.Head ,"Killer Move: Serious Series...") | |
366 | - | hit.Parent.Humanoid.Health=hit.Parent.Humanoid.Health-2 |
366 | + | |
367 | local ChatService = game:GetService("Chat") | |
368 | - | local HitSounds = { |
368 | + | |
369 | - | Hurt = Instance.new("Sound") |
369 | + | |
370 | ChatService:Chat(char.Head, "SERIOUS PUNCH.") | |
371 | - | } |
371 | + | neck.C0 = neckp |
372 | wait(0.6) | |
373 | - | HitSounds["Hurt"].SoundId = "http://www.roblox.com/asset?id=406913243" |
373 | + | org = char.Torso["Left Shoulder"].C0 |
374 | - | HitSounds["Hurt"].Volume = 1 |
374 | + | char.Torso["Left Shoulder"].C0 = char.Torso["Left Shoulder"].C0 * CFrame.new(-0.3,0,0) * CFrame.Angles(0,0,math.rad(-90)) |
375 | wait() | |
376 | - | function PlayHitSound(soundname, pitch) |
376 | + | killbrick2 = Instance.new("Part",char) |
377 | - | HitSounds[soundname].Parent = hit.Parent.Torso |
377 | + | killbrick2.Size = Vector3.new(150,80,9000) |
378 | - | HitSounds[soundname].Pitch = pitch |
378 | + | killbrick2.Transparency = 1 |
379 | - | HitSounds[soundname]:Play() |
379 | + | |
380 | - | local oldsound = HitSounds[soundname] |
380 | + | killbrick2.CanCollide = true |
381 | - | coroutine.resume(coroutine.create(function() |
381 | + | wait(0.1) |
382 | - | wait(4) |
382 | + | killbrick2.CanCollide = false |
383 | - | oldsound:Destroy() |
383 | + | |
384 | - | end)) |
384 | + | killbrick2.Anchored = true |
385 | - | HitSounds[soundname] = HitSounds[soundname]:clone() |
385 | + | |
386 | killbrick2.CFrame = char.Torso.CFrame * CFrame.new(0,0,-1005) | |
387 | ||
388 | - | PlayHitSound("Hurt", 1) |
388 | + | killbrick2.Touched:connect(function(h) |
389 | local x = h.Parent:FindFirstChild("Humanoid") | |
390 | - | coroutine.resume(coroutine.create(function() |
390 | + | if x then |
391 | - | bodyVelocity:remove() |
391 | + | if x.Parent.Name == game.Players.LocalPlayer.Name then |
392 | - | laserShotClone.CanCollide = true |
392 | + | safe = true |
393 | - | wait(3) |
393 | + | else safe = false |
394 | - | laserShotClone:remove() |
394 | + | |
395 | - | end)) |
395 | + | if x then |
396 | if safe == false then | |
397 | - | end end laserShotClone.Touched:connect(touch) |
397 | + | h.Parent.Torso.Velocity = CFrame.new(char.Torso.Position,h.Parent.Torso.Position).lookVector * 900 |
398 | local bodyforc = Instance.new("BodyForce", h.Parent.Torso) | |
399 | - | game.Debris:AddItem(laserShotClone,5) |
399 | + | boom:Play() |
400 | bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0) | |
401 | ||
402 | - | char.Torso.Anchored = false |
402 | + | |
403 | wait(0.2) | |
404 | - | for i = 1,10 do wait() |
404 | + | x.Parent:BreakJoints() |
405 | - | selectionBoxOfRW.Transparency = selectionBoxOfRW.Transparency + 0.1 |
405 | + | |
406 | safe = true | |
407 | - | selectionBoxOfRW:remove() |
407 | + | |
408 | end | |
409 | end | |
410 | end) | |
411 | ||
412 | - | function Slash2() |
412 | + | |
413 | - | |
413 | + | |
414 | - | RW.Part0 = char.Torso |
414 | + | |
415 | ||
416 | - | RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
416 | + | |
417 | ||
418 | - | RW.C1 = CFrame.new(0, 0.5, 0) |
418 | + | |
419 | local rng = Instance.new("Part", char) | |
420 | - | RW.Part1 = char["Right Arm"] |
420 | + | rng.Anchored = true |
421 | rng.BrickColor = BrickColor.new("Institutional white") | |
422 | - | RW.Parent = char.Torso |
422 | + | rng.CanCollide = false |
423 | rng.FormFactor = 3 | |
424 | rng.Name = "Ring" | |
425 | rng.Size = Vector3.new(1, 1, 1) | |
426 | - | LW.Part0 = char.Torso |
426 | + | rng.Transparency = 0.8 |
427 | rng.TopSurface = 0 | |
428 | - | LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
428 | + | rng.BottomSurface = 0 |
429 | rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) | |
430 | - | LW.C1 = CFrame.new(0, 0.5, 0) |
430 | + | --rng.Rotation = Vector3.new(math.pi/2,0,0) |
431 | rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) | |
432 | - | LW.Part1 = char["Left Arm"] |
432 | + | local rngm = Instance.new("SpecialMesh", rng) |
433 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
434 | - | LW.Parent = char.Torso |
434 | + | rngm.Scale = Vector3.new(1, 1.3, 2) |
435 | local rng1 = Instance.new("Part", char) | |
436 | rng1.Anchored = true | |
437 | rng1.BrickColor = BrickColor.new("Institutional white") | |
438 | - | for i = 1,20 do wait() |
438 | + | rng1.CanCollide = false |
439 | - | RW.C1= clerp(RW.C1*CFrame.new(-.16, 0, 0)*CFrame.fromEulerAnglesXYZ(math.rad(-11.5),math.rad(0),math.rad(0)),RW.C0,0.1) |
439 | + | rng1.FormFactor = 3 |
440 | rng1.Name = "Ring" | |
441 | rng1.Size = Vector3.new(1, 1, 1) | |
442 | rng1.Transparency = 0.8 | |
443 | rng1.TopSurface = 0 | |
444 | - | local ArmWind = Instance.new("Part",suit) |
444 | + | rng1.BottomSurface = 0 |
445 | - | ArmWind.Size = Vector3.new(3,7,3) |
445 | + | rng1.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) |
446 | - | ArmWind.Name = "WindEffect" |
446 | + | --rng1.Rotation = Vector3.new(math.pi/2,0,0) |
447 | - | ArmWind.CanCollide = false |
447 | + | rng1.CFrame = rng1.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) |
448 | - | ArmWind.Transparency = 1 |
448 | + | local rngm1 = Instance.new("SpecialMesh", rng1) |
449 | - | ArmWind.BrickColor = BrickColor.new("Institutional white") |
449 | + | rngm1.MeshId = "http://www.roblox.com/asset/?id=3270017" |
450 | rngm1.Scale = Vector3.new(1, 1.3, 2) | |
451 | - | weld(char["Right Arm"],ArmWind,CFrame.new(0,0,0),CFrame.new(0, -1, 0)*CFrame.fromEulerAnglesXYZ(0, math.rad(90), 0),char,"ArmWindW") |
451 | + | |
452 | local p = (torso.CFrame*CFrame.new(-20,0,3)) | |
453 | stream(p.p,((p*Vector3.new(-0.7,0,1))-p.p).unit,90,5) -- 20 is number of parts, 6 is distance between each one | |
454 | local p = (torso.CFrame*CFrame.new(20,0,3)) | |
455 | stream(p.p,((p*Vector3.new(0.7,0,1))-p.p).unit,90,5) -- same here | |
456 | ||
457 | - | function touch(hit) |
457 | + | local rng2 = Instance.new("Part", char) |
458 | rng2.Anchored = true | |
459 | rng2.BrickColor = BrickColor.new("Institutional white") | |
460 | - | if hit.Parent:findFirstChild("Humanoid") ~= nil then |
460 | + | rng2.CanCollide = false |
461 | - | |
461 | + | rng2.FormFactor = 3 |
462 | - | if hit.Parent.Name == char.Name then return end |
462 | + | rng2.Name = "Ring" |
463 | rng2.Size = Vector3.new(1, 1, 1) | |
464 | - | if hit.Parent.Name == suit2.Name then return end |
464 | + | rng2.Transparency = 0.8 |
465 | rng2.TopSurface = 0 | |
466 | - | if berserkMode == true then |
466 | + | rng2.BottomSurface = 0 |
467 | - | |
467 | + | rng2.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) |
468 | - | hit.Parent:BreakJoints() |
468 | + | --rng1.Rotation = Vector3.new(math.pi/2,0,0) |
469 | - | |
469 | + | rng2.CFrame = rng2.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) |
470 | - | |
470 | + | local rngm2 = Instance.new("SpecialMesh", rng2) |
471 | rngm2.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
472 | rngm2.Scale = Vector3.new(1, 1.3, 2) | |
473 | - | hit.Parent.Humanoid.Health=hit.Parent.Humanoid.Health-5 |
473 | + | wait(0.1) |
474 | ||
475 | boom3:Play() | |
476 | coroutine.wrap(function() | |
477 | - | local HitSounds = { |
477 | + | for i = 1, 35, 0.5 do |
478 | - | Hurt = Instance.new("Sound") |
478 | + | |
479 | ||
480 | - | } |
480 | + | |
481 | ||
482 | - | HitSounds["Hurt"].SoundId = "http://www.roblox.com/asset?id=410625063" |
482 | + | |
483 | - | HitSounds["Hurt"].Volume = 1 |
483 | + | rngm.Scale = Vector3.new(50 + i*2, 10 + i*2, 2.5+ i*4) |
484 | rngm1.Scale = Vector3.new(50 + i*2, 1.4 + i*2, 1.4+ i*4) | |
485 | - | function PlayHitSound(soundname, pitch) |
485 | + | rngm2.Scale = Vector3.new(50 + i*2, 10 + i*2, 1.2+ i*4) |
486 | - | HitSounds[soundname].Parent = hit.Parent.Torso |
486 | + | |
487 | - | HitSounds[soundname].Pitch = pitch |
487 | + | wait() |
488 | - | HitSounds[soundname]:Play() |
488 | + | end |
489 | - | local oldsound = HitSounds[soundname] |
489 | + | wait() |
490 | - | coroutine.resume(coroutine.create(function() |
490 | + | rng:Destroy() |
491 | - | wait(4) |
491 | + | rng1:Destroy() |
492 | - | oldsound:Destroy() |
492 | + | rng2:Destroy() |
493 | - | end)) |
493 | + | killbrick2:Remove() |
494 | - | HitSounds[soundname] = HitSounds[soundname]:clone() |
494 | + | wait(0.5) |
495 | char.Torso["Left Shoulder"].C0 = org | |
496 | wait(1) | |
497 | - | PlayHitSound("Hurt", 1) |
497 | + | punch2 = true |
498 | punch = true | |
499 | - | local HitWind = Instance.new("Part",suit) |
499 | + | wait() |
500 | - | HitWind.Size = Vector3.new(1,1,1) |
500 | + | |
501 | - | HitWind.Name = "WindEffect" |
501 | + | |
502 | - | HitWind.CanCollide = false |
502 | + | end)() |
503 | - | HitWind.Anchored = true |
503 | + | |
504 | - | HitWind.Transparency = 0 |
504 | + | |
505 | ||
506 | - | local colorc = {"New Yeller","Magenta","Lapis","Cyan","Lime green"} |
506 | + | end |
507 | - | local Fire = BrickColor.new(colorc[math.random(1, #colorc)]) |
507 | + | |
508 | ||
509 | - | HitWind.BrickColor = Fire |
509 | + | |
510 | - | local HitWindMesh = Instance.new("BlockMesh",HitWind) |
510 | + | |
511 | - | HitWind.CFrame = hit.Parent.Torso.CFrame*CFrame.new(0,0, 0)*CFrame.fromEulerAnglesXYZ(0, 0, 0) |
511 | + | |
512 | end | |
513 | - | if berserkMode == false then |
513 | + | |
514 | - | hit.Parent.Torso.Velocity=HitWind.CFrame.lookVector * -50 |
514 | + | |
515 | ||
516 | ||
517 | - | if berserkMode == true then |
517 | + | |
518 | - | hit.Parent.Torso.Velocity=HitWind.CFrame.lookVector * -100 |
518 | + | |
519 | m.KeyDown:connect(function(key) | |
520 | if key == "k" then | |
521 | - | coroutine.resume(coroutine.create(function() |
521 | + | if punch == true then |
522 | - | for i = 1,10 do wait() |
522 | + | punch = false |
523 | - | |
523 | + | |
524 | - | HitWind.CFrame= clerp(HitWind.CFrame*CFrame.new(0,0,0)*CFrame.fromEulerAnglesXYZ(math.rad(10),math.rad(10),math.rad(10)),HitWind.CFrame,0.1) |
524 | + | local ChatService = game:GetService("Chat") |
525 | - | HitWindMesh.Scale = Vector3.new(1*i, 1*i, 1*i) |
525 | + | |
526 | - | HitWind.Transparency = HitWind.Transparency + 0.1 |
526 | + | |
527 | ChatService:Chat(char.Head ,"Normal Punch") | |
528 | wait(1) | |
529 | - | HitWind:remove() |
529 | + | org = char.Torso["Left Shoulder"].C0 |
530 | - | end)) |
530 | + | char.Torso["Left Shoulder"].C0 = char.Torso["Left Shoulder"].C0 * CFrame.new(-0.3,0,0) * CFrame.Angles(0,0,math.rad(-90)) |
531 | killbrick = Instance.new("Part",char) | |
532 | killbrick.Size = Vector3.new(5,1,5) | |
533 | - | end end ArmWind.Touched:connect(touch) |
533 | + | killbrick.Transparency = 1 |
534 | killbrick:BreakJoints() | |
535 | - | Ivalue2 = 10 |
535 | + | killbrick.CanCollide = false |
536 | local wel = Instance.new("Weld",killbrick) | |
537 | - | if berserkMode == true then |
537 | + | wel.Part0 = killbrick |
538 | - | |
538 | + | wel.Part1 = char["Left Arm"] |
539 | - | Ivalue2 = 30 |
539 | + | wel.C0 = CFrame.new(0,1,0) |
540 | - | |
540 | + | force = 90 |
541 | ||
542 | killbrick.Touched:connect(function(h) | |
543 | - | for i = 1,Ivalue2 do wait() |
543 | + | local x = h.Parent.Humanoid |
544 | - | |
544 | + | if x.Health >= 6000 then |
545 | - | |
545 | + | fling = false |
546 | - | local SpecialPart = Instance.new("Part",ArmWind) |
546 | + | |
547 | if x.Health < 6000 then | |
548 | - | SpecialPart.FormFactor="Custom" |
548 | + | fling = true |
549 | end | |
550 | - | SpecialPart.Size=Vector3.new(2,2,2) |
550 | + | local stop = h.Parent.Torso.Velocity |
551 | if x.Parent.Name == game.Players.LocalPlayer.Name then | |
552 | - | SpecialPart.TopSurface = 0 |
552 | + | safe = true |
553 | else safe = false | |
554 | - | SpecialPart.BottomSurface = 0 |
554 | + | |
555 | if x then | |
556 | - | local colorc = {"New Yeller","Magenta","Lapis","Cyan","Lime green"} |
556 | + | if safe == false then |
557 | if fling == true then | |
558 | - | local Fire = BrickColor.new(colorc[math.random(1, #colorc)]) |
558 | + | force = 900 |
559 | ||
560 | - | SpecialPart.BrickColor = Fire |
560 | + | end |
561 | if fling == false then | |
562 | - | SpecialPart.CanCollide=false |
562 | + | force = 200 |
563 | end | |
564 | - | SpecialPart.Anchored=true |
564 | + | |
565 | ||
566 | - | SpecialPart.CFrame =(ArmWind.CFrame*CFrame.new(0,-2,0))*CFrame.Angles(math.random(-3,3),math.random(-3,3),math.random(-3,3)) |
566 | + | h.Parent.Torso.Velocity = CFrame.new(char.Torso.Position,h.Parent.Torso.Position).lookVector * force |
567 | local bodyforc = Instance.new("BodyForce", h.Parent.Torso) | |
568 | - | local SpecialPartmesh = Instance.new("BlockMesh",SpecialPart) |
568 | + | boom:Play() |
569 | bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0) | |
570 | - | for i = 1,5 do wait() |
570 | + | |
571 | - | |
571 | + | |
572 | - | SpecialPartmesh.Scale=Vector3.new(0.5*i,0.5*i,0.5*i) |
572 | + | wait(0.2) |
573 | - | SpecialPart.CFrame = clerp(SpecialPart.CFrame*CFrame.Angles(math.rad(10),math.rad(10),math.rad(10)),SpecialPart.CFrame,0.1) |
573 | + | x:TakeDamage(500) |
574 | - | SpecialPart.Transparency = SpecialPart.Transparency + 0.2 |
574 | + | |
575 | - | end |
575 | + | safe = true |
576 | bodyforc:Remove() | |
577 | - | SpecialPart:remove() |
577 | + | h.Parent.Torso.Velocity = stop |
578 | - | |
578 | + | |
579 | - | |
579 | + | |
580 | - | |
580 | + | |
581 | end) | |
582 | - | ArmWind:remove() |
582 | + | |
583 | - | Ivalue2 = 0 |
583 | + | |
584 | ||
585 | ||
586 | - | |
586 | + | |
587 | - | function Slash3() |
587 | + | |
588 | ||
589 | - | RW.Part0 = char.Torso |
589 | + | |
590 | ||
591 | - | RW.C0 = CFrame.new(1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
591 | + | |
592 | local rng = Instance.new("Part", char) | |
593 | - | RW.C1 = CFrame.new(0, 0.5, 0) |
593 | + | rng.Anchored = true |
594 | rng.BrickColor = BrickColor.new("Institutional white") | |
595 | - | RW.Part1 = char["Right Arm"] |
595 | + | rng.CanCollide = false |
596 | rng.FormFactor = 3 | |
597 | - | RW.Parent = char.Torso |
597 | + | rng.Name = "Ring" |
598 | rng.Size = Vector3.new(1, 1, 1) | |
599 | rng.Transparency = 0.8 | |
600 | rng.TopSurface = 0 | |
601 | - | LW.Part0 = char.Torso |
601 | + | rng.BottomSurface = 0 |
602 | rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) | |
603 | - | LW.C0 = CFrame.new(-1.5, 0.5, 0) --* CFrame.fromEulerAnglesXYZ(1.3, 0, -0.5) |
603 | + | --rng.Rotation = Vector3.new(math.pi/2,0,0) |
604 | rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) | |
605 | - | LW.C1 = CFrame.new(0, 0.5, 0) |
605 | + | local rngm = Instance.new("SpecialMesh", rng) |
606 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
607 | - | LW.Part1 = char["Left Arm"] |
607 | + | rngm.Scale = Vector3.new(1, 1.3, 2) |
608 | wait(0.1) | |
609 | - | LW.Parent = char.Torso |
609 | + | |
610 | boom2:Play() | |
611 | coroutine.wrap(function() | |
612 | for i = 1, 10, .4 do | |
613 | - | for i = 1,20 do wait() |
613 | + | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1) |
614 | - | RW.C1= clerp(RW.C1*CFrame.new(-.16, 0, 0)*CFrame.fromEulerAnglesXYZ(math.rad(-11.5),math.rad(0),math.rad(0)),RW.C0,0.1) |
614 | + | |
615 | wait() | |
616 | end | |
617 | wait() | |
618 | rng:Destroy() | |
619 | killbrick:Remove() | |
620 | wait(0.5) | |
621 | char.Torso["Left Shoulder"].C0 = org | |
622 | wait(1) | |
623 | - | TK = Instance.new("Part",suit3) |
623 | + | |
624 | - | TK.Size = Vector3.new(2,2,2) |
624 | + | punch = true |
625 | - | TK.Name = "TKEffect" |
625 | + | wait() |
626 | - | TK.CanCollide = false |
626 | + | end)() |
627 | - | TK.Position = mouse.hit.p |
627 | + | |
628 | - | TK.Transparency = 1 |
628 | + | |
629 | - | TK.BrickColor = BrickColor.new("Institutional white") |
629 | + | |
630 | end | |
631 | ||
632 | ||
633 | wait(.1) | |
634 | - | |
634 | + | |
635 | ||
636 | - | TKmove = Instance.new("BodyPosition",TK) |
636 | + | |
637 | - | TKmove.Position = char.Torso.Position + (mouse.Hit.lookVector*dist) |
637 | + | |
638 | - | TKmove.MaxForce = Vector3.new(math.huge,math.huge,math.huge) |
638 | + | |
639 | - | TKmove.P = 15000 |
639 | + | |
640 | ||
641 | - | pointGyro = Instance.new("BodyGyro",char.HumanoidRootPart) |
641 | + | |
642 | - | pointGyro.P = 1e7 |
642 | + | |
643 | - | pointGyro.D = 1e3 |
643 | + | |
644 | - | pointGyro.MaxTorque = Vector3.new(0,1e7,0) |
644 | + | |
645 | - | TKEnabled =true |
645 | + | |
646 | ||
647 | - | |
647 | + | |
648 | - | local chatberserk = Instance.new("Part",suit) |
648 | + | |
649 | - | chatberserk.TopSurface = "Smooth" |
649 | + | |
650 | - | chatberserk.BottomSurface = "Smooth" |
650 | + | |
651 | - | chatberserk.Name = "GUI" |
651 | + | |
652 | - | chatberserk.Transparency = 1 |
652 | + | m.KeyDown:connect(function(key) |
653 | - | chatberserk.Size = Vector3.new(2, 1, 0.1) |
653 | + | if key == "m" then |
654 | - | chatberserk.CanCollide = false |
654 | + | if jump == true then |
655 | - | chatberserk.BrickColor=BrickColor.new("Institutional white") |
655 | + | jump = false |
656 | ||
657 | ||
658 | local rng = Instance.new("Part", char) | |
659 | rng.Anchored = true | |
660 | - | weld(char.Head,chatberserk,CFrame.new(0,0,0),CFrame.new(0, -3, 0),char,"Weld") |
660 | + | rng.BrickColor = BrickColor.new("Institutional white") |
661 | rng.CanCollide = false | |
662 | rng.FormFactor = 3 | |
663 | - | local cy7=Instance.new("BlockMesh",chatberserk) |
663 | + | rng.Name = "Ring" |
664 | rng.Size = Vector3.new(1, 1, 1) | |
665 | rng.Transparency = 0.35 | |
666 | - | local textb=Instance.new("SurfaceGui",chatberserk) |
666 | + | rng.TopSurface = 0 |
667 | - | textb.Face = "Back" |
667 | + | rng.BottomSurface = 0 |
668 | - | local text2b=Instance.new("TextLabel",textb) |
668 | + | rng.Position = torso.Position - Vector3.new(0,2,0) |
669 | - | text2b.Transparency = 0 |
669 | + | rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) |
670 | local rngm = Instance.new("SpecialMesh", rng) | |
671 | - | text2b.Active=true |
671 | + | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" |
672 | - | textb.CanvasSize=Vector2.new(100,100) |
672 | + | rngm.Scale = Vector3.new(1, 1.3, 2) |
673 | - | text2b.Position=UDim2.new(-0.05/3.5,0,0.5/3,0) |
673 | + | wait(0.1) |
674 | - | text2b.Size=UDim2.new(1,0,1,0) |
674 | + | BV = Instance.new("BodyVelocity", torso) |
675 | - | text2b.Position=UDim2.new(0,0,-0.1,0) |
675 | + | BV.maxForce = Vector3.new(0,20000,0) |
676 | - | text2b.TextScaled = true |
676 | + | BV.P = 1000 |
677 | - | text2b.Font = "Code" |
677 | + | BV.velocity = Vector3.new(0,100,0) |
678 | boom:Play() | |
679 | coroutine.wrap(function() | |
680 | - | text2b.TextColor= BrickColor.new("Institutional white") |
680 | + | for i = 1, 60, 2 do |
681 | - | text2b.BackgroundTransparency = 1 |
681 | + | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1) |
682 | - | text2b.BorderColor= BrickColor.new("Institutional white") |
682 | + | rng.Transparency = i/60 |
683 | - | |
683 | + | wait() |
684 | - | |
684 | + | end |
685 | - | text2b.Text= ""..berserkValue.."" |
685 | + | wait() |
686 | rng:Destroy() | |
687 | ||
688 | - | local text=Instance.new("SurfaceGui",chatberserk) |
688 | + | hum.WalkSpeed = 50 |
689 | - | local text2=Instance.new("TextLabel",text) |
689 | + | wait(1) |
690 | - | text2.Transparency = 0 |
690 | + | |
691 | for i,v in pairs(torso:GetChildren()) do if v:IsA("BodyVelocity") then | |
692 | - | text2.Active=true |
692 | + | v:Destroy() jumping2 = true falling = true wait(0.3) jumping2 = false falling = false wait(1.7) jump = true hum.WalkSpeed = 16 falling = false |
693 | - | text.CanvasSize=Vector2.new(100,100) |
693 | + | end end |
694 | - | text2.Position=UDim2.new(-0.05/3.5,0,0.5/3,0) |
694 | + | wait() |
695 | - | text2.Size=UDim2.new(1,0,1,0) |
695 | + | end)() |
696 | - | text2.Position=UDim2.new(0,0,-0.1,0) |
696 | + | |
697 | - | text2.TextScaled = true |
697 | + | |
698 | - | text2.Font = "Code" |
698 | + | |
699 | end | |
700 | ||
701 | - | text2.TextColor= BrickColor.new("Institutional white") |
701 | + | |
702 | - | text2.BackgroundTransparency = 1 |
702 | + | |
703 | - | text2.BorderColor= BrickColor.new("Institutional white") |
703 | + | |
704 | - | |
704 | + | |
705 | - | |
705 | + | |
706 | - | text2.Text= ""..berserkValue.."" |
706 | + | |
707 | ||
708 | - | function idle() |
708 | + | |
709 | - | |
709 | + | |
710 | - | RW.Parent = nil |
710 | + | |
711 | ||
712 | - | LW.Parent = nil |
712 | + | |
713 | m.KeyDown:connect(function(key) | |
714 | - | RSH.Parent = player.Character.Torso |
714 | + | if key == "n" then |
715 | ||
716 | - | LSH.Parent = player.Character.Torso |
716 | + | if falling == true then |
717 | falling = false | |
718 | - | |
718 | + | if jumping2 == true then |
719 | - | |
719 | + | jumping2 = false |
720 | jump = false | |
721 | BV = Instance.new("BodyVelocity", torso) | |
722 | - | function StartUp() |
722 | + | BV.maxForce = Vector3.new(0,-20000,0) |
723 | - | if UnknownMode == true then return end |
723 | + | BV.P = -1000 |
724 | - | if enabled == true then return end |
724 | + | BV.velocity = Vector3.new(0,-70,0) |
725 | - | if enabled == false then |
725 | + | wait(0.6) |
726 | - | if enabled == true then return end |
726 | + | local rng = Instance.new("Part", char) |
727 | - | enabled = nil |
727 | + | rng.Anchored = true |
728 | - | local selectionBoxOfTorso = Instance.new("SelectionBox",Torso) |
728 | + | rng.BrickColor = BrickColor.new("Institutional white") |
729 | - | selectionBoxOfTorso.Adornee = Torso |
729 | + | rng.CanCollide = false |
730 | - | selectionBoxOfTorso.Color = BrickColor.new("Cyan") |
730 | + | rng.FormFactor = 3 |
731 | - | selectionBoxOfTorso.LineThickness = 0.01 |
731 | + | rng.Name = "Ring" |
732 | - | selectionBoxOfTorso.Transparency = 1 |
732 | + | rng.Size = Vector3.new(1, 1, 1) |
733 | - | |
733 | + | rng.Transparency = 0.35 |
734 | - | local selectionBoxOfRightArm = Instance.new("SelectionBox",char["Right Arm"]) |
734 | + | rng.TopSurface = 0 |
735 | - | selectionBoxOfRightArm.Adornee = char["Right Arm"] |
735 | + | rng.BottomSurface = 0 |
736 | - | selectionBoxOfRightArm.Color = BrickColor.new("Cyan") |
736 | + | rng.Position = torso.Position - Vector3.new(0,2,0) |
737 | - | selectionBoxOfRightArm.LineThickness = 0.01 |
737 | + | rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) |
738 | - | selectionBoxOfRightArm.Transparency = 1 |
738 | + | local rngm = Instance.new("SpecialMesh", rng) |
739 | - | |
739 | + | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" |
740 | - | local selectionBoxOfRightLeg = Instance.new("SelectionBox",char["Right Leg"]) |
740 | + | rngm.Scale = Vector3.new(1, 1.3, 2) |
741 | - | selectionBoxOfRightLeg.Adornee = char["Right Leg"] |
741 | + | |
742 | - | selectionBoxOfRightLeg.Color = BrickColor.new("Cyan") |
742 | + | |
743 | - | selectionBoxOfRightLeg.LineThickness = 0.01 |
743 | + | boom:Play() |
744 | - | selectionBoxOfRightLeg.Transparency = 1 |
744 | + | coroutine.wrap(function() |
745 | for i = 1, 60, 2 do | |
746 | - | local selectionBoxOfLeftArm = Instance.new("SelectionBox",char["Left Arm"]) |
746 | + | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1) |
747 | - | selectionBoxOfLeftArm.Adornee = char["Left Arm"] |
747 | + | rng.Transparency = i/60 |
748 | - | selectionBoxOfLeftArm.Color = BrickColor.new("Cyan") |
748 | + | wait() |
749 | - | selectionBoxOfLeftArm.LineThickness = 0.01 |
749 | + | end |
750 | - | selectionBoxOfLeftArm.Transparency = 1 |
750 | + | wait() |
751 | rng:Destroy() | |
752 | - | local selectionBoxOfLeftLeg = Instance.new("SelectionBox",char["Left Leg"]) |
752 | + | |
753 | - | selectionBoxOfLeftLeg.Adornee = char["Left Leg"] |
753 | + | |
754 | - | selectionBoxOfLeftLeg.Color = BrickColor.new("Cyan") |
754 | + | |
755 | - | selectionBoxOfLeftLeg.LineThickness = 0.01 |
755 | + | |
756 | - | selectionBoxOfLeftLeg.Transparency = 1 |
756 | + | for i,v in pairs(torso:GetChildren()) do if v:IsA("BodyVelocity") then |
757 | v:Destroy() wait(2) jumping2 = true hum.WalkSpeed = 16 | |
758 | end end | |
759 | - | --Shield-- |
759 | + | wait() |
760 | end)() | |
761 | - | shieldhumanoid = Instance.new("Humanoid",suit2) |
761 | + | |
762 | - | shieldhumanoid.DisplayDistanceType = "None" |
762 | + | |
763 | ||
764 | end | |
765 | - | Shield6= Instance.new("Part",suit2) |
765 | + | |
766 | - | Shield6.TopSurface = "Smooth" |
766 | + | |
767 | - | Shield6.BottomSurface = "Smooth" |
767 | + | |
768 | - | Shield6.Size = Vector3.new(4,0.2,4) |
768 | + | |
769 | - | Shield6.CanCollide = true |
769 | + | |
770 | - | Shield6.BrickColor = BrickColor.new("Cyan") |
770 | + | |
771 | - | Shield6 .FormFactor = "Custom" |
771 | + | |
772 | - | Shield6.Transparency = 0 |
772 | + | m.KeyDown:connect(function(k) |
773 | if k == "f" then | |
774 | - | weld(char.Torso,Shield6,CFrame.new(0,0,0),CFrame.new(0, 3, 0)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
774 | + | asd3:Stop() |
775 | asd2:Stop() | |
776 | - | Shield5= Instance.new("Part",suit2) |
776 | + | asd4:Stop() |
777 | - | Shield5.TopSurface = "Smooth" |
777 | + | asd6:Stop() |
778 | - | Shield5.BottomSurface = "Smooth" |
778 | + | asd5:Stop() |
779 | - | Shield5.Size = Vector3.new(4,0.2,4) |
779 | + | |
780 | - | Shield5.CanCollide = true |
780 | + | end) |
781 | - | Shield5.BrickColor = BrickColor.new("Cyan") |
781 | + | ------------ |
782 | - | Shield5 .FormFactor = "Custom" |
782 | + | |
783 | - | Shield5 .Name = "Head" |
783 | + | local verlet = {} |
784 | - | Shield5.Transparency = 0 |
784 | + | verlet.step_time = 1 / 50 |
785 | verlet.gravity = Vector3.new(0, -10, 0) | |
786 | - | weld(char.Torso,Shield5,CFrame.new(0,0,0),CFrame.new(0, -3, 0)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
786 | + | |
787 | local char = game.Players.LocalPlayer.Character | |
788 | local torso = char:WaitForChild("Torso") | |
789 | local parts = {} | |
790 | - | Shield4= Instance.new("Part",suit2) |
790 | + | local render = game:GetService("RunService").RenderStepped |
791 | - | Shield4.TopSurface = "Smooth" |
791 | + | |
792 | - | Shield4.BottomSurface = "Smooth" |
792 | + | |
793 | - | Shield4.Size = Vector3.new(0.2,6,4) |
793 | + | |
794 | - | Shield4.CanCollide = true |
794 | + | local point = {} |
795 | - | Shield4.BrickColor = BrickColor.new("Cyan") |
795 | + | local link = {} |
796 | - | Shield4 .FormFactor = "Custom" |
796 | + | local rope = {} |
797 | - | Shield4.Transparency = 0 |
797 | + | |
798 | local function ccw(A,B,C) | |
799 | - | weld(char.Torso,Shield4,CFrame.new(0,0,0),CFrame.new(2, 0, 0)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
799 | + | return (C.y-A.y) * (B.x-A.x) > (B.y-A.y) * (C.x-A.x) |
800 | end | |
801 | ||
802 | - | Shield3= Instance.new("Part",suit2) |
802 | + | local function intersect(A,B,C,D) |
803 | - | Shield3.TopSurface = "Smooth" |
803 | + | return ccw(A,C,D) ~= ccw(B,C,D) and ccw(A,B,C) ~= ccw(A,B,D) |
804 | - | Shield3.BottomSurface = "Smooth" |
804 | + | |
805 | - | Shield3.Size = Vector3.new(0.2,6,4) |
805 | + | |
806 | - | Shield3.CanCollide = true |
806 | + | local function vec2(v) |
807 | - | Shield3.BrickColor = BrickColor.new("Cyan") |
807 | + | return Vector2.new(v.x, v.z) |
808 | - | Shield3 .FormFactor = "Custom" |
808 | + | |
809 | - | Shield3.Transparency = 0 |
809 | + | |
810 | function point:step() | |
811 | - | weld(char.Torso,Shield3,CFrame.new(0,0,0),CFrame.new(-2, 0, 0)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
811 | + | if not self.fixed then |
812 | local derivative = (self.position - self.last_position) * 0.95 | |
813 | self.last_position = self.position | |
814 | - | Shield2= Instance.new("Part",suit2) |
814 | + | self.position = self.position + derivative + (self.velocity * verlet.step_time ^ 2) |
815 | - | Shield2.TopSurface = "Smooth" |
815 | + | --[[local torsoP = torso.CFrame * CFrame.new(-1, 0, 0.5) |
816 | - | Shield2.BottomSurface = "Smooth" |
816 | + | local torsoE = torso.CFrame * CFrame.new(1, 0, 0.5) |
817 | - | Shield2.Size = Vector3.new(4,6,0.2) |
817 | + | local pointE = self.position + torso.CFrame.lookVector * 100 |
818 | - | Shield2.CanCollide = true |
818 | + | local doIntersect = intersect(vec2(torsoP.p), vec2(torsoE.p), vec2(self.position), vec2(pointE)) |
819 | - | Shield2.BrickColor = BrickColor.new("Cyan") |
819 | + | if not doIntersect then |
820 | - | Shield2 .FormFactor = "Custom" |
820 | + | self.postition = self.position - torso.CFrame.lookVector * 10 |
821 | - | Shield2.Transparency = 0 |
821 | + | end]] |
822 | end | |
823 | - | weld(char.Torso,Shield2,CFrame.new(0,0,0),CFrame.new(0, 0, -2)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
823 | + | |
824 | ||
825 | - | Shield1= Instance.new("Part",suit2) |
825 | + | function link:step() |
826 | - | Shield1.TopSurface = "Smooth" |
826 | + | for i = 1, 1 do |
827 | - | Shield1.BottomSurface = "Smooth" |
827 | + | local distance = self.point1.position - self.point2.position |
828 | - | Shield1.Size = Vector3.new(4,6,0.2) |
828 | + | local magnitude = distance.magnitude |
829 | - | Shield1.CanCollide = true |
829 | + | local differance = (self.length - magnitude) / magnitude |
830 | - | Shield1.BrickColor = BrickColor.new("Cyan") |
830 | + | local translation = ((self.point1.fixed or self.point2.fixed) and 1 or 0.6) * distance * differance |
831 | - | Shield1 .FormFactor = "Custom" |
831 | + | if not self.point1.fixed then |
832 | - | Shield1.Transparency = 0 |
832 | + | self.point1.position = self.point1.position + translation |
833 | end | |
834 | - | weld(char.Torso,Shield1,CFrame.new(0,0,0),CFrame.new(0, 0, 2)*CFrame.fromEulerAnglesXYZ(0, 0, 0),char,"Shield") |
834 | + | if not self.point2.fixed then |
835 | self.point2.position = self.point2.position - translation | |
836 | end | |
837 | - | for i = 1,10 do wait() |
837 | + | end |
838 | - | |
838 | + | |
839 | - | selectionBoxOfLeftLeg.Transparency = selectionBoxOfLeftLeg.Transparency - 0.1 |
839 | + | |
840 | - | selectionBoxOfLeftArm.Transparency = selectionBoxOfLeftArm.Transparency - 0.1 |
840 | + | function verlet.new(class, a, b, c) |
841 | - | selectionBoxOfRightLeg.Transparency = selectionBoxOfRightLeg.Transparency - 0.1 |
841 | + | if class == "Point" then |
842 | - | selectionBoxOfRightArm.Transparency = selectionBoxOfRightArm.Transparency - 0.1 |
842 | + | local new = {} |
843 | - | selectionBoxOfTorso.Transparency = selectionBoxOfTorso.Transparency - 0.1 |
843 | + | setmetatable(new, {__index = point}) |
844 | new.class = class | |
845 | - | Shield1.Transparency = Shield1.Transparency + 0.1 |
845 | + | new.position = a or Vector3.new() |
846 | - | Shield2.Transparency = Shield2.Transparency + 0.1 |
846 | + | new.last_position = new.position |
847 | - | Shield3.Transparency = Shield3.Transparency + 0.1 |
847 | + | new.velocity = verlet.gravity |
848 | - | Shield4.Transparency = Shield4.Transparency + 0.1 |
848 | + | new.fixed = false |
849 | - | Shield5.Transparency = Shield5.Transparency + 0.1 |
849 | + | return new |
850 | - | Shield6.Transparency = Shield6.Transparency + 0.1 |
850 | + | elseif class == "Link" then |
851 | local new = {} | |
852 | - | end |
852 | + | setmetatable(new, {__index = link}) |
853 | new.class = class | |
854 | - | function glowtouch(hit) |
854 | + | new.point1 = a |
855 | - | if ColorDebounce == false then |
855 | + | new.point2 = b |
856 | - | if ColorDebounce == true then return end |
856 | + | new.length = c or (a.position - b.position).magnitude |
857 | - | ColorDebounce = true |
857 | + | return new |
858 | - | |
858 | + | elseif class == "Rope" then |
859 | local new = {} | |
860 | - | if hit.Parent:findFirstChild("Humanoid") ~= nil then |
860 | + | setmetatable(new, {__index = link}) |
861 | - | |
861 | + | new.class = class |
862 | - | if hit.Parent.Name == char.Name then return end |
862 | + | new.start_point = a |
863 | new.finish_point = b | |
864 | - | Shield1.Transparency = 0.7 |
864 | + | new.points = {} |
865 | - | Shield2.Transparency = 0.7 |
865 | + | new.links = {} |
866 | - | Shield3.Transparency = 0.7 |
866 | + | local inc = (b - a) / 10 |
867 | - | Shield4.Transparency = 0.7 |
867 | + | for i = 0, 10 do |
868 | - | Shield5.Transparency = 0.7 |
868 | + | table.insert(new.points, verlet.new("Point", a + (i * inc))) |
869 | - | Shield6.Transparency = 0.7 |
869 | + | |
870 | for i = 2, #new.points do | |
871 | table.insert(new.links, verlet.new("Link", new.points[i - 1], new.points[i])) | |
872 | end | |
873 | return new | |
874 | - | for i = 1,6 do wait() |
874 | + | end |
875 | - | Shield1.Transparency = Shield1.Transparency + 0.05 |
875 | + | |
876 | - | Shield2.Transparency = Shield2.Transparency + 0.05 |
876 | + | |
877 | - | Shield3.Transparency = Shield3.Transparency + 0.05 |
877 | + | local tris = {} |
878 | - | Shield4.Transparency = Shield4.Transparency + 0.05 |
878 | + | local triParts = {} |
879 | - | Shield5.Transparency = Shield5.Transparency + 0.05 |
879 | + | |
880 | - | Shield6.Transparency = Shield6.Transparency + 0.05 |
880 | + | local function GetDiscoColor(hue) |
881 | local section = hue % 1 * 3 | |
882 | - | |
882 | + | local secondary = 0.5 * math.pi * (section % 1) |
883 | - | end |
883 | + | if section < 1 then |
884 | - | end |
884 | + | return Color3.new(255, 255, 255) |
885 | - | ColorDebounce = false |
885 | + | elseif section < 2 then |
886 | - | end |
886 | + | return Color3.new(255, 255, 255) |
887 | - | end |
887 | + | else |
888 | return Color3.new(255, 255, 255) | |
889 | - | Shield1.Touched:connect(glowtouch) |
889 | + | end |
890 | - | Shield2.Touched:connect(glowtouch) |
890 | + | |
891 | - | Shield3.Touched:connect(glowtouch) |
891 | + | |
892 | - | Shield4.Touched:connect(glowtouch) |
892 | + | local function setupPart(part) |
893 | - | Shield5.Touched:connect(glowtouch) |
893 | + | part.Anchored = true |
894 | - | Shield6.Touched:connect(glowtouch) |
894 | + | part.FormFactor = 3 |
895 | - | |
895 | + | part.CanCollide = false |
896 | - | Glow1 = Color3.new(0,225,225) |
896 | + | part.TopSurface = 10 |
897 | - | Glow2 = Color3.new(0,170,225) |
897 | + | part.BottomSurface = 10 |
898 | part.LeftSurface = 10 | |
899 | - | GlowParticle = Instance.new("ParticleEmitter",char.Torso) |
899 | + | part.RightSurface = 10 |
900 | - | GlowParticle.LightEmission = 1 |
900 | + | part.FrontSurface = 10 |
901 | - | GlowParticle.Color = ColorSequence.new(Glow1,Glow2) |
901 | + | part.BackSurface = 10 |
902 | - | GlowParticle.Size = NumberSequence.new(5,10) |
902 | + | part.Material = "Plastic" |
903 | - | GlowParticle.Texture = "http://www.roblox.com/asset/?id=243660373" |
903 | + | local m = Instance.new("SpecialMesh", part) |
904 | - | GlowParticle.Transparency = NumberSequence.new(.3,.8) |
904 | + | m.MeshType = "Wedge" |
905 | - | GlowParticle.LockedToPart = true |
905 | + | m.Scale = Vector3.new(0.2, 1, 1) |
906 | - | GlowParticle.Lifetime = NumberRange.new(2) |
906 | + | return part |
907 | - | GlowParticle.Rate= 10 |
907 | + | |
908 | - | GlowParticle.Speed =NumberRange.new(0) |
908 | + | |
909 | local function CFrameFromTopBack(at, top, back) | |
910 | - | for i = 1,10 do wait() |
910 | + | local right = top:Cross(back) |
911 | - | |
911 | + | return CFrame.new(at.x, at.y, at.z, right.x, top.x, back.x, right.y, top.y, back.y, right.z, top.z, back.z) |
912 | - | selectionBoxOfLeftLeg.Transparency = selectionBoxOfLeftLeg.Transparency + 0.1 |
912 | + | |
913 | - | selectionBoxOfLeftArm.Transparency = selectionBoxOfLeftArm.Transparency + 0.1 |
913 | + | |
914 | - | selectionBoxOfRightLeg.Transparency = selectionBoxOfRightLeg.Transparency + 0.1 |
914 | + | local function drawTri(parent, a, b, c) |
915 | - | selectionBoxOfRightArm.Transparency = selectionBoxOfRightArm.Transparency + 0.1 |
915 | + | local this = {} |
916 | - | selectionBoxOfTorso.Transparency = selectionBoxOfTorso.Transparency + 0.1 |
916 | + | local mPart1 = table.remove(triParts, 1) or setupPart(Instance.new("Part")) |
917 | local mPart2 = table.remove(triParts, 1) or setupPart(Instance.new("Part")) | |
918 | - | end |
918 | + | function this:Set(a, b, c) |
919 | - | selectionBoxOfLeftLeg:remove() |
919 | + | local ab, bc, ca = b-a, c-b, a-c |
920 | - | selectionBoxOfLeftArm:remove() |
920 | + | local abm, bcm, cam = ab.magnitude, bc.magnitude, ca.magnitude |
921 | - | selectionBoxOfRightLeg:remove() |
921 | + | local edg1 = math.abs(0.5 + ca:Dot(ab)/(abm*abm)) |
922 | - | selectionBoxOfRightArm:remove() |
922 | + | local edg2 = math.abs(0.5 + ab:Dot(bc)/(bcm*bcm)) |
923 | - | selectionBoxOfTorso:remove() |
923 | + | local edg3 = math.abs(0.5 + bc:Dot(ca)/(cam*cam)) |
924 | if edg1 < edg2 then | |
925 | if edg1 >= edg3 then | |
926 | - | enabled = true |
926 | + | a, b, c = c, a, b |
927 | - | ShieldDown = false |
927 | + | ab, bc, ca = ca, ab, bc |
928 | - | |
928 | + | abm = cam |
929 | - | end |
929 | + | end |
930 | else | |
931 | if edg2 < edg3 then | |
932 | - | function Stop() |
932 | + | a, b, c = b, c, a |
933 | ab, bc, ca = bc, ca, ab | |
934 | - | if berserkMode == true then return end |
934 | + | abm = bcm |
935 | else | |
936 | - | if enabled == false then return end |
936 | + | a, b, c = c, a, b |
937 | - | if enabled == true then |
937 | + | ab, bc, ca = ca, ab, bc |
938 | - | if enabled == false then return end |
938 | + | abm = cam |
939 | - | enabled = nil |
939 | + | end |
940 | - | GlowParticle:remove() |
940 | + | |
941 | ||
942 | local len1 = -ca:Dot(ab)/abm | |
943 | - | if ShieldDown == true then |
943 | + | local len2 = abm - len1 |
944 | - | shieldhumanoid:remove() |
944 | + | local width = (ca + ab.unit*len1).magnitude |
945 | ||
946 | - | if ShieldDown == false then |
946 | + | local maincf = CFrameFromTopBack(a, ab:Cross(bc).unit, -ab.unit) |
947 | - | Shield1:remove() |
947 | + | |
948 | - | Shield2:remove() |
948 | + | if len1 > 0.2 then |
949 | - | Shield3:remove() |
949 | + | mPart1.Parent = parent |
950 | - | Shield4:remove() |
950 | + | mPart1.Size = Vector3.new(0.2, width, len1) |
951 | - | Shield5:remove() |
951 | + | mPart1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2) |
952 | - | Shield6:remove() |
952 | + | else |
953 | - | shieldhumanoid:remove() |
953 | + | mPart1.Parent = nil |
954 | end | |
955 | ||
956 | - | |
956 | + | if len2 > 0.2 then |
957 | - | enabled = false |
957 | + | mPart2.Parent = parent |
958 | mPart2.Size = Vector3.new(0.2, width, len2) | |
959 | mPart2.CFrame = maincf*CFrame.Angles(math.pi,math.pi,-math.pi/2)*CFrame.new(0,width/2,-len1 - len2/2) | |
960 | else | |
961 | - | mouse.Button1Down:connect(function() |
961 | + | mPart2.Parent = nil |
962 | - | if enabled == false then return end |
962 | + | end |
963 | - | if enabled == true then |
963 | + | end |
964 | - | if vDebounce == false then |
964 | + | function this:SetProperty(prop, value) |
965 | - | vDebounce = true |
965 | + | mPart1[prop] = value |
966 | - | |
966 | + | mPart2[prop] = value |
967 | - | Slash2() |
967 | + | end |
968 | - | wait(0.5) |
968 | + | this:Set(a, b, c) |
969 | - | idle() |
969 | + | function this:Destroy() |
970 | mPart1:Destroy() | |
971 | - | idle() |
971 | + | mPart2:Destroy() |
972 | end | |
973 | - | vDebounce = false |
973 | + | this.p1 = mPart1 |
974 | this.p2 = mPart2 | |
975 | - | end |
975 | + | this.p1.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p1.CFrame.Y * 0.5 + time()))) |
976 | this.p2.BrickColor = BrickColor.new(GetDiscoColor(math.noise(0.5, 0.5, this.p2.CFrame.Y * 0.5 + time()))) | |
977 | return this | |
978 | end | |
979 | - | |
979 | + | |
980 | - | if key == "e" then |
980 | + | function verlet.draw(object, id) |
981 | - | if TKEnabled == true then |
981 | + | if object.class == "Point" then |
982 | - | if TKEnabled == false then return end |
982 | + | local part = parts[id] |
983 | - | if enabled == false then return end |
983 | + | part.BrickColor = BrickColor.new(255, 0, 0) |
984 | - | if enabled == true then |
984 | + | part.Transparency = 0 |
985 | - | if vDebounce == true then |
985 | + | part.formFactor = 3 |
986 | part.Anchored = true | |
987 | - | if selectionboxEnable == true then |
987 | + | part.CanCollide = false |
988 | - | coroutine.resume(coroutine.create(function() |
988 | + | part.TopSurface = 0 |
989 | - | for _,v in pairs(TKaffect:GetChildren()) do if v.ClassName=="Part" then |
989 | + | part.BottomSurface = 0 |
990 | - | |
990 | + | part.Size = Vector3.new(0.35, 0.35, 0.35) |
991 | - | v.TK:remove() |
991 | + | part.Material = "Plastic" |
992 | - | |
992 | + | part.CFrame = CFrame.new(object.position) |
993 | part.Parent = torso | |
994 | - | end |
994 | + | return part |
995 | elseif object.class == "Link" then | |
996 | - | wait(3) |
996 | + | local part = parts[id] |
997 | - | for _,v in pairs(TKaffect:GetChildren()) do if v.ClassName=="Part" then |
997 | + | local dist = (object.point1.position - object.point2.position).magnitude |
998 | - | |
998 | + | part.Size = Vector3.new(0.2, 0.2, dist) |
999 | - | v.TKeffectglow:Remove() |
999 | + | part.CFrame = CFrame.new(object.point1.position, object.point2.position) * CFrame.new(0, 0, dist * -0.5) |
1000 | - | |
1000 | + | part.Parent = torso |
1001 | return part | |
1002 | - | end |
1002 | + | end |
1003 | end | |
1004 | - | end)) |
1004 | + | |
1005 | - | vDebounce = false |
1005 | + | function verlet.clear() |
1006 | - | selectionboxEnable = false |
1006 | + | for _, v in pairs(workspace:GetChildren()) do |
1007 | - | end |
1007 | + | if v.Name == "Part" then |
1008 | - | |
1008 | + | v:Destroy() |
1009 | - | vDebounce = true |
1009 | + | |
1010 | - | alreadyHaveTK = false |
1010 | + | end |
1011 | - | TK:remove() |
1011 | + | |
1012 | - | TKmove:remove() |
1012 | + | |
1013 | - | pointGyro:remove() |
1013 | + | local points = {} |
1014 | - | TKEnabled = false |
1014 | + | local links = {} |
1015 | - | |
1015 | + | |
1016 | - | idle() |
1016 | + | for x = 0, 2 do |
1017 | points[x] = {} | |
1018 | - | idle() |
1018 | + | for y = 0, 3 do |
1019 | - | |
1019 | + | points[x][y] = verlet.new("Point", torso.Position + Vector3.new(x * 0.8 - 2, 2 - y * 0.8, 5 + y * 0.4)) |
1020 | - | |
1020 | + | points[x][y].fixed = y == 0 |
1021 | - | |
1021 | + | end |
1022 | - | |
1022 | + | |
1023 | - | |
1023 | + | |
1024 | - | vDebounce = false |
1024 | + | for x = 1, 2 do |
1025 | for y = 0, 3 do | |
1026 | links[#links + 1] = verlet.new("Link", points[x][y], points[x - 1][y], 1 + y * 0.08) | |
1027 | - | end |
1027 | + | end |
1028 | - | end |
1028 | + | |
1029 | - | |
1029 | + | |
1030 | - | |
1030 | + | for x = 0, 2 do |
1031 | for y = 1, 3 do | |
1032 | links[#links + 1] = verlet.new("Link", points[x][y], points[x][y - 1], 1.2 + y * 0.03) | |
1033 | end | |
1034 | end | |
1035 | - | if key =="m"then |
1035 | + | |
1036 | - | if musicDebounce == false then |
1036 | + | render:connect(function() |
1037 | - | if musicDebounce == true then return end |
1037 | + | for x = 0, 2 do |
1038 | - | musicDebounce = true |
1038 | + | for y = 0, 3 do |
1039 | if y == 0 then | |
1040 | - | PlaySound("Opening", 1, char, false,math.huge,true) |
1040 | + | points[x][y].position = (torso.CFrame * CFrame.new(x * 1 - 1, 1, 0.5)).p |
1041 | else | |
1042 | - | wait(90) |
1042 | + | points[x][y]:step() |
1043 | end | |
1044 | end | |
1045 | - | musicDebounce = false |
1045 | + | end |
1046 | - | end |
1046 | + | for i = 1, #links do |
1047 | links[i]:step() | |
1048 | end | |
1049 | - | if key == "e" then |
1049 | + | for i = 1, #tris do |
1050 | - | if enabled == false then return end |
1050 | + | triParts[#triParts + 1] = tris[i].p1 |
1051 | - | if enabled == true then |
1051 | + | triParts[#triParts + 1] = tris[i].p2 |
1052 | - | if vDebounce == false then |
1052 | + | end |
1053 | - | vDebounce = true |
1053 | + | tris = {} |
1054 | - | |
1054 | + | for x = 1, 2 do |
1055 | - | Slash3() |
1055 | + | for y = 1, 3 do |
1056 | - | |
1056 | + | tris[#tris + 1] = drawTri(torso, points[x - 1][y - 1].position, points[x - 1][y].position, points[x][y - 1].position) |
1057 | - | |
1057 | + | tris[#tris + 1] = drawTri(torso, points[x][y].position, points[x - 1][y].position, points[x][y - 1].position) |
1058 | - | |
1058 | + | |
1059 | - | |
1059 | + | end |
1060 | - | |
1060 | + | |
1061 | - | |
1061 | + | |
1062 | --/ edited by the cancerous rocky2u | |
1063 | - | end |
1063 | + | |
1064 | local plr = game.Players.LocalPlayer | |
1065 | - | |
1065 | + | local chr = plr.Character |
1066 | - | if key == "q" then |
1066 | + | local mouse = plr:GetMouse() |
1067 | - | if enabled == false then return end |
1067 | + | |
1068 | - | if enabled == true then |
1068 | + | _G.hotkey = 'e' |
1069 | - | if vDebounce == false then |
1069 | + | |
1070 | - | vDebounce = true |
1070 | + | |
1071 | if key == _G.hotkey then | |
1072 | - | |
1072 | + | local chr = game.Players.LocalPlayer.Character |
1073 | - | Slash1() |
1073 | + | stopAnimations() |
1074 | - | wait() |
1074 | + | chr.Animate.Disabled = true |
1075 | - | idle() |
1075 | + | chr.Torso["Left Shoulder"].C1 = CFrame.new(0, 0.699999988, 0, 0.939692616, 0, -0.342020124, -0.330366075, -0.258819044, -0.907673359, -0.0885213241, 0.965925813, -0.243210346) |
1076 | - | wait() |
1076 | + | chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.600000024, 0.5, -0.200000003, 0.664462984, 0.241844743, 0.707106769, -0.664462984, -0.241844788, 0.707106769, 0.342020154, -0.939692616, -3.09086197e-008) |
1077 | - | idle() |
1077 | + | chr.Torso["Neck"].C1 = CFrame.new(0, -0.600000024, 0, -0.866025388, 0.5, 0, -0.171010137, -0.29619807, 0.939692616, 0.469846278, 0.813797653, 0.342020124) |
1078 | - | |
1078 | + | end |
1079 | - | vDebounce = false |
1079 | + | |
1080 | - | end |
1080 | + | |
1081 | mouse.KeyUp:connect(function(key) | |
1082 | - | |
1082 | + | if key == _G.hotkey then |
1083 | - | |
1083 | + | local chr = game.Players.LocalPlayer.Character |
1084 | - | |
1084 | + | chr.Animate.Disabled = false |
1085 | chr.Torso["Left Shoulder"].C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
1086 | - | |
1086 | + | chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) |
1087 | - | if key == "p" then |
1087 | + | chr.Torso["Neck"].C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) |
1088 | end | |
1089 | - | if enabled == false then |
1089 | + | |
1090 | - | if enabled == true then return end |
1090 | + | |
1091 | function stopAnimations() | |
1092 | - | StartUp() |
1092 | + | for _,v in pairs(game.Players.LocalPlayer.Character.Humanoid:GetPlayingAnimationTracks()) do |
1093 | v:Stop() | |
1094 | - | elseif enabled == true then |
1094 | + | end |
1095 | - | if enabled == false then return end |
1095 | + | end |