SHOW:
|
|
- or go back to the newest paste.
1 | local Player = game:service("Players").LocalPlayer | |
2 | local asset = "http://www.roblox.com/asset/?id=" | |
3 | Stats = { | |
4 | Energy = 60, | |
5 | MaxEnergy = 120, | |
6 | Rage = 120, | |
7 | MaxRage = 120, | |
8 | } | |
9 | pcall(function() Player.Character.WeaponBase:remove() end) | |
10 | local Model = Instance.new("Model",Player.Character) | |
11 | Model.Name = "WeaponBase" | |
12 | local Char = Player.Character | |
13 | local Larm = Char["Left Arm"] | |
14 | local Rarm = Char["Right Arm"] | |
15 | local Lleg = Char["Left Leg"] | |
16 | local Rleg = Char["Right Leg"] | |
17 | local Torso = Char.Torso | |
18 | local Head = Char.Head | |
19 | local Activ = false | |
20 | local select = false | |
21 | local Sit = false | |
22 | local Spack = false | |
23 | function Part(Name, Parent, Func) | |
24 | local P = Instance.new("Part",Parent) | |
25 | P.Name = Name | |
26 | P.CanCollide = false | |
27 | P.Locked = true | |
28 | if Func ~= nil then | |
29 | Func(P) | |
30 | end | |
31 | return P | |
32 | end | |
33 | function NewI(Name,Parent,Instanc,Func) | |
34 | local I = Instance.new(Instanc,Parent) | |
35 | I.Name = Name | |
36 | if Func ~= nil then | |
37 | Func(I) | |
38 | end | |
39 | return I | |
40 | end | |
41 | function Gui(Name,Type,Parent,Func) | |
42 | local G = Instance.new(Type,Parent) | |
43 | G.Name = Name | |
44 | if Func ~= nil then | |
45 | Func(G) | |
46 | end | |
47 | return G | |
48 | end | |
49 | --Arm welds | |
50 | local RP = Part("RarmP",Model,function(v) v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part1 = v Weld.Part0 = Torso Weld.C1 = CFrame.new(-1.5,-0.5,0) v.Transparency = 0 end) | |
51 | local LP = Part("LarmP",Model,function(v) v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part1 = v Weld.Part0 = Torso Weld.C1 = CFrame.new(1.5,-0.5,0) v.Transparency = 0 end) | |
52 | local RlP = Part("RlegP",Model,function(v) v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part1 = v Weld.Part0 = Torso Weld.C1 = CFrame.new(-0.5,1.5,0) v.Transparency = 0 end) | |
53 | local LlP = Part("LlegP",Model,function(v) v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part1 = v Weld.Part0 = Torso Weld.C1 = CFrame.new(0.5,1.5,0) v.Transparency = 0 end) | |
54 | local HP = Part("HeadP",Model,function(v) v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part1 = v Weld.Part0 = Torso Weld.C1 = CFrame.new(0,-1,0) v.Transparency = 0 end) | |
55 | local RW = NewI("RarmW",RP,"Weld",function(v) v.Part1 = RP v.Part0 = nil v.C0 = CFrame.new(0,0.5,0) end) | |
56 | local LW = NewI("LarmW",LP,"Weld",function(v) v.Part1 = LP v.Part0 = nil v.C0 = CFrame.new(0,0.5,0) end) | |
57 | local RlW = NewI("RlegW",RlP,"Weld",function(v) v.Part1 = RlP v.Part0 = nil v.C0 = CFrame.new(0,0.5,0) end) | |
58 | local LlW = NewI("LlegW",LlP,"Weld",function(v) v.Part1 = LlP v.Part0 = nil v.C0 = CFrame.new(0,0.5,0) end) | |
59 | local HW = NewI("HeadW",HP,"Weld",function(v) v.Part1 = HP v.Part0 = Head v.C0 = CFrame.new(0,-0.5,0) end) | |
60 | local TG = Instance.new("BodyGyro") | |
61 | TG.maxTorque = Vector3.new(math.huge,math.huge,math.huge) | |
62 | --Prop | |
63 | local HP = Part("HandleP",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = Rarm Weld.C1 = CFrame.new(0,-1,0)*CFrame.Angles(math.rad(90),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,7.5,1) end) | |
64 | local HP2 = Part("Handle2",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,7.5,1) end) | |
65 | local HP3 = Part("HandleP3",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP Weld.C1 = CFrame.new(0,-0.75,0)*CFrame.Angles(math.rad(90),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,5,1) end) | |
66 | local HP4 = Part("Handle4",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP3 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,5,1) end) | |
67 | local HP5 = Part("HandleP5",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP3 Weld.C1 = CFrame.new(0,-0.75,-0.055)*CFrame.Angles(math.rad(11.25),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
68 | local HP6 = Part("Handle6",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP5 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
69 | local HP7 = Part("HandleP7",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP5 Weld.C1 = CFrame.new(0,-0.75/1.325,-0.055)*CFrame.Angles(math.rad(11.25),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
70 | local HP8 = Part("Handle8",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP7 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
71 | local HP9 = Part("HandleP9",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP Weld.C1 = CFrame.new(0,0.75,0)*CFrame.Angles(math.rad(90),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,5,1) end) | |
72 | local HP10 = Part("Handle10",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP9 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,5,1) end) | |
73 | local HP11 = Part("HandleP11",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP9 Weld.C1 = CFrame.new(0,-0.75,0.055)*CFrame.Angles(math.rad(-11.25),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
74 | local HP12 = Part("Handle12",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP11 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
75 | local HP13 = Part("HandleP13",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP11 Weld.C1 = CFrame.new(0,-0.75/1.325,0.055)*CFrame.Angles(math.rad(-11.25),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
76 | local HP14 = Part("Handle14",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP13 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3,1) end) | |
77 | local HP15 = Part("HandleP13",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP3 Weld.C1 = CFrame.new(0,0.65,-0.2)*CFrame.Angles(math.rad(-45),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3.301,1) end) | |
78 | local HP16 = Part("Handle14",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP15 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3.3,1) end) | |
79 | local HP17 = Part("HandleP17",Model,function(v) v.BrickColor = BrickColor.new("Black") v.formFactor = "Custom" v.Size = Vector3.new(0.25,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP9 Weld.C1 = CFrame.new(0,0.65,0.2)*CFrame.Angles(math.rad(45),0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,3.301,1) end) | |
80 | local HP18 = Part("Handle18",Model,function(v) v.BrickColor = BrickColor.new("Medium stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.25) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP17 Weld.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,0,0) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(1,3.3,1) end) | |
81 | local HP19 = Part("HandleP19",Model,function(v) v.BrickColor = BrickColor.new("Dark stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP17 Weld.C1 = CFrame.new(0,0.325,0)*CFrame.Angles(0,0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,0.1,1) end) | |
82 | local HP20 = Part("HandleP20",Model,function(v) v.BrickColor = BrickColor.new("Dark stone grey") v.formFactor = "Custom" v.Size = Vector3.new(0.2,0.2,0.2) v:BreakJoints() local Weld = Instance.new("Weld",v) Weld.Part0 = v Weld.Part1 = HP15 Weld.C1 = CFrame.new(0,0.325,0)*CFrame.Angles(0,0,0) local m = Instance.new("CylinderMesh",v) m.Scale = Vector3.new(1,0.1,1) end) | |
83 | -- | |
84 | function trail(lastp,p,parent) | |
85 | local trl = Part("trail",parent,function(v) v.Transparency = 0.5 v.BrickColor = BrickColor.new("Medium blue") v.formFactor = "Custom" v.Size = Vector3.new(1.5,(p-lastp).magnitude,1.5) local m = Instance.new("CylinderMesh",v) v.Anchored = true v.CFrame = CFrame.new((p + lastp)/2,lastp)*CFrame.Angles(math.rad(90),0,0) end) | |
86 | coroutine.wrap(function() | |
87 | for i = 0, 1, 0.15 do | |
88 | trl.Mesh.Scale = trl.Mesh.Scale - Vector3.new(0.075,0,0.075) | |
89 | wait(0.03) | |
90 | end | |
91 | trl:remove() | |
92 | end)() | |
93 | return p | |
94 | end | |
95 | function efct() | |
96 | pcall(function() Model.EFCT:remove() end) | |
97 | local efc = NewI("EFCT",Model,"Model") | |
98 | local pos1 = HP19.Position | |
99 | local pos2 = Vector3.new(math.random(-0.45, 0.45),math.random(-0.45, 0.45),math.random(-0.45, 0.45))+(CFrame.new(pos1+((HP20.Position-pos1)))).p | |
100 | local efc1 = Part("efc1",efc,function(v) v.Transparency = 0.5 v.BrickColor = BrickColor.new("Medium blue") v.formFactor = "Custom" v.Size = Vector3.new(1,1,1) local m = Instance.new("BlockMesh",v) m.Scale = Vector3.new(0.025, 0.025, (pos1 - pos2).magnitude) v.Anchored = true v.CFrame = CFrame.new((pos1 + pos2) / 2, pos2) end) | |
101 | coroutine.wrap(function() | |
102 | wait(.15) | |
103 | efc:remove() | |
104 | end)() | |
105 | end | |
106 | function showdmg(targ,dmg) | |
107 | local ml = Instance.new("Model",Model) | |
108 | ml.Name = "-"..dmg | |
109 | local lbl = Part("Head",ml,function(v) v.BrickColor = BrickColor.new("Bright red") v.formFactor = "Custom" v.Transparency = 0 v.Size = Vector3.new(0.3,0.3,0.3) v.Anchored = true v.CFrame = targ.Torso.CFrame*CFrame.new(math.rad(-1,1),math.rad(-1,1),math.rad(-1,1)) local m = Instance.new("SpecialMesh",v) m.MeshType = "Sphere"end) | |
110 | local H = Instance.new("Humanoid",ml) | |
111 | H.MaxHealth = 0 | |
112 | H.Health = 0 | |
113 | coroutine.resume(coroutine.create(function() | |
114 | for i = 1, 30 do | |
115 | lbl.CFrame = lbl.CFrame*CFrame.new(0,0.25,0) | |
116 | wait() | |
117 | end | |
118 | ml:remove() | |
119 | end)) | |
120 | end | |
121 | function ray(pos,dcnt) | |
122 | local efc = NewI("Shot",game:service("Workspace"),"Model") | |
123 | local shot = Part("shot",efc,function(v) v.Transparency = 0.5 v.BrickColor = BrickColor.new("Medium blue") v.formFactor = "Custom" v.Size = Vector3.new(1,1,1) local m = Instance.new("SpecialMesh",v) m.MeshType = "Sphere" m.Scale = Vector3.new(2, 2, 2) v.Anchored = true v.CFrame = HP19.CFrame*CFrame.new(0,0.25,0) end) | |
124 | shot.CFrame = CFrame.new(shot.Position,pos) | |
125 | local lst = shot.Position | |
126 | coroutine.wrap(function() | |
127 | while efc.Parent ~= nil do | |
128 | for _,v in pairs(game:service("Workspace"):children()) do | |
129 | if v:findFirstChild("Humanoid") ~= nil and v:findFirstChild("Torso") ~= nil then | |
130 | if (v.Torso.Position - shot.Position).magnitude <= 1.5 then | |
131 | local dmg = math.random(100,250) | |
132 | v.Humanoid.Health = v.Humanoid.Health - dmg | |
133 | showdmg(v,dmg) | |
134 | efc:remove() | |
135 | end | |
136 | end | |
137 | if v.Name == "Shot" then | |
138 | local Ran,Error = coroutine.resume(coroutine.create(function() | |
139 | if v~=efc then | |
140 | if (v.shot.Position - shot.Position).magnitude <= 2 then | |
141 | v:remove() | |
142 | efc:remove() | |
143 | local shck = Part("shckwave",efc,function(v) v.Transparency = 0.75 v.BrickColor = BrickColor.new("Medium blue") v.formFactor = "Custom" v.Size = Vector3.new(1,0.2,1) local m = Instance.new("BlockMesh",v) m.Name = "Mesh" m.Scale = Vector3.new(2, 0.5, 2) v.Anchored = true v.CFrame = CFrame.new(shot.Position.X, Torso.Position.Y, shot.Position.Z) end) | |
144 | local d = Instance.new("Decal",shck) d.Texture = asset.."104596177" d.Face = "Top" | |
145 | local d = Instance.new("Decal",shck) d.Texture = asset.."104596177" d.Face = "Bottom" | |
146 | coroutine.wrap(function() | |
147 | for i = 1, 25 do | |
148 | local cf = shck.CFrame | |
149 | shck.Size = shck.Size + Vector3.new(2,0,2) | |
150 | shck.CFrame = cf | |
151 | shck.Anchored = true | |
152 | ||
153 | for _,v in pairs(game:service("Workspace"):children()) do | |
154 | if v:findFirstChild("Humanoid") ~= nil and v:findFirstChild("Torso") ~= nil then | |
155 | if (v.Torso.Position - shck.Position).magnitude <= shck.Size.X then | |
156 | local dmg = math.random(2,6) | |
157 | v.Humanoid.Health = v.Humanoid.Health - dmg | |
158 | showdmg(v,dmg) | |
159 | end | |
160 | end | |
161 | end | |
162 | wait(-0.03) | |
163 | end | |
164 | shck:remove() | |
165 | end)() | |
166 | end | |
167 | end | |
168 | end)) | |
169 | ||
170 | if not Ran then | |
171 | print(Error) | |
172 | end | |
173 | end | |
174 | end | |
175 | shot.CFrame = shot.CFrame*CFrame.new(0,0,-5) | |
176 | local trl = trail(lst,shot.Position,efc) | |
177 | lst = trl | |
178 | lst = trl | |
179 | wait(-0.03) | |
180 | end | |
181 | end)() | |
182 | coroutine.wrap(function() | |
183 | wait(7.5) | |
184 | efc:remove() | |
185 | end)() | |
186 | end | |
187 | -- | |
188 | if script.Parent.className ~= "HopperBin" then | |
189 | pcall(function() Player.Backpack["Plasma Pistol"]:remove() end) | |
190 | local h = Instance.new("HopperBin", Player.Backpack) | |
191 | h.Name = "Plasma Pistol" | |
192 | script.Parent = h | |
193 | end | |
194 | local bin = script.Parent | |
195 | function onSelected(mouse) | |
196 | select = true | |
197 | RW.Part0 = Rarm | |
198 | LW.Part0 = Larm | |
199 | RlW.Part0 = Rleg | |
200 | LlW.Part0 = Lleg | |
201 | TG.Parent = Torso | |
202 | local function ComputePos(pos1, pos2) | |
203 | local pos3 = Vector3.new(pos2.x, pos1.y, pos2.z) | |
204 | return CFrame.new(pos1, pos3) | |
205 | end | |
206 | coroutine.wrap(function() | |
207 | while select == true do | |
208 | TG.cframe = ComputePos(Torso.Position,mouse.hit.p)*CFrame.Angles(0,math.rad(90),0) | |
209 | efct() | |
210 | wait() | |
211 | end | |
212 | end)() | |
213 | for i = 0,1,.1 do | |
214 | RW.C1 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0*i),math.rad(0*i),math.rad(90*i)) | |
215 | LW.C1 = CFrame.new(0,0,0)*CFrame.Angles(math.rad(0*i),0,math.rad(-45*i)) | |
216 | HW.C1 = CFrame.new(0,0,0)*CFrame.Angles(0,math.rad(-90*i),0) | |
217 | wait() | |
218 | end | |
219 | mouse.Move:connect(function() | |
220 | end) | |
221 | mouse.Button1Down:connect(function() | |
222 | ray(mouse.hit.p) | |
223 | end) | |
224 | mouse.KeyDown:connect(function(key) | |
225 | end) | |
226 | mouse.KeyUp:connect(function(key) | |
227 | end) | |
228 | end | |
229 | function onDesel(mouse) | |
230 | select = false | |
231 | TG.Parent = nil | |
232 | end | |
233 | bin.Selected:connect(onSelected) | |
234 | bin.Deselected:connect(onDesel) |