SHOW:
|
|
- or go back to the newest paste.
| 1 | -- that's right get no scoped ^^ | |
| 2 | p = game.Players.LocalPlayer | |
| 3 | char = p.Character | |
| 4 | des = false | |
| 5 | fling = true | |
| 6 | dot = false | |
| 7 | falling = false | |
| 8 | jump = true | |
| 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 | wait()shirt = Instance.new("Shirt", char)
| |
| 13 | shirt.Name = "Shirt" | |
| 14 | pants = Instance.new("Pants", char)
| |
| 15 | pants.Name = "Pants" | |
| 16 | ||
| 17 | char.Shirt.ShirtTemplate = "http://www.roblox.com/asset/?id=335466631" | |
| 18 | char.Pants.PantsTemplate = "http://www.roblox.com/asset/?id=400416371" | |
| 19 | tp = true | |
| 20 | shoot = true | |
| 21 | hum = char.Humanoid | |
| 22 | punch = true | |
| 23 | neckp = char.Torso.Neck.C0 | |
| 24 | neck = char.Torso.Neck | |
| 25 | hum.MaxHealth = 9e999 | |
| 26 | wait() | |
| 27 | hum.Health =hum.MaxHealth | |
| 28 | des = false | |
| 29 | root=char.HumanoidRootPart | |
| 30 | torso = char.Torso | |
| 31 | char.Head.face.Texture = "rbxassetid://332768867" | |
| 32 | local ChatService = game:GetService("Chat")
| |
| 33 | local player = game.Players.LocalPlayer | |
| 34 | lig = Instance.new("PointLight",player.Character.Torso)
| |
| 35 | lig.Color=Color3.new(255,0,0) | |
| 36 | m=player:GetMouse() | |
| 37 | bb = Instance.new("BillboardGui",player.Character.Head)
| |
| 38 | bb.Enabled = true | |
| 39 | function newRay(start,face,range,wat) | |
| 40 | local rey=Ray.new(start.p,(face.p-start.p).Unit*range) | |
| 41 | hit,pos=Workspace:FindPartOnRayWithIgnoreList(rey,wat) | |
| 42 | return rey,hit,pos | |
| 43 | end | |
| 44 | aa1={}
| |
| 45 | torso=game.Players.LocalPlayer.Character.Torso | |
| 46 | ||
| 47 | local WorldUp = Vector3.new(0,1,0) | |
| 48 | function look2(Vec1,Vec2) | |
| 49 | local Orig = Vec1 | |
| 50 | Vec1 = Vec1+Vector3.new(0,1,0) | |
| 51 | Vec2 = Vec2+Vector3.new(0,1,0) | |
| 52 | local Forward = (Vec2-Vec1).unit | |
| 53 | local Up = (WorldUp-WorldUp:Dot(Forward)*Forward).unit | |
| 54 | local Right = Up:Cross(Forward).unit | |
| 55 | Forward = -Forward | |
| 56 | Right = -Right | |
| 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 | end | |
| 59 | ||
| 60 | function look(CFr,Vec2) | |
| 61 | local A = Vector3.new(0,0,0) | |
| 62 | local B = CFr:inverse()*Vec2 | |
| 63 | local CF = look2(A,Vector3.new(A.X,B.Y,B.Z)) | |
| 64 | if B.Z > 0 then | |
| 65 | CF = CFr*(CF*CFrame.Angles(0,0,math.pi)) | |
| 66 | elseif B.Z == 0 then | |
| 67 | if B.Y > 0 then | |
| 68 | CF = CFr*CFrame.Angles(math.pi/2,0,0) | |
| 69 | elseif B.Y < 0 then | |
| 70 | CF = CFr*CFrame.Angles(-math.pi/2,0,0) | |
| 71 | else | |
| 72 | CF = CFr | |
| 73 | end | |
| 74 | end | |
| 75 | local _,_,_,_,X,_,_,Y,_,_,Z,_ = CF:components() | |
| 76 | local Up = Vector3.new(X,Y,Z) | |
| 77 | local Forward = (Vec2-CFr.p).unit | |
| 78 | local Right = Up:Cross(Forward) | |
| 79 | Forward = -Forward | |
| 80 | Right = -Right | |
| 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 | end | |
| 83 | ||
| 84 | function simulate(j,d,m,r,t) | |
| 85 | local joint = j | |
| 86 | for i,v in ipairs(t) do | |
| 87 | if v[1]:FindFirstChild("Weld") then
| |
| 88 | local stiff = m.CFrame.lookVector*0.03 | |
| 89 | if i > 1 then joint = t[i-1][1].CFrame*CFrame.new(0,0,d*.5) end | |
| 90 | local dir = (v[2].p-(joint.p+Vector3.new(0,0.2,0)+stiff)).unit | |
| 91 | local dis = (v[2].p-(joint.p+Vector3.new(0,0.2,0)+stiff)).magnitude | |
| 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 | local inv = v[1].Weld.Part0.CFrame | |
| 95 | local rel1 = inv:inverse()*pos | |
| 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 | v[2] = inv*cf | |
| 100 | --v[1].CFrame = cf | |
| 101 | end | |
| 102 | end | |
| 103 | end | |
| 104 | ||
| 105 | game:service"RunService".Stepped:connect(function() | |
| 106 | simulate(torso.CFrame*CFrame.new(0,0.9,.5),.6,torso,Vector3.new(),aa1) | |
| 107 | end) | |
| 108 | bb.AlwaysOnTop = true | |
| 109 | bb.Size = UDim2.new(0,200,0,50) | |
| 110 | bb.StudsOffset = Vector3.new(0,1,0) | |
| 111 | gui=Instance.new("TextBox",bb)
| |
| 112 | gui.Text = "* " | |
| 113 | gui.Size = UDim2.new(0,133,0,45) | |
| 114 | gui.Position=UDim2.new(0,57,0,-40) | |
| 115 | gui.TextColor3 = Color3.new(255,255,255) | |
| 116 | gui.BackgroundColor3=Color3.new(0,0,0) | |
| 117 | gui.TextWrapped = true | |
| 118 | gui.TextScaled = true | |
| 119 | gui.TextXAlignment = "Left" | |
| 120 | gui.TextYAlignment = "Top" | |
| 121 | gui.Visible = false | |
| 122 | gui.BorderColor3 = Color3.new(0,0,0) | |
| 123 | punch2 = true | |
| 124 | gui1=Instance.new("TextButton",bb)
| |
| 125 | gui1.Position=UDim2.new(0,5,0,-43) | |
| 126 | gui1.Size = UDim2.new(0,190,0,51) | |
| 127 | ||
| 128 | gui1.TextColor3 = Color3.new(255,255,255) | |
| 129 | gui1.BackgroundColor3=Color3.new(255,255,255) | |
| 130 | jump2 = true | |
| 131 | gui1.Visible = false | |
| 132 | img = Instance.new("ImageLabel",bb)
| |
| 133 | img.Size = UDim2.new(0,46,0,47) | |
| 134 | img.Position = UDim2.new(0,10,0,-41) | |
| 135 | img.Image = "rbxassetid://447301252" | |
| 136 | img.BorderColor3 = Color3.new(0,0,0) | |
| 137 | img.Visible = false | |
| 138 | soka = Instance.new("Sound",char)
| |
| 139 | soka.SoundId = "http://www.roblox.com/asset/?id = 447199232" | |
| 140 | soka.Volume = 1 | |
| 141 | boom = Instance.new("Sound",char)
| |
| 142 | boom.SoundId = "http://www.roblox.com/asset/?id = 447041606" | |
| 143 | boom.Volume = 1 | |
| 144 | boom2 = Instance.new("Sound",char)
| |
| 145 | boom2.SoundId = "http://www.roblox.com/asset/?id = 449025737" | |
| 146 | boom2.Volume = 1 | |
| 147 | boom3 = Instance.new("Sound",char)
| |
| 148 | boom3.SoundId = "http://www.roblox.com/asset/?id = 450719019" | |
| 149 | boom3.Volume = 1 | |
| 150 | tps = Instance.new("Sound",char)
| |
| 151 | tps.SoundId = "http://www.roblox.com/asset/?id = 449860746" | |
| 152 | tps.Volume = 1 | |
| 153 | asd = Instance.new("Sound",char)
| |
| 154 | asd.SoundId = "http://www.roblox.com/asset/?id = 447310433" | |
| 155 | asd.Volume =1 | |
| 156 | asd1 = Instance.new("Sound",char)
| |
| 157 | asd1.SoundId = "http://www.roblox.com/asset/?id = 358280695" | |
| 158 | ||
| 159 | asd2 = Instance.new("Sound",char)
| |
| 160 | asd2.SoundId = "http://www.roblox.com/asset/?id = 386713054" | |
| 161 | asd2.Looped = true | |
| 162 | asd2.Volume = 5 | |
| 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 | asd4.SoundId = "http://www.roblox.com/asset/?id = 401258325" | |
| 168 | asd4.Looped = true | |
| 169 | asd5 = Instance.new("Sound",char)
| |
| 170 | asd5.SoundId = "http://www.roblox.com/asset/?id = 362252261" | |
| 171 | asd5.Looped = true | |
| 172 | gas = Instance.new("Sound",char)
| |
| 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 | asd6.Looped = true | |
| 177 | function play(play) | |
| 178 | asd:Play() | |
| 179 | wait(0.05) | |
| 180 | --asd1:Play() | |
| 181 | end | |
| 182 | ||
| 183 | ||
| 184 | ||
| 185 | ------------ | |
| 186 | ------------------------- | |
| 187 | ||
| 188 | function stream(origin,dir,length,size) | |
| 189 | local parts = {}
| |
| 190 | for i = 1,length do | |
| 191 | local p = Instance.new("Part",char)
| |
| 192 | p.Anchored = true | |
| 193 | p.Transparency = 0.5 | |
| 194 | p.TopSurface = 0 | |
| 195 | p.BottomSurface = 0 | |
| 196 | p.CanCollide = false | |
| 197 | p.BrickColor = BrickColor.new("Institutional white")
| |
| 198 | p.Size = Vector3.new(10,30,10) -- for now | |
| 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 | game:GetService("Debris"):AddItem(p,3)
| |
| 202 | end | |
| 203 | Spawn(function() | |
| 204 | while parts do | |
| 205 | for i,v in pairs(parts) do | |
| 206 | if v[1].Parent == char then | |
| 207 | v[1].CFrame = v[1].CFrame*v[2] | |
| 208 | else | |
| 209 | parts = nil | |
| 210 | break | |
| 211 | end | |
| 212 | end | |
| 213 | wait(0.02) | |
| 214 | end | |
| 215 | end) | |
| 216 | end | |
| 217 | ||
| 218 | --[[-- listen for their chatting | |
| 219 | player.Chatted:connect(function(message) | |
| 220 | a = string.len(message) | |
| 221 | gui.Text = "" | |
| 222 | gui.Visible = true | |
| 223 | gui1.Visible = true | |
| 224 | des = false | |
| 225 | img.Visible = true | |
| 226 | print(a) | |
| 227 | if dot == false then | |
| 228 | gui.Text = "" | |
| 229 | for i = 1,string.len(message) do | |
| 230 | gui.Text =gui.Text..message:sub(i,i) | |
| 231 | play() | |
| 232 | ||
| 233 | end | |
| 234 | end | |
| 235 | ||
| 236 | ||
| 237 | des = true | |
| 238 | end)]]-- | |
| 239 | m.KeyDown:connect(function(k) | |
| 240 | if k == "g" then | |
| 241 | asd2:Play() | |
| 242 | ||
| 243 | ||
| 244 | end | |
| 245 | end) | |
| 246 | ||
| 247 | m.KeyDown:connect(function(k) | |
| 248 | if k == "r" then | |
| 249 | ||
| 250 | asd4:Play() | |
| 251 | end | |
| 252 | end) | |
| 253 | m.KeyDown:connect(function(k) | |
| 254 | if k == "q" then | |
| 255 | ||
| 256 | asd3:Play() | |
| 257 | end | |
| 258 | end) | |
| 259 | m.KeyDown:connect(function(k) | |
| 260 | if k == "z" then | |
| 261 | img.Image = "rbxassetid://332766052" | |
| 262 | ||
| 263 | end | |
| 264 | end) | |
| 265 | m.KeyDown:connect(function(k) | |
| 266 | if k == "c" then | |
| 267 | img.Image = "rbxassetid://447301252" | |
| 268 | ||
| 269 | end | |
| 270 | end) | |
| 271 | m.KeyDown:connect(function(k) | |
| 272 | if k == "b" then | |
| 273 | ||
| 274 | asd6:Play() | |
| 275 | end | |
| 276 | end) | |
| 277 | mouse = p:GetMouse() | |
| 278 | m.KeyDown:connect(function(k) | |
| 279 | if k:byte() == 48 then | |
| 280 | ||
| 281 | hum.WalkSpeed = 100 | |
| 282 | end | |
| 283 | end) | |
| 284 | m.KeyDown:connect(function(k) | |
| 285 | if k:byte() == 50 then | |
| 286 | ||
| 287 | soka:Play() | |
| 288 | end | |
| 289 | end) | |
| 290 | m.KeyDown:connect(function(k) | |
| 291 | if k:byte() == 52 then | |
| 292 | ||
| 293 | char.Head.face.Texture = "rbxassetid://444037452" | |
| 294 | end | |
| 295 | end) | |
| 296 | m.KeyDown:connect(function(k) | |
| 297 | if k:byte() == 51 then | |
| 298 | ||
| 299 | char.Head.face.Texture = "rbxassetid://332768867" | |
| 300 | end | |
| 301 | end) | |
| 302 | m.KeyUp:connect(function(k) | |
| 303 | if k:byte() == 48 then | |
| 304 | ||
| 305 | hum.WalkSpeed = 16 | |
| 306 | end | |
| 307 | end) | |
| 308 | p.Chatted:connect(function(m) | |
| 309 | if m == "Okay." then | |
| 310 | soka:Play() | |
| 311 | end | |
| 312 | end) | |
| 313 | m.KeyDown:connect(function(k) | |
| 314 | if k == "x" then | |
| 315 | if des == true then | |
| 316 | gui.Visible = false | |
| 317 | gui.Text = "* " | |
| 318 | gui1.Visible = false | |
| 319 | img.Visible = false | |
| 320 | end | |
| 321 | end | |
| 322 | end) | |
| 323 | m.KeyDown:connect(function(key) | |
| 324 | if key == "j" then | |
| 325 | if tp == true then | |
| 326 | tp = false | |
| 327 | tps:Play() | |
| 328 | char.Head.face.Parent = game.Lighting | |
| 329 | for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 1
| |
| 330 | end | |
| 331 | ||
| 332 | end | |
| 333 | wait(0.5) | |
| 334 | for i,v in pairs(char:GetChildren()) do if v:IsA("Part") then v.Transparency = 0
| |
| 335 | end | |
| 336 | ||
| 337 | end | |
| 338 | char.HumanoidRootPart.CFrame = mouse.Hit * CFrame.new(0, 3, 0) | |
| 339 | char.HumanoidRootPart.Transparency = 1 | |
| 340 | game.Lighting.face.Parent = char.Head | |
| 341 | wait(0.2) | |
| 342 | ||
| 343 | tp = true | |
| 344 | ||
| 345 | ||
| 346 | end | |
| 347 | end | |
| 348 | end) | |
| 349 | ||
| 350 | ||
| 351 | m.KeyDown:connect(function(key) | |
| 352 | if key == "t" then | |
| 353 | if punch2 == true then | |
| 354 | punch2 = false | |
| 355 | punch = false | |
| 356 | ||
| 357 | local ChatService = game:GetService("Chat")
| |
| 358 | ||
| 359 | neck.C0 = neck.C0 * CFrame.Angles(0.3,0,0) | |
| 360 | ChatService:Chat(char.Head, "Mind if I get Serious?") | |
| 361 | wait(1) | |
| 362 | local ChatService = game:GetService("Chat")
| |
| 363 | ||
| 364 | ||
| 365 | ChatService:Chat(char.Head ,"Killer Move: Serious Series...") | |
| 366 | wait(1) | |
| 367 | local ChatService = game:GetService("Chat")
| |
| 368 | ||
| 369 | ||
| 370 | ChatService:Chat(char.Head, "SERIOUS PUNCH.") | |
| 371 | neck.C0 = neckp | |
| 372 | wait(0.6) | |
| 373 | org = char.Torso["Left Shoulder"].C0 | |
| 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 | killbrick2 = Instance.new("Part",char)
| |
| 377 | killbrick2.Size = Vector3.new(150,80,9000) | |
| 378 | killbrick2.Transparency = 1 | |
| 379 | ||
| 380 | killbrick2.CanCollide = true | |
| 381 | wait(0.1) | |
| 382 | killbrick2.CanCollide = false | |
| 383 | ||
| 384 | killbrick2.Anchored = true | |
| 385 | ||
| 386 | killbrick2.CFrame = char.Torso.CFrame * CFrame.new(0,0,-1005) | |
| 387 | ||
| 388 | killbrick2.Touched:connect(function(h) | |
| 389 | local x = h.Parent:FindFirstChild("Humanoid")
| |
| 390 | if x then | |
| 391 | if x.Parent.Name == game.Players.LocalPlayer.Name then | |
| 392 | safe = true | |
| 393 | else safe = false | |
| 394 | end | |
| 395 | if x then | |
| 396 | if safe == false then | |
| 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 | boom:Play() | |
| 400 | bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0) | |
| 401 | ||
| 402 | ||
| 403 | wait(0.2) | |
| 404 | x.Parent:BreakJoints() | |
| 405 | wait() | |
| 406 | safe = true | |
| 407 | end | |
| 408 | end | |
| 409 | end | |
| 410 | end) | |
| 411 | ||
| 412 | ||
| 413 | ||
| 414 | ||
| 415 | ||
| 416 | ||
| 417 | ||
| 418 | ||
| 419 | local rng = Instance.new("Part", char)
| |
| 420 | rng.Anchored = true | |
| 421 | rng.BrickColor = BrickColor.new("Institutional white")
| |
| 422 | rng.CanCollide = false | |
| 423 | rng.FormFactor = 3 | |
| 424 | rng.Name = "Ring" | |
| 425 | rng.Size = Vector3.new(1, 1, 1) | |
| 426 | rng.Transparency = 0.8 | |
| 427 | rng.TopSurface = 0 | |
| 428 | rng.BottomSurface = 0 | |
| 429 | rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,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 | local rngm = Instance.new("SpecialMesh", rng)
| |
| 433 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
| 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 | rng1.CanCollide = false | |
| 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 | rng1.BottomSurface = 0 | |
| 445 | rng1.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) | |
| 446 | --rng1.Rotation = Vector3.new(math.pi/2,0,0) | |
| 447 | rng1.CFrame = rng1.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) | |
| 448 | local rngm1 = Instance.new("SpecialMesh", rng1)
| |
| 449 | rngm1.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
| 450 | rngm1.Scale = Vector3.new(1, 1.3, 2) | |
| 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 | local rng2 = Instance.new("Part", char)
| |
| 458 | rng2.Anchored = true | |
| 459 | rng2.BrickColor = BrickColor.new("Institutional white")
| |
| 460 | rng2.CanCollide = false | |
| 461 | rng2.FormFactor = 3 | |
| 462 | rng2.Name = "Ring" | |
| 463 | rng2.Size = Vector3.new(1, 1, 1) | |
| 464 | rng2.Transparency = 0.8 | |
| 465 | rng2.TopSurface = 0 | |
| 466 | rng2.BottomSurface = 0 | |
| 467 | rng2.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) | |
| 468 | --rng1.Rotation = Vector3.new(math.pi/2,0,0) | |
| 469 | rng2.CFrame = rng2.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) | |
| 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 | wait(0.1) | |
| 474 | ||
| 475 | boom3:Play() | |
| 476 | coroutine.wrap(function() | |
| 477 | for i = 1, 35, 0.5 do | |
| 478 | ||
| 479 | ||
| 480 | ||
| 481 | ||
| 482 | ||
| 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 | rngm2.Scale = Vector3.new(50 + i*2, 10 + i*2, 1.2+ i*4) | |
| 486 | ||
| 487 | wait() | |
| 488 | end | |
| 489 | wait() | |
| 490 | rng:Destroy() | |
| 491 | rng1:Destroy() | |
| 492 | rng2:Destroy() | |
| 493 | killbrick2:Remove() | |
| 494 | wait(0.5) | |
| 495 | char.Torso["Left Shoulder"].C0 = org | |
| 496 | wait(1) | |
| 497 | punch2 = true | |
| 498 | punch = true | |
| 499 | wait() | |
| 500 | ||
| 501 | ||
| 502 | end)() | |
| 503 | ||
| 504 | ||
| 505 | ||
| 506 | end | |
| 507 | ||
| 508 | ||
| 509 | wait(.1) | |
| 510 | ||
| 511 | ||
| 512 | end | |
| 513 | end) | |
| 514 | ||
| 515 | ||
| 516 | ||
| 517 | ||
| 518 | ||
| 519 | m.KeyDown:connect(function(key) | |
| 520 | if key == "k" then | |
| 521 | if punch == true then | |
| 522 | punch = false | |
| 523 | ||
| 524 | local ChatService = game:GetService("Chat")
| |
| 525 | ||
| 526 | ||
| 527 | ChatService:Chat(char.Head ,"Normal Punch") | |
| 528 | wait(1) | |
| 529 | org = char.Torso["Left Shoulder"].C0 | |
| 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 | killbrick.Transparency = 1 | |
| 534 | killbrick:BreakJoints() | |
| 535 | killbrick.CanCollide = false | |
| 536 | local wel = Instance.new("Weld",killbrick)
| |
| 537 | wel.Part0 = killbrick | |
| 538 | wel.Part1 = char["Left Arm"] | |
| 539 | wel.C0 = CFrame.new(0,1,0) | |
| 540 | force = 90 | |
| 541 | ||
| 542 | killbrick.Touched:connect(function(h) | |
| 543 | local x = h.Parent.Humanoid | |
| 544 | if x.Health >= 6000 then | |
| 545 | fling = false | |
| 546 | end | |
| 547 | if x.Health < 6000 then | |
| 548 | fling = true | |
| 549 | end | |
| 550 | local stop = h.Parent.Torso.Velocity | |
| 551 | if x.Parent.Name == game.Players.LocalPlayer.Name then | |
| 552 | safe = true | |
| 553 | else safe = false | |
| 554 | end | |
| 555 | if x then | |
| 556 | if safe == false then | |
| 557 | if fling == true then | |
| 558 | force = 900 | |
| 559 | ||
| 560 | end | |
| 561 | if fling == false then | |
| 562 | force = 200 | |
| 563 | end | |
| 564 | ||
| 565 | ||
| 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 | boom:Play() | |
| 569 | bodyforc.force = Vector3.new(0, h.Parent.Torso:GetMass() * 196.1, 0) | |
| 570 | ||
| 571 | ||
| 572 | wait(0.2) | |
| 573 | x:TakeDamage(500) | |
| 574 | wait() | |
| 575 | safe = true | |
| 576 | bodyforc:Remove() | |
| 577 | h.Parent.Torso.Velocity = stop | |
| 578 | ||
| 579 | end | |
| 580 | end | |
| 581 | end) | |
| 582 | ||
| 583 | ||
| 584 | ||
| 585 | ||
| 586 | ||
| 587 | ||
| 588 | ||
| 589 | ||
| 590 | ||
| 591 | ||
| 592 | local rng = Instance.new("Part", char)
| |
| 593 | rng.Anchored = true | |
| 594 | rng.BrickColor = BrickColor.new("Institutional white")
| |
| 595 | rng.CanCollide = false | |
| 596 | rng.FormFactor = 3 | |
| 597 | rng.Name = "Ring" | |
| 598 | rng.Size = Vector3.new(1, 1, 1) | |
| 599 | rng.Transparency = 0.8 | |
| 600 | rng.TopSurface = 0 | |
| 601 | rng.BottomSurface = 0 | |
| 602 | rng.CFrame = char["Left Arm"].CFrame * CFrame.new(0,-2,0) | |
| 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 | local rngm = Instance.new("SpecialMesh", rng)
| |
| 606 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
| 607 | rngm.Scale = Vector3.new(1, 1.3, 2) | |
| 608 | wait(0.1) | |
| 609 | ||
| 610 | boom2:Play() | |
| 611 | coroutine.wrap(function() | |
| 612 | for i = 1, 10, .4 do | |
| 613 | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 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 | ||
| 624 | punch = true | |
| 625 | wait() | |
| 626 | end)() | |
| 627 | ||
| 628 | ||
| 629 | ||
| 630 | end | |
| 631 | ||
| 632 | ||
| 633 | wait(.1) | |
| 634 | ||
| 635 | ||
| 636 | end | |
| 637 | end) | |
| 638 | ||
| 639 | ||
| 640 | ||
| 641 | ||
| 642 | ||
| 643 | ||
| 644 | ||
| 645 | ||
| 646 | ||
| 647 | ||
| 648 | ||
| 649 | ||
| 650 | ||
| 651 | ||
| 652 | m.KeyDown:connect(function(key) | |
| 653 | if key == "m" then | |
| 654 | if jump == true then | |
| 655 | jump = false | |
| 656 | ||
| 657 | ||
| 658 | local rng = Instance.new("Part", char)
| |
| 659 | rng.Anchored = true | |
| 660 | rng.BrickColor = BrickColor.new("Institutional white")
| |
| 661 | rng.CanCollide = false | |
| 662 | rng.FormFactor = 3 | |
| 663 | rng.Name = "Ring" | |
| 664 | rng.Size = Vector3.new(1, 1, 1) | |
| 665 | rng.Transparency = 0.35 | |
| 666 | rng.TopSurface = 0 | |
| 667 | rng.BottomSurface = 0 | |
| 668 | rng.Position = torso.Position - Vector3.new(0,2,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 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
| 672 | rngm.Scale = Vector3.new(1, 1.3, 2) | |
| 673 | wait(0.1) | |
| 674 | BV = Instance.new("BodyVelocity", torso)
| |
| 675 | BV.maxForce = Vector3.new(0,20000,0) | |
| 676 | BV.P = 1000 | |
| 677 | BV.velocity = Vector3.new(0,100,0) | |
| 678 | boom:Play() | |
| 679 | coroutine.wrap(function() | |
| 680 | for i = 1, 60, 2 do | |
| 681 | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1) | |
| 682 | rng.Transparency = i/60 | |
| 683 | wait() | |
| 684 | end | |
| 685 | wait() | |
| 686 | rng:Destroy() | |
| 687 | ||
| 688 | hum.WalkSpeed = 50 | |
| 689 | wait(1) | |
| 690 | ||
| 691 | for i,v in pairs(torso:GetChildren()) do if v:IsA("BodyVelocity") then
| |
| 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 | end end | |
| 694 | wait() | |
| 695 | end)() | |
| 696 | ||
| 697 | ||
| 698 | ||
| 699 | end | |
| 700 | ||
| 701 | ||
| 702 | wait(.1) | |
| 703 | ||
| 704 | ||
| 705 | end | |
| 706 | end) | |
| 707 | ||
| 708 | ||
| 709 | ||
| 710 | ||
| 711 | ||
| 712 | ||
| 713 | m.KeyDown:connect(function(key) | |
| 714 | if key == "n" then | |
| 715 | ||
| 716 | if falling == true then | |
| 717 | falling = false | |
| 718 | if jumping2 == true then | |
| 719 | jumping2 = false | |
| 720 | jump = false | |
| 721 | BV = Instance.new("BodyVelocity", torso)
| |
| 722 | BV.maxForce = Vector3.new(0,-20000,0) | |
| 723 | BV.P = -1000 | |
| 724 | BV.velocity = Vector3.new(0,-70,0) | |
| 725 | wait(0.6) | |
| 726 | local rng = Instance.new("Part", char)
| |
| 727 | rng.Anchored = true | |
| 728 | rng.BrickColor = BrickColor.new("Institutional white")
| |
| 729 | rng.CanCollide = false | |
| 730 | rng.FormFactor = 3 | |
| 731 | rng.Name = "Ring" | |
| 732 | rng.Size = Vector3.new(1, 1, 1) | |
| 733 | rng.Transparency = 0.35 | |
| 734 | rng.TopSurface = 0 | |
| 735 | rng.BottomSurface = 0 | |
| 736 | rng.Position = torso.Position - Vector3.new(0,2,0) | |
| 737 | rng.CFrame = rng.CFrame * CFrame.Angles(math.rad(90), math.rad(0), math.rad(0)) | |
| 738 | local rngm = Instance.new("SpecialMesh", rng)
| |
| 739 | rngm.MeshId = "http://www.roblox.com/asset/?id=3270017" | |
| 740 | rngm.Scale = Vector3.new(1, 1.3, 2) | |
| 741 | ||
| 742 | ||
| 743 | boom:Play() | |
| 744 | coroutine.wrap(function() | |
| 745 | for i = 1, 60, 2 do | |
| 746 | rngm.Scale = Vector3.new(2 + i*2, 2 + i*2, 1) | |
| 747 | rng.Transparency = i/60 | |
| 748 | wait() | |
| 749 | end | |
| 750 | wait() | |
| 751 | rng:Destroy() | |
| 752 | ||
| 753 | ||
| 754 | ||
| 755 | ||
| 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 | wait() | |
| 760 | end)() | |
| 761 | ||
| 762 | ||
| 763 | ||
| 764 | end | |
| 765 | ||
| 766 | ||
| 767 | wait(.1) | |
| 768 | ||
| 769 | end | |
| 770 | end | |
| 771 | end) | |
| 772 | m.KeyDown:connect(function(k) | |
| 773 | if k == "f" then | |
| 774 | asd3:Stop() | |
| 775 | asd2:Stop() | |
| 776 | asd4:Stop() | |
| 777 | asd6:Stop() | |
| 778 | asd5:Stop() | |
| 779 | end | |
| 780 | end) | |
| 781 | ------------ | |
| 782 | ||
| 783 | local verlet = {}
| |
| 784 | verlet.step_time = 1 / 50 | |
| 785 | verlet.gravity = Vector3.new(0, -10, 0) | |
| 786 | ||
| 787 | local char = game.Players.LocalPlayer.Character | |
| 788 | local torso = char:WaitForChild("Torso")
| |
| 789 | local parts = {}
| |
| 790 | local render = game:GetService("RunService").RenderStepped
| |
| 791 | ||
| 792 | wait(2) | |
| 793 | ||
| 794 | local point = {}
| |
| 795 | local link = {}
| |
| 796 | local rope = {}
| |
| 797 | ||
| 798 | local function ccw(A,B,C) | |
| 799 | return (C.y-A.y) * (B.x-A.x) > (B.y-A.y) * (C.x-A.x) | |
| 800 | end | |
| 801 | ||
| 802 | local function intersect(A,B,C,D) | |
| 803 | return ccw(A,C,D) ~= ccw(B,C,D) and ccw(A,B,C) ~= ccw(A,B,D) | |
| 804 | end | |
| 805 | ||
| 806 | local function vec2(v) | |
| 807 | return Vector2.new(v.x, v.z) | |
| 808 | end | |
| 809 | ||
| 810 | function point:step() | |
| 811 | if not self.fixed then | |
| 812 | local derivative = (self.position - self.last_position) * 0.95 | |
| 813 | self.last_position = self.position | |
| 814 | self.position = self.position + derivative + (self.velocity * verlet.step_time ^ 2) | |
| 815 | --[[local torsoP = torso.CFrame * CFrame.new(-1, 0, 0.5) | |
| 816 | local torsoE = torso.CFrame * CFrame.new(1, 0, 0.5) | |
| 817 | local pointE = self.position + torso.CFrame.lookVector * 100 | |
| 818 | local doIntersect = intersect(vec2(torsoP.p), vec2(torsoE.p), vec2(self.position), vec2(pointE)) | |
| 819 | if not doIntersect then | |
| 820 | self.postition = self.position - torso.CFrame.lookVector * 10 | |
| 821 | end]] | |
| 822 | end | |
| 823 | end | |
| 824 | ||
| 825 | function link:step() | |
| 826 | for i = 1, 1 do | |
| 827 | local distance = self.point1.position - self.point2.position | |
| 828 | local magnitude = distance.magnitude | |
| 829 | local differance = (self.length - magnitude) / magnitude | |
| 830 | local translation = ((self.point1.fixed or self.point2.fixed) and 1 or 0.6) * distance * differance | |
| 831 | if not self.point1.fixed then | |
| 832 | self.point1.position = self.point1.position + translation | |
| 833 | end | |
| 834 | if not self.point2.fixed then | |
| 835 | self.point2.position = self.point2.position - translation | |
| 836 | end | |
| 837 | end | |
| 838 | end | |
| 839 | ||
| 840 | function verlet.new(class, a, b, c) | |
| 841 | if class == "Point" then | |
| 842 | local new = {}
| |
| 843 | setmetatable(new, {__index = point})
| |
| 844 | new.class = class | |
| 845 | new.position = a or Vector3.new() | |
| 846 | new.last_position = new.position | |
| 847 | new.velocity = verlet.gravity | |
| 848 | new.fixed = false | |
| 849 | return new | |
| 850 | elseif class == "Link" then | |
| 851 | local new = {}
| |
| 852 | setmetatable(new, {__index = link})
| |
| 853 | new.class = class | |
| 854 | new.point1 = a | |
| 855 | new.point2 = b | |
| 856 | new.length = c or (a.position - b.position).magnitude | |
| 857 | return new | |
| 858 | elseif class == "Rope" then | |
| 859 | local new = {}
| |
| 860 | setmetatable(new, {__index = link})
| |
| 861 | new.class = class | |
| 862 | new.start_point = a | |
| 863 | new.finish_point = b | |
| 864 | new.points = {}
| |
| 865 | new.links = {}
| |
| 866 | local inc = (b - a) / 10 | |
| 867 | for i = 0, 10 do | |
| 868 | table.insert(new.points, verlet.new("Point", a + (i * inc)))
| |
| 869 | end | |
| 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 | end | |
| 875 | end | |
| 876 | ||
| 877 | local tris = {}
| |
| 878 | local triParts = {}
| |
| 879 | ||
| 880 | local function GetDiscoColor(hue) | |
| 881 | local section = hue % 1 * 3 | |
| 882 | local secondary = 0.5 * math.pi * (section % 1) | |
| 883 | if section < 1 then | |
| 884 | return Color3.new(255, 255, 255) | |
| 885 | elseif section < 2 then | |
| 886 | return Color3.new(255, 255, 255) | |
| 887 | else | |
| 888 | return Color3.new(255, 255, 255) | |
| 889 | end | |
| 890 | end | |
| 891 | ||
| 892 | local function setupPart(part) | |
| 893 | part.Anchored = true | |
| 894 | part.FormFactor = 3 | |
| 895 | part.CanCollide = false | |
| 896 | part.TopSurface = 10 | |
| 897 | part.BottomSurface = 10 | |
| 898 | part.LeftSurface = 10 | |
| 899 | part.RightSurface = 10 | |
| 900 | part.FrontSurface = 10 | |
| 901 | part.BackSurface = 10 | |
| 902 | part.Material = "Plastic" | |
| 903 | local m = Instance.new("SpecialMesh", part)
| |
| 904 | m.MeshType = "Wedge" | |
| 905 | m.Scale = Vector3.new(0.2, 1, 1) | |
| 906 | return part | |
| 907 | end | |
| 908 | ||
| 909 | local function CFrameFromTopBack(at, top, back) | |
| 910 | local right = top:Cross(back) | |
| 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 | end | |
| 913 | ||
| 914 | local function drawTri(parent, a, b, c) | |
| 915 | local this = {}
| |
| 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 | function this:Set(a, b, c) | |
| 919 | local ab, bc, ca = b-a, c-b, a-c | |
| 920 | local abm, bcm, cam = ab.magnitude, bc.magnitude, ca.magnitude | |
| 921 | local edg1 = math.abs(0.5 + ca:Dot(ab)/(abm*abm)) | |
| 922 | local edg2 = math.abs(0.5 + ab:Dot(bc)/(bcm*bcm)) | |
| 923 | local edg3 = math.abs(0.5 + bc:Dot(ca)/(cam*cam)) | |
| 924 | if edg1 < edg2 then | |
| 925 | if edg1 >= edg3 then | |
| 926 | a, b, c = c, a, b | |
| 927 | ab, bc, ca = ca, ab, bc | |
| 928 | abm = cam | |
| 929 | end | |
| 930 | else | |
| 931 | if edg2 < edg3 then | |
| 932 | a, b, c = b, c, a | |
| 933 | ab, bc, ca = bc, ca, ab | |
| 934 | abm = bcm | |
| 935 | else | |
| 936 | a, b, c = c, a, b | |
| 937 | ab, bc, ca = ca, ab, bc | |
| 938 | abm = cam | |
| 939 | end | |
| 940 | end | |
| 941 | ||
| 942 | local len1 = -ca:Dot(ab)/abm | |
| 943 | local len2 = abm - len1 | |
| 944 | local width = (ca + ab.unit*len1).magnitude | |
| 945 | ||
| 946 | local maincf = CFrameFromTopBack(a, ab:Cross(bc).unit, -ab.unit) | |
| 947 | ||
| 948 | if len1 > 0.2 then | |
| 949 | mPart1.Parent = parent | |
| 950 | mPart1.Size = Vector3.new(0.2, width, len1) | |
| 951 | mPart1.CFrame = maincf*CFrame.Angles(math.pi,0,math.pi/2)*CFrame.new(0,width/2,len1/2) | |
| 952 | else | |
| 953 | mPart1.Parent = nil | |
| 954 | end | |
| 955 | ||
| 956 | if len2 > 0.2 then | |
| 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 | mPart2.Parent = nil | |
| 962 | end | |
| 963 | end | |
| 964 | function this:SetProperty(prop, value) | |
| 965 | mPart1[prop] = value | |
| 966 | mPart2[prop] = value | |
| 967 | end | |
| 968 | this:Set(a, b, c) | |
| 969 | function this:Destroy() | |
| 970 | mPart1:Destroy() | |
| 971 | mPart2:Destroy() | |
| 972 | end | |
| 973 | this.p1 = mPart1 | |
| 974 | this.p2 = mPart2 | |
| 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 | ||
| 980 | function verlet.draw(object, id) | |
| 981 | if object.class == "Point" then | |
| 982 | local part = parts[id] | |
| 983 | part.BrickColor = BrickColor.new(255, 0, 0) | |
| 984 | part.Transparency = 0 | |
| 985 | part.formFactor = 3 | |
| 986 | part.Anchored = true | |
| 987 | part.CanCollide = false | |
| 988 | part.TopSurface = 0 | |
| 989 | part.BottomSurface = 0 | |
| 990 | part.Size = Vector3.new(0.35, 0.35, 0.35) | |
| 991 | part.Material = "Plastic" | |
| 992 | part.CFrame = CFrame.new(object.position) | |
| 993 | part.Parent = torso | |
| 994 | return part | |
| 995 | elseif object.class == "Link" then | |
| 996 | local part = parts[id] | |
| 997 | local dist = (object.point1.position - object.point2.position).magnitude | |
| 998 | part.Size = Vector3.new(0.2, 0.2, dist) | |
| 999 | part.CFrame = CFrame.new(object.point1.position, object.point2.position) * CFrame.new(0, 0, dist * -0.5) | |
| 1000 | part.Parent = torso | |
| 1001 | return part | |
| 1002 | end | |
| 1003 | end | |
| 1004 | ||
| 1005 | function verlet.clear() | |
| 1006 | for _, v in pairs(workspace:GetChildren()) do | |
| 1007 | if v.Name == "Part" then | |
| 1008 | v:Destroy() | |
| 1009 | end | |
| 1010 | end | |
| 1011 | end | |
| 1012 | ||
| 1013 | local points = {}
| |
| 1014 | local links = {}
| |
| 1015 | ||
| 1016 | for x = 0, 2 do | |
| 1017 | points[x] = {}
| |
| 1018 | for y = 0, 3 do | |
| 1019 | points[x][y] = verlet.new("Point", torso.Position + Vector3.new(x * 0.8 - 2, 2 - y * 0.8, 5 + y * 0.4))
| |
| 1020 | points[x][y].fixed = y == 0 | |
| 1021 | end | |
| 1022 | end | |
| 1023 | ||
| 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 | |
| 1028 | end | |
| 1029 | ||
| 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 | ||
| 1036 | render:connect(function() | |
| 1037 | for x = 0, 2 do | |
| 1038 | for y = 0, 3 do | |
| 1039 | if y == 0 then | |
| 1040 | points[x][y].position = (torso.CFrame * CFrame.new(x * 1 - 1, 1, 0.5)).p | |
| 1041 | else | |
| 1042 | points[x][y]:step() | |
| 1043 | end | |
| 1044 | end | |
| 1045 | end | |
| 1046 | for i = 1, #links do | |
| 1047 | links[i]:step() | |
| 1048 | end | |
| 1049 | for i = 1, #tris do | |
| 1050 | triParts[#triParts + 1] = tris[i].p1 | |
| 1051 | triParts[#triParts + 1] = tris[i].p2 | |
| 1052 | end | |
| 1053 | tris = {}
| |
| 1054 | for x = 1, 2 do | |
| 1055 | for y = 1, 3 do | |
| 1056 | tris[#tris + 1] = drawTri(torso, points[x - 1][y - 1].position, points[x - 1][y].position, points[x][y - 1].position) | |
| 1057 | tris[#tris + 1] = drawTri(torso, points[x][y].position, points[x - 1][y].position, points[x][y - 1].position) | |
| 1058 | end | |
| 1059 | end | |
| 1060 | end) | |
| 1061 | ||
| 1062 | --/ edited by the cancerous rocky2u | |
| 1063 | ||
| 1064 | local plr = game.Players.LocalPlayer | |
| 1065 | local chr = plr.Character | |
| 1066 | local mouse = plr:GetMouse() | |
| 1067 | ||
| 1068 | _G.hotkey = 'e' | |
| 1069 | ||
| 1070 | mouse.KeyDown:connect(function(key) | |
| 1071 | if key == _G.hotkey then | |
| 1072 | local chr = game.Players.LocalPlayer.Character | |
| 1073 | stopAnimations() | |
| 1074 | chr.Animate.Disabled = true | |
| 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 | 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 | 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 | end | |
| 1079 | end) | |
| 1080 | ||
| 1081 | mouse.KeyUp:connect(function(key) | |
| 1082 | if key == _G.hotkey then | |
| 1083 | local chr = game.Players.LocalPlayer.Character | |
| 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 | chr.Torso["Right Shoulder"].C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0) | |
| 1087 | chr.Torso["Neck"].C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0) | |
| 1088 | end | |
| 1089 | end) | |
| 1090 | ||
| 1091 | function stopAnimations() | |
| 1092 | for _,v in pairs(game.Players.LocalPlayer.Character.Humanoid:GetPlayingAnimationTracks()) do | |
| 1093 | v:Stop() | |
| 1094 | end | |
| 1095 | end |