SHOW:
|
|
- or go back to the newest paste.
| 1 | - | --------Calyster----- |
| 1 | + | --------AgentVK is a dick----- |
| 2 | wait(1) --For running in rbx studio | |
| 3 | mee = game.Players.LocalPlayer | |
| 4 | pistol = Instance.new("Tool", mee.Backpack)
| |
| 5 | pistol.GripForward = Vector3.new(-0.149, 0.984, -0.099) | |
| 6 | pistol.GripPos = Vector3.new(0.1, -0.55, -0.2) | |
| 7 | pistol.GripRight = Vector3.new(0.989, 0.148, -0.015) | |
| 8 | pistol.GripUp = Vector3.new(0, 0.1, 0.995) | |
| 9 | pistol.ToolTip = "Umm... where did you get that?" | |
| 10 | pistol.Name = "Pistol" | |
| 11 | pistolpart = Instance.new("Part", pistol)
| |
| 12 | pistolpart.Name = "Handle" | |
| 13 | pistolpart.BrickColor = BrickColor.new("Black")
| |
| 14 | pistolpart.Material = "SmoothPlastic" | |
| 15 | pistolpart.Orientation = Vector3.new(-88.99, 152.78, 135.7) | |
| 16 | pistolpart.Size = Vector3.new(0.2, 1.12, 0.6) | |
| 17 | pistolmesh = Instance.new("SpecialMesh", pistolpart)
| |
| 18 | - | pistolmesh.MeshId = "rbxassetid://430060386" |
| 18 | + | pistolmesh.MeshId = "rbxassetid://130099641" |
| 19 | pistolmesh.Scale = Vector3.new(1.7, 1.7, 1.7) | |
| 20 | - | pistolmesh.TextureId = "rbxassetid://430060404" |
| 20 | + | pistolmesh.TextureId = "rbxassetid://209727730" |
| 21 | pistolmesh.VertexColor = Vector3.new(2, 2, 2) | |
| 22 | gunshotsound = Instance.new("Sound", pistolpart)
| |
| 23 | - | gunshotsound.SoundId = "rbxassetid://213603013" |
| 23 | + | gunshotsound.SoundId = "rbxassetid://834546352" |
| 24 | mouserotatecharacter = true | |
| 25 | ||
| 26 | ||
| 27 | pistol.Equipped:connect(function(mouse) | |
| 28 | mouserotatecharacter = true | |
| 29 | local torso = mee.Character.HumanoidRootPart | |
| 30 | local mouseturning = mee:GetMouse() | |
| 31 | mee.Character.Humanoid.AutoRotate = false | |
| 32 | mouseturning.Move:connect(function() | |
| 33 | if mouserotatecharacter == true then | |
| 34 | torso.CFrame = CFrame.new(torso.Position, mouseturning.Hit.p*Vector3.new(1,0,1) + torso.Position*Vector3.new(0, 1, 0)) | |
| 35 | ||
| 36 | end | |
| 37 | end) | |
| 38 | mouse.Button1Down:connect(function() | |
| 39 | gunshotsound:Play() | |
| 40 | MakeShell() | |
| 41 | local ray = Ray.new(pistol.Handle.CFrame.p, (mouse.Hit.p - pistol.Handle.CFrame.p).unit * 300) | |
| 42 | local part, position = workspace:FindPartOnRay(ray, mee.Character, false, true) | |
| 43 | ||
| 44 | local beam = Instance.new("Part", workspace)
| |
| 45 | beam.BrickColor = BrickColor.new("White")
| |
| 46 | beam.FormFactor = "Custom" | |
| 47 | beam.Material = "Neon" | |
| 48 | beam.Transparency = 0.7 | |
| 49 | beam.Anchored = true | |
| 50 | beam.Locked = true | |
| 51 | beam.CanCollide = false | |
| 52 | ||
| 53 | local distance = (pistol.Handle.CFrame.p - position).magnitude | |
| 54 | beam.Size = Vector3.new(0.3, 0.3, distance) | |
| 55 | beam.CFrame = CFrame.new(pistol.Handle.CFrame.p, position) * CFrame.new(0, 0, -distance / 2) | |
| 56 | ||
| 57 | game:GetService("Debris"):AddItem(beam, 0.1)
| |
| 58 | ||
| 59 | if part then | |
| 60 | local humanoid = part.Parent:FindFirstChild("Humanoid")
| |
| 61 | ||
| 62 | if not humanoid then | |
| 63 | humanoid = part.Parent.Parent:FindFirstChild("Humanoid")
| |
| 64 | end | |
| 65 | ||
| 66 | if humanoid then | |
| 67 | plrmodel = humanoid.Parent | |
| 68 | if plrmodel.Humanoid.Health ~= 0 then | |
| 69 | --blood | |
| 70 | plrmodel.Archivable = true | |
| 71 | local Char = plrmodel | |
| 72 | local Hum = Char:FindFirstChild("Humanoid")
| |
| 73 | local Tor = Char:FindFirstChild("Torso") or Char:FindFirstChild("UpperTorso")
| |
| 74 | local Health = Hum.Health | |
| 75 | ||
| 76 | local M = math.random | |
| 77 | local R = math.rad | |
| 78 | local rates = {.05, .075, .1, .15}
| |
| 79 | ||
| 80 | local smooth = function(P) | |
| 81 | local SM = Enum.SurfaceType.SmoothNoOutlines | |
| 82 | P.TopSurface = SM | |
| 83 | P.BottomSurface = SM | |
| 84 | P.RightSurface = SM | |
| 85 | P.LeftSurface = SM | |
| 86 | P.FrontSurface = SM | |
| 87 | P.BackSurface = SM | |
| 88 | end | |
| 89 | ||
| 90 | local function BloodPool(Part,Size) | |
| 91 | local Pool = Instance.new("Part",game.Workspace)
| |
| 92 | Pool.TopSurface = 0 | |
| 93 | Pool.CanCollide = false | |
| 94 | Pool.BrickColor = BrickColor.new("Crimson")
| |
| 95 | Pool.Transparency = 0 | |
| 96 | Instance.new("CylinderMesh",Pool)
| |
| 97 | Pool.Anchored = true | |
| 98 | Pool.Name = "BloodPoolPart" | |
| 99 | smooth(Pool) | |
| 100 | Pool.FormFactor = Enum.FormFactor.Custom | |
| 101 | Pool.Size = Size | |
| 102 | local c = Part.CFrame*CFrame.new(M(-3.01,3.01),-2.9,M(-3.01,3.01)) | |
| 103 | coroutine.resume(coroutine.create(function() | |
| 104 | local rate = rates[M(1,#rates)] | |
| 105 | game.Debris:AddItem(Pool,15) | |
| 106 | for i = 1,M(25,70) do | |
| 107 | wait() | |
| 108 | Pool.CFrame = c | |
| 109 | Pool.Size = Pool.Size+Vector3.new(rate,0,rate) | |
| 110 | end | |
| 111 | wait(5) | |
| 112 | Pool:Destroy() | |
| 113 | end)) | |
| 114 | end | |
| 115 | ||
| 116 | local function BloodDrops(Size,Area) | |
| 117 | local Blood = Instance.new("Part",game.Workspace)
| |
| 118 | Blood.BrickColor = BrickColor.new("Crimson")
| |
| 119 | Blood.Parent = plrmodel | |
| 120 | Blood.TopSurface = 0 | |
| 121 | Blood.CanCollide = false | |
| 122 | Blood.Anchored = false | |
| 123 | Blood.FormFactor = Enum.FormFactor.Custom | |
| 124 | Blood.Size = Size | |
| 125 | Blood.CFrame = Area*CFrame.new(M(-1.00,1.00),M(-1.00,1.00),M(-1.00,1.00)) | |
| 126 | return Blood | |
| 127 | end | |
| 128 | ||
| 129 | ||
| 130 | ||
| 131 | Hum.Changed:connect(function() | |
| 132 | if Hum.Health < Health then | |
| 133 | ||
| 134 | Health = Hum.Health | |
| 135 | for i = 1, math.random(4,10)do | |
| 136 | local Size = Vector3.new(M(-0.25,0.25),.2,M(-.25,.25)) | |
| 137 | local Blood = BloodDrops(Size,Tor.CFrame) | |
| 138 | local Stopper = false | |
| 139 | local Size2 = Vector3.new(M(-0.25,0.25),.2,M(-.25,.25)) | |
| 140 | BloodPool(Tor,Size2) | |
| 141 | end | |
| 142 | end | |
| 143 | end) | |
| 144 | end | |
| 145 | --Ragdoll | |
| 146 | wait() | |
| 147 | function getAttachment0(attachmentName) | |
| 148 | for _,child in next,plrmodel:GetChildren() do | |
| 149 | local attachment = child:FindFirstChild(attachmentName) | |
| 150 | if attachment then | |
| 151 | return attachment | |
| 152 | end | |
| 153 | end | |
| 154 | end | |
| 155 | plrmodel.Humanoid.Died:Connect(function(var) | |
| 156 | local removeHRP = true | |
| 157 | local head = plrmodel["Head"] | |
| 158 | local leftarm = plrmodel["Left Arm"] | |
| 159 | local leftleg = plrmodel["Left Leg"] | |
| 160 | local rightleg = plrmodel["Right Leg"] | |
| 161 | local rightarm = plrmodel["Right Arm"] | |
| 162 | local torso = plrmodel.Torso | |
| 163 | local root = plrmodel.HumanoidRootPart | |
| 164 | if removeHRP == true then | |
| 165 | root:Destroy() | |
| 166 | end | |
| 167 | local rootA =Instance.new("Attachment")
| |
| 168 | local HeadA = Instance.new("Attachment")
| |
| 169 | local LeftArmA = Instance.new("Attachment")
| |
| 170 | local LeftLegA = Instance.new("Attachment")
| |
| 171 | local RightArmA = Instance.new("Attachment")
| |
| 172 | local RightLegA = Instance.new("Attachment")
| |
| 173 | local TorsoA = Instance.new("Attachment")
| |
| 174 | local TorsoA1 = Instance.new("Attachment")
| |
| 175 | local TorsoA2 = Instance.new("Attachment")
| |
| 176 | local TorsoA3 = Instance.new("Attachment")
| |
| 177 | local TorsoA4 = Instance.new("Attachment")
| |
| 178 | local TorsoA5 = Instance.new("Attachment")
| |
| 179 | local function set1() | |
| 180 | HeadA.Name = "HeadA" | |
| 181 | HeadA.Parent = head | |
| 182 | HeadA.Position = Vector3.new(0, -0.5, 0) | |
| 183 | HeadA.Rotation = Vector3.new(0, 0, 0) | |
| 184 | HeadA.Axis = Vector3.new(1, 0, 0) | |
| 185 | HeadA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 186 | LeftArmA.Name = "LeftArmA" | |
| 187 | LeftArmA.Parent = leftarm | |
| 188 | LeftArmA.Position = Vector3.new(0.5, 1, 0) | |
| 189 | LeftArmA.Rotation = Vector3.new(0, 0, 0) | |
| 190 | LeftArmA.Axis = Vector3.new(1, 0, 0) | |
| 191 | LeftArmA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 192 | LeftLegA.Name = "LeftLegA" | |
| 193 | LeftLegA.Parent = leftleg | |
| 194 | LeftLegA.Position = Vector3.new(0, 1, 0) | |
| 195 | LeftLegA.Rotation = Vector3.new(0, 0, 0) | |
| 196 | LeftLegA.Axis = Vector3.new(1, 0, 0) | |
| 197 | LeftLegA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 198 | RightArmA.Name = "RightArmA" | |
| 199 | RightArmA.Parent = rightarm | |
| 200 | RightArmA.Position = Vector3.new(-0.5, 1, 0) | |
| 201 | RightArmA.Rotation = Vector3.new(0, 0, 0) | |
| 202 | RightArmA.Axis = Vector3.new(1, 0, 0) | |
| 203 | RightArmA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 204 | RightLegA.Name = "RightLegA" | |
| 205 | RightLegA.Parent = rightleg | |
| 206 | RightLegA.Position = Vector3.new(0, 1, 0) | |
| 207 | RightLegA.Rotation = Vector3.new(0, 0, 0) | |
| 208 | RightLegA.Axis = Vector3.new(1, 0, 0) | |
| 209 | RightLegA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 210 | rootA.Name= "rootA" | |
| 211 | rootA.Parent = root | |
| 212 | rootA.Position = Vector3.new(0, 0, 0) | |
| 213 | rootA.Rotation = Vector3.new(0, 90, 0) | |
| 214 | rootA.Axis = Vector3.new(0, 0, -1) | |
| 215 | rootA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 216 | end | |
| 217 | local function set2() | |
| 218 | TorsoA.Name = "TorsoA" | |
| 219 | TorsoA.Parent = torso | |
| 220 | TorsoA.Position = Vector3.new(0.5, -1, 0) | |
| 221 | TorsoA.Rotation = Vector3.new(0, 0, 0) | |
| 222 | TorsoA.Axis = Vector3.new(1, 0, 0) | |
| 223 | TorsoA.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 224 | TorsoA1.Name = "TorsoA1" | |
| 225 | TorsoA1.Parent = torso | |
| 226 | TorsoA1.Position = Vector3.new(-0.5, -1, 0) | |
| 227 | TorsoA1.Rotation = Vector3.new(0, 0, 0) | |
| 228 | TorsoA1.Axis = Vector3.new(1, 0, 0) | |
| 229 | TorsoA1.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 230 | TorsoA2.Name = "TorsoA2" | |
| 231 | TorsoA2.Parent = torso | |
| 232 | TorsoA2.Position = Vector3.new(-1, 1, 0) | |
| 233 | TorsoA2.Rotation = Vector3.new(0, 0, 0) | |
| 234 | TorsoA2.Axis = Vector3.new(1, 0, 0) | |
| 235 | TorsoA2.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 236 | TorsoA3.Name = "TorsoA3" | |
| 237 | TorsoA3.Parent = torso | |
| 238 | TorsoA3.Position = Vector3.new(1, 1, 0) | |
| 239 | TorsoA3.Rotation = Vector3.new(0, 0, 0) | |
| 240 | TorsoA3.Axis = Vector3.new(1, 0, 0) | |
| 241 | TorsoA3.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 242 | TorsoA4.Name = "TorsoA4" | |
| 243 | TorsoA4.Parent = torso | |
| 244 | TorsoA4.Position = Vector3.new(0, 1, 0) | |
| 245 | TorsoA4.Rotation = Vector3.new(0, 0, 0) | |
| 246 | TorsoA4.Axis = Vector3.new(1, 0, 0) | |
| 247 | TorsoA4.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 248 | TorsoA5.Name = "TorsoA5" | |
| 249 | TorsoA5.Parent = torso | |
| 250 | TorsoA5.Position = Vector3.new(0, 0, 0) | |
| 251 | TorsoA5.Rotation = Vector3.new(0, 90, 0) | |
| 252 | TorsoA5.Axis = Vector3.new(0, 0, -1) | |
| 253 | TorsoA5.SecondaryAxis = Vector3.new(0, 1, 0) | |
| 254 | end | |
| 255 | local function set3() | |
| 256 | end | |
| 257 | spawn(set1); | |
| 258 | spawn(set2); | |
| 259 | local HA = Instance.new("HingeConstraint")
| |
| 260 | HA.Parent = head | |
| 261 | HA.Attachment0 = HeadA | |
| 262 | HA.Attachment1 = TorsoA4 | |
| 263 | HA.Enabled = true | |
| 264 | HA.LimitsEnabled=true | |
| 265 | HA.LowerAngle=0 | |
| 266 | HA.UpperAngle=0 | |
| 267 | local LAT = Instance.new("BallSocketConstraint")
| |
| 268 | LAT.Parent = leftarm | |
| 269 | LAT.Attachment0 = LeftArmA | |
| 270 | LAT.Attachment1 = TorsoA2 | |
| 271 | LAT.Enabled = true | |
| 272 | LAT.LimitsEnabled=true | |
| 273 | LAT.UpperAngle=90 | |
| 274 | local RAT = Instance.new("BallSocketConstraint")
| |
| 275 | RAT.Parent = rightarm | |
| 276 | RAT.Attachment0 = RightArmA | |
| 277 | RAT.Attachment1 = TorsoA3 | |
| 278 | RAT.Enabled = true | |
| 279 | RAT.LimitsEnabled=true | |
| 280 | RAT.UpperAngle=90 | |
| 281 | local HA = Instance.new("BallSocketConstraint")
| |
| 282 | HA.Parent = head | |
| 283 | HA.Attachment0 = HeadA | |
| 284 | HA.Attachment1 = TorsoA4 | |
| 285 | HA.Enabled = true | |
| 286 | local TLL = Instance.new("BallSocketConstraint")
| |
| 287 | TLL.Parent = torso | |
| 288 | TLL.Attachment0 = TorsoA1 | |
| 289 | TLL.Attachment1 = LeftLegA | |
| 290 | TLL.Enabled = true | |
| 291 | TLL.LimitsEnabled=true | |
| 292 | TLL.UpperAngle=90 | |
| 293 | local TRL = Instance.new("BallSocketConstraint")
| |
| 294 | TRL.Parent = torso | |
| 295 | TRL.Attachment0 = TorsoA | |
| 296 | TRL.Attachment1 = RightLegA | |
| 297 | TRL.Enabled = true | |
| 298 | TRL.LimitsEnabled=true | |
| 299 | TRL.UpperAngle=90 | |
| 300 | local RTA = Instance.new("BallSocketConstraint")
| |
| 301 | RTA.Parent = root | |
| 302 | RTA.Attachment0 = rootA | |
| 303 | RTA.Attachment1 = TorsoA5 | |
| 304 | RTA.Enabled = true | |
| 305 | RTA.LimitsEnabled=true | |
| 306 | RTA.UpperAngle=0 | |
| 307 | head.Velocity = head.CFrame.lookVector*30 | |
| 308 | ||
| 309 | for _,child in next,plrmodel:GetChildren() do | |
| 310 | if child:IsA("Accoutrement") then
| |
| 311 | for _,part in next,child:GetChildren() do | |
| 312 | if part:IsA("BasePart") then
| |
| 313 | part.Parent = plrmodel | |
| 314 | child:remove() | |
| 315 | local attachment1 = part:FindFirstChildOfClass("Attachment")
| |
| 316 | local attachment0 = getAttachment0(attachment1.Name) | |
| 317 | if attachment0 and attachment1 then | |
| 318 | local constraint = Instance.new("HingeConstraint")
| |
| 319 | constraint.Attachment0 = attachment0 | |
| 320 | constraint.Attachment1 = attachment1 | |
| 321 | constraint.LimitsEnabled = true | |
| 322 | constraint.UpperAngle = 0 | |
| 323 | constraint.LowerAngle = 0 | |
| 324 | constraint.Parent = plrmodel | |
| 325 | end | |
| 326 | end | |
| 327 | end | |
| 328 | end | |
| 329 | end | |
| 330 | end) | |
| 331 | ||
| 332 | end | |
| 333 | if humanoid.Health ~= 0 then | |
| 334 | humanoid.Health = 0 | |
| 335 | wait(3) | |
| 336 | while true do | |
| 337 | if humanoid.Health ~= 0 then | |
| 338 | humanoid.Health = 0 --This loop is a strange kill system I know, but this prevents doing 99 damage instead of 100 for some reason.s | |
| 339 | else | |
| 340 | break | |
| 341 | end | |
| 342 | wait(0.3) | |
| 343 | end | |
| 344 | end | |
| 345 | end | |
| 346 | end) | |
| 347 | end) | |
| 348 | ||
| 349 | pistol.Unequipped:connect(function() | |
| 350 | wait(0.2) | |
| 351 | mouserotatecharacter = false | |
| 352 | mee.Character.Humanoid.AutoRotate = true | |
| 353 | end) | |
| 354 | function MakeShell() | |
| 355 | Shell = Instance.new("Part", workspace)
| |
| 356 | Shell.Size = Vector3.new(0.2, 0.2, 0.6) | |
| 357 | ShellMesh = Instance.new("SpecialMesh", Shell)
| |
| 358 | ShellMesh.MeshId = "http://www.roblox.com/asset/?id=94295100" | |
| 359 | ShellMesh.Scale = Vector3.new(4, 4, 4) | |
| 360 | ShellMesh.TextureId = "http://www.roblox.com/asset/?id=94287792" | |
| 361 | Shell.Position = pistolpart.Position | |
| 362 | end |