View difference between Paste ID: 7UrKHng4 and PjrJeLPe
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